CMSC 471 Fall 2009 Professor Marie desJardins, ITE 337, TA: Denise Rockwell,

Slides:



Advertisements
Similar presentations
The Development of AI St Kentigerns Academy Unit 3 – Artificial Intelligence.
Advertisements

CS 63 LISP Philip Greenspun's Tenth* Rule of Programming:
CMSC 671 Fall 2005 Professor Marie desJardins, ITE 337, x53967
Introduction to AI CS470 – Fall Outline What is AI? A Brief History State of the art Course Outline Administrivia.
Artificial Intelligence
CS480/580 Introduction to Artificial Intelligence Shuiwang Ji.
Introduction to Artificial Intelligence CSE 473 Winter 1999.
CMSC 471 LISP. Why Lisp? Because it’s the most widely used AI programming language Because it’s good for writing production software (Graham article)
CS 63 Artificial Intelligence Dr. Eric Eaton
CSE 471/598,CBS598 Introduction to Artificial Intelligence Fall 2004
Introduction to Artificial Intelligence Prof. Kathleen McKeown 722 CEPSR, TAs: Kapil Thadani 724 CEPSR, Phong Pham TA Room.
Random Administrivia In CMC 306 on Monday for LISP lab.
Artificial Intelligence Instructor: Professor Yun Peng
CMSC 471 Artificial Intelligence Eric Eaton, ITE 220/339 TA: Aaron Curtis,
Introduction to AI, H. Feili 1 Introduction to Artificial Intelligence LECTURE 1: Introduction What is AI? Foundations of AI The.
CSC 463 Introduction Professor Adam Anthony Adapted From material provided by Marie desJardins.
Natural Language Introduction Adapted from Tim Finin, UMBC, Marie desJardins.
CMSC 471 Spring 2014 Class #1 Tue 1/28/14 Course Overview / Lisp Introduction Professor Marie desJardins, ITE 337,
CSCI 4410 Introduction to Artificial Intelligence.
CISC4/681 Introduction to Artificial Intelligence1 Introduction – Artificial Intelligence a Modern Approach Russell and Norvig: 1.
Artificial Intelligence Introduction (2). What is Artificial Intelligence ?  making computers that think?  the automation of activities we associate.
+ Artificial Intelligence: Fact or Fiction? Artificial Intelligence: Fact or Fiction? CMSC 101 / IS 101Y Dr. Marie desJardins December 3, 2013.
Tim Finin, CMSC 671 Fall 2009 Tim Finin,
Introduction GAM 376 Robin Burke Winter Outline Introductions Syllabus.
Artificial Intelligence: Prospects for the 21 st Century Henry Kautz Department of Computer Science University of Rochester.
Artificial Intelligence Introductory Lecture Jennifer J. Burg Department of Mathematics and Computer Science.
CMSC 671 Principles of Artificial Intelligence Course Overview Fall 2015.
CMSC 671 Fall 2001 Professor Marie desJardins, ECS 216, x3967 TA: Suryakant Sansare,
1 Artificial Intelligence Introduction. 2 What is AI? Various definitions: Building intelligent entities. Getting computers to do tasks which require.
Artificial Intelligence: Fact or Fiction? Professor Marie desJardins UMBC Family Weekend Saturday, October 23, 2004
CMSC 671 Introduction to Artificial Intelligence Course Overview Fall 2012.
CMSC 471 Fall 2011 Class #1 Thu 9/1/11 Course Overview / Lisp Introduction Professor Marie desJardins, ITE 337,
Artificial Intelligence Bodies of animals are nothing more than complex machines - Rene Descartes.
Artificial Intelligence By Michelle Witcofsky And Evan Flanagan.
Weak AI: Can Machines Act Intelligently? Some things they can do: –Computer vision: face recognition from a large set –Robotics: autonomous (mostly) car.
How Solvable Is Intelligence? A brief introduction to AI Dr. Richard Fox Department of Computer Science Northern Kentucky University.
Artificial Intelligence: The Cyber Art of Being Alive Jerry B. Weinberg Associate Professor Department of Computer Science.
1 CS 2710, ISSP 2610 Foundations of Artificial Intelligence introduction.
Artificial Intelligence and Nature. Professor Marie desJardins Honors Forum Monday, September 18, 2006 mostly...
CMSC 671 Fall 2012 Tim Finin, What is AI?
Introduction to Artificial Intelligence Mitch Marcus CIS391 Fall, 2008.
I Robot.
Artificial Intelligence: Human vs. Machine Professor Marie desJardins CMSC 100 November 5, 2009.
So what is AI?.
AI: Can Machines Think? Juntae Kim Department of Computer Engineering Dongguk University.
CSC 8520 Fall, Paula Matuszek 1 CS 8520: Artificial Intelligence Introduction Paula Matuszek Fall, 2005.
Definitions of AI There are as many definitions as there are practitioners. How would you define it? What is important for a system to be intelligent?
What is Artificial Intelligence? What is artificial intelligence? It is the science and engineering of making intelligent machines, especially intelligent.
CMSC 671 Fall 2015 Tim Finin, What is AI?
Course Overview  What is AI?  What are the Major Challenges?  What are the Main Techniques?  Where are we failing, and why?  Step back and look at.
CMSC 471/671 Fall 2006 Tim Finin,
Introduction to Artificial Intelligence CS 438 Spring 2008.
What is Artificial Intelligence?
Artificial Intelligence
Spring, 2005 CSE391 – Lecture 1 1 Introduction to Artificial Intelligence Martha Palmer CSE391 Spring, 2005.
Introduction: What is AI? CMSC Introduction to Artificial Intelligence January 3, 2002.
CMSC 671 Fall 2010 Wed 9/1/10 Course Overview Professor Marie desJardins, ITE 337, TA: Xianshu Zhu,
CMSC 100 Artificial Intelligence: Human vs. Machine Professor Marie desJardins Thursday, November 8, 2012 Thu 11/1/12 1 Artificial Intelligence.
Introduction: What is AI? CMSC Introduction to Artificial Intelligence January 7, 2003.
1 Artificial Intelligence & Prolog Programming CSL 302.
Introduction to Artificial Intelligence Prof. Kathleen McKeown 722 CEPSR Tas: Andrew Rosenberg Speech Lab, 7 th Floor CEPSR Sowmya Vishwanath TA Room.
Artificial Intelligence Class 1: Course Overview Dr Cynthia Matuszek (Dr M) – ITE 331 Slides adapted with thanks from: Dr. Marie desJardin.
Artificial intelligence (AI)
Done Done Course Overview What is AI? What are the Major Challenges?
A I (Artificial Intelligence)
CSCI 5582 Artificial Intelligence
Course Instructor: knza ch
Introduction Artificial Intelligent.
Artificial Intelligence introduction(2)
Presentation transcript:

CMSC 471 Fall 2009 Professor Marie desJardins, ITE 337, TA: Denise Rockwell,

Today’s class Course overview Introduction –Brief history of AI –What is AI? (and why is it so cool?) –What’s the state of AI now? Lisp – a first look

Course Overview

Course materials Course website: –Course description and policies (main page) –Course syllabus, schedule (subject to change!), and slides –Pointers to homeworks and papers (send me URLs for interesting / relevant websites, and I’ll add them to the page!) Course mailing list: –Send mail to –subscribe cs471 Your Name –Send general questions to the list –Requests for extensions, inquiries about status, requests for appointments should go directly to Prof. desJardins and/or the TA

Homework and grading policies Six homework assignments (mix of written and programming) Due every other Thursday (approximately) at the beginning of class One-time extensions of up to a week will generally be granted if requested in advance Last-minute requests for extensions will be denied Late policy: – to 24 hours late: 25% penalty –24 to 48 hours late: 50% penalty –48 to 72 hours late: 75% penalty –More than 72 hours late: no credit will be given All inquiries about homework grading (including requests for regrading or grade adjustments) should be brought to the TA first

Academic integrity Instructor’s responsibilities: –Be respectful –Be fair –Be available –Tell the students what they need to know and how they will be graded Students’ responsibilities: –Be respectful –Do not cheat, plagiarize, or lie, or help anyone else to do so –Do not interfere with other students’ academic activities Consequences include (but are not limited to) a reduced or failing grade on the assignment, or in the class

Staff availability Prof. desJardins –Official office hours: Tues. 10:00-11:00, Thurs. 3:30-4:30 (ITE 337) –Appointments may also be made by request (at least 24 hours notice is best) –Drop in whenever my door is open (see posted “semi-open door policy”) –Will try to respond to within 24 hours on weekdays –Direct general questions (i.e., those that other students may also be wondering about) to the class mailing list TA Denise Rockwell –Office hours Tues. 3:00-4:00, Wed. 1:00-2:00

What is AI??

AI: A Vision Could an intelligent agent living on your home computer manage your , coordinate your work and social activities, help plan your vacations…… even watch your house while you take those well planned vacations?

Represent and store knowledge Retrieve and reason about knowledge Behave intelligently in complex environments Develop interesting and useful applications Interact with people, agents, and the environment Main Goals of AI

Why AI? Engineering: To get machines to do a wider variety of useful things –e.g., understand spoken natural language, recognize individual people in visual scenes, find the best travel plan for your vacation, etc. Cognitive Science: As a way to understand how natural minds and mental phenomena work –e.g., visual perception, memory, learning, language, etc. Philosophy: As a way to explore some basic and interesting (and important) philosophical questions –e.g., the mind body problem, what is consciousness, etc.

Foundations of AI Computer Science & Engineering AI Mathematics Cognitive Science Philosophy PsychologyLinguistics Biology Economics

History 1997: Deep Blue beats Garry Kasparov (world champion) 1998: Founding of Google 2000: Interactive robot pets 2004: First DARPA Grand Challenge robot race 2004: Commercial recommender systems (TIVO, amazon.com) 2007: Checkers is solved!

Eliza ELIZA: A program that simulated a psychotherapist interacting with a patient and successfully passed the Turing Test. Coded at MIT during by Joel Weizenbaum. First script was DOCTOR. –The script was a simple collection of syntactic patterns not unlike regular expressions –Each pattern had an associated reply which might include bits of the input (after simple transformations (my  your) Weizenbaum was shocked at reactions: –Psychiatrists thought it had potential. –People unequivocally anthropomorphized. –Many thought it solved the NL problem.

Eliza I am the psychotherapist. Please, describe your problems. Each time you are finished talking, type RET twice. i'm having a hard time with my students Why do you say that? well, they keep asking me for money Maybe your plans have something to do with this. what plans? Is it because of your life that you say what plans? No, it's because I didn't know what you were talking about Is it because you didn't know what I was talking about that you came to me? no, it's because i wanted to see if you could pass the turing test Does it bother you that you wanted to see if I could really pass the turing test? ….. How do you reconcile problems at school? This is a waste of time. Good bye My secretary will send you a bill. I am the psychotherapist. Please, describe your problems. Each time you are finished talking, type RET twice. i'm having a hard time with my students Why do you say that? well, they keep asking me for money Maybe your plans have something to do with this. what plans? Is it because of your life that you say what plans? No, it's because I didn't know what you were talking about Is it because you didn't know what I was talking about that you came to me? no, it's because i wanted to see if you could pass the turing test Does it bother you that you wanted to see if I could really pass the turing test? ….. How do you reconcile problems at school? This is a waste of time. Good bye My secretary will send you a bill. This is a transcript of a conversation with an Eliza- like program found in Emacs Try typing Meta-x doctor in your favorite Emacs.

Colby’s PARRY Kenneth Colby modeled a paranoid using the same techniques circa PARRY has basic emotions. If it gets angry, its replies become more hostile. In a Turing test, expert psychiatrists were unable to distinguish PARRY’s ramblings from those of real paranoids. H: Good afternoon. My name is Doctor Jones. P: Pleased to meet you. H: How are you? P: All right I guess. H: Could you tell me your name? P: Pat Smith. H: I though you might have some problems. P: I've been upset lately. H: By what? P: People get on my nerves sometimes. H: Tell me more. P: Do you know anything about bookies?... H: Good afternoon. My name is Doctor Jones. P: Pleased to meet you. H: How are you? P: All right I guess. H: Could you tell me your name? P: Pat Smith. H: I though you might have some problems. P: I've been upset lately. H: By what? P: People get on my nerves sometimes. H: Tell me more. P: Do you know anything about bookies?...

Parry meets Eliza P: I don't understand your motives. E: Why don't you understand my motives? P: Shouldn't I be? E: Why do you say that just now? P: That's just the way it is. E: Suppose that's the way it were not. P: So? E: I am not sure I understand you fully. P: You harp on the same questions too much. E: What does that similarity suggest to you? P: I don't get you. E: Do you wish that you did get I? P: I don't understand your motives. E: Why don't you understand my motives? P: Shouldn't I be? E: Why do you say that just now? P: That's just the way it is. E: Suppose that's the way it were not. P: So? E: I am not sure I understand you fully. P: You harp on the same questions too much. E: What does that similarity suggest to you? P: I don't get you. E: Do you wish that you did get I?

Big questions Can machines think? If so, how? If not, why not? What does this say about human beings? What does this say about the mind?

What’s easy and what’s hard? It’s been easier to mechanize many of the high-level tasks we usually associate with “intelligence” in people –e.g., symbolic integration, proving theorems, playing chess, medical diagnosis It’s been very hard to mechanize tasks that lots of animals can do –walking around without running into things –catching prey and avoiding predators –interpreting complex sensory information (e.g., visual, aural, …) –modeling the internal states of other animals from their behavior –working as a team (e.g., with pack animals) Is there a fundamental difference between the two categories?

Turing Test Three rooms contain a person, a computer, and an interrogator. The interrogator can communicate with the other two by teleprinter. The interrogator tries to determine which is the person and which is the machine. The machine tries to fool the interrogator into believing that it is the person. If the machine succeeds, then we conclude that the machine can think.

The Loebner contest A modern version of the Turing Test, held annually, with a $100,000 cash prize. Hugh Loebner was once director of UMBC’s Academic Computing Services (née UCS) Restricted topic (removed in 1995) and limited time. Participants include a set of humans and a set of computers and a set of judges. Scoring –Rank from least human to most human. –Highest median rank wins $2000. –If better than a human, win $100,000. (Nobody yet…)

What can AI systems do? Here are some example applications Computer vision: face recognition from a large set Robotics: autonomous (mostly) automobile Natural language processing: simple machine translation Expert systems: medical diagnosis in a narrow domain Spoken language systems: ~1000 word continuous speech Planning and scheduling: Hubble Telescope experiments Learning: text categorization into ~1000 topics User modeling: Bayesian reasoning in Windows help (the infamous paper clip…) Games: Grand Master level in chess (world champion), perfect play in checkers, professional-level Go players

What can’t AI systems do yet? Understand natural language robustly (e.g., read and understand articles in a newspaper) Surf the web Interpret an arbitrary visual scene Learn a natural language Play Go as well as the best human players Construct plans in dynamic real-time domains Refocus attention in complex environments Perform life-long learning

Who does AI? Academic researchers (perhaps the most Ph.D.-generating area of computer science in recent years) –Some of the top AI schools: CMU, Stanford, Berkeley, MIT, UIUC, UMd, U Alberta, UT Austin,... (and, of course, UMBC!) Government and private research labs –NASA, NRL, NIST, IBM, AT&T, SRI, ISI, MERL,... Lots of companies! –Google, Microsoft, Honeywell, Teknowledge, SAIC, MITRE, Fujitsu, Global InfoTek, BodyMedia,...

What do AI people (and the applications they build) do? Represent knowledge Reason about knowledge Behave intelligently in complex environments Develop interesting and useful applications Interact with people, agents, and the environment

Representation Causality Constraints Description Logics Knowledge Representation Ontologies and Foundations

Reasoning Automated Reasoning Belief Revision and Update Diagnosis Nonmonotonic Reasoning Probabilistic Inference Qualitative Reasoning Reasoning about Actions and Change Resource-Bounded Reasoning Satisfiability Spatial Reasoning Temporal Reasoning

Behavior Case-Based Reasoning Cognitive Modeling Decision Theory Learning Planning Probabilistic Planning Scheduling Search

Evolutionary optimization MERL: evolving ‘bots

Interaction Cognitive Robotics Multiagent Systems Natural Language Perception Robotics User Modeling Vision

Robotics SRI: Shakey / planning..\movies\sri-Shakey.ram..\movies\sri-Shakey.ram SRI: Flakey / planning & control..\movies\sri-Flakey.ram..\movies\sri-Flakey.ram UMass: Thing / learning & control..\movies\umass_thing_irreg.mpeg..\movies\umass_thing_quest.mpeg..\movies\umass-can-roll.mpeg..\movies\umass_thing_irreg.mpeg..\movies\umass_thing_quest.mpeg..\movies\umass-can-roll.mpeg MIT: Cog / reactive behavior..\movies\mit-cog-saw-30.mov..\movies\mit-cog-drum-close-15.mov..\movies\mit-cog-saw-30.mov..\movies\mit-cog-drum-close-15.mov MIT: Kismet / affect & interaction..\movies\mit-kismet.mov..\movies\mit-kismet-expressions-dl.mov..\movies\mit-kismet.mov..\movies\mit-kismet-expressions-dl.mov CMU: RoboCup Soccer / teamwork & coordination..\movies\cmu_vs_gatech.mpeg..\movies\cmu_vs_gatech.mpeg

Applications AI and Data Integration AI and the Internet Art and Creativity Information Extraction A sample from IAAI-03: –Scheduling train crews –Automated student essay evaluation –Packet scheduling in network routers –Broadcast news understanding –Vehicle diagnosis –Robot photography –Relational pattern matching

AI & art: NEvAr See

Protein folding MERL: constraint-based approach

Interaction: Sketching MIT sketch tablet

Other topics/paradigms Intelligent tutoring systems Agent architectures Mixed-initiative systems Embedded systems / mobile autonomous agents Machine translation Statistical natural language processing Object-oriented software engineering / software reuse

Possible approaches Think Act Like humans Well GPS Eliza Rational agents Heuristic systems AI tends to work mostly in this area

Think well Develop formal models of knowledge representation, reasoning, learning, memory, and problem solving, that can be rendered in algorithms. There is often an emphasis on systems that are provably correct, and guarantee finding an optimal solution. Think Act Like humans Well GPS Eliza Rational agents Heuristic systems

Act well For a given set of inputs, generate an appropriate output that is not necessarily correct but gets the job done. A heuristic (heuristic rule, heuristic method) is a rule of thumb, strategy, trick, simplification, or any other kind of device which drastically limits search for solutions in large problem spaces. Heuristics do not guarantee optimal solutions; in fact, they do not guarantee any solution at all: all that can be said for a useful heuristic is that it offers solutions which are good enough most of the time. – Feigenbaum and Feldman, 1963, p. 6 Think Act Like humans Well GPS Eliza Rational agents Heuristic systems

Think like humans Cognitive science approach Focus not just on behavior and I/O but also look at reasoning process. Computational model should reflect “how” results were obtained. Provide a new language for expressing cognitive theories and new mechanisms for evaluating them GPS (General Problem Solver): Goal not just to produce humanlike behavior (like ELIZA), but to produce a sequence of steps of the reasoning process that was similar to the steps followed by a person in solving the same task. Think Act Like humans Well GPS Eliza Rational agents Heuristic systems

Act like humans Behaviorist approach. Not interested in how you get results, just the similarity to what human results are. Exemplified by the Turing Test (Alan Turing, 1950). Think Act Like humans Well GPS Eliza Rational agents Heuristic systems

LISP

Why Lisp? Because it’s historically the most widely used AI programming language Because Prof. desJardins likes using it Because it’s good for writing production software (Graham article) Because it’s a functional programming language, and has lots of features that other languages don’t Because you can write new programs and extend old programs really, really quickly in Lisp

Why all those parentheses? Surprisingly readable if you indent properly (use built-in Lisp editor in emacs!) Makes prefix notation manageable An expression is an expression is an expression, whether it’s inside another one or not (+ 1 2) (* (+ 1 2) 3) (list (* 3 5) ‘atom ‘(list inside a list) (list 3 4) ‘(((very) (very) (very) (nested list))))

Basic Lisp types Numbers (integers, floating-point, complex) Characters, strings (arrays of chars) Symbols, which have property lists Lists (linked cells) –Empty list: nil –cons structure has car (first) and cdr (rest) Arrays (with zero or more dimensions) Hash tables Streams (for reading and writing) Structures Functions, including lambda functions

Basic Lisp functions Numeric functions: + - * / incf decf List access: car ( first ), second … tenth, nth, cdr ( rest ), last, length List construction: cons, append, list Advanced list processing: assoc, mapcar, mapcan Predicates: listp, numberp, stringp, atom, null, equal, eql, and, or, not Special forms: setq/setf, quote, defun, if, cond, case, progn, loop

Useful help facilities (apropos ‘str)  list of symbols whose name contains ‘str (describe ‘symbol)  description of symbol (describe #’fn)  description of function (trace fn)  print a trace of fn as it runs (print “string”)  print output (format …)  formatted output (see Norvig p. 84) :a  abort one level out of debugger

Great! How can I get started? On sunserver (CS) and gl machines, run /usr/local/bin/clisp From you can download CLISP for your own PC (Windows or UNIX (including Macs, but you have to first install X11 and MacPorts)) Great Lisp resource page:

Example Lisp Program Write a function that reverses its argument (which should be a list of objects (numbers, symbols, whatever)), and prints the result, without using the built-in “reverse” function.