SlideShare ist ein Scribd-Unternehmen logo
1 von 54
Pattern Recognition
& Limits of Machine
     Learning

   Game Programming
     Kit Ming Chan
About Our Authors
• Section 10.3
   – Timo Kaukoranta, Jouni Smed, Harri Hakonen
   – Department of I.T., University of Turku, Finland
   – Smed: computer games, optimization, and scheduling algorithms,
     doctoral degree from university of Turku <http://staff.cs.utu.fi/staff/jouni.smed/>
   – Hakonen: Algorithms for Computer Games, String Algorithmic,
     Software Construction and Object Integrity <
      http://staff.cs.utu.fi/staff/harri.hakonen/>


• Section 10.5
   – Neil Kirby
      • Lucent Tech, Bell Labs, nak@lucent.com, MS in Comp Sci, Ohio
        State University.
      • currently develops .NET solutions.
      • built speech recognition software and teaching at the university
        level.
      • In his spare time he designs multi-player, tactical combat
        computer games. He especially enjoys writing programs for
        computer opponents that play well without cheating.
• 10.5 Getting around the Limits of Machine
                  Learning
Categories of Limitations
• Four Questions
    •   Is it cheap to see (recognize) the thing to learn from?
    •   Is it cheap to store the knowledge?
    •   Is it cheap to use the knowledge?
    •   Does learning make the game better?
Divisions of Problem Space

• Implicit vs. explicit learning
  – Implicit means the game is self motivated to
    learn
  – Explicit means the game is told to learn


• Learn in the field vs. in development
  – Flexibility vs. risky quality assurance
Examples of Learning

• Simple question:
   – Implicit or explicit learning? Learning in field or development?
   – Is it cheap to see/store/use knowledge and does it improve the game?
   – How to deal with quality assurance?

• Black & White
   – Remember in the last class when the human player teaches his
     monster to throw stone at the village?

   1.   Explicit and In field learning
   2.   Cheap to see ( just copy the player), Cheap to store (proven by
        example), Cheap to use (game runs well on target machines)
   3.   Improve the game (sure! Increase enjoyment of replaying)
   4.   To avoid quality assurance problem, creatures are programmed with
        innate behaviors that constrain learning
Example of Learning
• Command & Conquer Renegade
  – A feature that is turned off in the shipped version is a
    code that copies player movement and add new paths to
    the pathfinder.
 1.   Implicit and in field learning
 2.   Cheap to see ( computationally easy)
 3.   Cheap to store (free! Pathfinder already stores this type of info)
 4.   Cheap to use (certainly! Just add some more paths to pathfinder)
 5.   Improve the game (makes AI more intelligent)
 6.   No quality assurance concern because it makes use of original, safe
      component (pathfinder) of the game
Example of Learning
  Re-volt (racing game)
–    A genetic algorithm is used during
     development to tune parameters and
     reduce lap times
–    Implicit & in development learning
–    Cheap to see
    • ( during game has no cost, but
        during development it is costly to run
        GA)
–    Cheap to store
    • ( free! Just change the parameters)
–    Cheap to use
    • (during game has no cost, but during
        development it takes a long time)
–    Improve the game
    • (makes AI more intelligent)
–    No quality assurance concern
Limits to Learning?
• What are some limits you can think of now?

Most limitations fall into these categories
1. Knowledge representation
2. Recognizing the knowledge Is the knowledge cheap to see?
3. Storing the knowledge           Is the knowledge cheap to store?
4. Using the knowledge            Is the knowledge cheap to use?
The last 3 are simply the first 3 questions we have been
   talking about
Knowledge Representation

• Consider music coding
  – One channel of CD-quality music
     • requires 88,200 bytes / sec regardless of content
  – MIDI
     • a few events per note,
     • most music is roughly a few notes per second.
  – Printed sheet music
     • one event per note
  Limit 1: the higher the level of representation, the
    easier the knowledge to work with, but the more
    expensive to acquire
Seeing More Clearly
• Limit 2: AI must store information to deal with the
  past
• The present
  – Easier to learn than past
     • B&W ties feedback to behavior temporally
     • C&C Renegade reduces mouse-and-keyboard input into paths,
       and pathfinder stores new area connectivity
     • Re-Volt uses the lap timer to differentiate good parameters from
       suboptimal ones.
• The past
  – Racing game, Backgammon are not history dependent
  – For history dependent games, it is much more difficult to
    understand causal chain in history
Seeing More Clearly

• Limit 3: Instance based methods learn
  wrong things from data
  – Neural nets, Markov models
  – Need good training data that resembles testing
  – Cannot differentiate similar (but different) data
    even if trained with it
Seeing More Clearly
• Examples of cases that are hard to learn in instanced-
  based learning
   1. Neural Networks to train tank recognition




  2. Pronunciation of One, Two, and Three in German
  http://www.bbc.co.uk/languages/german/lj/language_notes/1_10.shtml
Storing new Knowledge

• Limit 4: AI cannot do sophisticated algorithm
  on the fly (thus we store knowledge)
• Avoid over-fitting (learning the wrong thing)
  – Neural network, Markov
  – Improvement: learn from just the new datum
  – Overfitting because of small new dataset!
  – Neural network can compensate by temporal
    differences
Using new Knowledge
• Limit 5: If games are not designed to use
  new knowledge, new storage and capability
  will need to be added
• Games should design to exploit new
  knowledge in an integrated fashion
  – C&C again, where new data is integrated into
    pathfinder
  – B&W, new data determines behavior of monster
Conclusion
• Machine Learning present in
  – In field (player may or may not be aware)
  – In development
• Knowledge can be learned
  – Explicitly or implicitly
• Limits of Machine Learning
  – The cost to see / recognize knowledge
  – The cost to store
  – The cost to use
• Does it make the game better
Limits in Use of Pattern
               Recognition
• Limits of Machine Learning
  – The cost to see / recognize knowledge
     • Expensive!!
  – The cost to store
  – The cost to use  Could be expensive
  – Does it make the game better  hopefully

• Usually in development
  – Black and White is in field
• “Unfortunately, in the development of AIs for CGs the scope
  of pattern recognition has not been widely realized…Our
  motivation is to do pattern recognition ourselves to discern
  where pattern recognition can be applied in CG” [Hakonen]

• Many classic academic games such as Chess (Deep Blue),
  Backgammons, Go made use pattern recognition and
  achieved good result.

• Many games do use neural networks, but does not
  necessarily use pattern recognition.
• 10.3 Understanding Pattern Recognition
  Methods
Intro to Pattern Recognition 1

• Wikipedia:
• Pattern recognition … can be defined as "the
  act of taking in raw data and taking an action
  based on the category of the data" [1].
  – image analysis, character recognition, speech
    analysis, man and machine diagnostics, person
    identification and industrial inspection.
Intro to Pattern Recognition 2


• Textbook Definition (in the context of CG):
  – To abstract relevant information from the game
    world and, based on the retrieved information,
    construct concepts and deduce patterns for the
    use of higher level reasoning and decision-
    making systems.
Intro to Pattern Recognition 3


                          Abstract
                          relevant info,
                          compare to old
                          info in KB,
                          deduce pattern



                          Choose from a
                          list of possible
                          actions
                          available in the
                          current state,
                          balance it to the
                          requested state
Questions
1. Why do we need a decision-making system?
  Why don’t we just simply map patterns to some
  reaction? (Hint: Do we know everything about
  the environment to make the decision?)
      The world is not deterministic..
      -Built-in randomness
      -Human players’ action


2. Where do you think PR can be applied for
computer games?
Intro to Pattern Recognition 4

• Some suggested uses of pattern recognition:
  – During game:
    •   Enemy evaluation and prediction
    •   Coaching
    •   Group coordination
    •   Terrain analysis
    •   Learning

         – Black and White
         – Command and Conquer Renegade (attempted)

  – During development
    • Re-Volt
• Functional Approach.
• How is the use of PR differ with…
  – Levels of decision making ?
  – Stance towards the player ?
Functional – Level of Decision Making

• Suitability of pattern recognition depends on the level of
  decision making:
   – Strategic Level



   – Tactical Level



   – Operational Level
Functional– Level of Decision Making

Level of    Duration   Size of    Speed/ Use
decision               Plan       of Pattern    Strategic Game
making                            Recognition   Example

Strategic   Long-term All         Offline /     terrain is analyzed to
                      players     extensive     find advantageous
                                  use           positions to plan the
                                                maneuvers
Tactical    medium     A group    Delivered     decisions made on the
                                  real time /   engaging platoons and
                                  some use      the battleground
Operational immediate Individual Made in real To shoot, dodge, or
                                 time / no    charge
                                 use
Functional - Stance

• Enemy
 – Provide Challenge
 – Demonstrate Intelligent (at least purposeful)
   behavior
 – PR to aid computer’s decision making
   • Prediction and production
Functional - Stance

– Ally,
   • Augment user interface
      – Hints and guide
   • Aiding the human
     player

   • End result should be
     visually accessible and
     consistent, but not
     necessarily complete
Functional - Stance

Neutral :
-Context dependent

-Commentory
   -highlighting events and
   providing background
   highlighting events and
   background information

- soccer referee
    -Judging rule violation
Functional– Stance

– Modeled Language?
  • A generator labels events and states with symbol
  • Modeling recognizes the underlying dependencies
    between symbols
  • Short term history sufficient
Functional–     Prediction
– Predict next symbol, calculate probability of the
  next action of opponent
Functional–   Production
– observe opponent and produce next symbol
  (memcpy)
• PR as these problems:
  – Optimization
  – Adaptation
  – Uncertainty (not going to talk about)
• Algorithm used in each problem area
• How the level of decision making decides
  what PR algorithm to use
Methodology - Optimization

Optimization
  – an objective function (to max or min)
  – A set of variables
  – A set of constraints


• Pattern recognition as an optimization
  problem is to have an objective function to
  rank the solution candidates
Methodology - Optimization
Methodology - Optimization



• Project # 6: tweak AI to beat some opponents
• Marc’s presentation: the tweaking could be
  done automatically
• This is related to pattern recognition
  – Trying to identify strengths and weaknesses of
    opponents
Methodology - Optimization

• Age of Empire Example
  – Objective: Balance civilizations and units
  – A combat comparison simulator is used to test battles
    with different troop combinations

  – The set of variables: Attributes (armor, hit point,
    damage, range)
  – The set of constraints: the range of allowed values
  – Objective Function: min(difference of the number of
    victories of different civilizations in simulator battles)
  – Attributes are changed to even out discrepancies
These slides are taken from [Street]
Methodology - Optimization

• How to find more optimal variable values?
• Heuristic functions
  – Fastest and simplest
  – Get stuck at local optimum before finding global
  – Use multiple search traces instead of one
Methodology - Optimization
• How to find more optimal variable values and
  avoid local optimum?

• Genetic Algorithm
  – Avoid local optimum. A population of candidate
    solutions, go thru stages of natural selection,
    objective function is to weed out the weak
    candidates
  – Vulnerable to dependency of variables, CPU
    exhaustive
Methodology - Optimization
• Another way to find more optimal variable
  values and avoid local optimum?

• Swarm Algorithm
  – Avoid local optimum (if min speed is set)
  – faster than genetic algorithm
  – next 3 slides on Particle Swarm Optimization
Particle Swarm Optimization 1

– PSO is very similar to genetic algorithm, but does not
  have genetic operators like crossover and mutation.
  Particles update themselves with the internal velocity.

– The idea is similar to bird flocks searching for food, don’t
  know where the food is, but know how far from it
      Bird = particle, Food = optimal solution
      pbest = the best solution (fitness) a particle has
              achieved so far.
      gbest = the global best solution of all particles


– pbest and gbest are stored in memory
Particle Swarm Optimization 2

• v[] = v0[] + c1 * rand() * (pbest[] - present[]) +
  c2 * rand() * (gbest[] - present[]) -----------(a)

• present[] = present0[] + v[] ------------------(b)

v[]           = the particle velocity
present[]     = the current particle (solution).
rand ()       = a random number between (0,1).
c1, c2        = learning factors. usually c1 = c2 = 2.

  http://uk.geocities.com/markcsinclair/pso.html
Optimization & the Level of Decision
                  Making

• Strategic Level:
  – Computationally hard to solve
  – With relaxed constraint that the variables are not
    interdependent, then genetic algorithm
• Tactical Level:
  – Must be responsive
  – Single trace, heuristic functions
• Operational Level:
  – Real-time,
  – simple objective function (switch statement)
Methodology - Adaptation

• Adaptation
  – The ability to make appropriate responses to
    changed or changing circumstances


• Try to model the originator of the modeled
  data
Methodology - Adaptation

• Adaptation vs.
  Optimization
  – Adaptation
     • looks for a
       function behind
       a solution,
  – Optimization
     • looks for a
       solution for a
       given function
Methodology - Adaptation

• When is adaptation useful? Why is it hard to
  use?
1. Useful when the affecting factors or mechanisms behind
   the phenomena is unknown or dynamic

2. Hard to use because it requires sampling the search
   space to cover sufficiently. The more complex the cause
   is, the sparser the our sample gets (combinatorial
   explosion)
Methodology - Adaptation

• Neural Networks
  – Can adapt to situation where we do not have background
    knowledge of dependencies
  – Supervised (predefined categories for results) or
    unsupervised learning
  – For more information, please read Chp11
• Hidden Markov Model
  – System is conditionally independent of the past states
  – each state has a probability distribution over the possible
    output tokens
  – the challenge is to determine the hidden parameters from
    the observable parameters
  – Can adapt to recurring structure
Adaptation and the level of decision making

• Strategic Level
  – Supervised or unsupervised learning
  – Can afford great computational demand
• Tactical Level
  – Hidden Markov models
  – More dynamic environment
  – Credibility of results can be evaluated
• Operation Level
  – Stochastic interpretation for input data, or
  – Use a ready-adapted neural network
Conclusion
• Pattern Recognition
  –   PR is not well explored in gaming yet
  –   Biggest limit is computational complexity
  –   A lot of time is domain dependent
  –   Algorithms used depend highly on required
      responsiveness

  – Functional Approach
       • Level of decision making
       • Stance

  – Methodological Approach
       • Optimization
       • Adaptation
       • Uncertainty ( not discussed )
References
•   Hu, Xiaohui. “Particle Swarm Optimization Tutorial,”
    http://www.swarmintelligence.org/tutorials.php

•   Fraser, Neil. “Neural Network Follies.” http://neil.fraser.name/writing/tank/

•   German steps, number 1-10.
    http://www.bbc.co.uk/languages/german/lj/language_notes/1_10.shtml

•   Shutton, R. “Learning to Predict by the Method of Temporal Differences,”
    ftp://ftp.cs.umass.edu/pub/anw/pub/sutton/sutton-88.ps.gz

•   Kidd, Petersen, Street, “How to Balance a Real-Time Strategy Game: Lessons from the
    Age of Empires Series,” http://www.gdconf.com/archives/2001/gstreetprintable3.ppt

•   Timo Kaukoranta, Jouni Smed, Harri Hakonen. “Role of Pattern Recognition in Computer
    Games.” http://staff.cs.utu.fi/staff/jouni.smed/papers/PRinCG.pdf

Weitere ähnliche Inhalte

Was ist angesagt?

Basics of Machine Learning
Basics of Machine LearningBasics of Machine Learning
Basics of Machine Learningbutest
 
Machine Learning Applications in NLP.ppt
Machine Learning Applications in NLP.pptMachine Learning Applications in NLP.ppt
Machine Learning Applications in NLP.pptbutest
 
Machine learning
Machine learningMachine learning
Machine learningRohit Kumar
 
Machine Learning presentation.
Machine Learning presentation.Machine Learning presentation.
Machine Learning presentation.butest
 
Introduction to-machine-learning
Introduction to-machine-learningIntroduction to-machine-learning
Introduction to-machine-learningBabu Priyavrat
 
Lecture 2 Basic Concepts in Machine Learning for Language Technology
Lecture 2 Basic Concepts in Machine Learning for Language TechnologyLecture 2 Basic Concepts in Machine Learning for Language Technology
Lecture 2 Basic Concepts in Machine Learning for Language TechnologyMarina Santini
 
Lecture1 introduction to machine learning
Lecture1 introduction to machine learningLecture1 introduction to machine learning
Lecture1 introduction to machine learningUmmeSalmaM1
 
Tips and tricks to win kaggle data science competitions
Tips and tricks to win kaggle data science competitionsTips and tricks to win kaggle data science competitions
Tips and tricks to win kaggle data science competitionsDarius Barušauskas
 
Machine Learning Basics
Machine Learning BasicsMachine Learning Basics
Machine Learning BasicsSuresh Arora
 
Machine learning ppt.
Machine learning ppt.Machine learning ppt.
Machine learning ppt.ASHOK KUMAR
 
Hacking Predictive Modeling - RoadSec 2018
Hacking Predictive Modeling - RoadSec 2018Hacking Predictive Modeling - RoadSec 2018
Hacking Predictive Modeling - RoadSec 2018HJ van Veen
 
Fairly Measuring Fairness In Machine Learning
Fairly Measuring Fairness In Machine LearningFairly Measuring Fairness In Machine Learning
Fairly Measuring Fairness In Machine LearningHJ van Veen
 
Artificial Intelligence in Robot Path Planning
Artificial Intelligence in Robot Path PlanningArtificial Intelligence in Robot Path Planning
Artificial Intelligence in Robot Path Planningiosrjce
 
Algorithms Design Patterns
Algorithms Design PatternsAlgorithms Design Patterns
Algorithms Design PatternsAshwin Shiv
 
Demystifying Machine Learning
Demystifying Machine LearningDemystifying Machine Learning
Demystifying Machine LearningAyodele Odubela
 
Deep Learning For Practitioners, lecture 2: Selecting the right applications...
Deep Learning For Practitioners,  lecture 2: Selecting the right applications...Deep Learning For Practitioners,  lecture 2: Selecting the right applications...
Deep Learning For Practitioners, lecture 2: Selecting the right applications...ananth
 
Machine learning basics
Machine learning basics Machine learning basics
Machine learning basics Akanksha Bali
 

Was ist angesagt? (20)

Basics of Machine Learning
Basics of Machine LearningBasics of Machine Learning
Basics of Machine Learning
 
Machine Learning Applications in NLP.ppt
Machine Learning Applications in NLP.pptMachine Learning Applications in NLP.ppt
Machine Learning Applications in NLP.ppt
 
Machine learning
Machine learningMachine learning
Machine learning
 
Machine Learning presentation.
Machine Learning presentation.Machine Learning presentation.
Machine Learning presentation.
 
Introduction to-machine-learning
Introduction to-machine-learningIntroduction to-machine-learning
Introduction to-machine-learning
 
Lecture 2 Basic Concepts in Machine Learning for Language Technology
Lecture 2 Basic Concepts in Machine Learning for Language TechnologyLecture 2 Basic Concepts in Machine Learning for Language Technology
Lecture 2 Basic Concepts in Machine Learning for Language Technology
 
Lecture1 introduction to machine learning
Lecture1 introduction to machine learningLecture1 introduction to machine learning
Lecture1 introduction to machine learning
 
Tips and tricks to win kaggle data science competitions
Tips and tricks to win kaggle data science competitionsTips and tricks to win kaggle data science competitions
Tips and tricks to win kaggle data science competitions
 
Machine Learning Basics
Machine Learning BasicsMachine Learning Basics
Machine Learning Basics
 
Machine learning ppt.
Machine learning ppt.Machine learning ppt.
Machine learning ppt.
 
Hacking Predictive Modeling - RoadSec 2018
Hacking Predictive Modeling - RoadSec 2018Hacking Predictive Modeling - RoadSec 2018
Hacking Predictive Modeling - RoadSec 2018
 
ML Basics
ML BasicsML Basics
ML Basics
 
Fairly Measuring Fairness In Machine Learning
Fairly Measuring Fairness In Machine LearningFairly Measuring Fairness In Machine Learning
Fairly Measuring Fairness In Machine Learning
 
Artificial Intelligence in Robot Path Planning
Artificial Intelligence in Robot Path PlanningArtificial Intelligence in Robot Path Planning
Artificial Intelligence in Robot Path Planning
 
Machine learning
Machine learningMachine learning
Machine learning
 
AI: Logic in AI
AI: Logic in AIAI: Logic in AI
AI: Logic in AI
 
Algorithms Design Patterns
Algorithms Design PatternsAlgorithms Design Patterns
Algorithms Design Patterns
 
Demystifying Machine Learning
Demystifying Machine LearningDemystifying Machine Learning
Demystifying Machine Learning
 
Deep Learning For Practitioners, lecture 2: Selecting the right applications...
Deep Learning For Practitioners,  lecture 2: Selecting the right applications...Deep Learning For Practitioners,  lecture 2: Selecting the right applications...
Deep Learning For Practitioners, lecture 2: Selecting the right applications...
 
Machine learning basics
Machine learning basics Machine learning basics
Machine learning basics
 

Andere mochten auch

Deep Learning: Towards General Artificial Intelligence
Deep Learning: Towards General Artificial IntelligenceDeep Learning: Towards General Artificial Intelligence
Deep Learning: Towards General Artificial IntelligenceRukshan Batuwita
 
Artificial intelligence Pattern recognition system
Artificial intelligence Pattern recognition systemArtificial intelligence Pattern recognition system
Artificial intelligence Pattern recognition systemREHMAT ULLAH
 
Pattern recognition and Machine Learning.
Pattern recognition and Machine Learning.Pattern recognition and Machine Learning.
Pattern recognition and Machine Learning.Rohit Kumar
 

Andere mochten auch (6)

Deep Learning: Towards General Artificial Intelligence
Deep Learning: Towards General Artificial IntelligenceDeep Learning: Towards General Artificial Intelligence
Deep Learning: Towards General Artificial Intelligence
 
Artificial intelligence Pattern recognition system
Artificial intelligence Pattern recognition systemArtificial intelligence Pattern recognition system
Artificial intelligence Pattern recognition system
 
Pattern recognition
Pattern recognitionPattern recognition
Pattern recognition
 
Introduction to pattern recognition
Introduction to pattern recognitionIntroduction to pattern recognition
Introduction to pattern recognition
 
Pattern recognition and Machine Learning.
Pattern recognition and Machine Learning.Pattern recognition and Machine Learning.
Pattern recognition and Machine Learning.
 
Pattern Recognition
Pattern RecognitionPattern Recognition
Pattern Recognition
 

Ähnlich wie LearningKit.ppt

Transfer Learning: An overview
Transfer Learning: An overviewTransfer Learning: An overview
Transfer Learning: An overviewjins0618
 
Deep learning introduction
Deep learning introductionDeep learning introduction
Deep learning introductionAdwait Bhave
 
Dataiku hadoop summit - semi-supervised learning with hadoop for understand...
Dataiku   hadoop summit - semi-supervised learning with hadoop for understand...Dataiku   hadoop summit - semi-supervised learning with hadoop for understand...
Dataiku hadoop summit - semi-supervised learning with hadoop for understand...Dataiku
 
Technical aspectof game design (Game Architecture)
Technical aspectof game design (Game Architecture)Technical aspectof game design (Game Architecture)
Technical aspectof game design (Game Architecture)Rajkumar Pawar
 
Understanding and improving games through machine learning - Natasha Latysheva
Understanding and improving games through machine learning - Natasha LatyshevaUnderstanding and improving games through machine learning - Natasha Latysheva
Understanding and improving games through machine learning - Natasha LatyshevaLauren Cormack
 
AI hype or reality
AI  hype or realityAI  hype or reality
AI hype or realityAwantik Das
 
Шлигін Олександр “Розробка ігор в Unity загальні помилки” GameDev Conference ...
Шлигін Олександр “Розробка ігор в Unity загальні помилки” GameDev Conference ...Шлигін Олександр “Розробка ігор в Unity загальні помилки” GameDev Conference ...
Шлигін Олександр “Розробка ігор в Unity загальні помилки” GameDev Conference ...Lviv Startup Club
 
DN18 | The Data Janitor Returns | Daniel Molnar | Oberlo/Shopify
DN18 | The Data Janitor Returns | Daniel Molnar | Oberlo/Shopify DN18 | The Data Janitor Returns | Daniel Molnar | Oberlo/Shopify
DN18 | The Data Janitor Returns | Daniel Molnar | Oberlo/Shopify Dataconomy Media
 
The Data Janitor Returns | Daniel Molnar | DN18
The Data Janitor Returns | Daniel Molnar | DN18The Data Janitor Returns | Daniel Molnar | DN18
The Data Janitor Returns | Daniel Molnar | DN18DataconomyGmbH
 
116 Machine learning for Product Managers
116   Machine learning for Product Managers116   Machine learning for Product Managers
116 Machine learning for Product ManagersProductCamp Boston
 
Machine learning for product managers. Presented at Boston ProductCamp (June...
Machine learning for product  managers. Presented at Boston ProductCamp (June...Machine learning for product  managers. Presented at Boston ProductCamp (June...
Machine learning for product managers. Presented at Boston ProductCamp (June...Mukund Seshadri
 
State-Of-The Art Machine Learning Algorithms and How They Are Affected By Nea...
State-Of-The Art Machine Learning Algorithms and How They Are Affected By Nea...State-Of-The Art Machine Learning Algorithms and How They Are Affected By Nea...
State-Of-The Art Machine Learning Algorithms and How They Are Affected By Nea...inside-BigData.com
 
rsec2a-2016-jheaton-morning
rsec2a-2016-jheaton-morningrsec2a-2016-jheaton-morning
rsec2a-2016-jheaton-morningJeff Heaton
 
The Frontier of Deep Learning in 2020 and Beyond
The Frontier of Deep Learning in 2020 and BeyondThe Frontier of Deep Learning in 2020 and Beyond
The Frontier of Deep Learning in 2020 and BeyondNUS-ISS
 
Creating great Unity games for Windows 10 - Part 2
Creating great Unity games for Windows 10 - Part 2Creating great Unity games for Windows 10 - Part 2
Creating great Unity games for Windows 10 - Part 2Jiri Danihelka
 
Game design to enhance ca webinar final 12 16
Game design to enhance ca webinar final 12 16Game design to enhance ca webinar final 12 16
Game design to enhance ca webinar final 12 16Shane Gallagher
 

Ähnlich wie LearningKit.ppt (20)

Phx dl meetup
Phx dl meetupPhx dl meetup
Phx dl meetup
 
Transfer Learning: An overview
Transfer Learning: An overviewTransfer Learning: An overview
Transfer Learning: An overview
 
Deep learning introduction
Deep learning introductionDeep learning introduction
Deep learning introduction
 
Dataiku hadoop summit - semi-supervised learning with hadoop for understand...
Dataiku   hadoop summit - semi-supervised learning with hadoop for understand...Dataiku   hadoop summit - semi-supervised learning with hadoop for understand...
Dataiku hadoop summit - semi-supervised learning with hadoop for understand...
 
Technical aspectof game design (Game Architecture)
Technical aspectof game design (Game Architecture)Technical aspectof game design (Game Architecture)
Technical aspectof game design (Game Architecture)
 
Understanding and improving games through machine learning - Natasha Latysheva
Understanding and improving games through machine learning - Natasha LatyshevaUnderstanding and improving games through machine learning - Natasha Latysheva
Understanding and improving games through machine learning - Natasha Latysheva
 
PPT s09-machine vision-s2
PPT s09-machine vision-s2PPT s09-machine vision-s2
PPT s09-machine vision-s2
 
402 w2
402 w2402 w2
402 w2
 
AI hype or reality
AI  hype or realityAI  hype or reality
AI hype or reality
 
Шлигін Олександр “Розробка ігор в Unity загальні помилки” GameDev Conference ...
Шлигін Олександр “Розробка ігор в Unity загальні помилки” GameDev Conference ...Шлигін Олександр “Розробка ігор в Unity загальні помилки” GameDev Conference ...
Шлигін Олександр “Розробка ігор в Unity загальні помилки” GameDev Conference ...
 
DN18 | The Data Janitor Returns | Daniel Molnar | Oberlo/Shopify
DN18 | The Data Janitor Returns | Daniel Molnar | Oberlo/Shopify DN18 | The Data Janitor Returns | Daniel Molnar | Oberlo/Shopify
DN18 | The Data Janitor Returns | Daniel Molnar | Oberlo/Shopify
 
The Data Janitor Returns | Daniel Molnar | DN18
The Data Janitor Returns | Daniel Molnar | DN18The Data Janitor Returns | Daniel Molnar | DN18
The Data Janitor Returns | Daniel Molnar | DN18
 
116 Machine learning for Product Managers
116   Machine learning for Product Managers116   Machine learning for Product Managers
116 Machine learning for Product Managers
 
Machine learning for product managers. Presented at Boston ProductCamp (June...
Machine learning for product  managers. Presented at Boston ProductCamp (June...Machine learning for product  managers. Presented at Boston ProductCamp (June...
Machine learning for product managers. Presented at Boston ProductCamp (June...
 
State-Of-The Art Machine Learning Algorithms and How They Are Affected By Nea...
State-Of-The Art Machine Learning Algorithms and How They Are Affected By Nea...State-Of-The Art Machine Learning Algorithms and How They Are Affected By Nea...
State-Of-The Art Machine Learning Algorithms and How They Are Affected By Nea...
 
rsec2a-2016-jheaton-morning
rsec2a-2016-jheaton-morningrsec2a-2016-jheaton-morning
rsec2a-2016-jheaton-morning
 
U1 Lesson 06
U1 Lesson 06U1 Lesson 06
U1 Lesson 06
 
The Frontier of Deep Learning in 2020 and Beyond
The Frontier of Deep Learning in 2020 and BeyondThe Frontier of Deep Learning in 2020 and Beyond
The Frontier of Deep Learning in 2020 and Beyond
 
Creating great Unity games for Windows 10 - Part 2
Creating great Unity games for Windows 10 - Part 2Creating great Unity games for Windows 10 - Part 2
Creating great Unity games for Windows 10 - Part 2
 
Game design to enhance ca webinar final 12 16
Game design to enhance ca webinar final 12 16Game design to enhance ca webinar final 12 16
Game design to enhance ca webinar final 12 16
 

Mehr von butest

EL MODELO DE NEGOCIO DE YOUTUBE
EL MODELO DE NEGOCIO DE YOUTUBEEL MODELO DE NEGOCIO DE YOUTUBE
EL MODELO DE NEGOCIO DE YOUTUBEbutest
 
1. MPEG I.B.P frame之不同
1. MPEG I.B.P frame之不同1. MPEG I.B.P frame之不同
1. MPEG I.B.P frame之不同butest
 
LESSONS FROM THE MICHAEL JACKSON TRIAL
LESSONS FROM THE MICHAEL JACKSON TRIALLESSONS FROM THE MICHAEL JACKSON TRIAL
LESSONS FROM THE MICHAEL JACKSON TRIALbutest
 
Timeline: The Life of Michael Jackson
Timeline: The Life of Michael JacksonTimeline: The Life of Michael Jackson
Timeline: The Life of Michael Jacksonbutest
 
Popular Reading Last Updated April 1, 2010 Adams, Lorraine The ...
Popular Reading Last Updated April 1, 2010 Adams, Lorraine The ...Popular Reading Last Updated April 1, 2010 Adams, Lorraine The ...
Popular Reading Last Updated April 1, 2010 Adams, Lorraine The ...butest
 
LESSONS FROM THE MICHAEL JACKSON TRIAL
LESSONS FROM THE MICHAEL JACKSON TRIALLESSONS FROM THE MICHAEL JACKSON TRIAL
LESSONS FROM THE MICHAEL JACKSON TRIALbutest
 
Com 380, Summer II
Com 380, Summer IICom 380, Summer II
Com 380, Summer IIbutest
 
The MYnstrel Free Press Volume 2: Economic Struggles, Meet Jazz
The MYnstrel Free Press Volume 2: Economic Struggles, Meet JazzThe MYnstrel Free Press Volume 2: Economic Struggles, Meet Jazz
The MYnstrel Free Press Volume 2: Economic Struggles, Meet Jazzbutest
 
MICHAEL JACKSON.doc
MICHAEL JACKSON.docMICHAEL JACKSON.doc
MICHAEL JACKSON.docbutest
 
Social Networks: Twitter Facebook SL - Slide 1
Social Networks: Twitter Facebook SL - Slide 1Social Networks: Twitter Facebook SL - Slide 1
Social Networks: Twitter Facebook SL - Slide 1butest
 
Facebook
Facebook Facebook
Facebook butest
 
Executive Summary Hare Chevrolet is a General Motors dealership ...
Executive Summary Hare Chevrolet is a General Motors dealership ...Executive Summary Hare Chevrolet is a General Motors dealership ...
Executive Summary Hare Chevrolet is a General Motors dealership ...butest
 
Welcome to the Dougherty County Public Library's Facebook and ...
Welcome to the Dougherty County Public Library's Facebook and ...Welcome to the Dougherty County Public Library's Facebook and ...
Welcome to the Dougherty County Public Library's Facebook and ...butest
 
NEWS ANNOUNCEMENT
NEWS ANNOUNCEMENTNEWS ANNOUNCEMENT
NEWS ANNOUNCEMENTbutest
 
C-2100 Ultra Zoom.doc
C-2100 Ultra Zoom.docC-2100 Ultra Zoom.doc
C-2100 Ultra Zoom.docbutest
 
MAC Printing on ITS Printers.doc.doc
MAC Printing on ITS Printers.doc.docMAC Printing on ITS Printers.doc.doc
MAC Printing on ITS Printers.doc.docbutest
 
Mac OS X Guide.doc
Mac OS X Guide.docMac OS X Guide.doc
Mac OS X Guide.docbutest
 
WEB DESIGN!
WEB DESIGN!WEB DESIGN!
WEB DESIGN!butest
 

Mehr von butest (20)

EL MODELO DE NEGOCIO DE YOUTUBE
EL MODELO DE NEGOCIO DE YOUTUBEEL MODELO DE NEGOCIO DE YOUTUBE
EL MODELO DE NEGOCIO DE YOUTUBE
 
1. MPEG I.B.P frame之不同
1. MPEG I.B.P frame之不同1. MPEG I.B.P frame之不同
1. MPEG I.B.P frame之不同
 
LESSONS FROM THE MICHAEL JACKSON TRIAL
LESSONS FROM THE MICHAEL JACKSON TRIALLESSONS FROM THE MICHAEL JACKSON TRIAL
LESSONS FROM THE MICHAEL JACKSON TRIAL
 
Timeline: The Life of Michael Jackson
Timeline: The Life of Michael JacksonTimeline: The Life of Michael Jackson
Timeline: The Life of Michael Jackson
 
Popular Reading Last Updated April 1, 2010 Adams, Lorraine The ...
Popular Reading Last Updated April 1, 2010 Adams, Lorraine The ...Popular Reading Last Updated April 1, 2010 Adams, Lorraine The ...
Popular Reading Last Updated April 1, 2010 Adams, Lorraine The ...
 
LESSONS FROM THE MICHAEL JACKSON TRIAL
LESSONS FROM THE MICHAEL JACKSON TRIALLESSONS FROM THE MICHAEL JACKSON TRIAL
LESSONS FROM THE MICHAEL JACKSON TRIAL
 
Com 380, Summer II
Com 380, Summer IICom 380, Summer II
Com 380, Summer II
 
PPT
PPTPPT
PPT
 
The MYnstrel Free Press Volume 2: Economic Struggles, Meet Jazz
The MYnstrel Free Press Volume 2: Economic Struggles, Meet JazzThe MYnstrel Free Press Volume 2: Economic Struggles, Meet Jazz
The MYnstrel Free Press Volume 2: Economic Struggles, Meet Jazz
 
MICHAEL JACKSON.doc
MICHAEL JACKSON.docMICHAEL JACKSON.doc
MICHAEL JACKSON.doc
 
Social Networks: Twitter Facebook SL - Slide 1
Social Networks: Twitter Facebook SL - Slide 1Social Networks: Twitter Facebook SL - Slide 1
Social Networks: Twitter Facebook SL - Slide 1
 
Facebook
Facebook Facebook
Facebook
 
Executive Summary Hare Chevrolet is a General Motors dealership ...
Executive Summary Hare Chevrolet is a General Motors dealership ...Executive Summary Hare Chevrolet is a General Motors dealership ...
Executive Summary Hare Chevrolet is a General Motors dealership ...
 
Welcome to the Dougherty County Public Library's Facebook and ...
Welcome to the Dougherty County Public Library's Facebook and ...Welcome to the Dougherty County Public Library's Facebook and ...
Welcome to the Dougherty County Public Library's Facebook and ...
 
NEWS ANNOUNCEMENT
NEWS ANNOUNCEMENTNEWS ANNOUNCEMENT
NEWS ANNOUNCEMENT
 
C-2100 Ultra Zoom.doc
C-2100 Ultra Zoom.docC-2100 Ultra Zoom.doc
C-2100 Ultra Zoom.doc
 
MAC Printing on ITS Printers.doc.doc
MAC Printing on ITS Printers.doc.docMAC Printing on ITS Printers.doc.doc
MAC Printing on ITS Printers.doc.doc
 
Mac OS X Guide.doc
Mac OS X Guide.docMac OS X Guide.doc
Mac OS X Guide.doc
 
hier
hierhier
hier
 
WEB DESIGN!
WEB DESIGN!WEB DESIGN!
WEB DESIGN!
 

LearningKit.ppt

  • 1. Pattern Recognition & Limits of Machine Learning Game Programming Kit Ming Chan
  • 2. About Our Authors • Section 10.3 – Timo Kaukoranta, Jouni Smed, Harri Hakonen – Department of I.T., University of Turku, Finland – Smed: computer games, optimization, and scheduling algorithms, doctoral degree from university of Turku <http://staff.cs.utu.fi/staff/jouni.smed/> – Hakonen: Algorithms for Computer Games, String Algorithmic, Software Construction and Object Integrity < http://staff.cs.utu.fi/staff/harri.hakonen/> • Section 10.5 – Neil Kirby • Lucent Tech, Bell Labs, nak@lucent.com, MS in Comp Sci, Ohio State University. • currently develops .NET solutions. • built speech recognition software and teaching at the university level. • In his spare time he designs multi-player, tactical combat computer games. He especially enjoys writing programs for computer opponents that play well without cheating.
  • 3. • 10.5 Getting around the Limits of Machine Learning
  • 4. Categories of Limitations • Four Questions • Is it cheap to see (recognize) the thing to learn from? • Is it cheap to store the knowledge? • Is it cheap to use the knowledge? • Does learning make the game better?
  • 5. Divisions of Problem Space • Implicit vs. explicit learning – Implicit means the game is self motivated to learn – Explicit means the game is told to learn • Learn in the field vs. in development – Flexibility vs. risky quality assurance
  • 6. Examples of Learning • Simple question: – Implicit or explicit learning? Learning in field or development? – Is it cheap to see/store/use knowledge and does it improve the game? – How to deal with quality assurance? • Black & White – Remember in the last class when the human player teaches his monster to throw stone at the village? 1. Explicit and In field learning 2. Cheap to see ( just copy the player), Cheap to store (proven by example), Cheap to use (game runs well on target machines) 3. Improve the game (sure! Increase enjoyment of replaying) 4. To avoid quality assurance problem, creatures are programmed with innate behaviors that constrain learning
  • 7. Example of Learning • Command & Conquer Renegade – A feature that is turned off in the shipped version is a code that copies player movement and add new paths to the pathfinder. 1. Implicit and in field learning 2. Cheap to see ( computationally easy) 3. Cheap to store (free! Pathfinder already stores this type of info) 4. Cheap to use (certainly! Just add some more paths to pathfinder) 5. Improve the game (makes AI more intelligent) 6. No quality assurance concern because it makes use of original, safe component (pathfinder) of the game
  • 8. Example of Learning Re-volt (racing game) – A genetic algorithm is used during development to tune parameters and reduce lap times – Implicit & in development learning – Cheap to see • ( during game has no cost, but during development it is costly to run GA) – Cheap to store • ( free! Just change the parameters) – Cheap to use • (during game has no cost, but during development it takes a long time) – Improve the game • (makes AI more intelligent) – No quality assurance concern
  • 9. Limits to Learning? • What are some limits you can think of now? Most limitations fall into these categories 1. Knowledge representation 2. Recognizing the knowledge Is the knowledge cheap to see? 3. Storing the knowledge  Is the knowledge cheap to store? 4. Using the knowledge Is the knowledge cheap to use? The last 3 are simply the first 3 questions we have been talking about
  • 10. Knowledge Representation • Consider music coding – One channel of CD-quality music • requires 88,200 bytes / sec regardless of content – MIDI • a few events per note, • most music is roughly a few notes per second. – Printed sheet music • one event per note Limit 1: the higher the level of representation, the easier the knowledge to work with, but the more expensive to acquire
  • 11. Seeing More Clearly • Limit 2: AI must store information to deal with the past • The present – Easier to learn than past • B&W ties feedback to behavior temporally • C&C Renegade reduces mouse-and-keyboard input into paths, and pathfinder stores new area connectivity • Re-Volt uses the lap timer to differentiate good parameters from suboptimal ones. • The past – Racing game, Backgammon are not history dependent – For history dependent games, it is much more difficult to understand causal chain in history
  • 12. Seeing More Clearly • Limit 3: Instance based methods learn wrong things from data – Neural nets, Markov models – Need good training data that resembles testing – Cannot differentiate similar (but different) data even if trained with it
  • 13. Seeing More Clearly • Examples of cases that are hard to learn in instanced- based learning 1. Neural Networks to train tank recognition 2. Pronunciation of One, Two, and Three in German http://www.bbc.co.uk/languages/german/lj/language_notes/1_10.shtml
  • 14. Storing new Knowledge • Limit 4: AI cannot do sophisticated algorithm on the fly (thus we store knowledge) • Avoid over-fitting (learning the wrong thing) – Neural network, Markov – Improvement: learn from just the new datum – Overfitting because of small new dataset! – Neural network can compensate by temporal differences
  • 15. Using new Knowledge • Limit 5: If games are not designed to use new knowledge, new storage and capability will need to be added • Games should design to exploit new knowledge in an integrated fashion – C&C again, where new data is integrated into pathfinder – B&W, new data determines behavior of monster
  • 16. Conclusion • Machine Learning present in – In field (player may or may not be aware) – In development • Knowledge can be learned – Explicitly or implicitly • Limits of Machine Learning – The cost to see / recognize knowledge – The cost to store – The cost to use • Does it make the game better
  • 17. Limits in Use of Pattern Recognition • Limits of Machine Learning – The cost to see / recognize knowledge • Expensive!! – The cost to store – The cost to use  Could be expensive – Does it make the game better  hopefully • Usually in development – Black and White is in field
  • 18. • “Unfortunately, in the development of AIs for CGs the scope of pattern recognition has not been widely realized…Our motivation is to do pattern recognition ourselves to discern where pattern recognition can be applied in CG” [Hakonen] • Many classic academic games such as Chess (Deep Blue), Backgammons, Go made use pattern recognition and achieved good result. • Many games do use neural networks, but does not necessarily use pattern recognition.
  • 19. • 10.3 Understanding Pattern Recognition Methods
  • 20. Intro to Pattern Recognition 1 • Wikipedia: • Pattern recognition … can be defined as "the act of taking in raw data and taking an action based on the category of the data" [1]. – image analysis, character recognition, speech analysis, man and machine diagnostics, person identification and industrial inspection.
  • 21. Intro to Pattern Recognition 2 • Textbook Definition (in the context of CG): – To abstract relevant information from the game world and, based on the retrieved information, construct concepts and deduce patterns for the use of higher level reasoning and decision- making systems.
  • 22. Intro to Pattern Recognition 3 Abstract relevant info, compare to old info in KB, deduce pattern Choose from a list of possible actions available in the current state, balance it to the requested state
  • 23. Questions 1. Why do we need a decision-making system? Why don’t we just simply map patterns to some reaction? (Hint: Do we know everything about the environment to make the decision?) The world is not deterministic.. -Built-in randomness -Human players’ action 2. Where do you think PR can be applied for computer games?
  • 24. Intro to Pattern Recognition 4 • Some suggested uses of pattern recognition: – During game: • Enemy evaluation and prediction • Coaching • Group coordination • Terrain analysis • Learning – Black and White – Command and Conquer Renegade (attempted) – During development • Re-Volt
  • 25. • Functional Approach. • How is the use of PR differ with… – Levels of decision making ? – Stance towards the player ?
  • 26. Functional – Level of Decision Making • Suitability of pattern recognition depends on the level of decision making: – Strategic Level – Tactical Level – Operational Level
  • 27. Functional– Level of Decision Making Level of Duration Size of Speed/ Use decision Plan of Pattern Strategic Game making Recognition Example Strategic Long-term All Offline / terrain is analyzed to players extensive find advantageous use positions to plan the maneuvers Tactical medium A group Delivered decisions made on the real time / engaging platoons and some use the battleground Operational immediate Individual Made in real To shoot, dodge, or time / no charge use
  • 28. Functional - Stance • Enemy – Provide Challenge – Demonstrate Intelligent (at least purposeful) behavior – PR to aid computer’s decision making • Prediction and production
  • 29. Functional - Stance – Ally, • Augment user interface – Hints and guide • Aiding the human player • End result should be visually accessible and consistent, but not necessarily complete
  • 30. Functional - Stance Neutral : -Context dependent -Commentory -highlighting events and providing background highlighting events and background information - soccer referee -Judging rule violation
  • 31. Functional– Stance – Modeled Language? • A generator labels events and states with symbol • Modeling recognizes the underlying dependencies between symbols • Short term history sufficient
  • 32. Functional– Prediction – Predict next symbol, calculate probability of the next action of opponent
  • 33. Functional– Production – observe opponent and produce next symbol (memcpy)
  • 34. • PR as these problems: – Optimization – Adaptation – Uncertainty (not going to talk about) • Algorithm used in each problem area • How the level of decision making decides what PR algorithm to use
  • 35. Methodology - Optimization Optimization – an objective function (to max or min) – A set of variables – A set of constraints • Pattern recognition as an optimization problem is to have an objective function to rank the solution candidates
  • 37. Methodology - Optimization • Project # 6: tweak AI to beat some opponents • Marc’s presentation: the tweaking could be done automatically • This is related to pattern recognition – Trying to identify strengths and weaknesses of opponents
  • 38. Methodology - Optimization • Age of Empire Example – Objective: Balance civilizations and units – A combat comparison simulator is used to test battles with different troop combinations – The set of variables: Attributes (armor, hit point, damage, range) – The set of constraints: the range of allowed values – Objective Function: min(difference of the number of victories of different civilizations in simulator battles) – Attributes are changed to even out discrepancies
  • 39.
  • 40.
  • 41. These slides are taken from [Street]
  • 42. Methodology - Optimization • How to find more optimal variable values? • Heuristic functions – Fastest and simplest – Get stuck at local optimum before finding global – Use multiple search traces instead of one
  • 43. Methodology - Optimization • How to find more optimal variable values and avoid local optimum? • Genetic Algorithm – Avoid local optimum. A population of candidate solutions, go thru stages of natural selection, objective function is to weed out the weak candidates – Vulnerable to dependency of variables, CPU exhaustive
  • 44. Methodology - Optimization • Another way to find more optimal variable values and avoid local optimum? • Swarm Algorithm – Avoid local optimum (if min speed is set) – faster than genetic algorithm – next 3 slides on Particle Swarm Optimization
  • 45. Particle Swarm Optimization 1 – PSO is very similar to genetic algorithm, but does not have genetic operators like crossover and mutation. Particles update themselves with the internal velocity. – The idea is similar to bird flocks searching for food, don’t know where the food is, but know how far from it Bird = particle, Food = optimal solution pbest = the best solution (fitness) a particle has achieved so far. gbest = the global best solution of all particles – pbest and gbest are stored in memory
  • 46. Particle Swarm Optimization 2 • v[] = v0[] + c1 * rand() * (pbest[] - present[]) + c2 * rand() * (gbest[] - present[]) -----------(a) • present[] = present0[] + v[] ------------------(b) v[] = the particle velocity present[] = the current particle (solution). rand () = a random number between (0,1). c1, c2 = learning factors. usually c1 = c2 = 2. http://uk.geocities.com/markcsinclair/pso.html
  • 47. Optimization & the Level of Decision Making • Strategic Level: – Computationally hard to solve – With relaxed constraint that the variables are not interdependent, then genetic algorithm • Tactical Level: – Must be responsive – Single trace, heuristic functions • Operational Level: – Real-time, – simple objective function (switch statement)
  • 48. Methodology - Adaptation • Adaptation – The ability to make appropriate responses to changed or changing circumstances • Try to model the originator of the modeled data
  • 49. Methodology - Adaptation • Adaptation vs. Optimization – Adaptation • looks for a function behind a solution, – Optimization • looks for a solution for a given function
  • 50. Methodology - Adaptation • When is adaptation useful? Why is it hard to use? 1. Useful when the affecting factors or mechanisms behind the phenomena is unknown or dynamic 2. Hard to use because it requires sampling the search space to cover sufficiently. The more complex the cause is, the sparser the our sample gets (combinatorial explosion)
  • 51. Methodology - Adaptation • Neural Networks – Can adapt to situation where we do not have background knowledge of dependencies – Supervised (predefined categories for results) or unsupervised learning – For more information, please read Chp11 • Hidden Markov Model – System is conditionally independent of the past states – each state has a probability distribution over the possible output tokens – the challenge is to determine the hidden parameters from the observable parameters – Can adapt to recurring structure
  • 52. Adaptation and the level of decision making • Strategic Level – Supervised or unsupervised learning – Can afford great computational demand • Tactical Level – Hidden Markov models – More dynamic environment – Credibility of results can be evaluated • Operation Level – Stochastic interpretation for input data, or – Use a ready-adapted neural network
  • 53. Conclusion • Pattern Recognition – PR is not well explored in gaming yet – Biggest limit is computational complexity – A lot of time is domain dependent – Algorithms used depend highly on required responsiveness – Functional Approach • Level of decision making • Stance – Methodological Approach • Optimization • Adaptation • Uncertainty ( not discussed )
  • 54. References • Hu, Xiaohui. “Particle Swarm Optimization Tutorial,” http://www.swarmintelligence.org/tutorials.php • Fraser, Neil. “Neural Network Follies.” http://neil.fraser.name/writing/tank/ • German steps, number 1-10. http://www.bbc.co.uk/languages/german/lj/language_notes/1_10.shtml • Shutton, R. “Learning to Predict by the Method of Temporal Differences,” ftp://ftp.cs.umass.edu/pub/anw/pub/sutton/sutton-88.ps.gz • Kidd, Petersen, Street, “How to Balance a Real-Time Strategy Game: Lessons from the Age of Empires Series,” http://www.gdconf.com/archives/2001/gstreetprintable3.ppt • Timo Kaukoranta, Jouni Smed, Harri Hakonen. “Role of Pattern Recognition in Computer Games.” http://staff.cs.utu.fi/staff/jouni.smed/papers/PRinCG.pdf