Evolving dynamic AI opponents for OpenTTD using Dynamic Scripting and Grammatical Evolution
Summary
The goal of this research is developing a dynamic AI for OpenTTD using Dynamic Scripting and Grammatical Evolution. First Grammatical Evolution was used to develop a rulebase for the Dynamic Scripting algorithm. Rules used in OpenTTD have to be able to be used in a wide range of circumstances, very different than other games this combination of Dynamic Scripting and Grammatical Evolution has been tried on. During this process we looked at the effects of grammar and genome structure on convergence. Restricting grammars by incorporating domain knowledge
and splitting the genomes into separate parts was found to have a strong effect on convergence. Better programs generated by the Grammatical Evolution leads to a better rulebase. Using these programs we hand build a rulebase from the generated programs and tested a Dynamic Scripting algorithm. It was found to outperform the evolved programs and beat several hand coded AI’s.