
COMP34120 AI and Games Part 1: The Theory of Games Andrea Schalk [email protected] School of Computer Science University of Manchester September 9, 2013 About this course This is a twenty credit course unit that covers the mathematical theory of games, how to write programs that can play certain fairly large games, and how to write programs that can learn how to play games (which are usually smaller). In Semester 1 we concentrate on the mathematical theory of games, and then look at programs that can play games such as backgammon, chess, go, draughts, and the like. There is a practical component which asks self-selected groups of students to write a pogram for the game kalah. The semester is split up as follows: Week 1 Introductory lectures Weeks 2–5 Sessions on these notes Week 6 Reading Week Week 7 Some examples, Week 8 Start on project work, clinics Week 9 Present plan for project to course lecturers Weeks 10, 11 Keep working on project, clinics Week 12 Project submission and group presentations In Week 1 there is a hand-out with more detail regarding organizational matters. There is a Moodle page for this course which collects all the material handed out, has forums, and has space for each project group. I keep a webpage with information regarding my teaching on this course unit at http://www.cs.man.ac.uk/~schalk/34120/index.html. There is also a more general course webpage at http://studentnet.cs.manchester.ac.uk/ugt/COMP34120/. About these notes These notes give an answer to the question ‘What is a a game?’ and they go on from there to develop a mathematical theory of games. By this we mean a notion of what it means to play a game ‘well’ (always bearing in mind that the other players also want to play well), and what is known about the existence of solutions where every player can be sure that they ‘play well’. These notes form the foundation for this part of the course, and you are expected to work through them in their own time. There will be set reading in advance of the lectures in Semester 1 and we will use the lectures to introduce key ideas and • answer questions that arise from self-study. • The expected reading for each week is summarized in the following table. Week 2 3 4 5 Day Tu Th Tu Th Tu Th Tu Th Theme Games Strats Equil 0-sum Mixed str Solving Algos Programs Pages 6–16 16–29 30–39 39–44 44–51 51–60 61–71 72–90 1 We will not be going through every detail of the notes and it is every student’s responsi- bility to ensure that they have read and understood the relevant material. You will not get much out of these sessions if you haven’t done the reading. There are a few exercises in the notes to help you apply the ideas to concrete examples. Most of these should be straightforward after a thorough study of the notes. Solutions to the exercises are included. Exam questions might take the form of simpler exercises, or might ask you to outline how one might go about solving a more complicated one. The exercises have a rating. This can be: B Basic: I expect you to be able to do this in the exam. S Simple: I expect you to describe how to solve an exercise like this in the exam. A Advanced: These exercises are there for students who want to gain a more thorough understanding, and who would like something to work through. There are also items labelled ‘question’ which encourage you to pause before reading on and to think about the issue raised there. Many of these questions are answered in the following paragraph or two. The material is relevant for the first project in which small groups of students are required to write a program playing a game called kalah. The resulting programs will be run against each other, and some of the project mark will be assigned based on performance in this direct comparison. There will also be some questions in the exam covering the material in these notes. My main responsibility within this course unit is concerned with the delivery of the mate- rial described in these notes. I will also provide some help for the first semester group project in the sessions in Week 7-11. If you have questions about other aspects you should ask the appropriate member of the lecturing team. What is a game? A technical definition of a game appears in the next chapter, here we just want to give an intuition. Every time people (or, more generally, agents) interact with each other and jointly influence an outcome we can think of it as a game. There are lots of examples and everybody will have encountered at least some of these: Somebody has an old mp3-player that he know longer wants. He’s offering it to his • friend and will give it to the person who offers him the most in return. How should his friends decide how much to bid? What rules should he set so that he gets the largest amount? In a shared student flat the kitchen and the bathroom need to be cleaned regularly to • stay in a decent condition—else the landlord is going to make trouble (and most people don’t enjoy living in a filthy place). Does game theory tell us something about what the likely behaviour of the inhabitants is going to be, and does it help explaining it? On a network there is a limited capacity for transporting data. How should the indi- • vidual machines on it be configured to ensure that – the capacity is shared fairly and – the existing capacity is fully exploited whenever there is sufficient demand? Bear in mind that a machine sending information will have no information about what the other machines on the network are doing. We can think of the buying and the selling of shares on the stock market as a game (lots • of entities interact, and the outcome is defined by money and shares changing hands). If we could predict how the market is going to behave in the future we could make a lot of money. 2 There are, of course, also the better known (and expected) examples of playing a board or card game. What all these ‘games’ have in common is that they can be defined more formally in such a way that they have the following properties: A number of agents interact with each other. These are known as the players. • At the end of their interactions there is an outcome that can be described numerically— • each player receives a pay-off which may be negative. There are clearly defined rules as to what decisions each agent can make at which point • in time and once all such decisions have been made the outcome is uniquely determined. These are fairly broad requirements, which are met by many situations in the real world. That is the reason games have been so successful at modelling a great variety of issues, and they are used in areas such as computer science, sociology, economics, biology, and mathematics. In some of these subjects it is quite difficult to come up with a mathematical model that allows a worthwhile analysis of some situation, and in many cases the theory of games supplies by far the most productive one. Rather than trying to describe something through a set of equations all that is required here is the codification of the rules, and putting a number to the potential outcomes that somehow measures its ‘benefit’ (or detriment) to the participants. Game theory allows for an analysis of the resulting model. In some cases, where many similar transactions occur, it can be quite easy to describe the rules for the interaction of two individuals, and the complexity arises from the fact that many such interactions occur over a period of time. We see in the chapters on modelling that this can give rise to systems which are very expressive, but which are still only partly understood. Games have also been successfully studied as models of conflict, for example in biology (animals or plants competing for resources or mating partners) as well as in sociology (people competing for resources, or those with conflicting aims). In particular in the early days of the theory of games a lot of work was funded by the military. Two basic assumptions are being made here which are not completely unproblematic: It is assumed that the numeric value associated with a particular outcome (that is, the • pay-off for each player) adequately reflects the worth of that outcome to all the players. Each player is concerned with maximizing his own outcome (this is sometimes known • as ‘rational behaviour’) without regard of the outcome for the other players. We do not spend much time in questioning these assumptions, but you should be aware of them. Game theory cannot say anything about situations where these don’t apply. In the real world people do not always behave rationally. To give a practical example, assume you are given a coin and, when observing it being thrown, you notice that it shows heads about 75% of the time, and tails the remaining 25%. When asked to bet on such a coin, a player’s chances are maximized by betting on heads every single time. It turns out, however, that people typically bet on heads 75% of the time only! One has to make some kind of assumption on how people will behave in a given situation in order to model it.
Details
-
File Typepdf
-
Upload Time-
-
Content LanguagesEnglish
-
Upload UserAnonymous/Not logged-in
-
File Pages102 Page
-
File Size-