ELE 408 Final Project
|
|
- Colleen Bennett
- 5 years ago
- Views:
Transcription
1 ELE 408 Final Project Chess AI game played over the Network Domenic Ferri Brandon Lian
2 Project Goal: The project goal is to create a single player versus AI chess game using socket programming to establish connectivity between the chess GUI and the AI engine. Detailed Design: The project is divided into three parts. First is the Chess GUI which is responsible for displaying the chess board and pieces as well as allowing the user to input moves and play the game. The Chess GUI was completely programmed from scratch using a Python package called Pygame. The GUI is them loaded onto the FPGA board and executed using the ARM processor. Next is the chess engine which is responsible for playing against the player by choosing optimal chess moves using basic AI theory. The chess engine was found online as an open source program that we modified slightly in order to use in this project. The engine is completely written in C programming language and is run from a desktop computer. Finally, the socket programming is used to establish connectivity between the GUI and engine. The GUI sends the current state of the game to the engine over the network, and the engine sends its chosen move back to the GUI. In order to create the chess GUI, we used the basic concept of giving each square number 0 to 63. This allows us to track the position of pieces by assigning a number to a piece. The piece positions are stored in a list which is updated when pieces are moved and captured. We also use the numbers to track mouse clicks so we know which piece was clicked on. A 2 dimensional list called current keeps track of the state of the game. The list has an element for each piece remaining on the board. Each of these elements has 3 of its own elements that state the name of the piece, position, and an array of legal moves. In order to find a list of legal moves, the rules of the game and the movement of each piece are hardcorded, and the conditions for each possible move are checked. For example, a Pawn can only move one square forward unless it has not moved before, in which it can move two squares forward. It can move diagonally only if capturing. Using the numbered squares, we know the one square forward is always the current position plus 8 for black and current position minus 8 for black. We then check if that destination square already has a piece on it. If it does, then it cannot move to it. The overall concept is that the rules of the game for each piece are used to generate a list of legal moves for each piece remaining. When a user makes a move, the GUI cheks if the move is in the list of legal moves. In order to send the user move to the chess AI, we need to translate the move into Universal Chess Interface convention. UCI used columns labeled A to H and rows labeled 1 to 8 to identify each square instead of using just numbers. Therefore, we translate the square's number to UCI convention before sending it. The move is sent over socket programming which establishes communication between the GUI and Engine. The socket program allows the chess AI to run on any computer on the same network as long as the ip is known. It also stops any unneeded information from the communication, such as extra white space, so that the GUI has
3 an easier time processing the machines moves. The GUI code sends different commands to the chess engine in order to begin a new game, restart the game, and more. The chess AI uses a classical approach to determining the best move by using a combination of the Minimax algorithm and alpha beta pruning. The engine sends the move back over the socket program to the GUI, which updates the game state with the new move and waits for the players next move. Procedure for running project: A short video run down/explanation is given here: However these instructions below are more in depth and should be followed. * = may vary/from here on (like the use in linux terminal) Follow instructions in this exact order: 1. Open Terminal on a linux desktop computer Cntrl+alt+t 2. Make a desired directory for files to go to: Mkdir AI_Chess_Over_Network cd AI_Chess_Over_Network 3. Copy and unzip ELE408_FinalProj.zip Unzip ELE408_FinalProj.zip 4. Like in the lab, insert your microsd card and start up the DE1-SoC board running LXDE linux 5. In a separate terminal run connect to the DE1-SoC and copy the ChessBoard/ directory to the DE1-SoC board screen /dev/ttyusb mkdir AI_Chess_Over_Network cd AI_Chess_Over_Network scp -r hostname@hostip:~/ai_chess_over_network/chessboard/. 6. Install pygame packages on DE1-SoC board As root: apt-get install python-pygame (make sure glibc6 is version < 2.16, I believe this the lib version on the boards before hand is 2.15, but in our development process we had updated to 2.17 and then had to reinstall 2.15 in order to get the GUI running, if you have this issue you can download
4 libc6_2.15-0ubuntu20_armhf.deb to you desktop from and copy the file from there to the DE1-SoC board: On DE1-SoC: scp -r libc6_2.15-0ubuntu20_armhf.deb. and can run As root on DE1: dpkg --install libc6_2.15-0ubuntu20_armhf.deb From whatever directory you copied this package to on the DE1-Soc) 7. In the terminal for your desktop go to: cd MisterQueen-master/bin/release 8. In this same terminal run: ifconfig 9. From enp0* copy the inet addr: IP address for use in the programs 10. In this terminal run the python script uci.py and paste in the IP address when asked, this is the server side python uci.py Input IP Address:(ip address goes here) 11. From the terminal that is running screen, the terminal for the DE1-SoC board, move into the ChessBoard directory and run the chess.py script and paste in the same IP address when asked, this is the client side cd ChessBoard/ python chess.py Input IP Address:(ip address goes here) 12. On the server side terminal you should see that you have connected to the client IP, and the initializations taking place for the game. On the DE1-SoC you should see the GUI appear on the touchscreen with all the chess pieces in their starting positions 13. You can use the touch screen as mouse inputs to move the pieces, however we recommend connecting a mouse to the DE1-SoC because of the inaccuracy of the touch screen 14. If you are not familiar with the rules and moves involved with chess here is a link to learn: You can move a piece by clicking the piece, and then clicking the square you would like to go to. If you move a piece on the DE1-SoC GUI you should see the move received by
5 the the server side, the script sends that move to the engine and prints out what the best move will be 16. The best move will be sent to the DE1-SoC GUI and update the board with this new information 17. If the game is over, either one side has no pieces left, or the king from either side has been taken, press the New Game button on the DE1-SoC GUI to reset the board and will also restart the game on the engine side. Was our Best Outcome met? Originally we planned to have the chess engine operate on the FPGA board and that would act as the server. We now realize the better option is to use the FPGA as the platform for the GUI, and the desktop which has more computational power and resources as the server side, you can see this decision was made in our final product. We also wanted to work with machine algorithms so that the engine would get better and better, but due to time constraints and lack of familiarity with chess engines we made the executive decision to use Michael Fogleman s chess engine MisterQueen that was written in C to expedite development. We do have a chess game that communicates between a GUI on the DE1-SoC as a client and an open source chess engine on the desktop as our server using socket programming. Our Best outcome was not met because we did not implement and integrate deep learning algorithms. Features for Future Development: Adding functionality for determining check and checkmate states, currently the AI just takes our king and we restart the game, or we take his king and we restart the game Ideally we would like to modify the engine further to use machine learning algorithms to constantly get better at the game Adding levels of difficulty so that we can invite beginners to play the game and challenge the most hardened of veterans Animations would be really nice, the refresh is a little hard to follow so implementing smoother transitions from square to square would be visually pleasing Adding some music would be fun as well, having a good combination of audio and visual is necessary for a good game
6 Conclusion: In conclusion we learned a lot throughout the process developing this project and bringing it to life. We learned a lot about writing scripts in python developing the GUI, using python for socket programming and how to interact with a C program executable inside of the python script, and learned about deterministic chess engines and the methods they use in order to complete computations and determine what the best move to make is. We would like to thank Michael Fogleman for producing his open source chess engine, MisterQueen, and allowing the community of developers to use and learn from his research and development.
ChesServe Test Plan. ChesServe CS 451 Allan Caffee Charles Conroy Kyle Golrick Christopher Gore David Kerkeslager
ChesServe Test Plan ChesServe CS 451 Allan Caffee Charles Conroy Kyle Golrick Christopher Gore David Kerkeslager Date Reason For Change Version Thursday August 21 th Initial Version 1.0 Thursday August
More information2 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 informationGame-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 informationObstacle Dodger. Nick Raptakis James Luther ELE 408/409 Final Project Professor Bin Li. Project Description:
Nick Raptakis James Luther ELE 408/409 Final Project Professor Bin Li Obstacle Dodger Project Description: Our team created an arcade style game to dodge falling objects using the DE1 SoC board. The player
More informationChess and Python revisited
Chess and Python revisited slide 1 there exists a PyGame project http://www.pygame.org/ project-chessboard-282-.html which draws a chess board and allows users to make FIDE legal moves (by clicking on
More informationgame 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 informationCS 1571 Introduction to AI Lecture 12. Adversarial search. CS 1571 Intro to AI. Announcements
CS 171 Introduction to AI Lecture 1 Adversarial search Milos Hauskrecht milos@cs.pitt.edu 39 Sennott Square Announcements Homework assignment is out Programming and experiments Simulated annealing + Genetic
More informationMore Adversarial Search
More Adversarial Search CS151 David Kauchak Fall 2010 http://xkcd.com/761/ Some material borrowed from : Sara Owsley Sood and others Admin Written 2 posted Machine requirements for mancala Most of the
More informationFinal Project: Reversi
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
More informationMinimax Trees: Utility Evaluation, Tree Evaluation, Pruning
Minimax Trees: Utility Evaluation, Tree Evaluation, Pruning CSCE 315 Programming Studio Fall 2017 Project 2, Lecture 2 Adapted from slides of Yoonsuck Choe, John Keyser Two-Person Perfect Information Deterministic
More informationFoundations of AI. 5. Board Games. Search Strategies for Games, Games with Chance, State of the Art. Wolfram Burgard and Luc De Raedt SA-1
Foundations of AI 5. Board Games Search Strategies for Games, Games with Chance, State of the Art Wolfram Burgard and Luc De Raedt SA-1 Contents Board Games Minimax Search Alpha-Beta Search Games with
More informationIntroduction 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 informationSoftware Requirements Specification
War Room Systems Vito Salerno Jeff Segall Ian Yoder Josh Zenker March 19, 2009 Revision 1.1 Approval Sheet Chris DiJoseph Date Chris Dulsky Date Greta Evans Date Isaac Gerhart-Hines Date Oleg Pistolet
More information1 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 informationOWEN Walking Robot Install Guide
OWEN Walking Robot Install Guide The 3D printed parts are as follows: - Left Foot - Right Foot - Ankles (both are identical) - Pelvis Servo, arm, and screws: FIRST STEPS Connect the battery to the ODROID-C0.
More informationCS151 - 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 informationIRU151_IRU152. OPC UA User Manual
IRU151_IRU152 OPC UA User Manual Revision History Version Revision Date Author Description 1.0 2018/07/18 Ryan 1 st release ii Table of Contents Revision History... i CHAPTER 1 Introduction...1 CHAPTER
More informationWelcome 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 informationAdversary 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 informationArtificial Intelligence
Artificial Intelligence CS482, CS682, MW 1 2:15, SEM 201, MS 227 Prerequisites: 302, 365 Instructor: Sushil Louis, sushil@cse.unr.edu, http://www.cse.unr.edu/~sushil Games and game trees Multi-agent systems
More informationGame Playing. Why do AI researchers study game playing? 1. It s a good reasoning problem, formal and nontrivial.
Game Playing Why do AI researchers study game playing? 1. It s a good reasoning problem, formal and nontrivial. 2. Direct comparison with humans and other computer programs is easy. 1 What Kinds of Games?
More informationPlay Chess Lessons Against Computer 3d Easy For Beginners
Play Chess Lessons Against Computer 3d Easy For Beginners Play regular / classic chess online against the computer (at beginner or your difficulty level to decide the strength of your computer opponent:
More informationYourTurnMyTurn.com: chess rules. Jan Willem Schoonhoven Copyright 2018 YourTurnMyTurn.com
YourTurnMyTurn.com: chess rules Jan Willem Schoonhoven Copyright 2018 YourTurnMyTurn.com Inhoud Chess rules...1 The object of chess...1 The board...1 Moves...1 Captures...1 Movement of the different pieces...2
More informationmywbut.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 informationGames (adversarial search problems)
Mustafa Jarrar: Lecture Notes on Games, Birzeit University, Palestine Fall Semester, 204 Artificial Intelligence Chapter 6 Games (adversarial search problems) Dr. Mustafa Jarrar Sina Institute, University
More informationInfoblox and Ansible Integration
DEPLOYMENT GUIDE Infoblox and Ansible Integration Ansible 2.5 April 2018 2018 Infoblox Inc. All rights reserved. Ansible Deployment Guide April 2018 Page 1 of 12 Contents Overview... 3 Introduction...
More informationApplications 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 informationANSYS v14.5. Manager Installation Guide CAE Associates
ANSYS v14.5 Remote Solve Manager Installation Guide 2013 CAE Associates What is the Remote Solve Manager? The Remote Solve Manager (RSM) is a job queuing system designed specifically for use with the ANSYS
More informationThe game of Paco Ŝako
The game of Paco Ŝako Created to be an expression of peace, friendship and collaboration, Paco Ŝako is a new and dynamic chess game, with a mindful touch, and a mind-blowing gameplay. Two players sitting
More informationArtificial Intelligence
Artificial Intelligence CS482, CS682, MW 1 2:15, SEM 201, MS 227 Prerequisites: 302, 365 Instructor: Sushil Louis, sushil@cse.unr.edu, http://www.cse.unr.edu/~sushil Non-classical search - Path does not
More informationUniversally Accessible Games: The case of motor-impaired users
: The case of motor-impaired users www.ics.forth.gr/hci/ua-games gramenos@ics.forth.gr jgeorgal@ics.forth.gr Human-Computer Interaction Laboratory Institute of Computer Science (ICS) Foundation for Research
More informationGAME PROGRAMMING & DESIGN LAB 1 Egg Catcher - a simple SCRATCH game
I. BACKGROUND 1.Introduction: GAME PROGRAMMING & DESIGN LAB 1 Egg Catcher - a simple SCRATCH game We have talked about the programming languages and discussed popular programming paradigms. We discussed
More informationPay 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 informationInspiring Creative Fun Ysbrydoledig Creadigol Hwyl. Kinect2Scratch Workbook
Inspiring Creative Fun Ysbrydoledig Creadigol Hwyl Workbook Scratch is a drag and drop programming environment created by MIT. It contains colour coordinated code blocks that allow a user to build up instructions
More informationProject 1: Game of Bricks
Project 1: Game of Bricks Game Description This is a game you play with a ball and a flat paddle. A number of bricks are lined up at the top of the screen. As the ball bounces up and down you use the paddle
More informationCOMP219: Artificial Intelligence. Lecture 13: Game Playing
CMP219: Artificial Intelligence Lecture 13: Game Playing 1 verview Last time Search with partial/no observations Belief states Incremental belief state search Determinism vs non-determinism Today We will
More informationTac Due: Sep. 26, 2012
CS 195N 2D Game Engines Andy van Dam Tac Due: Sep. 26, 2012 Introduction This assignment involves a much more complex game than Tic-Tac-Toe, and in order to create it you ll need to add several features
More informationSolving tasks and move score... 18
Solving tasks and move score... 18 Contents Contents... 1 Introduction... 3 Welcome to Peshk@!... 3 System requirements... 3 Software installation... 4 Technical support service... 4 User interface...
More informationTaffy 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 informationA Simple Pawn End Game
A Simple Pawn End Game This shows how to promote a knight-pawn when the defending king is in the corner near the queening square The introduction is for beginners; the rest may be useful to intermediate
More informationChess For Beginners Game Full Version 3d Animated
Chess For Beginners Game Full Version 3d Animated Download 3D Chess Game and enjoy it on your iphone, ipad, and ipod touch. Powerful Chess engine that can also simulate absolute beginner opponents Realistic
More informationProgramming 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 informationFor 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 informationArtificial Intelligence Search III
Artificial Intelligence Search III Lecture 5 Content: Search III Quick Review on Lecture 4 Why Study Games? Game Playing as Search Special Characteristics of Game Playing Search Ingredients of 2-Person
More informationSTEP BY STEP GUIDE (RASPBERRY PI)
STEP BY STEP GUIDE (RASPBERRY PI) Raspberry Pi The Raspberry Pi is a credit-card-sized single-board computer developed in the UK by the Raspberry Pi Foundation with the intention of promoting the teaching
More informationCS 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 informationActivity 6: Playing Elevens
Activity 6: Playing Elevens Introduction: In this activity, the game Elevens will be explained, and you will play an interactive version of the game. Exploration: The solitaire game of Elevens uses a deck
More informationGame Playing AI Class 8 Ch , 5.4.1, 5.5
Game Playing AI Class Ch. 5.-5., 5.4., 5.5 Bookkeeping HW Due 0/, :59pm Remaining CSP questions? Cynthia Matuszek CMSC 6 Based on slides by Marie desjardin, Francisco Iacobelli Today s Class Clear criteria
More informationCS 2710 Foundations of AI. Lecture 9. Adversarial search. CS 2710 Foundations of AI. Game search
CS 2710 Foundations of AI Lecture 9 Adversarial search Milos Hauskrecht milos@cs.pitt.edu 5329 Sennott Square CS 2710 Foundations of AI Game search Game-playing programs developed by AI researchers since
More informationCISC 1600, Lab 2.2: More games in Scratch
CISC 1600, Lab 2.2: More games in Scratch Prof Michael Mandel Introduction Today we will be starting to make a game in Scratch, which ultimately will become your submission for Project 3. This lab contains
More information3. Bishops b. The main objective of this lesson is to teach the rules of movement for the bishops.
page 3-1 3. Bishops b Objectives: 1. State and apply rules of movement for bishops 2. Use movement rules to count moves and captures 3. Solve problems using bishops The main objective of this lesson is
More informationCPS331 Lecture: Search in Games last revised 2/16/10
CPS331 Lecture: Search in Games last revised 2/16/10 Objectives: 1. To introduce mini-max search 2. To introduce the use of static evaluation functions 3. To introduce alpha-beta pruning Materials: 1.
More informationAfter learning the Rules, What should beginners learn next?
After learning the Rules, What should beginners learn next? Chess Puzzling Presentation Nancy Randolph Capital Conference June 21, 2016 Name Introduction to Chess Test 1. How many squares does a chess
More informationIn this project you ll learn how to create a times table quiz, in which you have to get as many answers correct as you can in 30 seconds.
Brain Game Introduction In this project you ll learn how to create a times table quiz, in which you have to get as many answers correct as you can in 30 seconds. Step 1: Creating questions Let s start
More informationFoundations of AI. 6. Adversarial Search. Search Strategies for Games, Games with Chance, State of the Art. Wolfram Burgard & Bernhard Nebel
Foundations of AI 6. Adversarial Search Search Strategies for Games, Games with Chance, State of the Art Wolfram Burgard & Bernhard Nebel Contents Game Theory Board Games Minimax Search Alpha-Beta Search
More informationInteractive 1 Player Checkers. Harrison Okun December 9, 2015
Interactive 1 Player Checkers Harrison Okun December 9, 2015 1 Introduction The goal of our project was to allow a human player to move physical checkers pieces on a board, and play against a computer's
More informationBoard 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 informationHow to Make Games in MakeCode Arcade Created by Isaac Wellish. Last updated on :10:15 PM UTC
How to Make Games in MakeCode Arcade Created by Isaac Wellish Last updated on 2019-04-04 07:10:15 PM UTC Overview Get your joysticks ready, we're throwing an arcade party with games designed by you & me!
More informationGame-playing AIs: Games and Adversarial Search FINAL SET (w/ pruning study examples) AIMA
Game-playing AIs: Games and Adversarial Search FINAL SET (w/ pruning study examples) AIMA 5.1-5.2 Games: Outline of Unit Part I: Games as Search Motivation Game-playing AI successes Game Trees Evaluation
More informationCOMP219: COMP219: Artificial Intelligence Artificial Intelligence Dr. Annabel Latham Lecture 12: Game Playing Overview Games and Search
COMP19: Artificial Intelligence COMP19: Artificial Intelligence Dr. Annabel Latham Room.05 Ashton Building Department of Computer Science University of Liverpool Lecture 1: Game Playing 1 Overview Last
More informationGoogle 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 information2/5/17 ADVERSARIAL SEARCH. Today. Introduce adversarial games Minimax as an optimal strategy Alpha-beta pruning Real-time decision making
ADVERSARIAL SEARCH Today Introduce adversarial games Minimax as an optimal strategy Alpha-beta pruning Real-time decision making 1 Adversarial Games People like games! Games are fun, engaging, and hard-to-solve
More informationSection 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 informationScratch Coding And Geometry
Scratch Coding And Geometry by Alex Reyes Digitalmaestro.org Digital Maestro Magazine Table of Contents Table of Contents... 2 Basic Geometric Shapes... 3 Moving Sprites... 3 Drawing A Square... 7 Drawing
More informationCPSC 217 Assignment 3
CPSC 217 Assignment 3 Due: Friday November 24, 2017 at 11:55pm Weight: 7% Sample Solution Length: Less than 100 lines, including blank lines and some comments (not including the provided code) Individual
More informationAdversarial Search (Game Playing)
Artificial Intelligence Adversarial Search (Game Playing) Chapter 5 Adapted from materials by Tim Finin, Marie desjardins, and Charles R. Dyer Outline Game playing State of the art and resources Framework
More informationArtificial Intelligence. 4. Game Playing. Prof. Bojana Dalbelo Bašić Assoc. Prof. Jan Šnajder
Artificial Intelligence 4. Game Playing Prof. Bojana Dalbelo Bašić Assoc. Prof. Jan Šnajder University of Zagreb Faculty of Electrical Engineering and Computing Academic Year 2017/2018 Creative Commons
More informationCS 440 / ECE 448 Introduction to Artificial Intelligence Spring 2010 Lecture #5
CS 440 / ECE 448 Introduction to Artificial Intelligence Spring 2010 Lecture #5 Instructor: Eyal Amir Grad TAs: Wen Pu, Yonatan Bisk Undergrad TAs: Sam Johnson, Nikhil Johri Topics Game playing Game trees
More informationProgramming I (mblock)
http://www.plk83.edu.hk/cy/mblock Contents 1. Introduction (Page 1) 2. What is Scratch? (Page 1) 3. What is mblock? (Page 2) 4. Learn Scratch (Page 3) 5. Elementary Lessons (Page 3) 6. Supplementary Lessons
More informationToday. Types of Game. Games and Search 1/18/2010. COMP210: Artificial Intelligence. Lecture 10. Game playing
COMP10: Artificial Intelligence Lecture 10. Game playing Trevor Bench-Capon Room 15, Ashton Building Today We will look at how search can be applied to playing games Types of Games Perfect play minimax
More informationArtificial Intelligence. Topic 5. Game playing
Artificial Intelligence Topic 5 Game playing broadening our world view dealing with incompleteness why play games? perfect decisions the Minimax algorithm dealing with resource limits evaluation functions
More informationEditing the standing Lazarus object to detect for being freed
Lazarus: Stages 5, 6, & 7 Of the game builds you have done so far, Lazarus has had the most programming properties. In the big picture, the programming, animation, gameplay of Lazarus is relatively simple.
More informationSudokuSplashZone. Overview 3
Overview 3 Introduction 4 Sudoku Game 4 Game grid 4 Cell 5 Row 5 Column 5 Block 5 Rules of Sudoku 5 Entering Values in Cell 5 Solver mode 6 Drag and Drop values in Solver mode 6 Button Inputs 7 Check the
More informationARTIFICIAL 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 informationTable of Contents. Creating Your First Project 4. Enhancing Your Slides 8. Adding Interactivity 12. Recording a Software Simulation 19
Table of Contents Creating Your First Project 4 Enhancing Your Slides 8 Adding Interactivity 12 Recording a Software Simulation 19 Inserting a Quiz 24 Publishing Your Course 32 More Great Features to Learn
More informationDeep Green. System for real-time tracking and playing the board game Reversi. Final Project Submitted by: Nadav Erell
Deep Green System for real-time tracking and playing the board game Reversi Final Project Submitted by: Nadav Erell Introduction to Computational and Biological Vision Department of Computer Science, Ben-Gurion
More informationAdversarial Search. Robert Platt Northeastern University. Some images and slides are used from: 1. CS188 UC Berkeley 2. RN, AIMA
Adversarial Search Robert Platt Northeastern University Some images and slides are used from: 1. CS188 UC Berkeley 2. RN, AIMA What is adversarial search? Adversarial search: planning used to play a game
More informationLeague of Legends: Dynamic Team Builder
League of Legends: Dynamic Team Builder Blake Reed Overview The project that I will be working on is a League of Legends companion application which provides a user data about different aspects of the
More informationSTEP-BY-STEP THINGS TO TRY FINISHED? START HERE NEW TO SCRATCH? CREATE YOUR FIRST SCRATCH PROJECT!
STEP-BY-STEP NEW TO SCRATCH? CREATE YOUR FIRST SCRATCH PROJECT! In this activity, you will follow the Step-by- Step Intro in the Tips Window to create a dancing cat in Scratch. Once you have completed
More informationAdversarial Search. CMPSCI 383 September 29, 2011
Adversarial Search CMPSCI 383 September 29, 2011 1 Why are games interesting to AI? Simple to represent and reason about Must consider the moves of an adversary Time constraints Russell & Norvig say: Games,
More informationPlaying Games. Henry Z. Lo. June 23, We consider writing AI to play games with the following properties:
Playing Games Henry Z. Lo June 23, 2014 1 Games We consider writing AI to play games with the following properties: Two players. Determinism: no chance is involved; game state based purely on decisions
More informationGames and Adversarial Search II
Games and Adversarial Search II Alpha-Beta Pruning (AIMA 5.3) Some slides adapted from Richard Lathrop, USC/ISI, CS 271 Review: The Minimax Rule Idea: Make the best move for MAX assuming that MIN always
More informationTo Explore the Properties of Parallelogram
Exemplar To Explore the Properties of Parallelogram Objective To explore the properties of parallelogram Dimension Measures, Shape and Space Learning Unit Quadrilaterals Key Stage 3 Materials Required
More informationGame Playing State-of-the-Art
Adversarial Search [These slides were created by Dan Klein and Pieter Abbeel for CS188 Intro to AI at UC Berkeley. All CS188 materials are available at http://ai.berkeley.edu.] Game Playing State-of-the-Art
More informationMASA. (Movement and Action Sequence Analysis) User Guide
MASA (Movement and Action Sequence Analysis) User Guide PREFACE The MASA software is a game analysis software that can be used for scientific analyses or in sports practice in different types of sports.
More informationUsing the Desktop Recorder
Mediasite Using the Desktop Recorder Instructional Media publication: 09-Students 9/8/06 Introduction The new Desktop Recorder from Mediasite allows HCC users to record content on their computer desktop
More informationMicrochess 2.0 gives you a unique and exciting way to use your Apple II to enjoy the intellectually stimulating game of chess. The complete program lo
I Microchess 2.0 gives you a unique and exciting way to use your Apple II to enjoy the intellectually stimulating game of chess. The complete program logic to play a very skillful game of chess, as well
More informationAdversarial Search. CS 486/686: Introduction to Artificial Intelligence
Adversarial Search CS 486/686: Introduction to Artificial Intelligence 1 Introduction So far we have only been concerned with a single agent Today, we introduce an adversary! 2 Outline Games Minimax search
More informationModule 3. Problem Solving using Search- (Two agent) Version 2 CSE IIT, Kharagpur
Module 3 Problem Solving using Search- (Two agent) 3.1 Instructional Objective The students should understand the formulation of multi-agent search and in detail two-agent search. Students should b familiar
More informationVirtual Universe Pro. Player Player 2018 for Virtual Universe Pro
Virtual Universe Pro Player 2018 1 Main concept The 2018 player for Virtual Universe Pro allows you to generate and use interactive views for screens or virtual reality headsets. The 2018 player is "hybrid",
More informationPlay Chess Lessons Against Computer 3d Easy
Play Chess Lessons Against Computer 3d Easy The premier free single & multiplayer chess game with HD 3D graphics. Play against the computer or challenge your friends online! engine, larger opening database
More informationLesson 8 Tic-Tac-Toe (Noughts and Crosses)
Lesson Game requirements: There will need to be nine sprites each with three costumes (blank, cross, circle). There needs to be a sprite to show who has won. There will need to be a variable used for switching
More informationAssignment 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 informationArtificial Intelligence Adversarial Search
Artificial Intelligence Adversarial Search Adversarial Search Adversarial search problems games They occur in multiagent competitive environments There is an opponent we can t control planning again us!
More information3 USRP2 Hardware Implementation
3 USRP2 Hardware Implementation This section of the laboratory will familiarize you with some of the useful GNURadio tools for digital communication system design via SDR using the USRP2 platforms. Specifically,
More informationWPE 48N USER MANUAL Version1.1
Version1.1 Security instructions 1. Read this manual carefully. 2. Follow all instructions and warnings. 3. Only use accessories specified by WORK PRO. 4. Follow the safety instructions of your country.
More informationModaDJ. Development and evaluation of a multimodal user interface. Institute of Computer Science University of Bern
ModaDJ Development and evaluation of a multimodal user interface Course Master of Computer Science Professor: Denis Lalanne Renato Corti1 Alina Petrescu2 1 Institute of Computer Science University of Bern
More informationCS 5522: Artificial Intelligence II
CS 5522: Artificial Intelligence II Adversarial Search Instructor: Alan Ritter Ohio State University [These slides were adapted from CS188 Intro to AI at UC Berkeley. All materials available at http://ai.berkeley.edu.]
More informationAssessment: Reverse Engineering
1 Overview This guide outlines how to assess students understanding and sequencing of the programming blocks in the ScratchJr ipad app. This assessment was originally designed to evaluate student learning
More informationGame-playing: DeepBlue and AlphaGo
Game-playing: DeepBlue and AlphaGo Brief history of gameplaying frontiers 1990s: Othello world champions refuse to play computers 1994: Chinook defeats Checkers world champion 1997: DeepBlue defeats world
More information