Difference between revisions of "SimpleBot/Version History"
Jump to navigation
Jump to search
m (clean) |
m (Now retired and replaced by ScalarBot.) |
||
(22 intermediate revisions by 2 users not shown) | |||
Line 3: | Line 3: | ||
| parent = SimpleBot | | parent = SimpleBot | ||
| page1 = Version History | | page1 = Version History | ||
+ | | page2 = Understanding SimpleBot | ||
}} | }} | ||
+ | Now retired and replaced by [[ScalarBot]]. | ||
---- | ---- | ||
+ | * {{SimpleVersion|date=2017-08-28|version=0.024c.c}} | ||
+ | ** '''{{RumbleStatsDefault|link=http://literumble.appspot.com/BotDetails?game=roborumble&name=aaa.SimpleBot%200.024c.c|rumble=RoboRumble|scorelabel=APS|score=84.34|rank=22nd|win=1120|loss=32|plrank=31st|glicko2=N/A|pwin=97.18|vote=2.79|anpp=88.83|score2label=Survival|score2=90.98}}''' | ||
+ | ** '''Based on 0.024c''' | ||
+ | ** REFACTOR EVERYTHING. Hope it don't break anything. | ||
+ | ** Add Acceleration & WallDistance (actually PreciseMea/OldSchoolMea) dimension in movement (in a separate tree to make sure not breaking existing tree). | ||
+ | * {{SimpleVersion|date=2017-08-27|version=0.024d (skipped)}} | ||
+ | ** Movement: | ||
+ | *** Use kernel density. | ||
+ | *** Remove most recent hit gf. | ||
+ | *** Try straight wall distance in surfing dimensions. | ||
+ | *** Try to decay GuessFactors with gaussian distribution. | ||
+ | ** Performance decreased a lot. | ||
* {{SimpleVersion|date=2017-08-26|version=0.024c}} | * {{SimpleVersion|date=2017-08-26|version=0.024c}} | ||
− | ** '''{{ | + | ** '''{{RumbleStatsDefault|link=http://literumble.appspot.com/BotDetails?game=roborumble&name=aaa.SimpleBot%200.024c|rumble=RoboRumble|scorelabel=APS|score=83.06|rank=36th|win=1093|loss=59|plrank=54th|glicko2=N/A|pwin=94.88|vote=2.81|anpp=87.3|score2label=Survival|score2=89.84}}''' |
− | ** Add second-wave surfing. Weight waves | + | ** Add second-wave surfing. |
+ | ** Weight waves on bullet damage. Not yet tried weighting on distance or so. | ||
+ | ** Add stationary risk (risk if I hit the brake immediately). | ||
* {{SimpleVersion|date=2017-08-26|version=0.024b (skipped)}} | * {{SimpleVersion|date=2017-08-26|version=0.024b (skipped)}} | ||
− | ** Remove flattener completely. Merge branch knn to master. | + | ** Remove flattener completely. |
+ | ** '''Merge branch knn to master. ''' | ||
* {{SimpleVersion|date=2017-08-26|version=0.023h.knn.b}} | * {{SimpleVersion|date=2017-08-26|version=0.023h.knn.b}} | ||
− | ** '''{{ | + | ** '''{{RumbleStatsDefault|link=http://literumble.appspot.com/BotDetails?game=roborumble&name=aaa.SimpleBot%200.023h.knn.b|rumble=RoboRumble|scorelabel=APS|score=82.15|rank=46th|win=1091|loss=60|plrank=54th|glicko2=N/A|pwin=94.79|vote=1.27|anpp=86.41|score2label=Survival|score2=89.1}}''' |
− | ** Tune gun against RaikoMicro & FloodMini | + | ** Tune gun against RaikoMicro & FloodMini: |
+ | *** Use manhattan distance for knn | ||
+ | *** Use gaussian distribution kernel density | ||
+ | *** Use max overlap for selecting best firing angle | ||
+ | *** Use accel for lateral direction in gun. | ||
+ | *** Give up PreciseMea but in gun attribute. | ||
+ | *** Add accel & currentGf dimension. | ||
+ | *** Thanks [[User:Skilgannon|Skilgannon]] for the great idea of using currentGf! Also thanks [[User:Skilgannon|Skilgannon]] for the ideas of using manhattan distance & gaussian distribution kernel density. | ||
* {{SimpleVersion|date=2017-08-25|version=0.023h_knn}} | * {{SimpleVersion|date=2017-08-25|version=0.023h_knn}} | ||
− | ** '''{{ | + | ** '''{{RumbleStatsDefault|link=http://literumble.appspot.com/BotDetails?game=roborumble&name=aaa.SimpleBot%200.023h_knn|rumble=RoboRumble|scorelabel=APS|score=79.56|rank=63rd|win=1061|loss=89|plrank=80th|glicko2=N/A|pwin=92.22|vote=1.47|anpp=83.6|score2label=Survival|score2=85.99}}''' |
− | ** Based on 0.023h. Try kNN (my Bucket PR KdTree implementation) in gun and movement. | + | ** '''Based on 0.023h. ''' |
+ | ** Try kNN (my Bucket PR KdTree implementation) in gun and movement. | ||
* {{SimpleVersion|date=2017-08-24|version=0.024}} | * {{SimpleVersion|date=2017-08-24|version=0.024}} | ||
− | ** '''{{ | + | ** '''{{RumbleStatsDefault|link=http://literumble.appspot.com/BotDetails?game=roborumble&name=aaa.SimpleBot%200.024|rumble=RoboRumble|scorelabel=APS|score=71.14|rank=134th|win=965|loss=187|plrank=154th|glicko2=N/A|pwin=83.77|vote=0.71|anpp=74.72|score2label=Survival|score2=77.11}}''' |
− | ** WaveSurfing: Add a flattener. Gun: fire gfs from last 50 tick waves. | + | ** WaveSurfing: Add a flattener. |
+ | ** Gun: fire gfs from last 50 tick waves. | ||
* {{SimpleVersion|date=2017-08-24|version=0.023i (skipped)}} | * {{SimpleVersion|date=2017-08-24|version=0.023i (skipped)}} | ||
− | ** Fire lower power at first shot. | + | ** Fire lower power at first shot. |
+ | ** Add another tier (which is lower than max) for killer shot. | ||
* {{SimpleVersion|date=2017-08-24|version=0.023h}} | * {{SimpleVersion|date=2017-08-24|version=0.023h}} | ||
− | ** '''{{ | + | ** '''{{RumbleStatsDefault|link=http://literumble.appspot.com/BotDetails?game=roborumble&name=aaa.SimpleBot%200.023h|rumble=RoboRumble|scorelabel=APS|score=70.1|rank=155th|win=922|loss=230|plrank=199th|glicko2=N/A|pwin=80.03|vote=0.88|anpp=73.51|score2label=Survival|score2=75.69}}''' |
** Fix a bug in 0.023g: now reset energy power when init round. | ** Fix a bug in 0.023g: now reset energy power when init round. | ||
* {{SimpleVersion|date=2017-08-24|version=0.023g (skipped)}} | * {{SimpleVersion|date=2017-08-24|version=0.023g (skipped)}} | ||
− | ** | + | ** Rework energy management. |
* {{SimpleVersion|date=2017-08-23|version=0.023f}} | * {{SimpleVersion|date=2017-08-23|version=0.023f}} | ||
− | ** '''{{ | + | ** '''{{RumbleStatsDefault|link=http://literumble.appspot.com/BotDetails?game=roborumble&name=aaa.SimpleBot%200.023f|rumble=RoboRumble|scorelabel=APS|score=68.04|rank=192nd|win=901|loss=250|plrank=218th|glicko2=N/A|pwin=78.28|vote=0.61|anpp=71.28|score2label=Survival|score2=77.82}}''' |
** Gun: try to match enemy bullet power. | ** Gun: try to match enemy bullet power. | ||
* {{SimpleVersion|date=2017-08-22|version=0.023e}} | * {{SimpleVersion|date=2017-08-22|version=0.023e}} | ||
− | ** '''{{ | + | ** '''{{RumbleStatsDefault|link=http://literumble.appspot.com/BotDetails?game=roborumble&name=aaa.SimpleBot%200.023e|rumble=RoboRumble|scorelabel=APS|score=67.91|rank=194th|win=896|loss=255|plrank=224th|glicko2=N/A|pwin=77.85|vote=0.89|anpp=71.08|score2label=Survival|score2=75.33}}''' |
** Fix a bug in 0.023d that caused WallSmoothing not working. | ** Fix a bug in 0.023d that caused WallSmoothing not working. | ||
* {{SimpleVersion|date=2017-08-22|version=0.023d}} | * {{SimpleVersion|date=2017-08-22|version=0.023d}} | ||
− | ** '''{{ | + | ** '''{{RumbleStatsDefault|link=http://literumble.appspot.com/BotDetails?game=roborumble&name=aaa.SimpleBot%200.023d|rumble=RoboRumble|scorelabel=APS|score=67.07|rank=212th|win=726|loss=235|plrank=386th|glicko2=N/A|pwin=75.55|vote=0|anpp=0|score2label=Survival|score2=73.97}}''' |
** Try some non-iterative way of [[WallSmoothing]] in both gun and movement. Also as a side effect, a trivial bug in the old simplest implementation of WallSmoothing is eliminated. And the total running time is halved comparing to the old implementation when fighting against RaikoMicro. | ** Try some non-iterative way of [[WallSmoothing]] in both gun and movement. Also as a side effect, a trivial bug in the old simplest implementation of WallSmoothing is eliminated. And the total running time is halved comparing to the old implementation when fighting against RaikoMicro. | ||
* {{SimpleVersion|date=2017-08-22|version=0.023c (skipped)}} | * {{SimpleVersion|date=2017-08-22|version=0.023c (skipped)}} | ||
− | ** Add a switch to debug graphics, and is off by default. Try to truncate gun gf history but no noticeable increase or decrease in performance against RaikoMicro. | + | ** Add a switch to debug graphics, and is off by default. |
+ | ** Try to truncate gun gf history but no noticeable increase or decrease in performance against RaikoMicro. | ||
+ | ** Fix a bug causing wave to be logged after enemy die. | ||
* {{SimpleVersion|date=2017-08-21|version=0.023b}} | * {{SimpleVersion|date=2017-08-21|version=0.023b}} | ||
− | ** '''{{ | + | ** '''{{RumbleStatsDefault|link=http://literumble.appspot.com/BotDetails?game=roborumble&name=aaa.SimpleBot%200.023b|rumble=RoboRumble|scorelabel=APS|score=67.96|rank=192nd|win=881|loss=270|plrank=243rd|glicko2=N/A|pwin=76.54|vote=0.49|anpp=71.18|score2label=Survival|score2=75.49}}''' |
− | ** Aim at predicted fire location instead of current location; | + | ** Aim at predicted fire location instead of current location; |
+ | ** Fix a long living bug which caused fire power to mismatch aim power; | ||
+ | ** Add graphics for firing waves. | ||
* {{SimpleVersion|date=2017-08-21|version=0.023}} | * {{SimpleVersion|date=2017-08-21|version=0.023}} | ||
− | ** '''{{ | + | ** '''{{RumbleStatsDefault|link=http://literumble.appspot.com/BotDetails?game=roborumble&name=aaa.SimpleBot%200.023|rumble=RoboRumble|scorelabel=APS|score=67.94|rank=192nd|win=890|loss=262|plrank=235th|glicko2=N/A|pwin=77.26|vote=1.14|anpp=71.15|score2label=Survival|score2=74.9}}''' |
** Use [[Precise GuessFactor]] in gun. | ** Use [[Precise GuessFactor]] in gun. | ||
* {{SimpleVersion|date=2017-08-20|version=0.022d}} | * {{SimpleVersion|date=2017-08-20|version=0.022d}} | ||
− | ** '''{{ | + | ** '''{{RumbleStatsDefault|link=http://literumble.appspot.com/BotDetails?game=roborumble&name=aaa.SimpleBot%200.022d|rumble=RoboRumble|scorelabel=APS|score=67.65|rank=199th|win=880|loss=272|plrank=244th|glicko2=N/A|pwin=76.39|vote=0.7|anpp=70.82|score2label=Survival|score2=74.56}}''' |
− | ** Tune against some RamBots: Fire a dummy wave when there is no wave to surf. Precise prediction now ends after wave passes center instead of touches. Limit attack angle | + | ** Tune against some RamBots: |
+ | *** Fire a dummy wave when there is no wave to surf. | ||
+ | ** Precise prediction now ends after wave passes center instead of touches. | ||
+ | ** Limit attack angle | ||
+ | ** distancing on enemy distance instead of distance of wave source. | ||
+ | ** Add most recent gf in combination of random gf of last 20. | ||
* {{SimpleVersion|date=2017-08-20|version=0.022c (skipped)}} | * {{SimpleVersion|date=2017-08-20|version=0.022c (skipped)}} | ||
− | ** Take botWidth into account when calculating wave danger; | + | ** Take botWidth into account when calculating wave danger; |
+ | ** Show selected GuessFactors in graphics; | ||
+ | ** Add Precise WaveTracking. | ||
* {{SimpleVersion|date=2017-08-20|version=0.022b}} | * {{SimpleVersion|date=2017-08-20|version=0.022b}} | ||
− | ** '''{{ | + | ** '''{{RumbleStatsDefault|link=http://literumble.appspot.com/BotDetails?game=roborumble&name=aaa.SimpleBot%200.022b|rumble=RoboRumble|scorelabel=APS|score=59.65|rank=376th|win=546|loss=306|plrank=604th|glicko2=N/A|pwin=64.08|vote=0|anpp=62.18|score2label=Survival|score2=64.75}}''' |
− | ** Tune against RaikoMicro — Simple Energy Management; WaveSurfing select randomly in last 20 hits; BulletHitBullet event handled. Thanks [[User:Dsekercioglu|Dsekercioglu]]! | + | ** Tune against RaikoMicro — |
+ | *** Simple Energy Management; | ||
+ | *** WaveSurfing select randomly in last 20 hits; | ||
+ | *** BulletHitBullet event handled. | ||
+ | ** Switch to orbiting fire position. Thanks [[User:Dsekercioglu|Dsekercioglu]]! | ||
* {{SimpleVersion|date=2017-08-19|version=0.022}} | * {{SimpleVersion|date=2017-08-19|version=0.022}} | ||
− | ** '''{{ | + | ** '''{{RumbleStatsDefault|link=http://literumble.appspot.com/BotDetails?game=roborumble&name=aaa.SimpleBot%200.022|rumble=RoboRumble|scorelabel=APS|score=59.64|rank=376th|win=575|loss=381|plrank=562nd|glicko2=N/A|pwin=60.15|vote=0.18|anpp=61.99|score2label=Survival|score2=63.09}}''' |
− | ** Surf next wave immediately when the current wave touches. | + | ** Surf next wave immediately when the current wave touches. |
+ | ** Tune danger function. | ||
* {{SimpleVersion|date=2017-08-19|version=0.021}} | * {{SimpleVersion|date=2017-08-19|version=0.021}} | ||
− | ** '''{{ | + | ** '''{{RumbleStatsDefault|link=http://literumble.appspot.com/BotDetails?game=roborumble&name=aaa.SimpleBot%200.021|rumble=RoboRumble|scorelabel=APS|score=59.61|rank=377th|win=608|loss=388|plrank=524th|glicko2=N/A|pwin=61.04|vote=0.35|anpp=62.79|score2label=Survival|score2=62.83}}''' |
− | ** Minor fix in movement (a long living bug). Add debug graphics. | + | ** Minor fix in movement (a long living bug). |
+ | ** Add debug graphics. | ||
+ | ** Take distance into account in danger calculation. | ||
* {{SimpleVersion|date=2017-08-19|version=0.02}} | * {{SimpleVersion|date=2017-08-19|version=0.02}} | ||
− | ** '''{{ | + | ** '''{{RumbleStatsDefault|link=http://literumble.appspot.com/BotDetails?game=roborumble&name=aaa.SimpleBot%200.02|rumble=RoboRumble|scorelabel=APS|score=43.52|rank=764th|win=80|loss=175|plrank=1090th|glicko2=N/A|pwin=31.37|vote=0.18|anpp=44.77|score2label=Survival|score2=42.54}}''' |
** Simple [[WaveSurfing]] that selects a random [[GuessFactor|gf]] and dodge. | ** Simple [[WaveSurfing]] that selects a random [[GuessFactor|gf]] and dodge. | ||
* {{SimpleVersion|date=2017-08-18|version=0.011}} | * {{SimpleVersion|date=2017-08-18|version=0.011}} | ||
− | ** '''{{ | + | ** '''{{RumbleStatsDefault|link=http://literumble.appspot.com/BotDetails?game=roborumble&name=aaa.SimpleBot%200.011|rumble=RoboRumble|scorelabel=APS|score=34.53|rank=927th|win=307|loss=840|plrank=897th|glicko2=N/A|pwin=26.77|vote=0.26|anpp=35.74|score2label=Survival|score2=27.68}}''' |
** Fire recorded [[GuessFactor|GuessFactors]] randomly. | ** Fire recorded [[GuessFactor|GuessFactors]] randomly. | ||
* {{SimpleVersion|date=2017-08-18|version=0.01}} | * {{SimpleVersion|date=2017-08-18|version=0.01}} | ||
− | ** '''{{ | + | ** '''{{RumbleStatsDefault|link=http://literumble.appspot.com/BotDetails?game=roborumble&name=aaa.SimpleBot%200.01|rumble=RoboRumble|scorelabel=APS|score=18.51|rank=1073rd|win=124|loss=1023|plrank=1056th|glicko2=N/A|pwin=10.81|vote=0|anpp=0|score2label=Survival|score2=14.7}}''' |
** First try in [[roborumble]] with fixed [[GuessFactor]] (actually 1.0, which is ridiculous) | ** First try in [[roborumble]] with fixed [[GuessFactor]] (actually 1.0, which is ridiculous) | ||
− | ** | + | ** Use fixed circular movement. |
[[Category:Bot Version Histories]] | [[Category:Bot Version Histories]] |
Latest revision as of 05:59, 19 January 2023
- SimpleBot Sub-pages:
- SimpleBot - Version History - Understanding SimpleBot
Now retired and replaced by ScalarBot.
- 0.024c.c – 2017-08-28
- RoboRumble ‒ APS: 84.34% (22nd), PL: 1120-32 (31st), Survival: 90.98%
- Based on 0.024c
- REFACTOR EVERYTHING. Hope it don't break anything.
- Add Acceleration & WallDistance (actually PreciseMea/OldSchoolMea) dimension in movement (in a separate tree to make sure not breaking existing tree).
- 0.024d (skipped) – 2017-08-27
- Movement:
- Use kernel density.
- Remove most recent hit gf.
- Try straight wall distance in surfing dimensions.
- Try to decay GuessFactors with gaussian distribution.
- Performance decreased a lot.
- Movement:
- 0.024c – 2017-08-26
- RoboRumble ‒ APS: 83.06% (36th), PL: 1093-59 (54th), Survival: 89.84%
- Add second-wave surfing.
- Weight waves on bullet damage. Not yet tried weighting on distance or so.
- Add stationary risk (risk if I hit the brake immediately).
- 0.024b (skipped) – 2017-08-26
- Remove flattener completely.
- Merge branch knn to master.
- 0.023h.knn.b – 2017-08-26
- RoboRumble ‒ APS: 82.15% (46th), PL: 1091-60 (54th), Survival: 89.1%
- Tune gun against RaikoMicro & FloodMini:
- Use manhattan distance for knn
- Use gaussian distribution kernel density
- Use max overlap for selecting best firing angle
- Use accel for lateral direction in gun.
- Give up PreciseMea but in gun attribute.
- Add accel & currentGf dimension.
- Thanks Skilgannon for the great idea of using currentGf! Also thanks Skilgannon for the ideas of using manhattan distance & gaussian distribution kernel density.
- 0.023h_knn – 2017-08-25
- RoboRumble ‒ APS: 79.56% (63rd), PL: 1061-89 (80th), Survival: 85.99%
- Based on 0.023h.
- Try kNN (my Bucket PR KdTree implementation) in gun and movement.
- 0.024 – 2017-08-24
- RoboRumble ‒ APS: 71.14% (134th), PL: 965-187 (154th), Survival: 77.11%
- WaveSurfing: Add a flattener.
- Gun: fire gfs from last 50 tick waves.
- 0.023i (skipped) – 2017-08-24
- Fire lower power at first shot.
- Add another tier (which is lower than max) for killer shot.
- 0.023h – 2017-08-24
- RoboRumble ‒ APS: 70.1% (155th), PL: 922-230 (199th), Survival: 75.69%
- Fix a bug in 0.023g: now reset energy power when init round.
- 0.023g (skipped) – 2017-08-24
- Rework energy management.
- 0.023f – 2017-08-23
- RoboRumble ‒ APS: 68.04% (192nd), PL: 901-250 (218th), Survival: 77.82%
- Gun: try to match enemy bullet power.
- 0.023e – 2017-08-22
- RoboRumble ‒ APS: 67.91% (194th), PL: 896-255 (224th), Survival: 75.33%
- Fix a bug in 0.023d that caused WallSmoothing not working.
- 0.023d – 2017-08-22
- RoboRumble ‒ APS: 67.07% (212th), PL: 726-235 (386th), Survival: 73.97%
- Try some non-iterative way of WallSmoothing in both gun and movement. Also as a side effect, a trivial bug in the old simplest implementation of WallSmoothing is eliminated. And the total running time is halved comparing to the old implementation when fighting against RaikoMicro.
- 0.023c (skipped) – 2017-08-22
- Add a switch to debug graphics, and is off by default.
- Try to truncate gun gf history but no noticeable increase or decrease in performance against RaikoMicro.
- Fix a bug causing wave to be logged after enemy die.
- 0.023b – 2017-08-21
- RoboRumble ‒ APS: 67.96% (192nd), PL: 881-270 (243rd), Survival: 75.49%
- Aim at predicted fire location instead of current location;
- Fix a long living bug which caused fire power to mismatch aim power;
- Add graphics for firing waves.
- 0.023 – 2017-08-21
- RoboRumble ‒ APS: 67.94% (192nd), PL: 890-262 (235th), Survival: 74.9%
- Use Precise GuessFactor in gun.
- 0.022d – 2017-08-20
- RoboRumble ‒ APS: 67.65% (199th), PL: 880-272 (244th), Survival: 74.56%
- Tune against some RamBots:
- Fire a dummy wave when there is no wave to surf.
- Precise prediction now ends after wave passes center instead of touches.
- Limit attack angle
- distancing on enemy distance instead of distance of wave source.
- Add most recent gf in combination of random gf of last 20.
- 0.022c (skipped) – 2017-08-20
- Take botWidth into account when calculating wave danger;
- Show selected GuessFactors in graphics;
- Add Precise WaveTracking.
- 0.022b – 2017-08-20
- RoboRumble ‒ APS: 59.65% (376th), PL: 546-306 (604th), Survival: 64.75%
- Tune against RaikoMicro —
- Simple Energy Management;
- WaveSurfing select randomly in last 20 hits;
- BulletHitBullet event handled.
- Switch to orbiting fire position. Thanks Dsekercioglu!
- 0.022 – 2017-08-19
- RoboRumble ‒ APS: 59.64% (376th), PL: 575-381 (562nd), Survival: 63.09%
- Surf next wave immediately when the current wave touches.
- Tune danger function.
- 0.021 – 2017-08-19
- RoboRumble ‒ APS: 59.61% (377th), PL: 608-388 (524th), Survival: 62.83%
- Minor fix in movement (a long living bug).
- Add debug graphics.
- Take distance into account in danger calculation.
- 0.02 – 2017-08-19
- RoboRumble ‒ APS: 43.52% (764th), PL: 80-175 (1090th), Survival: 42.54%
- Simple WaveSurfing that selects a random gf and dodge.
- 0.011 – 2017-08-18
- RoboRumble ‒ APS: 34.53% (927th), PL: 307-840 (897th), Survival: 27.68%
- Fire recorded GuessFactors randomly.
- 0.01 – 2017-08-18
- RoboRumble ‒ APS: 18.51% (1073rd), PL: 124-1023 (1056th), Survival: 14.7%
- First try in roborumble with fixed GuessFactor (actually 1.0, which is ridiculous)
- Use fixed circular movement.