540 likes | 555 Views
Artificial Intelligence An introduction. Alain Mille LIRIS CNRS UMR 5205 Université Lyon1. Summary. Part I – AI short history Part II – AI basics > formal systems Part III – Knowledge Based Systems Part IV – Knowledge Engineering Part V - Ontologies Part VI – Case-Based Reasoning
E N D
Artificial IntelligenceAn introduction Alain Mille LIRIS CNRS UMR 5205 Université Lyon1
Summary • Part I – AI short history • Part II – AI basics > formal systems • Part III – Knowledge Based Systems • Part IV – Knowledge Engineering • Part V - Ontologies • Part VI – Case-Based Reasoning • Part VII – AI challenges and AI for robotics BEST
Part I AI short story
Artificial intelligence …born only few years after computers… • https://www.aaai.org/AITopics/html/history.html • Official birth date : 1956, Darmouth College (New Hampshire, USA) • John McCarthy (logics supporter) • Marvin Minsky (dynamic schemes supporter) • Computer « thinking machines » • Computer Brain BEST
Pioneers • [1936] Turing : Universal Turing Machine • [1945] Von Neumann : computer architecture • [1948] Wiener : cybernetics • [1948] Shannon : information theory • [1949] Mc Culloch and Pitts : neural networks (physiological approach) BEST
First AI programs • Newell, Simon and Shaw write a program in logics for theorem proof [1956!] • They generalize the process through what they call a GENERAL PROBLEM SOLVER (GPS). A GPS solves a problem by exploring possible ways to go from an initial state to a state satisfying the goal to reach. A set of operators allows to move from one state to one another. A path going from the starting state to a state satisfying the goal is a solution (the optimal solution is the shortest path). BEST
First challenges… • Computers playing chess -> first win in 1997 Deep Blue wins Kasparov • IQ Test (Evans 1963) : finding “logical” mapping between series of pictures. • Constraint Solving Approach (Waltz 1975) • “Natural language” processing (Eliza, Weizenbaum 1965) (SHRDLU, Winograd 1971) BEST
Expert Systems • [seventies, eighties, until now…] a dream…or a nightmare? • DENDRAL (Chemical application) • MYCIN (Medical application -> THE model) • Hersay II (Speech understanding) • Prospector (Geology) • Expert Systems Generators • GURU • CLIPS BEST
Part II AI Basics Formal Systems
Formal systems for inference processes • How to build systems able to infer true things from other true things…(of the world!) • Symbolic approaches • Formal descriptions • Syntactic reformulations • Semantic declarations BEST
Formal system For building a formal system, we need : • An alphabet, i.e. a set of symbols (not necessary characters) • A process to build expressions (not necessary concatenation) => Expression Building Process (EBP) • A set of axioms , i.e. expressions written according to 1 and 2. These expressions belongs (arbitrarily) to the “system” (are “true”) • Derivation rules which, starting from existing axioms, are able to produce theorems (expressions belonging now to the system) and which can be applied (to produced theorems) in order to produce new ones. BEST
Example of a formal system ! • PEO System • alphabet = set of 3 symbols "p" , "e" , and “o" • EBP = concatenation • axiom = opoeoo • Derivation rules : • R1 : if an expression AeB is a theorem (where "A" and “B” stand for any suite of "o", "p", or "e"), then expression oAeBo is also a theorem. • R2 : if an expression AeB is a theorem , then expression AoeoB is also a theorem. • Questions • Q1 = oopooeoooo is a theorem? • Q2 = opooeoooo ? • Q3 = opopoeooo ? . BEST
R1 R2 oopoeooo opooeooo R1 R2 ooopoeoooo oopooeoooo Theorem demonstration opoeoo • This system is semi-decidable because we have a provable process to decide that an expression is a theorem, but we do not have a provable process to decide that an expression is not a theorem. As you are humans (having learned mathematical addition) it should be helpful to read « p » as « plus », o as « one » and « e » as « equals » (opoeo one plus one equals one one) BEST
Part III Knowledge Based Systems
=> Knowledge Based System Facts Fi [Axioms and Theorems] Domain knowledge (Rules, constraints, cases, …) [Axioms] Inference Engine • Kinds of possible requests : • - Is F12 inferable from F6 and F14? • What is inferable from F2 or F7? • How F13 could be inferred (which Fi could lead to F13)? BEST
A (simple) KBS • Alphabet (symbols) • Distance_<_2kmdistance_<_300kmwalkingtravelling_by_traintravelling_by_planehaving_a_phonegoing_to_the_agencycalling_the_agencybuying_a_tickettrip_duration_>_2_daysbeing_a_civil_servant()not /*(negation)^ /*(and, conjunction)-> /*(implies) BEST
Expression Building Process • expression := symbol • expression := ( expression ) • expression := not expression • expression := expression1 ^ expression2 • expression := expression1 -> expression2 BEST
Axioms • Rules • R1 : distance_<_2km -> walking • R2 : ((not distance_<_2km) ^ distance_<_300km) -> travelling_by_train • R3 : (not distance_<_300km) -> travelling_by_plane • R4 : (buying_a_ticket ^ having_a_phone) -> calling_the_agency • R5 : (buying_a_ticket ^ (not having_a_phone)) -> going_to_the_agency • R6 : travelling_by_plane -> buying_a_ticket • R7 : (trip_duration.>.2_days ^ being_a_civil_servant) ->(not travelling_by_plane) • Facts • F1 : (not distance_<_300km) • F2 : having_a_phone BEST
Inference Engine • It works • While it works • It does’nt work • Loop on Ri • Loop on not tagged Fj • if Ri fits the pattern "Fj -> Fk" • add Fk to Facts • tagg Fj • It works • else • loop on Fl if Ri fits the pattern "Fj ^ Fl ->..." add Fm = (Fj ^ Fl) to the Factstagg Fj it works endif • endloop /* FI • endif • Endloop /*Fj • Endloop /Ri • endwhile BEST
How things are called… • R axioms are called RULES • Left part (of ->) : premises (conjunction of) • Right part (of ->) : Consequents (conjunction of) • F axioms are called FACTS • A kind of Rule which doesn't need premises to be true. Such Rules and Facts are called “Propositions” and the paradigm is called “Proposition logics” or “Order 0 logics” BEST
From propositions to predicatesFrom 0 to first order logics Introduction of VARIABLES with Existential Quantifier Universal Quantifier BEST
Programming languages for AI? • LISP (American: Mac Carthy) • PROLOG (France ! Colmerauer) • SmallTalk (Object Language) • Frame Languages • YAFOOL (Yet Another Frame based Object Oriented Language) • KL-ONE (Knowledge Language) • Description logics BEST
Knowledge Based Systems? • Rules based KBS • Rules and facts + inference engine • LOGICAL approach • Expert Systems for • Diagnosis • Planning • Decision Helping => Challenge: how the set of rules and facts can be acquired and maintained -> Knowledge Engineering BEST
Part IV Knowledge Engineering
? Knowledge Engineering: Why? Knowledge Base « representing » the world Symbolic level The « world » to model BEST
Alan Newell idea [1982]: modeling the world at a “KNOWLEDGE LEVEL” Intermediate knowledge representation « understandable » by both humans and computers? (Knowledge Level) ? Knowledge Base « representing » the world (Symbolic Level) The « world » to model ? BEST
Knowledge Level? • Domain abstraction for conceptualizing it (concepts and relationships + interactions) • A logical semantic will be described in order to allow computer calculations on the Domain • => Domain Theory • Intermediate language • Able to represent efficiently concepts, relations and interactions for human interpretation… • … an able to specify a corresponding logical semantic for computers calculations BEST
Model Driven Knowledge Acquisition Unstructured Expertise Experts / data Conceptual Model Schema Conceptual Model description Knowledge Level Completed Conceptual Model Conceptual Model Instantiation Symbol Level KBS design KBS BEST
Conceptual Model • Expressing Domain Knowledge manipulated concepts + relationships / considering some tasks • Expressing how a task has to be realized on the base of Domain Knowledge. BEST
Knowledge Analysis and Design System (KADS) Conceptual Models Problem solving behaviours Interpretation framework = vocabulary, generic components Transformation AI Techniques, Methods and representations Design Model Knowledge Based System BEST
Part V Ontologies
Domain theory as an ontology • Knowledge Based Systems remain difficult to build and maintain, but • For knowledge management, • For knowledge sharing, • and, in the general scope of the Semantic Web • Ontologies took a big place in AI research and applications BEST
ONTOLOGY? • A specific ARTIFACT designed for expressing the intended meaning of a shared vocabulary • A shared vocabulary + a specification of its intended meaning • « An ontology is a specification of a conceptualization » [Gruber 95] • => an ontology accounts for the commitment of a language to a certain conceptualization! BEST
Ontology Example Anything Person Organization Worker Student Faculty Assistant AdministrativeStaff Professor Lecturer Lecturer ISA relation BEST
Different classes of ontologies [from http://www.loa-cnr.it ] BEST
More about ontologies… • A site with links for anything you need for going further and mastering ontologies technologies • http://www.cs.utexas.edu/users/mfkb/related.html • THE french web site about Knowledge Engineering • http://www.irit.fr/GRACQ/index-bib.html • A nice tutorial about ontologies (in french) • http://www.irit.fr/GRACQ/COURS/CoursFabienGandon.htm • An other tutorial about ontologies (in english) • (http://www.loa-cnr.it/odcm.html ) BEST
Part VI Analogical Reasoning => Case Based Reasoning
Beyond « logical » systems, the analogical approach: Case Based-Reasoning • First ideas • Marvin Minsky (a frame based model for memory) [1975] • Roger Schank (scripts for understanding natural language) [1982] • Janet Kolodner (Case-Based Reasoning as a central research object)[1993] BEST
CBR example (2) BEST
CBR useful pointers • Orenge Tool (http://www.empolis.com/) • Kaidara (http://www.kaidara.com/) • CaseBank • Jcolibri Environment • CBR community website (no more maintained ) • David Aha web site BEST
Part VII AI new challenges AI and Robotics
AI Challenges • Dynamic and situated knowledge and reasoning (Robotics, help desk, semantic web, …) • Human learning / Machine Learning • Heterogeneous agents interactions • Cognition as knowledge emergence • > Biologically inspired systems • > Continuous learning man-machine systems • > Situated Cognition, Distributed Cognition, Multi-agent paradigm, Dynamic neural networks … BEST
AI and Roboticshttp://www.faculty.ucr.edu/~currie/roboadam.htm • Definition of a Robot • According to The Robot Institute of America (1979) : "A reprogrammable, multifunctional manipulator designed to move materials, parts, tools, or specialized devices through various programmed motions for the performance of a variety of tasks." • According to the Webster dictionary: "An automatic device that performs functions normally ascribed to humans or a machine in the form of a human (Webster, 1993)." BEST
AI Robotics… BEST
AI and Robotics BEST