Introduction to Artificial Intelligence CIS 3203 Intelligent Agents Intelligent agent (IA) an autonomous entity which observes through sensors (aka “perceptors”) and acts upon an environment using actuators (aka “effectors”) and directs its activity towards achieving goals (i.e. it is rational in the sense of economics theory: more of a good thing is better than less of it). Intelligent agents may also learn or use knowledge They may be simple: a reflex machine such as a thermostat is an intelligent agent, or very complex: a robot, a human being, or a community of human beings working together towards a goal. Perception-Action Cycle Environment Agent sensors The part we mainly study in this class percepts ? actuators actions Applications Trading Agent News, Prices Financial Markets: Bonds Stocks buy or sell Commodities Applications Robot Physical World cameras, microphones, tactile sensors wheels, grippers Applications Your body Diagnostic Agent Blood pressure, Other diagnostic tests diagnoses Applications The Web Web Search Engine Web crawler DB User query Top ten links Search Engine User Quiz What’s the difference between an “intelligent agent” as I’ve defined it, and a computer program? Environment Types 1. Observability: Fully observable vs. Partially observable Chess is fully observed: a player gets to see the whole board. Poker is partially observable: a player gets to see only his own cards, not the cards of everyone in the game. Environment Types 2. Action outcomes Deterministic outcomes vs. Stochastic outcomes Chess has deterministic action outcomes: given a board position, if a player makes a particular move, the resulting board position is always the same. Backgammon has stochastic outcomes: on a player’s turn, she or he rolls dice to see how many moves can be made. The outcome of the dice roll has randomness to it (called stochasticity). Environment Types 3. Environment size / countability Discrete state space vs. Continuous state space Chess has a discrete environment: there are finitely many board positions. Darts has a continuous environment: there is a range of places where your dart could end up, but within that range is an (uncountably) infinite set of possible places the dart could stick. Environment Types 4. Is the environment out to get you? Benign environment vs. adversarial environment Most games, like chess and poker, are adversarial: the environment (which includes the agent’s opponent) is trying to stop the agent from achieving its goal(s). Weather, or robot navigation problems, or search engine queries, are usually treated as benign environments: the environment can still hurt the agent, but usually there is no intelligent agent in the environment that is actively trying to hurt the agent. Quiz: Environment Types For each environment below, decide which categories it belongs to. Environment Type Fully observable or Partially observable Stochastic or Deterministic Discrete or Continuous Benign or Adversarial Checkers Poker Robot Car Key Aspects of Intelligent Agents Representation language: what formal language (or data structure) should we use to describe what an agent knows? databases? propositional logic? probability theory? graphs? First-order logic? Markov logic, Bayesian networks, …? Inference mechanism: what procedure(s) can an agent use to deduce new knowledge from what it already knows? search, probabilistic reasoning, modus ponens, resolution theorem-proving? Learning mechanism: what procedure(s) can an agent use to improve its performance based on past observations? perceptron, Bayes learning, unsupervised learning, EM, regression, … -----------------------------This isn’t part of the agent itself, but a key aspect of designing the agent: Evaluation procedure: what test(s) should we use to judge how well an agent is performing? Uncertainty in AI AI is sometimes described as the discipline that studies what to do in the face of uncertainty . Reasons for uncertainty: Stochastic environments Adversarial environments Partially observable environments Agent limits: sensor limits memory or storage limits/ignorance computational limits/laziness Probabilistic Reasoning and Uncertainty In the past 20 years, Probability Theory has become one of the most important tools for AI. E.g., if there’s a 20% chance of rain on any given night, and 40% chance that it rained overnight if the grass is wet in the morning, what’s the probability that it rained last night if the grass is dry in the morning? We’ll begin covering this type of reasoning in the second week.