Paper Review: Evolving Robot Tank Controllers

From: Jessica Kristan Miller (jessica_at_cs.washington.edu)
Date: Mon Oct 20 2003 - 00:12:15 PDT

  • Next message: snavely_at_cs.washington.edu: "Review: Jacob Eisenstein, "Evolving Robot Tank Controllers""

    Paper Reviewed: Evolving Robot Tank Controllers
    Paper Author: Jacob Eisenstein
    Reviewed By: Jessica Miller

    Summary:

    This paper presents the author's techniques and results of using a genetic
    algorithm approach to generate successful Robocode tank controllers.

    Two Important Most Ideas:

    (1) Eisenstein's representation of a genome is encoded into a language
    called TableRex. His Java code then interprets the given TableRex program
    to decide what the tank does in the simulated environment. The reasons
    why TableRex was a good language for representation of for the tank
    controller was because it was easily encodable as a fixed-length genome,
    it could be efficiently interpreted by Java, and it is able to easily
    output a sequence of ordered commands. As discussed in class, finding a
    good representation of the problem is key to getting good results when
    using genetic algorithms. This particular representation seemed key to
    Eisenstein's good results.

    (2) Another important idea presented in the paper is the fitness function
    he used and how he used it. After trying several different fitness
    functions Eisenstein found that the difference between the scores of the
    two robots was the best one. He then uses fitness scaling to streamline
    the effects of the evolutionary process. The way he uses the fitness
    function is important because it resulted in breeding good tank
    controllers.

    Largest Flaw in the Paper:

    Since this paper was a school project it didn't have a whole lot of data
    that resulted in using different fitness functions, fitness scaling
    factors, different operators, or different representations. Eisenstein's
    solutions to these problems would be much better supported if he could
    compare his decisions with the results of tweaking some of these factors
    and then show his decisions were the best.

    Two Open Research Questions:

    (1) Eisenstein himself identifies targeting strategy as being very
    difficult to learn. This in itself could be a good research topic...what
    learning techniques can you apply to the tank controller to learn better
    targeting strategy? This is important because not only would the
    controller be more effective at causing damage to his opponent but also
    the only way for a tank to gain energy is to hit another tank.

    (2) Another open research question is is there a better approach to
    yielding robots that are good at dealing with multiple adversaries? It
    seems that Eisenstein's approach is very time consuming and he gives no
    results that it would even work had he had the time to train his robots.
    This seems important because few (if any) robot controllers deal well with
    more than one adversary.


  • Next message: snavely_at_cs.washington.edu: "Review: Jacob Eisenstein, "Evolving Robot Tank Controllers""

    This archive was generated by hypermail 2.1.6 : Mon Oct 20 2003 - 00:12:16 PDT