Othello Artificial Intelligence With Machine Learning

Slides:



Advertisements
Similar presentations
Application of Artificial intelligence to Chess Playing Capstone Design Project 2004 Jason Cook Bitboards  Bitboards are 64 bit unsigned integers, with.
Advertisements

Artificial Intelligence for Games Game playing Patrick Olivier
Artificial Intelligence in Game Design Heuristics and Other Ideas in Board Games.
Games CPSC 386 Artificial Intelligence Ellen Walker Hiram College.
Computers Playing Games Arif Zaman CS 101. Acknowledgements Portions of this are taken from MIT’s open-courseware
Minimax and Alpha-Beta Reduction Borrows from Spring 2006 CS 440 Lecture Slides.
Lecture 13 Last time: Games, minimax, alpha-beta Today: Finish off games, summary.
The Implementation of Machine Learning in the Game of Checkers Billy Melicher Computer Systems lab
GENETIC PROGRAMMING FOR CHECKERS PLAY Dustin Shutes Abstract: This project uses genetic programming to develop a program that plays the game of checkers.
Learning C++ the Fun Way Taesoo Kim Dr. Ramon Lawrence Computer Science.
MAE 552 – Heuristic Optimization Lecture 28 April 5, 2002 Topic:Chess Programs Utilizing Tree Searches.
Applying Genetic Programming to Stratego Ryan Albarelli.
Adversarial Search: Game Playing Reading: Chess paper.
Ocober 10, 2012Introduction to Artificial Intelligence Lecture 9: Machine Evolution 1 The Alpha-Beta Procedure Example: max.
Hex Combinatorial Search in Game Strategy by Brandon Risberg May 2006Menlo School.
Game Playing Chapter 5. Game playing §Search applied to a problem against an adversary l some actions are not under the control of the problem-solver.
Game Playing. Introduction Why is game playing so interesting from an AI point of view? –Game Playing is harder then common searching The search space.
Game Playing.
Othello Artificial Intelligence With Machine Learning
Artificial Intelligence: Planning Lecture 6 Problems with state space search Planning Operators A Simple Planning Algorithm (Game Playing)
Introduction to Artificial Intelligence CS 438 Spring 2008 Today –AIMA, Ch. 6 –Adversarial Search Thursday –AIMA, Ch. 6 –More Adversarial Search The “Luke.
Othello Playing AI Matt Smith. Othello 8x8 Board game 8x8 Board game Try to outflank opponents pieces Try to outflank opponents pieces Winner ends up.
Application of Artificial Intelligence to Chess Playing Jason Cook Capstone Project.
Machine Learning for an Artificial Intelligence Playing Tic-Tac-Toe Computer Systems Lab 2005 By Rachel Miller.
CSC Intro. to Computing Lecture 22: Artificial Intelligence.
Senior Project Poster Day 2007, CIS Dept. University of Pennsylvania Reversi Meng Tran Faculty Advisor: Dr. Barry Silverman Strategies: l Corners t Corners.
Game Playing. Introduction One of the earliest areas in artificial intelligence is game playing. Two-person zero-sum game. Games for which the state space.
Jack Chen TJHSST Computer Systems Lab Abstract The purpose of this project is to explore Artificial Intelligence techniques in the board game.
GAME PLAYING 1. There were two reasons that games appeared to be a good domain in which to explore machine intelligence: 1.They provide a structured task.
Adversarial Search Chapter Games vs. search problems "Unpredictable" opponent  specifying a move for every possible opponent reply Time limits.
Othello Processor Bret Taylor, Olatunji Ruwase, and Jim Norris CS343, Spring 2003.
Othello Artificial Intelligence With Machine Learning Computer Systems TJHSST Nick Sidawy.
Checkers A Matlab Project by Spenser Davison, Edward Dyakiw, Justin Pezzi, and Scott Wu.
Optimizing Parallel Programming with MPI Michael Chen TJHSST Computer Systems Lab Abstract: With more and more computationally- intense problems.
Adversarial Search. Regular Tic Tac Toe Play a few games. –What is the expected outcome –What kinds of moves “guarantee” that?
February 25, 2016Introduction to Artificial Intelligence Lecture 10: Two-Player Games II 1 The Alpha-Beta Procedure Can we estimate the efficiency benefit.
Explorations in Artificial Intelligence Prof. Carla P. Gomes Module 5 Adversarial Search (Thanks Meinolf Sellman!)
Artificial Intelligence in Game Design Board Games and the MinMax Algorithm.
Understanding AI of 2 Player Games. Motivation Not much experience in AI (first AI project) and no specific interests/passion that I wanted to explore.
Artificial Intelligence AIMA §5: Adversarial Search
Game Playing Why do AI researchers study game playing?
Adversarial Environments/ Game Playing
By: Casey Savage, Hayley Stueber, and James Olson
Othello Artificial Intelligence With Machine Learning
Iterative Deepening A*
PENGANTAR INTELIJENSIA BUATAN (64A614)
By James Mannion Computer Systems Lab Period 3
Adversarial Search and Game Playing (Where making good decisions requires respecting your opponent) R&N: Chap. 6.
Adversarial Search.
Game Playing.
The Implementation of Machine Learning in the Game of Checkers
CSC 110 – Fluency in Information Technology Chess
Othello Artificial Intelligence With Machine Learning
The Implementation of Machine Learning in the Game of Checkers
Adversarial Search Chapter 5.
Adversarial Search.
Battletech Goal Why To recreate the table top game environment in Java
NIM - a two person game n objects are in one pile
The Alpha-Beta Procedure
Introduction to Artificial Intelligence Lecture 9: Two-Player Games I
Pruned Search Strategies
Mini-Max search Alpha-Beta pruning General concerns on games
Structure diagrams for lab 13
Fluency with Information Technology Third Edition
Adversarial Search CMPT 420 / CMPG 720.
Adversarial Search CS 171/271 (Chapter 6)
CS51A David Kauchak Spring 2019
Excursions into Parallel Programming
Adversarial Search Chapter 6 Section 1 – 4.
Unit II Game Playing.
Presentation transcript:

Othello Artificial Intelligence With Machine Learning Computer Systems TJHSST Nick Sidawy

Introduction Machine learning is an extensive filed of study. Most of what is done with machine learning is tied to artificial intelligence which is why Othello seemed to be a good vessel for my research. It is a simple enough game for me to work on, yet difficult enough to keep me working throughout the quarters.

Purpose The purpose of this research project is to implement machine learning with artificial intelligence. The reason for this is two-fold: First, to create a very effective Othello AI. Second, and more academically oriented, is to gain a deeper understanding of machine learning.

Goal Breakdown The first goal i would like to achieve with this project is to program an effective forward-checker for the AI. The second goal is to use a genetic algorithm to formulate the best evaluation function for the AI to use. My last goal is to have the AI learn from each move it makes so that the more it plays, the faster and better it will perform.

Development The project will be coded in java. I have separated it into 5 different programs. The driver, the panel (which controls the game), the AI, the game functions (such as capturing pieces) and a class that I have named MyButton.

Construction There are two algorithms that this quarter was focused on: The forward-checking algorithm (Minimax) The evaluation function A MyButton class was also created

MyButton Class The MyButton class extends Jbutton and has the following variations: It has a paint component It can store values which indicate if the spot on the board is occupied by a piece and will draw images accordingly

Forward-Checker The goal of a forward Checker is to traverse a tree of possible moves and picking the move that will lead to the best scenario down the line. The ply determines how many levels of the tree it goes through. The trick is that at each level of the three it picks the move that is best for the player it is simulating for. Therefore, the computer assumes the opponent will play perfectly. It is nicknamed the Minimax algorithm for this reason. (See Diagram A)

Evaluation Function This function returns a number rating how good a particular board is for a player. It does this based on the positions of the pieces and amount of available moves for each player. For example, pieces in the corners are very valuable and will add many more points to the rating than a piece near the center.

Conclusions Thus far into the project I have learned the importance of the evaluation function. A strong evaluation function has much more weight than a forward-checker with a high-ply. When the project is complete I plan on having a very skilled Othello AI that uses machine learning extensively and will be challenging for the best players.