User:Tkiesel/Dev Notebook

From Robowiki
< User:Tkiesel
Revision as of 21:37, 16 July 2012 by Tkiesel (talk | contribs) (updates.)
Jump to navigation Jump to search

DeBroglie Roadmap / Development notepad / Brainstorming Sandbox

  1. Continue tracking down why there are so many skipped turns.
    • I used an approximation via <math>e^x = \lim_{n \to +\infty}(1+\frac{x}{n})^n</math>, with variable power-of-2 choice of n based on input x. Keeps error < 5%, and performance high. Skipped turn issue seems to be resolved... for now.
    • Big source of skipped turns seemed to be the CPU frequency scaling.. now that I'm on Linux again and can control such things, just maxing the CPU frequency during Robocode and RoboRumble runs really seems to prevent skipped turns.
    • Changed the danger caching procedure, and switched to a Tricube kernel for targeting, and an exponential decay kernel on surfing. Seems to have resolved a lot of skipped turn woes!
  2. Virtual gun array
    • How to choose a gun?
      • Current VirtualGunManager uses Condorcet voting among several selectors (rolling normalized hit rates with different depths) to choose the best gun.
        • Works quite well, changes guns appropriately when Dookious engages/disengages its flattener.
        • However, no big rumble score gain over rev0073b with main gun.
          • I probably just need to continue to develop/tune the guns themselves (the common code they're based upon) and choose only 2-4 of them to minimize churn.
  3. Flattener
    • Put it in a separate object so it's not hanging out at 12 different places in Wheels.java
    • Really think through some theory on when/how to engage.
  4. Bullet Power/fire choice