Presentation is loading. Please wait.

Presentation is loading. Please wait.

Analysis and Understanding

Similar presentations


Presentation on theme: "Analysis and Understanding"— Presentation transcript:

1 Analysis and Understanding
CIS 488/588 Bruce R. Maxim UM-Dearborn 11/18/2018

2 AI Engineering Analysis Understanding
Aims to investigate the game environment, game engine, and platform Design document is used as input when game engine and AI are developed in parallel Understanding High-level requirements and goals to analyze the problem at hand, irrespective of the game engine and just from the perspective of AI development 11/18/2018

3 Write It Down It is vital to spend time writing down your thoughts on all problems tackled You want to avoid wasting time revisiting closed issues Add this stuff to the development notes (electronic with backup is probably better than paper) 11/18/2018

4 Big Picture - 1 Platform – SW and HW supporting development (game world and game engine) Task – conceptual explanation of goals of AI within platform (understanding local info to prevent collision) Information – collection of data from platform to achieve task (environment structure and detail) 11/18/2018

5 Big Picture - 2 Input – subset of available info converted usable format (input + output = solution scaffolding) Output – possible player actions combined with platform to form outcome Context – implicit state containing info about task, defining effect of outputs and restricting inputs 11/18/2018

6 Big Picture - 3 Problem – the description of AI module capable of mapping information from input to output (e.g. avoiding individual obstacles) Solution – particular AI component capable of resolving the problem, obtaining the desired outcome while respecting the requirements (e.g. steering behavior) 11/18/2018

7 Analysis Phase Tackles common principles not particular scenarios
Requires studying: General task (universal ability AI is to provide) Platform (aspects of design affecting the task) 11/18/2018

8 11/18/2018

9 Assumptions List the facilities of platform that AI can rely on and are taken into account during specification Often sufficient to describe human player interfaces Game engine is usually frozen Developer must decide how much of the platform to expose to the AI and at what level it should be integrated Reuse code whenever practical 11/18/2018

10 Restrictions Aspects of design or software that affect task at hand
Affect the problem, not its specification Taken into account during understanding phase that describes the problem Describe the parts of the game engine that make the problem hard to solve Terrain structure may prevent certain types of movement or prevent gathering perfect info 11/18/2018

11 Guidelines Design and platform aspects to be taken into account during that application phase Procedures that are to be followed very closely throughout the process Hard to identify specific AI guidelines before game development actually begins Much like agile development any structure added to the process is good, not matter when it is added to the development process 11/18/2018

12 Understanding Focuses on one particular task and describes how a solution works Relies on: Goals (high-level outcome description discussing what AI needs to achieve) Requirements (development team members requests that need to be accommodated in problem description) Restrictions (implicit aspects of platform that affect problem solution) 11/18/2018

13 11/18/2018

14 Criteria and Outcome Describe resulting behavior first
Highly desirable to have a well-defined problem outcome If goals are incomplete or uncertain AI engineering is difficult at best An ordered list of high-level problem specific criteria is suitable for this These criteria can be used to evaluate the quality of a problem solution 11/18/2018

15 Sample Criteria Animats take no steps that cause collisions
Allow contact with obstacles only when animat is not moving Restrict animat turns to 20 degrees/second when no obstacles are with in 4 steps 11/18/2018

16 Problem Decomposition
Understanding phase decomposes single outcomes into sequences of actions needed to solve particular problems This makes problems more explicit and easier to solve It is often possible to determine what needs to be done based on observation of human behavior Sometimes description needs to be done by listing scenarios and their restrictions 11/18/2018

17 General Advice The role of the understanding phase is to describe problems in detail, not solutions This allows domain experts to write problem descriptions with a little training and this will allow for better communication with developers Caution, since lists of criteria are written in natural language they will be ambiguous Ambiguity allows both requirement misinterpretation and flexibility in solution creation 11/18/2018

18 Tobor Obtains basic information from the environment
Tactile sensors are used to detect contact with obstacles Stops when collisions occur and machanically turns around 11/18/2018


Download ppt "Analysis and Understanding"

Similar presentations


Ads by Google