AI Comparison Project - Behaviour Trees Vs Decision Trees
ROLES
Sole Programmer
DESCRIPTION
This project is an AI showcase that compares the effectiveness of both behvaiour trees and decision trees at controlling AI within a VHS shop. The aim of this project was to measure how well the two different techniques controlled both an AI shop worker and customers and to also highlight their differences.
YEAR
2022
Team Size
Solo Project
PLATFORM
Windows
Overview
This project is an AI showcase developed in Unity with C# for my artificial intelligence module during my third year of University. For this project, two AI techniques had to be compared and contrasted with me eventually settling on comparing decision trees and behaviour trees. The AI are situated within a VHS shop where an AI worker must restock, clean, serve customers and order deliveries. Both scenes are completely identical with only their AI technique changing between them. Throughout this project, I gained great experience with how commonly used game AI techniques such as behaviour trees operate and had to build one myself using a range of different selectors as well as having to build a decision tree. In order to maximise my understanding of each tree, I opted to code them from scratch rather than rely on any built in AI nodes.
My
Contributions
- Drew and programmed a decision tree from scratch for both customer and worker AI
​
- Drew and programmed a behaviour tree complete with priority ,sequence, fallback and random selectors as well as inverters from scratch for both customer and worker AI
​
- Programmed a shop stock system as well as a customer shopping list system in order to facilitate a functional shop environment
​
- Compared and contrasted the performance of each tree at completing tasks and used the gathered data to evaluate their overall effectiveness
​
- Presented findings within a graph to visually represent the data gathered and identified then analysed trends within said data
​
- Formed a conclusion, using my own observations in conjunction with the data gathered, on which technique outperformed the other and in which areas
Decision Trees
Behaviour Trees