Living a (Non-Schizophrenic) Symbiosis Between Philosophy, Psychology, and Computer Science Selmer Bringsjord Director, Minds & Machines Laboratory Prof of Logic, Philosophy, Cognitive Science, and Computer Science Dept of Philosophy, Psychology, & Cognitive Science Department of Computer Science Rensselaer Polytechnic Institute (RPI) Troy NY 12180 USA Chief Scientist xxxxxxxxx 1223 Peoples Ave. Troy NY 12180 USA selmer@rpi.edu http://www.rpi.edu/~brings Modus Operandi • Know, really know, a paradigm that can cut across disciplines. • Critically examine everything, however sacred, leveraging the fact you’ll often be an “outsider.” • Continuously ask the “big questions,” and work from them to engineering – not the other way around. • Given that it would be silly to acquire multiple PhDs, go for the equivalent by diving in (pedagogically first, perhaps), always maintaining a “lifeline” to your paradigm. – What major issues in field X might yield to techniques based in field Y (or to your cross-cutting paradigm)? Examples, Examples… There are many… I’ll pick a few; we can discuss them, and others. Example #1: Psychometric AI Seeking to Impact a # of Fields • This work weaves together relevant parts of: – Artificial Intelligence: Build machine agents to “crack” and create tests. – Psychology: Use experimental methods to uncover nature of human reasoning used to solve test items. – Philosophy: Address fundamental “big” questions, e.g., What is intelligence? Would a machine able to excel on certain tests be brilliant?… – Education: Discover the nature of tests used to make decisions about how students are taught what, when. – Linguistics: Reduce reasoning in natural language to computation. Many applications! New Kind Kind of Playing Off of Forgotten Answer to: What is AI? AAaNew ofAI AI • Assume the ‘A’ part isn’t the problem: we know what an artifact is. • Psychometric AI plays is off a simple but radical answer: PsychometricAI AIisisthe thefield fielddevoted devotedtotobuilding buildinginformation-processing information processing – Psychometric AI is the field devoted to building intelligent entitities (some which will robots) capable least solid entities (some of of which will bebe robots) capable of of at at least solid performance validated tests artificial on agents, i.e., agents capable of solidand performance onall allestablished, established, validated testsofofintelligence intelligence andmental ability, aability, class ofa tests that includes IQ tests,IQ tests of reasoning, of mental class ofintelligence tests that includes tests, tests of reasoning, performance on tests. creativity, mechanical ability, and so on. of creativity, mechanical ability, and so on. • Don’t confuse this with: “Some human is intelligent…” • Psychologists don’t agree on what human intelligence is. – Two notorious conferences. See The g Factor. • But we can agree that one great success story of psychology is testing, and prediction/education on the basis of it. Therefore… Intelligence Tests: Narrow vs. Broad Spearman’s view of intelligence Thurstone’s view of intelligence Let’s look @ RPM (Sample 1) RPM Sample 2 RPM Sample 3 Artificial Agent to Crack RPM ---------------- PROOF ---------------1 [] a33!=a31. 3 [] -R3(x)| -T(x)|x=y| -R3(y)| -T(y). 16 [] R3(a31). 24 [] T(a31). 30 [] R3(a33). 31 [] T(a33). 122 [hyper,31,3,16,24,30,flip.1] a33=a31. 124 [binary,122.1,1.1] $F. ------------ end of proof ----------------------- times (seconds) ----------user CPU time 0.62 (0 hr, 0 min, 0 sec) Artificial Agent to Crack RPM ---------------- PROOF ---------------1 [] a33!=a31. 7 [] -R3(x)| -StripedBar(x)|x=y| -R3(y)| StripedBar(y). 16 [] R3(a31). 25 [] StripedBar(a31). 30 [] R3(a33). 32 [] StripedBar(a33). 128 [hyper,32,7,16,25,30,flip.1] a33=a31. 130 [binary,128.1,1.1] $F. ------------ end of proof ----------------------- times (seconds) ----------user CPU time 0.17 (0 hr, 0 min, 0 sec) Artificial Agent to Crack RPM Correct! =========== start of search =========== given clause #1: (wt=2) 10 [] R1(a11). given clause #2: (wt=2) 11 [] R1(a12). given clause #3: (wt=2) 12 [] R1(a13). ... given clause #4: (wt=2) 13 [] R2(a21). given clause #278: (wt=16) 287 [para_into,64.3.1,3.3.1] R2(x)| -R3(a23)| -EmptyBar(y)| -R3(x)| -EmptyBar(x)| -T(a23)| R3(y)| -T(y). given clause #279: (wt=16) 288 [para_into,65.3.1,8.3.1] R2(x)| -R3(a23)| -StripedBar(y)| -R3(x)| -StripedBar(x)| EmptyBar(a23)| -R3(y)| -EmptyBar(y). Search stopped by max_seconds option. ============ end of search ============ Possible Objection “If one were offered a machine purported to be intelligent, what would be an appropriate method of evaluating this claim? The most obvious approach might be to give the machine an IQ test … However, [good performance on tasks seen in IQ tests would not] be completely satisfactory because the machine would have to be specially prepared for any specific task that it was asked to perform. The task could not be described to the machine in a normal conversation (verbal or written) if the specific nature of the task was not already programmed into the machine. Such considerations led many people to believe that the ability to communicate freely using some form of natural language is an essential attribute of an intelligent entity.” (Fischler & Firschein 1990, p. 12) WAIS A Broad Intelligence Test… Cube Assembly by Intelligent Agents (thanks to Bettina Schimanski) Basic Setup Problem: Solution: The robot in Selmer’s lab that will be able to excel on the WAIS and other tests. We don’t yet have a name for our artificial master of tests. MIT has COG. What should the name be? Suggestions are welcome! Send to selmer@rpi.edu. Picture Completion Cracking Algorithm Applied to “Lobster” Lobsters usually develop one smaller, cutter claw and one larger, crusher claw. To show that exercise determines which claw becomes the crusher, researchers placed young lobsters in tanks and repeatedly prompted them to grab a probe with one claw – in each case always the same, randomly selected claw. In most of the lobsters the grabbing claw became the crusher. But in a second, similar experiment, when lobsters were prompted to use both claws equally for grabbing, most matured with two cutter claws, even though each claw was exercised as much as the grabbing claws had been in the first experiment. Which of the following is best supported by the information above? A B C D E Young lobsters usually exercise one claw more than the other. Most lobsters raised in captivity will not develop a crusher claw Exercise is not a determining factor in the development of crusher claws in lobsters. Cutter claws are more effective for grabbing than are crusher claws. Young lobsters that do not exercise either claw will nevertheless usually develop one crusher and one cutter claw. Option A in Lobster (v3) Verified formula_list(usable). all x (Lobster(x)->Cutter(l(x))&Crusher(r(x))|Cutter(r(x))&Crusher(l(x))). all x (Lobster(x)-> -(Cutter(l(x))&Crusher(l(x)))& -(Cutter(r(x))&Crusher(r(x)))). all x (Lobster(x)-> (Ex(r(x),l(x))->Cutter(l(x))&Crusher(r(x)))). all x (Lobster(x)-> (Ex(l(x),r(x))->Cutter(r(x))&Crusher(l(x)))). all x (Lobster(x)-> (-Ex(r(x),l(x))& -Ex(l(x),r(x))->Cutter(l(x))&Cutter(r(x)))). -(all x (Lobster(x)->Ex(r(x),l(x))|Ex(l(x),r(x)))). end_of_list. Option A negated ---------------- PROOF ---------------4 [] -Lobster(x)|Crusher(r(x))|Crusher(l(x)). 5 [] -Lobster(x)| -Cutter(l(x))| -Crusher(l(x)). 6 [] -Lobster(x)| -Cutter(r(x))| -Crusher(r(x)). 11 [] -Lobster(x)|Ex(r(x),l(x))|Ex(l(x),r(x))|Cutter(l(x)). 12 [] -Lobster(x)|Ex(r(x),l(x))|Ex(l(x),r(x))|Cutter(r(x)). 13 [] -Ex(r($c1),l($c1)). 14 [] -Ex(l($c1),r($c1)). 15 [] Lobster($c1). 16 [hyper,15,12,unit_del,13,14] Cutter(r($c1)). 17 [hyper,15,11,unit_del,13,14] Cutter(l($c1)). 18 [hyper,15,4] Crusher(r($c1))|Crusher(l($c1)). 19 [hyper,18,6,15,16] Crusher(l($c1)). Option A verified 21 [hyper,19,5,15,17] $F. ------------ end of proof ------------- Option B in Lobster (v3) Falsified formula_list(usable). all x (Lobster(x)->Cutter(l(x))&Crusher(r(x))|Cutter(r(x))&Crusher(l(x))). all x (Lobster(x)-> -(Cutter(l(x))&Crusher(l(x)))& -(Cutter(r(x))&Crusher(r(x)))). all x (Lobster(x)-> (Ex(r(x),l(x))->Cutter(l(x))&Crusher(r(x)))). all x (Lobster(x)-> (Ex(l(x),r(x))->Cutter(r(x))&Crusher(l(x)))). all x (Lobster(x)-> (-Ex(r(x),l(x))& -Ex(l(x),r(x))->Cutter(l(x))&Cutter(r(x)))). -(all x (Lobster(x)&Captivity(x)->Cutter(l(x))&Cutter(r(x)))). end_of_list. Option B negated =========== start of search =========== given clause #1: (wt=2) 14 [] Lobster($c1). given clause #2: (wt=2) 15 [] Captivity($c1). given clause #3: (wt=6) 18 [hyper,14,4] Crusher(r($c1))|Crusher(l($c1)). given clause #4: (wt=6) 19 [hyper,14,3] Crusher(r($c1))|Cutter(r($c1)). given clause #5: (wt=6) 20 [hyper,14,2] Cutter(l($c1))|Crusher(l($c1)). given clause #6: (wt=13) 16 [hyper,14,12] Ex(r($c1),l($c1))|Ex(l($c1),r($c1))|Cutter(r($c1)). given clause #7: (wt=6) 21 [hyper,14,1] Cutter(l($c1))|Cutter(r($c1)). given clause #8: (wt=13) 17 [hyper,14,11] Ex(r($c1),l($c1))|Ex(l($c1),r($c1))|Cutter(l($c1)). given clause #9: (wt=10) 24 [hyper,17,13,16,factor_simp,factor_simp] Ex(r($c1),l($c1))|Ex(l($c1),r($c1)). given clause #10: (wt=8) 25 [hyper,24,8,14] Ex(l($c1),r($c1))|Crusher(r($c1)). given clause #11: (wt=8) 26 [hyper,24,7,14] Ex(l($c1),r($c1))|Cutter(l($c1)). given clause #12: (wt=8) 27 [hyper,24,10,14] Ex(r($c1),l($c1))|Crusher(l($c1)). Option B falsified given clause #13: (wt=8) 28 [hyper,24,9,14] Ex(r($c1),l($c1))|Cutter(r($c1)). Search stopped because sos empty. ============ end of search ============ Example #2: Humans as Evolved Machines? Argument #2… Genetic Algorithm begin GA g:= 0 Initialize population P(g) Evaluate population P(g) (i.e., compute fitness values) while not done do g:=g+1 Select P(g) from P(g-1) Crossover P(g) Mutate P(g) Evaluate P(g) end while end GA Simple Example Label A B C D Genome 00000110 11101110 00100000 00110100 Fitness 2 6 Av Fitness: 1 3 3 Assume parents {B,D} and {B,C} and crossover at first bit for {B,D} forming E and F, and none for {B,C}. Then: Label E F B C Genome 10110100 01101110 11101110 00100000 Fitness 4 5 6 1 Proceeding… Assume offspring E is mutated at the 6th position to form E’, Offspring B is mutated at the first bit position for form B’, and Offspring F and C are not mutated at all. Label E’ F B’ C Genome 10110000 01101110 01101110 00100000 . . . Fitness 3 5 5 1 Av Fitness: 144 Moral of the story… The process of evolution is an algorithm, or mechanical procedure, or computation. The Computational Landscape Space of all information processes Analog Chaotic Neural Networks, Zeus Machines, Weyl Machines, P/Poly Machines, … Hypercomputation The “Turing Limit” Turing Machines, Algorithms, Programs, … Theorem à No algorithmic process can produce a device capable of hypercomputation. The “Fragility” of the Proposition that People are the Product of Evolution (1) If people are the product of evolution, they were produced by an algorithmic process (= by a process at or below the Turing Limit). (2) Theorem Ã: No algorithmic process can produce a device capable of hypercomputation. (3) People are capable of hypercomputation. (4) People were not produced by an algorithmic process. (from 3 and 4) (5) People aren’t the product of evolution. (from 4 and 1) Example #3: Reaching Simon’s Dream The Primacy of Psychology of Reasoning There is consensus among the relevant luminaries in AI and theorem proving and psychology of reasoning and cognitive modeling that: machine reasoning stands to the best of human reasoning as a rodent stands to the likes of Kurt Godel. In the summer before Herb Simon died, in a presentation at CMU, he essentially acknowledged this fact -- and set out to change the situation by building a machine reasoner with the power of first-rate human reasoners (e.g., professional logicians). Unfortunately, Simon passed away. Now, the only way to fight toward his dream (which of course many others before him expressed) is to affirm the primacy of psychology of reasoning. Otherwise we will end up building systems that are anemic. The fact is that first-rate human reasoners use techniques that haven't found their way into machine systems. E.g., humans use extremely complicated, temporally extended mental images and associated emotions to reason. No machine, no theorem prover, no cognitive architecture, uses such a thing. The situation is different than chess -radically so. In chess, we knew that brute force could eventually beat humans. In reasoning, brute force shows no signs of exceeding human reasoning. Therefore, unlike the case of chess, in reasoning we are going to have to stay with the attempt to understand and replicate in machine terms what the best human reasoners do. Multi-Agent Reasoning, modeled in “Chess Mental Metalogic, is the key is Too to reaching Simon’s Dream! Easy” Pilot experiment shows that groups of reasoners instantly surmount the errors known to plague individual reasoners! Herb Simon’s Dream Example #4: Cultivating “System 2” Cognition J-L #1 Suppose that the following premise is true: If there is a king in the hand, then there is an ace in the hand, or else if there isn’t a king in the hand, then there is an ace. What can you infer from this premise? NO! There is an ace in the hand. NO! In fact, what you can infer is that there isn’t an ace in the hand! Problem Given Selmer on Train Everyone loves anyone who loves someone. Alvin loves Bill. Can you infer that everyone loves Bill? ANSWER: JUSTIFICATION: Problem Given Selmer on Train Everyone loves anyone who loves someone. Alvin loves Bill. Can you infer that everyone loves Bill? ANSWER: Yup. JUSTIFICATION: See proof just given. Harder Variants Everyone loves anyone who loves someone. Alvin doesn’t love Bill. Can you infer that Cath loves Bill? Can you infer that Cath loves Dave? ANSWER: JUSTIFICATION: Harder Variants Everyone loves anyone who loves someone. Alvin doesn’t love Bill. Can you infer that Cath loves Bill? Can you infer that Cath loves Dave? ANSWER: Yes x 2 JUSTIFICATION: See proof just given. A Technological Fix? NSF-sponsored Development of Artificial Tutoring Agents Example #5: Foundations of AI Rather obviously, human persons aren’t standard computers (the speed fetish) If R5 is non-empty, take a bead away. , , , R1 R2 R3 R4 R5 R6 R7 R8 R9 Confess to Having Little Respect for Computing Machines super-rational adults rational adults rats … dogs dolphins monkeys children adults computers/robots simulate all behaviors computers/robots simulate some reasoning King-Ace and the like Infinitary Paradoxes! uperminds Strong AI (we are machines and we can literally be replicated in standard computing machines) Hans Moravec Most AIniks? Bill Joy replication simulation Me Weak AI (we are more than computing machines, but our behavior can be, to some degree, simulated by such machines) Panglossian AI John Searle Fatalistic AI Dark Side of AI Forever Fiction Classes Taught • • • • • • • • • Introduction to Logic Psychology of Reasoning Cognitive Psychology Introduction to Cognitive Science Introduction to Artificial Intelligence Computability and Logic Logic and AI (grad seminar) Advanced Logic courses Introduction to Philosophy Modus Operandi • Know, really know, a paradigm that can cut across disciplines. • Critically examine everything, however sacred, leveraging the fact you’ll often be an “outsider.” • Continuously ask the “big questions,” and work from them to engineering – not the other way around. • Given that it would be silly to acquire multiple PhDs, go for the equivalent by diving in (pedagogically first, perhaps), always maintaining a “lifeline” to your paradigm. – What major issues in field X might yield to techniques based in field Y (or to your cross-cutting paradigm)? The End Example #6: Engineering Creative Machines But Specifically on Our Topic: Lady Lovelace, long ago: “Computers can’t be creative. For to be creative is to originate something. But computers originate nothing. They merely follow the programs given to them.” But you built this system called BRUTUS over a period of seven years, and BRUTUS is creative, no? Well, Our Aim is to Engineer a System Able to Prevail Against a Human in S3G Judge A story… A story…. Building Literarily Creative Computing Machines: Some Engineering Challenges • Formalizing Literary Themes – For me it’s been betrayal – Coming: mendacity – “Selmer, we want X in our game.” • Well, I need some serious money for that. • Story Mastery – Without it, hack-and-slash, at best – The Bates experiment – Fortunes to be made here • Building Robust Autonomous Characters • Personalization Mendacity Logical Systems: Which for Machine Creativity? Name Alphabet Grammar Proof Theory Semantics Metatheory LPC p, q, r, … and truthfunctional connectives Easy Fitch-style and natural deduction, resolution, etc. Truth tables! Sound, complete, compact, decidable Add variables x, y, … and Easy Fitch-style and natural deduction, resolution, e.g. Structures and interpretations Sound, complete, compact, undecidable LPML Add “box” and “diamond” for necessity and possibility Wffs created by prefixing new operators to wffs Add necessitation, etc. Possible worlds Similar to LPC LII New variables for predicates Pretty obvious New adapt quantifier rules Quantification over subsets in domain allowed Sound but not complete Propositional Calculus LI First-Order Logic Unfortunately… Name Alphabet Grammar Proof Theory Semantics Metatheory LPC p, q, r, … and truthfunctional connectives Easy Fitch-style and natural deduction, resolution, etc. Truth tables! Sound, complete, compact, decidable Add variables x, y, … and Easy Fitch-style and natural deduction, resolution, e.g. Structures and interpretations Sound, complete, compact, undecidable LPML Add “box” and “diamond” for necessity and possibility Wffs created by prefixing new operators to wffs Add necessitation, etc. Possible worlds Similar to LPC LII New variables for predicates Pretty obvious New adapt quantifier rules Quantification over subsets in domain allowed Sound but not complete Propositional Calculus LI First-Order Logic There is an empirical way to express Lovelace’s challenge: what I call the… Lovelace Test Like Kasparov vs. Deep Blue… Joel Benjamin Murray Campbell … Kasparov In the TT, it’s Really Judge vs. Designer I can handle tha- uh, it can handle that one. Judge What color and in what style is your hair? Designer The Lovelace Test How did it do that? S o Designer (= Judge) Judge (= Designer) Definition of Lovelace Test • Artificial agent A, designed by H, passes LT if and only if – A outputs o; – A’s outputting o is not the result of a fluke hardware error, but rather the result of processes A can repeat; – H (or someone who knows what H knows, and has H’s resources) cannot explain how A produced o by appeal to A’s architecture, knowledge-base, and core functions. Intelligent Agents Generic Knowledge-Based Agent (smarter than what appear in nearly all games, including, e.g., Hitman) function KB-Agent(percept) returns an action inputs: p, a percept static: KB, a knowledge base t, a counter, initially 0 Tell(KB, Make-Percept-Sentence(percept, t)) action Ask(KB, Make-Action-Query(t)) Tell(KB, Make-Action-Sentence(action, t)) tt+1 return action What Systems Fail LT? • Brutus (see final chapter) • Copycat (see book as well) • Letter Spirit . . . Is the Set of All “A”s Countable? The Original Dream ABCDEF…Z Percepts: ? Actions: Design remaining letters Letter Spirit System as an Intelligent Agent Letter Spirit ABC Percepts: seed letters DEF…Z Actions: Design remaining letters The Retreat to Grids Ten Human-Designed Gridfonts 1500 “A”s are Possible But If We Want Genuine Machine Creativity? • Exploiting what it’s like to, say, find a dead body in a… Toward Mendacity • x tells lie p to y iff – p is false; – x knows that p is false; Toward Mendacity • x tells lie p to y iff – p is false; – x knows that p is false; • But where’s the communication? Toward Mendacity • x tells lie p to y iff – x (in some technical communicative sense) tells y p; • (Using AIMA, we could invoke TELLing to another’s KB) – p is false; – x knows that p is false; Toward Mendacity • x tells lie p to y iff – x (in some technical communicative sense) tells y p; • (Using AIMA, we could invoke TELLing to another’s KB) – p is false; – x knows that p is false; • But perhaps x is being sarcastic! Toward Mendacity • x tells lie p to y iff – x (in some technical communicative sense) tells y p; • (Using AIMA, we could invoke TELLing to another’s KB) – p is false; – x knows that p is false; – x wants y to believe p. Toward Mendacity • x tells lie p to y iff – x (in some technical communicative sense) tells y p; • (Using AIMA, we could invoke TELLing to another’s KB) – p is false; – x knows that p is false; – x wants y to believe p. • Does this do it? Back: Some Key Challenges Example #7: Multi-agent “proof battles” … Multi-Agent Proof: Substrate for RC Items Multi-Agent Proof: Substrate for RC Items Multi-Agent Proof: Substrate for RC Items Multi-Agent Proof: Substrate for RC Items Multi-Agent Proof: Substrate for RC Items Multi-Agent Proof: Substrate for RC Items Multi-Agent Proof: Substrate for RC Items Multi-Agent Proof: Substrate for RC Items Multi-Agent Proof: Substrate for RC Items Multi-Agent Proof: Substrate for RC Items