This project is the working demo of my graduation thesis. My thesis consisted of researching and developing a small artificial intelligence framework within Unity. The goal was to create agents that can change behavior based on their own needs as well as a potentially dynamically changing environment. The title of my thesis was: Supporting agent actions and decision making in dynamic environments. Think, Organize and Act in a Rule Changing Environment.

The short version is: my framework uses an artificial intelligence approach called Goal Oriented Action Planning. This system separates the states and conditions from a standard finite state machine into individual components called actions that requires specific preconditions to be used. This allows AI-controlled characters to plan their own path of action based on the actions they posses and the goals they want to reach. In my proof of concept I created 2 AI characters that both posses the same goals and actions, but their priorities are different. This allowed me to create 2 unique “personalities” if you will.

In the first example I had a game where they had to collect cubes and bring them back to their spawn location. Cubes further away are worth more points. In the second example I gave both characters an extra action: dash.

In the third example I changed to rules from collecting cubes to throwing them inside an area.

The proof of concept demo can be found here.

  • Language used Unity (C#)
  • Made for graduation thesis