Using Genetic Algorithms and Neural Networks to Build Game AIs

« Return to Course Catalog

This course is under review for 2021. Course registration will open to accepted students once courses are confirmed.

Course Description

Machine learning. Artificial intelligence. These tech buzz words have been countlessly tossed around to describe new technologies or the next “big thing.” However, what exactly is artificial intelligence or machine learning?

These concepts allow computers to take in information and act, similarly to how a human would make a decision. A chess game AI, for example, analyzes a current game board and concludes moving the queen to D5 is the highest value move. Or an ad algorithm makes a user-specific product recommendation based on prior search history.

We will be exploring such concepts by building our own AI. All enrolled students will have access to a suite of games. Many of the games are modeled from popular mobile apps, such as Flappy Bird or Soccer on Facebook’s Messenger. A neural network, a machine learning technique inspired by the human brain, will be used to train our AIs. Once our AIs are trained, it will be able to act based on the game state provided. A genetic algorithm, an optimization technique derived from evolutionary principles in biology, will be then used to optimize our AIs.
The games provided are all coded in Python and can be manipulated by the student. Students will code a neural network, which will be the basic framework for the AI. Students will then code a genetic algorithm to optimize their AIs. All code will be written in Python.

After the course, student’s understanding on neural networks and genetic algorithms will no longer be an abstract idea constructed by media, prior experience, or intuition. Rather, they will understand the technical constructs behind these techniques so that they can apply them to other problems beyond games, whether that be in Python or another programming language.

1. Understand how neural networks and genetic algorithms work
2. Have basic coding skillset in Python
3. Understand how to implement neural networks and genetic algorithms to create an AI
4. Be able to expand AI to solve various problems within defined environment

Prerequisites: Students are not expected to have any programming background or experience in artificial intelligence. While prior experience is helpful, everything necessary will be taught. Students especially without any coding background should be prepared for intensive learning; however, the course goals are achievable for all students, despite any background. The curriculum is specifically designed for this, and the TAs and I will be working closely with all of you to ensure this to happen.

Course Information

  • Course Code: CECS0920
  • Length: 2 weeks

Program Information

[email protected]

Brown’s Pre-College Program in the liberal arts and sciences, offering over 200 non-credit courses, one- to four-weeks long, taught on Brown’s campus. For students completing grades 9-12 by June 2021.

Visit Program Page Information Sessions Learn How to Apply
Back to Top