in Artificial Intelligence, IT stuff, PHP, Programming

Chatterbox Challenge 2009

Seit 2001 findet jährlich die Chatterbox Challenge statt. Hier werden jedes Jahr die besten englischprachigen Chatbots ausgezeichnet. Natürlich werde ich dieses Jahr – naja, sagen wir erstmal vorsichtig – teilnehmen ;)

Einige Gesprächsauszüge meines Chatbots, seinen aktuellen Entwicklungsstand und Links zu den besten deutschsprachigen Chatbots werde ich hier dann mal veröffentlichen…

Was ist die Chatterbox Challenge?

cbc397x72

Wie bereits geschrieben wird dieser Contest jährlich veranstaltet und zeichnet die besten englischsprachigen Chatbots aus. Dabei gibt es verschiedene Kategorien:

  • Beste Bots (1.,2. und 3. Platz mit einer Medallie)
  • Populärster Bot (Alle Nutzer können 30 Tage lang abstimmen, 1. Platz mit Medallie)
  • Bester neuer Bot (1. Platz mit einer Medallie)

Organisiert wird sie von Ehab El-agizy und Wendell Cowart. Leider ist in den letzten Jahren ein Rückgang der Anmeldungen (die bis zum 15. März 2009 eingereicht werden können) zu verzeichnen. So meldeten sich zu Spitzenzeit (2004) noch 108 Chatbot-Entwickler an, während es 2008 nur noch 29 waren. Hoffentlich wird sich diese Entwicklung im nächsten Jahr nicht fortsetzen.

Doch nicht jeder Bot kann einfach so teilnehmen: Die Voraussetzungen sind:

  • Nur englischsprachige Chatbots
  • Nur ein Bot pro Person
  • Plumbe Kopien sind nicht erlaubt – auch die Alice Datenbank darf nicht genutzt werden
  • Der Bot muss der Öffentlichkeit zugänglich sein (24/7 online bzw. “downloadbar”)

Mein Chatbot

Vielleicht erinnert sich ja der eine oder andere an meinen alten Chatbot “DubbleDouble”. Dieser war relativ stumpf aufgebaut: Er suchte nach einer Antwort, die ein User ihm bereits auf die Frage gestellt hatte. Fand er keine, so gab er die Frage mit einem Fragezeichen am Ende wieder aus, und der User musste die Antwort auf diese Frage eingeben – Künstliche Intelligenz ist was anderes ;)

Dieses Jahr werde ich mit meinem neusten Chatbot an dem Wettbewerb teilnehmen. Jedenfalls plane ich das. Denn wenn der Bot an sich fertig ist, aber eben noch nicht genügend Erfahrungen im Umgang mit Usern gesammelt hat, dann werde ich vielleicht erst 2010 antreten, um in der Kategorie “Best New Bot” eine Chance zu haben. Doch ich hoffe, dass ich bis zum 15. März fertig bin. Natürlich müssen die User Englisch sprechen – wenn der Bot auf eine englische Frage mit Deutsch antwortet gibt das nur Minuspunkte.

Doch wie weit ist der Bot bis jetzt? Bisher kann er auf Matheaufgaben antworten:

Ich: What makes 234.4+2345?
Bot: 234.4+2345 makes 2579.4 according to cocker ;)

Doch er ist bereits lernfähig:

Ich: Berlin is the capital of Germany!
Bot: that was new to me…
Ich: What is the capital of Germany?
Bot: i think, the capital of germany is berlin !

Man muss jedoch eine gewisse Syntax einhalten. Fragen MÜSSEN mit einem Fragezeichen abgeschlossen werden. Alles, was sich der Bot merken soll, MUSS mit einem Ausrufezeichen enden.

Auch glaub der Bot nicht stumpf alles, was man ihm sagt: Der Bot speichert die IP des Users, der die Aussage gemacht hat, fragt kurz darauf einen User mit einer anderen IP, und speichert erst dann die Aussage als wahr. Das Beispiel oben zeigt also nur die eine Hälfte des Vorgangs…

Bis Ende dieses Jahres (was nicht mehr ganz so lange hin ist (Jahr – (bereits vergangene Tage + Feiertage + Skiurlaub)) werde ich versuchen, dem Bot einen “ständigen Lernprozess” einzubauen. Er soll alle Konversationen speichern und versuchen Gemeinsamkeiten zu erkennen, und diese mit Platzhaltern (-SUBJECT-,-VERB-, usw.) aufzufüllen. So wären flexible Antworten möglich. Allerdings klingt dies einfacher als es ist – mal sehen was daraus wird…

Achja: Der Bot ist in PHP programmiert. Das Interface sendet die Nachrichten per AJAX an den Server, der die Antwort zurückgibt, die dann per Javascript ausgegeben wird, was ein angenehmen chatten ermöglicht. Im Hintergrund läuft eine MySQL-Datenbank. Auf den User zugeschnittene Informationen (“What is your name?”/”My pet is a rabbit!” etc.) werden als Cookie auf dem Rechner der Chatpartner gespeichert, um die Datenbank vor den tausenden unnützen Informationen zu retten ^^

Einen Link kann ich bisher leider nicht anbieten – bisher läuft der Chatbot noch geschützt von der bösen Außenwelt auf dem heimischen Localhost ;)

Die besten deutschen Chatbots

Meinen Streifzügen durch die Chatbot-Welt sind mir zwei deutsche Bots besondern aufgefallen: Der bekannte “Motbot” (“Motbot – der wohl lernfähigste deutschsprachige Chatbot der Welt” – Was leider zu vielen Beleidigungen durch den Bot führt, der anscheinend etwas ZU lernfähig ist. So muss man bevor man mit dem Bot chatten kann bestätigen, dass man 18 ist ;) ), und der nicht ganz so bekannte Brain. Um diesem Bot etwas beizubringen, ist ein Eignungstest sowie eine spezielle Syntax nötig. So sind die Antworten oft passend und qualifiziert, doch mir persönlich ist es lieber, wenn der Bot die ganze Zeit lernt, da es mir menschlicher vorkommt.

Zukunft der KI

Gerade höre ich den “One Note Song” von Tenacious D:

KG: Jack?
JB: Yeah?
KG: Do you think some people, do you think that there’s some people that are really, that are actually robots living among us-
JB: No.
KG: -but we can’t tell?
JB: No we don’t have that technology yet. But Rage, Rage, Rage-
KG: Yeah?
JB: -you know what I was thinking? Stop playing, I was thinking of a fuckin’
Brilliant song.
KG: Yeah?
JB: Check it out, just do what I do,
KG: Ok…

(das ist übrigens gerade echt während dieses Artikels gespielt worden – ich hab den Song vorher noch nie gehört! ^^)

Alsooo, meine persönliche höchst qualifizierte Einschätzung zur Entwicklung der künstlichen Intelligenz:

Wie hat sich die künstliche Intelligenz in den letzten 58 Jahren entwickelt? Warum 58 Jahre? Weil Alan Turing 1950 voraussagte, dass 2000 ein Chatpartner nur noch eine 70% Chance haben werde einen Chatbot als Chatbot zu identifizieren. In einer Studie der University of Reading konnte der beste Bot wenigstens 25% der Tester davon überzeugen, dass er ein Mensch ist. Jeder Chatbot überzeugte jedoch mindestens einen Menschen. An sich hat Turing also mit seiner Vermutung nicht ganz daneben gelegen – allerdings muss man dazusagen, dass zu einem vollständigen Turing-Test auch noch ein Videosignal dazugehört, auf dass, nach meinen Informationen bei diesem Test verzichtet wurde.

Bisher war der Begriff “Künstliche Intelligenz” oft negativ geprägt, was nicht zuletzt an Filmen wie “2001: A space odyssey” von 1968 lag. Und auch heute stehen Filme wie “Eagle Eye”, bei dem es um eine Künstliche Intelligenz des US-Verteidigungsministeriums geht, die versucht die politische Führungsrige auszuschalten, da diese durch das unverantwortliche Handeln im Irak amerikanische Bürger gefährden (was bei genauerer Betrachtung gar nicht so unlogisch erscheint – nur die Mittel sind natürlich die falsch (nicht, dass die CIA hier gleich klingelt ;) )), hoch im Kurs.

Diese Geschichten zeigen natürlich ein negatives Bild der KI/AI. Doch gerade die jüngere Generation, die “digital natives”, sehen die Roboter mit anderen Augen. Gerade in Japan sind Roboter “gesellschafftlich akzeptiert”, und in Filmen wie “Wall-E” sind die Roboter auch garnicht mehr so böse wie in “Terminator” oder “Matrix”. Ich denke also, dass die Entwicklung der Roboter mit größeren Schritten voranschreiten wird – sowohl von der Motorik als auch von der künstlichen Intelligenz aus. Gerade in Japan sehe ich da großes Potenzial, denn dort altert einerseits die Gesellschaft im Moment rapide, während andererseits die Angst vor Robotern und der KI nicht so verbreitet ist wie in den USA und Europa. Es könnte also sein, dass die japanische Oma in 10 Jahren ihren Roboter bittet, die Geschirrspülmaschine auszuräumen, während der japanische Opa sich am Frühstückstisch mit der Haus-KI über das Wetter, die Enkel und die aktuelle Entwicklung der Robotermission auf dem Mond unterhält.

Wir werden sehen…

Write a Comment

Comment