Project Talos

About

Our interest in artifical intelligence long predates modern technology, originating in literature as far back as ancient Greece. The earliest notions of artifically intelligent creatures came from works of Greek poets Hesiod and Homer. The earliest of said stories being that of the automaton Talos, the giant bronze man. It was said that Talos was created by the god Hephaestus to guard the island of Crete from invaders.

What is Project Talos?

Project Talos is a research project into the application of machine learning in game development. Machine learning within the game development industry has had a stigma attached to it for being unpredictable and overly difficult to implement. However, with recent advancements in machine learning and the release of Unity’s ML Agents package, machine learning could finally find a place in the game development scene. This project seeks to explore the process of developing a simple game using machine learning agents and document the process along the way.

NOTE: Originally this project started as an exploration into General Video Game AI, however due to time limitations a pivot was made. The weekly devlogs will reflect this shift in objectives.

About the Student

My name is Osamah Ansari and I am a senior majoring in Computer Science at the University of Michigan. I performed this research as part of the directed student research course EECS 499 during the FALL 2020 semester.

I can be contacted directly at the following:
University Email
Personal Email


General Disclaimer

Please feel to use anything you find on this site in future research or for private use. However, please don’t use haphazardly use the material found on this site for commercial products as I do not own the rights to all the assets and code I used during this research project.

Special Thanks

  1. Adam Kelly of Immersive Limit
    • This project would not be possible without the Unity ML Agents Tutorial by Adam Kelly. His tutorial helped me get a solid understanding of Unity ML Agents and how to program my own functionality for them. Please check out his tutorial for ML-Agents: Hummingbirds on the Unity Learn website.
  2. Austin Yarger (University of Michigan - EECS 494/499 Professor)
    • None of this would be possible without the weekly guidance and feedback of Prof. Yarger. Whenever I was struggling with anything, he was always there to cast a positive spin on the project and suggest possible future avenues of exploration.
  3. Adam Palmer (Friend and Fellow EECS 499 Classmate)
    • Adam was a huge help mentally during this entirity of this project. We would regularly talk about our progress and struggles with each other. It was nice to vent frustrations we were having with our projects to each other and get suggestions for solutions. Occasionally, a problem one of us ran into on our project was fixed by a solution suggested by the other. Adam’s project, Project Sirens, involved creating a voice commands API for games.
  4. Natasha Badami (Former EECS 499 Student)
    • During the early to middle weeks of this project, I referenced Natasha’s project, Project Bella, for inspiration and possible avenues of research. After pivoting from my earlier idea of General Video Game AI, Austin suggested I follow Natasha’s lead and instead look into creating a game with the focus being centered around Machine Learning Agents. Natasha’s project outlines her journey down a similar but different path to accomplish a similar goal.
  5. Other EECS 499 Classmates
    • The weekly feedback of my fellow EECS 499 classmates really helped in shaping this project into what it is today. I met with these other three students and Prof. Yarger on a weekly basis and we covered our progress for the week and discussed what where we planned to go for future weeks.