Difference between revisions of "User:Tkiesel/Dev Notebook"

From Robowiki
Jump to navigation Jump to search
m (reordering, details)
m (avoiding rammers, etc.)
Line 5: Line 5:
 
#* see [[User:Tkiesel/MovementPredictor]]
 
#* see [[User:Tkiesel/MovementPredictor]]
 
# Implement Wave Surfing
 
# Implement Wave Surfing
#* Farewell Aristocles. You were a faithful friend, if a bit dodgy during round 1. ;)
+
#* <span style="text-decoration: line-through;">Farewell Aristocles. You were a faithful friend, if a bit dodgy during round 1. ;)</span>
#* GoTo is what DeBroglie used to have, but TrueSurfing seems more philosophically satisfying at the moment...
+
#* Avoid Rammers!!
 
#* Danger function to include a term for field position? Corners are bad after all, and a slightly increased hit risk might be worth it to get out of a corner.
 
#* Danger function to include a term for field position? Corners are bad after all, and a slightly increased hit risk might be worth it to get out of a corner.
#* Eventually, the pluggable EndPredictionCondition interface in MovementPredictor should make surfing multiple waves easier.. and allow me to handle cases like the following via a discrete Class that can handle the details:
 
#** Wave A and Wave B are coming toward you.  If you orbit clockwise or stop, Wave A will hit first. Remove Wave A and predict-surf remaining waves. If you orbit counter-clockwise, wave B will hit you first. Remove Wave B and predict-surf remaining waves
 
 
# Get a small Virtual Gun array going.  Main GF gun, anti-adaptive GF gun, circular targeter, dead-stop targeter.  For kicks. ;)
 
# Get a small Virtual Gun array going.  Main GF gun, anti-adaptive GF gun, circular targeter, dead-stop targeter.  For kicks. ;)
 
#* Weight points in anti-adaptive gun via half-life based on round number.   
 
#* Weight points in anti-adaptive gun via half-life based on round number.   
Line 15: Line 13:
 
#* Test choosing gun via history of this shot (the k-nearest-neighbors can report which gun did best on them) vs. general history of the match..  Probably lots of trade-offs here.
 
#* Test choosing gun via history of this shot (the k-nearest-neighbors can report which gun did best on them) vs. general history of the match..  Probably lots of trade-offs here.
 
# Bullet Shadows (fairly easy with the Universe/Bot structure)
 
# Bullet Shadows (fairly easy with the Universe/Bot structure)
 +
# Surfing multiple waves
 
# Debug and Evaluate how the bot works in the Rumble without extensive tuning.
 
# Debug and Evaluate how the bot works in the Rumble without extensive tuning.
# <span style="text-decoration: line-through;">Download and get [[RoboResearch]] working.</span>
+
# Tuning, choosing better stats to use.
#* Code a version of Debroglie to read/write dimension weights and real/virtual wave weighting from a .txt file. Let it chew on the [[Targeting Challenge RM]] bots for a week or two to explore the solution space.
 
#* Pick the few best local maxima, do some runs that explore the space near them.
 
#* Repeat all of this for the anti-adaptive gun with some relevant bots.
 
#* Repeat with movement weights using [[Movement Challenge 2K7|MC2K7]], etc.
 

Revision as of 23:49, 4 June 2012

DeBroglie Roadmap / Development notepad / Brainstorming Sandbox

  1. Precise Prediction + Wall Smoothing in order to calculate Precise MEAs and get ready for Wave Surfing.
  2. Implement Wave Surfing
    • Farewell Aristocles. You were a faithful friend, if a bit dodgy during round 1. ;)
    • Avoid Rammers!!
    • Danger function to include a term for field position? Corners are bad after all, and a slightly increased hit risk might be worth it to get out of a corner.
  3. Get a small Virtual Gun array going. Main GF gun, anti-adaptive GF gun, circular targeter, dead-stop targeter. For kicks. ;)
    • Weight points in anti-adaptive gun via half-life based on round number.
      • Pre-calculate decay exponentials and store in array. Just one extra array lookup and one extra multiplication per data point.. shouldn't be terribly slower than main gun.
    • Test choosing gun via history of this shot (the k-nearest-neighbors can report which gun did best on them) vs. general history of the match.. Probably lots of trade-offs here.
  4. Bullet Shadows (fairly easy with the Universe/Bot structure)
  5. Surfing multiple waves
  6. Debug and Evaluate how the bot works in the Rumble without extensive tuning.
  7. Tuning, choosing better stats to use.