Practical and theoretical issues of evolving behaviour trees for a turn-based game

The concept of evolving components of an artificial intelligence (AI) has seen increased interest in recent years as the power and complexity of AI has grown. In entertainment software, this AI can impact the player's experiences and enjoyment through elements such as the level of difficulty of...

Full description

Bibliographic Details
Main Author: Oakes, Bentley
Other Authors: Clark Verbrugge (Internal/Supervisor)
Format: Others
Language:en
Published: McGill University 2013
Subjects:
Online Access:http://digitool.Library.McGill.CA:80/R/?func=dbin-jump-full&object_id=119721
id ndltd-LACETR-oai-collectionscanada.gc.ca-QMM.119721
record_format oai_dc
spelling ndltd-LACETR-oai-collectionscanada.gc.ca-QMM.1197212014-02-13T04:12:31ZPractical and theoretical issues of evolving behaviour trees for a turn-based gameOakes, BentleyApplied Sciences - Computer ScienceThe concept of evolving components of an artificial intelligence (AI) has seen increased interest in recent years as the power and complexity of AI has grown. In entertainment software, this AI can impact the player's experiences and enjoyment through elements such as the level of difficulty of the player's competition. Therefore AI development is an important research topic, especially as development is considered difficult by the video game industry. This work applies the evolutionary computing paradigm to a turn-based domain by evolving team strategies. These strategies are represented as behaviour trees, a formalism found in the video game industry and well-suited to the evolutionary algorithm due to their flexibility and tree structure. During the evolutionary process, strategies are evaluated in Battle for Wesnoth, an open-source game with a stochastic nature. A fitness function is defined to assign strategies a numerical strength value, along with a second performance metric that is robust to the variance found in the domain. The evolutionary algorithm then recombines strategies with high strength values, using evolutionary operators from the literature such as crossover and mutation. Later experiments focus on evolutionary algorithm parameters, including comparing a variety of fitness functions to provide insights into their use. Starting from a number of initial states, numerous strategies are evolved using this algorithm. These initial states are a null strategy, randomly-generated strategies, and a number of hand-built strategies. The evolved strategies are then evaluated in-game, and will be shown to be measurably stronger than the initial strategies.L'application de l'informatique évolutive au domaine de l'Intelligence Artificielle (IA) émerge naturellement. Pour l'industrie du divertissement (jeux ludiques), IA fait référence aux différents éléments visuels ou non qui déterminent une partie importante de l'expérience du joueur. Cette responsabilité fait en sorte que développer des système d'IA n'est pas une tâche simple, ce qui en fait un domaine de recherche intéressant. Ce travail applique les concepts d'informatique évolutive a un jeu par tour en lassant évoluer des stratégies d'IA. Les stratégies sont représentées par des arbres de comportement. Nous retrouvons cet automate dans l'industrie des jeux digitales, en général il est flexibles et bien adapté a l'informatique évolutive. Durant le processus d'évolution les stratégies sont évaluées dans le jeu Battle for Wesnoth, un jeu logiciel libre de nature stochastique. Une fonction d'aptitude est assignée aux stratégies afin de déterminer numériquement leur efficacité, de plus l'algorithme utilise des mesures robuste à la variance du processus. L'algorithme d'évolution recombine les stratégies efficaces utilisant des opérateurs évolutionnaires basés sur littérature par exemple, mutation ou transition. De plus amples expériences se concentrent sur différents paramètres et leurs utilités, par exemple les fonctions d'aptitudes. L'algorithme utilise de multiples états initiales : stratégie nulle, stratégie issue du hasard et stratégies de conception humaine. Les stratégies sont ensuite testées dans le jeu. Il est démontré par la suite que les stratégies évoluées par l'algorithme sont plus efficace que leurs états initiaux.McGill UniversityClark Verbrugge (Internal/Supervisor)2013Electronic Thesis or Dissertationapplication/pdfenElectronically-submitted theses.All items in eScholarship@McGill are protected by copyright with all rights reserved unless otherwise indicated.Master of Science (School of Computer Science) http://digitool.Library.McGill.CA:80/R/?func=dbin-jump-full&object_id=119721
collection NDLTD
language en
format Others
sources NDLTD
topic Applied Sciences - Computer Science
spellingShingle Applied Sciences - Computer Science
Oakes, Bentley
Practical and theoretical issues of evolving behaviour trees for a turn-based game
description The concept of evolving components of an artificial intelligence (AI) has seen increased interest in recent years as the power and complexity of AI has grown. In entertainment software, this AI can impact the player's experiences and enjoyment through elements such as the level of difficulty of the player's competition. Therefore AI development is an important research topic, especially as development is considered difficult by the video game industry. This work applies the evolutionary computing paradigm to a turn-based domain by evolving team strategies. These strategies are represented as behaviour trees, a formalism found in the video game industry and well-suited to the evolutionary algorithm due to their flexibility and tree structure. During the evolutionary process, strategies are evaluated in Battle for Wesnoth, an open-source game with a stochastic nature. A fitness function is defined to assign strategies a numerical strength value, along with a second performance metric that is robust to the variance found in the domain. The evolutionary algorithm then recombines strategies with high strength values, using evolutionary operators from the literature such as crossover and mutation. Later experiments focus on evolutionary algorithm parameters, including comparing a variety of fitness functions to provide insights into their use. Starting from a number of initial states, numerous strategies are evolved using this algorithm. These initial states are a null strategy, randomly-generated strategies, and a number of hand-built strategies. The evolved strategies are then evaluated in-game, and will be shown to be measurably stronger than the initial strategies. === L'application de l'informatique évolutive au domaine de l'Intelligence Artificielle (IA) émerge naturellement. Pour l'industrie du divertissement (jeux ludiques), IA fait référence aux différents éléments visuels ou non qui déterminent une partie importante de l'expérience du joueur. Cette responsabilité fait en sorte que développer des système d'IA n'est pas une tâche simple, ce qui en fait un domaine de recherche intéressant. Ce travail applique les concepts d'informatique évolutive a un jeu par tour en lassant évoluer des stratégies d'IA. Les stratégies sont représentées par des arbres de comportement. Nous retrouvons cet automate dans l'industrie des jeux digitales, en général il est flexibles et bien adapté a l'informatique évolutive. Durant le processus d'évolution les stratégies sont évaluées dans le jeu Battle for Wesnoth, un jeu logiciel libre de nature stochastique. Une fonction d'aptitude est assignée aux stratégies afin de déterminer numériquement leur efficacité, de plus l'algorithme utilise des mesures robuste à la variance du processus. L'algorithme d'évolution recombine les stratégies efficaces utilisant des opérateurs évolutionnaires basés sur littérature par exemple, mutation ou transition. De plus amples expériences se concentrent sur différents paramètres et leurs utilités, par exemple les fonctions d'aptitudes. L'algorithme utilise de multiples états initiales : stratégie nulle, stratégie issue du hasard et stratégies de conception humaine. Les stratégies sont ensuite testées dans le jeu. Il est démontré par la suite que les stratégies évoluées par l'algorithme sont plus efficace que leurs états initiaux.
author2 Clark Verbrugge (Internal/Supervisor)
author_facet Clark Verbrugge (Internal/Supervisor)
Oakes, Bentley
author Oakes, Bentley
author_sort Oakes, Bentley
title Practical and theoretical issues of evolving behaviour trees for a turn-based game
title_short Practical and theoretical issues of evolving behaviour trees for a turn-based game
title_full Practical and theoretical issues of evolving behaviour trees for a turn-based game
title_fullStr Practical and theoretical issues of evolving behaviour trees for a turn-based game
title_full_unstemmed Practical and theoretical issues of evolving behaviour trees for a turn-based game
title_sort practical and theoretical issues of evolving behaviour trees for a turn-based game
publisher McGill University
publishDate 2013
url http://digitool.Library.McGill.CA:80/R/?func=dbin-jump-full&object_id=119721
work_keys_str_mv AT oakesbentley practicalandtheoreticalissuesofevolvingbehaviourtreesforaturnbasedgame
_version_ 1716647553893662720