CIS 488/588 Bruce R. Maxim UM-Dearborn

Slides:



Advertisements
Similar presentations
Artificial Intelligence: Knowledge Representation
Advertisements

Solving problems by searching
Heuristic Search techniques
Announcements Course TA: Danny Kumar
AI Pathfinding Representing the Search Space
ARCHITECTURES FOR ARTIFICIAL INTELLIGENCE SYSTEMS
MBD and CSP Meir Kalech Partially based on slides of Jia You and Brian Williams.
Label Placement and graph drawing Imo Lieberwerth.
PLANNING IN AI. Determine the set of steps that are necessary to achieve a goal Some steps might be conditional, i.e., they are only taken when a set.
CSC 423 ARTIFICIAL INTELLIGENCE
Best-First Search: Agendas
Artificial Intelligence in Game Design Intelligent Decision Making and Decision Trees.
Planning under Uncertainty
1 Using Search in Problem Solving Part II. 2 Basic Concepts Basic concepts: Initial state Goal/Target state Intermediate states Path from the initial.
1 Planning. R. Dearden 2007/8 Exam Format  4 questions You must do all questions There is choice within some of the questions  Learning Outcomes: 1.Explain.
Uninformed Search Reading: Chapter 3 by today, Chapter by Wednesday, 9/12 Homework #2 will be given out on Wednesday DID YOU TURN IN YOUR SURVEY?
Solving problems by searching
Advanced Topics in Algorithms and Data Structures 1 Two parallel list ranking algorithms An O (log n ) time and O ( n log n ) work list ranking algorithm.
Problem Solving and Search Andrea Danyluk September 11, 2013.
1 CO Games Development 1 Week 6 Introduction To Pathfinding + Crash and Turn + Breadth-first Search Gareth Bellaby.
Artificial Intelligence in Game Design N-Grams and Decision Tree Learning.
CSE473 Winter /04/98 State-Space Search Administrative –Next topic: Planning. Reading, Chapter 7, skip 7.3 through 7.5 –Office hours/review after.
Data Structures and Algorithms in Parallel Computing Lecture 2.
AI Lecture 17 Planning Noémie Elhadad (substituting for Prof. McKeown)
Distributed Models for Decision Support Jose Cuena & Sascha Ossowski Pesented by: Gal Moshitch & Rica Gonen.
Problem Reduction So far we have considered search strategies for OR graph. In OR graph, several arcs indicate a variety of ways in which the original.
Finite State Machines (FSM) OR Finite State Automation (FSA) - are models of the behaviors of a system or a complex object, with a limited number of defined.
AND/OR graphs  Some problems are best represented as achieving subgoals, some of which achieved simultaneously and independently (AND)  Up to now, only.
Solving problems by searching A I C h a p t e r 3.
CSCE 552 Fall 2012 AI By Jijun Tang. Homework 3 List of AI techniques in games you have played; Select one game and discuss how AI enhances its game play.
Chapter 3 Solving problems by searching. Search We will consider the problem of designing goal-based agents in observable, deterministic, discrete, known.
Artificial Intelligence Solving problems by searching.
Solving problems by searching Chapter 3. Types of agents Reflex agent Consider how the world IS Choose action based on current percept Do not consider.
Modelling and Solving Configuration Problems on Business
Solving problems by searching
Global Register Allocation Based on
Algorithms and Problem Solving
Software Testing.
Greedy Method 6/22/2018 6:57 PM Presentation for use with the textbook, Algorithm Design and Applications, by M. T. Goodrich and R. Tamassia, Wiley, 2015.
CS b659: Intelligent Robotics
Last time: Problem-Solving
Auburn University COMP7330/7336 Advanced Parallel and Distributed Computing Data Partition Dr. Xiao Qin Auburn University.
The Greedy Method and Text Compression
ECE 448 Lecture 4: Search Intro
Lecture 2 Introduction to Programming
Algorithm Analysis CSE 2011 Winter September 2018.
Informed Search and Exploration
Knowledge Representation
Problem Reduction -AND-OR Graph -AO* Search CSE 402 K3R23/K3R20.
Unit# 9: Computer Program Development
Analysis and Understanding
CIS 488/588 Bruce R. Maxim UM-Dearborn
Algorithm An algorithm is a finite set of steps required to solve a problem. An algorithm must have following properties: Input: An algorithm must have.
Objective of This Course
CIS 488/588 Bruce R. Maxim UM-Dearborn
Searching for Solutions
Machine Learning: Lecture 3
The use of Neural Networks to schedule flow-shop with dynamic job arrival ‘A Multi-Neural Network Learning for lot Sizing and Sequencing on a Flow-Shop’
BEST FIRST SEARCH -OR Graph -A* Search -Agenda Search CSE 402
CSE (c) S. Tanimoto, 2001 Search-Introduction
Subsuption Architecture
Algorithms and Problem Solving
CO Games Development 1 Week 8 Depth-first search, Combinatorial Explosion, Heuristics, Hill-Climbing Gareth Bellaby.
Applying Use Cases (Chapters 25,26)
Solving problems by searching
CSE (c) S. Tanimoto, 2002 State-Space Search
CSE (c) S. Tanimoto, 2004 State-Space Search
Chapter 12 Analyzing Semistructured Decision Support Systems
Solving problems by searching
Multidisciplinary Optimization
Presentation transcript:

CIS 488/588 Bruce R. Maxim UM-Dearborn Reactive Approach CIS 488/588 Bruce R. Maxim UM-Dearborn 12/8/2018

Reactive For reactive AI the output is always the same for a given input (deterministic) Its behavior is completely predictable for a specific situation Nondeterministic reactive AI would require the addition of memory so that it current action could depend on its state and the current input (and even its last action in this state if you wish) 12/8/2018

Planning Basics Planning is particularly desirable when a problem domain has a well-defined set of operators and easily determined states Often times accomplishing a task is reduced to asking “which operators can be used?” It is wise to pick operators that move you closest to your goal 12/8/2018

Basics If there are obstacles the task is modified to become “how do we remove obstacles?” Result of planning will be a plan in which the task accomplishing every goal has been reduced to a list of primitive operators Often times planning and executive are interleaved 12/8/2018

Problem Reduction Technique for achieving goals in a problem space by generating and achieving subgoals When presented with a problem the problem reducer will need to find a plan to solve the problem Finding a plan might be thought of as being a type of “heuristic search” in which the operators add detail by attaching plans for goals and coordinating steps 12/8/2018

Problem Reduction Coordination involves Good for top-level Choosing harmonious plans for simultaneous subgoals Choosing the order of execution for subplans Good for top-level Limitation of problem reduction is that it does not always take subplan interactions into account 12/8/2018

Algorithm Initialize graph to starting node Loop until starting node is solved or until cost exceeds futility Traverse graph using current best path and keep track of nodes on path not solved or not yet expanded Pick an unexpanded node if no successor then assign futility as node value else add node successors to graph and estimate value of node f(x) = y(x) + h’(x) // h’ is underestimator note: nodes where h'(x) = 0 are solved Update f'(x) of newly expanded node based on successor values 12/8/2018

Problem Reduction Advantage Disadvantage Trades the old problem of finding an operator sequence (e.g. a path through states) for the new problem of coordinating operator sequences Disadvantage Requires more domain knowledge than heuristic search 12/8/2018

Problem Reduction May require a large number of plans and the plans themselves may be large Particularly useful if problem space can be represented as an and/or graph Recall that and/or graphs are useful in answering how and why questions 12/8/2018

And/Or Tree Goal: Acquire TV Steal TV Buy TV and Earn Money Get Job 12/8/2018

Problem Reduction Important to make plan finding phase as efficient as possible How are plans/operators found? Preconditions Post conditions Good candidate for top level program since it combines general plan coordination techniques with library of specific plans 12/8/2018

Planning in Games Plans can be built in a reactive manner Pathfinding in uneven terrain is best done with planning techniques that search for the best available path Pathfinding requires a world map and lots of storage Reactive pathfinding would take longer, might not find the optimal path, but would use far less storage (only local terrain information is needed) 12/8/2018

Reactive Substitutes for Planning There are very few cases in games where planning is necessary Reactive strategies may appear very complex when used for high level tactical decisions Obstacle avoidance could be viewed handled reactively as long as the agent avoids getting stuck 12/8/2018

Reactive Deterministic Game Techniques Scripts (small programs used to compute a result given some input parameters Rule-based systems (collections of if..then rules used to manipulate variables) Finite-state machines (select next state action based on current input values) 12/8/2018

Reactive Advantages for Animats Embodiment (reactive behaviors based on interpreting local information to select actions) Learning (many learning techniques are based on acquiring reactive mappings between inputs and behavior) 12/8/2018

Architectures Components are best viewed as black boxes with details of AI unknown to its users Architectural Styles Monolithic (single component architecture) Flat (many components exist in parallel) Hierarchical (components nested inside one another) Reducing complexity is the deciding factor used to select an architectural style 12/8/2018

Game AI Decomposition Structural Behavioral Goal Splits solution according to the function (movement, weapon handling) of each component Behavioral Based on system activities or modes (hunting, fleeing, collecting ammo) different component for each behavior (very appropriate for computer games) Goal Create goal trees to assist in decision making 12/8/2018

Component Connection Types Attribution Independent sum (components connected to different outputs to avoid conflicts) Combination (outputs from different components blended together to make final result) Suppression (strong components get priority weak components ignored) Sequential attribution (arbitration used to ensure output of different components over time – fair scheduling) 12/8/2018

Example - 1 Subsumation Horizontal, hierarchical layers Higher layer outputs over ride lower layer outputs Behavior-based decomposition Uses flat organization Output suppression 12/8/2018

Example - 2 Voting system Set of distributed components connected to a smaller vote counting component Output with the most votes wins Uses functional decomposition Flat organization Combination used to merge outputs 12/8/2018