Leveraging Algorithm

From Robowiki
Jump to navigation Jump to search
This article is a stub. You can help RoboWiki by expanding it.

A Leveraging Algorithm is an algorithm which combines the output of multiple weaker learning algorithms to create a stronger whole. While it is not a required part of the definition, they often apply a weighting to the different outputs of the weaker algorithms.

Boosting

Wikipedia
Wikipedia has an article about:

A leveraging algorithm is considered to be a Boosting Algorithm when it also satisfies the condition of being a provable boosting algorithm in the probably approximately correct learning formulation. Various well-proven boosting algorithms such as AdaBoost and LogitBoost exist, but none are yet known to be known to have be used in Robocode. It has been speculated that it may be a new way to possibly improve robot performance.

Leveraging Algorithms in Robocode

While well-known boosting algorithms are not known to have been applied to Robocode, various forms of leveraging algorithms have been in use for a very long time. Some of these may actually count as boosting, but this is unknown currently.

Virtual Guns

Main article: Virtual Guns

The Virtual Guns system is a very primitive leveraging algorithm, which simply picks only the output of the algorithm that has given the most accurate output so far. It has been in use in Robocode for a very long time and has proven useful for purposes such as the set of targeting techniques.

Crowd Targeting

Main article: Crowd Targeting

The exact definition of Crowd Targeting is somewhat uncertain. It is often used to describe any leveraging algorithm which sums the outputs of multiple other algorithm, possibly with some weighting. It has on the other hand also been argued to only be a term that applies when no such weighting is done and the raw outputs are summed.

To be written

Others

To be written