Artificial Intelligence

This project is about the developed of some AI agents and get a glimpse about neuronal networks. Such agent behaviors include searching, game playing, decision making, and learning.

Software Used  

Languages Used  

Visual Studio

C++

Feel Free to Download the Source Code.
Source Code

Project Content

Fundamentals of AI
Path Planner
Flocking
Reversi
Robocode
Ms Pacman

Programming Explanation

Fundamentals of AI

  • The Fundamentals of AI Lab Project was a review of basic data structures and an introduction to behavioral modelling using the Behavior Tree concept.

Path Planner

  • This lab has multiple files zipped. each of them implements a search algorithm: A*, BFS, Greedy, Uniform cost search. I still remember this lab because it set the foundations of my professional career. Also the visualization and time calculation of each algorithm made it fun to research.

Flocking

  • Steering behaviors are algorithms that provide autonomous objects the ability to navigate their surroundings in a life-like or improvised manner. This lab covered the three main algorithms used in flocking, a type of steering behavior. These three algorithms are alignment, cohesion and separation. I suggest playing with the application UI to understand how does each algorithm interfere with the agents movement.A good read is this

Reversi

  • Reversi is a very popular strategy board game where the goal is flipping the opponent's pieces. During this project we implemented MiniMax algorithm to create the "perfect"  agent. The Minimax Algorithm is a simple, predictive game playing technique where the agent assumes that the opponent makes “perfect” moves. The Minimax Algorithm attempts to maximize the probability of a win but assumes that the opponent will always make the best move and in so doing minimize the probability. This minimizing / maximizing behavior is where Minimax gets its name. Minimax is a type of Depth-First search where its ply represents a move either by the agent or the opponent.
image

Ms Pacman

  • This is a version of Ms. Pac-Man that closely represents the original game. The representation has a few minor changes to make writing the AI for both Ms. Pac-Man and the Ghosts fair. For additional information you can reference the official website from which this AI project originates at www.pacmanvs-ghosts.net. The fun fact about this project is that we made a small competition among all students and the agent with the highest score got some swag (and some extra credit). The program displays one run of the game, however, it gives the total score on the Eclipse output window which is gathered after 100 games.
image

Robocode

  • The Robocode Tournament at Full Sail is a way for students to develop AI strategy for a real agent in acompetitive environment. The tournament will be scored according to survival, inflicted damage, and elimination. Students should take this opportunity to apply some concepts learned in AI in the process of shaping and designing their robot for the tournament battle
  • For this project, I implement a single software robot from the ground up that functions in theRobocode environment. Robocode robots are tanks with radar and a single turret. Your goal will be to match or exceed the performance (based on score as computed by the environment) of the robotprovided to you with the lab project materials, affectionately known as FailBot.