History of Artificial Intelligence. Introduction to Intelligent Systems



Similar documents
Artificial Intelligence

Acting humanly: The Turing test. Artificial Intelligence. Thinking humanly: Cognitive Science. Outline. What is AI?

CSC384 Intro to Artificial Intelligence

Complexity Classes P and NP

Lecture 7: NP-Complete Problems

COMP 590: Artificial Intelligence

What is Artificial Intelligence?

Learning is a very general term denoting the way in which agents:

Doctor of Philosophy in Computer Science

CS440/ECE448: Artificial Intelligence. Course website:

Computer Algorithms. NP-Complete Problems. CISC 4080 Yanjun Li

COMP-424: Artificial intelligence. Lecture 1: Introduction to AI!

NP-complete? NP-hard? Some Foundations of Complexity. Prof. Sven Hartmann Clausthal University of Technology Department of Informatics

CSE 517A MACHINE LEARNING INTRODUCTION

Cognitive Science. Summer 2013

CHAPTER 15: IS ARTIFICIAL INTELLIGENCE REAL?

CS MidTerm Exam 4/1/2004 Name: KEY. Page Max Score Total 139

EXECUTIVE SUPPORT SYSTEMS (ESS) STRATEGIC INFORMATION SYSTEM DESIGNED FOR UNSTRUCTURED DECISION MAKING THROUGH ADVANCED GRAPHICS AND COMMUNICATIONS *

A Working Knowledge of Computational Complexity for an Optimizer

Course Outline Department of Computing Science Faculty of Science. COMP Applied Artificial Intelligence (3,1,0) Fall 2015

Page 1. CSCE 310J Data Structures & Algorithms. CSCE 310J Data Structures & Algorithms. P, NP, and NP-Complete. Polynomial-Time Algorithms

Appendices master s degree programme Artificial Intelligence

Outline. NP-completeness. When is a problem easy? When is a problem hard? Today. Euler Circuits

Introduction to Artificial Intelligence

School of Computer Science

Regular Languages and Finite Automata

Master of Science in Computer Science

LONG BEACH CITY COLLEGE MEMORANDUM

Introduction Solvability Rules Computer Solution Implementation. Connect Four. March 9, Connect Four

1. Nondeterministically guess a solution (called a certificate) 2. Check whether the solution solves the problem (called verification)

Introduction to Logic in Computer Science: Autumn 2006

OHJ-2306 Introduction to Theoretical Computer Science, Fall

Professional Organization Checklist for the Computer Science Curriculum Updates. Association of Computing Machinery Computing Curricula 2008

Computers and the Creative Process

Predicate logic Proofs Artificial intelligence. Predicate logic. SET07106 Mathematics for Software Engineering

How To Write A Computer Science Book

Artificial Intelligence 2014

Fall 2012 Q530. Programming for Cognitive Science

Ant Colony Optimization and Constraint Programming

P vs NP problem in the field anthropology

Tetris is Hard: An Introduction to P vs NP

Complexity Theory. IE 661: Scheduling Theory Fall 2003 Satyaki Ghosh Dastidar

CS Master Level Courses and Areas COURSE DESCRIPTIONS. CSCI 521 Real-Time Systems. CSCI 522 High Performance Computing

FUNDAMENTALS OF ARTIFICIAL INTELLIGENCE KNOWLEDGE REPRESENTATION AND NETWORKED SCHEMES

8. KNOWLEDGE BASED SYSTEMS IN MANUFACTURING SIMULATION

MATHEMATICS: CONCEPTS, AND FOUNDATIONS Vol. III - Logic and Computer Science - Phokion G. Kolaitis

Cognitive Development

John McCarthy Father of Artificial Intelligence

Guessing Game: NP-Complete?

Levels of Analysis and ACT-R

How To Get A Computer Engineering Degree

CAD Algorithms. P and NP

A Client-Server Interactive Tool for Integrated Artificial Intelligence Curriculum

Master of Science in Artificial Intelligence

P versus NP, and More

NP-Completeness. CptS 223 Advanced Data Structures. Larry Holder School of Electrical Engineering and Computer Science Washington State University

School of Computer Science

Offline 1-Minesweeper is NP-complete

About the Author. The Role of Artificial Intelligence in Software Engineering. Brief History of AI. Introduction 2/27/2013

Graph Theory Problems and Solutions

The Turing Test! and What Computer Science Offers to Cognitive Science "

Study Plan for the Master Degree In Industrial Engineering / Management. (Thesis Track)

Programming Languages

Extending Semantic Resolution via Automated Model Building: applications

Tutorial 8. NP-Complete Problems

New trend in Russian informatics curricula: integration of math and informatics

Masters in Human Computer Interaction

Masters in Advanced Computer Science

CPSC 211 Data Structures & Implementations (c) Texas A&M University [ 313]

Masters in Artificial Intelligence

Computational Scientific Discovery and Cognitive Science Theories

I N T E L L I G E N T S O L U T I O N S, I N C. DATA MINING IMPLEMENTING THE PARADIGM SHIFT IN ANALYSIS & MODELING OF THE OILFIELD

Computation Beyond Turing Machines

Chapter. NP-Completeness. Contents

Software & systems for the neuromorphic generation of computing. Peter Suma co-ceo peter.suma@appliedbrainresearch.

Draft dpt for MEng Electronics and Computer Science

Cloud Computing is NP-Complete

Why? A central concept in Computer Science. Algorithms are ubiquitous.

The Taxman Game. Robert K. Moniot September 5, 2003

Artificial Intelligence An Introduction 1

COMPUTER SCIENCE, BACHELOR OF SCIENCE (B.S.)

School of Computer Science

CSE841 Artificial Intelligence

Watson. An analytical computing system that specializes in natural human language and provides specific answers to complex questions at rapid speeds

(Academy of Economic Studies) Veronica Adriana Popescu (Academy of Economic Studies) Cristina Raluca Popescu (University of Bucharest)

CpSc810 Goddard Notes Chapter 7. Expert Systems

Masters in Information Technology

The Classes P and NP

Lecture 1: Introduction

COGNITIVE SCIENCE 222

Introduction to computer science

Introduction to Machine Learning and Data Mining. Prof. Dr. Igor Trajkovski

Artificial Intelligence

Masters in Computing and Information Technology

Masters in Networks and Distributed Systems

Transcription:

History of Artificial Intelligence Introduction to Intelligent Systems

What is An Intelligent System? A more difficult question is: What is intelligence? This question has puzzled philosophers, biologists and psychologists for centuries An intelligent system is easier to define, although there is no standard, accepted definition Historically, intelligent systems was originally called artificial intelligence

What is Artificial Intelligence? A simple definition might be as follows: Artificial intelligence is the study of systems that act in a way that to any observer would appear to be intelligent.

What is Artificial Intelligence? Another definition of artificial intelligence is as follows: Artificial intelligence involves using methods based on the intelligent behavior of humans and other animals to solve complex problems.

Theoretical Foundations of AI Philosophy Logic, methods of reasoning, mind as physical system foundations of learning, language, rationality Mathematics Formal representation and proof algorithms, computation, (un)decidability, (in)tractability, probability Economics Utility, decision theory, game theory Neuroscience Physical substrate for mental activity Psychology Phenomena of perception and motor control, experimental techniques Computer Engineering Building fast computers Control theory Design systems that maximize an objective function over time Linguistics Knowledge representation, grammar

Important Features of AI 1. The use of computers to do reasoning, pattern recognition, learning, or some other form of inference. 2. A focus on problems that do not respond to algorithmic solutions. 3. A concern with problem-solving using inexact, missing, or poorly defined information. 4. Reasoning about the significant qualitative features of a situation. 5. An attempt to deal with issues of semantic meaning as well as syntactic form.

Important Features of AI 6. Answers that are neither exact nor optimal, but are in some sense sufficient. 7. The use of large amounts of domain-specific knowledge in solving problems. 8. The use of meta-level knowledge to effect more sophisticated control of problem-solving strategies.

Intractability and AI Some well-known NP-complete problems: Longest Path Hamiltonian Cycle 3-CNF Circuit-Sat Formula-Sat Clique Vertex Cover Traveling Salesman Subset Sum Graph Coloring Crossword Puzzles Longest Common Subsequence (LCS) for more than 2 strings

Intractability and AI More well-known NP-complete problems: 0-1 Knapsack Exam Scheduling and CPU Register Assignment (Graph Coloring) 3D matching Chess Minesweeper ($1,000,000 Grand Challenge to solve it in p- time!) Tetris Rubic s Cube Lloyd Puzzle (8-slide puzzle) Cracker Barrel puzzle

Intractability and AI Coping with NP-completeness: 1. Brute force - you will need additional resources (parallel machines) and probably will still not be able to solve 2. Efficient non-deterministic machines (quantum computers?) 3. Small inputs 4. Special cases 5. Restrict the problem (parameterize the complexity) For example, in chess there are 448 possible moves for each play. Therefore, for n plays, there are 448 n possible moves. If you create a game tree with each branch labeled with a possible move, you could win the game by looking ahead and following the branches that lead to the winning game configuration. This would require a tree with 448 n branches. Too big. Prune the tree by using a heuristic to cut off unpromising branches, or look ahead a few branches at a time.

Intractability and AI 6. Use a heuristic (a rule-of-thumb, usually arising from trial-and-error or experimentation). Neural networks, genetic algorithms, fuzzy logic, simulated annealing, tabu search, hill climbing (problem of local optimum, may not be globally optimal). For example, to navigate through a maze, you could use a heuristic such as the right-hand-rule (place your right hand on the wall and always follow the wall that your hand is touching - does not always work). Or you could drop pebbles at intersections to mark corridors that have already been investigated. This will always work, but you may need LOTS of pebbles 7. Randomization (Monte-Carlo techniques). Throw a die. Trade memory for randomness (random walk). 8. Use an approximation algorithm. You will have to settle for a near-optimal solution.

AI in the 20 th Century 1943 McCulloch & Pitts: Boolean circuit model of brain 1950 Turing's "Computing Machinery and Intelligence" 1955 Dartmouth meeting: the name "Artificial Intelligence" adopted 1950s Early AI programs, including Samuel's checkers program, Newell & Simon's Logic Theorist, Gelernter's Geometry Engine 1965 Robinson's complete algorithm for logical reasoning 1966-73 AI discovers computational complexity Neural network research almost disappears 1969-79 Early development of knowledge-based systems, Blocks World 1980 AI becomes an industry 1986 Neural networks return to popularity 1987 AI becomes a science 1995 The emergence of intelligent agents

Proposal for Dartmouth Summer Research Project on AI, 1955 We propose that a 2 month, 10 man study of artificial intelligence be carried out during the summer of 1956 at Dartmouth College in Hanover, New Hampshire. The study is to proceed on the basis of the conjecture that every aspect of learning or any other feature of intelligence can in principle be so precisely described that a machine can be made to simulate it. An attempt will be made to find how to make machines use language, form abstractions and concepts, solve kinds of problems now reserved for humans, and improve themselves. We think that a significant advance can be made in one or more of these problems if a carefully selected group of scientists work on it together for a summer. J. McCarthy, Dartmouth College M. L. Minsky, Harvard University N. Rochester, I.B.M. Corporation C. E. Shannon, Bell Telephone Laboratories August 31, 1955

Blocks World a c b A collection of logical clauses Describes the important properties and relationships in a Blocks World: cube(a) cube(b) pyramid(c) ontable(a) ontable(b) on(c,b) Suppose you want to define a test to determine whether all blocks are clear (have nothing stacked on top): X Y on (Y, X) clear(x). This is read as: For all X, if there does not exist a Y such that Y is on X, then X is clear. This is known as predicate calculus.

Semantic Networks Predicate calculus can also be used to define semantic networks. For example, a simple description of a bluebird might be a bluebird is a small blue-colored bird, and a bird is a feathered flying vertebrate. This knowledge can be represented with the following set of logical predicates (rules): hassize(bluebird, small). hascovering(bird, feathers). hascolor(bluebird, blue). hasproperty(bird, flies). isa(bluebird, bird). isa(bird, vertebrate). feathers hascovering vertebrate isa bird isa hasproperty flies small hassize bluebird hascolor blue Does a bluebird have feathers?

AI in the 21 st Century AI is everywhere Fuzzy logic is used in elevators, washing machines and cars Intelligent agents are used in many software applications Robots explore other worlds, and toy robots play with children (and some adults) Expert systems diagnose diseases and recommend remedies Computer games use AI

Applications of AI Game Playing Automated Reasoning and Theorem Proving Expert Systems Natural Language Understanding and Semantic Modelling Modelling Human Performance Planning and Robotics Languages and Environments for AI Machine Learning Alternative Representations: Neural Nets and Genetic Algorithms Computer vision and Image Understanding

AI Programming Languages Java C++ PROLOG LISP

PROLOG PROLOG (PROgramming in LOGic): A language designed to build databases of facts and rules, and then to have the system answer questions by a process of logical deduction using the facts and rules in the database Facts: contains (milk, lactose). made_from (cheese, milk). Rules: contains (X, Y) :- made_from (X, Z), contains (Z,Y). From this we can deduce that cheese contains lactose Prolog is not an efficient language like C++, but it is the language of choice when building systems based on logic

Strong AI and Weak AI There are two entirely different schools of AI: Strong AI: This is the view that a sufficiently programmed computer would actually be intelligent and conscious, and would think in the same way that a human does Strong AI is currently the stuff of science fiction, although there are many that believe that machines will indeed be capable of real thought at some point in the future Weak AI: This is the use of methods modeled on intelligent behavior to make computers more efficient at solving problems This course is concerned with Weak AI

Strong AI and the Turing Test

Chinese Room Counter-Argument John Searle 1980 The Chinese Room counter-argument Image from http://10est.com/11/the-chinese-room

HAL Fantasy or Reality? HAL the computer in the film 2001: A Space Odyssey Plays chess with humans (and wins) Reads people s lips Engages in conversation with humans Eventually goes insane Computers can play chess, and beat some players Reading lips is very hard to automate. The conversational skills of the best systems today are very weak

Strong Methods and Weak Methods Not to be confused with Strong AI and Weak AI Strong methods use knowledge about the world to solve problems Weak methods use logic and other symbolic systems Strong method systems rely on weak methods, as knowledge is useless without a way to handle that knowledge Weak methods are in no way inferior to strong methods they simply do not employ world knowledge

Strong Methods Use Context Count all the chairs

Strong Methods Use Context Which one is a car?

Strong Methods Use Context Are these letters A or H?

Strong Methods Use Context Are these letters A or H?

Strong Methods Use Context Hwo nmya wrdso cna oyu erad ni ihts entsnece?