Final Project: Reversi

Size: px
Start display at page:

Download "Final Project: Reversi"

Transcription

1 Final Project: Reversi Reversi is a classic 2-player game played on an 8 by 8 grid of squares. Players take turns placing pieces of their color on the board so that they sandwich and change the color of their opponent s pieces. The games is over when neither player can make a move, and whoever has more pieces at the end of the game is the winner. If you ve never played Reversi, it s easy to find programs on the web to play against. For instance, if you sign up (for free!) at Yahoo! Games 1, you can play Reversi against people around the world. Plus, there s information about the rules and good playing strategies. 2 Reversi Rules At the end of this project is a sample Reversi game. Board 1 shows the initial configuration. Black always moves first. On your turn, you must sandwich at least one opposing piece. Sandwiching is simple, but a bit tricky to explain in words. Here s an example: X A black piece placed at position X will sandwich the three white pieces, and change their color to black, leaving a line of 5 black pieces. In the next example, no sandwiching is possible: X Placing a black piece at position X will not sandwich the white pieces, because the line of white pieces ends with a blank square on the right, not a black piece. Boards1 to 4 below show the start of a sample game. A piece can sandwich any number of opposing pieces, along any column, row, or diagonal. It s not unusual for one move to flip pieces along multiple lines. If on your turn you can t sandwich at least one piece, your turn is over (i.e. you don t put a piece on the board) and your opponent gets to move. If your opponent can t make a move, then the game is over. You must make a move if possible --- you cannot forfeit your turn. Once a piece is placed, it never moves to another square. However, its color might flip many times during the game. The game ends when neither player can make a move. It s possible for the game to end before all 64 squares have been filled. The player with the most pieces on the board at the end of the game is the winner. Ties are possible Be careful: it s easy to end up wasting time playing games here!

2 Required Features Your program should have the following features: The user should do no typing. All user input must come from the mouse. The board must be drawn graphically, allowing the user to place a piece by clicking on a square. You can draw the pieces as X s and O s, for example. Use the Button class from assignment 4 to help you draw the board. When it s the user s turn to make a move, you can (but need not) draw a small tickmark (or other symbol) in all squares where they are allowed to move. If the user clicks on a square with a tick-mark, then a piece is placed there. If they click on any other square, then nothing should happen, because that click corresponds to an impossible or illegal move. The user can choose to play either the black or white pieces. Remember, black always moves first. The user always plays against the computer. Make the computer opponent play as intelligently as possible. One simple strategy is to assign each square of the board a weight, the higher the weight the more valuable the score. When it s the computer s turn to move, it first calculates all legal places it can move to, and then chooses the move with the highest weight. You will have to decide how to assign weights to the squares, of course. Hint: the corner squares are usually the most valuable, so give them a very high weight. The squares surrounding can be given low weights, because typically if you place a piece in a square next to a corner, your opponent can capture the corner on their next move. This strategy does not always work perfectly, but it is probably better than randomly choosing a legal move. 3 During the game, the number of white and black pieces on the board should be displayed on the screen at all times. The user should be able to save the position of the board to disk at any time during a game, and then, at a later time, re-load that position to continue playing. Do not ask the user to type the name of file --- all input is from the mouse. The user should just be able to click an on-screen button and have the game saved or re-loaded automatically. Only one game need be saved. Non-Required Features When developing software, there is always a great temptation to add neat new features. You can probably think of many extra features to add to your Reversi game, e.g. move undo hints (i.e. let the computer suggest a good move) human vs. human and computer vs. computer options different computer skill levels 3 It s possible, although difficult, to get the computer to play well enough to beat any human player. If you are curious about how this might possible, check the web or library for information about minimax search and alpha-beta pruning.

3 saving multiple games on-line tutorial or help explaining the rules of the game to the user But keep this in mind: you won t get marks for any extra features, and you will definitely lose marks if you don t have all the required features. Therefore: don t add any other extra feature until you ve implemented all of the above required features! Implementation Constraints Your game must be implemented in C++ using the textbook s graphics library. 4 You must use at least three classes: A Board class, that contains all the code for the Reversi board. A Human_player class, that contains all the code for a human player. A Computer_player class, that contains all the code the computer player. The exact details of the implementation of these classes are up to you, but please use these names to make it easier for the markers to read your code. You can write other classes if you want. As always, we expect you to use good object-oriented design, and to follow the style rules in the textbook. The Board, Human_player, and Computer_player classes should each be separately compiled modules. Each module must have its own header file and implementation file. For instance, the Board class definition should be stored in the file Board.h, and the implementation should be stored in Board.cpp. The file names should be the same as the class name. Board must be represented using a vector of vector s. For instance, you can represent a matrix of ints like this: vector<vector<int> > board_; // private vble in Board class for(int i = 0; i < 8; ++i) { board_.push_back(vector<int>(8)); // add a row of 8 squares } //for The square-bracket notation can now be used to access individual squares on the board: for(int i = 0; i < 8; ++i) { // initialize all board locations for(int j = 0; j < 8; ++j) { // to 0 board_[i][j] = 0; } // for } //for 4 Do not modify the code in that library in any way. If you do, we will count that as not using the textbook s library.

4 While you must use a vector of vectors, it doesn t necessarily need to be of type vector<vector<int> >. Depending upon your design, you might represent a square with a special Square class, say; then board_ would be of type vector<vector<square> >. It s up to you to decide what s best, although in general you should always do the simplest thing that makes sense. Groups This project should be done in groups of two or three. A two-member team is ideal. Groups cannot have more than three members: this limit is strict, and no exceptions will be made. Part of doing a group project is getting the experience of working with another programmer, so while you can do the project on your own, single-member teams will get a 5% penalty. Also, all projects will be marked with the same marking scheme, and all group members will receive the same mark for the project. You can advertise for a partner on Caucus. What to Hand In Hand in all the source code for your project, and all the usual pages required by the handin guide. Each team should hand in one project, even if you have team members in different sections. Put the name and address of each team member on your cover page. Hands in the following 9 screen shots: 1 showing the initial configuration of your game 2 showing two moves made right after this initial configuration 2 showing the middle of a game (there should be 30 or 40 pieces on the board for these two shots) 2 showing the very last, and the second to last moves of the game 1 showing what happens when you save a game 1 showing what happens when you re-load a game Also, hand in a screen shot of the window showing all the files in your project file (or hand in a print out of your makefile).

5 Sample Game Board 1 Board 2 This is the starting configuration. Black always moves first, and the Xs show black s legal moves. Black must always sandwich one or more white pieces. In general, if a player can t sandwich at least one, they lose their turn and the other player makes a move. The game is over when neither player can make move. Board 3 Black decides to place a piece on the upper-most X. That sandwiches one white piece (the shaded one), which then gets changed to black. Reversi pieces are white on one side, and black on the other, so we say color has flipped. Board 4 After the piece is flipped, the board looks like this. Black has four pieces, and white has one. The Xs show the legal places white can place a piece. White has moved to the lower left X, and after flipping the sandwiched white piece. The Xs show black s legal moves. The game continues in the same fashion.

a b c d e f g h 1 a b c d e f g h C A B B A C C X X C C X X C C A B B A C Diagram 1-2 Square names

a b c d e f g h 1 a b c d e f g h C A B B A C C X X C C X X C C A B B A C Diagram 1-2 Square names Chapter Rules and notation Diagram - shows the standard notation for Othello. The columns are labeled a through h from left to right, and the rows are labeled through from top to bottom. In this book,

More information

CS 229 Final Project: Using Reinforcement Learning to Play Othello

CS 229 Final Project: Using Reinforcement Learning to Play Othello CS 229 Final Project: Using Reinforcement Learning to Play Othello Kevin Fry Frank Zheng Xianming Li ID: kfry ID: fzheng ID: xmli 16 December 2016 Abstract We built an AI that learned to play Othello.

More information

Pay attention to how flipping of pieces is determined with each move.

Pay attention to how flipping of pieces is determined with each move. CSCE 625 Programing Assignment #5 due: Friday, Mar 13 (by start of class) Minimax Search for Othello The goal of this assignment is to implement a program for playing Othello using Minimax search. Othello,

More information

Programming an Othello AI Michael An (man4), Evan Liang (liange)

Programming an Othello AI Michael An (man4), Evan Liang (liange) Programming an Othello AI Michael An (man4), Evan Liang (liange) 1 Introduction Othello is a two player board game played on an 8 8 grid. Players take turns placing stones with their assigned color (black

More information

CS188 Spring 2010 Section 3: Game Trees

CS188 Spring 2010 Section 3: Game Trees CS188 Spring 2010 Section 3: Game Trees 1 Warm-Up: Column-Row You have a 3x3 matrix of values like the one below. In a somewhat boring game, player A first selects a row, and then player B selects a column.

More information

For slightly more detailed instructions on how to play, visit:

For slightly more detailed instructions on how to play, visit: Introduction to Artificial Intelligence CS 151 Programming Assignment 2 Mancala!! The purpose of this assignment is to program some of the search algorithms and game playing strategies that we have learned

More information

CS188 Spring 2010 Section 3: Game Trees

CS188 Spring 2010 Section 3: Game Trees CS188 Spring 2010 Section 3: Game Trees 1 Warm-Up: Column-Row You have a 3x3 matrix of values like the one below. In a somewhat boring game, player A first selects a row, and then player B selects a column.

More information

The game of Reversi was invented around 1880 by two. Englishmen, Lewis Waterman and John W. Mollett. It later became

The game of Reversi was invented around 1880 by two. Englishmen, Lewis Waterman and John W. Mollett. It later became Reversi Meng Tran tranm@seas.upenn.edu Faculty Advisor: Dr. Barry Silverman Abstract: The game of Reversi was invented around 1880 by two Englishmen, Lewis Waterman and John W. Mollett. It later became

More information

mywbut.com Two agent games : alpha beta pruning

mywbut.com Two agent games : alpha beta pruning Two agent games : alpha beta pruning 1 3.5 Alpha-Beta Pruning ALPHA-BETA pruning is a method that reduces the number of nodes explored in Minimax strategy. It reduces the time required for the search and

More information

ARTIFICIAL INTELLIGENCE (CS 370D)

ARTIFICIAL INTELLIGENCE (CS 370D) Princess Nora University Faculty of Computer & Information Systems ARTIFICIAL INTELLIGENCE (CS 370D) (CHAPTER-5) ADVERSARIAL SEARCH ADVERSARIAL SEARCH Optimal decisions Min algorithm α-β pruning Imperfect,

More information

1 Modified Othello. Assignment 2. Total marks: 100. Out: February 10 Due: March 5 at 14:30

1 Modified Othello. Assignment 2. Total marks: 100. Out: February 10 Due: March 5 at 14:30 CSE 3402 3.0 Intro. to Concepts of AI Winter 2012 Dept. of Computer Science & Engineering York University Assignment 2 Total marks: 100. Out: February 10 Due: March 5 at 14:30 Note 1: To hand in your report

More information

CS 4700: Artificial Intelligence

CS 4700: Artificial Intelligence CS 4700: Foundations of Artificial Intelligence Fall 2017 Instructor: Prof. Haym Hirsh Lecture 10 Today Adversarial search (R&N Ch 5) Tuesday, March 7 Knowledge Representation and Reasoning (R&N Ch 7)

More information

CS Programming Project 1

CS Programming Project 1 CS 340 - Programming Project 1 Card Game: Kings in the Corner Due: 11:59 pm on Thursday 1/31/2013 For this assignment, you are to implement the card game of Kings Corner. We will use the website as http://www.pagat.com/domino/kingscorners.html

More information

Assignment 2 (Part 1 of 2), University of Toronto, CSC384 - Intro to AI, Winter

Assignment 2 (Part 1 of 2), University of Toronto, CSC384 - Intro to AI, Winter Assignment 2 (Part 1 of 2), University of Toronto, CSC384 - Intro to AI, Winter 2011 1 Computer Science 384 February 20, 2011 St. George Campus University of Toronto Homework Assignment #2 (Part 1 of 2)

More information

Games of Skill Lesson 1 of 9, work in pairs

Games of Skill Lesson 1 of 9, work in pairs Lesson 1 of 9, work in pairs 21 (basic version) The goal of the game is to get the other player to say the number 21. The person who says 21 loses. The first person starts by saying 1. At each turn, the

More information

Assignment 2, University of Toronto, CSC384 - Intro to AI, Winter

Assignment 2, University of Toronto, CSC384 - Intro to AI, Winter Assignment 2, University of Toronto, CSC384 - Intro to AI, Winter 2014 1 Computer Science 384 March 5, 2014 St. George Campus University of Toronto Homework Assignment #2 Game Tree Search Due: Mon March

More information

One Zero One. The binary card game. Players: 2 Ages: 8+ Play Time: 10 minutes

One Zero One. The binary card game. Players: 2 Ages: 8+ Play Time: 10 minutes One Zero One The binary card game Players: 2 Ages: 8+ Play Time: 10 minutes In the world of computer programming, there can only be one winner - either zeros or ones! One Zero One is a small, tactical

More information

Intro to Java Programming Project

Intro to Java Programming Project Intro to Java Programming Project In this project, your task is to create an agent (a game player) that can play Connect 4. Connect 4 is a popular board game, similar to an extended version of Tic-Tac-Toe.

More information

Assignment 6 Play A Game: Minesweeper or Battleship!!! Due: Sunday, December 3rd, :59pm

Assignment 6 Play A Game: Minesweeper or Battleship!!! Due: Sunday, December 3rd, :59pm Assignment 6 Play A Game: Minesweeper or Battleship!!! Due: Sunday, December 3rd, 2017 11:59pm This will be our last assignment in the class, boohoo Grading: For this assignment, you will be graded traditionally,

More information

CSC 380 Final Presentation. Connect 4 David Alligood, Scott Swiger, Jo Van Voorhis

CSC 380 Final Presentation. Connect 4 David Alligood, Scott Swiger, Jo Van Voorhis CSC 380 Final Presentation Connect 4 David Alligood, Scott Swiger, Jo Van Voorhis Intro Connect 4 is a zero-sum game, which means one party wins everything or both parties win nothing; there is no mutual

More information

Game Playing in Prolog

Game Playing in Prolog 1 Introduction CIS335: Logic Programming, Assignment 5 (Assessed) Game Playing in Prolog Geraint A. Wiggins November 11, 2004 This assignment is the last formally assessed course work exercise for students

More information

Introduction to Artificial Intelligence CS 151 Programming Assignment 2 Mancala!! Due (in dropbox) Tuesday, September 23, 9:34am

Introduction to Artificial Intelligence CS 151 Programming Assignment 2 Mancala!! Due (in dropbox) Tuesday, September 23, 9:34am Introduction to Artificial Intelligence CS 151 Programming Assignment 2 Mancala!! Due (in dropbox) Tuesday, September 23, 9:34am The purpose of this assignment is to program some of the search algorithms

More information

CS151 - Assignment 2 Mancala Due: Tuesday March 5 at the beginning of class

CS151 - Assignment 2 Mancala Due: Tuesday March 5 at the beginning of class CS151 - Assignment 2 Mancala Due: Tuesday March 5 at the beginning of class http://www.clubpenguinsaraapril.com/2009/07/mancala-game-in-club-penguin.html The purpose of this assignment is to program some

More information

Board Game AIs. With a Focus on Othello. Julian Panetta March 3, 2010

Board Game AIs. With a Focus on Othello. Julian Panetta March 3, 2010 Board Game AIs With a Focus on Othello Julian Panetta March 3, 2010 1 Practical Issues Bug fix for TimeoutException at player init Not an issue for everyone Download updated project files from CS2 course

More information

CS61B, Fall 2014 Project #2: Jumping Cubes(version 3) P. N. Hilfinger

CS61B, Fall 2014 Project #2: Jumping Cubes(version 3) P. N. Hilfinger CSB, Fall 0 Project #: Jumping Cubes(version ) P. N. Hilfinger Due: Tuesday, 8 November 0 Background The KJumpingCube game is a simple two-person board game. It is a pure strategy game, involving no element

More information

Homework Assignment #2

Homework Assignment #2 CS 540-2: Introduction to Artificial Intelligence Homework Assignment #2 Assigned: Thursday, February 15 Due: Sunday, February 25 Hand-in Instructions This homework assignment includes two written problems

More information

Welcome to the Sudoku and Kakuro Help File.

Welcome to the Sudoku and Kakuro Help File. HELP FILE Welcome to the Sudoku and Kakuro Help File. This help file contains information on how to play each of these challenging games, as well as simple strategies that will have you solving the harder

More information

UNIVERSITY OF CALIFORNIA Department of Electrical Engineering and Computer Sciences Computer Science Division. P. N. Hilfinger. Project #3: Checkers

UNIVERSITY OF CALIFORNIA Department of Electrical Engineering and Computer Sciences Computer Science Division. P. N. Hilfinger. Project #3: Checkers UNIVERSITY OF CALIFORNIA Department of Electrical Engineering and Computer Sciences Computer Science Division CS61B Fall 2004 P. N. Hilfinger Project #3: Checkers Due: 8 December 2004 1 Introduction Checkers

More information

1. Use Pattern Blocks. Make the next 2 figures in each increasing pattern. a) 2. Write the pattern rule for each pattern in question 1.

1. Use Pattern Blocks. Make the next 2 figures in each increasing pattern. a) 2. Write the pattern rule for each pattern in question 1. s Master 1.22 Name Date Extra Practice 1 Lesson 1: Exploring Increasing Patterns 1. Use Pattern Blocks. Make the next 2 figures in each increasing pattern. a) 2. Write the pattern rule for each pattern

More information

Eleventh Annual Ohio Wesleyan University Programming Contest April 1, 2017 Rules: 1. There are six questions to be completed in four hours. 2.

Eleventh Annual Ohio Wesleyan University Programming Contest April 1, 2017 Rules: 1. There are six questions to be completed in four hours. 2. Eleventh Annual Ohio Wesleyan University Programming Contest April 1, 217 Rules: 1. There are six questions to be completed in four hours. 2. All questions require you to read the test data from standard

More information

Materials: Game board, dice (preferable one 10 sided die), 2 sets of colored game board markers.

Materials: Game board, dice (preferable one 10 sided die), 2 sets of colored game board markers. Even and Odd Lines is a great way to reinforce the concept of even and odd numbers in a fun and engaging way for students of all ages. Each turn is comprised of multiple steps that are simple yet allow

More information

Taffy Tangle. cpsc 231 assignment #5. Due Dates

Taffy Tangle. cpsc 231 assignment #5. Due Dates cpsc 231 assignment #5 Taffy Tangle If you ve ever played casual games on your mobile device, or even on the internet through your browser, chances are that you ve spent some time with a match three game.

More information

AI Approaches to Ultimate Tic-Tac-Toe

AI Approaches to Ultimate Tic-Tac-Toe AI Approaches to Ultimate Tic-Tac-Toe Eytan Lifshitz CS Department Hebrew University of Jerusalem, Israel David Tsurel CS Department Hebrew University of Jerusalem, Israel I. INTRODUCTION This report is

More information

CMPUT 657: Heuristic Search

CMPUT 657: Heuristic Search CMPUT 657: Heuristic Search Assignment 1: Two-player Search Summary You are to write a program to play the game of Lose Checkers. There are two goals for this assignment. First, you want to build the smallest

More information

Documentation and Discussion

Documentation and Discussion 1 of 9 11/7/2007 1:21 AM ASSIGNMENT 2 SUBJECT CODE: CS 6300 SUBJECT: ARTIFICIAL INTELLIGENCE LEENA KORA EMAIL:leenak@cs.utah.edu Unid: u0527667 TEEKO GAME IMPLEMENTATION Documentation and Discussion 1.

More information

Adversary Search. Ref: Chapter 5

Adversary Search. Ref: Chapter 5 Adversary Search Ref: Chapter 5 1 Games & A.I. Easy to measure success Easy to represent states Small number of operators Comparison against humans is possible. Many games can be modeled very easily, although

More information

Artificial Intelligence Lecture 3

Artificial Intelligence Lecture 3 Artificial Intelligence Lecture 3 The problem Depth first Not optimal Uses O(n) space Optimal Uses O(B n ) space Can we combine the advantages of both approaches? 2 Iterative deepening (IDA) Let M be a

More information

CHM 152 Lab 1: Plotting with Excel updated: May 2011

CHM 152 Lab 1: Plotting with Excel updated: May 2011 CHM 152 Lab 1: Plotting with Excel updated: May 2011 Introduction In this course, many of our labs will involve plotting data. While many students are nerds already quite proficient at using Excel to plot

More information

Artificial Intelligence. Minimax and alpha-beta pruning

Artificial Intelligence. Minimax and alpha-beta pruning Artificial Intelligence Minimax and alpha-beta pruning In which we examine the problems that arise when we try to plan ahead to get the best result in a world that includes a hostile agent (other agent

More information

OCTAGON 5 IN 1 GAME SET

OCTAGON 5 IN 1 GAME SET OCTAGON 5 IN 1 GAME SET CHESS, CHECKERS, BACKGAMMON, DOMINOES AND POKER DICE Replacement Parts Order direct at or call our Customer Service department at (800) 225-7593 8 am to 4:30 pm Central Standard

More information

Welcome to the Brain Games Chess Help File.

Welcome to the Brain Games Chess Help File. HELP FILE Welcome to the Brain Games Chess Help File. Chess a competitive strategy game dating back to the 15 th century helps to developer strategic thinking skills, memorization, and visualization of

More information

2 person perfect information

2 person perfect information Why Study Games? Games offer: Intellectual Engagement Abstraction Representability Performance Measure Not all games are suitable for AI research. We will restrict ourselves to 2 person perfect information

More information

PLAYERS AGES MINS.

PLAYERS AGES MINS. 2-4 8+ 20-30 PLAYERS AGES MINS. COMPONENTS: (123 cards in total) 50 Victory Cards--Every combination of 5 colors and 5 shapes, repeated twice (Rainbow Backs) 20 Border Cards (Silver/Grey Backs) 2 48 Hand

More information

G51PGP: Software Paradigms. Object Oriented Coursework 4

G51PGP: Software Paradigms. Object Oriented Coursework 4 G51PGP: Software Paradigms Object Oriented Coursework 4 You must complete this coursework on your own, rather than working with anybody else. To complete the coursework you must create a working two-player

More information

Jarl 3 Freeman 3 Spearman Chieftain Vala Berserker

Jarl 3 Freeman 3 Spearman Chieftain Vala Berserker In the long winters between the glorious summers of raids and exploration, warriors scheme and keep their intellects sharp through games of wits and chance. Ragnar, Rollo, Floki and even the Earl challenge

More information

game tree complete all possible moves

game tree complete all possible moves Game Trees Game Tree A game tree is a tree the nodes of which are positions in a game and edges are moves. The complete game tree for a game is the game tree starting at the initial position and containing

More information

Instruction manual Chess Tutor

Instruction manual Chess Tutor Instruction manual Chess Tutor Cor van Wijgerden Eiko Bleicher Stefan Meyer-Kahlen Jürgen Daniel English translation: Ian Adams Contents: Installing the program... 3 Starting the program... 3 The overview...

More information

G54GAM Lab Session 1

G54GAM Lab Session 1 G54GAM Lab Session 1 The aim of this session is to introduce the basic functionality of Game Maker and to create a very simple platform game (think Mario / Donkey Kong etc). This document will walk you

More information

YourTurnMyTurn.com: Reversi rules. Roel Hobo Copyright 2018 YourTurnMyTurn.com

YourTurnMyTurn.com: Reversi rules. Roel Hobo Copyright 2018 YourTurnMyTurn.com YourTurnMyTurn.com: Reversi rules Roel Hobo Copyright 2018 YourTurnMyTurn.com Inhoud Reversi rules...1 Rules...1 Opening...3 Tabel 1: Openings...4 Midgame...5 Endgame...8 To conclude...9 i Reversi rules

More information

Section Marks Agents / 8. Search / 10. Games / 13. Logic / 15. Total / 46

Section Marks Agents / 8. Search / 10. Games / 13. Logic / 15. Total / 46 Name: CS 331 Midterm Spring 2017 You have 50 minutes to complete this midterm. You are only allowed to use your textbook, your notes, your assignments and solutions to those assignments during this midterm.

More information

Outcome 7 Review. *Recall that -1 (-5) means

Outcome 7 Review. *Recall that -1 (-5) means Outcome 7 Review Level 2 Determine the slope of a line that passes through A(3, -5) and B(-2, -1). Step 1: Remember that ordered pairs are in the form (x, y). Label the points so you can substitute into

More information

Melon s Puzzle Packs

Melon s Puzzle Packs Melon s Puzzle Packs Volume I: Slitherlink By MellowMelon; http://mellowmelon.wordpress.com January, TABLE OF CONTENTS Tutorial : Classic Slitherlinks ( 5) : 6 Variation : All Threes (6 8) : 9 Variation

More information

Patterns in Fractions

Patterns in Fractions Comparing Fractions using Creature Capture Patterns in Fractions Lesson time: 25-45 Minutes Lesson Overview Students will explore the nature of fractions through playing the game: Creature Capture. They

More information

CS 221 Othello Project Professor Koller 1. Perversi

CS 221 Othello Project Professor Koller 1. Perversi CS 221 Othello Project Professor Koller 1 Perversi 1 Abstract Philip Wang Louis Eisenberg Kabir Vadera pxwang@stanford.edu tarheel@stanford.edu kvadera@stanford.edu In this programming project we designed

More information

2 Textual Input Language. 1.1 Notation. Project #2 2

2 Textual Input Language. 1.1 Notation. Project #2 2 CS61B, Fall 2015 Project #2: Lines of Action P. N. Hilfinger Due: Tuesday, 17 November 2015 at 2400 1 Background and Rules Lines of Action is a board game invented by Claude Soucie. It is played on a checkerboard

More information

Games of Skill ANSWERS Lesson 1 of 9, work in pairs

Games of Skill ANSWERS Lesson 1 of 9, work in pairs Lesson 1 of 9, work in pairs 21 (basic version) The goal of the game is to get the other player to say the number 21. The person who says 21 loses. The first person starts by saying 1. At each turn, the

More information

2359 (i.e. 11:59:00 pm) on 4/16/18 via Blackboard

2359 (i.e. 11:59:00 pm) on 4/16/18 via Blackboard CS 109: Introduction to Computer Science Goodney Spring 2018 Homework Assignment 4 Assigned: 4/2/18 via Blackboard Due: 2359 (i.e. 11:59:00 pm) on 4/16/18 via Blackboard Notes: a. This is the fourth homework

More information

Othello/Reversi using Game Theory techniques Parth Parekh Urjit Singh Bhatia Kushal Sukthankar

Othello/Reversi using Game Theory techniques Parth Parekh Urjit Singh Bhatia Kushal Sukthankar Othello/Reversi using Game Theory techniques Parth Parekh Urjit Singh Bhatia Kushal Sukthankar Othello Rules Two Players (Black and White) 8x8 board Black plays first Every move should Flip over at least

More information

Learning to Play like an Othello Master CS 229 Project Report. Shir Aharon, Amanda Chang, Kent Koyanagi

Learning to Play like an Othello Master CS 229 Project Report. Shir Aharon, Amanda Chang, Kent Koyanagi Learning to Play like an Othello Master CS 229 Project Report December 13, 213 1 Abstract This project aims to train a machine to strategically play the game of Othello using machine learning. Prior to

More information

Applications of Artificial Intelligence and Machine Learning in Othello TJHSST Computer Systems Lab

Applications of Artificial Intelligence and Machine Learning in Othello TJHSST Computer Systems Lab Applications of Artificial Intelligence and Machine Learning in Othello TJHSST Computer Systems Lab 2009-2010 Jack Chen January 22, 2010 Abstract The purpose of this project is to explore Artificial Intelligence

More information

Factors and Products. Jamie is 12 years old. Her cousin, 6 Prime Time

Factors and Products. Jamie is 12 years old. Her cousin, 6 Prime Time Factors and Products Jamie is years old. Her cousin, Emilio, is years old. Her brother, Cam, is. Her neighbor, Esther, is. The following number sentences say that Jamie is times as old as Emilio, times

More information

ELE 408 Final Project

ELE 408 Final Project ELE 408 Final Project Chess AI game played over the Network Domenic Ferri Brandon Lian Project Goal: The project goal is to create a single player versus AI chess game using socket programming to establish

More information

Girls Programming Network. Scissors Paper Rock!

Girls Programming Network. Scissors Paper Rock! Girls Programming Network Scissors Paper Rock! This project was created by GPN Australia for GPN sites all around Australia! This workbook and related materials were created by tutors at: Sydney, Canberra

More information

Comprehensive Rules Document v1.1

Comprehensive Rules Document v1.1 Comprehensive Rules Document v1.1 Contents 1. Game Concepts 100. General 101. The Golden Rule 102. Players 103. Starting the Game 104. Ending The Game 105. Kairu 106. Cards 107. Characters 108. Abilities

More information

SolidWorks Tutorial 1. Axis

SolidWorks Tutorial 1. Axis SolidWorks Tutorial 1 Axis Axis This first exercise provides an introduction to SolidWorks software. First, we will design and draw a simple part: an axis with different diameters. You will learn how to

More information

Real-Time Connect 4 Game Using Artificial Intelligence

Real-Time Connect 4 Game Using Artificial Intelligence Journal of Computer Science 5 (4): 283-289, 2009 ISSN 1549-3636 2009 Science Publications Real-Time Connect 4 Game Using Artificial Intelligence 1 Ahmad M. Sarhan, 2 Adnan Shaout and 2 Michele Shock 1

More information

CS 540-2: Introduction to Artificial Intelligence Homework Assignment #2. Assigned: Monday, February 6 Due: Saturday, February 18

CS 540-2: Introduction to Artificial Intelligence Homework Assignment #2. Assigned: Monday, February 6 Due: Saturday, February 18 CS 540-2: Introduction to Artificial Intelligence Homework Assignment #2 Assigned: Monday, February 6 Due: Saturday, February 18 Hand-In Instructions This assignment includes written problems and programming

More information

Card Racer. By Brad Bachelor and Mike Nicholson

Card Racer. By Brad Bachelor and Mike Nicholson 2-4 Players 30-50 Minutes Ages 10+ Card Racer By Brad Bachelor and Mike Nicholson It s 2066, and you race the barren desert of Indianapolis. The crowd s attention span isn t what it used to be, however.

More information

Triple Challenge.txt

Triple Challenge.txt Triple Challenge 3 Complete Games in 1 Cartridge Chess Checkers Backgammon Playing Instructions For 1 or 2 Players TRIPLE CHALLENGE Triple Challenge.txt TRIPLE CHALLENGE is an exciting breakthrough in

More information

CS 251 Intermediate Programming Space Invaders Project: Part 3 Complete Game

CS 251 Intermediate Programming Space Invaders Project: Part 3 Complete Game CS 251 Intermediate Programming Space Invaders Project: Part 3 Complete Game Brooke Chenoweth Spring 2018 Goals To carry on forward with the Space Invaders program we have been working on, we are going

More information

CS2212 PROGRAMMING CHALLENGE II EVALUATION FUNCTIONS N. H. N. D. DE SILVA

CS2212 PROGRAMMING CHALLENGE II EVALUATION FUNCTIONS N. H. N. D. DE SILVA CS2212 PROGRAMMING CHALLENGE II EVALUATION FUNCTIONS N. H. N. D. DE SILVA Game playing was one of the first tasks undertaken in AI as soon as computers became programmable. (e.g., Turing, Shannon, and

More information

The Exciting World of Bridge

The Exciting World of Bridge The Exciting World of Bridge Welcome to the exciting world of Bridge, the greatest game in the world! These lessons will assume that you are familiar with trick taking games like Euchre and Hearts. If

More information

Outline. Game Playing. Game Problems. Game Problems. Types of games Playing a perfect game. Playing an imperfect game

Outline. Game Playing. Game Problems. Game Problems. Types of games Playing a perfect game. Playing an imperfect game Outline Game Playing ECE457 Applied Artificial Intelligence Fall 2007 Lecture #5 Types of games Playing a perfect game Minimax search Alpha-beta pruning Playing an imperfect game Real-time Imperfect information

More information

A Quoridor-playing Agent

A Quoridor-playing Agent A Quoridor-playing Agent P.J.C. Mertens June 21, 2006 Abstract This paper deals with the construction of a Quoridor-playing software agent. Because Quoridor is a rather new game, research about the game

More information

Experiments on Alternatives to Minimax

Experiments on Alternatives to Minimax Experiments on Alternatives to Minimax Dana Nau University of Maryland Paul Purdom Indiana University April 23, 1993 Chun-Hung Tzeng Ball State University Abstract In the field of Artificial Intelligence,

More information

Introduction to Computing 2014 Assignment 4 (Preliminary Version) Simple Checkers Game

Introduction to Computing 2014 Assignment 4 (Preliminary Version) Simple Checkers Game 705003 Introduction to Computing 2014 Assignment 4 (Preliminary Version) Simple Checkers Game Assignment Value 10% of total mark for this paper. Date Due 5pm Friday 24 October 2014. Requirements 1. Design

More information

Intuition Mini-Max 2

Intuition Mini-Max 2 Games Today Saying Deep Blue doesn t really think about chess is like saying an airplane doesn t really fly because it doesn t flap its wings. Drew McDermott I could feel I could smell a new kind of intelligence

More information

The Exciting World of Bridge

The Exciting World of Bridge The Exciting World of Bridge Welcome to the exciting world of Bridge, the greatest game in the world! These lessons will assume that you are familiar with trick taking games like Euchre and Hearts. If

More information

ChessBase Accounts FIRST STEPS. CH E ACCESS THE WORLD OF CHESSBASE ANYWHERE, ANYTIME - 24/7

ChessBase Accounts FIRST STEPS.   CH E ACCESS THE WORLD OF CHESSBASE ANYWHERE, ANYTIME - 24/7 ChessBase Accounts ACCESS THE WORLD OF CHESSBASE ANYWHERE, ANYTIME - 24/7 UM CH E S SBAS E ACCOUNT PREM I FIRST STEPS https://account.chessbase.com 2 3 ChessBase Account The ChessBase Account is your entry

More information

2-5 Players Ages 10 and up. Contents

2-5 Players Ages 10 and up. Contents 2-5 Players Ages 10 and up Overview Your team of adventurers has been sent on a mission to excavate an ancient desert city and recover a legendary flying machine that s rumored to be powered by the sun.

More information

Chess Rules- The Ultimate Guide for Beginners

Chess Rules- The Ultimate Guide for Beginners Chess Rules- The Ultimate Guide for Beginners By GM Igor Smirnov A PUBLICATION OF ABOUT THE AUTHOR Grandmaster Igor Smirnov Igor Smirnov is a chess Grandmaster, coach, and holder of a Master s degree in

More information

Bridge Players: 4 Type: Trick-Taking Card rank: A K Q J Suit rank: NT (No Trumps) > (Spades) > (Hearts) > (Diamonds) > (Clubs)

Bridge Players: 4 Type: Trick-Taking Card rank: A K Q J Suit rank: NT (No Trumps) > (Spades) > (Hearts) > (Diamonds) > (Clubs) Bridge Players: 4 Type: Trick-Taking Card rank: A K Q J 10 9 8 7 6 5 4 3 2 Suit rank: NT (No Trumps) > (Spades) > (Hearts) > (Diamonds) > (Clubs) Objective Following an auction players score points by

More information

Royal Battles. A Tactical Game using playing cards and chess pieces. by Jeff Moore

Royal Battles. A Tactical Game using playing cards and chess pieces. by Jeff Moore Royal Battles A Tactical Game using playing cards and chess pieces by Jeff Moore Royal Battles is Copyright (C) 2006, 2007 by Jeff Moore all rights reserved. Images on the cover are taken from an antique

More information

Overview. Equipment. Setup. A Single Turn. Drawing a Domino

Overview. Equipment. Setup. A Single Turn. Drawing a Domino Overview Euronimoes is a Euro-style game of dominoes for 2-4 players. Players attempt to play their dominoes in their own personal area in such a way as to minimize their point count at the end of the

More information

CPM Educational Program

CPM Educational Program CC COURSE 2 ETOOLS Table of Contents General etools... 5 Algebra Tiles (CPM)... 6 Pattern Tile & Dot Tool (CPM)... 9 Area and Perimeter (CPM)...11 Base Ten Blocks (CPM)...14 +/- Tiles & Number Lines (CPM)...16

More information

Game Variations: Ultimate Tic Tac Toe

Game Variations: Ultimate Tic Tac Toe Game Variations: Ultimate Tic Tac Toe Middle School In this lesson, students will experience the engineering process when creating modifications to a familiar game. Next Generation Science Standards MS-ETS1-1

More information

Computer Science and Software Engineering University of Wisconsin - Platteville. 4. Game Play. CS 3030 Lecture Notes Yan Shi UW-Platteville

Computer Science and Software Engineering University of Wisconsin - Platteville. 4. Game Play. CS 3030 Lecture Notes Yan Shi UW-Platteville Computer Science and Software Engineering University of Wisconsin - Platteville 4. Game Play CS 3030 Lecture Notes Yan Shi UW-Platteville Read: Textbook Chapter 6 What kind of games? 2-player games Zero-sum

More information

Game Playing for a Variant of Mancala Board Game (Pallanguzhi)

Game Playing for a Variant of Mancala Board Game (Pallanguzhi) Game Playing for a Variant of Mancala Board Game (Pallanguzhi) Varsha Sankar (SUNet ID: svarsha) 1. INTRODUCTION Game playing is a very interesting area in the field of Artificial Intelligence presently.

More information

Creating Photo Borders With Photoshop Brushes

Creating Photo Borders With Photoshop Brushes Creating Photo Borders With Photoshop Brushes Written by Steve Patterson. In this Photoshop photo effects tutorial, we ll learn how to create interesting photo border effects using Photoshop s brushes.

More information

Section 7: Using the Epilog Print Driver

Section 7: Using the Epilog Print Driver Color Mapping The Color Mapping feature is an advanced feature that must be checked to activate. Color Mapping performs two main functions: 1. It allows for multiple Speed and Power settings to be used

More information

Contents Systems of Linear Equations and Determinants

Contents Systems of Linear Equations and Determinants Contents 6. Systems of Linear Equations and Determinants 2 Example 6.9................................. 2 Example 6.10................................ 3 6.5 Determinants................................

More information

An End Game in West Valley City, Utah (at the Harman Chess Club)

An End Game in West Valley City, Utah (at the Harman Chess Club) An End Game in West Valley City, Utah (at the Harman Chess Club) Can a chess book prepare a club player for an end game? It depends on both the book and the game Basic principles of the end game can be

More information

Game Tree Search. CSC384: Introduction to Artificial Intelligence. Generalizing Search Problem. General Games. What makes something a game?

Game Tree Search. CSC384: Introduction to Artificial Intelligence. Generalizing Search Problem. General Games. What makes something a game? CSC384: Introduction to Artificial Intelligence Generalizing Search Problem Game Tree Search Chapter 5.1, 5.2, 5.3, 5.6 cover some of the material we cover here. Section 5.6 has an interesting overview

More information

Google DeepMind s AlphaGo vs. world Go champion Lee Sedol

Google DeepMind s AlphaGo vs. world Go champion Lee Sedol Google DeepMind s AlphaGo vs. world Go champion Lee Sedol Review of Nature paper: Mastering the game of Go with Deep Neural Networks & Tree Search Tapani Raiko Thanks to Antti Tarvainen for some slides

More information

GRADE 3 SUPPLEMENT. Set C3 Geometry: Coordinate Systems. Includes. Skills & Concepts

GRADE 3 SUPPLEMENT. Set C3 Geometry: Coordinate Systems. Includes. Skills & Concepts GRADE SUPPLEMENT Set C Geometry: Coordinate Systems Includes Activity Coordinate Place Four C. Activity Dragon s Gold C.7 Independent Worksheet Coordinate Dot-to-Dots C. Independent Worksheet Robot Programs

More information

AI Plays Yun Nie (yunn), Wenqi Hou (wenqihou), Yicheng An (yicheng)

AI Plays Yun Nie (yunn), Wenqi Hou (wenqihou), Yicheng An (yicheng) AI Plays 2048 Yun Nie (yunn), Wenqi Hou (wenqihou), Yicheng An (yicheng) Abstract The strategy game 2048 gained great popularity quickly. Although it is easy to play, people cannot win the game easily,

More information

COMP3211 Project. Artificial Intelligence for Tron game. Group 7. Chiu Ka Wa ( ) Chun Wai Wong ( ) Ku Chun Kit ( )

COMP3211 Project. Artificial Intelligence for Tron game. Group 7. Chiu Ka Wa ( ) Chun Wai Wong ( ) Ku Chun Kit ( ) COMP3211 Project Artificial Intelligence for Tron game Group 7 Chiu Ka Wa (20369737) Chun Wai Wong (20265022) Ku Chun Kit (20123470) Abstract Tron is an old and popular game based on a movie of the same

More information

Game-playing AIs: Games and Adversarial Search I AIMA

Game-playing AIs: Games and Adversarial Search I AIMA Game-playing AIs: Games and Adversarial Search I AIMA 5.1-5.2 Games: Outline of Unit Part I: Games as Search Motivation Game-playing AI successes Game Trees Evaluation Functions Part II: Adversarial Search

More information

Chess Handbook: Course One

Chess Handbook: Course One Chess Handbook: Course One 2012 Vision Academy All Rights Reserved No Reproduction Without Permission WELCOME! Welcome to The Vision Academy! We are pleased to help you learn Chess, one of the world s

More information

Positive Triangle Game

Positive Triangle Game Positive Triangle Game Two players take turns marking the edges of a complete graph, for some n with (+) or ( ) signs. The two players can choose either mark (this is known as a choice game). In this game,

More information