Hex Combinatorial Search in Game Strategy by Brandon Risberg May 2006Menlo School.

Slides:



Advertisements
Similar presentations
1 CS 385 Fall 2006 Chapter 4 Heuristic Search. 2 Heuristics eurisko ("I discover" in Greek) "the study of the methods and rules of discovery and invention."
Advertisements

Adversarial Search We have experience in search where we assume that we are the only intelligent being and we have explicit control over the “world”. Lets.
Adversarial Search Reference: “Artificial Intelligence: A Modern Approach, 3 rd ed” (Russell and Norvig)
AI for Connect-4 (or other 2-player games) Minds and Machines.
ICS-271:Notes 6: 1 Notes 6: Game-Playing ICS 271 Fall 2008.
CS 484 – Artificial Intelligence
Tic Tac Toe Architecture CSE 5290 – Artificial Intelligence 06/13/2011 Christopher Hepler.
Application of Artificial intelligence to Chess Playing Capstone Design Project 2004 Jason Cook Bitboards  Bitboards are 64 bit unsigned integers, with.
Lecture 12 Last time: CSPs, backtracking, forward checking Today: Game Playing.
Adversarial Search CSE 473 University of Washington.
MINIMAX SEARCH AND ALPHA- BETA PRUNING: PLAYER 1 VS. PLAYER 2.
Games CPSC 386 Artificial Intelligence Ellen Walker Hiram College.
Artificial Intelligence in Game Design
Mahgul Gulzai Moomal Umer Rabail Hafeez
Learning C++ the Fun Way Taesoo Kim Dr. Ramon Lawrence Computer Science.
This time: Outline Game playing The minimax algorithm
Game Playing CSC361 AI CSC361: Game Playing.
AI – Week 8 AI + 2 Player Games Lee McCluskey, room 3/10
ICS-271:Notes 6: 1 Notes 6: Game-Playing ICS 271 Fall 2006.
Game Tree Search based on Russ Greiner and Jean-Claude Latombe’s notes.
Adversarial Search: Game Playing Reading: Chess paper.
THE RENJU GAME BY ABHISHEK JAIN, PRANSHU GUPTA & RHYTHM DAS PCLUB SUMMER PROJECT PRESENTATION JUNE, L7 IIT KANPUR MENTOR – SANIL JAIN.
Game Playing: Adversarial Search Chapter 6. Why study games Fun Clear criteria for success Interesting, hard problems which require minimal “initial structure”
ICS-270a:Notes 5: 1 Notes 5: Game-Playing ICS 270a Winter 2003.
1 Adversary Search Ref: Chapter 5. 2 Games & A.I. Easy to measure success Easy to represent states Small number of operators Comparison against humans.
Game Trees: MiniMax strategy, Tree Evaluation, Pruning, Utility evaluation Adapted from slides of Yoonsuck Choe.
Chess Applications:Alpha- Beta Search Greg Parker ‘03 Senior Thesis Advisor: Andrew Appel.
Minimax Trees: Utility Evaluation, Tree Evaluation, Pruning CPSC 315 – Programming Studio Spring 2008 Project 2, Lecture 2 Adapted from slides of Yoonsuck.
Lecture 5 Note: Some slides and/or pictures are adapted from Lecture slides / Books of Dr Zafar Alvi. Text Book - Aritificial Intelligence Illuminated.
Minimax.
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.
KU NLP Heuristic Search Heuristic Search and Expert Systems (1) q An interesting approach to implementing heuristics is the use of confidence.
Game Playing.
Games CPS 170 Ron Parr. Why Study Games? Many human activities can be modeled as games –Negotiations –Bidding –TCP/IP –Military confrontations –Pursuit/Evasion.
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 AIs Part 1 CIS 391 Fall CSE Intro to AI 2 Games: Outline of Unit Part I (this set of slides)  Motivation  Game Trees  Evaluation.
Connect Four AI Robert Burns and Brett Crawford. Connect Four  A board with at least six rows and seven columns  Two players: one with red discs and.
Games. Adversaries Consider the process of reasoning when an adversary is trying to defeat our efforts In game playing situations one searches down the.
HPC Checkers By Andy Block Ryan Egan. Table of Contents Overview of Checkers ▫Overview of Checkers ▫Rules of the Game AI Theory The Program ▫Board ▫Sample.
Machine Learning for an Artificial Intelligence Playing Tic-Tac-Toe Computer Systems Lab 2005 By Rachel Miller.
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.
Cilk Pousse James Process CS534. Overview Introduction to Pousse Searching Evaluation Function Move Ordering Conclusion.
CSCI 4310 Lecture 6: Adversarial Tree Search. Book Winston Chapter 6.
For Friday Finish chapter 6 Program 1, Milestone 1 due.
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.
Outline Intro to Representation and Heuristic Search Machine Learning (Clustering) and My Research.
Adversarial Search Chapter Games vs. search problems "Unpredictable" opponent  specifying a move for every possible opponent reply Time limits.
Quoridor and Artificial Intelligence
Learning to Play the Game of GO Lei Li Computer Science Department May 3, 2007.
ARTIFICIAL INTELLIGENCE (CS 461D) Princess Nora University Faculty of Computer & Information Systems.
CompSci Backtracking, Search, Heuristics l Many problems require an approach similar to solving a maze ä Certain mazes can be solved using the.
CPS Backtracking, Search, Heuristics l Many problems require an approach similar to solving a maze ä Certain mazes can be solved using the “right-hand”
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.
1 Chapter 6 Game Playing. 2 Chapter 6 Contents l Game Trees l Assumptions l Static evaluation functions l Searching game trees l Minimax l Bounded lookahead.
Pengantar Kecerdasan Buatan
Dakota Ewigman Jacob Zimmermann
Heuristic AI for XiangQi
Chapter 6 : Game Search 게임 탐색 (Adversarial Search)
Announcements Homework 3 due today (grace period through Friday)
Kevin Mason Michael Suggs
NIM - a two person game n objects are in one pile
Search and Game Playing
Minimax strategies, alpha beta pruning
Game Playing Fifth Lecture 2019/4/11.
Minimax strategies, alpha beta pruning
CS51A David Kauchak Spring 2019
Backtracking, Search, Heuristics
Unit II Game Playing.
Minimax Trees: Utility Evaluation, Tree Evaluation, Pruning
Presentation transcript:

Hex Combinatorial Search in Game Strategy by Brandon Risberg May 2006Menlo School

Background Where I got the idea: I first got the idea for “Hex” when we played it during an Algebra 2 class period with Mr. Squilante. I got the idea to make an artificial intelligence for the game when I went to see the “Mastering the Game” exhibit about computer chess at the Computer History Museum.

Introduction “Hex” is a board game defined by the mathematician Piet Hein It is a two player game played on a diagonal board.

Rules Both players trade off claiming “hexes” on the game board. The goal is to create a chain of hexes from your side to your other side.

Java Game Programming Used nested “Swing” components and graphics. Imported image files created in Photoshop. Used multiple threads to handle animation. Implemented a recursive method to detect a winning chain. Added help files and windows for ease of use. Created an opening splash dialog.

A.I. Algorithms Mini-Max Generate a move tree. Evaluate each position in tree. Select best move at each level: Minimize score on opponent move. Maximize score on own move.

Example Search Tree

A.I. Algorithms (con’t) Alpha – Beta pruning Pruning branches of the search tree that will yield less favorable results. Improves search speed; does not improve quality of moves. Heuristics or “Rules of Thumb” Guidelines that will help constrain the search.

Examples of Heuristics In real life: Menlo registrar must assign students to class sections. This is a complex search problem. Heuristic: make the critical assignments first. Senior English sections (workshops) cannot be interchanged, so begin with these. Freshman English classes are interchangeable so do these last.

Examples of Heuristics In board games: In chess, keeping your pieces in the center will usually be a stronger position. “A knight on the rim is dim” In Hex, a longer chain of connected hexes will usually be a stronger position. This logic is typically built into the static evaluator.

Care to try a game?