COMP-424: Artificial intelligence. Lecture 7: Game Playing
|
|
- Barrie McCormick
- 7 years ago
- Views:
Transcription
1 COMP Artificial Intelligence Lecture 7: Game Playing Instructor: Joelle Pineau (jpineau@cs.mcgill.ca) Class web page: Unless otherwise noted, all material posted for this course are copyright of the instructor, and cannot be reused or reposted without the i nstructor s written permission. Quick recap Standard assumptions (except for the last lecture) Discrete (vs continuous) state space. Deterministic (vs stochastic) environment. Observable (vs unobservable) environment. Static (vs changing) environment. A single AI agent. 2 1
2 Overview of today s lecture Adversarial search => games with 2 players Minimax search Evaluation functions Alpha-beta pruning State-of-the-art game playing programs 3 Game playing One of the oldest, most well-studied domains in AI! Why? People like them! And are good at playing them. Many games are hard: State spaces are very large and complicated. E.g. Chess has branching factor of 35, games go to 50 moves per player, so nodes in search tree! Sometimes there is stochasticity and imperfect information. Real-time constraints (e.g. fixed amount of time between moves). Clear, clean description of the environment. Easy performance indicator. Winning is everything! 4 2
3 Types of games Perfect vs Imperfect information Perfect: See the exact state of the game Imperfect: Information is hidden 5 Types of games Perfect vs Imperfect information Perfect: See the exact state of the game Imperfect: Information is hidden Deterministic vs Stochastic Deterministic: Change in state is fully determined by player move. Stochastic: Change in state is partially determined by chance. 6 3
4 What type of game? Yes Perfect information? No Deterministic Checkers Othello Chess Go Mastermind Stochastic Backgammon Scrabble Bridge Poker Most card games 7 Game playing as search Consider 2-player, perfect information, deterministic games. Can we formulate them as a search problem? State: Operators: Goal: Cost: We want to find a strategy (i.e. way of picking moves) that maximizes utility (i.e. max prob. of win or min cost). 8 4
5 Game playing as search Consider 2-player, perfect information, deterministic games. Can we formulate them as a search problem? State: State of the board, player turn Operators: Legal moves Goal: States in which the game is won/lost/drawn Cost: We want to find a strategy (i.e. way of picking moves) that maximizes utility (i.e. max prob. of win or min cost). 9 Game playing as search Consider 2-player, perfect information, deterministic games. Can we formulate them as a search problem? State: State of the board, player turn Operators: Legal moves Goal: States in which the game is won/lost/drawn Cost: Simple case: +1 for winning, -1 for loosing, 0 for a draw. More complex cases: points won, money, We want to find a strategy (i.e. way of picking moves) that maximizes utility (i.e. max prob. of win or min cost). 10 5
6 Game search challenge Not quite the same as simple searching. There is an opponent! The opponent is malicious! Opponent is trying to make things good for itself, and bad for us. We have to simulate the opponent s decisions. Key idea: Define a max player (who wants to maximize its utility) And a min player (who wants to minimize it.) 11 Example: Game Tree for Tic-Tac-Toe 12 6
7 Minimax search Expand complete search tree, until terminal states have been reached and their utilities computed. Go back up from leaves towards the current state of the game. At each min node: backup the worst value among the children. At each max node: backup the best value among the children. 13 Minimax search Expand complete search tree, until terminal states have been reached and their utilities computed. Go back up from leaves towards the current state of the game. At each min node: backup the worst value among the children. At each max node: backup the best value among the children. 14 7
8 Minimax Algorithm Operator MinimaxDecision() For each legal operator o: Apply the operator o and obtain the new game state s. Value[o] = MinimaxValue(s) Return the operator with the highest value Value[o]. Double MinimaxValue(s) If isterminal(s), return Utility(s). For each state s in Successors(s) Let Value(s ) = MinimaxValue(s ). If Max is to move in s, return max s Value(s ). If Min is to move in s, return min s Value(s ). 15 Properties of Minimax search Complete? Optimal? Time complexity? Space complexity? 16 8
9 Properties of Minimax search Complete? If the game tree is finite. Optimal? Against an optimal opponent (otherwise don t know.) Time complexity? O(b m ) Space complexity? O(bm) if we use DFS Why not use Minimax to solve chess? In chess: b 35, m 100, so an exact solution is impossible! 17 Coping with resource limitations Suppose we have 100 seconds to make a move, and we can search 10 4 nodes per second. Can only search 10 6 nodes. (Or even fewer, if we spend time deciding which nodes to search.) Possible approach: Use a cutoff test (e.g. based on depth limit) Use an evaluation function for the nodes where we cutoff the search. Need to think about real-time search. 18 9
10 Evaluation functions An evaluation function v(s) represents the goodness of a board state (e.g. chance of winning from that position). If the features of the board can be evaluated independently, use a weighted linear function: v(s) = w 1 f 1 (s) + w 2 f 2 (s) + + w n f n (s) (where s is board state) This function can be given by the designer or learned from experience. 19 Example: Chess Black to move White slightly better White to move Black winning Linear evaluation function: v(s) = w 1 f 1 (s) + w 2 f 2 (s) w 1 = 9 f 1 (s) = (# white queens) - (# black queens) w 2 = 3 f 2 (s) = (# white pawns) - (# black pawns) 20 10
11 How precise should the evaluation fn be? Evaluation function is only approximate, and is usually better if we are close to the end of the game. Move chosen is the same if we apply a monotonic transformation to the evaluation function. 21 How precise should the evaluation fn be? Evaluation function is only approximate, and is usually better if we are close to the end of the game. Move chosen is the same if we apply a monotonic transformation to the evaluation function. Only the order of the numbers matter: payoffs in deterministic games act as an ordinal utility function
12 Minimax with an evaluation function Use evaluation function to evaluate non-terminal nodes. Helps us make a decision without searching until the end of the game. Minimax cutoff algorithm: Same as standard Minimax, except stop at some maximum depth m and use the evaluation function on those nodes. 23 Minimax cutoff in Chess How many moves ahead can we search in Chess? >> 10 6 nodes with b=35 allows us to search 4 moves ahead! Is this useful? 4-moves ahead novice player 8-moves ahead human master, typical PC 12-moves ahead Deep Blue, Kasparov Key idea: Search few lines of play, but search them deeply.need pruning! 24 12
13 α-β Pruning example α-β Pruning example
14 α-β Pruning example X X 27 α-β Pruning example X X 28 14
15 α-β Pruning example X X 29 α-β Pruning example X X
16 α-β Pruning Simple idea: if a path looks worse than what we already have, discard it. If the best move at a node cannot change (regardless of what we would find by searching) then no need to search further! Algorithm is like Minimax, but keeps track of best leaf value for our player (α) and best one for the opponent (β). Standard technique for deterministic, perfect information games. 31 α-β algorithm Instead of MinimaxValue, we have two functions. Double MaxValue(s,α,β) If cutoff(s), return Evaluation(s). For each state s in Successors(s) Let α = max { α, MinValues(s,α,β) }. If α β, return β. Return α. Double MinValue(s,α,β) If cutoff(s), return Evaluation(s). For each state s in Successors(s) Let β = min { β, MinValues(s,α,β) }. If α β, return α. Return β
17 Example 33 Example 34 17
18 Example 35 Example 36 18
19 Example 37 Example 38 19
20 Example 39 Example 40 20
21 Example 41 Example 42 21
22 Example 43 Important lessons of α-β pruning Pruning can greatly increase efficiency!! Pruning does not affect the final result. Best moves are same as returned by Minimax (assuming the opponent is optimal and the evaluation function is correct.) 44 22
23 Important lessons of α-β pruning Pruning can greatly increase efficiency!! Pruning does not affect the final result. Best moves are same as returned by Minimax (assuming the opponent is optimal and the evaluation function is correct.) Order matters for search efficiency! 45 α-β Pruning example X X On the middle branch, nodes were ordered well and we pruned a lot. On the right branch, the order was bad and there was no pruning
24 Important lessons of α-β pruning Pruning can greatly increase efficiency!! Pruning does not affect the final result. Best moves are same as returned by Minimax (assuming the opponent is optimal and the evaluation function is correct.) Order matters for search efficiency! The α-β pruning demonstrates the value of reasoning about which computations are important! 47 Efficiency of α-β pruning With bad move ordering, time complexity is O(b m ) Means nothing was pruned. With perfect ordering, time complexity is O(b m/2 ) Means double the search depth, for same resources. In chess: this is difference between novice and expert player. On average, O(b 3m/4 ), if we expect to find the max/min after b/2 expansions. Randomizing the move ordering can achieve the average case. Evaluation function can be used to order the nodes
25 Forward pruning Simple idea (for domains with large branching factor): Only explore n best moves for current state (according to the evaluation function). Unlike α-β pruning, this can lead to sub-optimal solution. Can be very efficient with a good evaluation function. 49 Drawbacks of α-β If the branching factor is really big, search depth is still too limited. E.g. in Go, where branching factor b~300. More on this next time! Optimal play is guaranteed against an optimal opponent if search proceeds to the end of the game. But the opponent may not be optimal! If heuristics are used, this assumption turns into the opponent playing optimally according to the same heuristic function as the player. This is a very big assumption! What to do if the opponent plays very differently? 50 25
26 Chinook (Schaeffer et al., U. of Alberta) Best checkers player (since 1990 s). Plain α-β search, performed on standard PCs. Evaluation function based on expert features of the board. Opening database. HUGE endgame database! Chinook has perfect information for all checkers positions involving 8 or fewer pieces on the board (a total of 443,748,401,247 positions). Only a few moves in middle of the game are actually searched. They have now done an exhaustive search for checkers, and through optimal play can force at least a draw. 51 Deep Blue (IBM) Specialized chess processor, special-purpose memory architecture. Very sophisticated evaluation function (expert features, tuned weights). Database of standard openings/closings. Uses a version of α-β pruning (with undisclosed improvements) Can search up to 40-deep in some branches. Can search over 200 billion positions per second! Overall, an impressive engineering feat. Now, several computer programs running on regular hardware are on par with human champions (e.g. Fritz)
27 53 Some possible strategies for AI in games Design a compact state representation. Search using iterative deepening to get anytime real-time play. Use alpha-beta pruning with an evaluation function. Order moves using the evaluation function. Tune the evaluation function using domain knowledge, trial-and-error, learning. Searching deeper is often more important than having a good evaluation function. Consider using different strategies for opening, middle and endgame. Use randomization to break ties. Consider that the opponent might not be optimal. It is crucial to decide where to spend the computation effort! 54 27
28 Summary Understand the different types of games. Understand Minimax and alpha-beta pruning, what they compute, how to implement, and common methods to make them work (e.g. node ordering). Understand the role of the evaluation function. Be familiar with state-of-the-art for solving some common games
Game playing. Chapter 6. Chapter 6 1
Game playing Chapter 6 Chapter 6 1 Outline Games Perfect play minimax decisions α β pruning Resource limits and approximate evaluation Games of chance Games of imperfect information Chapter 6 2 Games vs.
More informationChess Algorithms Theory and Practice. Rune Djurhuus Chess Grandmaster runed@ifi.uio.no / runedj@microsoft.com October 3, 2012
Chess Algorithms Theory and Practice Rune Djurhuus Chess Grandmaster runed@ifi.uio.no / runedj@microsoft.com October 3, 2012 1 Content Complexity of a chess game History of computer chess Search trees
More informationChess Algorithms Theory and Practice. Rune Djurhuus Chess Grandmaster runed@ifi.uio.no / runedj@microsoft.com September 23, 2014
Chess Algorithms Theory and Practice Rune Djurhuus Chess Grandmaster runed@ifi.uio.no / runedj@microsoft.com September 23, 2014 1 Content Complexity of a chess game Solving chess, is it a myth? History
More informationGame Playing in the Real World. Next time: Knowledge Representation Reading: Chapter 7.1-7.3
Game Playing in the Real World Next time: Knowledge Representation Reading: Chapter 7.1-7.3 1 What matters? Speed? Knowledge? Intelligence? (And what counts as intelligence?) Human vs. machine characteristics
More information10. Machine Learning in Games
Machine Learning and Data Mining 10. Machine Learning in Games Luc De Raedt Thanks to Johannes Fuernkranz for his slides Contents Game playing What can machine learning do? What is (still) hard? Various
More informationLaboratory work in AI: First steps in Poker Playing Agents and Opponent Modeling
Laboratory work in AI: First steps in Poker Playing Agents and Opponent Modeling Avram Golbert 01574669 agolbert@gmail.com Abstract: While Artificial Intelligence research has shown great success in deterministic
More informationRoulette Wheel Selection Game Player
Macalester College DigitalCommons@Macalester College Honors Projects Mathematics, Statistics, and Computer Science 5-1-2013 Roulette Wheel Selection Game Player Scott Tong Macalester College, stong101@gmail.com
More informationCS91.543 MidTerm Exam 4/1/2004 Name: KEY. Page Max Score 1 18 2 11 3 30 4 15 5 45 6 20 Total 139
CS91.543 MidTerm Exam 4/1/2004 Name: KEY Page Max Score 1 18 2 11 3 30 4 15 5 45 6 20 Total 139 % INTRODUCTION, AI HISTORY AND AGENTS 1. [4 pts. ea.] Briefly describe the following important AI programs.
More informationMeasuring the Performance of an Agent
25 Measuring the Performance of an Agent The rational agent that we are aiming at should be successful in the task it is performing To assess the success we need to have a performance measure What is rational
More informationAcknowledgements I would like to thank both Dr. Carsten Furhmann, and Dr. Daniel Richardson for providing me with wonderful supervision throughout my
Abstract Game orientated application programming interfaces (API), built using Java, are intended to ease the development of Java games, on multiple platforms. Existing Java game APIs, tend to focus on
More informationFIRST EXPERIMENTAL RESULTS OF PROBCUT APPLIED TO CHESS
FIRST EXPERIMENTAL RESULTS OF PROBCUT APPLIED TO CHESS A.X. Jiang Department of Computer Science, University of British Columbia, Vancouver, Canada albertjiang@yahoo.com M. Buro Department of Computing
More informationMonte-Carlo Methods. Timo Nolle
Monte-Carlo Methods Timo Nolle Outline Minimax Expected Outcome Monte-Carlo Monte-Carlo Simulation Monte-Carlo Tree Search UCT AMAF RAVE MC-RAVE UCT-RAVE Playing Games Go, Bridge, Scrabble Problems with
More informationCreating a NL Texas Hold em Bot
Creating a NL Texas Hold em Bot Introduction Poker is an easy game to learn by very tough to master. One of the things that is hard to do is controlling emotions. Due to frustration, many have made the
More informationSearch methods motivation 1
Suppose you are an independent software developer, and your software package Windows Defeater R, widely available on sourceforge under a GNU GPL license, is getting an international attention and acclaim.
More informationMonte Carlo Tree Search and Opponent Modeling through Player Clustering in no-limit Texas Hold em Poker
Monte Carlo Tree Search and Opponent Modeling through Player Clustering in no-limit Texas Hold em Poker A.A.J. van der Kleij August 2010 Master thesis Artificial Intelligence University of Groningen, The
More informationDecision Making under Uncertainty
6.825 Techniques in Artificial Intelligence Decision Making under Uncertainty How to make one decision in the face of uncertainty Lecture 19 1 In the next two lectures, we ll look at the question of how
More informationMastering Quoridor. Lisa Glendenning THESIS. Submitted in Partial Fulfillment of the Requirements for the Degree of
Mastering Quoridor by Lisa Glendenning THESIS Submitted in Partial Fulfillment of the Requirements for the Degree of Bachelor of Science Computer Science The University of New Mexico Albuquerque, New Mexico
More information10/13/11 Solution: Minimax with Alpha-Beta Pruning and Progressive Deepening
10/1/11 Solution: Minimax with Alpha-Beta Pruning and Progressive Deepening When answering the question in Parts C.1 and C. below, assume you have already applied minimax with alpha-beta pruning and progressive
More informationAI: A Modern Approach, Chpts. 3-4 Russell and Norvig
AI: A Modern Approach, Chpts. 3-4 Russell and Norvig Sequential Decision Making in Robotics CS 599 Geoffrey Hollinger and Gaurav Sukhatme (Some slide content from Stuart Russell and HweeTou Ng) Spring,
More informationECON 459 Game Theory. Lecture Notes Auctions. Luca Anderlini Spring 2015
ECON 459 Game Theory Lecture Notes Auctions Luca Anderlini Spring 2015 These notes have been used before. If you can still spot any errors or have any suggestions for improvement, please let me know. 1
More informationUnderstanding Proactive vs. Reactive Methods for Fighting Spam. June 2003
Understanding Proactive vs. Reactive Methods for Fighting Spam June 2003 Introduction Intent-Based Filtering represents a true technological breakthrough in the proper identification of unwanted junk email,
More informationUsing Probabilistic Knowledge and Simulation to Play Poker
Using Probabilistic Knowledge and Simulation to Play Poker Darse Billings, Lourdes Peña, Jonathan Schaeffer, Duane Szafron Department of Computing Science, University of Alberta Edmonton, Alberta Canada
More informationOptimization in ICT and Physical Systems
27. OKTOBER 2010 in ICT and Physical Systems @ Aarhus University, Course outline, formal stuff Prerequisite Lectures Homework Textbook, Homepage and CampusNet, http://kurser.iha.dk/ee-ict-master/tiopti/
More informationMinimax Strategies. Minimax Strategies. Zero Sum Games. Why Zero Sum Games? An Example. An Example
Everyone who has studied a game like poker knows the importance of mixing strategies With a bad hand, you often fold But you must bluff sometimes Lectures in Microeconomics-Charles W Upton Zero Sum Games
More informationCS104: Data Structures and Object-Oriented Design (Fall 2013) October 24, 2013: Priority Queues Scribes: CS 104 Teaching Team
CS104: Data Structures and Object-Oriented Design (Fall 2013) October 24, 2013: Priority Queues Scribes: CS 104 Teaching Team Lecture Summary In this lecture, we learned about the ADT Priority Queue. A
More informationRafael Witten Yuze Huang Haithem Turki. Playing Strong Poker. 1. Why Poker?
Rafael Witten Yuze Huang Haithem Turki Playing Strong Poker 1. Why Poker? Chess, checkers and Othello have been conquered by machine learning - chess computers are vastly superior to humans and checkers
More informationBPM: Chess vs. Checkers
BPM: Chess vs. Checkers Jonathon Struthers Introducing the Games Business relies upon IT systems to perform many of its tasks. While many times systems don t really do what the business wants them to do,
More information6.231 Dynamic Programming and Stochastic Control Fall 2008
MIT OpenCourseWare http://ocw.mit.edu 6.231 Dynamic Programming and Stochastic Control Fall 2008 For information about citing these materials or our Terms of Use, visit: http://ocw.mit.edu/terms. 6.231
More informationLoad Balancing. Load Balancing 1 / 24
Load Balancing Backtracking, branch & bound and alpha-beta pruning: how to assign work to idle processes without much communication? Additionally for alpha-beta pruning: implementing the young-brothers-wait
More informationSequential lmove Games. Using Backward Induction (Rollback) to Find Equilibrium
Sequential lmove Games Using Backward Induction (Rollback) to Find Equilibrium Sequential Move Class Game: Century Mark Played by fixed pairs of players taking turns. At each turn, each player chooses
More informationArtificial Intelligence Beating Human Opponents in Poker
Artificial Intelligence Beating Human Opponents in Poker Stephen Bozak University of Rochester Independent Research Project May 8, 26 Abstract In the popular Poker game, Texas Hold Em, there are never
More informationMaking Decisions in Chess
Making Decisions in Chess How can I find the best move in a position? This is a question that every chess player would like to have answered. Playing the best move in all positions would make someone invincible.
More information1 Representation of Games. Kerschbamer: Commitment and Information in Games
1 epresentation of Games Kerschbamer: Commitment and Information in Games Game-Theoretic Description of Interactive Decision Situations This lecture deals with the process of translating an informal description
More informationGeneralized Widening
Generalized Widening Tristan Cazenave Abstract. We present a new threat based search algorithm that outperforms other threat based search algorithms and selective knowledge-based for open life and death
More informationUniversity of Alberta. Library Release Form
University of Alberta Library Release Form Name of Author: Michael Bradley Johanson Title of Thesis: Robust Strategies and Counter-Strategies: Building a Champion Level Computer Poker Player Degree: Master
More informationDynamic programming formulation
1.24 Lecture 14 Dynamic programming: Job scheduling Dynamic programming formulation To formulate a problem as a dynamic program: Sort by a criterion that will allow infeasible combinations to be eli minated
More informationCSC384 Intro to Artificial Intelligence
CSC384 Intro to Artificial Intelligence What is Artificial Intelligence? What is Intelligence? Are these Intelligent? CSC384, University of Toronto 3 What is Intelligence? Webster says: The capacity to
More informationWe employed reinforcement learning, with a goal of maximizing the expected value. Our bot learns to play better by repeated training against itself.
Date: 12/14/07 Project Members: Elizabeth Lingg Alec Go Bharadwaj Srinivasan Title: Machine Learning Applied to Texas Hold 'Em Poker Introduction Part I For the first part of our project, we created a
More informationIntroduction Solvability Rules Computer Solution Implementation. Connect Four. March 9, 2010. Connect Four
March 9, 2010 is a tic-tac-toe like game in which two players drop discs into a 7x6 board. The first player to get four in a row (either vertically, horizontally, or diagonally) wins. The game was first
More informationCourse Outline Department of Computing Science Faculty of Science. COMP 3710-3 Applied Artificial Intelligence (3,1,0) Fall 2015
Course Outline Department of Computing Science Faculty of Science COMP 710 - Applied Artificial Intelligence (,1,0) Fall 2015 Instructor: Office: Phone/Voice Mail: E-Mail: Course Description : Students
More informationThe Cross-Platform Implementation
The Cross-Platform Implementation Of Draughts Game Valery Kirkizh State University of Aerospace Instrumentation Saint-Petersburg, Russia Introduction Age-old Russian game Draughts; Cross-platform implementation,
More informationEquilibrium computation: Part 1
Equilibrium computation: Part 1 Nicola Gatti 1 Troels Bjerre Sorensen 2 1 Politecnico di Milano, Italy 2 Duke University, USA Nicola Gatti and Troels Bjerre Sørensen ( Politecnico di Milano, Italy, Equilibrium
More informationDecision Trees and Networks
Lecture 21: Uncertainty 6 Today s Lecture Victor R. Lesser CMPSCI 683 Fall 2010 Decision Trees and Networks Decision Trees A decision tree is an explicit representation of all the possible scenarios from
More informationMath 728 Lesson Plan
Math 728 Lesson Plan Tatsiana Maskalevich January 27, 2011 Topic: Probability involving sampling without replacement and dependent trials. Grade Level: 8-12 Objective: Compute the probability of winning
More informationVideo Poker in South Carolina: A Mathematical Study
Video Poker in South Carolina: A Mathematical Study by Joel V. Brawley and Todd D. Mateer Since its debut in South Carolina in 1986, video poker has become a game of great popularity as well as a game
More information6.207/14.15: Networks Lecture 15: Repeated Games and Cooperation
6.207/14.15: Networks Lecture 15: Repeated Games and Cooperation Daron Acemoglu and Asu Ozdaglar MIT November 2, 2009 1 Introduction Outline The problem of cooperation Finitely-repeated prisoner s dilemma
More informationCOMP 590: Artificial Intelligence
COMP 590: Artificial Intelligence Today Course overview What is AI? Examples of AI today Who is this course for? An introductory survey of AI techniques for students who have not previously had an exposure
More informationOne pile, two pile, three piles
CHAPTER 4 One pile, two pile, three piles 1. One pile Rules: One pile is a two-player game. Place a small handful of stones in the middle. At every turn, the player decided whether to take one, two, or
More informationCSE 517A MACHINE LEARNING INTRODUCTION
CSE 517A MACHINE LEARNING INTRODUCTION Spring 2016 Marion Neumann Contents in these slides may be subject to copyright. Some materials are adopted from Killian Weinberger. Thanks, Killian! Machine Learning
More informationTreemaps for Search-Tree Visualization
Treemaps for Search-Tree Visualization Rémi Coulom July, 2002 Abstract Large Alpha-Beta search trees generated by game-playing programs are hard to represent graphically. This paper describes how treemaps
More informationReinforcement learning in board games.
Reinforcement learning in board games. Imran Ghory May 4, 2004 Abstract This project investigates the application of the TD(λ) reinforcement learning algorithm and neural networks to the problem of producing
More informationOn the Laziness of Monte-Carlo Game Tree Search in Non-tight Situations
Technical Report On the Laziness of Monte-Carlo Game Tree Search in Non-tight Situations September 8, 2008 Ingo Althofer Institute of Applied Mathematics Faculty of Mathematics and Computer Science Friedrich-Schiller
More informationClock Arithmetic and Modular Systems Clock Arithmetic The introduction to Chapter 4 described a mathematical system
CHAPTER Number Theory FIGURE FIGURE FIGURE Plus hours Plus hours Plus hours + = + = + = FIGURE. Clock Arithmetic and Modular Systems Clock Arithmetic The introduction to Chapter described a mathematical
More informationBackward Induction and Subgame Perfection
Backward Induction and Subgame Perfection In extensive-form games, we can have a Nash equilibrium profile of strategies where player 2 s strategy is a best response to player 1 s strategy, but where she
More informationMoral Hazard. Itay Goldstein. Wharton School, University of Pennsylvania
Moral Hazard Itay Goldstein Wharton School, University of Pennsylvania 1 Principal-Agent Problem Basic problem in corporate finance: separation of ownership and control: o The owners of the firm are typically
More informationPrescriptive Analytics. A business guide
Prescriptive Analytics A business guide May 2014 Contents 3 The Business Value of Prescriptive Analytics 4 What is Prescriptive Analytics? 6 Prescriptive Analytics Methods 7 Integration 8 Business Applications
More informationTD-Gammon, A Self-Teaching Backgammon Program, Achieves Master-Level Play
TD-Gammon, A Self-Teaching Backgammon Program, Achieves Master-Level Play Gerald Tesauro IBM Thomas J. Watson Research Center P. O. Box 704 Yorktown Heights, NY 10598 (tesauro@watson.ibm.com) Abstract.
More informationThe UCT Algorithm Applied to Games with Imperfect Information
Otto-von-Guericke-Universität Magdeburg Fakultät für Informatik Institut für Simulation und Graphik Diploma Thesis The UCT Algorithm Applied to Games with Imperfect Information Author: Jan Schäfer July
More informationSimulation and Risk Analysis
Simulation and Risk Analysis Using Analytic Solver Platform REVIEW BASED ON MANAGEMENT SCIENCE What We ll Cover Today Introduction Frontline Systems Session Ι Beta Training Program Goals Overview of Analytic
More informationCHAPTER 18 Programming Your App to Make Decisions: Conditional Blocks
CHAPTER 18 Programming Your App to Make Decisions: Conditional Blocks Figure 18-1. Computers, even small ones like the phone in your pocket, are good at performing millions of operations in a single second.
More information20-30 minutes, can be used within a longer activity
Locked-in 1 Age group successfully used with: Abilities assumed: Time: Size of group: 11 adult None 20-30 minutes, can be used within a longer activity anything from 2 to hundreds Focus What is an algorithm?
More information15-466 Computer Game Programming Intelligence I: Basic Decision-Making Mechanisms
15-466 Computer Game Programming Intelligence I: Basic Decision-Making Mechanisms Maxim Likhachev Robotics Institute Carnegie Mellon University AI Architecture from Artificial Intelligence for Games by
More informationCSE 326: Data Structures B-Trees and B+ Trees
Announcements (4//08) CSE 26: Data Structures B-Trees and B+ Trees Brian Curless Spring 2008 Midterm on Friday Special office hour: 4:-5: Thursday in Jaech Gallery (6 th floor of CSE building) This is
More informationGame theory and AI: a unified approach to poker games
Game theory and AI: a unified approach to poker games Thesis for graduation as Master of Artificial Intelligence University of Amsterdam Frans Oliehoek 2 September 2005 ii Abstract This thesis focuses
More informationA Knowledge-based Approach of Connect-Four
A Knowledge-based Approach of Connect-Four The Game is Solved: White Wins Victor Allis Department of Mathematics and Computer Science Vrije Universiteit Amsterdam, The Netherlands Masters Thesis, October
More informationHow I won the Chess Ratings: Elo vs the rest of the world Competition
How I won the Chess Ratings: Elo vs the rest of the world Competition Yannis Sismanis November 2010 Abstract This article discusses in detail the rating system that won the kaggle competition Chess Ratings:
More informationLinear Programming: Chapter 11 Game Theory
Linear Programming: Chapter 11 Game Theory Robert J. Vanderbei October 17, 2007 Operations Research and Financial Engineering Princeton University Princeton, NJ 08544 http://www.princeton.edu/ rvdb Rock-Paper-Scissors
More informationIntent Based Filtering: A Proactive Approach Towards Fighting Spam
Intent Based Filtering: A Proactive Approach Towards Fighting Spam By Priyanka Agrawal Abstract-The cyber security landscape has changed considerably over the past few years. Since 2003, while traditional
More informationOutline. NP-completeness. When is a problem easy? When is a problem hard? Today. Euler Circuits
Outline NP-completeness Examples of Easy vs. Hard problems Euler circuit vs. Hamiltonian circuit Shortest Path vs. Longest Path 2-pairs sum vs. general Subset Sum Reducing one problem to another Clique
More informationEnhancing Artificial Intelligence in Games by Learning the Opponent s Playing Style
Enhancing Artificial Intelligence in Games by Learning the Opponent s Playing Style Fabio Aiolli and Claudio Enrico Palazzi Abstract As virtual environments are becoming graphically nearly realistic, the
More informationBayesian Nash Equilibrium
. Bayesian Nash Equilibrium . In the final two weeks: Goals Understand what a game of incomplete information (Bayesian game) is Understand how to model static Bayesian games Be able to apply Bayes Nash
More informationLab 11. Simulations. The Concept
Lab 11 Simulations In this lab you ll learn how to create simulations to provide approximate answers to probability questions. We ll make use of a particular kind of structure, called a box model, that
More informationAlok Gupta. Dmitry Zhdanov
RESEARCH ARTICLE GROWTH AND SUSTAINABILITY OF MANAGED SECURITY SERVICES NETWORKS: AN ECONOMIC PERSPECTIVE Alok Gupta Department of Information and Decision Sciences, Carlson School of Management, University
More informationWhat is Artificial Intelligence?
CSE 3401: Intro to Artificial Intelligence & Logic Programming Introduction Required Readings: Russell & Norvig Chapters 1 & 2. Lecture slides adapted from those of Fahiem Bacchus. 1 What is AI? What is
More informationMAN VS. MACHINE. How IBM Built a Jeopardy! Champion. 15.071x The Analytics Edge
MAN VS. MACHINE How IBM Built a Jeopardy! Champion 15.071x The Analytics Edge A Grand Challenge In 2004, IBM Vice President Charles Lickel and coworkers were having dinner at a restaurant All of a sudden,
More informationLecture 3. Linear Programming. 3B1B Optimization Michaelmas 2015 A. Zisserman. Extreme solutions. Simplex method. Interior point method
Lecture 3 3B1B Optimization Michaelmas 2015 A. Zisserman Linear Programming Extreme solutions Simplex method Interior point method Integer programming and relaxation The Optimization Tree Linear Programming
More informationChapter 11 Monte Carlo Simulation
Chapter 11 Monte Carlo Simulation 11.1 Introduction The basic idea of simulation is to build an experimental device, or simulator, that will act like (simulate) the system of interest in certain important
More informationLearning Agents: Introduction
Learning Agents: Introduction S Luz luzs@cs.tcd.ie October 22, 2013 Learning in agent architectures Performance standard representation Critic Agent perception rewards/ instruction Perception Learner Goals
More informationBest-First and Depth-First Minimax Search in Practice
Best-First and Depth-First Minimax Search in Practice Aske Plaat, Erasmus University, plaat@theory.lcs.mit.edu Jonathan Schaeffer, University of Alberta, jonathan@cs.ualberta.ca Wim Pijls, Erasmus University,
More informationIntrusion Detection: Game Theory, Stochastic Processes and Data Mining
Intrusion Detection: Game Theory, Stochastic Processes and Data Mining Joseph Spring 7COM1028 Secure Systems Programming 1 Discussion Points Introduction Firewalls Intrusion Detection Schemes Models Stochastic
More informationHow to Win Texas Hold em Poker
How to Win Texas Hold em Poker Richard Mealing Machine Learning and Optimisation Group School of Computer Science University of Manchester / 44 How to Play Texas Hold em Poker Deal private cards per player
More informationFind-The-Number. 1 Find-The-Number With Comps
Find-The-Number 1 Find-The-Number With Comps Consider the following two-person game, which we call Find-The-Number with Comps. Player A (for answerer) has a number x between 1 and 1000. Player Q (for questioner)
More informationSIMS 255 Foundations of Software Design. Complexity and NP-completeness
SIMS 255 Foundations of Software Design Complexity and NP-completeness Matt Welsh November 29, 2001 mdw@cs.berkeley.edu 1 Outline Complexity of algorithms Space and time complexity ``Big O'' notation Complexity
More informationSYSM 6304: Risk and Decision Analysis Lecture 5: Methods of Risk Analysis
SYSM 6304: Risk and Decision Analysis Lecture 5: Methods of Risk Analysis M. Vidyasagar Cecil & Ida Green Chair The University of Texas at Dallas Email: M.Vidyasagar@utdallas.edu October 17, 2015 Outline
More informationMotivation. Motivation. Can a software agent learn to play Backgammon by itself? Machine Learning. Reinforcement Learning
Motivation Machine Learning Can a software agent learn to play Backgammon by itself? Reinforcement Learning Prof. Dr. Martin Riedmiller AG Maschinelles Lernen und Natürlichsprachliche Systeme Institut
More informationQuotes from Object-Oriented Software Construction
Quotes from Object-Oriented Software Construction Bertrand Meyer Prentice-Hall, 1988 Preface, p. xiv We study the object-oriented approach as a set of principles, methods and tools which can be instrumental
More informationChapter 2: Intelligent Agents
Chapter 2: Intelligent Agents Outline Last class, introduced AI and rational agent Today s class, focus on intelligent agents Agent and environments Nature of environments influences agent design Basic
More informationExpected Value. 24 February 2014. Expected Value 24 February 2014 1/19
Expected Value 24 February 2014 Expected Value 24 February 2014 1/19 This week we discuss the notion of expected value and how it applies to probability situations, including the various New Mexico Lottery
More information0.0.2 Pareto Efficiency (Sec. 4, Ch. 1 of text)
September 2 Exercises: Problem 2 (p. 21) Efficiency: p. 28-29: 1, 4, 5, 6 0.0.2 Pareto Efficiency (Sec. 4, Ch. 1 of text) We discuss here a notion of efficiency that is rooted in the individual preferences
More informationA Least-Certainty Heuristic for Selective Search 1
A Least-Certainty Heuristic for Selective Search 1 Paul E. Utgoff utgoff@cs.umass.edu Department of Computer and Information Science, University of Massachusetts, Amherst, MA 01003 Richard P. Cochran cochran@cs.umass.edu
More informationClassification/Decision Trees (II)
Classification/Decision Trees (II) Department of Statistics The Pennsylvania State University Email: jiali@stat.psu.edu Right Sized Trees Let the expected misclassification rate of a tree T be R (T ).
More informationAdaptive play in Texas Hold em Poker
Adaptive play in Texas Hold em Poker Raphaël Maîtrepierre and Jérémie Mary and Rémi Munos 1 Abstract. We present a Texas Hold em poker player for limit headsup games. Our bot is designed to adapt automatically
More informationLecture 1: Introduction to Reinforcement Learning
Lecture 1: Introduction to Reinforcement Learning David Silver Outline 1 Admin 2 About Reinforcement Learning 3 The Reinforcement Learning Problem 4 Inside An RL Agent 5 Problems within Reinforcement Learning
More informationResearch Directions in Computer Game AI. Rafael Cabredo
Research Directions in Computer Game AI Rafael Cabredo Your speaker Rafael Cabredo Faculty at De La Salle University Research interests: AI in Computer Games Graphics Game Development Contact info: cabredor@dlsu.edu.ph
More informationCOMP30191 The Theory of Games and Game Models
COMP30191 The Theory of Games and Game Models Andrea Schalk A.Schalk@cs.man.ac.uk School of Computer Science University of Manchester August 7, 2008 About this course This is an introduction into the theory
More informationGames of Incomplete Information
Games of Incomplete Information Jonathan Levin February 00 Introduction We now start to explore models of incomplete information. Informally, a game of incomplete information is a game where the players
More informationCSC2420 Fall 2012: Algorithm Design, Analysis and Theory
CSC2420 Fall 2012: Algorithm Design, Analysis and Theory Allan Borodin November 15, 2012; Lecture 10 1 / 27 Randomized online bipartite matching and the adwords problem. We briefly return to online algorithms
More informationWhat is Modeling and Simulation and Software Engineering?
What is Modeling and Simulation and Software Engineering? V. Sundararajan Scientific and Engineering Computing Group Centre for Development of Advanced Computing Pune 411 007 vsundar@cdac.in Definitions
More informationNeural Networks and Back Propagation Algorithm
Neural Networks and Back Propagation Algorithm Mirza Cilimkovic Institute of Technology Blanchardstown Blanchardstown Road North Dublin 15 Ireland mirzac@gmail.com Abstract Neural Networks (NN) are important
More informationTemporal Difference Learning in the Tetris Game
Temporal Difference Learning in the Tetris Game Hans Pirnay, Slava Arabagi February 6, 2009 1 Introduction Learning to play the game Tetris has been a common challenge on a few past machine learning competitions.
More information