BeepBoop

From Robowiki
Revision as of 23:28, 9 January 2024 by Kev (talk | contribs) (update BeepBoop's page)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search
Sub-pages:
Version History - Understanding BeepBoop
BeepBoop
Author(s) Kev
Extends AdvancedRobot
Targeting GuessFactor Targeting
Movement Wave Surfing
Current Version 0.1
Code License RWPCL
Download

Background Information

What's special about it?

It is my first new bot in over 10 years!

How competitive is it?

It is the current robobumble King.

Strategy

How does it move?

It uses a new type of WaveSurfing I call PathSurfing. It is a sort of generalization of True Surfing. As well as considering going forward/backward/stopping until the wave passes, it also considers other "paths"; for example one might be driving forward 3 ticks and then reversing 5 ticks. An advantage over GoTo Surfing is that it considers how it gets to a point as well as the point itself. For example, it sometimes drives past and then reverses into the lowest danger point if that helps is get to a low-danger area on the next wave. The danger computation combines Bullet Shadows with multiple KNN systems including Flatteners.

How does it fire?

It uses two KNN/GuessFactor guns, one tuned to hit surfers and the other tuned to hit other bots. The embedding functions for the gun and movement are learned offline using gradient descent. As well as trying to hit the opponent, it also tries to create helpful bullet shadows that shield its movement. For Energy Management, it aims to directly maximize the expected score at the end of the round by predicting its win probability and expected bullet damage for various candidate bullet powers.

What does it save between rounds and matches?

Aiming/movement data between rounds, nothing between matches.

Additional Information

Where did you get the name?

It's just a silly name for a robot!

Can I use your code?

Yes, but please (1) give credit and (2) open-source your bot!

What other robot(s) is it based on?

I used many ideas from throughout the wiki.