CS 151: Introduction to Artificial Intelligence Professor Sara Owsley Sood
Course Goals Apply basic Artificial Intelligence techniques… …to solve real-world (current day) Artificial Intelligence problems, and in the process… …appreciate how HARD Artificial Intelligence really is (and why) Apply basic Artificial Intelligence techniques… …to solve real-world (current day) Artificial Intelligence problems, and in the process… …appreciate how HARD Artificial Intelligence really is (and why)
AI is a HUGE field Definition of AI? My Definition “ Building programs that enable computers to do what humans can do. ” Ex: read, walk around, play games, solve problems, learn, have conversations. Definition of AI? My Definition “ Building programs that enable computers to do what humans can do. ” Ex: read, walk around, play games, solve problems, learn, have conversations.
Misconceptions Misconceptions first AI in movies or TV? These set expectations high We can ’ t do all these things Misconceptions first AI in movies or TV? These set expectations high We can ’ t do all these things
What are the goals of AI? How do we measure success? Think like a human Cognitive Modeling Think rationally Logic Act like a human Turing Test Act rationally Rational Agents
Natural Language Understanding Speech recognition Natural language processing Generation Natural language generation Speech & gesture generation LOQUENDO KATE DEMO Understanding Speech recognition Natural language processing Generation Natural language generation Speech & gesture generation LOQUENDO KATE DEMO
Knowledge Representation: Common Sense What would happen if I dropped my computer on the ground (and how do you think I would react?) How do you get common sense into a computer? Opencyc.org and OMCS (OpenMindCommonSense) How many facts? What would happen if I dropped my computer on the ground (and how do you think I would react?) How do you get common sense into a computer? Opencyc.org and OMCS (OpenMindCommonSense) How many facts?
Automated Reasoning Game playing Planning Route Finding
What does it mean for the computer to learn? Supervised Unsupervised What does it mean for the computer to learn? Supervised Unsupervised Learning “circle”“square”“circle”“square” … “group these into two categories”
Perception Visual Image Understanding Task: find the table
Robotics Do you have to be smart to walk? MIT Leg Lab: D. Paluska et al. Sony QRIO
Emotions Kismet, C. Breazeal, MIT (image courtesy of P. Menzel)
Strong AI versus Weak AI
Timeline of AI history
Course Logistics - syllabus
Introduction to Python >>> x = 5 #no variable types or declarations >>> y = 10 #python has implicit typing >>> x + y #meaning that the type is implied by whatever #you do to the variable 15 >>> x = 'hi there' >>> x + y Traceback (most recent call last): File " ", line 1, in TypeError: cannot concatenate 'str' and 'int' objects >>> x + str(y) 'hi there10' >>> x[0] ##treat a string as a list 'h' >>> x[0:4] ##substring of a string is a sublist - slices 'hi t' >>> myL = [2]*5 ##can do powerful things >>> myL ##what do you think this will do? [2, 2, 2, 2, 2] >>> myL[2] = 0
Some Python!
provide all of the methods and data members available to an object No memorizing! Just use dir & help… help(listSearch) dir(“foo”) help(“foo”.split) dir(str) help(str.split) dir(42) dir([]) dir and help !