Kunstig intelligens (IT-272) Forelesning Emner: Evolusjonær komputasjon - Genetiske algoritmer - Genetisk programmering - Kunstig liv Forskningsmetodikk innen Kunstig intelligens - Revidert definisjon - AI som empirisk vitenskap - Kognitiv vitenskap som metodisk tilnærming - Epistemologiske problemer Genetiske og Adferdsbaserte metoder -> Evolusjonære metoder Fra kognitive til biologiske - og etologiske - modeller av intelligent adferd. Intelligent adferd forårsakes ikke av modeller som er representert i maskinen, den oppstår i vekselvirkning med omgivelsene. Basis for det nye fagfeltet 'Artificial Life'.
Darwinian Evolution Physiological, Behavioral Phenotypes Natural Selection Ptypes Morphogenesis Reproduction Sex Genotypes Recombination & Mutation Gtypes Genetic Evolutionary Algorithms Parameters, Code, Neural Nets, Rules Semantic Performance Test P,C,N,R Translate R &M Generate Bit Strings Syntactic Recombination & Mutation Bits
Evolutionary Computation = Parallel Stochastic Search Indiv 2 3 4 5 6 Biased Roulette Wheel Fitness 3 8 2 4 Translation & Performance Test Selection Biasing 5 4 6 3 2 Selection Next Generation Mutation Crossover Types of Evolutionary Algorithms Genetic Algorithms (Holland, 975) Representation: Bit Strings => Integer or real feature vectors Syntactic crossover (main) & mutation (secondary) Evolutionary Strategies (Recehenberg, 972; Schwefel, 995) Representation: Real-valued feature vectors Semantic mutation (main) & crossover (secondary) Evolutionary Programs (Fogel, Owens & Walsh, 966; Fogel, 995) Representation: Real-valued feature vectors or Finite State Machines Semantic mutation (only) View each individual as a whole species, hence no crossover Genetic Programs (Koza, 992) Representation: Computer programs (typically in LISP) Syntactic crossover (main) & mutation (secondary)
Evolutionary Computation Requirements Domain that supports quantitative fitness assignment Fitness function that accurately evaluates performance Representation for solutions that tolerates mutation & crossover Classic Genetic Algorithm P P2 P3 7 4 X 5 2 5 2 7 4 Travelling Salesman Problem (TSP) Given: N cities & matrix of distances between them. Find: Shortest cyclic tour that visits all cities. NP-Hard: Exponential to both find solutions & to verify solutions Heuristic Methods: Find optimal solutions when N<. Genetic Algorithm: Find good solutions for any N Applications: Network building, Delivery routing, Sequence scheduling...
Applying GAs to TSP Fitness Function: /tour-length or optimal-tour-length/tour-length Chromosome: Direct Representation: List of cities (standard approach) 7 3 25 3 2 5 4. Indirect Representation: List of next city to pull from ordered list and insert into the solution sequence 2 3 5. => 2 4 6 9 Crossover Standard Bit or Integer Cross: Only works for indirect representations Location Preserving: Children inherit, as much as possible, cities in same gene location as parents Edge Preserving: Children inherit, as much as possible, city-city edges from parents (actual edge locations in the chromosome may vary from parent to kid) *Crossover is the key element to TSP GA s - and where most research is done. Using Evolutionary Algorithms When Large, rough search spaces Satisficing or Optimization problems Entire solutions are easily generated and tested Exhaustive search methods are too slow Heuristic search methods cannot find good solutions (e.g. Stuck at local max) How Determine EA-amenable representation of solutions Define fitness function Define selection function = roulette-wheel biasing function (f: fitness -> area) Set key EA parameters: population size, mutation rate, crossover rate, # generations, etc. * EA s are easy to write, and there s lots of freeware! * Specific problems often require specific representations & genetic operators
Application Areas for Evolutionary Algorithms Optimization: Controllers, Job Schedules, Networks(TSP) Electronics: Circuit Design (GP) Finance: Stock time-series analysis & prediction Economics: Emergence of Markets, Pricing & Purchasing Strategies Sociology: cooperation, communication, ANTS! Computer Science Machine Learning: Classification, Prediction Algorithm design: Sorting networks Biology Immunology: natural & virtual (computer immune system) Ecology: arms races, coevolution Population genetics: roles of mutation, crossover & inversion Evolution & Learning: Baldwin Effect, Lamarckism Artificial Life Biology = study of carbon-based life life as we know it Alife = study of the dynamics of living systems, regardless of substrate. life as it could be Substrates: abstract chemistries, logical networks, cellular automata, abstract ecosystems, emulated computers..
Emergence & Self-Regulation The signal feature of life is not the carbon-based substrate...(but)...that the local dynamics of a set of interacting entities (e.g. molecules, cells, etc.) supports an emergent set of global dynamical structures which stabilize themselves by setting the boundary conditions within which the local dynamics operates (Charles Taylor, biologist, UCLA) Global Structure Constraints Emergence Agents Properties of Alife Systems Synthetic: Bottom-up, multiple interacting agents Self-regulating: No global/centralized control. Self-Organizing: Global structure is emergent. Adaptive: Learning and/or evolving Complex: On the edge of chaos; dissipative
Why Study Alife? Understanding Emergent Phenomena Synthetic approaches -vs- analytic reductionism Chaos, complexity, self-organization Biological Research Test effects of local behaviors upon populations Genetic Engineering Computer Science Nanotechnology, Animation AI: Intelligence Architectures, Evolutionary Computation Educational Toolkits: Social systems (SimCity) Ecosystems (SimLife, SimEarth), Economical systems What s a living system? (Capra, The Web of Life (996) Pattern: Autopoietic Network Self-bounded Self-generating Self-perpetuating Structure: Dissipative Far From Equilibrium Edge of Chaos Self-Organized Criticality Process: Cognition Embodiment of pattern within structure Life & Cognition are inseparable
Fra første leksjon: KUNSTIG INTELLIGENS AI - Artificial Intelligence Foresltåtte definisjoner Den delen av informatikk-feltet som dreier seg om automatisering av intelligent adferd. Det som kunstig intelligens forskerne driver med. "Det som datamaskiner ikke kan". Generell men ullen Pragmatisk Lite informativ Vitenskapelig vinkling: Studiet av intelligente systemer relatert til datamaskinelle prosesser. Seriøs men todelt Teknologsk vinkling: Utvikle smartere datasystemer Kunstig intelligens - revidert definisjon: Kunstig intelligens er studiet av de underliggende mekanismene for intelligent adferd, gjennom konstruksjon og testing av systemer som realiserer slike mekanismer.
Fundamentals - The knowledge level LEVELS OF SYSTEM DESCRIPTION Knowledge Level Functional Level Physical Level THE KNOWLEDGE LEVEL IN AI: A. Newell: "There exists a distinct computer system level, lying immediately above the symbol level, which is characterized by knowledge as the medium and the principle of rationality as the law of behavior." Knowledge level Medium: Bh. laws: Symbol level Medium: Bh. laws: Knowledge Principle of Rationality Programs, data structures Sequential interpretation of programs Register-transfer level Medium: Bit vectors Bh. laws: Paralell logic Logic circuit level Medium: Bh. laws: Bits Boolean algebra Electrical circuit level Medium: Voltage/current Bh. laws: Ohm's law, Kirchhoff's law Electronic device level Medium: Electrons Bh. laws: Electron physics
Kunstig intelligens som empirisk vitenskap Det kunnskapsbaserte paradigmet (symbolprosesserende metoder) Fysisk symbolsystem hypotesen Den nødvendige og tilstrekkelige betingelse for at et fysisk system kan oppvise intelligent adferd, er at det er et fysisk symbolsystem. nødvendig?, tilstrekkelig? Utfordringer til det kunnskapsbaserte paradigmet Nevrale nett, konneksjonisme Evolusjonære, adferdsbaserte metoder (subsymbolske metoder) (sub/ikke-symbolske metoder) erstatning av eller tillegg til kunnskapsbaserte metoder? Felles for alle: Den empiriske forskningsmetode dvs. at datamaskin-programmer er eksperimenter: En forsøker å forstå intelligent adferd ved å - foreslå modeller for representasjon/problemløsning/læring - utvikle metoder og bygge systemer som realiserer dem - teste og evaluere resultatet - revidere de opprinnelige modellene og/eller enkeltmetodene - osv.
Gir opphav til 3 generelle forskningstilnærminger: - Teoretisk, analytisk rettet - Design- og modelleringsrettet - Konstruksjons- og implementasjonsrettet. Symbolprosesserende metoder Metodologisk basis Objekter og fenomener i den reelle verden kan representeres som symbolstrukturer i datamaskiner. Søkemekansimer - spesielt heuristiske metoder - opererer over symbolstrukturene, og muliggjør kognitive prosesser (persepsjon, problemløsning, læring, resonnering). Separasjon av kognisjon og kognitive arkitekturer fra dens spesielle fysiske realisering. Kalles ofte 'funksjonalisme'.
2. Sub- og non-symbolske metoder Metodologisk basis ANN (artificial neural networks): Implisitt kunnskap er distribuert i et nettverk av sammenkoblede noder, og intelligent adferd oppstår som resultat av oppretting, styrking, svekking og nedkobling av forbindelser mellom nodene. EC (evolutionary computation): Implisitt kunnskap er bitstrenger eller andre sekvenser som konkurrerer om å overleve og å få bidra til videre utvikling av intelligent adferd. AL (artificial life): Intelligent adferd utvikles fra enkle basismekanismer som styrkes, endres, forsvinner, eller kombineres avhengig av stimulus fra omverdenen. Generelt for all AI To prinsipielt forskjellige måter å utvikle intelligent oppførset på: bunn-opp dvs. fra data, observasjon, interaksjon i omverden topp-ned dvs. fra en initiell modell av omverden Mye oppmerksomhet rundt: -> hvordan kombinere de to?
Vitenskapelig <-> ingeniørmessig vinkling Vitenskapelige studier innen AI - har økt forståelse av fenomenet intelligens som generelt mål - er koblet til utvikling av praktiske applikasjoner ved at - problemstillinger i verden gir input til forskningshypoteser - utviklingen av praktiske applikasjoner blir endel av den eksperimentelle basis for metodeutviklingen - forskningen gir resultater som benyttes for å bygge bedre og mer nyttige datamaskinsystemer Kognitiv vitenskap (Cognitive Science) Samlebetegnelse for tverrfaglig fagområde for studiet av kognitive prosesser ( tenkning ) i mennesker - og andre komplekse systemer Kombinerer innsikt og metoder fra områdene - informatikk (AI, HCI) - psykologi (kognitiv psykologi) - filosofi (epistemologi) - lingvistikk (setningsanalyse, språkforståelse) - nevro-vitenskap (kognitiv neuroscience) - antropologi (kognitiv antropologi)
Kognitiv vitenskap (Cognitive Science) Basis - funksjonalisme, dvs. kognitive prosesser kan realiseres i ulike fysiske systemer - computasjonalisme intelligens kan modelleres og/eller realiseres i komputasjonelle modeller - dvs. i datamaskiner Nyere retning - situated cognition intelligens kan ikke løsrives fra situasjonen den oppstår og utøves i - modeller konstrueres I interaksjon med omgivelsene AI som vitenskap - åpne spørsmål Representasjonell ubestembarhet - hvordan finne en god representasjon av et problem? Fysisk symbolsystem antagelsen - vs. embodyment and situatedness? Behovet for falsifiserbare modeller - under hvilke forhold virker ikke metoden? Tolkning av mening - begrenset semantisk tolkning vs. pragmatikk? Begrensninger i den vitenskapelige metode - har ført oss langt, men komme vi langt nok?