Download CSCE 330 Programming Language Structures

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts

History of artificial intelligence wikipedia , lookup

Human-Computer Interaction Institute wikipedia , lookup

Computer Go wikipedia , lookup

Human–computer interaction wikipedia , lookup

Embodied cognitive science wikipedia , lookup

Transcript
CSCE 531
Artificial Intelligence
Ch.1 [P]: Artificial Intelligence and Agents
Fall 2008
Marco Valtorta
[email protected]
UNIVERSITY OF SOUTH CAROLINA
Department of Computer Science and Engineering
Acknowledgment
• The slides are based on the textbook [AIMA] and other
sources, including other fine textbooks
• The other textbooks I considered are:
– David Poole, Alan Mackworth, and Randy Goebel.
Computational Intelligence: A Logical Approach. Oxford,
1998
• A second edition (by Poole and Mackworth) is under development.
Dr. Poole allowed us to use a draft of it in this course
– Ivan Bratko. Prolog Programming for Artificial Intelligence,
Third Edition. Addison-Wesley, 2001
• The fourth edition is under development
– George F. Luger. Artificial Intelligence: Structures and
Strategies for Complex Problem Solving, Sixth Edition.
Addison-Welsey, 2009
UNIVERSITY OF SOUTH CAROLINA
Department of Computer Science and Engineering
Artificial Intelligence: a Definition
• Artificial Intelligence is the synthesis and analysis of agents that
act intelligently.
• An agent is something that acts in an environment.
• An agent that acts intelligently if:
– its actions are appropriate for its goals and circumstances
– it is flexible to changing environments and goals
– it learns from experience
– it makes appropriate choices given perceptual limitations and
finite computation
• Some agents are not computational
– e.g., wind and rain eroding a landscape
• Are all intelligent agents computational?
– Open question!
UNIVERSITY OF SOUTH CAROLINA
Department of Computer Science and Engineering
Central Hypotheses of AI
• Symbol-system hypothesis:
– Reasoning is symbol manipulation
• Attributed to Allan Newell (1927-1992) and
Herbert Simon (1916-2001)
• Church-Turing thesis:
– Any symbol manipulation can be carried out on
a Turing machine
• Alonzo Church (1903-1995)
• Alan Turing (1912-1954)
UNIVERSITY OF SOUTH CAROLINA
Department of Computer Science and Engineering
Agents and Environments
UNIVERSITY OF SOUTH CAROLINA
Department of Computer Science and Engineering
Sample Agent: Robot
• actions:
– movement, grippers, speech, facial expressions,. . .
• observations:
– vision, sonar, sound, speech recognition, gesture
recognition,. . .
• goals:
– deliver food, rescue people, score goals, explore,. . .
• past experiences:
– effect of steering, slipperiness, how people move,. . .
• prior knowledge:
– what is important feature, categories of objects, what a
sensor tell us,. . .
UNIVERSITY OF SOUTH CAROLINA
Department of Computer Science and Engineering
Example Agent: Teacher
• actions:
– present new concept, drill, give test, explain concept,. . .
• observations:
– test results, facial expressions, errors, focus,. . .
• goals:
– particular knowledge, skills, inquisitiveness, social
skills,. . .
• past experiences:
– prior test results, effects of teaching strategies, . . .
• prior knowledge:
– subject material, teaching strategies,. . .
UNIVERSITY OF SOUTH CAROLINA
Department of Computer Science and Engineering
Example agent: Medical Doctor
• actions:
– operate, test, prescribe drugs, explain instructions,. . .
• observations:
– verbal symptoms, test results, visual appearance. . .
• goals:
– remove disease, relieve pain, increase life expectancy,
reduce costs,. . .
• past experiences:
– treatment outcomes, effects of drugs, test results given
symptoms. . .
• prior knowledge:
– possible diseases, symptoms, possible causal
relationships. . .
UNIVERSITY OF SOUTH CAROLINA
Department of Computer Science and Engineering
Example Agent: User Interface
• actions:
– present information, ask user, find another information
source, filter information, interrupt,. . .
• observations:
– users request, information retrieved, user feedback,
facial expressions. . .
• goals:
– present information, maximize useful information,
minimize irrelevant information, privacy,. . .
• past experiences:
– effect of presentation modes, reliability of information
sources,. . .
• prior knowledge:
– information sources, presentation modalities. . .
UNIVERSITY OF SOUTH CAROLINA
Department of Computer Science and Engineering
The Role of Representation
• Choosing a representation involves balancing conflicting
objectives
• Different tasks require different representations
• Representations should be expressive (epistemologically
adequate) and efficient (heuristically adequate)
UNIVERSITY OF SOUTH CAROLINA
Department of Computer Science and Engineering
Desiderata of Representations
• We want a representation to be
– rich enough to express the knowledge needed to solve
the problem
• Epistemologically adequate
– as close to the problem as possible: compact, natural
and maintainable
– amenable to efficient computation: able to express
features of the problem we can exploit for
computational gain
• Heuristically adequate
– learnable from data and past experiences
– able to trade off accuracy and computation time
UNIVERSITY OF SOUTH CAROLINA
Department of Computer Science and Engineering
Dimensions of Complexity
•
•
•
•
•
•
•
•
•
Modularity:
– Flat, modular, or hierarchical
Representation:
– Explicit states or features or objects and relations
Planning Horizon:
– Static or finite stage or indefinite stage or infinite stage
Sensing Uncertainty:
– Fully observable or partially observable
Process Uncertainty:
– Deterministic or stochastic dynamics
Preference Dimension:
– Goals or complex preferences
Number of agents:
– Single-agent or multiple agents
Learning:
– Knowledge is given or knowledge is learned from experience
Computational Limitations:
– Perfect rationality or bounded rationality
UNIVERSITY OF SOUTH CAROLINA
Department of Computer Science and Engineering
Modularity
• You can model the system at one level of abstraction: flat
– Manuscript distinguish flat (no organizational structure)
from modular (interacting modules that can be
understood on their own; hierarchical seems to be a
special case of modular)
• You can model the system at multiple levels of abstraction:
hierarchical
– Example: Planning a trip from here to a resort in
Cancun, Mexico
• Flat representations are ok for simple systems, but complex
biological systems, computer systems, organizations are all
hierarchical
• A flat description is either continuous or discrete.
• Hierarchical reasoning is often a hybrid of continuous and
discrete
UNIVERSITY OF SOUTH CAROLINA
Department of Computer Science and Engineering
Succinctness and Expressiveness
• Much of modern AI is about finding compact
representations and exploiting that compactness for
computational gains.
• An agent can reason in terms of:
– explicit states
– features or propositions.
• It's often more natural to describe states in terms of features
• 30 binary features can represent 230 = 1,073,741,824 states.
– individuals and relations
• There is a feature for each relationship on each tuple of
individuals.
• Often we can reason without knowing the individuals or when
there are infinitely many individuals
UNIVERSITY OF SOUTH CAROLINA
Department of Computer Science and Engineering
Example: States
Thermostat for a heater
– 2 belief (i.e., internal) states:
off, heating
– 3 environment (i.e., external)
states: cold, comfortable, hot
– 6 total states corresponding to
the different combinations of
belief and environment states
UNIVERSITY OF SOUTH CAROLINA
Department of Computer Science and Engineering
Example: Features or Propositions
–
–
–
–
–
Character recognition
Input is a binary image which is a 30x30
grid of pixels
Action is to determine which of the letters
{a…z} is drawn in the image
There are 2900 different
states of the
900
image, and so 262 different functions
from the image state into the letters
We cannot even represent such functions in
terms of the state space
Instead, we define features of the image,
such as line segments, and define the
function from images to characters in terms
of these features
UNIVERSITY OF SOUTH CAROLINA
Department of Computer Science and Engineering
Example: Relational Descriptions
University Registrar Agent
• Propositional description:
– “passed” feature for every student-course pair that
depends on the grade feature for that pair
• Relational description:
– individual students and courses
– relations grade and passed
– Define how “passed” depends on grade once, and apply it
for each student and course. Moreover this can be done
before you know of any of the individuals, and so before
you know the value of any of the features
covers_core_courses(St, Dept) <- core_courses(dept, CC, MinPass) &
passed_each(CC, St, MinPass).
passed(St, C, MinPass) <- grade(St, C, Gr) & Gr >= MinPass.
UNIVERSITY OF SOUTH CAROLINA
Department of Computer Science and Engineering
Planning Horizon
•
•
•
•
How far the agent looks into the future when
deciding what to do
Static: world does not change
Finite stage: agent reasons about a fixed finite
number of time steps
Indefinite stage: agent is reasoning about finite,
but not predetermined, number of time steps
Infinite stage: the agent plans for going on forever
(process oriented)
UNIVERSITY OF SOUTH CAROLINA
Department of Computer Science and Engineering
Uncertainty
• There are two dimensions for uncertainty
– Sensing uncertainty
– Process uncertainty
• In each dimension we can have
– no uncertainty: the agent knows which world is
true
– disjunctive uncertainty: there is a set of worlds
that are possible
– probabilistic uncertainty: a probability
distribution over the worlds
UNIVERSITY OF SOUTH CAROLINA
Department of Computer Science and Engineering
Uncertainty
• Sensing uncertainty: Can the agent determine the state
from the observations?
– Fully-observable: the agent knows the state of the world
from the observations.
– Partially-observable: many states are possible given an
observation.
• Process uncertainty: If the agent knew the initial state and
the action, could it predict the resulting state?
– Deterministic dynamics: the state resulting from carrying
out an action in state is determined from the action and
the state
– Stochastic dynamics: there is uncertainty over the states
resulting from executing a given action in a given state.
UNIVERSITY OF SOUTH CAROLINA
Department of Computer Science and Engineering
Bounded Rationality
Solution quality as a function of time for an anytime algorithm
UNIVERSITY OF SOUTH CAROLINA
Department of Computer Science and Engineering
Examples of Representational
Frameworks
•
•
•
•
•
State-space search
Classical planning
Influence diagrams
Decision-theoretic planning
Reinforcement Learning
UNIVERSITY OF SOUTH CAROLINA
Department of Computer Science and Engineering
State-Space Search
• flat or hierarchical
• explicit states or features or objects and relations
• static or finite stage or indefinite stage or infinite
stage
• fully observable or partially observable
• deterministic or stochastic actions
• goals or complex preferences
• single agent or multiple agents
• knowledge is given or learned
• perfect rationality or bounded rationality
UNIVERSITY OF SOUTH CAROLINA
Department of Computer Science and Engineering
Classical Planning
• flat or hierarchical
• explicit states or features or objects and relations
• static or finite stage or indefinite stage or infinite
stage
• fully observable or partially observable
• deterministic or stochastic actions
• goals or complex preferences
• single agent or multiple agents
• knowledge is given or learned
• perfect rationality or bounded rationality
UNIVERSITY OF SOUTH CAROLINA
Department of Computer Science and Engineering
Influence Diagrams
• flat or hierarchical
• explicit states or features or objects and relations
• static or finite stage or indefinite stage or infinite
stage
• fully observable or partially observable
• deterministic or stochastic actions
• goals or complex preferences
• single agent or multiple agents
• knowledge is given or learned
• perfect rationality or bounded rationality
UNIVERSITY OF SOUTH CAROLINA
Department of Computer Science and Engineering
Decision-Theoretic Planning
• flat or hierarchical
• explicit states or features or objects and relations
• static or finite stage or indefinite stage or infinite
stage
• fully observable or partially observable
• deterministic or stochastic actions
• goals or complex preferences
• single agent or multiple agents
• knowledge is given or learned
• perfect rationality or bounded rationality
UNIVERSITY OF SOUTH CAROLINA
Department of Computer Science and Engineering
Reinforcement Learning
• flat or hierarchical
• explicit states or features or objects and relations
• static or finite stage or indefinite stage or infinite
stage
• fully observable or partially observable
• deterministic or stochastic actions
• goals or complex preferences
• single agent or multiple agents
• knowledge is given or learned
• perfect rationality or bounded rationality
UNIVERSITY OF SOUTH CAROLINA
Department of Computer Science and Engineering
Comparison of Some Representations
UNIVERSITY OF SOUTH CAROLINA
Department of Computer Science and Engineering
Four Application Domains
• Autonomous delivery robot roams around an office
environment and delivers coee, parcels, etc.
• Diagnostic assistant helps a human
troubleshootproblems and suggests repairs or
treatments
– E.g., electrical problems, medical diagnosis
• Intelligent tutoring system teaches students in some
subject area
• Trading agent buys goods and services on your
behalf
UNIVERSITY OF SOUTH CAROLINA
Department of Computer Science and Engineering
Environment for Delivery Robot
UNIVERSITY OF SOUTH CAROLINA
Department of Computer Science and Engineering
Autonomous Delivery Robot
•
•
•
•
Example inputs:
Prior knowledge: its capabilities,
objects it may encounter, maps.
Past experience: which actions
are useful and when, what
objects are there, how its actions
aect its position
Goals: what it needs to deliver
and when, tradeoffs between
acting quickly and acting safely
Observations: about its
environment from cameras,
sonar, sound, laser range
finders, or keyboards
UNIVERSITY OF SOUTH CAROLINA
•
•
•
•
•
•
•
Sample activities:
Determine where Craig's office
is. Where coffee is, etc.
Find a path between locations
Plan how to carry out multiple
tasks
Make default assumptions about
where Craig is
Make tradeoffs under
uncertainty: should it go near
the stairs?
Learn from experience.
Sense the world, avoid
obstacles, pickup and put down
coffee
Department of Computer Science and Engineering
Environment for Diagnostic Assistant
UNIVERSITY OF SOUTH CAROLINA
Department of Computer Science and Engineering
Diagnostic Assistant
•
•
•
•
Example inputs:
Prior knowledge: how switches
and lights work, how
malfunctions manifest
themselves, what information
tests provide, the side effects of
repairs
Past experience: the effects of
repairs or treatments, the
prevalence of faults or diseases
Goals: fixing the device and
tradeoffs between fixing or
replacing different components
Observations: symptoms of a
device or patient
UNIVERSITY OF SOUTH CAROLINA
•
•
•
•
•
•
•
•
Sample activities:
Derive the effects of faults and
interventions
Search through the space of possible
fault complexes
Explain its reasoning to the human
who is using it
Derive possible causes for symptoms;
rule out other causes
Plan courses of tests and treatments
to address the problems
Reason about the
uncertainties/ambiguities given
symptoms.
Trade off alternate courses of action
Learn what symptoms are associated
with faults, the effects of treatments,
and the accuracy of tests.
Department of Computer Science and Engineering
Trading Agent
•
•
•
•
Example inputs:
Prior knowledge: the ontology
of what things are available,
where to purchase items, how to
decompose a complex item
Past experience: how long
special last, how long items take
to sell out, who has good deals,
what your competitors do
Goals: what the person wants,
their tradeoffs
Observations: what items are
available, prices, number in
stock
UNIVERSITY OF SOUTH CAROLINA
•
•
•
•
Sample activities:
Trading agent interacts with an
information environment to
purchase goods and services.
It acquires a users needs,
desires and preferences. It finds
what is available.
It purchases goods and services
that t together to fulfill user
preferences.
It is difficult because user
preferences and what is
available can change
dynamically, and some items
may be useless without other
items.
Department of Computer Science and Engineering
Intelligent Tutoring Systems
•
•
•
•
Example inputs
Prior knowledge: subject
material, primitive strategies
Past experience: common errors,
effects of teaching strategies
Goals: teach subject material,
social skills, study skills,
inquisitiveness, interest
Observations: test results, facial
expressions, questions, what the
student is concentrating on
UNIVERSITY OF SOUTH CAROLINA
Sample activities:
• To be filled
Department of Computer Science and Engineering
Common tasks of the Domains
• Modeling the environment:
– Build models of the physical environment, patient, or
information environment
• Evidential reasoning or perception:
– Given observations, determine what the world is like
• Action:
– Given a model of the world and a goal, determine
what should be done
• Learning from past experiences:
– Learn about the specific case and the population of
cases
UNIVERSITY OF SOUTH CAROLINA
Department of Computer Science and Engineering