PDF - Version der Ausarbeitung

Werbung
Einführung in die Künstliche Intelligenz
Christian Ergh
March 1, 2010
Contents
1 Einleitung
1.1 Geschichte und Herkunft . . . . . . . . . . . . . . . . .
1.1.1 Altertum . . . . . . . . . . . . . . . . . . . . .
1.1.2 Übergang zur Moderne . . . . . . . . . . . . .
1.1.3 Moderne . . . . . . . . . . . . . . . . . . . . . .
1.2 Das Bild von KI . . . . . . . . . . . . . . . . . . . . .
1.3 Definitionen von KI . . . . . . . . . . . . . . . . . . .
1.3.1 Definition von Bellman, 1978 . . . . . . . . . .
1.3.2 Definition von Charniak und McDermott, 1985
1.3.3 Definition von Rich und Knight, 1991 . . . . .
1.3.4 Definition von Luger und Stubblefield, 1993 . .
1.3.5 Fazit zu den Definitionen . . . . . . . . . . . .
1.4 Der Turing Test . . . . . . . . . . . . . . . . . . . . . .
1.5 Geschichte der KI-Forschung . . . . . . . . . . . . . .
1.6 Was kann eine KI heute? . . . . . . . . . . . . . . . .
1.6.1 Autonomes planen und terminieren . . . . . . .
1.6.2 Spiele . . . . . . . . . . . . . . . . . . . . . . .
1.6.3 Autonome Kontrolle . . . . . . . . . . . . . . .
1.7 Fazit Geschichte, Forschung und aktueller Stand . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
2
3
3
3
3
4
4
5
5
5
6
6
6
7
7
7
7
8
8
2 Logik
2.1 Wissen . . . . . . . . .
2.1.1 Ausagenkalkül
2.2 Ein Beispiel in Prolog
2.3 Verfahrenstechnik . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
8
9
10
10
11
3 Suchverfahren
3.1 Beispiele zu Suchproblemen
3.1.1 Türme von Hanoi . .
3.1.2 Wegberechnung . . .
3.1.3 8-Puzzle . . . . . . .
3.1.4 8 Damen Problem .
3.2 Gängige Suchverfahren . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
12
12
12
13
13
14
14
.
.
.
.
.
.
.
.
1
Christian Ergh
3.2.1
3.2.2
3.2.3
3.2.4
3.2.5
Einführung KI
MatNr 958418
Tiefensuche . . . . . . . . . . . .
Breitensuche . . . . . . . . . . .
Heuristische Verfahren, A∗ -Suche
Hill Climbing Algorithmus . . . .
Genetische Algorithmen . . . . .
4 Neuronale Netze
4.1 Vergleich mit dem Menschen .
4.2 Idee für Neuronale Netze . . . .
4.2.1 Vernetzungsarten . . . .
4.2.2 Kohonen Map . . . . . .
4.3 Lernen bei Neuronalen Netzen
4.3.1 Backpropagation . . . .
4.3.2 Competetive Learning .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
14
15
15
16
16
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
16
16
17
18
18
19
19
21
5 Fazit
22
6 Anhang
23
List of Figures
1
2
3
4
5
6
7
8
1
Beispiel der Türme von Hanoi [wik] . . . . . .
Beispiel für das 8-Puzzle [Kre09] . . . . . . . .
Beispiel für das 8-Damen Problem [Kre09] . .
Schematische Darstellung eines Neurons [wik] .
Konzept einer Kohonen-Map [Kre09] . . . . .
Konzept zu Backpropagation [Kre09] . . . . .
Einfaches Beispiel zu Backpropagation [Kre09]
Veranschaulichung zu Backpropagation [Kre09]
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
12
14
15
17
19
20
20
21
Einleitung
Die Phantasie des Menschen beschäftigt sich schon seit langem mit dem Gedanken,
autonome Automaten zu erschaffen, die selbstständig handeln und denken können.
In der Frühgeschichte waren es Legenden, später Geschichten, dann die Literatur
und schließlich heute der Film. Erst in unserer Zeit entstand jenes Forschungsgebiet, das wir heute als Künstliche Intelligenz (KI) bzw.. Artificial Intelligence
(AI) kennen. Was eine künstliche Intelligenz zu leisten vermag, und was nicht,
und was das alles mit den Geschichten zu tun hat ist Gegenstand dieser Ausarbeitung zu dem Vortrag ”Eine Einführung in die künstliche Intelligenz” vom 02.
Dezember 2009 an der Hochschule Rhein-Main im Rahmen des Fachseminars
bei Professor Linn.
HS-RM
2
WS2009/2010
Christian Ergh
1.1
Einführung KI
MatNr 958418
Geschichte und Herkunft
1.1.1
Altertum
Um die Entwicklung der künstlichen Intelligenz und ihr Bild in der Öffentlichkeit
verstehen zu können, muss man zunächst ihre Herkunft betrachten. Schon im
Altertum gab es die Vorstellung von Wesen die künstlich erschaffen waren, nicht
lebten sondern mechanische Konstrukte waren. So gab es in der griechischen
Mythologie den Gott der Schmiedekunst Hephaistos, der in seiner Schmiede
mechanische Helfer hatte, die autonom agieren konnten, die sogenannten Automaton, einen goldenen Mann und eine goldene Frau. Diese künstlichen mechanischen Wesen waren in der Lage eigenständig zu handeln, selbst zu denken,
so die Legenden [Sto80] .
1.1.2
Übergang zur Moderne
Mit der technischen Revolution änderten sich auch die Phantasien von Künstlicher
Intelligenz, aber auch zu diesem Zeitpunkt konnte von einer existierenden künstlichen
Intelligenz keine Rede sein. So war im 19. Jahrhundert künstliche Intelligenz in
ihren einfachsten Formen und Ideen in der Literatur präsent, oft verbunden mit
der Frage nach künstlichem Leben, das durch Menschenhand erschaffen wurde.
Am prominentesten ist hier wohl Frankensteins Monster.
1.1.3
Moderne
In der Moderne wurden die Vorstellungen der Autoren konkreter. Denkende
Maschinen in verschiedensten Ausführungen kamen in der Literatur und im
Film vor. Zu Beginn noch mehr als klarer und logischer denkendes Wesen
als der Mensch selbst, nicht Emotionen und Geschichte unterworfen, reiner und
verlässlicher. So zum Beispiel dargestellt in dem Film ”The Day the Earth stood
still” von 1951, in dem die Lebewesen der Galaxis eine Rasse von Robotern schuf,
ausgestattet mit künstlicher Intelligenz, und genügend Macht um als unbestechliche Sicherheitsstreitmacht über die Galaxis zu wachen. Auch wenn sich verschiedene Lebewesen immer wieder gegen jede Vernunft gegenseitig auslöschen
wollen, so besteht diese Gefahr in diesem Szenario mit der Roboterstreitmacht
nicht.
Auch Sir Isaac Asimov, einer der großen Science Fiction Autoren des 20.
Jahrhundert, stellte die künstliche Intelligenz als etwas positives dar, wie zum
Beispiel in seinen Büchern ”Caves of Steel” [Asi54] oder ”Robots of Dawn”
[Asi83]. Immer ist der Mensch die Quelle des Unheils. Die künstliche Intelligenz,
beherbergt in Robotern, ist unbestechlicher, logischer, und oft auch moralischer
als der Mensch selbst, somit eigentlich der bessere Mensch.
HS-RM
3
WS2009/2010
Christian Ergh
Einführung KI
MatNr 958418
Es wird jedoch in der modernen Literatur und vor allem im Film auch ein
anderes Bild von künstlicher Intelligenz gezeichnet, das sich viel mehr als das
positive in den Gedanken der Menschen festgesetzt hat. Die Maschine als Bedrohung, die, wenn sie zu intelligent wird, sich von den Beschränkungen durch
die Menschen los sagt, die Menschheit als eine Bedrohung oder Konkurrenten
wahrnimmt, und die Menschheit angreift wenn nicht sogar auslöscht. Als eine
der berühmtesten künstlichen Intelligenzen die sich gegen ihre Schöpfer wendet
wäre HAL9000 zu erwähnen, aus dem Film ”2001, Odyssee im Weltraum” aus
dem Jahr 1968. Kurz gesagt hat man dem Rechner als Direktive die absolute
Priorität der Missionserfüllung gegeben. In kalter Computerlogik, aber auch
mit der vollen Effizienz einer künstlichen Intelligenz, stellt HAL die Missionserfüllung auch über das Leben der Menschen an Bord des Raumschiffes. Das
rote Kameralinsen mit dem HAL seine Umgebung beobachtet wird nach 1968 in
vielen Filmen zu sehen sein, synonym für ”böse” Maschinen. Viele andere Filme
mit künstlicher Intelligenz folgten, im seltensten Fall sind die Maschinen in einer
positiven Rolle zu sehen. Filme wir Terminator 1-3, Matrix, Resident Evil und
ähnliche überwiegen stark gegenüber Filmen wie AI oder Der Millennium Mann.
1.2
Das Bild von KI
Auf Basis dieser Entwicklung in den Medien ist das Bild von künstlicher Intelligenz zu sehen, das heute in der Öffentlichkeit vorherrscht. Die meisten Menschen
glauben an eine Gefahr, die von künstlicher Intelligenz ausgehen würde, so man
sie denn entwickeln würde. Insbesondere ist der glaube verbreitet, das solche
intelligenten Systeme bereits existieren. Fundiertes Wissen ist kaum vorhanden,
es entstehen eher Assoziationen mit dem von Arnold Schwarzenegger gespielten
Terminator. Insgesamt ist das Bild von künstlicher Intelligenz ein furchtsames,
eines von einer Bedrohung für die Menschheit. Auf Basis der Entwicklung in
den Medien ist diese Einstellung verständlich, allerdings hat dies nichts mit den
derzeitigen Forschungen und Entwicklungen auf dem Gebiet der künstlichen Intelligenz zu tun. Es stellt sich also die Frage, was künstliche Intelligenz eigentlich
wirklich ist.
1.3
Definitionen von KI
Ein erster Ansatz künstliche Intelligenz in Forschung und Wissenschaft zu verstehen ist, sich zunächst die formellen Definitionen des Begriffes anzusehen. Im
Fall von künstlicher Intelligenz gibt es allerdings nicht eine allgemeingültige
Definition, sondern mehrere anerkannte Definitionen, die allerdings meines Erachtens alle mehr oder weniger unpräzise sind. Dennoch sind es die in der
Literatur angeführten Definitionen. Diese Ungenauigkeit ist wahrscheinlich auf
die Problematik zurück zu führen, überhaupt Intelligenz zu definieren. Dennoch
seien die entsprechenden Definitionen hier angeführt.
HS-RM
4
WS2009/2010
Christian Ergh
1.3.1
Einführung KI
MatNr 958418
Definition von Bellman, 1978
Richard Ernest Bellman war ein bekannter Mathematiker, zu jener Zeit waren
es noch Mathematiker und andere Naturwissenschaftler, die sich mit Informationstheorie und Programmierung beschäftigten. Richard E. Bellman ist insbesondere bekannt für seine Arbeiten zur dynamischen Programmierung. Offensichtlich war er auch im Gebiet der künstlichen Intelligenz tätig, und eine
der frühesten Definitionen die in der Literatur angeführt wird ist die seine.
The automation of activities that we associate with human thinking,
activities such as decision-making, problem solving, learning.[Bel78]
Die Definition ist allerdings sehr unpräzise, unter anderem redet sie von ”Assoziationen mit menschlichem Denken”, sprich was auch immer sich irgendwer
unter menschlichem Denken so vorstellt.
1.3.2
Definition von Charniak und McDermott, 1985
Ein Professor der Brown Universität (einer privaten Universität in den USA,
Rhode Island), Professor Eugene Charniak, gab 1985 zusammen mit Professor
Drew McDermott von der Yale Universität ein Buch über künstliche Intelligenz
heraus. Beide Lehrstühle sind im Bereich künstliche Intelligenz anzusiedeln.
The study of mental faculties through the use of computational
models.[CM85]
Mental faculties - also geistige Fähigkeiten. Die Definition sagt also, dass man
irgendwelche geistigen Fähigkeiten mit irgendwelchen rechnerischen Modellen
untersucht. Auch hier ist klar zu erkennen das die Definition im besten Fall
nicht zufriedenstellend ist, im schlimmsten unbrauchbar und mangelhaft.
1.3.3
Definition von Rich und Knight, 1991
Tom Knight ist ein Forscher und Professor am MIT Computer Science and
Artificial Intelligence Laboratory, Elaine Rich eine Informatik Professorin an
der University of Texas in Austin, Texas, USA. In ihrem gemeinsamen Buch
definierten die beiden das Forschungsgebiet der künstlichen Intelligenz wie folgt:
The study of how to make computers do things at which, at the
moment, people are better.[KR91]
Auch diese Definition lässt leider sehr zu wünschen übrig. Wo liegt der Fokus,
um was geht es eigentlich, all dies und mehr deckt diese Definition nicht ab.
Fußball spielen können Computer nicht, Menschen schon, aber darum geht
es offensichtlich nicht. Die Verwendbarkeit, auch wenn die wissenschaftliche
Gemeinde sie nutzt, kann sehr in Frage gestellt werden.
HS-RM
5
WS2009/2010
Christian Ergh
1.3.4
Einführung KI
MatNr 958418
Definition von Luger und Stubblefield, 1993
Die letzte der gängigen Definitionen kommt von George F. Luger, einem Professor der University of New Mexico, sowie William Stubblefield, der an den
Sandia National Laboratories als Wissenschaftler arbeitet, zuvor als Professor
tätig war.
The branch of computer science that is concerned with the
automation of intelligent behaviour.[?]
Auch hier ist keine klare Definition zu finden. Wie auch bei den vorhergehenden
Definitionen wird auch hier abstrakt von ”Intelligentem Verhalten” geredet,
ohne allerdings diesen Begriff klar festzulegen.
1.3.5
Fazit zu den Definitionen
Keine der gängigen Definitionen zu künstlicher Intelligenz kann als zufriedenstellend betrachtet werden. Alle sind sehr ungenau, und scheitern bei der Frage
nach der Definition von Intelligenz. Um diese Frage bezüglich einer Maschine
zufriedenstellend beantworten zu können bleibt nur der Vergleich mit dem Menschen, was uns zu dem Turing Test führt.
1.4
Der Turing Test
Der Turing Test wurde 1950 von Alan Turing (1912-1954) vorgeschlagen. Er
wurde entwickelt um eine funktionierende und überprüfbare Methode zur Feststellung von Intelligenz zu haben. Grundsätzlich muss ein Computer um den
Test zu bestehen eine Reihe von Eigenschaften haben[RN03]:
• Kommunikationsfähigkeit in Englisch
• Eine Wissensrepräsentation mit der er speichern kann, was er weiß und
was er mitgeteilt bekommt
• Automatisiertes ziehen von Schlussfolgerungen um die gespeicherte Information nutzen zu können.
• Lernfähigkeit um sich an veränderliche Bedingungen anpassen zu können
Mit diesen Fähigkeiten soll nun folgender Test durchgeführt werden. Ein Befrager stellt über ein Interface eine Frage. Diese wird an einen Menschen und den
zu testenden Computer weitergeleitet. Sowohl der Mensch als auch der Computer erstellen eine Antwort, die zurück an den Befrager übermittelt wird. Die
Aufgabe des Befragers ist nun zu versuchen herauszufinden, welche Antwort von
dem Computer und welche von dem Menschen kommt. Kann über eine Reihe
von Fragen hinweg der Befrager den Unterschied nicht feststellen, so hat der
Computer den Test bestanden. Bis zu dem heutigen Tage ist es noch keinem
System gelungen diesen Test zufriedenstellend zu bestehen.
HS-RM
6
WS2009/2010
Christian Ergh
1.5
Einführung KI
MatNr 958418
Geschichte der KI-Forschung
Hier ein kleiner Überblick zu der geschichtlichen Entwicklung im Bereich künstliche
Intelligenz:
• 1956 Auf der Dartmouth Konferenz wird der Begriff AI geprägt
• 1957 Logic Theorist - Beweise von Sätzen aus der Aussagenlogik
• 1959 & 1967 Checker - Dame - wird gegen Menschen gewonnen
• 1959, 1963 General Problem Solver Lösung mathematischer Aufgaben
• ab 1980 Wissensintensive Phase - sogenannte ”Knowledge-based systems” übernehmen die Hauptrolle. Diese Systeme ”Wissen” bereits viel
über das Problem, entscheiden auf dieser Basis. Eine weit entwickelte
Variante davon sind Expertensysteme
Dies leitet über zu der Frage, was eine künstliche Intelligenz heute in Lage ist
zu bewältigen.
1.6
Was kann eine KI heute?
1.6.1
Autonomes planen und terminieren
Die Steuerung von mechanischen Systemen, wie zum Beispiel Robotern, ist seit
langem ein Thema in der Forschung zu künstlicher Intelligenz. Der Wunsch ist,
das man unter bestimmten Parametern einen Roboter auf eine Mission senden
kann, und dieser auf Veränderungen der Umgebung angemessen reagieren kann.
Die NASA entwickelte für ihre Sonde Deep Space 1 ein autonomes System, das
die Planung und Durchführung von Experimenten an Bord der Sonde kontrollierte. Dabei konnte das Programm auf sich verändernde Parameter reagieren.
1.6.2
Spiele
Im Bereich der Spiele kann unter festen Bedingungen ein Computer gegen einen
Menschen antreten. Dies ist sowohl in modernen Spielen wie Ego-shooter der
Fall, in der der Computer den Gegner des Menschen durch die Feuergefechte
steuert, als auch in klassischen Spielen wie Mühle oder Schach. Im Jahr 1997
konnte zum ersten mal ein Computerprogramme einen Schachweltmeister schlagen, und zwar der IBM Deep Blue gegen Garry Kasparov 3.5 zu 2.5
HS-RM
7
WS2009/2010
Christian Ergh
1.6.3
Einführung KI
MatNr 958418
Autonome Kontrolle
Wie schon bei dem autonomen planen und terminieren geht es um Systeme die in
einen Einsatz geschickt werden. Allerdings ist hier die Frage die Steuerung durch
das Gelände oder den Raum. Ein Expertensystem namens ALVINN wurde
trainiert um ein Auto zu steuern. Ein speziell dafür gebautes Auto wurde 2850
Meilen (4586 km) durch die USA geschickt, wobei es 98% der Zeit die Kontrolle
über das Fahrzeug hatte. Einerseits bedeutet dies, dass das Expertensystem
den größten Teil der Zeit erfolgreich war. Andererseits könnte man die Zahlen
auch in der Art interpretieren, dass das Fahrzeug alle 50 km in einen Unfall
gefahren wäre.
1.7
Fazit Geschichte, Forschung und aktueller Stand
Das Bild in der Öffentlichkeit von künstlicher Intelligenz ist geprägt durch phantastische Geschichten, sogar Legenden aus dem Altertum. Filme über diese
denkenden Maschinen sind nur die Fortsetzung dieses alten Themas. Mit den
realen Kapazitäten und Möglichkeiten von dem was im Forschungsgebiet der
künstlichen Intelligenz behandelt wird, hat dies nichts zu tun. Hier geht es um
Logik, Suchverfahren, lernende Systeme unter ganz bestimmten Bedingungen
und ähnliches. Auf diese einzelnen Bereiche der Forschung und Entwicklung
wird im folgenden näher eingegangen.
2
Logik
Der erste und zugleich älteste Bereich der Forschung über künstliche Intelligenz
ist der der Logik. Diese hat ihre Ursprünge bereits bei Aristoteles, der versuchte ”richtiges Denken” in Regeln zu erfassen. Diese sogenannten Sylogismen
(logische Schlüsse) lieferten immer korrekte Schlussfolgerungen, vorausgesetzt
man verfügte über korrekte Voraussetzungen. Ein Beispiel wäre: Sokrates ist
ein Mensch, alle Menschen sind sterblich, daher ist Sokrates sterblich. Diese
Gesetze des Denkens sollten die Funktionen des Geistes beherrschen, und so
wurde das Studium dieser Regeln der Grundstein der Logik.[RN03]. Allerdings
hat sich erst in jüngeren Vergangenheit daraus ein Forschungszweig entwickelt,
der in die Bereiche simulierter bzw. künstlicher Intelligenz vor stößt. Allerdings
ist auch heute, wie schon bei Aristoteles, das Wissen die Ausgangsbasis.[Kre09].
Es stellt sich demnach die Frage, was Wissen eigentlich ist, wenn es denn die
Basis für unsere Entscheidungen, seien sie nun menschlich oder künstlich Intelligent, darstellt.
HS-RM
8
WS2009/2010
Christian Ergh
2.1
Einführung KI
MatNr 958418
Wissen
Im Bezug darauf was Wissen ist gibt es wahrscheinlich so viele Ansichten wie
es Leute gibt, die glauben etwas zu wissen. So beschrieb Emanuel Kant Wissen als ”Ein sowohl subjektiv als auch objektiv zureichendes Fürwahrhalten.” was uns hier jedoch nicht weiter hilft. Wir benötigen eine strukturelle Beschreibung von Wissen. Am besten lässt sich Wissen durch den folgenden Aufbau
charakterisieren:
Zeichen + Syntax ⇒
Daten → Daten + Semmantik ⇒
Inf ormationen → Inf ormationen + P ragmatik ⇒
W issen → W issen + Schlussf olgerungen ⇒
Handlungen
Um nun mit diesem Wissen arbeiten zu können, benötigen wir eine symbolische Wissensrepräsentationsformalismus. Grundlage bilden hier die Formalen
Sprachen.
Definition: Formale Sprachen Sei Σ ein Alphabet. Eine formale Sprache
über Σ ist jede beliebige Teilmenge von Σ∗ [Sch92].
Ein Alphabet ist hierbei nicht notwendigerweise als einzelnes Zeichen zu sehen. Es können auch ganze Begriffe sein, deren Bedeutung für den Betrachter
offenkundig ist, oder dies je nach Problemstellung zumindest sein sollte. Wir
setzen also für das Alphabet ein Vokabular ein, das die wesentlichen Konzepte
der realen Welt abbildet. Hieraus wird eine Wissensbasis erstellt, die das Vokabular verwendet und die Regeln für Formale Sprachen beachtet. Aus dieser Wissensbasis lassen sich nun mit Hilfe eines sogenannten Inferenzkalküls Schlussfolgerungen ziehen. Beispiele für solche Methoden sind die Aussagenlogik, die
Hornlogik und die Prädikatenlogik. Beispielhaft sei hier das Aussagenkalkül
angeführt.
HS-RM
9
WS2009/2010
Christian Ergh
2.1.1
Einführung KI
MatNr 958418
Aussagenkalkül
Nach [TW94]: Das Aussagenkalkül besteht aus den Grundzeichen desselben, die
bestehen aus
• Aussagenvariablen: p0 , p1 , p2 , ...
• Konnektoren: ¬, ∨, ∧, →, ↔
• Technischen Zeichen wie ( , ).
Des weiteren Bildungsregeln für Ausdrücke oder auch Formeln. Formel werden
mit Hilfe der Grundzeichen nach folgenden Regeln gebildet:
• Jede Aussagenvariable selbst ist auch ein Ausdruck
• Sind ϕ, ψ Ausdrücke, dann sind auch die Kombinationen von ϕ, ψ mit den
Konnektoren Ausdrücke.
• Die Menge der Formeln ist die kleinste Menge mit den beiden obigen
Eigenschaften.
Man kann sich darauf einigen, dass überflüssige Klammern weggelassen werden
können.
Das Inferenzkalkül besteht nun daraus, dass von einem in der Sprache definierten
Startpunkt aus die Anfrage gestartet wird. Man ersetzt nun nach den gegebenen Regeln die Variablen, bis nur noch elementare Einheiten die nicht mehr
weiter ersetzt werden könne vorhanden sind, und versucht dabei, die Anfrage
zu beweisen.
Diese Methodik lässt sich auch auf den Computer übertragen, so umgesetzt
für die etwas restriktivere Hornlogik in zum Beispiel Prolog.
2.2
Ein Beispiel in Prolog
Prolog entstand 1972 und ist bis Heute die populärste logische Programmiersprache. Sie setzt die Hornlogik um und arbeitet rein mit Regeln und Fakten.
Sie wird zum jetzigen Zeitpunkt für viele Zwecke eingesetzt wie zum Beispiel
Beweisführungen, Expertensysteme oder auch ihren ursprünglichen Zweck, der
Verarbeitung von natürlicher Sprache. In dem nun folgenden Beispiel werden
Familienverhältnisse beschrieben, die Beispielanfrage fragt nach den Eltern von
Pat, wobei natürlich nur die in der Wissensbasis hinterlegten Elternteile als
Ergebnis erscheinen können.
HS-RM
10
WS2009/2010
Christian Ergh
Einführung KI
MatNr 958418
grosseltern(Person,Enkel):- eltern(X,Enkel),eltern(Person,X).
mutter(Person,Kind):- eltern(Person,Kind),weiblich(Person).
schwester(Person,Schwester):eltern(X,Person),eltern(X,Schwester),weiblich(Schwester),\ ==(Person,Schwester).
nachfahr(Nach,Vor):- eltern(Nach,Vor).
nachfahr(Nach,Vor):- eltern(Nach,Nachgen),nachfahr(Nachgen,Vor).
vorfahr(Kind,Vor):- eltern(Vor,Kind).
vorfahr(Kind,Vor):- eltern(Vorgen,Kind),vorfahr(Vorgen,Vor).
eltern(tom,bob).
eltern(pam,bob).
eltern(tom,liz).
eltern(bob,ann).
eltern(bob,pat).
eltern(pat,jim).
weiblich(pat).
weiblich(liz).
weiblich(ann).
weiblich(pam).
maennlich(bob).
maennlich(tom).
maennlich(jim).
Beispielanfrage ? − eltern(X, pat).
X = bob;
false.
2.3
Verfahrenstechnik
Bei all diesen Verfahren kommt es zu einem Suchen und Ersetzen in einem
Baum, der je nach Art der Regeln unterschiedlich viele Verzweigungen hat. Es
gibt nun verschiedene Methoden, diese Ersetzungen vorzunehmen um zu einem
Ergebnis zu kommen. Letztendlich handelt es sich jedoch um eine Suche in
einem Baum. Diese und andere Suchverfahren sind der nächste große Bereich
der Forschung bei künstlicher Intelligenz
HS-RM
11
WS2009/2010
Christian Ergh
3
Einführung KI
MatNr 958418
Suchverfahren
Auf den ersten Blick wundert man sich. Suchen und künstliche Intelligenz? Etwas trivialeres als eine Suche gibt es wohl kaum. Der erste Blick täuscht. Um ein
Problem mittels eines Suchverfahrens zu Lösen sind viele Schritte notwendig,
und es bleibt immer die Frage des Rechenaufwands. Eine Modellierung des
Problems ist notwendig, um das Problem überhaupt rechnerisch erfassen zu
können. Dann ist ein Startzustand und ein Zielzustand zu definieren, und Operatoren um einen Zustandswechsel herbeiführen zu können. Letztendlich ist
noch ein Maß zu definieren, das den Aufwand in irgend einer Art und Weise
beschreibt, im Allgemeinen die Pfadkosten. [Kre09]
3.1
Beispiele zu Suchproblemen
Viele Probleme lassen sich so modellieren, das sie über Suchverfahren lösbar
sind. Einige möchte ich hier exemplarisch näher erläutern:
3.1.1
Türme von Hanoi
Bei den Türmen von Hanoi geht es darum, einen anfänglich sortierten Turm
von Holzscheiben der auf einem Stab aufgestapelt ist auf einen anderen Stab
umzusetzen und dort wieder die selbe Sortierung zu haben. Gesetzt werden
kann von jedem Stab auf jeden Stab, es stehen drei Stäbe zur Verfügung. Der
Figure 1: Beispiel der Türme von Hanoi [wik]
Startzustand ist wie in dem Bild zu sehen definiert. Eine einfache Modellierung
des Problems wäre ein sortierter Stack, der mit Hilfe eines zweiten Stacks auf
einen dritten bewegt werden muss, wo er dann wieder sortiert vorliegt. Ein
Übergang zwischen zwei Zuständen des Problems ist dann eine ”pop” Operation und mit dem entnommenen Element eine ”push” Operation. Theoretisch
kann man nun von jedem Zustand aus alle möglichen Operationen ermitteln,
und somit eine Baumstruktur aufbauen, wobei gewisse Pfade früher zu dem
gewünschten Ziel führen, andere später. Je mehr Elemente in dem anfänglichen
HS-RM
12
WS2009/2010
Christian Ergh
Einführung KI
MatNr 958418
Stack sind, desto komplexer wird die Aufgabe, insbesondere wird der Suchbaum
sehr schnell extrem groß, man sieht hier ein Beispiel für exponentielles Wachstum.
3.1.2
Wegberechnung
Das Problem kennt jeder aus dem Alltag. Man muss eine Reihe von Stationen abfahren oder laufen, und versucht die beste Strecke zu finden. Bei
der relativ kleinen Menge an Zielen die zu bewältigen sind, und einigen einfachen intuitiven Vereinfachungen gelingt die Lösung dieser Aufgabe meist recht
gut. Vereinfachungen sind zum Beispiel das wir Ziele die in etwa in der gleichen Richtung liegen gruppieren. Werden es viele Ziele wird das Problem
unüberschaubar. Im Alltag geben dann Randbedingungen wie der Terminplan
genügend Möglichkeiten das Problem wieder zu vereinfachen.
Im allgemeinen ist das Problem jedoch alles andere als einfach. Um es zu modellieren kann man von einer n x n Matrix ausgehen, in der die Entfernungen von
Ziel a nach Ziel b eingetragen sind, sowie eine Zahl k, unser gewünschter Maximalaufwand. Gefragt ist ob es eine Permutation π gibt, was einer Rundreise
entspricht, so dass die Summe der Entfernungen kleiner als unser gewünschter
Maximalaufwand k ist. Das Problem fällt in die Klasse der NP-Vollständigen
Probleme. Ein Suchalgorithmus würde die ideale Lösung finden, allerdings wäre
der Aufwand bei einer entsprechend großen Matrix enorm hoch. Auch hier ist ein
exponentielles Wachstum im Aufwand zu verzeichnen sowie n ansteigt.[Sch92]
3.1.3
8-Puzzle
Das sogenannte 8-Puzzle ist ein relativ leicht erklärt. Man geht von einer 3 x
3 Matrix aus, die mit Zahlen von 1 bis 8 besetzt ist, und ein Feld ist frei. Nun
wird ein in irgend einer Art sortierter Endzustand definiert, und der Spieler
muss mittels verschieben der Zahlen in das jeweilige freie Feld diese Sortierung
herstellen. Er darf dabei nur dem leeren Feld benachbarte Ziffern verschieben,
wobei nur horizontal und vertikal als benachbart gilt. Die Zustände sind demnach die aktuellen Matrizen, der Übergang das Bewegen einer Ziffer.
Auch dieses Problem hat eine einfachen Erscheinungsform, jedoch liegt auch
hier ein Problem der Klasse NP-vollständig vor. So hat das 3 x 3 Puzzle bereits
181.440 Zustände, das 4 x 4 schon 1.3 Billiarden, und das 5 x 5 1025 Zustände.
[RN03]
HS-RM
13
WS2009/2010
Christian Ergh
Einführung KI
MatNr 958418
Figure 2: Beispiel für das 8-Puzzle [Kre09]
3.1.4
8 Damen Problem
Bei dem 8 Damen Problem geht es darum, auf einem Schachbrett 8 Damen so zu
platzieren, dass sie sich gegenseitig nicht schlagen können, wobei die Damen so
ziehen können wie es nach normalen Schachregeln möglich wäre. Auch hier
ergeben sich eine Vielzahl von Möglichkeiten die Damen zu platzieren, das
Problem hat bei einem normalen Schachbrett über 1014 Zustände. Bei 100
Damen steigt diese Zahl auf astronomische 10100 Zustände, die es zu prüfen
gilt. Zustände sind alle Permutationen von Platzierungen der Damen auf dem
entsprechenden Brett.
3.2
Gängige Suchverfahren
Im allgemeinen kann man von einer Baumstruktur ausgehen, dem sogenannten
Suchbaum. Er ergibt sich aus dem Startzustand und den Übergangsoperatoren.
Nun gibt es verschiedene Möglichkeiten diesen Suchbaum zu durchlaufen. Ausgegangen wird immer von dem Startknoten, der Wurzel des Baums
3.2.1
Tiefensuche
Bei der Tiefensuche wird ein Knoten expandiert, dann der erste der expandierten
Knoten ebenfalls expandiert. Die weiteren Knoten der die bei der Expansion
entstanden sind werden erst betrachtet, wenn der Zweig des Baums der durch
den ersten Knoten entsteht keine weiteren Expansionsmöglichkeiten mehr bietet und kein Ergebnis geliefert hat. Man geht demnach erst zu den Blättern
dieses Zweigs bevor man die anderen Zweige betrachtet. Der Vorteil dieses Verfahrens ist, dass man sehr frühzeitig Ergebnisse bekommt, und dementsprechend
weniger Speicherbedarf hat, als dies zum Beispiel bei der folgenden Breitensuche
der Fall ist. Es werden alle Wege durchlaufen, um einen optimalen Weg sicher
zu stellen.
HS-RM
14
WS2009/2010
Christian Ergh
Einführung KI
MatNr 958418
Figure 3: Beispiel für das 8-Damen Problem [Kre09]
3.2.2
Breitensuche
Nachdem ein Knoten expandiert wurde, expandiert man alle Kinder die entstanden sind, bis schließlich der vollständige Baum expandiert ist. Den Optimalen weg findet man durch den Vergleich der Ergebnisse die dann alle zur
Verfügung stehen. Allerdings wird der vollständige expandierte Baum benötigt,
der Speicherbedarf entsprechend hoch.
3.2.3
Heuristische Verfahren, A∗ -Suche
Heuristische Suchverfahren sind Verfahren bei denen eine Form von Vorwissen
zum Einsatz kommt. Durch dieses Vorwissen versucht man die uniformierten
Suchen wie Tiefensuche und Breitensuche effizienter zu gestalten. Bei zum
Beispiel der A∗ -Suche hat man bei einem Knoten im Suchbaum den man schon
erreicht hat die Pfadkosten bis zu diesem Knoten. Über eine Schätzfunktion versucht man nun, die Kosten von diesem Knoten bis zu dem Zielknoten näherungsweise
zu ermitteln. Der Wert der Schätzfunktion sollte hierbei möglichst gross, jedoch
unter den wirklichen Pfadkosten liegen. Ist eine solche Schätzfunktion gegeben
ist die A∗ -Suche optimal [Kre09]
HS-RM
15
WS2009/2010
Christian Ergh
3.2.4
Einführung KI
MatNr 958418
Hill Climbing Algorithmus
Bei dem Hill Climbing Algorithmus werden die erreichten und erreichbaren
Zustände bewertet. Man versucht nun ein lokales Maximum dieser Bewertung
zu erreichen, indem man immer den Operator als nächstes anwendet, der die
größte Verbesserung der Bewertung herbeiführt. Dadurch erreicht man immer höherwertige Zustände, der Berg wird ”hinauf geklettert”. Problematisch
ist bei dieser Variante einer Suche, dass das Maximum auf das man zusteuert
nicht notwendigerweise in globales sein muss, d.h. die gefundene Lösung ist
schlussendlich nicht notwendigerweise Optimal.
3.2.5
Genetische Algorithmen
Genetische Algorithmen sind stochastische Suchverfahren, bei denen zunächst
eine ”Bevölkerung” von Lösungskandidaten zufällig erschaffen wird, z.B. Wege
einer bestimmten Anzahl Knoten durch den Suchbaum. Eine ”Fitnessfunktion”
bewertet diese Bevölkerung nun, und nur die besten dürfen sich ”fortpflanzen”.
Durch die Kombination der am höchsten bewerteten Kandidaten erhält man nun
eine neue Bevölkerung, wobei es keine reine Kombination ist sondern zusätzlich
noch die Kombination teilweise zufällig verändert wird, durch sogenannte Mutationen. Die neue Bevölkerung wird erneut auf ihre Fitness geprüft, wiederum
kombiniert, und so weiter. Im Endeffekt ist die Qualität der Fitnessfunktion
ausschlaggebend über die Qualität des Verfahrens und wie schnell sich Lösungen
finden lassen. [Fre02]
4
Neuronale Netze
Ein Netz von Neuronen - was sind Neuronen ist hier die erste Frage. Der Begriff kommt aus der Biologie, hier sind Neuronen Nervenzellen, die nicht nur im
Gehirn vorkommen. Ihr Zentrum mit Zellkern wird Soma genannt, das Axon,
ein bis zu 100 cm langer Fortsatz, dient als Datenleitung zu anderen Neuronen.
Des weiteren verfügen Neuronen über Dendriten, mit denen sie Signale anderer
Neuronen empfangen können. Die Kopplungsstelle zwischen zwei Neuronen
nennt man Synapse. Neuronen verfügen über die Fähigkeit, dass sie Verbindungen zu anderen Neuronen aufgeben können, sowie neue Verbindungen aufbauen
können [Zel00].
4.1
Vergleich mit dem Menschen
Das menschliche Gehirn verfügt über ca. 1011 Neuronen die sowohl als Schaltelement als auch als Speicher dienen.Zum Vergleich mit einem Computer kann
man die Zahl der Transistoren betrachten, eine normale CPU verfügt über 1010
Transistoren. Speicher ist bei einem Rechner separat und schwer Vergleichbar
aufgrund der verschiedenen Speicherarten. Jedoch arbeiten Neuronen simultan,
die Transistoren in einer CPU nur sehr bedingt. Des weiteren haben Neuronen die Option sich flexibel zu vernetzen, was bei Transistoren nicht der Fall
HS-RM
16
WS2009/2010
Christian Ergh
Einführung KI
MatNr 958418
Figure 4: Schematische Darstellung eines Neurons [wik]
ist. Schätzungen belaufen sich auf einen Geschwindigkeitsvorteil zugunsten des
Gehirns um einen Faktor 104 bis 105 [Kre09] .
4.2
Idee für Neuronale Netze
Auf Basis der biologischen Gegebenheiten ist die Idee nun, solche Neuronen
im Computer zu simulieren. Primär werden die Verbindungen zwischen den
Neuronen betrachtet, die für sich eine relativ einfache Einheit sind. Diese
Verbindungen sind veränderlich, um die Lernmöglichkeiten eines biologischen
Neurons simulieren zu können. Es gibt zur Lösung eines Problems demnach
keinen festen Algorithmus, ein Neuronales Netz stellt einen statistischen Gleichgewichtszustand dar. Neuronale Netze sind aus der Struktur von Neuronen
und ihren Vernetzungen, vor allem im Gehirn, abgeleitet.
Eine Implementierung von Neuronen stellen die McCulloch-Pitts Neuronen
dar, die sogenannten Schwellwertneuronen, die schon 1943 entworfen wurden.
Sie verfügen noch über keine Lernfunktion, sondern sind ein reines Berechnungsmodell. Diese MCP-Neuronen haben n Eingaben und schalten ab einem
Gewissen Schwellwert. Diese sehr elementaren Neuronen wurden zu PDP-
HS-RM
17
WS2009/2010
Christian Ergh
Einführung KI
MatNr 958418
Neuronen weiter entwickelt, wobei hier anstelle eines Schwellwertes eine Schwellwertfunktion tritt. Diese Funktion wird als Gewichtsfunktion für die Eingehenden Verbindungen interpretiert. Über die Manipulation der Gewichtsfunktion
erhält man ein lernfähiges Netz, wenn man feste Regeln für diese Manipulation
finden kann.
4.2.1
Vernetzungsarten
Auch die Art der Vernetzung der Neuronen untereinander spielt eine große Rolle.
So gibt es mehrere Standardvernetzungen die man gängiger weise nutzt. Zum
einen wäre hier das Feed-Forward-Netz zu erwähnen. Man definiert zwei oder
mehr ”Ebenen” von Neuronen, und jedes Neuron ist mit jedem Neuron der
Folgeebene vernetzt. Andere Vernetzungen existieren nicht bei einem FeedForward-Netz. Andere Arten der Vernetzung können zu einem völlig anderen
Verhalten führen, wie zum Beispiel bei der Kohonen Map, auf die im folgenden noch eingegangen wird. Die vorwärts Vernetzung an sich kann auch unterschiedlich realisiert sein, wenn man nicht ein Feed-Forward-Netz verlangt.
So lassen sich Ebenen überspringen, oder auch Verbindungen auslassen. Beides wird im Allgemeinen nicht für sinnvoll erachtet. Eine Verbindung die im
Design nicht vorhanden ist, wird auch in einem Lernprozess nicht hinzukommen. Der Abbau einer Verbindung wäre die Gewichtung dieser Verbindung auf
Null zu setzten, dies ist demnach möglich. Somit ist die vollständige Vernetzung von Ebene zu Ebene sinnvoll. Das Überspringen von Ebenen bedeutet
einen Informationsverlust in der übersprungenen Ebene, daher ebenfalls wenig
empfehlenswert. [Zel00]
4.2.2
Kohonen Map
Die Kohonen-Map ist dazu gedacht, das sie sich selber organisiert. Ebenfalls ein neuronales Netz, werden über die Gewichtsfunktionen und das oben
beschriebene Verfahren des Nullsetzens einer Verbindung erst zur Laufzeit entsprechende Strukturen im Neuronalen Netz erzeugt. Dies Bedeutet im Umkehrschluss, dass alle Verbindungsmöglichkeiten vorhanden sein müssen. Zwar werden auch bei einer Kohonen-Map Ebenen definiert, und von Ebene zu Ebene
als Feed-Forward-Netz verbunden, jedoch werden auch die Ebenen intern vernetzt, und zwar immer mit ihren Nachbarn in der Ebene, sprich ein Neuron
hat im Normalfall 8 Nachbarn. Je nach Kohonen-Map kann dieser Wert jedoch
variieren.
Die anfängliche Gewichtung innerhalb der Ebenen ab der ersten Ebene ist
dämpfend angelegt, so dass schaltende Neuronen ihre Nachbarschaft schwächen.
Bei selbst schaltenden Neuronen ist dieser Effekt zwar vorhanden, aber nicht
sonderlich relevant. Im Gegensatz dazu wirkt sich die Verbindung zu nicht schaltenden Neuronen stark aus, das nicht schaltende Neuron verliert an Relevanz.
Auf diese Art und Weise organisiert sich das Netz letztendlich selbst.
HS-RM
18
WS2009/2010
Christian Ergh
Einführung KI
MatNr 958418
Figure 5: Konzept einer Kohonen-Map [Kre09]
4.3
Lernen bei Neuronalen Netzen
Grundsätzlich erhält ein Neuronales Netz eine Eingabe, und kann auf Basis
dieser Eingabe sich anpassen. Es gibt zwei Möglichkeiten wie sich diese Anpassung umsetzen lässt. Zum einen kann eine Entscheidung rein auf Basis der
Eingabe stattfinden, wie dies bei einer Kohonen-Map praktiziert wird. Zum anderen kann man Eingaben machen, deren korrektes Ergebnis bekannt ist, und die
Anpassung aufgrund der Differenz zwischen korrektem und errechnetem Ergebnis vornehmen.
4.3.1
Backpropagation
Backpropagation ist die zweite der oben beschriebenen Varianten, es existiert
ein ”Teaching Input” mit der das Netz trainiert wird. Die Gewichtung der
Verbindungen wird je nach Differenz zwischen gewünschtem Ergebnis und errechnetem Ergebnis angepasst.
Bei der Anpassung gibt es verschiedene Parameter die das Lernen beeinflussen. So ist die Frage wie stark sich ein einzelner Durchlauf auf die Gewichte
des Netzes auswirken, was in der Lernrate festgelegt wird. In der Vorwärtsphase
wird zunächst eine Eingabe in das Netz vorgenommen, entsprechend angesprochene Neuronen schalten. Letztendlich wird eine Netzausgabe produziert.
Diese Netzausgabe wird dann mit dem an den Ausgabeneuronen gewünschten
Ergebnis, dem Teaching Input, verglichen und mit einem rekursiven Algorithmus die neuen Gewichte im Netz berechnet. Die erste Entwicklung hier war
die Deltaregel, die allerdings nur eine Ebene zur Eingabe und eine zur Ausgabe
vorsieht. Die Verallgemeinerung der Deltaregel ist dann der Backpropagation
Algorithmus.
HS-RM
19
WS2009/2010
Christian Ergh
Einführung KI
MatNr 958418
Figure 6: Konzept zu Backpropagation [Kre09]
Figure 7: Einfaches Beispiel zu Backpropagation [Kre09]
Backpropagation im Detail Mathematisch betrachtet funktioniert der Algorithmus wie folgt: Wir betrachten die Summe der Neuronen die von der dem
Neuron j vorangehenden Schicht ausgeht, das Nettoinput am Neuron j (nach
[Kre09] ).
netj = Σi cij ai
Für die Ausgabeneuronen existiert ein Teaching Input Tj . Die Änderung der
Gewichte erfolgt durch folgende Formel, wobei η die festgesetzte Lernrate ist:
∆cij (t) = ηδj ai (t)
Falls j ein Ausgabeneuron ist (Rekursionsanfang):
δj = (Tj − aj (t))F ′ (netj )
HS-RM
20
WS2009/2010
Christian Ergh
Einführung KI
MatNr 958418
In dem Fall das j zu einem hidden layer gehört (also weder Eingabeneuron noch
Ausgabeneuron ist, Rekursionsschritt):
δj =
X
δk cij
F ′ (netj )
k
Veranschaulicht sieht dies so aus:
Figure 8: Veranschaulichung zu Backpropagation [Kre09]
4.3.2
Competetive Learning
Das Lernen ohne ein Teaching Input wird durch sogenanntes Competetive Learning realisiert, bei Vernetzungen in der Art der Kohonen Map. Die Neuronen
einer Ebene beeinflussen sich gegenseitig, beziehungsweise die Gewichtungen
der Verbindungen werden bei jedem Durchlauf angepasst. Auf diese Art und
Weise bilden sich Cluster in den Ebenen die Schalten, umgeben von nicht schaltenden Neuronen. Insbesondere wird diese Art des Lernens zur Mustererkennung genutzt. Ein schaltendes Neuron dämpft seine Umgebung in der Art, dass
ein anderes schaltendes Neuron dies zwar immer noch kann, aber ein nicht schaltendes Neuron bei einem weiteren Durchlauf es schwerer hätte, seinen Schwellwert zum schalten zu erreichen. Man erhält den Effekt der sich verkleinernden
Nachbarschaft. Die nach entsprechend vielen Eingaben verbleibenden schaltenden Neuronen zeigen die Struktur der Eingabedaten auf, durchaus auch
graphisch zu verstehen wenn die Eingabe entsprechende graphische Objekte
darstellte.
HS-RM
21
WS2009/2010
Christian Ergh
5
Einführung KI
MatNr 958418
Fazit
Der Gedanke an ein künstliches intelligentes Wesen, von Menschenhand erschaffen, hat die Menschheit schon lange fasziniert. Die derzeitige Forschung
an künstlicher Intelligenz hat mit dieser Phantasie jedoch nichts zu tun. Es
geht vielmehr darum, einfache lernende Systeme zu erstellen, beziehungsweise
vorteilhafte Algorithmen zu finden zu Problemstellungen die zuvor nicht lösbar
waren. Die Suchalgorithmen, die wir heute schon instinktiv nicht mehr der
künstlichen Intelligenz zuordnen würden, waren zum Zeitpunkt ihrer Entwicklung revolutionär, und wurden als ein großer Schritt in Richtung von denkenden
Maschinen gesehen. Der derzeitige Stand sind Programme die auf eine Varianz
in ihrer Umgebung reagieren können, allerdings nur im Rahmen dessen was die
Programmierer als möglich vorhersehen konnten. Alles in allem kann gesagt
werden, das die Entwicklung im Forschungsgebiet künstliche Intelligenz zwar
weiter voranschreitet, aber im Endeffekt es sich um komplexe Algorithmen handelt, die intelligentes Verhalten simulieren. Von einem Geist in der Maschine
kann, und wird in naher Zukunft auch, keine Rede sein.
Christian Ergh
HS-RM
22
WS2009/2010
Christian Ergh
6
Einführung KI
MatNr 958418
Anhang
References
[Asi54] Sir Isaac Asimov. Caves of Steel. Doubleday, 1954.
[Asi83] Sir Isaac Asimov. Robots of Dawn. Doubleday, 1983.
[Bel78] Richard Ernest Bellman. An Introduction to Artificial Intelligence, Can
computers think. Boyd and Fraser Publishing company, 1978.
[CM85] Eugene Charniak and Drew McDermott. Introduction to Artificial Intelligence. Addison-Wesley, 1985.
[Fre02] Alex A. Freitas. Data Mining and Knowledge Discovery with Evolutionary Algorithsm. Springer Verlag, 2002.
[KR91] Tom Knight and Elaine Rich. Artificial Intelligence. McGraw-Hill Inc.,
1991.
[Kre09] Dirk Krechel. Script Künstliche Intelligenz. Hochschule Rhein-Main,
2009.
[RN03] Stuart Russell and Peter Norvig. Artificial Intelligence, A Modern
Approach. Prentice Hall, 2 edition, 2003.
[Sch92] Uwe Schöning. Theoretische Informatik kurz gefasst. Bibliographisches
Institut Wissenschafts Verlag, 1992.
[Sto80] H.W. Stoll. Sagen des klassischen Altertums. Weltbild Bücherdienst,
1980.
[TW94] Hans-Peter Tuschik and Helmut Wolter. Mathematische Logik kurz
gefasst. Bibliographisches Institut Wissenschafts Verlag, 1994.
[wik]
www.wikipedia.com. world wide web open source.
[Zel00] A. Zell. Simulation Neuronaler Netze. Oldenbourg Verlag, 2000.
HS-RM
23
WS2009/2010
Herunterladen