Difference between revisions of "Raven"

From Robowiki
Jump to navigation Jump to search
(Give more info about the current state of Raven and remove the italics that make my eyes hurt)
(Raven page update)
(5 intermediate revisions by the same user not shown)
Line 12: Line 12:
 
; What's special about it?
 
; What's special about it?
 
: Raven dynamically weights its movement classifiers using gradient-based optimization.
 
: Raven dynamically weights its movement classifiers using gradient-based optimization.
 +
: Raven uses a form of Go to surfing where it procedurally generates paths without aiming for any point.
  
 
; Great, I want to try it. Where can I download it?
 
; Great, I want to try it. Where can I download it?
: https://www.dropbox.com/s/ionjtk6rjk6pnyb/dsekercioglu.mega.Raven_2.9.jar?dl=1
+
: https://www.dropbox.com/s/335p9lcdwgpagry/dsekercioglu.mega.Raven_3.19b.jar?dl=1
  
 
; How competitive is it?
 
; How competitive is it?
: It's best is top 30
+
: Its best is 15.
  
;Credits
+
; Credits
:[[Skilgannon]] for the bugless, fast Kd-tree.
+
: [[Rednaxela]], [[Skilgannon]], [[Nat]], [[Starrynyte]] and the other contributors I am unaware of for the FastTrig class.
:[[Cb]] for non-iterative wall smoothing.
+
: [[Skilgannon]] for the bugless, fast Kd-tree.
:[[Rozu]] for the precise prediction code.
+
: [[Cb]] for the non-iterative wall smoothing.
:[[Chase-san]] for the intercept method I used in my [[PPMEA]] calculations.
+
: [[Rozu]] for the precise prediction code.
:[[AW]] for giving me the idea of integrating the danger function in order to get the danger value for a given bot width.
+
: [[Chase-san]] for the intercept method I used in my [[PPMEA]] calculations.
 +
: [[AW]] for giving me the idea of integrating the danger function in order to get the danger value for a given bot width.
 
== Strategy ==
 
== Strategy ==
  
 
; How does it [[Movement|move]]?
 
; How does it [[Movement|move]]?
: True Surfing.
+
: A form of Go To Surfing.
 +
: It falls back to True Surfing when there is no bullets mid-air.
  
 
; How does it fire?
 
; How does it fire?
Line 37: Line 40:
  
 
; What does it save between rounds and matches?
 
; What does it save between rounds and matches?
: Between rounds it saves the kd-trees. Between matches it doesn't save anything.
+
: Between rounds, it saves the kd-trees. Between matches, it doesn't save anything.
  
 
== Additional Information ==
 
== Additional Information ==
Line 48: Line 51:
  
 
; What's next for your robot?
 
; What's next for your robot?
: Better Bullet Shadow Calculations.
+
: A proper versioning system so I don't keep accidentally releasing experimental versions.
 +
: Faster code so it doesn't run slow and doesn't skip turns.
 +
: Better bullet shadow calculations.
 
: Tuning the guns since they haven't been tuned since the first version.
 
: Tuning the guns since they haven't been tuned since the first version.
 
: Gun Heat Waves.
 
: Gun Heat Waves.
Line 55: Line 60:
  
 
; Does it have any [[White Whale]]s?
 
; Does it have any [[White Whale]]s?
: Drifter seems to have the highest KNNPBI.
+
: Raven doesn't seem to have any extreme white whales currently.
  
 
; What other robot(s) is it based on?
 
; What other robot(s) is it based on?

Revision as of 14:26, 27 July 2020

Background Information

Bot Name
Raven
Author
Dsekercioglu
Extends
AdvancedRobot
What's special about it?
Raven dynamically weights its movement classifiers using gradient-based optimization.
Raven uses a form of Go to surfing where it procedurally generates paths without aiming for any point.
Great, I want to try it. Where can I download it?
https://www.dropbox.com/s/335p9lcdwgpagry/dsekercioglu.mega.Raven_3.19b.jar?dl=1
How competitive is it?
Its best is 15.
Credits
Rednaxela, Skilgannon, Nat, Starrynyte and the other contributors I am unaware of for the FastTrig class.
Skilgannon for the bugless, fast Kd-tree.
Cb for the non-iterative wall smoothing.
Rozu for the precise prediction code.
Chase-san for the intercept method I used in my PPMEA calculations.
AW for giving me the idea of integrating the danger function in order to get the danger value for a given bot width.

Strategy

How does it move?
A form of Go To Surfing.
It falls back to True Surfing when there is no bullets mid-air.
How does it fire?
It uses GuessFactor with KNN.
How does it dodge bullets?
Tries to minimize the number of guess factors it gets hit by based on their weights and damage.
What does it save between rounds and matches?
Between rounds, it saves the kd-trees. Between matches, it doesn't save anything.

Additional Information

Where did you get the name?
It just popped into my mind and I thought it would be a proper name for a bot with machine learning.
Can I use your code?
Yes, I tried to make the code as clean and understandable as possible.
What's next for your robot?
A proper versioning system so I don't keep accidentally releasing experimental versions.
Faster code so it doesn't run slow and doesn't skip turns.
Better bullet shadow calculations.
Tuning the guns since they haven't been tuned since the first version.
Gun Heat Waves.
Maybe a pre-trained movement or gun to use in the first ticks of the battle.
Add a flattener that actually improves its scores against adaptive targeting.
Does it have any White Whales?
Raven doesn't seem to have any extreme white whales currently.
What other robot(s) is it based on?
It's kind of based on WhiteFang, I have tried to copy the design but make it as precise as it can be.