COMP3702/7702 Artificial Intelligence Week1: Introduction Russell & Norvig ch.1-2.3, 3.1-3.3 Hanna Kurniawati
Today } What is Artificial Intelligence? } Better know what it is first before committing the next 16 weeks of your life to it J } Some history } To predict the future } Agent defined } How to design an agent, so that we can program it } Properties of an agent } What representations & methods should be used, so that the agent can solve its problem(s) well? } Intro to Search } A way for an agent to solve its problem(s)
Today } What is Artificial Intelligence? } Better know what it is first before committing the next 16 weeks of your life to it J } Some history } To predict the future } Agent defined } How to design an agent, so that we can program it } Properties of an agent } What representations & methods should be used, so that the agent can solve its problem(s) well? } Intro to Search } A way for an agent to solve its problem(s)
What is Artificial Intelligence (AI)? } AI is an attempt to build intelligent computers. } What is intelligent? } Act like humans. } Think like humans. } Act rationally.
What is Artificial Intelligence (AI)? } AI is an attempt to build intelligent computers. } What is intelligent? } Act like humans. } Think like humans. } Act rationally.
Act like humans: Turing Test } An attempt to make intelligent machine less vague. } Goal: Test if a computer can fool humans into thinking that the computer is human. } The computer is asked questions by a human interrogator. It passes the test if the interrogator cannot tell whether the responses come from a human or a computer. } By Alan Turing in 1950.
Critique to Turing Test: The Chinese Room } Thought experiment by Searle 1960. } A person who only knows English is locked in a room with } Stack of papers containing Chinese symbols. } An instruction manual in English. } People outside the room send questions in Chinese. } Suppose by following the instruction manual, the man in the room can pass out Chinese symbols which are correct answers to the questions. } The person appears to know Chinese even though he is not.
Searle s point } No matter how intelligent the computer seems to be, if it does not understand the meaning of the symbols it process, it is not really intelligent.
Applications of Turing Test } Regardless of the philosophical debate, Turing s idea on trying to define (artificial) intelligence more concretely has yielded useful results. } Chatterbots: Eliza, A.L.I.C.E., automated online assistance, etc. } CAPTCHA: Completely Automated Public Turing test to tell Computers and Humans Apart. } Turing test, but the interrogator is a computer.
What is Artificial Intelligence (AI)? } AI is an attempt to build intelligent computers. } What is intelligent? } Act like humans. } Think like humans. } Act rationally.
Think like humans } Mimic the working of human brains. } Not just appear human. } To what level? } Very high level: vision, memory, } Neurons. But, people who study neurons still argue what neurons can and cannot do } Cognitive science & neuroscience.
What is Artificial Intelligence (AI)? } AI is an attempt to build intelligent computers. } What is intelligent? } Act like humans. } Think like humans. } Act rationally.
The question is } Do we really want computers to be exactly like humans? } How useful would a computer be if its shortcomings are exactly the same as our shortcomings?
Act rationally } Always make the best decision given the available resources (knowledge, time, computational power and memory). } Best: Maximize certain performance measure(s), usually represented as a utility function. } More on this throughout the semester.
What is Artificial Intelligence (AI)? } AI is an attempt to build intelligent computers. } What is intelligent? } Act like humans. } Think like humans. } Act rationally. } And many more
In this class, } We will take the act rationally view } We are interested to build systems (usually called agents) that behave rationally; systems that accomplish what it is supposed to do, well, given the available resources. } Don t worry about how close the systems resemble humans and about philosophical questions on what is intelligent. } We may use inspirations from humans / other intelligent beings.
Today What is Artificial Intelligence? Better know what it is first before committing the next 16 weeks of your life to it J } Some history } To predict the future } Agent defined } How to design an agent, so that we can program it } Properties of an agent } What representations & methods should be used, so that the agent can solve its problem(s) well? } Intro to Search } A way for an agent to solve its problem(s)
Some history } 1943: The beginning of neural network, started by McCulloch & Pitts. } 1950: Turing test introduced. } 1952-1969: The promise of AI. } 1956: The name Artificial Intelligence is coined by John McCarthy at the Dartmouth Conference. } 1969-1973: AI meets computational complexity. } 1969-1979: Development of expert systems. } 1980-1988: Expert systems industry booms. } 1988-1993: Expert systems industry busts.
Some history } 1988-now: Probability enters AI. Start of machine learning & soft computing. } 1995-now: Intelligent agents popularised. } 2000-now: AI is back } 2013-now: Rise of deep learning, Rush for AI in industry.
Of course, there s the debate
In the city,
In marine environments,
Today What is Artificial Intelligence? Better know what it is first before committing the next 16 weeks of your life to it J Some history To predict the future } Agent defined } How to design an agent, so that we can program it } Properties of an agent } What representations & methods should be used, so that the agent can solve its problem(s) well? } Intro to Search } A way for an agent to solve its problem(s)
In this class, } We will take the act rationally view } We are interested to build systems (usually called agents) that behave rationally; systems that accomplish what it is supposed to do, given the available resources. } Don t worry about how close the systems resemble humans and about philosophical questions on what is intelligent. } We may use inspirations from humans / other intelligent beings.
What is an agent? } A computer program that: } Gathers information about an environment, and } takes actions autonomously based on that information. } Examples: } A robot. } A web crawler. } A spam filter. Agent Percepts Action Environment This class: Focus on rational agents: Agents that act rationally.
Recall our goal: To build a rational agent } To achieve our goal, we need to define our agent in a way that we can program it. } So, more formal definition is needed. } The problem of defining a particular agent formally is usually called the agent design problem. } Basically, it s about defining the components of the agent, so that when the agent acts rationally, it will accomplish the task it is supposed to perform, well
Overview of a rational agent Percepts Agent Environment Action } An agent performs the ``best action in the environment, the environment generates a percept. The percept generated by the environment may depend on the sequence of actions the agent has done.
The components Agent Percepts Environment } A: Action space } The set of all actions the agent can do. } P: Percept space } The set of all things the agent can perceive in the world. } S: State space } Internal state of the agent & the environment that matters for the interaction between the agent & the environment. } World dynamics: T: S X A à S } Perception function: Z: S à P Action Model the relation between the agent & the world
The components } Recall: } Best action: The action that maximizes a given performance criteria. } A rational agent selects an action that it believes will maximize its performance criteria, given the available knowledge, time, & computational resources. } Utility function: A function that assigns a value to each state (or sequence of states or state-action or state-action-observation), to indicate the desirability of being in such a (sequence of) state with respect to the agent s task.
The components summarised } The first step in designing an agent is to set the following components: } Action space (A) } Percept space (O) } State space (S) } World dynamics (T: SXA à S) } Percept function (Z: S à O) } Can also maps from SXA } Utility function (U: S à real number) } Can also maps from SXA or SXAXS or SXAXO
The problem the agent should solve } Find a mapping from sequences of percepts to action P* à A that maximizes the utility function. } Given the sequences of percepts it has seen so far, what should the agent do next, so that the utility function can be maximized.
Wait } Isn t this just an optimization problem? } Yes. Well, most problems can be framed as optimization problems. } Real-world AI problems are usually hard optimization problems. } We ll see computational representations & techniques that utilizes the problem & environmental structures to make solving the problem more feasible.
Throughout the semester, we will see } Various computational representation of the components. } Various ways to represent the problem (i.e., the mapping from perceptions to actions). } Computational techniques that compute a good solution to the above problem, efficiently. } The suitable representations & techniques highly depend on properties of the environment & the agent s knowledge about the environment } More about this soon
Example: 8-puzzle } Action space (A) } Move the empty cell left (L), right (R), up (U), down (D). } Percept space (P) 7 2 4 5 6 8 3 1 Initial state 3 4 5 } The sequence of numbers in left-right and up-down direction, where the empty cell is marked with an underscore. } State space(s) } Same as P } World dynamics (T) } The change from one state to another, given a particular movement of the empty cell. } Can be represented as a table. 1 2 6 7 8 Goal state
Example: 8-puzzle } Percept function (Z) } Identity map } Utility function: } +1 for the goal state. } 0 for all other states.
Example: Tic Tac Toe An agent that plays Tic Tac Toe 1 time step = a single move by the agent & the opponent.
Example: Tic Tac Toe An agent that plays Tic Tac Toe } Action space (A) } Make a mark at cell-i. } But, may also need more details. Suppose we use a robot: } Moving the arm to a position where the robot can make a mark at the specified (x, y) position. } Moving the arm down. } Make a mark at (x, y) position. } In real-world problems, we need to decide the level of details to use. } Usually, depends on the task & computational resources. } In this example, we ll use the more abstract : } Don t worry about how the mark will be made. } Just on where to place the mark strategically, to win the game.
Example: Tic Tac Toe } Action space (A) } Make a mark at cell-i. } Percept space (P) } The position of the marks (the Xs & Os), e.g., ordering of Xs & Os if we read the cells top-down, left-right: In this example: X_X_OXOXO } Similar to the action space, there s different levels of abstractions we may need. If we use a robot: } Bitmap image. } In this example, we ll use the higher level abstraction.
Example: Tic Tac Toe } Action space (A) } Make a mark at cell-i. } Percept space (P) } The position of the marks (the Xs & Os). } State space (S) } All possible combinations of the marks positions. } World dynamics (T) } The change from a snapshot of the game to the next, given an action. } Percept function (Z) } In this case, the percept is exactly the same as the current state.
Example: Tic Tac Toe } Utility function: } 10 when we make a straight line. } -10 when the opponents make a straight line. } 0 for any other state
Key difficulty in designing an agent } Ensuring that the best sequence of actions for the agent (as defined by its components) is equivalent to the best way for the agent to accomplish its task. } Essentially, the same as the difficulties in almost any modelling problem: } Ensuring that the model is a faithful representation of the problem.
Today What is Artificial Intelligence? Better know what it is first before committing the next 16 weeks of your life to it J Some history To predict the future Agent defined How to design an agent, so that we can program it } Properties of an agent } What representations & methods should be used, so that the agent can solve its problem(s) well? } Intro to Search } A way for an agent to solve its problem(s)
Next week We ll look into different problem classes & methods for the agent to solve its problem Please review computational complexity: Check out resources page in the website