Presentation is loading. Please wait.

Presentation is loading. Please wait.

Othello Artificial Intelligence With Machine Learning

Similar presentations


Presentation on theme: "Othello Artificial Intelligence With Machine Learning"— Presentation transcript:

1 Othello Artificial Intelligence With Machine Learning
Computer Systems TJHSST Nick Sidawy

2 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.

3 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.

4 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.

5 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.

6 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

7 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

8 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)

9

10 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.

11 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.


Download ppt "Othello Artificial Intelligence With Machine Learning"

Similar presentations


Ads by Google