Roborio

From Robowiki
Jump to navigation Jump to search
Roborio
Author(s) Rsalesc
Extends AdvancedRobot
Targeting Dynamic Clustering (GF)
Movement Wave Surfing
Released August 2017
Current Rating -
Current Version 1.2.4
Code License closed
Download

Sub-Pages: Version History - Experiments

Background Information

What's special about it?
Nothing.
How competitive is it?
Very competitive in 1v1 RoboRumble. I'm quite satisfied with it as my first robot.

Strategy

How does it move?
It uses Dynamic Clustering to evaluate the probability of being hit at each GuessFactor and Wave Surfing to evaluate the danger of moving to each of those. It surfs up to two waves. Against simple targeters it will only store in a Kd-tree the guessfactors where it was hit in the past. Against advanced targeters it will try to flatten it's movement profile as well, logging the guessfactor it was when waves break and trying to avoid them in the future.
When there is no wave to surf, it will simply orbit the enemy.
How does it fire?
It uses Dynamic Clustering to choose a firing angle. It has a general purpose and a Anti-Surfer gun in a virtual gun array. It will always choose the best one (according to weighted enemy hit rate) to fire. The general purpose gun consists of a single tree which tries to learn the movement profile of the enemy, where it has been hit on the past and where it goes when I shoot, all at once. The Anti-Surfer gun has a bunch of trees, with different sizes, from very small to very large, which tries to simulate the learning process of a surfer. Different tree sizes and values of K are used to approximate the effect of data decay.
How does the melee strategy differ from One-on-one strategy?
It doesn't have a melee strategy.
How does it select a target to attack/avoid in melee?
It doesn't.
What does it save between rounds and matches?
Trees, virtual gun scores and stats about the match between rounds and nothing between matches.

Additional Information

Where did you get the name?
Some guy nicknamed me "Roberio" in college, so I joined "Robô" (which is Robot in portuguese) and "Roberio" to get the bot's name.
Can I use your code?
It's closed for now, but it will be open-source as soon as I have time to put up the licensing stuff.
What's next for your robot?
Nothing, it will just sit in the RoboRumble until another robot of mine excels it
Does it have any White Whales?
I've never thoughf about that, but ScalarBot, Ascendant and GrubbmThree are annoying.
What other robot(s) is it based on?
Of course my whole robot is based on other bots, even though it's code is not. All the best ideas shared on this wiki were invented by someone who used it on it's robot. So yeah, it makes sense to say my robot is completely based on other people's robots. I just wrote the code for it in my very own way. Some guys which deserve special mention are Voidious, Skilgannon, ABC, PEZ and Paul Evans. You can sense their work everywhere on this wiki.
I would like to point out an exception, though. My Bullet Shielding code was strongly influenced by EnergyDome, so I would like to thanks Skilgannon for his incredible accomplishments with this bot.