JavaScript EditorFree JavaScript Editor     Ajax Editor 



Main Page
  Previous Section Next Section

Rationale

Of the designs previously listed, the second option is chosen; the fitness of each weapon as a whole is predicted from the features of the situation, instead of breaking down the decision into attributes. This keeps the number of required DTs to a manageable level, which increases the efficiency of the AI (low memory usage and only querying a few DTs). Also, it makes for a more challenging application that deals with more data.

Methodology

The fitness of weapons is learned within the game. The benefit of each weapon is learned separately first, induced online using an incremental regression tree. The tree learns to estimate the average damage inflicted on targets based on features of the current situation.

Necessary information is gathered using the usual interfaces for predictor variables (for instance, enemy position, health, terrain constriction). For the response variable, a combination of information from the game is gathered by events to determine the damage (for instance, sounds or explosions)—as in Part III.

The simulation allows the AI to learn the trends associated with the weapons. Given enough accelerated time, good patterns should arise in each of the regression trees. Then, it'll be possible to query these trees for the best weapon for action; out of all the damage estimates, which is the highest?

Then, if necessary, the regression trees could be processed to build a near-optimal single classification tree (first option discussed). This final classifier would take the same attributes as each of the regression trees, but return the most appropriate class of weapons, factoring out the fitness estimates. As discussed, this wouldn't work in all cases—although it's an interesting problem.

Discussion

As it stands, the regression tree is a substitute for most stages of the voting system. Using a regression tree instead has many advantages:

  • The decision process is less complex (only two stages).

  • The representation is compact and very efficient to query.

  • The AI learns to deals with unforeseen situations by generalizing.

  • It is possible to induce the weapon selection from expert advice, instead of the voting system.

Thanks to their expressiveness, the induced trees are easy to modify if the learned behaviors are not appropriate. This will be useful for the designer to override the behavior with an explicit design.

      Previous Section Next Section
    



    JavaScript EditorAjax Editor     JavaScript Editor