SlideShare ist ein Scribd-Unternehmen logo
1 von 58
Downloaden Sie, um offline zu lesen
23/12/2011 | 1                                                                                    IA




                                              cOncienS	
  
                                                     Sergio	
  Alvarez
                              Sergio	
  Alvarez-­‐Napagao(1)GIómez Gómez-­‐SebasCà	
  (1),
                                                     Ignasi	
  ,	
   gnasi	
  
                                              Javier	
  Vázquez-­‐Salceda	
  (1)
                                                    Javier	
  Vázquez
                                                     João	
  dfasdf

                                                                                                        (1)
                                                         {salvarez,igomez,jvazquez}@lsi.upc.edu
                                                               Universitat	
  Politècnica	
  de	
  Catalunya



             ALIVE EU FUNDED PROJECT
              ALIVE EU FUNDED PROJECT



martes 3 de enero de 12
23/12/2011                                                     IA




             Commercial	
  games	
  AI


            •    Main	
  objecCve...
                   to	
  deliver	
  the	
  illusion	
  of	
  intelligence

            •    Categories:
                  – Movement	
  (pathfinding,	
  collision,	
  visibility)
                  – Individual	
  Behaviour	
  (NPCs)
                  – CollecCve	
  Strategy	
  (NPCs	
  groups)


                ALIVE EU FUNDED PROJECT



martes 3 de enero de 12
23/12/2011                                                                  IA




             Pathfinding




             •    A*	
  (Dijkstra	
  1959;	
  Hart,	
  Nilsson,	
  Raphael	
  1968)
                  – SCll	
  improving,	
  sCll	
  used	
  in	
  the	
  industry
                  – Aligned	
  with	
  academic	
  AI:	
  D*,	
  IDA*,	
  GAA*,	
  ...
                  – Example:	
  StarcraV	
  2	
  (A*	
  +	
  Queueing)




                 ALIVE EU FUNDED PROJECT



martes 3 de enero de 12
martes 3 de enero de 12
23/12/2011                                            IA




             So	
  what	
  about	
  behavior	
  and	
  strategy?




                                In commercial games, not much...




               ALIVE EU FUNDED PROJECT



martes 3 de enero de 12
23/12/2011                                                              IA




             So	
  what	
  about	
  behavior	
  and	
  strategy?


                                              Scripting

                          private function UpgradeEx takes nothing returns nothing
                             local unit u = GetTriggerUnit()
                             local integer id = GetUnitTypeId(u)
                             call DisableTrigger(trg_upgrade)
                             call IssueImmediateOrderById(u, 851976)
                          endfunction




               ALIVE EU FUNDED PROJECT



martes 3 de enero de 12
23/12/2011                                              IA




             So	
  what	
  about	
  behavior	
  and	
  strategy?


                                             Hash Tables

                                  std::map< int, CB > hashTable;

                                  hashTable[ 1 ] = UpgradeEx;
                                  ...
                                  hashTable[ 40000 ] = AttackUnit;

                                  (*(hashTable[ a ]))();




               ALIVE EU FUNDED PROJECT



martes 3 de enero de 12
23/12/2011                                                                                                      IA




             So	
  what	
  about	
  behavior	
  and	
  strategy?


                                         Finite State Machines
                                                   a=1




                                         doSomething1()
                                                                 a=2
                                                                                 doSomething2()




                                                    a=3
                                                                           a=3
                                                                                                         doSomething4000()

                                                                                              a = 4000
                                                                                        ...
                                                                                 a=N

                                                          doSomething3()




                                                             a=3


               ALIVE EU FUNDED PROJECT



martes 3 de enero de 12
23/12/2011                                                           IA




             So	
  what	
  about	
  behavior	
  and	
  strategy?


                                            Rule Engines
                                  (defrule
                                  !    (goal 16 0)
                                  !    (can-research-with-escrow ri-ballistics)
                                  =>
                                  !    (release-escrow wood)
                                  !    (release-escrow food)
                                  !    (release-escrow gold)
                                  !    (release-escrow stone)
                                  !    (research ri-ballistics)
                                  )



               ALIVE EU FUNDED PROJECT



martes 3 de enero de 12
23/12/2011                                            IA




             So	
  what	
  about	
  behavior	
  and	
  strategy?


                                         Decision Trees




               ALIVE EU FUNDED PROJECT



martes 3 de enero de 12
23/12/2011                                            IA




             So	
  what	
  about	
  behavior	
  and	
  strategy?




                                         Where is the reasoning?




               ALIVE EU FUNDED PROJECT



martes 3 de enero de 12
23/12/2011                                                           IA




             So	
  what	
  about	
  behavior	
  and	
  strategy?




                                         Where is the reasoning?

                          IT’S GIVEN/HARDCODED BY THE DEVELOPER AT DESIGN TIME!




               ALIVE EU FUNDED PROJECT



martes 3 de enero de 12
23/12/2011                                                                          IA




             What	
  is	
  usually	
  seen	
  in	
  commercial	
  games?



            •    Blind	
  specificaCons:	
  HOW	
  to	
  act,	
  not	
  WHY
                 Lack	
  of	
  flexibility	
  and	
  adapCveness
                 Strange,	
  predictable	
  behaviour
                 Low	
  reusability
                 Having	
  more	
  reusable	
  AI	
  engines	
  would	
  make	
  companies	
  
                 invest	
  more	
  in	
  developing	
  be_er	
  AI	
  engines?




                ALIVE EU FUNDED PROJECT



martes 3 de enero de 12
23/12/2011                                                                          IA




             What	
  is	
  usually	
  seen	
  in	
  commercial	
  games?



            •    Blind	
  specificaCons:	
  HOW	
  to	
  act,	
  not	
  WHY
                 – Lack	
  of	
  flexibility	
  and	
  adapCveness
                 – Strange,	
  predictable	
  behavior
                 Low	
  reusability
                 Having	
  more	
  reusable	
  AI	
  engines	
  would	
  make	
  companies	
  
                 invest	
  more	
  in	
  developing	
  be_er	
  AI	
  engines?




                ALIVE EU FUNDED PROJECT



martes 3 de enero de 12
• Blind specifications: HOW to act, not WHY
                 • Lack of flexibility and adaptiveness
                 • Strange, predictable behaviour
                          Low reusability

                          Having more reusable AI engines would make
                          companies invest more in developing better
                          AI engines?


martes 3 de enero de 12
• Blind specifications: HOW to act, not WHY
                 • Lack of flexibility and adaptiveness
                 • Strange, predictable behaviour
                          Low reusability

                          Having more reusable AI engines would make
                          companies invest more in developing better
                          AI engines?


martes 3 de enero de 12
23/12/2011                                                                          IA




             What	
  is	
  usually	
  seen	
  in	
  commercial	
  games?



            •    Blind	
  specificaCons:	
  HOW	
  to	
  act,	
  not	
  WHY
                 – Lack	
  of	
  flexibility	
  and	
  adapCveness
                 – Strange,	
  predictable	
  behavior
            •    Low	
  reusability
                 Having	
  more	
  reusable	
  AI	
  engines	
  would	
  make	
  companies	
  
                 invest	
  more	
  in	
  developing	
  be_er	
  AI	
  engines?




                ALIVE EU FUNDED PROJECT



martes 3 de enero de 12
23/12/2011                                                                                            IA




             Example:	
  RTS	
  scripEng
                                 private function UpgradeEx takes nothing returns nothing
           WarcraV	
  3              local unit u = GetTriggerUnit()

           (JASS)                    local integer id = GetUnitTypeId(u)
                                     call DisableTrigger(trg_upgrade)
                                     call IssueImmediateOrderById(u, 851976)
                                 endfunction




                                 rule getNextGathererUpgrade {
           Age	
  of	
               int upgradeTechID=kbTechTreeGetCheapestUnitUpgrade(gathererTypeID,
           Mythology	
           cUpgradeTypeWorkRate, -1, dropSiteFilterID, false, affectedUnitType);

           (XSScript)                int planID=aiPlanCreate("nextGathererUpgrade - "+id, cPlanProgression);
                                     aiPlanSetVariableInt(planID, cProgressionPlanGoalTechID, 0, upgradeTechID);
                                     aiPlanSetDesiredPriority(planID, 25);
                                     aiPlanSetEscrowID(planID, cEconomyEscrowID);
                                     aiPlanSetActive(planID);
                                 }




               ALIVE EU FUNDED PROJECT



martes 3 de enero de 12
23/12/2011                                                                      IA




             Example:	
  RTS	
  scripEng
                                      wait_build 2 forge
           StarcraV	
                 upgrade 1 p_ground_weapon 70
           (Broodwar	
  AI)           upgrade 1 p_plasma_shield 70
                                      wait 2700
                                      wait_build 1 cybernetics_core
                                      upgrade 1 p_armor 70
                                      upgrade 2 p_plasma_shield 70
                                      wait 3600




                                      (defrule
           Age	
  of	
                	           (goal 16 0)
           Empires	
  II	
  -­‐	
     	           (can-research-with-escrow ri-ballistics)

           AOK	
                      =>
                                      	           (release-escrow wood)
           (ScriptED)                 	           (release-escrow food)
                                      	           (release-escrow gold)
                                      	           (release-escrow stone)
                                      	           (research ri-ballistics)
                                      )



               ALIVE EU FUNDED PROJECT



martes 3 de enero de 12
23/12/2011                                                                                IA




             Example:	
  RTS	
  scripEng


                          WarcraV	
  III      StarcraV                   AoM                 AoK




                                                 Common	
  concepts:
                          unit,	
  building,	
  a_ack,	
  defend,	
  group,	
  patrol,	
  train,	
  
                                                research,	
  resource...



               ALIVE EU FUNDED PROJECT



martes 3 de enero de 12
23/12/2011                                                                             IA




             What	
  is	
  usually	
  seen	
  in	
  commercial	
  games?




                  Having	
  more	
  reusable	
  (higher-­‐level)	
  AI	
  engines	
  would	
  make	
  
                   companies	
  invest	
  more	
  in	
  developing	
  be_er	
  AI	
  engines?




               ALIVE EU FUNDED PROJECT



martes 3 de enero de 12
23/12/2011                                                                                     IA




             There	
  is	
  some	
  hope

             •    Planning:	
  reasoning	
  to	
  achieve	
  goals	
  with	
  ac2ons
             •    HTN	
  (Hierarchical	
  Task	
  Networks)
             •    GOAP	
  (Goal-­‐Oriented	
  AcOon	
  Planning,	
  Orkin	
  2005)
                  – F.E.A.R,	
  Condemned,	
  Fallout	
  3,	
  Empire:	
  Total	
  War,	
  Deus	
  
                        Ex	
  3,	
  Just	
  Cause	
  2,	
  ...
                  – This	
  idea	
  has	
  been	
  slowly	
  adapted	
  into	
  other	
  engines
             •    AI	
  engines	
  are	
  starOng	
  to	
  be	
  reused	
  in	
  a	
  consistent	
  basis
                  – Radiant	
  AI,	
  gamebyro


                 ALIVE EU FUNDED PROJECT



martes 3 de enero de 12
23/12/2011                             IA




             Goal-­‐Oriented	
  AcEon	
  Planning




               ALIVE EU FUNDED PROJECT



martes 3 de enero de 12
23/12/2011                             IA




             Goal-­‐Oriented	
  AcEon	
  Planning




               ALIVE EU FUNDED PROJECT



martes 3 de enero de 12
23/12/2011                                                                                                         IA




             Goal-­‐Oriented	
  AcEon	
  Planning
                                                      (Condition + Priority)                          (Condition + Priority)
                                                       AttackFromCover                                       Patrol
                                                     (Goal state description)                        (Goal state description)


                                                                           (Condition + Priority)
                           (Condition + Priority)                              Investigate
                                  Search                                  (Goal state description)
                          (Goal state description)




                                                                “STRIPS-like” planner




                                                           Semantically annotated actions
                                                             (pre- and post-conditions)




               ALIVE EU FUNDED PROJECT



martes 3 de enero de 12
martes 3 de enero de 12
martes 3 de enero de 12
23/12/2011                                                                IA




             Goal-­‐Oriented	
  AcEon	
  Planning



             •    Dynamic	
  planning	
  and	
  re-­‐planning
                   – Outperforms	
  FSMs!
             •    Allows	
  to	
  reason	
  about	
  WHAT	
  to	
  do
                   – BUT	
  sCll	
  not	
  about	
  WHY
             •    Plans	
  only	
  cannot	
  properly	
  model	
  social	
  behavior
                   – Need	
  for	
  organizaEonal	
  structures




                 ALIVE EU FUNDED PROJECT



martes 3 de enero de 12
23/12/2011                                                                               IA




             Our	
  proposal:	
  going	
  even	
  higher
             •    It	
  is	
  possible	
  to	
  elaborate	
  soluCons	
  for	
  the	
  issues	
  of
                   – behaviour	
  control
                   – strategy	
  techniques
             •    ...	
  by	
  integraCng	
  models	
  based	
  on	
  OrganisaEonal	
  
                  TheoreEcal	
  methods
             •    Expected	
  outcomes
                   – Methodology	
  and	
  tools	
  for	
  Game	
  AI	
  developers
                   – to	
  model	
  gaming	
  scenarios	
  using	
  social	
  structures
             •    Case	
  studies:	
  commercial	
  games
                   – Cheaper,	
  faster,	
  more	
  visible

                 ALIVE EU FUNDED PROJECT



martes 3 de enero de 12
23/12/2011                  IA




               ALIVE EU FUNDED PROJECT



martes 3 de enero de 12
23/12/2011                                         IA




                                            HOW?
                                         (available services)



               ALIVE EU FUNDED PROJECT



martes 3 de enero de 12
23/12/2011                                              IA




                                              WHAT?
                                         (possible actions, plans)




                                               HOW?
                                           (available services)



               ALIVE EU FUNDED PROJECT



martes 3 de enero de 12
23/12/2011                                              IA




                                               WHY?
                                              (motivations)




                                              WHAT?
                                         (possible actions, plans)




                                               HOW?
                                           (available services)



               ALIVE EU FUNDED PROJECT



martes 3 de enero de 12
23/12/2011                  IA




               ALIVE EU FUNDED PROJECT



martes 3 de enero de 12
23/12/2011                                                                                   IA




             What	
  could	
  ALIVE	
  provide?

             •    High-­‐level	
  schemas	
  to	
  reason	
  and	
  jusEfy	
  acCons	
  taken	
  by	
  
                  NPCs
                  – Roles,	
  objecCves,	
  norms,	
  plans...
             •    Clearly	
  decouple	
  implementaCon	
  and	
  design
                  – Reusable	
  designs
                          · Minimal	
  changes	
  (e.g.	
  vocabulary)
                          · Lower	
  adaptaCon	
  cost
                  – Dynamic	
  re-­‐organizaCon	
  techniques
             •    Not	
  a	
  replacement!


                 ALIVE EU FUNDED PROJECT



martes 3 de enero de 12
23/12/2011                  IA




               ALIVE EU FUNDED PROJECT



martes 3 de enero de 12
23/12/2011                                   IA




                                         GAME	
  ENGINE

               ALIVE EU FUNDED PROJECT



martes 3 de enero de 12
23/12/2011                                                                    IA




             Case	
  studies

             •    We	
  have	
  connected	
  ALIVE	
  to	
  several	
  games
                   – Sandbox	
  game:	
  GTA	
  IV
                   – Real-­‐Time	
  Strategy:	
  WarcraV	
  III,	
  Lincity,	
  StarcraV
                   – Turn-­‐Based	
  Strategy:	
  CivilizaCon	
  IV
                   – MMORPG:	
  WoW
                   – Other:	
  Sims	
  3
             •    EvaluaCon	
  of	
  proposal
                   – Realism,	
  flexibility,	
  adaptability
             •    Use	
  games	
  as	
  inputs	
  for	
  OrganisaConal	
  Research

                 ALIVE EU FUNDED PROJECT



martes 3 de enero de 12
23/12/2011                                                            IA




             How	
  to	
  connect	
  with	
  games?



                                                      •   ScripCng	
  languages	
  
                                                          with	
  I/O	
  support	
  
                                                          (e.g.	
  LUA)
                                                      •   DLL	
  InjecCon
                                                      •   Source	
  code




               ALIVE EU FUNDED PROJECT



martes 3 de enero de 12
23/12/2011                                                            IA




             How	
  to	
  connect	
  with	
  games?



                                                      •   ScripCng	
  languages	
  
                                                          with	
  I/O	
  support	
  
                                                          (e.g.	
  LUA)
                                                      •   DLL	
  InjecCon
                                                      •   Source	
  code




               ALIVE EU FUNDED PROJECT



martes 3 de enero de 12
23/12/2011                                                                            IA




             WarcraP	
  III

             •    Design	
  of	
  an	
  organizaEonal	
  model
             •    ImplementaCon	
  of	
  ALIVE-­‐aware	
  agents	
  (pure	
  Java)
             •    ConnecCon:	
  DLL	
  InjecCon	
  +	
  sockets
             •    RTS	
  games	
  are	
  interesCng	
  for	
  us:
                   – Armies	
  in	
  RTS	
  are	
  directly	
  translatable	
  into	
  ALIVE	
  
                     models
                   – These	
  models	
  can	
  be	
  shared	
  through	
  games
                   – ReorganizaEon	
  techniques	
  can	
  be	
  applied
                   – Visual	
  interface	
  for	
  real-­‐Cme	
  simulaEon


                 ALIVE EU FUNDED PROJECT



martes 3 de enero de 12
23/12/2011                  IA




             WarcraP	
  III:	
  Models




               ALIVE EU FUNDED PROJECT



martes 3 de enero de 12
23/12/2011                  IA




             WarcraP	
  III:	
  Agent




               ALIVE EU FUNDED PROJECT



martes 3 de enero de 12
23/12/2011                                     IA




             WarcraP	
  III:	
  Agent



                                         ALIVE	
  project




               ALIVE EU FUNDED PROJECT



martes 3 de enero de 12
23/12/2011                  IA




               ALIVE EU FUNDED PROJECT



martes 3 de enero de 12
23/12/2011                                                                                              IA




             WarcraP	
  III:	
  Agent

             •    The	
  ALIVE	
  framework	
  provides	
  the	
  mechanisms	
  for:
                   – Perceiving	
  a	
  “state	
  of	
  the	
  world”	
  by	
  the	
  interpretaEon	
  
                     of	
  events
                   – Reasoning	
  about	
  the	
  acEons	
  declared	
  in	
  the	
  
                     CoordinaCon	
  Level
                   – Taking	
  into	
  account	
  the	
  organizaEonal	
  structures:	
  roles,	
  
                     plans,	
  norms
                          · Following	
  them	
  if	
  the	
  organizaConal	
  constraints	
  are	
  self-­‐beneficial!
                   – Enact	
  acEons	
  in	
  the	
  game,	
  through	
  the	
  patched	
  Service	
  
                     Level

                 ALIVE EU FUNDED PROJECT



martes 3 de enero de 12
23/12/2011                                                                                               IA




             World	
  of	
  WarcraP
             •    Emergent	
  narra2ve	
  use-­‐case
             •    The	
  objecCve	
  is	
  to	
  break	
  the	
  concepEon	
  of	
  linear	
  narraEve	
  as	
  the	
  
                  only	
  way	
  for	
  humans	
  to	
  author	
  a	
  story
             •    Basic	
  idea:
                   – To	
  balance	
  character	
  models,	
  events	
  sequences	
  and	
  narraCve	
  
                     landmarks	
  to	
  create	
  a	
  more	
  open	
  narraEve
             •    Main	
  challenge:
                   – Virtual	
  environments	
  (games)	
  and	
  narraCves	
  exist	
  on	
  different	
  
                     ontological	
  levels
                   – Difficult	
  to	
  treat	
  them	
  jointly
                   – Emergent	
  narraCve	
  is	
  a	
  direct	
  result	
  of	
  the	
  acEons	
  of	
  characters
                   – To	
  give	
  an	
  illusion	
  of	
  personality	
  to	
  both	
  players	
  and	
  non-­‐players

                 ALIVE EU FUNDED PROJECT



martes 3 de enero de 12
23/12/2011                                IA




             World	
  of	
  WarcraP:	
  architecture




               ALIVE EU FUNDED PROJECT



martes 3 de enero de 12
23/12/2011                                                                                  IA




             World	
  of	
  WarcraP:	
  player	
  classificaEon
             •    Play	
  styles	
  taxonomy	
  based	
  on	
  interacCon	
  between	
  players
                   – Achievers,	
  Explorers,	
  Socializers,	
  Killers	
  [Bartle]
             •    During	
  gameplay,	
  players’	
  behaviours	
  	
  are	
  monitored	
  and	
  
                  analized	
  to	
  classify	
  them	
  into	
  play	
  styles
                   – AcCons,	
  chat	
  logs,	
  achievements,	
  staCsCcs
             •    AcCons	
  and	
  states	
  are	
  tagged	
  at	
  design	
  Cme	
  in	
  terms	
  of	
  
                  play	
  styles
                   – achiever	
  :	
  distractGatekeeper
                   – killer	
  :	
  killGatekeeper
             •    These	
  tags	
  are	
  used	
  by	
  Character	
  Agents	
  when	
  selecCng	
  
                  the	
  acCons	
  to	
  reach	
  a	
  landmark
                 ALIVE EU FUNDED PROJECT



martes 3 de enero de 12
23/12/2011                                                                                        IA




             World	
  of	
  WarcraP:	
  plot	
  generaEon	
  and	
  modificaEon

             •    InteracOvity	
  is	
  achieved	
  by	
  giving	
  enough	
  choices	
  to	
  the	
  
                  player	
  to	
  give	
  an	
  illusion	
  of	
  free	
  will
             •    The	
  Plot	
  Agent	
  parCally	
  influences	
  the	
  player	
  via	
  missions
             •    If	
  the	
  player	
  gets	
  too	
  far	
  from	
  the	
  storyline,	
  its	
  Character	
  
                  Agent	
  can	
  negoEate	
  changes	
  in	
  the	
  environment	
  to	
  keep	
  
                  acCon	
  within	
  boundaries
                   – Problem:	
  the	
  plot	
  counted	
  on	
  the	
  player	
  to	
  kill	
  a	
  dragon	
  
                         to	
  get	
  the	
  gem,	
  but	
  the	
  player	
  doesn’t	
  kill	
  it
                   – SoluCon:	
  infer	
  an	
  alternaCve	
  way	
  to	
  bring	
  the	
  gem	
  to	
  
                         the	
  player

                 ALIVE EU FUNDED PROJECT



martes 3 de enero de 12
martes 3 de enero de 12
martes 3 de enero de 12
martes 3 de enero de 12
martes 3 de enero de 12
martes 3 de enero de 12
23/12/2011                                                                                IA




             Where	
  are	
  we	
  in	
  literature?
             •    OrganizaConal	
  modeling	
  has	
  been	
  explored	
  for	
  serious	
  
                  games
             •    AdapCveness	
  in	
  games	
  is	
  not	
  new...
                   – ...but	
  we	
  propose	
  to	
  introduce	
  another	
  level	
  of	
  
                     abstracCon
             •    GOAP	
  is	
  an	
  example	
  of	
  a	
  higher-­‐level	
  mechanism	
  being	
  
                  successful
             •    Opportunity	
  to	
  tackle	
  the	
  upcoming	
  real	
  challenges	
  of	
  
                  industry	
  gaming	
  AI	
  [Jonathan	
  Schaeffer	
  @IJCAI’11]:
                   – RealisCc	
  NPC	
  behaviour
                   – Emergent	
  narraCve
                 ALIVE EU FUNDED PROJECT



martes 3 de enero de 12
23/12/2011                                                                                 IA




             Conclusions



             •    Main	
  advantage:	
  specify	
  behavior	
  in	
  terms	
  of	
  why	
  to	
  do	
  
                  something
             •    ObjecCve:	
  to	
  provide	
  a	
  methodology	
  and	
  tools	
  for	
  Game	
  AI	
  
                  developers
                   – Release	
  game	
  enactors	
  as	
  open-­‐source
             •    We	
  prioriCze	
  behaviour	
  improvement	
  over	
  performance




                 ALIVE EU FUNDED PROJECT



martes 3 de enero de 12
23/12/2011                                                                                           IA




             What	
  are	
  we	
  doing	
  right	
  now?
             •    Emergent	
  narraCve	
  in	
  MMORPGs:
                   – Player	
  personality	
  analysis
                          · Data	
  mining	
  techniques	
  over	
  public	
  data	
  +	
  voluntary	
  surveys
                   – Missions,	
  quests	
  will	
  adapt	
  to	
  the	
  player’s	
  gaming	
  style
                          · Killer,	
  Socializer,	
  Achiever,	
  Explorer	
  [Bartle]
                   – Socially-­‐aware
                          · NPCs	
  are	
  aware	
  of	
  their	
  social	
  role
                          · Roles	
  can	
  be	
  changed,	
  society	
  can	
  evolve
             •    CreaCng	
  more	
  complex	
  models	
  for	
  improved	
  realism
             •    Finding	
  metrics	
  for	
  correct	
  evaluaCon	
  of	
  our	
  proposal
                   – Ba_le	
  ALIVE	
  vs	
  ALIVE	
  with	
  organizaConal	
  adaptaCon
             •    h_p://kemlg.github.com/consciens
                 ALIVE EU FUNDED PROJECT



martes 3 de enero de 12

Weitere ähnliche Inhalte

Was ist angesagt?

Kernel based models for geo- and environmental sciences- Alexei Pozdnoukhov –...
Kernel based models for geo- and environmental sciences- Alexei Pozdnoukhov –...Kernel based models for geo- and environmental sciences- Alexei Pozdnoukhov –...
Kernel based models for geo- and environmental sciences- Alexei Pozdnoukhov –...Beniamino Murgante
 
Modern features-part-3-software
Modern features-part-3-softwareModern features-part-3-software
Modern features-part-3-softwarezukun
 
Scatter diagrams and correlation and simple linear regresssion
Scatter diagrams and correlation and simple linear regresssionScatter diagrams and correlation and simple linear regresssion
Scatter diagrams and correlation and simple linear regresssionAnkit Katiyar
 
Inverse circular function
Inverse circular functionInverse circular function
Inverse circular functionAPEX INSTITUTE
 
Optimalpolicyhandout
OptimalpolicyhandoutOptimalpolicyhandout
OptimalpolicyhandoutNBER
 
Optimal Finite Difference Grids for Elliptic and Parabolic PDEs with Applicat...
Optimal Finite Difference Grids for Elliptic and Parabolic PDEs with Applicat...Optimal Finite Difference Grids for Elliptic and Parabolic PDEs with Applicat...
Optimal Finite Difference Grids for Elliptic and Parabolic PDEs with Applicat...Alex (Oleksiy) Varfolomiyev
 
Chapter 1 nonlinear
Chapter 1 nonlinearChapter 1 nonlinear
Chapter 1 nonlinearNBER
 
Lesson 2: A Catalog of Essential Functions
Lesson 2: A Catalog of Essential FunctionsLesson 2: A Catalog of Essential Functions
Lesson 2: A Catalog of Essential FunctionsMatthew Leingang
 
A Review of Proximal Methods, with a New One
A Review of Proximal Methods, with a New OneA Review of Proximal Methods, with a New One
A Review of Proximal Methods, with a New OneGabriel Peyré
 
修士論文発表会
修士論文発表会修士論文発表会
修士論文発表会Keikusl
 
L. Jonke - A Twisted Look on Kappa-Minkowski: U(1) Gauge Theory
L. Jonke - A Twisted Look on Kappa-Minkowski: U(1) Gauge TheoryL. Jonke - A Twisted Look on Kappa-Minkowski: U(1) Gauge Theory
L. Jonke - A Twisted Look on Kappa-Minkowski: U(1) Gauge TheorySEENET-MTP
 
Introduction to Neural Network
Introduction to Neural NetworkIntroduction to Neural Network
Introduction to Neural NetworkJun Young Park
 
Chapter 4 likelihood
Chapter 4 likelihoodChapter 4 likelihood
Chapter 4 likelihoodNBER
 
Jackknife algorithm for the estimation of logistic regression parameters
Jackknife algorithm for the estimation of logistic regression parametersJackknife algorithm for the estimation of logistic regression parameters
Jackknife algorithm for the estimation of logistic regression parametersAlexander Decker
 

Was ist angesagt? (20)

Kernel based models for geo- and environmental sciences- Alexei Pozdnoukhov –...
Kernel based models for geo- and environmental sciences- Alexei Pozdnoukhov –...Kernel based models for geo- and environmental sciences- Alexei Pozdnoukhov –...
Kernel based models for geo- and environmental sciences- Alexei Pozdnoukhov –...
 
Modern features-part-3-software
Modern features-part-3-softwareModern features-part-3-software
Modern features-part-3-software
 
Intraguild mutualism
Intraguild mutualismIntraguild mutualism
Intraguild mutualism
 
Lecture9
Lecture9Lecture9
Lecture9
 
Scatter diagrams and correlation and simple linear regresssion
Scatter diagrams and correlation and simple linear regresssionScatter diagrams and correlation and simple linear regresssion
Scatter diagrams and correlation and simple linear regresssion
 
Inverse circular function
Inverse circular functionInverse circular function
Inverse circular function
 
Optimalpolicyhandout
OptimalpolicyhandoutOptimalpolicyhandout
Optimalpolicyhandout
 
Optimal Finite Difference Grids for Elliptic and Parabolic PDEs with Applicat...
Optimal Finite Difference Grids for Elliptic and Parabolic PDEs with Applicat...Optimal Finite Difference Grids for Elliptic and Parabolic PDEs with Applicat...
Optimal Finite Difference Grids for Elliptic and Parabolic PDEs with Applicat...
 
Chapter 1 nonlinear
Chapter 1 nonlinearChapter 1 nonlinear
Chapter 1 nonlinear
 
Lesson 2: A Catalog of Essential Functions
Lesson 2: A Catalog of Essential FunctionsLesson 2: A Catalog of Essential Functions
Lesson 2: A Catalog of Essential Functions
 
A Review of Proximal Methods, with a New One
A Review of Proximal Methods, with a New OneA Review of Proximal Methods, with a New One
A Review of Proximal Methods, with a New One
 
修士論文発表会
修士論文発表会修士論文発表会
修士論文発表会
 
rinko2011-agh
rinko2011-aghrinko2011-agh
rinko2011-agh
 
L. Jonke - A Twisted Look on Kappa-Minkowski: U(1) Gauge Theory
L. Jonke - A Twisted Look on Kappa-Minkowski: U(1) Gauge TheoryL. Jonke - A Twisted Look on Kappa-Minkowski: U(1) Gauge Theory
L. Jonke - A Twisted Look on Kappa-Minkowski: U(1) Gauge Theory
 
Introduction to Neural Network
Introduction to Neural NetworkIntroduction to Neural Network
Introduction to Neural Network
 
rinko2010
rinko2010rinko2010
rinko2010
 
M2l11
M2l11M2l11
M2l11
 
Chapter 4 likelihood
Chapter 4 likelihoodChapter 4 likelihood
Chapter 4 likelihood
 
Jackknife algorithm for the estimation of logistic regression parameters
Jackknife algorithm for the estimation of logistic regression parametersJackknife algorithm for the estimation of logistic regression parameters
Jackknife algorithm for the estimation of logistic regression parameters
 
Tprimal agh
Tprimal aghTprimal agh
Tprimal agh
 

Andere mochten auch (8)

Creative commons
Creative commonsCreative commons
Creative commons
 
Presentazione Convegno
Presentazione ConvegnoPresentazione Convegno
Presentazione Convegno
 
Norms Brmas08 V2
Norms Brmas08 V2Norms Brmas08 V2
Norms Brmas08 V2
 
AIA Spring'2010 last class: Making games ALIVE
AIA Spring'2010 last class: Making games ALIVEAIA Spring'2010 last class: Making games ALIVE
AIA Spring'2010 last class: Making games ALIVE
 
Engineering Social Reality with Inheritence Relations
Engineering Social Reality with Inheritence RelationsEngineering Social Reality with Inheritence Relations
Engineering Social Reality with Inheritence Relations
 
Forms 2010
Forms 2010Forms 2010
Forms 2010
 
Normative Monitoring: Semantics and Implementation
Normative Monitoring: Semantics and ImplementationNormative Monitoring: Semantics and Implementation
Normative Monitoring: Semantics and Implementation
 
EU-Contract Project
EU-Contract ProjectEU-Contract Project
EU-Contract Project
 

Mehr von Knowledge Engineering and Machine Learning Group (8)

People-as-a-Sensor of disruptive events (spanish)
People-as-a-Sensor of disruptive events (spanish)People-as-a-Sensor of disruptive events (spanish)
People-as-a-Sensor of disruptive events (spanish)
 
Social Institutions Dynamic in the Tragedy of the Commons
Social Institutions Dynamic in the Tragedy of the CommonsSocial Institutions Dynamic in the Tragedy of the Commons
Social Institutions Dynamic in the Tragedy of the Commons
 
Clojure: a LISP for the JVM
Clojure: a LISP for the JVMClojure: a LISP for the JVM
Clojure: a LISP for the JVM
 
Making games ALIVE: an organisational approach
Making games ALIVE: an organisational approachMaking games ALIVE: an organisational approach
Making games ALIVE: an organisational approach
 
Demo: ALIVE@AAMAS'2010
Demo: ALIVE@AAMAS'2010Demo: ALIVE@AAMAS'2010
Demo: ALIVE@AAMAS'2010
 
cOncienS: un nuevo paradigma de IA para juegos
cOncienS: un nuevo paradigma de IA para juegoscOncienS: un nuevo paradigma de IA para juegos
cOncienS: un nuevo paradigma de IA para juegos
 
ALIVE @IIWAS'2009
ALIVE @IIWAS'2009ALIVE @IIWAS'2009
ALIVE @IIWAS'2009
 
Computational Mechanisms for Norm Enforcement in Service-Oriented Architectures
Computational Mechanisms for Norm Enforcement in Service-Oriented ArchitecturesComputational Mechanisms for Norm Enforcement in Service-Oriented Architectures
Computational Mechanisms for Norm Enforcement in Service-Oriented Architectures
 

Kürzlich hochgeladen

MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MIND CTI
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Zilliz
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxRemote DBA Services
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesrafiqahmad00786416
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native ApplicationsWSO2
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontologyjohnbeverley2021
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsNanddeep Nachan
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...apidays
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Victor Rentea
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusZilliz
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelDeepika Singh
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businesspanagenda
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamUiPathCommunity
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...apidays
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Victor Rentea
 

Kürzlich hochgeladen (20)

MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering Developers
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 

cOnscienS: social and organizational framework for gaming AI

  • 1. 23/12/2011 | 1 IA cOncienS   Sergio  Alvarez Sergio  Alvarez-­‐Napagao(1)GIómez Gómez-­‐SebasCà  (1), Ignasi  ,   gnasi   Javier  Vázquez-­‐Salceda  (1) Javier  Vázquez João  dfasdf (1) {salvarez,igomez,jvazquez}@lsi.upc.edu Universitat  Politècnica  de  Catalunya ALIVE EU FUNDED PROJECT ALIVE EU FUNDED PROJECT martes 3 de enero de 12
  • 2. 23/12/2011 IA Commercial  games  AI • Main  objecCve... to  deliver  the  illusion  of  intelligence • Categories: – Movement  (pathfinding,  collision,  visibility) – Individual  Behaviour  (NPCs) – CollecCve  Strategy  (NPCs  groups) ALIVE EU FUNDED PROJECT martes 3 de enero de 12
  • 3. 23/12/2011 IA Pathfinding • A*  (Dijkstra  1959;  Hart,  Nilsson,  Raphael  1968) – SCll  improving,  sCll  used  in  the  industry – Aligned  with  academic  AI:  D*,  IDA*,  GAA*,  ... – Example:  StarcraV  2  (A*  +  Queueing) ALIVE EU FUNDED PROJECT martes 3 de enero de 12
  • 4. martes 3 de enero de 12
  • 5. 23/12/2011 IA So  what  about  behavior  and  strategy? In commercial games, not much... ALIVE EU FUNDED PROJECT martes 3 de enero de 12
  • 6. 23/12/2011 IA So  what  about  behavior  and  strategy? Scripting private function UpgradeEx takes nothing returns nothing local unit u = GetTriggerUnit() local integer id = GetUnitTypeId(u) call DisableTrigger(trg_upgrade) call IssueImmediateOrderById(u, 851976) endfunction ALIVE EU FUNDED PROJECT martes 3 de enero de 12
  • 7. 23/12/2011 IA So  what  about  behavior  and  strategy? Hash Tables std::map< int, CB > hashTable; hashTable[ 1 ] = UpgradeEx; ... hashTable[ 40000 ] = AttackUnit; (*(hashTable[ a ]))(); ALIVE EU FUNDED PROJECT martes 3 de enero de 12
  • 8. 23/12/2011 IA So  what  about  behavior  and  strategy? Finite State Machines a=1 doSomething1() a=2 doSomething2() a=3 a=3 doSomething4000() a = 4000 ... a=N doSomething3() a=3 ALIVE EU FUNDED PROJECT martes 3 de enero de 12
  • 9. 23/12/2011 IA So  what  about  behavior  and  strategy? Rule Engines (defrule ! (goal 16 0) ! (can-research-with-escrow ri-ballistics) => ! (release-escrow wood) ! (release-escrow food) ! (release-escrow gold) ! (release-escrow stone) ! (research ri-ballistics) ) ALIVE EU FUNDED PROJECT martes 3 de enero de 12
  • 10. 23/12/2011 IA So  what  about  behavior  and  strategy? Decision Trees ALIVE EU FUNDED PROJECT martes 3 de enero de 12
  • 11. 23/12/2011 IA So  what  about  behavior  and  strategy? Where is the reasoning? ALIVE EU FUNDED PROJECT martes 3 de enero de 12
  • 12. 23/12/2011 IA So  what  about  behavior  and  strategy? Where is the reasoning? IT’S GIVEN/HARDCODED BY THE DEVELOPER AT DESIGN TIME! ALIVE EU FUNDED PROJECT martes 3 de enero de 12
  • 13. 23/12/2011 IA What  is  usually  seen  in  commercial  games? • Blind  specificaCons:  HOW  to  act,  not  WHY Lack  of  flexibility  and  adapCveness Strange,  predictable  behaviour Low  reusability Having  more  reusable  AI  engines  would  make  companies   invest  more  in  developing  be_er  AI  engines? ALIVE EU FUNDED PROJECT martes 3 de enero de 12
  • 14. 23/12/2011 IA What  is  usually  seen  in  commercial  games? • Blind  specificaCons:  HOW  to  act,  not  WHY – Lack  of  flexibility  and  adapCveness – Strange,  predictable  behavior Low  reusability Having  more  reusable  AI  engines  would  make  companies   invest  more  in  developing  be_er  AI  engines? ALIVE EU FUNDED PROJECT martes 3 de enero de 12
  • 15. • Blind specifications: HOW to act, not WHY • Lack of flexibility and adaptiveness • Strange, predictable behaviour Low reusability Having more reusable AI engines would make companies invest more in developing better AI engines? martes 3 de enero de 12
  • 16. • Blind specifications: HOW to act, not WHY • Lack of flexibility and adaptiveness • Strange, predictable behaviour Low reusability Having more reusable AI engines would make companies invest more in developing better AI engines? martes 3 de enero de 12
  • 17. 23/12/2011 IA What  is  usually  seen  in  commercial  games? • Blind  specificaCons:  HOW  to  act,  not  WHY – Lack  of  flexibility  and  adapCveness – Strange,  predictable  behavior • Low  reusability Having  more  reusable  AI  engines  would  make  companies   invest  more  in  developing  be_er  AI  engines? ALIVE EU FUNDED PROJECT martes 3 de enero de 12
  • 18. 23/12/2011 IA Example:  RTS  scripEng private function UpgradeEx takes nothing returns nothing WarcraV  3 local unit u = GetTriggerUnit() (JASS) local integer id = GetUnitTypeId(u) call DisableTrigger(trg_upgrade) call IssueImmediateOrderById(u, 851976) endfunction rule getNextGathererUpgrade { Age  of   int upgradeTechID=kbTechTreeGetCheapestUnitUpgrade(gathererTypeID, Mythology   cUpgradeTypeWorkRate, -1, dropSiteFilterID, false, affectedUnitType); (XSScript) int planID=aiPlanCreate("nextGathererUpgrade - "+id, cPlanProgression); aiPlanSetVariableInt(planID, cProgressionPlanGoalTechID, 0, upgradeTechID); aiPlanSetDesiredPriority(planID, 25); aiPlanSetEscrowID(planID, cEconomyEscrowID); aiPlanSetActive(planID); } ALIVE EU FUNDED PROJECT martes 3 de enero de 12
  • 19. 23/12/2011 IA Example:  RTS  scripEng wait_build 2 forge StarcraV   upgrade 1 p_ground_weapon 70 (Broodwar  AI) upgrade 1 p_plasma_shield 70 wait 2700 wait_build 1 cybernetics_core upgrade 1 p_armor 70 upgrade 2 p_plasma_shield 70 wait 3600 (defrule Age  of   (goal 16 0) Empires  II  -­‐   (can-research-with-escrow ri-ballistics) AOK   => (release-escrow wood) (ScriptED) (release-escrow food) (release-escrow gold) (release-escrow stone) (research ri-ballistics) ) ALIVE EU FUNDED PROJECT martes 3 de enero de 12
  • 20. 23/12/2011 IA Example:  RTS  scripEng WarcraV  III StarcraV AoM AoK Common  concepts: unit,  building,  a_ack,  defend,  group,  patrol,  train,   research,  resource... ALIVE EU FUNDED PROJECT martes 3 de enero de 12
  • 21. 23/12/2011 IA What  is  usually  seen  in  commercial  games? Having  more  reusable  (higher-­‐level)  AI  engines  would  make   companies  invest  more  in  developing  be_er  AI  engines? ALIVE EU FUNDED PROJECT martes 3 de enero de 12
  • 22. 23/12/2011 IA There  is  some  hope • Planning:  reasoning  to  achieve  goals  with  ac2ons • HTN  (Hierarchical  Task  Networks) • GOAP  (Goal-­‐Oriented  AcOon  Planning,  Orkin  2005) – F.E.A.R,  Condemned,  Fallout  3,  Empire:  Total  War,  Deus   Ex  3,  Just  Cause  2,  ... – This  idea  has  been  slowly  adapted  into  other  engines • AI  engines  are  starOng  to  be  reused  in  a  consistent  basis – Radiant  AI,  gamebyro ALIVE EU FUNDED PROJECT martes 3 de enero de 12
  • 23. 23/12/2011 IA Goal-­‐Oriented  AcEon  Planning ALIVE EU FUNDED PROJECT martes 3 de enero de 12
  • 24. 23/12/2011 IA Goal-­‐Oriented  AcEon  Planning ALIVE EU FUNDED PROJECT martes 3 de enero de 12
  • 25. 23/12/2011 IA Goal-­‐Oriented  AcEon  Planning (Condition + Priority) (Condition + Priority) AttackFromCover Patrol (Goal state description) (Goal state description) (Condition + Priority) (Condition + Priority) Investigate Search (Goal state description) (Goal state description) “STRIPS-like” planner Semantically annotated actions (pre- and post-conditions) ALIVE EU FUNDED PROJECT martes 3 de enero de 12
  • 26. martes 3 de enero de 12
  • 27. martes 3 de enero de 12
  • 28. 23/12/2011 IA Goal-­‐Oriented  AcEon  Planning • Dynamic  planning  and  re-­‐planning – Outperforms  FSMs! • Allows  to  reason  about  WHAT  to  do – BUT  sCll  not  about  WHY • Plans  only  cannot  properly  model  social  behavior – Need  for  organizaEonal  structures ALIVE EU FUNDED PROJECT martes 3 de enero de 12
  • 29. 23/12/2011 IA Our  proposal:  going  even  higher • It  is  possible  to  elaborate  soluCons  for  the  issues  of – behaviour  control – strategy  techniques • ...  by  integraCng  models  based  on  OrganisaEonal   TheoreEcal  methods • Expected  outcomes – Methodology  and  tools  for  Game  AI  developers – to  model  gaming  scenarios  using  social  structures • Case  studies:  commercial  games – Cheaper,  faster,  more  visible ALIVE EU FUNDED PROJECT martes 3 de enero de 12
  • 30. 23/12/2011 IA ALIVE EU FUNDED PROJECT martes 3 de enero de 12
  • 31. 23/12/2011 IA HOW? (available services) ALIVE EU FUNDED PROJECT martes 3 de enero de 12
  • 32. 23/12/2011 IA WHAT? (possible actions, plans) HOW? (available services) ALIVE EU FUNDED PROJECT martes 3 de enero de 12
  • 33. 23/12/2011 IA WHY? (motivations) WHAT? (possible actions, plans) HOW? (available services) ALIVE EU FUNDED PROJECT martes 3 de enero de 12
  • 34. 23/12/2011 IA ALIVE EU FUNDED PROJECT martes 3 de enero de 12
  • 35. 23/12/2011 IA What  could  ALIVE  provide? • High-­‐level  schemas  to  reason  and  jusEfy  acCons  taken  by   NPCs – Roles,  objecCves,  norms,  plans... • Clearly  decouple  implementaCon  and  design – Reusable  designs · Minimal  changes  (e.g.  vocabulary) · Lower  adaptaCon  cost – Dynamic  re-­‐organizaCon  techniques • Not  a  replacement! ALIVE EU FUNDED PROJECT martes 3 de enero de 12
  • 36. 23/12/2011 IA ALIVE EU FUNDED PROJECT martes 3 de enero de 12
  • 37. 23/12/2011 IA GAME  ENGINE ALIVE EU FUNDED PROJECT martes 3 de enero de 12
  • 38. 23/12/2011 IA Case  studies • We  have  connected  ALIVE  to  several  games – Sandbox  game:  GTA  IV – Real-­‐Time  Strategy:  WarcraV  III,  Lincity,  StarcraV – Turn-­‐Based  Strategy:  CivilizaCon  IV – MMORPG:  WoW – Other:  Sims  3 • EvaluaCon  of  proposal – Realism,  flexibility,  adaptability • Use  games  as  inputs  for  OrganisaConal  Research ALIVE EU FUNDED PROJECT martes 3 de enero de 12
  • 39. 23/12/2011 IA How  to  connect  with  games? • ScripCng  languages   with  I/O  support   (e.g.  LUA) • DLL  InjecCon • Source  code ALIVE EU FUNDED PROJECT martes 3 de enero de 12
  • 40. 23/12/2011 IA How  to  connect  with  games? • ScripCng  languages   with  I/O  support   (e.g.  LUA) • DLL  InjecCon • Source  code ALIVE EU FUNDED PROJECT martes 3 de enero de 12
  • 41. 23/12/2011 IA WarcraP  III • Design  of  an  organizaEonal  model • ImplementaCon  of  ALIVE-­‐aware  agents  (pure  Java) • ConnecCon:  DLL  InjecCon  +  sockets • RTS  games  are  interesCng  for  us: – Armies  in  RTS  are  directly  translatable  into  ALIVE   models – These  models  can  be  shared  through  games – ReorganizaEon  techniques  can  be  applied – Visual  interface  for  real-­‐Cme  simulaEon ALIVE EU FUNDED PROJECT martes 3 de enero de 12
  • 42. 23/12/2011 IA WarcraP  III:  Models ALIVE EU FUNDED PROJECT martes 3 de enero de 12
  • 43. 23/12/2011 IA WarcraP  III:  Agent ALIVE EU FUNDED PROJECT martes 3 de enero de 12
  • 44. 23/12/2011 IA WarcraP  III:  Agent ALIVE  project ALIVE EU FUNDED PROJECT martes 3 de enero de 12
  • 45. 23/12/2011 IA ALIVE EU FUNDED PROJECT martes 3 de enero de 12
  • 46. 23/12/2011 IA WarcraP  III:  Agent • The  ALIVE  framework  provides  the  mechanisms  for: – Perceiving  a  “state  of  the  world”  by  the  interpretaEon   of  events – Reasoning  about  the  acEons  declared  in  the   CoordinaCon  Level – Taking  into  account  the  organizaEonal  structures:  roles,   plans,  norms · Following  them  if  the  organizaConal  constraints  are  self-­‐beneficial! – Enact  acEons  in  the  game,  through  the  patched  Service   Level ALIVE EU FUNDED PROJECT martes 3 de enero de 12
  • 47. 23/12/2011 IA World  of  WarcraP • Emergent  narra2ve  use-­‐case • The  objecCve  is  to  break  the  concepEon  of  linear  narraEve  as  the   only  way  for  humans  to  author  a  story • Basic  idea: – To  balance  character  models,  events  sequences  and  narraCve   landmarks  to  create  a  more  open  narraEve • Main  challenge: – Virtual  environments  (games)  and  narraCves  exist  on  different   ontological  levels – Difficult  to  treat  them  jointly – Emergent  narraCve  is  a  direct  result  of  the  acEons  of  characters – To  give  an  illusion  of  personality  to  both  players  and  non-­‐players ALIVE EU FUNDED PROJECT martes 3 de enero de 12
  • 48. 23/12/2011 IA World  of  WarcraP:  architecture ALIVE EU FUNDED PROJECT martes 3 de enero de 12
  • 49. 23/12/2011 IA World  of  WarcraP:  player  classificaEon • Play  styles  taxonomy  based  on  interacCon  between  players – Achievers,  Explorers,  Socializers,  Killers  [Bartle] • During  gameplay,  players’  behaviours    are  monitored  and   analized  to  classify  them  into  play  styles – AcCons,  chat  logs,  achievements,  staCsCcs • AcCons  and  states  are  tagged  at  design  Cme  in  terms  of   play  styles – achiever  :  distractGatekeeper – killer  :  killGatekeeper • These  tags  are  used  by  Character  Agents  when  selecCng   the  acCons  to  reach  a  landmark ALIVE EU FUNDED PROJECT martes 3 de enero de 12
  • 50. 23/12/2011 IA World  of  WarcraP:  plot  generaEon  and  modificaEon • InteracOvity  is  achieved  by  giving  enough  choices  to  the   player  to  give  an  illusion  of  free  will • The  Plot  Agent  parCally  influences  the  player  via  missions • If  the  player  gets  too  far  from  the  storyline,  its  Character   Agent  can  negoEate  changes  in  the  environment  to  keep   acCon  within  boundaries – Problem:  the  plot  counted  on  the  player  to  kill  a  dragon   to  get  the  gem,  but  the  player  doesn’t  kill  it – SoluCon:  infer  an  alternaCve  way  to  bring  the  gem  to   the  player ALIVE EU FUNDED PROJECT martes 3 de enero de 12
  • 51. martes 3 de enero de 12
  • 52. martes 3 de enero de 12
  • 53. martes 3 de enero de 12
  • 54. martes 3 de enero de 12
  • 55. martes 3 de enero de 12
  • 56. 23/12/2011 IA Where  are  we  in  literature? • OrganizaConal  modeling  has  been  explored  for  serious   games • AdapCveness  in  games  is  not  new... – ...but  we  propose  to  introduce  another  level  of   abstracCon • GOAP  is  an  example  of  a  higher-­‐level  mechanism  being   successful • Opportunity  to  tackle  the  upcoming  real  challenges  of   industry  gaming  AI  [Jonathan  Schaeffer  @IJCAI’11]: – RealisCc  NPC  behaviour – Emergent  narraCve ALIVE EU FUNDED PROJECT martes 3 de enero de 12
  • 57. 23/12/2011 IA Conclusions • Main  advantage:  specify  behavior  in  terms  of  why  to  do   something • ObjecCve:  to  provide  a  methodology  and  tools  for  Game  AI   developers – Release  game  enactors  as  open-­‐source • We  prioriCze  behaviour  improvement  over  performance ALIVE EU FUNDED PROJECT martes 3 de enero de 12
  • 58. 23/12/2011 IA What  are  we  doing  right  now? • Emergent  narraCve  in  MMORPGs: – Player  personality  analysis · Data  mining  techniques  over  public  data  +  voluntary  surveys – Missions,  quests  will  adapt  to  the  player’s  gaming  style · Killer,  Socializer,  Achiever,  Explorer  [Bartle] – Socially-­‐aware · NPCs  are  aware  of  their  social  role · Roles  can  be  changed,  society  can  evolve • CreaCng  more  complex  models  for  improved  realism • Finding  metrics  for  correct  evaluaCon  of  our  proposal – Ba_le  ALIVE  vs  ALIVE  with  organizaConal  adaptaCon • h_p://kemlg.github.com/consciens ALIVE EU FUNDED PROJECT martes 3 de enero de 12