DeBroglie
Jump to navigation
Jump to search
- Sub-pages:
- Version History - Archived Talk 2010
deBroglie | |
Louis de Broglie, winner of the 1929 Nobel Prize for Physics | |
Author(s) | Tkiesel |
Extends | AdvancedRobot |
Targeting | DC - Guess Factors |
Movement | DC - Wave Surfing |
Best Rating | 31 |
Current Version | rev0108 |
Code License | zlib |
Background Information
- Where did you get the name?
- This is my first wave surfing bot, and I'm a physicist by training, so it's named in honor of Louis de Broglie, who discovered that matter has wavelike properties. This was a foundational discovery in Quantum Mechanics. In 1929 de Broglie received the first ever Nobel Prize given to a student thesis.
- What's special about it?
- The targeting and movement draw on a central Universe object that contains the entire situational picture, with a Bot object that represents each robot on the field.
- How competitive is it?
- rev0108 is just outside the top 30 by APS and is in the top 15 by PL in the RoboRumble. Not bad, but a long way to go still!
Strategy
- How does it move?
- Wave Surfing, using data stored in a kD tree with precise intersection. The algorithm is true surfing based on concepts in the wave surfing tutorial.
- How does it fire?
- GuessFactor Targeting using a kD tree to store data. Precise intersection is used to determine the fire angles that would have hit. Several different targeters are used in a Virtual Guns array. The best gun to use is chosen via a Condorcet vote.
- What does it save between rounds and matches?
- Nothing between matches. Between rounds all surfing and targeting data is saved.
Additional Information
- Can I use your code?
- DeBroglie is an open source bot available under the zlib license. A few files here and there have an extra clause attached, but the majority of the code is unaltered zlib.
- What's next for your robot?
- Get the movement and targeting systems squared away and cleaned up.
- Does it have any White Whales?
- In rumble terms, CassiusClay - I've been in awe of that bot since finding Robocode in 2007. Climbing above it in the RoboRumble is priority #1.
- One on one, Dookious - Just a stunning bot. If deBroglie can beat this one head-to-head, I'll think I've accomplished something.
- What other robot(s) is it based on?
- All code written by others is under some form of permissive open source license.
- The kD tree is written by Rednaxela. License: as-is with attribution.
- The FastTrig lookup table and methods are written by a host of amazing folks at this wiki, starting with Rednaxela, but including other great Robocode luminaries.
- Parts of the precise prediction are accomplished with the help of code originally by Paul Bourke, adapted by REAS @ OpenProcessing.org and further adapted by me. This code determines if and where a line segment and a circle intersect. License: CC-by-sa 3.0
- The gun ranking uses voteutil by Brian Olson. It is available under the LGPL version 3.
- The movement uses the wonderful setBackAsFront() method from Voidious' Wave Surfing Tutorial. Great piece of code!