Sie sind auf Seite 1von 23

KI Sprachen und Tools

Erhard Dinhobl

Inhalt Die Geschichte Sprachen KI-Software am Markt und weitere Projekte

Erste Ideen

Charles Babbage (1792-1871) Difference Machine (1823)

Analytical Engine (1834)

Geschichte
Meilenstein

1941: Erste Programmiersprache der Welt:

Plankalkl
von Konrad Zuse

Konrad Zuses Z3

Geschichte
Claude Shannon (1948)

verffentlicht die Theorie ber Kommunikation: Optimale Datenbertragung Das Bit ist geboren

John Backus (1952) Bob Patrick Owen Mock MIT (1956) Sperry Rand (1957)

entwickelt Speedcoding fr den IBM 701 Betriebssystem GM-NAA I/O System fr den IBM 704 Experimente mit Keyboards Compiler A-0 fr Univac Math-Matic Flow-Matic Schleifenkonzept implementiert auslesen von Kontonummern

Fortran ERMA (1959)

Geschichte
Cobol (1960) LISP (1960) Computerspiele (1962)

Zusammenarbeit von Computererzeugern und Pentagon


erste Programmiersprache fr KI SpaceWar von MIT-Studenten

Geschichte
ASCII (1963) Basic (1964) OOP (1965) UNIX (1969)

Vereinheitlichung des Datenaustausches einfach zu lernende PR-Sprache Anstze der objektorientierten Programmierung mit Simula

von Kenneth Thompson & Dennis Ritchie in den AT&T Labs.

Anfang der 70er

Ritchie entwickelt Programmiersprache B und dann weiter zu C

Geschichte

ATARI Video Games (1972)

von Nolan Bushnell gegrndet Erstes Video Game Pong

Pong

Prolog, Smalltalk, AnsiCobol, Pascal

Geschichte
die 80er

MS-DOS

Lotus 1-2-3 ADA83, CommonLisp C++ fr die Industrie

Entwicklung

90er bis jetzt

Java, Visual Basic C#, J#, (dotNet), Ruby

Sprachen und die Verwendung


Analyse unseres Geistes

Erfahrungswerte formalisieren und somit gesamtheitlich Verstehen

Anwendung bei Expertensystemen

Allen Newell (1982): 2 Ebenen Symbolebene (Problemlsung) XPS-Shells

Wissensebene (Daten)
Programmiersprachen

Prolog und Lisp aber auch C, C++, Java

Prolog
deklerative Sprache

Entwicklung

1972 von Alan Colmerauer und der Groupe d'Intelligence Artificielle de Luminy David Warren implementiert Kompiler Expertensysteme Wissensverarbeitung Spiele symbolische Mathematik Prototyping Constraint-Programmierung Deduktive Datenbanken

Anwendung

Prolog
Daten Fall

auto(polo). auto(jazz). auto(civic). motorrad(valkyrie). firma(honda). firma(vw). hersteller(vw, polo). hersteller(honda, civic). hersteller(honda, jazz). hersteller(honda, valkyrie).

Prolog
Daten Fall

?- auto(polo) yes -? auto(golf) no


selberhersteller(X,Y) :hersteller(H,X), hersteller(H,Y). ?- selberhersteller(valkyrie,jazz) yes -? selberhersteller(X,civic) X=civic X=jazz X=valkyrie

Prolog
Daten Fall

mann(adam). mann(tobias). mann(frank). frau(eva). frau(daniela). frau(ulrike). vater(adam,tobias). vater(tobias,frank). vater(tobias,ulrike). mutter(eva,tobias). mutter(daniela,frank). mutter(daniela,ulrike). http://www.swi-prolog.org

Prolog
Daten Fall

elternteil(X,Y) :mutter(X,Y); vater(X,Y).


vorfahr(X,Z) :elternteil(X,Z). vorfahr(X,Z) :elternteil(X,Y), vorfahr(Y,Z). erzeugungen(vw,auto,[polo,golf]). erzeugungen(suzuki,motorrad,[vanvan,bandit]).

http://www.swi-prolog.org

Lisp
Entwicklung

70er Lisp-Maschinen am MIT entwickelt Lisp-Hardware LMI - Symbolics - MIT viele Dialekte von Lisp heute: CommonLisp

DARPA

Defense Advanced Research Projects Agency (Pentagon) kaufte LISP-Maschinen fr Star-Wars

prozedurale Sprache Anwendung

genau gesagt funktional Entwicklung von KI Werkzeugen Test von Prototypen und Systeme Suchalgorithmen Interpreter

Lisp
LISP-Atome

14.5782 1000 ein-bindestrich-wort *eine-markierung* (1 3 5 7) (vw(polo, golf), honda(civi, jazz)) Infixnotation (* (+ 4 5) (+ 5 2)) (f x y) f(x, y) Liste (x y z)

Listen

Rechnen in LISP

(x y z)

Lisp
Fall

> (defun absolut-val (x) (cond ((< x 0) (* x -1)) ((>= x 0) x)))


> (absolut-val -2) 2 > () NIL http://www.ufasoft.com/lisp

KI-Software am Markt
YVE

Speichern von Unternehmenswissen

orisabase

Entwicklungsumgebung (Framesystem) Entwicklung auf Basis von Neuronalenen Netzen

Brainware

CAS

Auswertung von Videodaten zur berwachung

KI-Software am Markt

SWI-Prolog

KI-Software am Markt

UfaSoft Lisp

KI-Software am Markt
Projekt

Regelbasierte Generierung musikalischer Strukturen in der KI-Sprache Prolog

Erfahrungen aus Analyse der Sprache

System welches Regeln der Musiktheorie befolgt

Erfahrungen fr Linguistik und Musikanalyse

KI-Software am Markt
Rythmus
rythm(1/2, rythm(1/2, rythm(1/4, rythm(1/2, [1/2]). [1/4, 1/4]]). [1/8, 1/8]). [1/8, 1/8, 1/8, 1/8]).

Klang
sound(1/2, sound(1/2, sound(1/2, sound(1/2, [p, g0, g0, g0]). [dis0]). [p, f0, f0, f0]). [d0]).

g0

g0

g0

dis0 1/2

f0

f0

f0

d0 1/2

1/8 1/8 1/8 1/8

1/8 1/8 1/8 1/8

KI-Software am Markt
PureData

Grafische Programmiersprache fr interaktive Computermusik

http://www.puredata.org