1 / 119

The following slides were presented at the GDC 2003 roundtable:

The following slides were presented at the GDC 2003 roundtable: AI Interface Standards: The Road Ahead Moderated by Alexander Nareyek, Nick Porcino and Mark Kolenski March 8, 2003, 9-11:30am San Carlos II, Hilton, San Jose

naava
Download Presentation

The following slides were presented at the GDC 2003 roundtable:

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. The following slides were presented at the GDC 2003 roundtable: AI Interface Standards: The Road Ahead Moderated by Alexander Nareyek, Nick Porcino and Mark Kolenski March 8, 2003, 9-11:30am San Carlos II, Hilton, San Jose Not all slides were shown because we were running out of time (especially for the groups on Rule-based Systems and Goal-oriented Action Planning).

  2. Notes on the roundtable’s discussions are also added to the slides. These do of course not cover the full discussions. Check the forums (member access only) for more. Please note that not all results of voting alternatives add up to 100% - we did not ask for “undecided” in addition.

  3. AI Interface Standards: The Road Ahead GDC 2003 Following slides prepared by Alexander Nareyek; presented by Alexander Nareyek

  4. http://www.igda.org/committees/ai.php Artificial Intelligence Interface Standards Committee(AIISC) AI Interface Standards Committee

  5. Goals • Provide interfaces for basic AI functionality • Enable code recycling and outsourcing • In the long run: Support for dedicated hardware AI Interface Standards Committee

  6. Committee Composition ~ 70 members: 45% game developers 30% middleware 25% academia AI Interface Standards Committee

  7. Working Groups • Decision Trees • Pathfinding • Steering • Finite State Machines • Rule-based Systems • Goal-oriented Action Planning • World Interfacing AI Interface Standards Committee

  8. Your input today! Schedule • After GDC: report on what we have done so far • Next GDC: presentation of draft documents in a larger setting AI Interface Standards Committee

  9. Outline for Today • Interleaved working group reports and discussions • Presented by Alexander Nareyek (CMU) Nick Porcino (LucasArts) Mark Kolenski (Blue Fang Games) AI Interface Standards Committee

  10. Additional Thanks to: • Ruth Aylett (University of Salford) • Abdennour El Rhalibi (Liverpool John Moores University) • Bjoern Knafla (University of Bielefeld) • Thaddaeus Frogley (King of the Jungle) • Christopher Reed (Raven Software / Activision) • Noel Stephens (Paradigm Entertainment) AI Interface Standards Committee

  11. Session 1:Interface Formats AI Interface Standards Committee

  12. System & AI Architecture Function Library (simple, efficient) Vs. Agent-based (distribution, flexible) AI Interface Standards Committee

  13. How Do We Specify our Standards? • Abstract levels: Ontologies & XML • C/C++ Interfaces • C/C++ Reference Implementation AI Interface Standards Committee

  14. Discussion:Interface Formats AI Interface Standards Committee

  15. (Some) discussion comments: • Function Library vs. Agent-based • Can't go from an agent interface to a function interface, but you can go the other way. Someone made the comment that “agents burn bridges”. • Someone opined and no one contradicted a statement that an agent approach imposes a methodology on games development that may simply not be viable for many products and classes of games. Specifically, if the game design doesn't • match the agent paradigm the W.I. will simply not be used. • Vote: • For primarily function library: 100% • For primarily agent-based: 0% • Interested in an agent wrapper for the function-based approach: ~15%

  16. (Some) discussion comments: • C or C++ • Linking issues from languages such as GOAL or Perl need to be sorted out if C++ is to be viable. • People could make a C++ wrapper if they were so inclined. • Perhaps interfaces could follow the precedent of stdio.h and cstdio and how they live happily together. • Vote: • Pure C: 2 hands • C approach with C++ wrapper: ~25% • Pure C++ interface: ~50%

  17. Session 2:World Interfacing Following slides prepared by Christopher Reed; presented by Nick Porcino AI Interface Standards Committee

  18. Outline • Goals • Definitions (World & AI) • World Services 3A) Senses 3B) Actuators AI Interface Standards Committee

  19. (1) World Interface Goals The objective is to provide an interface between AI and the Game World. We will begin with definitions for each of these concepts. AI Interface Standards Committee

  20. (2) Definition: The World • The game world is everything • Master simulator and arbitrator • Manager of all data (state) • Provider of services AI Interface Standards Committee

  21. (2) Definition: The World • The game world may have: • Static visual and navigable locations (scene) • Dynamic objects (entities) • Autonomous, thinking characters (agents) • Player controlled characters AI Interface Standards Committee

  22. (2) Definition: AI • AI drives the decision making of an autonomous, computer controlled entity (agent) • Selects actions and behaviors • Does not execute these actions • Purely decision making AI Interface Standards Committee

  23. (2) Definition: AI • AI may have: • State • Goals • AI can: • Select activities • Respond to the world AI Interface Standards Committee

  24. (3) Services • As the server, the game world needs to tell AI agents what services it provides to them, and then actually execute those services when requested. AI Interface Standards Committee

  25. (3) Services • In a sense, the interface between the game and the world is seen as a blackboard. • The interface simply provides a place for posting service requests, and makes no demands on how these requests are fulfilled. AI Interface Standards Committee

  26. (3) Services • There are two primary types of services that the world provides to AI: A) Senses B) Actuators AI Interface Standards Committee

  27. (3A) Senses • Sensory information provides an agent with awareness about the game world. AI Interface Standards Committee

  28. (3A) Senses • There are 2 types of sensory services: 1) Events – Concious awareness of things that happen in the world. 2) Queries – All questions that an agent may ask about the world. AI Interface Standards Committee

  29. (3A1) Events • Events happen all the time: Sounds, movements, collisions, and special effects are all examples of events. • Events occur at a time, and may have a short, limited duration. AI Interface Standards Committee

  30. (3A1) Events • Events are game specific. • The interface we present will not attempt to create a library of events, but rather a mechanism for developers to create their own events. AI Interface Standards Committee

  31. (3A1) Events • The game world tells AI what events are available by posting them to the Event Space. AI Interface Standards Committee

  32. (3A1) Events • Agents and AI subsystems place an EventWatch for a given event on the Event Blackboard. • The game world is then required to alert the agent when the event occurs. AI Interface Standards Committee

  33. (3A2) Queries • Queries allow AI to ask questions about the game world. AI Interface Standards Committee

  34. (3A2) Queries • There are several types of questions that an agent may ask: 1) Provide information about an entity: - What is (Bob‘s) (health)? - Is (Joe) (flying)? AI Interface Standards Committee

  35. (3A2) Queries 2) Provide a list of entities that match a given set of properties: - What entities are less than 30 feet away? - What entities are enemies and visible? AI Interface Standards Committee

  36. (3A2) Queries • There may be additional types to test for collisions and visibility, but the format has not been decided. AI Interface Standards Committee

  37. (3B) Actuators • Actuators provide a way for AI to interact with the game world. • Some examples of actuators are Movement, talking, sounds, animations, picking things up, and shooting a weapon. AI Interface Standards Committee

  38. (3B) Actuators • There are two types of actuators: • Actions – short term behavior • Effectors – long term behavior with non constant parameters AI Interface Standards Committee

  39. (3B1) Actions • Actions have a finite and small duration with unchanging parameters. • An example of an action is making a sound. AI Interface Standards Committee

  40. (3B1) Actions • It is the responsibility of the game to make sure that actions are resolved and carried out on behalf of the AI. AI Interface Standards Committee

  41. (3B1) Actions • Actions, like events, are game specific. • The interface we present will not attempt to create a library of actions, but rather a mechanism to create them. AI Interface Standards Committee

  42. (3B1) Actions • The game tells AI what actions and effectors are available by placing them on the action and effector blackboards. AI Interface Standards Committee

  43. (3B1) Actions • Agents are not allowed to instantly execute their desired actions. • Instead, they copy their request for a given action to the blackboard and leave the game to resolve the action. AI Interface Standards Committee

  44. (3B2) Effectors • Whereas Actions have limited or short duration and do not change parameters, effectors can last a long time and are aware of changes in parameters. AI Interface Standards Committee

  45. (3B2) Effectors • An example of an effector is Thrust, a quantity that is constantly changing and adjusting the velocity of an agent. • Another example of an effector is animation. AI Interface Standards Committee

  46. Overview (3A) Senses -(3A1) Events (short) -(3A2) Queries (question) (3B) Actuators -(3B1) Actions (short, static) -(3B2) Effectors (long, dynamic) AI Interface Standards Committee

  47. Discussion:World Interfacing AI Interface Standards Committee

  48. (Some) discussion comments: • Blackboard? Priority Queue? This should not be defined in the interface! Game programmers probably want to bypass all of this and build it themselves. Blackboard might be good as metaphor but should not be chosen as requirement for implementation. • Whatever the communication scheme, searching of information should be minimized. • Maybe, the WI should simply be a registry of callbacks with a filtering mechanism. • The WI should serve the other interfaces (Pathfinding, etc), not the other way around. • What is the “level” of events etc? Might get ugly…

  49. Session 3:Decision Trees Following slides prepared by Mark Kolenski; presented by Mark Kolenski AI Interface Standards Committee

  50. Decision TreesWhat ARE They? • Different disciplines and definitions. • May be probabilistic, dynamic, used in learning, expert systems, philosophy. AI Interface Standards Committee

More Related