TuringLegacy - Cognitive Science Department

advertisement
Turing’s Legacy
Minds & Machines
Alan Turing
• Alan Turing was a British mathematician who was most
famous for his work in theoretical computer science;
• During World War II, Turing helped break German codes
using mechanical computers
• In 1952, he British government thought Turing’s
homosexuality was a crime, and forced him to go
through hormonal treatment.
• In 1954, age 41, Turing died from eating an apple laced
with cyanide; probably a suicide
• In 1999, Turing was listed as one on the top 100 most
important people of the 20th century
• On September 10, 2009, the British government
apologized for their treatment of Alan Turing.
Turing’s Legacy
• Turing’s legacy consists of 2 parts:
– Turing Machines (1936)
– Turing Test (1950)
Turing Machines
Formal Logic
The housemaid or the butler did it
If the housemaid did it, the alarm
would have gone off
1. H  B
A.
2.
HA
A.
3.
~A
A.
4. ~H
2, 3 MT
5.
1, 4 DS
B
The alarm did not go off
… therefore …
The butler did it!
Algorithms
• An algorithm is a systematic, step-by-step
procedure:
– Steps: Algorithms take discrete steps
– Precision: Each step is precisely defined
– Systematicity: After each step it is clear which step to
take next
• Examples:
– Cookbook recipe
– Filling out tax forms (ok, maybe not)
– Long division
Computations
• Computations are where the ideas of
formal logic and algorithms come together.
• A computation is a symbol-manipulation
algorithm.
– Example: long division.
• Not every algorithm is a computation
– Example: furniture assembly instructions
Computers
• A ‘computer’ is something that computes, i.e.
something that performs a computation, i.e.
something that follows a systematic procedure to
transform input symbol strings into output
symbol strings.
• As long as the procedure is effective, humans
can take the role of a computer by following that
procedure. Indeed, some 60 years ago, a
‘computer’ was understood to be a human
being!
• By mechanizing this process, we obtain
computers as we now know them.
The Decision Problem
• Suppose I give you an argument, with the
premises and conclusion expressed in
formal logic.
• As always in logic, we want to know if the
conclusion follows form the premises, i.e.
whether the argument is valid.
• Is there some kind of systematic algorithm
to test for validity?
• Can we effectively decide whether some
argument is valid or not?
The Scope and Limits of
Computation I
• In 1936, Turing wrote a paper in which he tried
to give an answer to the decision problem.
• Turing thought the answer to the decision
problem was negative: that there is no
procedure to tell all valid arguments from all
invalid arguments.
• To prove this, Turing needed to generalize over
all possible computations.
• Turing tried to do this by trying to find the basic
elements of any such process.
The Scope and Limits of
Computation II
• Take the example of multiplication: we make
marks on any place on the paper, depending on
what other marks there already are, and on what
‘stage’ in the algorithm we are (we can be in the
process of multiplying two digits, adding a bunch
of digits, carrying over).
• So, when going through an algorithm we go
through a series of stages or states that indicate
what we should do next (we should multiply two
digits, we should write a digit, we should carry
over a digit, we should add digits, etc).
The Scope and Limits of
Computation III
• The stages we are in vary widely between the
different algorithms we use to solve different
problems.
• However, no matter how we characterize these
states, what they ultimately come down to is that
they indicate what symbols to write based on
what symbols there are.
• Hence, all we should be able to do is to be able
to discriminate between different states, but
what we call them is completely irrelevant.
• Moreover, although an algorithm can have any
number of stages defined, since we want an
answer after a finite number of steps, there can
only be a finite number of such states.
The Scope and Limits of
Computation IV
• Next, Turing reasoned that while one can write
as many symbols as one wants at any location
on the paper, one can only write one symbol at a
time, and symbols have a discrete location on
the paper.
• Therefore, at any point in time the number of
symbols on the paper is finite, hence we can
number them, and hence we should be able to
do whatever we did before by writing the
symbols in one big long string of symbols.
The Scope and Limits of
Effective Computation V
• Moreover, to get to some location (whether to
read or write a symbol), we just need to be able
to go back and forth, one symbol at a time, along
this one big symbol string.
• Finally, there can only be finitely many symbols,
or else there would have to be two symbols that
are so much alike that we can no longer
perceptually discriminate between them.
The Scope and Limits of
Effective Computation VI
• Turing thus obtained the following basic
components of effective computation:
– A finite set of states
– A finite set of symbols
– A big symbol string to work on
– An ability to move along this symbol string
– An ability to read a symbol
– An ability to write a symbol
• What is this? A Turing Machine!
Turing Machines Demo
Representations, Efficiency, and
Computational Power
• In our example, we used a ‘unary’ representation of
numbers (i.e. the number four was represented as
‘1111’), but we could also have used some other
representation, such as ‘4’ or ‘IV’.
• The choice in representation obviously has an effect on
the nature of the program that is needed to do the ‘right’
thing (now you need rules for encountering a ‘4’ instead
of a ‘I’).
• Depending on the problem, some representations lead to
computations that are simpler (I always wondered how
the Romans did long division!) and more efficient than
others.
• However, if one is able to eventually get the answer
using some representational scheme then, no matter
how inefficient that representational scheme is, the
computational ‘power’ of that scheme is equal to that of
some other scheme that gets the same answer.
0’s and 1’s
• As it turns out, we can always use a string of bits, i.e. a
string of 0’s and 1’s to represent objects, without losing
any computational power.
• This is indeed how the modern ‘digital computer’ does
things. That is, at the machine level, it’s all 0’s and 1’s.
• Of course, the 0’s and 1’s are just abstractions here;
they refer to some kind of physical dichotomy, e.g. hole
in punch card or not, voltage high or low, quantum spin
up or down, penny on piece of toilet paper or not, etc.
• The fact that one can decide to use anything to
represent anything is exactly why there can be
mechanical computers, electronic computers, biochemical computers, DNA computers, optical computers,
quantum computers and, as demonstrated by the Turing
machine, computers made of one (very) big roll of toilet
paper and (a lot of) pennies!
The Church-Turing Thesis
• Many definitions have been proposed to capture the
notion of a ‘computation’ other than Turing-Machines.
• It turns out that all proposed definitions up to this date
are equivalent in the sense that whatever one is able to
compute using one computational method, one is able to
compute using any other proposed method as well.
• The Church-Turing thesis states that Turing-machines
capture the notion of effective computation: whatever is
computable, Turing-machines can compute.
• The Church-Turing thesis shows the amazing
computational power of Turing machines: Turing
machines can compute what this very laptop computes,
and they can do so using only 0’s and 1’s!
Universal Turing Machines
• One of Turing’s great achievements was his
finding that one can make a Universal Turing
Machine, which is a Turing Machine U that can
simulate the behavior of any Turing Machine M
by giving a description of that machine M and
the input I that M would work on to machine U
(Turing used this also as part of his proof that
the decision problem is not solvable).
• This led to the notion of stored programs
(programs as part of the data), and thus to
programmable, all-purpose, computers.
• What was used as part of a proof of a rather
abstract mathematical/logical theorem turned
out to revolutionize our lives!
Computing Things
• The symbols that computations manipulate are
representations of things.
• By manipulating those representations we come
to know something about the things that those
representations represent. Thus, things become
computable: ‘I can compute the product of 2
numbers’.
• I can use a mechanical device to help me
manipulate those representations
• This mechanical device we now call a computer
Computationalism
• Computationalism is the view that cognition is (syntactic)
computation (i.e. computers can think, have beliefs, be
intelligent, self-conscious, etc.)
• The idea behind Computationalism is that the brain is,
like a computer, an information-processing device: it
takes information from the environment (perception), it
stores that information (memory/knowledge), infers new
information from existing information (reasoning,
learning), and makes decisions based on this information
(action).
• Computationalism fits well with the earlier finding that
one can obtain powerful information-processing
capacities using very simple resources: Early views on
the brain supposed that neurons firing or not would
constitute 0’s and 1’s
The Turing Test
Computing Machinery and
Intelligence
• “I propose to consider the question, 'Can machines think?' This
should begin with definitions of the meaning of the terms 'machine
'and 'think'. The definitions might be framed so as to reflect so far as
possible the normal use of the words, but this attitude is dangerous.
If the meaning of the words 'machine' and 'think 'are to be found by
examining how they are commonly used it is difficult to escape the
conclusion that the meaning and the answer to the question, 'Can
machines think?' is to be sought in a statistical survey such as a
Gallup poll. But this is absurd. Instead of attempting such a definition
I shall replace the question by another, which is closely related to it
and is expressed in relatively unambiguous words. The new form of
the problem can be described' in terms of a game which we call the
'imitation game'. “
The Imitation Game or:
The Turing Test
Machine
Interrogator
Human
“I believe that in about fifty years’ time it will
be possible to programme computers, with a
storage capacity of about 109, to make them play
the imitation game so well that an average
interrogator will not have more than 70 per cent
chance of making the right identification after
5 minutes of questioning”
-Alan Turing (1950)
Turing’s Argument for AI
Premise 1: Machines can pass the Turing Test
Premise 2: Anything that passes the Turing Test
is intelligent
Conclusion: Machines can be intelligent
Can Machines pass the Turing
Test?
• Turing thinks that machines will at
some point in the future be able to
pass the Turing Test, because Turing
thinks that passing the test requires
nothing more than some kind of
information processing ability, which
is exactly what computers do.
A Puzzle
• But wait, can’t we then just argue as follows:
– Intelligence requires nothing more than some kind of
information processing ability,
– Computers can have this information processing
ability
– Therefore, computers can be intelligent.
• Indeed, this is exactly how proponents of AI
make the argument today.
• So why didn’t Turing make this very argument?
Why bring in the game?
A Second Puzzle
• Also, why the strange set-up of the TuringTest? Why did Turing ‘pit’ a machine
against a human in some kind of contest?
Why not have the interrogator simply
interact with a machine and judge whether
or not the machine is intelligent based on
those interactions?
The Super-Simplified Turing Test
Interrogator
Machine
Answer: Bias
• The mere knowledge that we are dealing
with a machine will bias our judgment as
to whether that machine can think or not,
as we may bring certain preconceptions
about machines to the table.
• Moreover, knowing that we are dealing
with a machine will most likely lead us to
raise the bar for intelligence: it can’t write a
sonnet? Ha, I knew it!
• By shielding the interrogator from the
interrogated, such a bias and bar-raising is
eliminated in the Turing-Test.
The Simplified Turing Test
Interrogator
Machine or Human
Level the Playing Field
• Since we know we might be dealing with a
machine, we still raise the bar for the entity
on the other side being intelligent.
• Through his set-up of the test, Turing
made sure that the bar for being intelligent
wouldn’t be raised any higher for
machines than we do for fellow humans.
Is the Imitation Game a Test?
• Still, we are left with the first puzzle: if Turing wanted to
argue that machines can be intelligent, why bring up any
test at all?
• I believe that Turing never intended the test as part of
any argument for machine intelligence.
• Instead, Turing used the test to make us aware of the
point that we should level the playing field as far as
attributing intelligence goes: if we attribute intelligence to
humans based on their behavior then, just to be fair, we
should do it for machines as well.
• Thus, the convoluted set-up wasn’t merely a practical
consideration to eliminate bias: it was the whole point of
his article!
• In fact, Turing hardly uses the word ‘test’ in his original
article, and instead talks about it as the Imitation Game.
Pluto and Planets
• Asking how many planets there are in our solar
system seems to be a factual matter:
– We believe there is a straightforward fact of the
matter to this issue.
• If I say: “There are X planets in our solar system” then this
statement is either true or false.
– How many planets there are is an empirical issue:
observations will tell us how many there are
• However, as the case of Pluto demonstrated,
things aren’t that easy. This issue isn’t just an
empirical issue, but also one of interpretation.
• Maybe the same is true for machine intelligence!
Artificial Flight and
Artificial Intelligence
• Imagine going back 100 years when the Wright
Brothers had their first flight.
• We can imagine people say: “Well, but that’s not
real flight. There is no flapping of the wings!”
• But over time, we realized that it is, from the
standpoint of using concepts that help us think
and make sense of the world around us, a good
idea to consider airplanes as really flying.
• Maybe the same is true for intelligence!
In Turing’s Words
The original question, “Can machines think?”, I believe
to be too meaningless to deserve discussion. Nevertheless
I believe that at the end of the century the use of words and
general educated opinion will have altered so much that one
will be able to speak of machines thinking without expecting
to be contradicted.
-Alan Turing (1950)
Download