Free JavaScript Editor
Ajax Editor
|
|
SummaryThis chapter applied DTs to learn weapon selection. We actually had the luxury of being able to apply DTs to this problem in many different ways:
We opted for the second option: estimating the overall fitness of the weapon, because it provides more challenges and reduces the need for external code. Then we drafted the interfaces for a modular DT, both runtime and initialization:
The implementation itself is quite challenging to handle when multiple attributes types are possible:
In the application phase, we identified some key tasks:
The system performs well enough, and imposing timing restrictions (as with the voting system) also helps reduce idiosyncrasies. The advantage of the DTs is that the performance of the weapon in the game is learned, subject to individual skill and preferences—rather than objective statistics. On the down side, there is a lot of work needed to set up the DT, notably gathering the data and computing an example that the algorithm can learn. Part V moves away from supervised techniques. Techniques such as genetic algorithms have the advantage of being directed by a very high-level fitness function, rather than individual examples. Before the next part, however, there's a lesson in the next chapter about understanding AI solutions in general, which provides guidance for the design of all AI systems. |
|
|
Ajax Editor
JavaScript Editor