SleepSiphon

From Robowiki
Revision as of 13:57, 23 June 2018 by Origin (talk | contribs) (→‎Strategy: Fixed broken internal link)
Jump to navigation Jump to search
SleepSiphon
Author(s) Origin
Extends AdvancedRobot
Targeting Virtual Guns:
Movement Minimum Risk Movement, Avoids:
Current Version 1.7b
Code License ZLib
Download
Sub-pages:
Version History

Background Information

What's special about it?
It is my first Robocode robot. Won first place in my school's competition.
Great, I want to try it. Where can I download it?
You can download SleepSiphon here!
How competitive is it?
N/A (Awaiting RoboRumble results.)

Strategy

How does it move?
It uses a version of Minimum Risk Movement. Generates destination points in a circle around itself. Calculates danger values for points in a straight line from its current location to that destination point based on a danger function. (Enemy Virtual Bullets data, distance from other enemies, distance from walls)
How does it fire?
It has four Virtual Guns: HOT, Linear Targeting, Circular Targeting, and Mean Targeting (Circular). Chooses the best gun for each enemy.
Falls back to a (naive and inefficient) Displacement Vector-based KNN (not full Dynamic Clustering) gun if the virtual hit rate against an enemy is below a threshold.
How does it dodge bullets?
Enemy Virtual Bullets are a factor in its path-point danger function.
How does the melee strategy differ from One-on-one strategy?
It doesn't, currently.
How does it select a target to attack/avoid in melee?
Attacks whoever is closest.
What does it save between rounds and matches?
Between rounds, it stores information for the Displacement Vector gun. Nothing between matches.

Additional Information

Where did you get the name?
This bot was an obsession of mine for a good 2 weeks... My sleep schedule suffered during that time...
Can I use your code?
Well, I won't stop you, but you really shouldn't. This is probably some of the most disorganized code you will ever read.
Any use of my code must follow the ZLib License.
* SleepSiphon Github Repository
What's next for your robot?
Slight modifications to make it more effective in RoboRumble. Because this bot started as a high school project, I built it with the assumption that the other students' bots would follow set patterns & not learn. Obviously, this is not the case in RoboRumble, so some slight changes and optimizations can be made to my prediction. After that, however, I will be moving on to new robots.
Does it have any White Whales?
None presently.
What other robot(s) is it based on?
* Inspiration for debugging graphics and "path risks" from Neuromancer
* "Never closest" movement, inspired by Shadow.
* I learned a lot about avoiding aggressive bots from playing against Bastion. (not on RoboWiki)