Artificial Intelligence ( CS 365 ) IMPLEMENTATION OF AI SCRIPT GENERATOR USING DYNAMIC SCRIPTING FOR AOE2 GAME

Size: px
Start display at page:

Download "Artificial Intelligence ( CS 365 ) IMPLEMENTATION OF AI SCRIPT GENERATOR USING DYNAMIC SCRIPTING FOR AOE2 GAME"

Transcription

1 Artificial Intelligence ( CS 365 ) IMPLEMENTATION OF AI SCRIPT GENERATOR USING DYNAMIC SCRIPTING FOR AOE2 GAME Author: Saurabh Chatterjee Guided by: Dr. Amitabha Mukherjee Abstract: I have implemented an AI script generator that automatically determines strategies to be used in an AI script to be used in playing an AoE2 game ( a real time strategy game ). After the game, a function updates the rulebase based on the results of the game, so as to improve the strategy. Thus the AI script generated is a learning AI. I have used some concepts from CS365 course particularly utility functions for learning. Introduction In the computer gaming world, AI has been a very important part especially in single player games. AI in gaming is that element which comprises everything but the visual and auditory aspects of gameplay. It encompasses many areas such as interaction, pathfinding, machine learning, flocking, formations, difficulty scaling and decision making. Real Time Strategy (RTS) is a genre of computer games which can be viewed as simplified military simulations. Players gather resources and create troops to fight enemies. They are distinct from turn based games because the actions have to be performed at real time because all the players are issuing commands at the same time and no one is waiting. My project is to build an AI script generator for AOE 2 game. Although dozens of AI scripts have already been written for AOE 2 game, they are all hand coded and depend on strategies that human players derive after hours of playing and experimenting. Also there is no learning mechanism involved. My project realizes the learning technique by manually feeding the results of a game and changing the weights that affect the rulebase to be generated.

2 Implementation of AI My project deals entirely with high level strategic AI ( as opposed to low level AI such as pathfinding, formations, etc. ) including decision making skills. As such an individual unit cannot be controlled, but the policies made will be processed and executed by the game program which controls the units. For example you may give a rule saying that the percentage of woodcutters should be 30%. This means the game engine will ensure that 30% of the villagers you have are woodcutters, but you cannot decide the actions of a particular villager ( this is taken care of by low level AI ). Nevertheless strategic AI can make a huge difference to the game especially as it can be scripted in a variety of ways and provides an abstraction that people can easily deal with. The AI generated by my program is nicknamed Devastator AI and is referred to as that in the remainder of this document. Methodology of the AI agent There are many fundamental AI research problems posed by AI for RTS games. The following is a list of some listed by Michael Buro [2], and how I have implemented it. Resource management: Players start off by gathering local resources to build up defenses and attack forces, to upgrade weaponry, and to climb up the technology tree. Devastator AI changes the percentages of the people gathering resources and builds resource gathering buildings at appropriate locations. Decision making under uncertainty: Initially, players are not aware of the enemies' base locations and intentions. They have to gather intelligence by sending out scouts. Devastator AI doesn t do much scouting, it is more of a defensive AI. Only 3 units scout at any time, this is fixed. Spatial and temporal reasoning: Static and dynamic terrain analysis as well as understanding temporal relations of actions is of utmost importance in RTS games - and yet, current game AIs largely ignore these [Forbus et al., 2002]. Devastator AI evaluates a map and finds out the distribution of land and water in it. If there is any area of water greater than 2000 square tiles, it trains a fixed navy ( galleons ). Collaboration: In RTS games groups of players can join forces and intelligence. Devastator AI can establish trade routes with allies, but nothing else.

3 Learning: One of the biggest shortcomings of most (RTS) game AI systems is their inability to learn from experience. Human players only need a couple of games to spot opponents' weaknesses and to exploit them in upcoming games. Devastator AI uses dynamic scripting technique for learning. Evaluation Functions: Devastator AI uses an evaluation function called firepower to find the best combination of units to use. Adversarial real-time planning: In fine-grained simulations, agents cannot afford to think in terms of micro actions. Instead, abstractions have to be found which allow a machine to conduct forward searches in a manageable abstract space and to translate found solutions back. This is what is implemented automatically in commercial games like AoE2. Rules and Rulebases Rule based AI is the most commonly used method for the implementation of AI strategies. A rule in general is an implementation of a certain set of effects when a certain set of conditions is satisfied. I am using the commercial game Age of Empires II the Conquerors. It uses a fixed rule script in which a rule simply consists of some conditions and some effects. Here is an example of such a rule. (defrule (current age == dark age) (unit type count villager < 31) (can train villager) => (train villager)) A fixed rulebase is one in which the same script is used for every game and thus provides no opportunity for learning. Currently almost all games including AOEII use fixed rulebases because they are easier to design. However, I am modifiying the script after each game manually thus providing a sort of dynamic scripting. The biggest disadvantage of rule based AI is it s predictability. After playing a few games, a human player can spot weaknesses in the AI and exploit them. Thus it is necessary for good AI s to keep changing their strategies.

4 Generation of initial rulebase and selection of strategies My program generates the AI based on the game data. Game data includes the parameters of the different units used. The parameters I have taken into account are attack, HP, range, armor, pierce armor, and costs of training. I have defined a firepower function which generates a value which tells how good a unit is. The goodness value is an extrinsic factor I will discuss in the next section. The remainder are parameters from game data. number = 50*80/(goldcost+foodcost+woodcost); numlimit = number; number *=goodness; if(range==0) attackvalue += number*(attack+10); else attackvalue += (number*number)*attack/20; hpvalue = (hp+armor+piercearmor)*numlimit; firepower = attackvalue+hpvalue; I then determine a combination of three units which is the optimal for that particular civilization. This firepower function accurately determines good combinations to be used as determined by practical experiences. It does commit some mistakes which are later corrected through learning. This is because there are a number of factors I have not taken into account. Eg. Teutonic knights seem to be very good units because of their high attack and armor. However they are actually very slow and useless. Learning permits the AI to recover from mistakes. The building and training rules are influenced by these combinations. Also there are a large number of strategic numbers which are updated according to their performance. An example of a strategic number is the percentage of villagers which are food gatherers and is represented by sn food gatherer percentage. Finally there is also a lot of constant AI script which does not change every time the program is run. This is because the results obtained do not reflect every AI strategic rule in a direct manner and without any learning it is simpler to just use a direct hand coded AI script. I have hand coded the AI script for town size, trading and civilian training.

5 Dynamic Scripting Dynamic Scripting [3] is a learning technique inspired by reinforcement learning ( Russell and Norvig ). The rulebase is adapted and generated every time the game is played, rather than being hand coded. Certain weights are attached to parameters in the game that will be changed every time the game is played. After a game is over, it s resulting scores will then be used to update these weights. Thus different strategies can be selected as opposed to the static AI script discussed above. Image from [3] Utility functions For units, I use a utility function which refer to as a unit s goodness. This value is a ratio of how good a single unit of that unit type is with respect to a champion ( A champion is a type of unit). For strategic numbers, I store the numbers directly and update them. For the rest of the AI script there is no weightage stored and it is hand coded constant for all games. Updating functions The updating function for units determines the units used and increases the goodness value by (kills losses 70)/(kills+losses)

6 Thus the goodness decreases if kills is less than losses and increases if kills is greater than losses. The factor of 70 is there because kills losses should be at least 70. The economic strategic numbers are changed in the following way. Foodper = ( (food gathered by enemy )/ ( food gathered ) )*(original food percentage) Since the percentages must add up to 90%, they are then modified accordingly. Foodper = Foodper*90/(Foodper+Goldper+Woodper) (10% of the villagers are set aside for building.) This updating function can be considered to be an example of reinforcement learning. The AI has rewards and punishments. The AI thus can be considered to be an agent which changes it s actions ( ie. the rulebase ) to maximize it s reward, where the reward is the result parameters of the game, such as kills, losses, resources gathered etc. Results I ran 8 games for the following graphs. Since there is a lot of uncertainty involved in the game, we must try to deduce the overall result. Military graph kills/losses ( kill ratio ), for a time of 10 min. The following AI s were tested against Blitzkreig AI, a decent AI which is quite tough to beat. My AI is nicknamed Devastator Blitzkreig Devastator AllianceThunda

7 As we can see, Blitzkreig AI performing against its own runs up a kill ratio of near 1.0, whereas the other two are a lot higher. Alliance thunda is a highly optimized AI, one of the best for AOE 2 game. Economic graph ( resource gathering) Total amount of resource gathered vs. game, for a time of 10 min. It seems from this graph that Blitzkreig AI is the best at resource gathering and AllianceThunda is the worst! This discrepancy can be explained because AllianceThunda is focused heavily on military and since Post Imperial DM starts with huge amounts of resources, resource gathering is not a priority in the initial minutes of the game. In the actual game, AllianceThunda would kill the other AI long before it s poorer resource gathering started to come into picture. Learning curve To test if the learning function is effective, we test it with Teuton civilization. This picks the wrong combo at first, but rapidly finds the right combination of units. Thereafter there is only slow progress due to economic gain which finally levels off. Also, we can see the economic learning being done in the economic graph above. The graph is of kills losses vs. games

8 Overall Performs very well against Blitzkreig AI killing units in a ratio 2:1 and beats standard AI ( which is basically pathetic ) very easily. Puts up a good defence vs the best AI s such as AllianceThunda and beats AllianceThunda 25% of the time ( 2 in 8 games ). Can find the best combos very easily thanks to firepower function. Slightly weak economically. Learning function enables it to find the best combos if it made a mistake initially. The graphs given show statistical variations due to probability coming into play as the game is highly non deterministic even though the strategies are given by the AI, the actual implementation is up to the game engine. Conclusion Devastator AI generated is a very good AI for post Imperial Deathmatch AoE2 game. Learning works at least partly and the evaluation function selects the effective combination in most cases. Thus it is possible to use some type of dynamic scripting in any game. References [1] Artificial Intelligence A modern Approach Stuart Russell and Peter Norvig [2] Real-Time Strategy Games: A New AI Research Challenge Michael Buro, University of Alberta, Edmonton, Canada [3] Improving adaptive game AI with evolutionary learning (PDF). Thesis by Mark Ponson, Delft University of Technology, Netherlands.

IMPROVING TOWER DEFENSE GAME AI (DIFFERENTIAL EVOLUTION VS EVOLUTIONARY PROGRAMMING) CHEAH KEEI YUAN

IMPROVING TOWER DEFENSE GAME AI (DIFFERENTIAL EVOLUTION VS EVOLUTIONARY PROGRAMMING) CHEAH KEEI YUAN IMPROVING TOWER DEFENSE GAME AI (DIFFERENTIAL EVOLUTION VS EVOLUTIONARY PROGRAMMING) CHEAH KEEI YUAN FACULTY OF COMPUTING AND INFORMATICS UNIVERSITY MALAYSIA SABAH 2014 ABSTRACT The use of Artificial Intelligence

More information

CS 480: GAME AI DECISION MAKING AND SCRIPTING

CS 480: GAME AI DECISION MAKING AND SCRIPTING CS 480: GAME AI DECISION MAKING AND SCRIPTING 4/24/2012 Santiago Ontañón santi@cs.drexel.edu https://www.cs.drexel.edu/~santi/teaching/2012/cs480/intro.html Reminders Check BBVista site for the course

More information

Principles of Computer Game Design and Implementation. Lecture 29

Principles of Computer Game Design and Implementation. Lecture 29 Principles of Computer Game Design and Implementation Lecture 29 Putting It All Together Games are unimaginable without AI (Except for puzzles, casual games, ) No AI no computer adversary/companion Good

More information

Testing real-time artificial intelligence: an experience with Starcraft c

Testing real-time artificial intelligence: an experience with Starcraft c Testing real-time artificial intelligence: an experience with Starcraft c game Cristian Conde, Mariano Moreno, and Diego C. Martínez Laboratorio de Investigación y Desarrollo en Inteligencia Artificial

More information

Game Artificial Intelligence ( CS 4731/7632 )

Game Artificial Intelligence ( CS 4731/7632 ) Game Artificial Intelligence ( CS 4731/7632 ) Instructor: Stephen Lee-Urban http://www.cc.gatech.edu/~surban6/2018-gameai/ (soon) Piazza T-square What s this all about? Industry standard approaches to

More information

AI Agent for Ants vs. SomeBees: Final Report

AI Agent for Ants vs. SomeBees: Final Report CS 221: ARTIFICIAL INTELLIGENCE: PRINCIPLES AND TECHNIQUES 1 AI Agent for Ants vs. SomeBees: Final Report Wanyi Qian, Yundong Zhang, Xiaotong Duan Abstract This project aims to build a real-time game playing

More information

RANDOM MISSION CONTENTS TAKING OBJECTIVES WHICH MISSION? WHEN DO YOU WIN THERE ARE NO DRAWS PICK A MISSION RANDOM MISSIONS

RANDOM MISSION CONTENTS TAKING OBJECTIVES WHICH MISSION? WHEN DO YOU WIN THERE ARE NO DRAWS PICK A MISSION RANDOM MISSIONS i The 1 st Brigade would be hard pressed to hold another attack, the S-3 informed Bannon in a workman like manner. Intelligence indicates that the Soviet forces in front of 1 st Brigade had lost heavily

More information

USING A FUZZY LOGIC CONTROL SYSTEM FOR AN XPILOT COMBAT AGENT ANDREW HUBLEY AND GARY PARKER

USING A FUZZY LOGIC CONTROL SYSTEM FOR AN XPILOT COMBAT AGENT ANDREW HUBLEY AND GARY PARKER World Automation Congress 21 TSI Press. USING A FUZZY LOGIC CONTROL SYSTEM FOR AN XPILOT COMBAT AGENT ANDREW HUBLEY AND GARY PARKER Department of Computer Science Connecticut College New London, CT {ahubley,

More information

Who am I? AI in Computer Games. Goals. AI in Computer Games. History Game A(I?)

Who am I? AI in Computer Games. Goals. AI in Computer Games. History Game A(I?) Who am I? AI in Computer Games why, where and how Lecturer at Uppsala University, Dept. of information technology AI, machine learning and natural computation Gamer since 1980 Olle Gällmo AI in Computer

More information

Artificial Intelligence. Cameron Jett, William Kentris, Arthur Mo, Juan Roman

Artificial Intelligence. Cameron Jett, William Kentris, Arthur Mo, Juan Roman Artificial Intelligence Cameron Jett, William Kentris, Arthur Mo, Juan Roman AI Outline Handicap for AI Machine Learning Monte Carlo Methods Group Intelligence Incorporating stupidity into game AI overview

More information

Extending the STRADA Framework to Design an AI for ORTS

Extending the STRADA Framework to Design an AI for ORTS Extending the STRADA Framework to Design an AI for ORTS Laurent Navarro and Vincent Corruble Laboratoire d Informatique de Paris 6 Université Pierre et Marie Curie (Paris 6) CNRS 4, Place Jussieu 75252

More information

Five-In-Row with Local Evaluation and Beam Search

Five-In-Row with Local Evaluation and Beam Search Five-In-Row with Local Evaluation and Beam Search Jiun-Hung Chen and Adrienne X. Wang jhchen@cs axwang@cs Abstract This report provides a brief overview of the game of five-in-row, also known as Go-Moku,

More information

Learning Unit Values in Wargus Using Temporal Differences

Learning Unit Values in Wargus Using Temporal Differences Learning Unit Values in Wargus Using Temporal Differences P.J.M. Kerbusch 16th June 2005 Abstract In order to use a learning method in a computer game to improve the perfomance of computer controlled entities,

More information

AI in Computer Games. AI in Computer Games. Goals. Game A(I?) History Game categories

AI in Computer Games. AI in Computer Games. Goals. Game A(I?) History Game categories AI in Computer Games why, where and how AI in Computer Games Goals Game categories History Common issues and methods Issues in various game categories Goals Games are entertainment! Important that things

More information

High-Level Representations for Game-Tree Search in RTS Games

High-Level Representations for Game-Tree Search in RTS Games Artificial Intelligence in Adversarial Real-Time Games: Papers from the AIIDE Workshop High-Level Representations for Game-Tree Search in RTS Games Alberto Uriarte and Santiago Ontañón Computer Science

More information

Hierarchical Controller for Robotic Soccer

Hierarchical Controller for Robotic Soccer Hierarchical Controller for Robotic Soccer Byron Knoll Cognitive Systems 402 April 13, 2008 ABSTRACT RoboCup is an initiative aimed at advancing Artificial Intelligence (AI) and robotics research. This

More information

Monte Carlo Planning in RTS Games

Monte Carlo Planning in RTS Games Abstract- Monte Carlo simulations have been successfully used in classic turn based games such as backgammon, bridge, poker, and Scrabble. In this paper, we apply the ideas to the problem of planning in

More information

the gamedesigninitiative at cornell university Lecture 23 Strategic AI

the gamedesigninitiative at cornell university Lecture 23 Strategic AI Lecture 23 Role of AI in Games Autonomous Characters (NPCs) Mimics personality of character May be opponent or support character Strategic Opponents AI at player level Closest to classical AI Character

More information

Google DeepMind s AlphaGo vs. world Go champion Lee Sedol

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

More information

Opponent Modelling In World Of Warcraft

Opponent Modelling In World Of Warcraft Opponent Modelling In World Of Warcraft A.J.J. Valkenberg 19th June 2007 Abstract In tactical commercial games, knowledge of an opponent s location is advantageous when designing a tactic. This paper proposes

More information

the question of whether computers can think is like the question of whether submarines can swim -- Dijkstra

the question of whether computers can think is like the question of whether submarines can swim -- Dijkstra the question of whether computers can think is like the question of whether submarines can swim -- Dijkstra Game AI: The set of algorithms, representations, tools, and tricks that support the creation

More information

the question of whether computers can think is like the question of whether submarines can swim -- Dijkstra

the question of whether computers can think is like the question of whether submarines can swim -- Dijkstra the question of whether computers can think is like the question of whether submarines can swim -- Dijkstra Game AI: The set of algorithms, representations, tools, and tricks that support the creation

More information

FreeCiv Learner: A Machine Learning Project Utilizing Genetic Algorithms

FreeCiv Learner: A Machine Learning Project Utilizing Genetic Algorithms FreeCiv Learner: A Machine Learning Project Utilizing Genetic Algorithms Felix Arnold, Bryan Horvat, Albert Sacks Department of Computer Science Georgia Institute of Technology Atlanta, GA 30318 farnold3@gatech.edu

More information

CMSC 671 Project Report- Google AI Challenge: Planet Wars

CMSC 671 Project Report- Google AI Challenge: Planet Wars 1. Introduction Purpose The purpose of the project is to apply relevant AI techniques learned during the course with a view to develop an intelligent game playing bot for the game of Planet Wars. Planet

More information

LEARNABLE BUDDY: LEARNABLE SUPPORTIVE AI IN COMMERCIAL MMORPG

LEARNABLE BUDDY: LEARNABLE SUPPORTIVE AI IN COMMERCIAL MMORPG LEARNABLE BUDDY: LEARNABLE SUPPORTIVE AI IN COMMERCIAL MMORPG Theppatorn Rhujittawiwat and Vishnu Kotrajaras Department of Computer Engineering Chulalongkorn University, Bangkok, Thailand E-mail: g49trh@cp.eng.chula.ac.th,

More information

Goal-Directed Hierarchical Dynamic Scripting for RTS Games

Goal-Directed Hierarchical Dynamic Scripting for RTS Games Goal-Directed Hierarchical Dynamic Scripting for RTS Games Anders Dahlbom & Lars Niklasson School of Humanities and Informatics University of Skövde, Box 408, SE-541 28 Skövde, Sweden anders.dahlbom@his.se

More information

A Quoridor-playing Agent

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

More information

Software Development of the Board Game Agricola

Software Development of the Board Game Agricola CARLETON UNIVERSITY Software Development of the Board Game Agricola COMP4905 Computer Science Honours Project Robert Souter Jean-Pierre Corriveau Ph.D., Associate Professor, School of Computer Science

More information

Outline. Introduction to AI. Artificial Intelligence. What is an AI? What is an AI? Agents Environments

Outline. Introduction to AI. Artificial Intelligence. What is an AI? What is an AI? Agents Environments Outline Introduction to AI ECE457 Applied Artificial Intelligence Fall 2007 Lecture #1 What is an AI? Russell & Norvig, chapter 1 Agents s Russell & Norvig, chapter 2 ECE457 Applied Artificial Intelligence

More information

Swarm AI: A Solution to Soccer

Swarm AI: A Solution to Soccer Swarm AI: A Solution to Soccer Alex Kutsenok Advisor: Michael Wollowski Senior Thesis Rose-Hulman Institute of Technology Department of Computer Science and Software Engineering May 10th, 2004 Definition

More information

Prof. Sameer Singh CS 175: PROJECTS IN AI (IN MINECRAFT) WINTER April 6, 2017

Prof. Sameer Singh CS 175: PROJECTS IN AI (IN MINECRAFT) WINTER April 6, 2017 Prof. Sameer Singh CS 175: PROJECTS IN AI (IN MINECRAFT) WINTER 2017 April 6, 2017 Upcoming Misc. Check out course webpage and schedule Check out Canvas, especially for deadlines Do the survey by tomorrow,

More information

CS7032: AI & Agents: Ms Pac-Man vs Ghost League - AI controller project

CS7032: AI & Agents: Ms Pac-Man vs Ghost League - AI controller project CS7032: AI & Agents: Ms Pac-Man vs Ghost League - AI controller project TIMOTHY COSTIGAN 12263056 Trinity College Dublin This report discusses various approaches to implementing an AI for the Ms Pac-Man

More information

USING VALUE ITERATION TO SOLVE SEQUENTIAL DECISION PROBLEMS IN GAMES

USING VALUE ITERATION TO SOLVE SEQUENTIAL DECISION PROBLEMS IN GAMES USING VALUE ITERATION TO SOLVE SEQUENTIAL DECISION PROBLEMS IN GAMES Thomas Hartley, Quasim Mehdi, Norman Gough The Research Institute in Advanced Technologies (RIATec) School of Computing and Information

More information

Making Simple Decisions CS3523 AI for Computer Games The University of Aberdeen

Making Simple Decisions CS3523 AI for Computer Games The University of Aberdeen Making Simple Decisions CS3523 AI for Computer Games The University of Aberdeen Contents Decision making Search and Optimization Decision Trees State Machines Motivating Question How can we program rules

More information

WARHAMMER LEGENDARY BATTLES

WARHAMMER LEGENDARY BATTLES WARHAMMER LEGENDARY BATTLES Welcome Most games of Warhammer are two player games between armies with equal points values of anywhere from 500 to 3000 points. However, while games like these are great fun,

More information

Integrating Learning in a Multi-Scale Agent

Integrating Learning in a Multi-Scale Agent Integrating Learning in a Multi-Scale Agent Ben Weber Dissertation Defense May 18, 2012 Introduction AI has a long history of using games to advance the state of the field [Shannon 1950] Real-Time Strategy

More information

Analysis of Game Balance

Analysis of Game Balance Balance Type #1: Fairness Analysis of Game Balance 1. Give an example of a mostly symmetrical game. If this game is not universally known, make sure to explain the mechanics in question. What elements

More information

Playing Othello Using Monte Carlo

Playing Othello Using Monte Carlo June 22, 2007 Abstract This paper deals with the construction of an AI player to play the game Othello. A lot of techniques are already known to let AI players play the game Othello. Some of these techniques

More information

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

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

More information

Artificial Intelligence. Minimax and alpha-beta pruning

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

More information

CS 680: GAME AI WEEK 4: DECISION MAKING IN RTS GAMES

CS 680: GAME AI WEEK 4: DECISION MAKING IN RTS GAMES CS 680: GAME AI WEEK 4: DECISION MAKING IN RTS GAMES 2/6/2012 Santiago Ontañón santi@cs.drexel.edu https://www.cs.drexel.edu/~santi/teaching/2012/cs680/intro.html Reminders Projects: Project 1 is simpler

More information

Using Artificial intelligent to solve the game of 2048

Using Artificial intelligent to solve the game of 2048 Using Artificial intelligent to solve the game of 2048 Ho Shing Hin (20343288) WONG, Ngo Yin (20355097) Lam Ka Wing (20280151) Abstract The report presents the solver of the game 2048 base on artificial

More information

Heads-up Limit Texas Hold em Poker Agent

Heads-up Limit Texas Hold em Poker Agent Heads-up Limit Texas Hold em Poker Agent Nattapoom Asavareongchai and Pin Pin Tea-mangkornpan CS221 Final Project Report Abstract Our project aims to create an agent that is able to play heads-up limit

More information

CS 4700: Foundations of Artificial Intelligence

CS 4700: Foundations of Artificial Intelligence CS 4700: Foundations of Artificial Intelligence Bart Selman Reinforcement Learning R&N Chapter 21 Note: in the next two parts of RL, some of the figure/section numbers refer to an earlier edition of R&N

More information

IMGD 1001: Programming Practices; Artificial Intelligence

IMGD 1001: Programming Practices; Artificial Intelligence IMGD 1001: Programming Practices; Artificial Intelligence Robert W. Lindeman Associate Professor Department of Computer Science Worcester Polytechnic Institute gogo@wpi.edu Outline Common Practices Artificial

More information

Federico Forti, Erdi Izgi, Varalika Rathore, Francesco Forti

Federico Forti, Erdi Izgi, Varalika Rathore, Francesco Forti Basic Information Project Name Supervisor Kung-fu Plants Jakub Gemrot Annotation Kung-fu plants is a game where you can create your characters, train them and fight against the other chemical plants which

More information

AN ABSTRACT OF THE THESIS OF

AN ABSTRACT OF THE THESIS OF AN ABSTRACT OF THE THESIS OF Radha-Krishna Balla for the degree of Master of Science in Computer Science presented on February 19, 2009. Title: UCT for Tactical Assault Battles in Real-Time Strategy Games.

More information

The Implementation of Artificial Intelligence and Machine Learning in a Computerized Chess Program

The Implementation of Artificial Intelligence and Machine Learning in a Computerized Chess Program The Implementation of Artificial Intelligence and Machine Learning in a Computerized Chess Program by James The Godfather Mannion Computer Systems, 2008-2009 Period 3 Abstract Computers have developed

More information

IMGD 1001: Programming Practices; Artificial Intelligence

IMGD 1001: Programming Practices; Artificial Intelligence IMGD 1001: Programming Practices; Artificial Intelligence by Mark Claypool (claypool@cs.wpi.edu) Robert W. Lindeman (gogo@wpi.edu) Outline Common Practices Artificial Intelligence Claypool and Lindeman,

More information

Made by Bla Map War 2 Manual Version 6 ( ) Page 1. Map War 2 Manual

Made by Bla Map War 2 Manual Version 6 ( ) Page 1. Map War 2 Manual Made by Bla Map War 2 Manual Version 6 (201209231931) Page 1 Map War 2 Manual Made by Bla Map War 2 Manual Version 6 (201209231931) Page 2 Content Map War 2 Manual... 1 Content... 2 Intro... 3 Initial

More information

ARTIFICIAL INTELLIGENCE (CS 370D)

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

More information

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

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

More information

Enhancing the Performance of Dynamic Scripting in Computer Games

Enhancing the Performance of Dynamic Scripting in Computer Games Enhancing the Performance of Dynamic Scripting in Computer Games Pieter Spronck 1, Ida Sprinkhuizen-Kuyper 1, and Eric Postma 1 1 Universiteit Maastricht, Institute for Knowledge and Agent Technology (IKAT),

More information

RESERVES RESERVES CONTENTS TAKING OBJECTIVES WHICH MISSION? WHEN DO YOU WIN PICK A MISSION RANDOM MISSION RANDOM MISSIONS

RESERVES RESERVES CONTENTS TAKING OBJECTIVES WHICH MISSION? WHEN DO YOU WIN PICK A MISSION RANDOM MISSION RANDOM MISSIONS i The Flames Of War More Missions pack is an optional expansion for tournaments and players looking for quick pick-up games. It contains new versions of the missions from the rulebook that use a different

More information

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

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

More information

Creating a Poker Playing Program Using Evolutionary Computation

Creating a Poker Playing Program Using Evolutionary Computation Creating a Poker Playing Program Using Evolutionary Computation Simon Olsen and Rob LeGrand, Ph.D. Abstract Artificial intelligence is a rapidly expanding technology. We are surrounded by technology that

More information

UCT for Tactical Assault Planning in Real-Time Strategy Games

UCT for Tactical Assault Planning in Real-Time Strategy Games Proceedings of the Twenty-First International Joint Conference on Artificial Intelligence (IJCAI-09) UCT for Tactical Assault Planning in Real-Time Strategy Games Radha-Krishna Balla and Alan Fern School

More information

CS 771 Artificial Intelligence. Adversarial Search

CS 771 Artificial Intelligence. Adversarial Search CS 771 Artificial Intelligence Adversarial Search Typical assumptions Two agents whose actions alternate Utility values for each agent are the opposite of the other This creates the adversarial situation

More information

CS510 \ Lecture Ariel Stolerman

CS510 \ Lecture Ariel Stolerman CS510 \ Lecture04 2012-10-15 1 Ariel Stolerman Administration Assignment 2: just a programming assignment. Midterm: posted by next week (5), will cover: o Lectures o Readings A midterm review sheet will

More information

Available online at ScienceDirect. Procedia Computer Science 59 (2015 )

Available online at  ScienceDirect. Procedia Computer Science 59 (2015 ) Available online at www.sciencedirect.com ScienceDirect Procedia Computer Science 59 (2015 ) 435 444 International Conference on Computer Science and Computational Intelligence (ICCSCI 2015) Dynamic Difficulty

More information

CS 188: Artificial Intelligence Spring 2007

CS 188: Artificial Intelligence Spring 2007 CS 188: Artificial Intelligence Spring 2007 Lecture 7: CSP-II and Adversarial Search 2/6/2007 Srini Narayanan ICSI and UC Berkeley Many slides over the course adapted from Dan Klein, Stuart Russell or

More information

CSE 573: Artificial Intelligence Autumn 2010

CSE 573: Artificial Intelligence Autumn 2010 CSE 573: Artificial Intelligence Autumn 2010 Lecture 4: Adversarial Search 10/12/2009 Luke Zettlemoyer Based on slides from Dan Klein Many slides over the course adapted from either Stuart Russell or Andrew

More information

BLUFF WITH AI. CS297 Report. Presented to. Dr. Chris Pollett. Department of Computer Science. San Jose State University. In Partial Fulfillment

BLUFF WITH AI. CS297 Report. Presented to. Dr. Chris Pollett. Department of Computer Science. San Jose State University. In Partial Fulfillment BLUFF WITH AI CS297 Report Presented to Dr. Chris Pollett Department of Computer Science San Jose State University In Partial Fulfillment Of the Requirements for the Class CS 297 By Tina Philip May 2017

More information

Informatics 2D: Tutorial 1 (Solutions)

Informatics 2D: Tutorial 1 (Solutions) Informatics 2D: Tutorial 1 (Solutions) Agents, Environment, Search Week 2 1 Agents and Environments Consider the following agents: A robot vacuum cleaner which follows a pre-set route around a house and

More information

Deep 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 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 information

KARP: Kids and Adults Role-Playing

KARP: Kids and Adults Role-Playing KARP: Kids and Adults Role-Playing a card and dice-based game about fighting things, making and spending money, and special abilities Ages 8 and up by Conall Kavanagh, 2003 KARP is a free-form, mechanics-lite

More information

Game-playing AIs: Games and Adversarial Search I AIMA

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

More information

Game Design Courses at WPI. IMGD 1001: Gameplay. Gameplay. Outline. Gameplay Example (1 of 2) Group Exercise

Game Design Courses at WPI. IMGD 1001: Gameplay. Gameplay. Outline. Gameplay Example (1 of 2) Group Exercise IMGD 1001: Gameplay Game Design Courses at WPI IMGD 2500. Design of Tabletop Strategy Games IMGD 202X Digital Game Design IMGD 403X Advanced Storytelling: Quest Logic and Level Design IMGD 1001 2 Outline

More information

Games (adversarial search problems)

Games (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 information

Annals of the University of North Carolina Wilmington Master of Science in Computer Science and Information Systems

Annals of the University of North Carolina Wilmington Master of Science in Computer Science and Information Systems Annals of the University of North Carolina Wilmington Master of Science in Computer Science and Information Systems DEVELOPMENT OF A NOVEL GAME WITH ADAPTIVE LEARNING AGENTS Rebecca Brown A Thesis Submitted

More information

Reactive Planning for Micromanagement in RTS Games

Reactive Planning for Micromanagement in RTS Games Reactive Planning for Micromanagement in RTS Games Ben Weber University of California, Santa Cruz Department of Computer Science Santa Cruz, CA 95064 bweber@soe.ucsc.edu Abstract This paper presents an

More information

Bayesian Networks for Micromanagement Decision Imitation in the RTS Game Starcraft

Bayesian Networks for Micromanagement Decision Imitation in the RTS Game Starcraft Bayesian Networks for Micromanagement Decision Imitation in the RTS Game Starcraft Ricardo Parra and Leonardo Garrido Tecnológico de Monterrey, Campus Monterrey Ave. Eugenio Garza Sada 2501. Monterrey,

More information

Universiteit Leiden Opleiding Informatica

Universiteit Leiden Opleiding Informatica Universiteit Leiden Opleiding Informatica Predicting the Outcome of the Game Othello Name: Simone Cammel Date: August 31, 2015 1st supervisor: 2nd supervisor: Walter Kosters Jeannette de Graaf BACHELOR

More information

A Multi-Agent Potential Field-Based Bot for a Full RTS Game Scenario

A Multi-Agent Potential Field-Based Bot for a Full RTS Game Scenario Proceedings of the Fifth Artificial Intelligence for Interactive Digital Entertainment Conference A Multi-Agent Potential Field-Based Bot for a Full RTS Game Scenario Johan Hagelbäck and Stefan J. Johansson

More information

Shaun Austin Jim Hartman

Shaun Austin Jim Hartman RULEBOOK Shaun Austin Jim Hartman V 1.3.1 Copyright 2005 Shaun Austin & Jim Hartman Lost Treasures Introduction Lost Treasures is a simple two player game where each player must hire a party of adventurers

More information

Creating a Dominion AI Using Genetic Algorithms

Creating a Dominion AI Using Genetic Algorithms Creating a Dominion AI Using Genetic Algorithms Abstract Mok Ming Foong Dominion is a deck-building card game. It allows for complex strategies, has an aspect of randomness in card drawing, and no obvious

More information

Overview 1. Table of Contents 2. Setup 3. Beginner Walkthrough 5. Parts of a Card 7. Playing Cards 8. Card Effects 10. Reclaiming 11.

Overview 1. Table of Contents 2. Setup 3. Beginner Walkthrough 5. Parts of a Card 7. Playing Cards 8. Card Effects 10. Reclaiming 11. Overview As foretold, the living-god Hopesong has passed from the lands of Lyriad after a millennium of reign. His divine spark has fractured, scattering his essence across the land, granting power to

More information

Learning Character Behaviors using Agent Modeling in Games

Learning Character Behaviors using Agent Modeling in Games Proceedings of the Fifth Artificial Intelligence for Interactive Digital Entertainment Conference Learning Character Behaviors using Agent Modeling in Games Richard Zhao, Duane Szafron Department of Computing

More information

PROFILE. Jonathan Sherer 9/30/15 1

PROFILE. Jonathan Sherer 9/30/15 1 Jonathan Sherer 9/30/15 1 PROFILE Each model in the game is represented by a profile. The profile is essentially a breakdown of the model s abilities and defines how the model functions in the game. The

More information

Managing upwards. Bob Dick (2003) Managing upwards: a workbook. Chapel Hill: Interchange (mimeo).

Managing upwards. Bob Dick (2003) Managing upwards: a workbook. Chapel Hill: Interchange (mimeo). Paper 28-1 PAPER 28 Managing upwards Bob Dick (2003) Managing upwards: a workbook. Chapel Hill: Interchange (mimeo). Originally written in 1992 as part of a communication skills workbook and revised several

More information

State Evaluation and Opponent Modelling in Real-Time Strategy Games. Graham Erickson

State Evaluation and Opponent Modelling in Real-Time Strategy Games. Graham Erickson State Evaluation and Opponent Modelling in Real-Time Strategy Games by Graham Erickson A thesis submitted in partial fulfillment of the requirements for the degree of Master of Science Department of Computing

More information

Make Your Own Game Tutorial VII: Creating Encounters Part 2

Make Your Own Game Tutorial VII: Creating Encounters Part 2 Aspects of Encounter Balance Despite what you might think, Encounter Balance is not all about difficulty. Difficulty is a portion, but there are many moving parts that you want to take into account when

More information

The Second Annual Real-Time Strategy Game AI Competition

The Second Annual Real-Time Strategy Game AI Competition The Second Annual Real-Time Strategy Game AI Competition Michael Buro, Marc Lanctot, and Sterling Orsten Department of Computing Science University of Alberta, Edmonton, Alberta, Canada {mburo lanctot

More information

Learning Artificial Intelligence in Large-Scale Video Games

Learning Artificial Intelligence in Large-Scale Video Games Learning Artificial Intelligence in Large-Scale Video Games A First Case Study with Hearthstone: Heroes of WarCraft Master Thesis Submitted for the Degree of MSc in Computer Science & Engineering Author

More information

MONUMENTAL RULES. COMPONENTS Cards AIM OF THE GAME SETUP Funforge. Matthew Dunstan. 1 4 players l min l Ages 14+ Tokens

MONUMENTAL RULES. COMPONENTS Cards AIM OF THE GAME SETUP Funforge. Matthew Dunstan. 1 4 players l min l Ages 14+ Tokens Matthew Dunstan MONUMENTAL 1 4 players l 90-120 min l Ages 14+ RULES In Monumental, each player leads a unique civilization. How will you shape your destiny, and how will history remember you? Dare you

More information

CS325 Artificial Intelligence Ch. 5, Games!

CS325 Artificial Intelligence Ch. 5, Games! CS325 Artificial Intelligence Ch. 5, Games! Cengiz Günay, Emory Univ. vs. Spring 2013 Günay Ch. 5, Games! Spring 2013 1 / 19 AI in Games A lot of work is done on it. Why? Günay Ch. 5, Games! Spring 2013

More information

Artificial Intelligence

Artificial Intelligence Artificial Intelligence Lecture 01 - Introduction Edirlei Soares de Lima What is Artificial Intelligence? Artificial intelligence is about making computers able to perform the

More information

Achieving Desirable Gameplay Objectives by Niched Evolution of Game Parameters

Achieving Desirable Gameplay Objectives by Niched Evolution of Game Parameters Achieving Desirable Gameplay Objectives by Niched Evolution of Game Parameters Scott Watson, Andrew Vardy, Wolfgang Banzhaf Department of Computer Science Memorial University of Newfoundland St John s.

More information

POSITIONAL EVALUATION

POSITIONAL EVALUATION POSITIONAL EVALUATION In this lesson, we present the evaluation of the position, the most important element of chess strategy. The evaluation of the positional factors gives us a correct and complete picture

More information

CS 188: Artificial Intelligence

CS 188: Artificial Intelligence CS 188: Artificial Intelligence Adversarial Search Prof. Scott Niekum The University of Texas at Austin [These slides are based on those of Dan Klein and Pieter Abbeel for CS188 Intro to AI at UC Berkeley.

More information

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

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

More information

CSE 40171: Artificial Intelligence. Adversarial Search: Games and Optimality

CSE 40171: Artificial Intelligence. Adversarial Search: Games and Optimality CSE 40171: Artificial Intelligence Adversarial Search: Games and Optimality 1 What is a game? Game Playing State-of-the-Art Checkers: 1950: First computer player. 1994: First computer champion: Chinook

More information

2016 Bugeater GT Warhammer 40,000 Primer Packet. An Independent Tournament Circuit Event

2016 Bugeater GT Warhammer 40,000 Primer Packet. An Independent Tournament Circuit Event 2016 Bugeater GT Warhammer 40,000 Primer Packet An Independent Tournament Circuit Event Primer Information This is a primer document. We reserve the right to adjust/modify the rules based on our own testing

More information

Administrivia. CS 188: Artificial Intelligence Spring Agents and Environments. Today. Vacuum-Cleaner World. A Reflex Vacuum-Cleaner

Administrivia. CS 188: Artificial Intelligence Spring Agents and Environments. Today. Vacuum-Cleaner World. A Reflex Vacuum-Cleaner CS 188: Artificial Intelligence Spring 2006 Lecture 2: Agents 1/19/2006 Administrivia Reminder: Drop-in Python/Unix lab Friday 1-4pm, 275 Soda Hall Optional, but recommended Accommodation issues Project

More information

CS 440 / ECE 448 Introduction to Artificial Intelligence Spring 2010 Lecture #5

CS 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 information

Grading Delays. We don t have permission to grade you (yet) We re working with tstaff on a solution We ll get grades back to you as soon as we can

Grading Delays. We don t have permission to grade you (yet) We re working with tstaff on a solution We ll get grades back to you as soon as we can Grading Delays We don t have permission to grade you (yet) We re working with tstaff on a solution We ll get grades back to you as soon as we can Due next week: warmup2 retries dungeon_crawler1 extra retries

More information

CS 188: Artificial Intelligence

CS 188: Artificial Intelligence CS 188: Artificial Intelligence Adversarial Search Instructor: Stuart Russell University of California, Berkeley Game Playing State-of-the-Art Checkers: 1950: First computer player. 1959: Samuel s self-taught

More information

Artificial Intelligence Paper Presentation

Artificial Intelligence Paper Presentation Artificial Intelligence Paper Presentation Human-Level AI s Killer Application Interactive Computer Games By John E.Lairdand Michael van Lent ( 2001 ) Fion Ching Fung Li ( 2010-81329) Content Introduction

More information

CS 480: GAME AI TACTIC AND STRATEGY. 5/15/2012 Santiago Ontañón

CS 480: GAME AI TACTIC AND STRATEGY. 5/15/2012 Santiago Ontañón CS 480: GAME AI TACTIC AND STRATEGY 5/15/2012 Santiago Ontañón santi@cs.drexel.edu https://www.cs.drexel.edu/~santi/teaching/2012/cs480/intro.html Reminders Check BBVista site for the course regularly

More information

Evaluating a Cognitive Agent-Orientated Approach for the creation of Artificial Intelligence. Tom Peeters

Evaluating a Cognitive Agent-Orientated Approach for the creation of Artificial Intelligence. Tom Peeters Evaluating a Cognitive Agent-Orientated Approach for the creation of Artificial Intelligence in StarCraft Tom Peeters Evaluating a Cognitive Agent-Orientated Approach for the creation of Artificial Intelligence

More information