Fluency with Information Technology

Slides:



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

Chapter 22 Limits to Computation. Copyright © 2013 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Learning Objectives Explain what the Turing.
Learning Objectives Explain what the Turing test was designed to show
Copyright © 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Limits to Computation Computers Can Do Almost {Everything, Nothing} lawrence.
Artificial Intelligence
Learning Objectives Explain similarities and differences among algorithms, programs, and heuristic solutions List the five essential properties of an algorithm.
Artificial Intelligence Austin Luczak, Katie Regin, John Trawinski.
1 Lecture 33 Introduction to Artificial Intelligence (AI) Overview  Lecture Objectives.  Introduction to AI.  The Turing Test for Intelligence.  Main.
Chapter 23 Computers Can Do Almost {Everything Nothing}: Limits to Computation.
MAE 552 – Heuristic Optimization Lecture 28 April 5, 2002 Topic:Chess Programs Utilizing Tree Searches.
Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Fluency with Information Technology Third Edition by Lawrence Snyder Chapter.
Chapter 4 Assessing and Understanding Performance
Intelligence & Artificial Intelligence You must have a pre-prepared sentence or two to spout about what is a description of intelligence.. And what is.
Chapter 22 Limits to Computation. Learning Objectives Explain what the Turing test was designed to show Discuss the issue of a computer being intelligent.
Chapter 10. Global Village “… is the shrinking of the world society because of the ability to communicate.” Positive: The best from diverse cultures will.
Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Introduction to Computers CS Zhizhang Shen Chapter 11: What Can Computers.
Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Fluency with Information Technology Third Edition by Lawrence Snyder Chapter.
Unsolvability and Infeasibility. Computability (Solvable) A problem is computable if it is possible to write a computer program to solve it. Can all problems.
Introduction to Machine Learning Kamal Aboul-Hosn Cornell University Chess, Chinese Rooms, and Learning.
I Robot.
Grades: 6-8 Subject: Artificial Intelligence An Introduction to the Turing Test.
Section 2.3 I, Robot Mind as Software McGraw-Hill © 2013 McGraw-Hill Companies. All Rights Reserved.
Erdal Kose CC30.10 These slides are based of Prof. N. Yanofsky Lecture notes.
Georgia Institute of Technology Speed part 6 Barb Ericson Georgia Institute of Technology May 2006.
CS 127 Introduction to Computer Science. What is a computer?  “A machine that stores and manipulates information under the control of a changeable program”
Lecture # 39 What Can’t Be Computed?. Computability Tractable problems (P): Can be solved by a a computer is some deterministic (reasonable) polynomial.
SNU OOPSLA Lab. 1 Great Ideas of CS with Java Part 1 WWW & Computer programming in the language Java Ch 1: The World Wide Web Ch 2: Watch out: Here comes.
Chapter 10 Algorithmic Thinking. Learning Objectives Explain similarities and differences among algorithms, programs, and heuristic solutions List the.
September 10 Performance Read 3.1 through 3.4 for Wednesday Only 3 classes before 1 st Exam!
Chapter VI What should I know about the sizes and speeds of computers?
Understanding AI of 2 Player Games. Motivation Not much experience in AI (first AI project) and no specific interests/passion that I wanted to explore.
Artificial Intelligence Skepticism by Josh Pippin.
Overview of Artificial Intelligence (1) Artificial intelligence (AI) Computers with the ability to mimic or duplicate the functions of the human brain.
Game Playing Why do AI researchers study game playing?
PS/IS 276 Grade 3 Parent Math Workshop
WHAT IS INTELLIGENCE? Unit 1| Days
Component 1.6.
Week 5 - Friday CS 113.
Properties of Operations
Othello Artificial Intelligence With Machine Learning
Introduction to Machine Translation
CS Fall 2016 (Shavlik©), Lecture 11, Week 6
CSC 110 – Fluency in Information Technology Chess
AP CSP: Bytes, File Sizes, and Text Compression
Introduction CSE 1310 – Introduction to Computers and Programming
CS 4700: Foundations of Artificial Intelligence
Othello Artificial Intelligence With Machine Learning
Adversarial Search Chapter 5.
Artificial Intelligence
Artificial Intelligence Includes:
UNIT 3 CHAPTER 1 LESSON 4 Using Simple Commands.
Algorithm Discovery and Design
Artificial Intelligence (is no match for natural stupidity :)
Artificial Intelligence (is no match for natural stupidity :)
4. Computational Problem Solving
Programming.
Tonga Institute of Higher Education IT 141: Information Systems
Introduction to Machine Translation
Redeem some dignity My fumble from previous lecture …
CompSci 1: Principles of Computer Science Lecture 1 Course Overview
Breakfast Bytes Easy, Hard, and Impossible
Tonga Institute of Higher Education IT 141: Information Systems
Tonga Institute of Higher Education IT 141: Information Systems
Mini-Max search Alpha-Beta pruning General concerns on games
Fluency with Information Technology Third Edition
Artificial Intelligence
These neural networks take a description of the Go board as an input and process it through 12 different network layers containing millions of neuron-like.
Introduction to Artificial Intelligence
CS51A David Kauchak Spring 2019
Unit II Game Playing.
Presentation transcript:

Fluency with Information Technology 7th Edition Chapter 22 Limits to Computation

Learning Objectives 1.1 Explain what the Turing test was designed to show 1.2 Discuss the issue of a computer being intelligent and able to think; refer to Deep Blue, AlphaGo, and Watson 1.3 Discuss the issue of computer creativity; refer to computer generated music and art 1.4 State the meaning of the Universality Principle 1.5 Describe the way in which the amount of work in a program is related to the speed of the program

Can Computers Think? What is thinking? Is it what people do? Alan M. Turing tried to answer this question One of the pioneers of computing Decided to forget defining thinking Proposed a thinking test for the computer in 1950

1.1 The Turing Test The Turing Test Two identical rooms (A and B) are connected to a judge who can type questions directed to either room A human occupies one room and a computer the other The judge’s goal is to decide based answers received, which room contains the computer If the judge cannot decide for certain, the computer can be said to be intelligent

Passing the Turing Test Turing’s experiment sidestepped the problem of defining thinking, and also got away from focusing on any specific ability such as performing arithmetic When Turing conceived the test, no algorithmic process was known for analyzing English, as word processors' grammar checkers do today Computers are still a long way from being perfect Computers are now good enough at language tasks that we can imagine a day when computers are better than most humans at those tasks

1.2 Acting Intelligently? Spelling and grammar checks are based on rules (syntax) The computer doesn’t have to understand the context, and it doesn't About Eliza (Doctor) Developed by MIT researcher Joseph Weizenbaum She carried on a conversation as though she were a psychotherapist

Eliza Eliza was programmed to keep the dialog going by asking questions and requesting more information She took cues from words like "mother" and negative words (don’t, hate, not, etc.) Eliza was not intelligent, but could seem so to those interacting with her

Artificial Intelligence (AI) To be intelligent, a computer has to understand a situation and to act on that understanding Actions can't be scripted (pre-programmed) or predetermined Systems would have to understand natural language and/or have real-world knowledge

Playing Chess Does not require natural language Offered a challenging task that humans were both good at and interested in Predicted as early as 1952 that a computer would beat a grand master in a decade It took that long before computers could do much more than know the legal chess moves Well established as a litmus test for AI

Playing Chess: The State of the Game The state of a chess game is entirely recorded in the positions of the pieces on the board A game is a series of boards, or configurations From one configuration, each legal move produces another configuration The player must choose the move that produces the most desirable configuration

Playing Chess: Game Trees In a game tree, an evaluation function gives a score for each move If the score is positive, it’s a good move If the score is negative, it’s a bad one The higher the score, the better the move The computer must also "evaluate" or "look ahead" at the opponent’s move and see how that will affect its move

Figure 22.2 Game Tree Schematic: Chess A schematic diagram of a game tree for chess. The current board position is at the top (root). The boards produced in a single move are on the layer below, those reachable in two moves on the layer below that, and so forth.

Using the Game Tree Tactically Before picking a move, the computer must considers every possible next move and evaluates them (also known as "look ahead") Checking the whole game tree is generally impossible The first six moves alone generate a half-billion baords The best move for the opponent is presumably the worst move for the computer The computer assumes the opponent will choose the move with the most negative score in the evaluation function

Adding Database Knowledge and Parallel Computation The computer needs more knowledge to play the game It uses a database of openings and endgames Using a database is like giving the computer "chess experience" Parallel computation, the application of several computers to one task, meant faster processing of game trees and databases

Deep Blue In 1996, grand master Garry Kasperov trounced IBM’s Deep Blue, a parallel computer composed of 32 general-purpose and 256 custom chess processors The computer won 1 game of 6 in the match. An improved Deep Blue beat Kasparov the following year

Deep Blue: Interpreting Outcomes The problem was basically solved by speed Deep Blue was able to look deeper May have demonstrated that computers can be intelligent, or that IBM’s team is intelligent However, Deep Blue is completely specialized to chess

AlphaGo: Next Generation Game Playing Google's AlphaGo plays Go, not chess Possible outcomes to consider are several orders of magnitude larger than those of chess Uses deep neural networks for a machine learning approach

Watson Strategy games like chess and Go are difficult, but how difficult is it for a computer to answer Jeopardy! question? In February 2011, IBM semantic analysis system Watson competed in and won a special edition of Jeopardy! Watson is a program with specialized functions and a huge database: self-contained (not on the Internet) parses English formulates queries to its database and filters the results it receives evaluates the relevance to the question selects an answer, then gives its answer in the form of spoken English

Watson's Database and Computing Power Built from 200 million pages of unstructured input: Encyclopedias, dictionaries, blogs, magazines, web pages, etc. If your standard desktop computer ran the Watson program, it would take two hours to answer a Jeopardy! question Watson had to answer in 2–6 seconds, requiring 2,800 computers with terabytes of memory

Watson's Learning Researchers analyzed 20,000 previous Jeopardy! questions for their "lexical answer type" or LAT There were more than 2,500 different explicit LATs, and more than 10% didn’t have an explicit LAT Even if Watson were perfect at figuring out the LAT, one time in 10 it wouldn’t even know what kind of answer to give

Watson: A Summary A major accomplishment built on decades of research Still can be stumped Given the question, "Its largest airport is named for a World War II hero, its second for a World War II battle" Watson answered "Toronto" Still, Watson solves a harder problem than Deep Blue

1.3 Acting Creatively? Can a computer create art or music? What are the “rules” to be creative? Is creativity defined as a process of breaking the rules? But computers only follow rules Maybe there are rules on how to break rules

Figure 22.6 Computer-Generated Art Graphic design suggestive of the style of Piet Mondrian (search for programs online such as http://jef.works/Mondrian-generator/)

Creativity as a Spectrum Creativity that comes from inspiration—"a flash out of the blue"—and the form that comes from hard work—"incremental revision" (Bruce Jacob) In Jacob’s view the hard work is algorithmic To be inspired, the computer would have to step outside of the "established order" and invent its own rules

What Part of Creativity is Algorithmic? Consider whether a computer can be creative not as a yes/no question, but instead as an expedition The more deeply we understand creativity, the more we find ways in which it is algorithmic Some aspects of creativity are algorithmic

1.4 The Universality Principle What makes one computer more powerful than another? Any computer using only very simple instructions could simulate any other computer Known as the Universality Principle, this means that all computers have the same power The six instructions: Add (remember Chapter 9), Subtract, Set_To_One, Load, Store, and Branch_On_Zero, are sufficient to program any computation

The Universality Principle: Practical Consequences If all computers compute the same way, speed is the only difference Even though any computer can simulate any other computer, the simulation will do the work more slowly Both computers can realize the same computations, but perform them at different rates

The Same, But Different If all computers are the same, why do we need different copies of software to run on different platforms? All computers have equal power in that they can do the same computations, but they don’t use the same instructions The processors have different instructions, different encodings, and many other important differences

Outmoded Computers New software with new features runs slowly on old machines Two reasons older computers are identified as outmoded: Hardware and/or software products are often incompatible with older machines Software vendors won’t support old machines

1.5 More Work, Slower Speed: Efficiencies Computer scientists measure algorithm efficiency by the way the run time increases with the input size Consider the list intersection algorithms from Chapter 10, combining k lists of size n IAL takes at most kn steps NAL takes at most nk steps Small formula, fast algorithm

More Work, Slower Speed: Difficult Problems There are very difficult computations with no known fast algorithm Many problems of interest don’t have any known "practical" algorithmic solutions For example, the shortest (or cheapest) route to tour n cities These are called NP-complete problems

NP-Complete Problems These problems are called intractable This means that the best way to solve them is so difficult that large data sets cannot be solved with a realistic amount of computer time on any computer In principle, the problems are solvable, in practice, they are not

Unsolvable Problems There are problems computers cannot solve at all: There are no algorithms to solve the problem These are algorithms with a precisely-defined object, not a vague "be intelligent" For example: No algorithm can answer the question, "Does program P loop forever if run on input x?" This means that some desirable bug-checking programs cannot exist

Unsolvable Problems: Checking an Endless Loop Is it really true that no algorithm can answer the question, "Does program P loop forever if run on input x?" Assume we have a program LC(P,x) that tells whether another program P loops forever when run on input x Then you can create a program CD(P) ≡ if LC(P,P) = "Yes" then stop Else, repeat forever But CD(CD) stops exactly when it shouldn't That’s impossible, so LC is impossible

Summary Identified a tendency for people to decide that an intellectual activity isn’t considered thinking if it is algorithmic Discussed the Turing test and Artificial Intelligence Looked at Deep Blue, AlphaGo, and Watson in evaluating "intelligent" computers Looked at computation and the algorithmic structures of creativity Considered the Universality Principle and intractable computation problems