computer science 1000 ai – a brief overview. artificial intelligence definition: many! `` ``the...
TRANSCRIPT
Artificial Intelligence definition: many!
``
``The exciting new effort to make computers think ... machines with minds, in the full and literal sense'' (Haugeland, 1985)
``The automation of activities that we associate with human thinking, activities such as decision-making, problem solving, learning ...'' (Bellman, 1978)
``The study of mental faculties through the use of computational models'' (Charniak and McDermott, 1985)
``The study of the computations that make it possible to perceive, reason, and act'' (Winston, 1992)
``The art of creating machines that perform functions that require intelligence when performed by people'' (Kurzweil, 1990)
``The study of how to make computers do things at which, at the moment, people are better'' (Rich and Knight, 1991)
“Computational Intelligence is the study of the design of intelligent agents” (Poole et. al. 1998)
“AI ... is concerned with intelligent behaviour in artifacts.”
From Russel & Norvig. Artificial Intelligence: A Modern Approach
Artificial Intelligence definition: many!
``The exciting new effort to make computers think ... machines with minds, in the full and literal sense'' (Haugeland, 1985)
``The automation of activities that we associate with human thinking, activities such as decision-making, problem solving, learning ...'' (Bellman, 1978)
``The study of mental faculties through the use of computational models'' (Charniak and McDermott, 1985)
``The study of the computations that make it possible to perceive, reason, and act'' (Winston, 1992)
``The art of creating machines that perform functions that require intelligence when performed by people'' (Kurzweil, 1990)
``The study of how to make computers do things at which, at the moment, people are better'' (Rich and Knight, 1991)
“Computational Intelligence is the study of the design of intelligent agents” (Poole et. al. 1998)
“AI ... is concerned with intelligent behaviour in artifacts.”
From Russel & Norvig. Artificial Intelligence: A Modern Approach
Systems that think like humans Systems that think rationally
Systems that act like humans Systems that act rationally
Acting Humanly – the Turing Test* Two identical rooms labeled A and B are connected
electronically to a judge who can type questions directed to the occupant of either room. A human being occupies one room, and the other contains a computer. The judge's goal is to decide, based on the questions asked and the answers received, which room contains the computer. If after a reasonable period of time the judge cannot decide for certain, the computer can be said to be intelligent.
The computer is intelligent if it acts enough like a human to deceive the judge.
* Text
Acting Human – Historical AttemptsELIZA
programmed in 1966 programmed to ask questions in dialog like a psychotherapist
and a patient Took word cues, noticed use of negatives Dialog was essentially pre-planned to appear intelligent, but was
not http://www.masswerk.at/elizabot/eliza.html http://nlp-addiction.com/chatbot/eliza/ http://www.stanford.edu/group/SHR/4-2/text/dialogues.html#note
10
ChatterbotELIZA was an early example of a chatterbotA chatterbot (or chatbot) is a type of
conversational agent designed to simulate an intelligent conversation with one or more human users via auditory or textual methods.
Chatterbots – Examples PARRY (1972)
simulated a paranoid schizophrenic. JABBERWACKY (1997)
one of the first internet chatterbots http://www.jabberwacky.com/
CLEVERBOT (1997) http://www.cleverbot.com/
ALICE (2001) Artificial Linguistic Internet Computer Entity inspired by ELIZA http://www.alicebot.org/
Loebner Prize a competition in the spirit of the Turing Test held annually since 1990 initiated by Hugh Loebner prizes include:
$100,000 + gold medal: the first computer whose responses were indistinguishable from a human's
must convince 30% of judges never been won
~$3000 (varies) + bronze medal: computer program that outperforms all other programs
Loebner Prize format
in each round, a judge holds a conversation with a human and machine
after the round is over, judge must decide which is which
5 minute rounds
Loebner Prizenotable achievements
ALICE was the Loebner winner 3 times (2001, 2002, 2004)
ELBOT (2008) convinced 3 of 12 judges that it was the human
Turing Test Turing Test remains historically significant, and has
driven some advances in field however, most AI research has not focused on
simulating human intelligence “Aeronautical engineering texts do not define the
goal of their field as making ‘machines that fly so exactly like pigeons that they can fool even other pigeons’” – Russel and Norvig
Problem Solving rather than create a universally intelligent machine
or program, AI research often focuses on a more specific task
examples: pattern recognition robotics (next lecture!) natural language processing path finding
Problem Solving the variety of problems to solve have produced a
variety of different AI techniques examples:
path finding – A* search, greedy search pattern recognition – neural networks searching – A*, genetic algorithms diagnosis – fuzzy logic, Bayesian networks, etc
Path Finding find a path from start to destination domain can be:
a map (GPS) a virtual world in a game a series of networked computers etc ...
domain consists of a set of points one of those points is your start one (or more) of those points can be a destination
each point is connected to zero or more other points
Path Finding the general objective is to find a path
between start and destination for example, find a path between Val Marie
and Kincaid
Path Finding there are many strategies for finding paths, but
most follow a similar theme begin at your starting point consider all positions that are reachable from that point then consider all positions that are reachable from those
points and so on, until you reach your destination, or run out of
options you must store your current path
different algorithms use different selection techniques for what to try “next”
Path FindingExample: DFS (Depth-first search)
begin at your starting point repeat while you have not reached your
destination, or you have no other options choose a new point that you have not yet visited that is
connected to you current point if such a point exists, traverse to it if not, then back up to your previous position
Example:
Val Marie
Cadillac
Ponteix
Mankota
Kincaid
Aneroid
Wood MountainChoose a new point that you have not yet visited that is connected to you current point: Cadillac
Example:
Val Marie
Cadillac
Ponteix
Mankota
Kincaid
Aneroid
Wood MountainChoose a new point that you have not yet visited that is connected to you current point: Ponteix
Example:
Val Marie
Cadillac
Ponteix
Mankota
Kincaid
Aneroid
Wood MountainChoose a new point that you have not yet visited that is connected to you current point: Mankota
Example:
Val Marie
Cadillac
Ponteix
Mankota
Kincaid
Aneroid
Wood MountainChoose a new point that you have not yet visited that is connected to you current point: Wood Mountain
Example:
Val Marie
Cadillac
Ponteix
Mankota
Kincaid
Aneroid
Wood MountainNo points connected to WM that we have not yet visited. Must back up to Mankota.
Example:
Val Marie
Cadillac
Ponteix
Mankota
Kincaid
Aneroid
Wood MountainChoose a new point that you have not yet visited that is connected to you current point: Kincaid
Example:
Val Marie
Cadillac
Ponteix
Mankota
Kincaid
Aneroid
Wood MountainWe now have a path between Val Marie and Kincaid.
Path FindingDFS (Depth-first search)
advantages: simple memory efficient (beyond scope of class)
disadvantages: not guaranteed to find shortest path first (smallest
number of hops)
Path FindingExample: BFS (Breadth-first search)
check all paths of length 1check all paths of length 2check all paths of length 3etc ...stop when a path is found whose end is the
destination
Example:
Val Marie
Cadillac
Ponteix
Mankota
Kincaid
Aneroid
Wood MountainCheck all paths of length 1
Example:
Val Marie
Cadillac
Ponteix
Mankota
Kincaid
Aneroid
Wood MountainCheck all paths of length 1
Example:
Val Marie
Cadillac
Ponteix
Mankota
Kincaid
Aneroid
Wood MountainCheck all paths of length 2
Example:
Val Marie
Cadillac
Ponteix
Mankota
Kincaid
Aneroid
Wood MountainCheck all paths of length 2
Example:
Val Marie
Cadillac
Ponteix
Mankota
Kincaid
Aneroid
Wood MountainCheck all paths of length 2 - since end of path matches destination, we have found a solution.
Path FindingBFS
advantages guaranteed to find shortest path can be easily modified to consider paths in order of
increasing length, rather than number of links (not shown here)
disadvantage: a bit trickier to program memory intensive
Path Finding - Problemsboth path finding algorithms guaranteed to
find a solution, if one existshowever, they can be slow
imagine a map with millions of possible pointsDFS may initially go in the wrong directionBFS will check many paths in the wrong
direction, if they are closer than solution
Example:
Val Marie
Cadillac
Ponteix
Mankota
Kincaid
Aneroid
Wood MountainSuppose this link is connected to a map with many nodes. What if DFS tries this link first?
Path Finding - AIsmart searching involves using a heuristic to
improve its search capabilitiessimply stated, a heuristic provides a guess
on which point it should try next the better the heuristic, the better the
efficiency of the overall algorithm
Path Finding - AI from previous example, suppose we knew
the geographic (straight-line) distance between towns
this could be computed from lat-lon coordinateswe could modify our DFS algorithm
when selecting a town amongst multiple choices, choose the one that is geographically closest to our destination
Example:
Val Marie
Cadillac
Ponteix
Mankota
Kincaid
Aneroid
Wood Mountain
Choose a new point that you have not yet visited that is connected to you current point. Since we have two choices, choose the one that is geographically closest to Kincaid.
Example:
Val Marie
Cadillac
Ponteix
Mankota
Kincaid
Aneroid
Wood Mountain
Choose a new point that you have not yet visited that is connected to you current point. Since we have thee choices, choose the one that is geographically closest to Kincaid.
Example:
Val Marie
Cadillac
Ponteix
Mankota
Kincaid
Aneroid
Wood Mountain
We have found a solution. Compare the number of points searched to our previous DFS solution.
Path Finding - AIour heuristic considerably reduced the
number of points that we searchedhowever, this approach is not guaranteed to
work.
Example:
Val Marie
Cadillac
Ponteix
Mankota
Kincaid
Aneroid
Wood Mountain
DFS + heuristic search will try Mankota first, since it is geographically closer to Kincaid than Cadillac is.