Das freie, grafisch aufwändige Spiel Yo Frankie, in dem der Spieler ein Flughörnchen durch eine bunte 3D-Welt steuert, ist fast fertig. Derweil steht die KI-Forschung noch vor großen Problemen, doch das Dialogprogramm Freehal liefert einen Einblick in den aktuellen Stand.
Trotz seines Rufs als konsolenzentriertes System stecken in Linux erstaunliche grafische Fähigkeiten, die auch große Kinoproduktionen wie “Shrek” und “Madagaskar” nutzten. Mit dem 3D-Programm Blender [1] haben Filmkünstler schon einige freie Kurzfilme veröffentlicht, die sich sehen lassen können [2].
Nachdem das Blender-Team selbst zwei Filme produziert hat – “Elephant\’s Dream” [3] und “Big Buck Bunny” [4] – arbeitet es nun an einem Spiel, das auf Blender-Technik basiert (Abbildung 1). Es trägt entsprechend dem per Online-Wahl ausgedrückten Willen der Blender-Community den Namen Yo Frankie [5]. Der Spieler übernimmt die Rolle eines bereits aus Big Buck Bunny bekannten Flughörnchens. In Egoshooter-Perspektive sammelt das Tier Boni und Nüsse ein, die im Notfall als Waffe dienen.

Abbildung 1: Mit Blender und Crystal Space entsteht das 3D-Spiel Yo Frankie. Mit typischen Egoshootern hat es die Perspektive gemein, der Spieler steuert aber statt schießwütiger Killer ein possierliches Flughörnchen. (Bild: © Blender Foundation, apricot.blender.org)
Das ehrgeizige Projekt ist seit Anfang des Jahres in Arbeit, nun hat das Team eine erste spielbare Demo für Linux veröffentlicht. Die aktuelle Vorabversion gibt einen ersten Eindruck der Qualität des pazifistisch angehauchten Egoshooters und lässt den Spieler bereits eine kleine virtuelle 3D-Welt erkunden, die allerdings noch keine echten Abenteuer bietet.
Yo Frankie steht unter freier Lizenz und baut auf dem ebenfalls freien 3D-Entwicklungs-Kit Crystal Space [6] auf. Den Download der Preview-Version [8] übernimmt Zero Install [7]. Auch die Blender-Datei, die der räumlichen Welt zugrunde liegt, steht zur Verfügung, der Spieler darf sie mit dem 3D-Programm studieren und verändern (Abbildung 2).

Abbildung 2: Die frei verfügbare Blender-Datei gewährt Einblick in die grafischen Grundlagen von Yo Frankie und lässt auch erfahrene User noch lernen.
DVD-Verkauf
Bei Yo Frankie handelt es sich um ein Projekt mit professionellem Organisationsgrad, dessen Mittel vor allem die Blender Foundation und die Crystal Space Foundation vorstrecken. Sie kümmern sich um finanzielle und Marketing-Belange von Blender beziehungsweise Crystal Space und planen, zumindest einen Teil der Ausgaben für die Yo-Frankie-Entwicklung durch den Verkauf des Spiels auszugleichen. Darunter fallen Kosten für Hardware, Räume, Reisen und Spesen, für die das Entwicklerteam dankenswerterweise nicht selbst aufkommen muss.
Die DVD soll 34 Euro kosten, aber da es sich um freie Software handelt, ist der Kauf natürlich nicht verpflichtend. Dieses Finanzierungsmodell setzte die Blender Foundation bereits bei dem freien Film Big Buck Bunny ein. Wer das Projekt finanziell unterstützen möchte, kann bereits jetzt eine DVD vorbestellen. Ihr Hauptinhalt ist der erste Teil des Yo-Frankie-Spiels. Der Name der ersten Episode lautet “A Furry Vendetta” (auf Deutsch: Eine haarige Vendetta).
Neben dem Spiel selbst finden DVD-Käufer auf dem Datenträger ein Walkthrough-Video, das die Spiellösung verrät. Außerdem zeigen zahlreiche Tutorials, wie man eigene Charaktere und Level bastelt, und führen in die hohe Kunst der 3D-Computeranimation ein. Im Detail ist das letzte Wort über den Inhalt noch nicht gesprochen, die Entwickler rufen zur Meinungsäußerung auf.
Zu Redaktionsschluss war der ursprünglich angesetzte Termin zur Fertigstellung, August dieses Jahres, bereits über einen Monat überschritten. Das neue Ziel heißt Ende September – ob die Entwickler es erreicht haben, zeigt ein Blick auf die Yo-Frankie-Homepage [5].
Mein Freund, der Computer
Können Maschinen denken? Mit dieser Frage beschäftigen sich Informatiker schon seit Gründung ihrer Wissenschaftsdisziplin. Alan Turing, ein Pionier der Informationstechnologie, hat im Jahr 1950 ein Verfahren entworfen, um diese Frage zu beantworten: Ein Mensch stellt über Tastatur und Bildschirm Fragen an zwei Gegenüber, die er weder direkt sieht noch hört. Einer der Gesprächspartner ist menschlich, der andere eine Maschine. Kann der Fragesteller den Computer nicht vom Menschen unterscheiden, hat die Maschine den Turing-Test bestanden und gilt als intelligent.
Turing prognostizierte seinerzeit, dass bereits im Jahr 2000 mindestens in 70 Prozent der Fälle die Unterscheidung von Mensch und Maschine in diesem Test unmöglich sein werde. So optimistisch sahen jedoch nur frühe Pioniere die Zukunft der Künstlichen Intelligenz. Inzwischen musste die Wissenschaft viele Rückschläge einstecken. Kritiker des Turing-Tests meinen ohnehin, dass Gesprächsführung nicht mit Intelligenz gleichbedeutend ist.
Auch wenn die Realität im Jahr 2008 Turings Erwartungen hinterherhinkt, gibt es auf dem Gebiet der maschinellen Dialogführung dennoch Fortschritte. Das Projekt Freehal ([9], Abbildung 3) gehört in diesen Bereich. Es hat im jährlich stattfindenden Wettbewerb Chatterbox Challenge [10] dieses Jahr den Preis “Beliebtestes Programm” gewonnen.
Dreisatz
Ein Dialog mit einem Menschen besteht aus Sicht eines Computerprogramms aus drei sich wiederholenden Schritten: Erst muss es den Beitrag seines Gesprächspartners verstehen, dann die richtige Antwort suchen und diese schließlich in natürlicher Sprache ausgeben.
Für die Interpretation einer Eingabe verwendet Freehal verschiedene Standardkomponenten der maschinellen Sprachverarbeitung. Ein Stemmer (der Begriff kommt aus dem Englischen: Stem = Wortstamm) erkennt den Stamm jedes Worts, sodass es verschiedene Formen demselben Wort zuordnen kann. Ein Part-of-Speech-Tagger erkennt die grammatische Funktion, unterscheidet also beispielsweise Substantive von Verben. Zudem helfen statistische Methoden wie Hidden-Markov-Modelle bei der Interpretation einer Äußerung.
Freehal kommt mit einem begrenzten Wissensschatz daher, lernt aber aus den Aussagen seines menschlichen Gegenübers. Es speichert Begriffe in einem semantischen Netz, das Fakten logisch miteinander in Verbindung bringt (Abbildung 4). Dieses Verfahren ermöglicht Schlussfolgerungen und damit Erkenntnisse, die das Programm selbstständig erschlossen hat. Im Hintergrund arbeitet eine SQLite-Datenbank.
Freehal kennt im Auslieferungszustand zirka 60000 deutschsprachige Begriffe und 100000 Verknüpfungen. Verbindungstypen heißen beispielsweise “Ist ein” oder “Ist Teil von”. So gibt es etwa einen Datenbankeintrag “Finger”, den das semantische Netz über eine Ist-Teil-von-Relation mit “Hand” und über eine Ist-ein-Relation mit “Körperteil” verknüpft. Der Benutzer trainiert seine Freehal-Datenbank, indem er Aussagen eingibt, die das Programm in Relationen übersetzt. Das System stellt bei Bedarf Rückfragen, beispielsweise nach dem grammatischen Geschlecht (Genus) eines neu erlernten Worts, wenn es dieses nicht erkennt. Eine optimale Vernetzung ist erreicht, wenn jeder Begriff über höchstens vier oder fünf Zwischenschritte mit jedem anderen verbunden ist.
Zunächst gibt Freehal seine Antworten schriftlich, doch das Programm beherrscht optional auch akustische Sprachausgabe. Als Wiedergabesoftware verwendet es Mplayer, zur Sprachsynthese nutzt es ein Onlinesystem des Hauptentwicklers Tobias Schulz.

Abbildung 4: Ein semantisches Netz bringt Begriffe in Bezug zueinander, sodass für Freehal automatische Rückschlüsse über neu erlernte Wörter und Sachverhalte möglich werden.
Freehal funktioniert nach dem Client-Server-Prinzip: Der Kernel genannte Server kümmert sich um die Verarbeitung von Ein- und Ausgaben. Der Benutzer kommuniziert mit ihm über verschiedene Oberflächen. Es stehen sowohl ein QT-basiertes GUI als auch ein Textclient zur Verfügung, die entweder lokal oder über das Netzwerk zum Server Kontakt aufnehmen; so können auch mehrere User eine Freehal-Installation trainieren. Es gibt zudem eine PHP-Schnittstelle, die sich vor allem eignet, um das Programm in eine Webseite einzubinden.
Die Freehal-Homepage gewährt mit diesem Interface einen ersten Blick auf die Fähigkeiten des Programms. Auch diese Freehal-Onlinedemo lernt stetig weiter und kennt bereits mehr als 800000 Begriffe sowie fast 200000 Relationen. Freehal versteht auch Englisch, die Onlinedemo dafür allerdings nur etwa 20000 Wörter und 80000 Relationen.
Alte Wurzeln
Freehal gibt es schon seit 2006, das Projekt trug aber bis Mai dieses Jahres den Namen Jeliza. Diese Bezeichnung entstand aus der Verschmelzung der Wörter Java, der verwendeten Programmiersprache, und Eliza, dem Namen eines der ersten Dialogprogramme, das der Informatiker Joseph Weizenbaum im Jahr 1966 entwickelt hat. Inzwischen setzen die Freehal-Programmierer vor allem auf die Programmiersprache Perl, womit das J des alten Namens seinen Sinn verloren hat. Freehal verweist nun auf den Computer Hal 9000 des Raumschiffs Discovery im Film “2001: Odyssee im Weltraum” von Stanley Kubrick.
Im Vergleich zu den psychischen Schwierigkeiten des fiktiven Vorbilds hat Freehal allerdings noch mit grundlegenderen Problemen zu kämpfen. Sie spielen sich in erster Linie auf sprachlicher Ebene ab: Wie zurzeit jede derartige Software schafft es auch Freehal nicht immer, natürliche Sprache richtig zu interpretieren und zu erzeugen. Schon bei aus menschlicher Sicht einfachen Sätzen geraten grammatische Grundlagen wie Satzbau, Tempus, Numerus und Kasus durcheinander und auch die Inhalte ergeben oft wenig Sinn.
Nicht ganz problemlos
Zu den linguistischen Schwierigkeiten, für die die Wissenschaft bislang oft keine Lösungen kennt, kommen programmiertechnische hinzu. Beim Erlernen neuer Fakten aus heruntergeladenen Schlagzeilen gerät das Programm gelegentlich in eine Endlosschleife, die nur mit dem Löschen der entsprechenden Datenbank zu durchbrechen ist. Gelegentliche Abstürze sind ebenfalls noch zu beheben, doch im Großen und Ganzen funktioniert Freehal bereits.
Schinken-Curry-Spaghetti
Wenn es in der Küche mal wieder schnell gehen muss, bleibt es oft bei Spaghetti mit roter Soße – wahrlich keine kulinarische Offenbarung. Dabei bedeutet es nur wenig Aufwand, dem schlichten Nudelgericht einen Hauch von Exotik hinzuzufügen. Die Zutaten dafür sind das ganze Jahr über erhältlich: 200g Spaghetti, 50g Schinken, 50g Ananas aus der Dose, Oregano, Curry.
Zur Zubereitung die Spaghetti kochen. Für die Soße gewürfelten Schinken mit Oregano in der Pfanne anbraten. In Ananassaft etwas Brühwürfel auflösen, damit den Schinken ablöschen, die Ananaswürfel hinzufügen und das Ganze mit einem halben Teelöffel Curry würzen. (pkr)
|
Infos |
|---|
|
[1] Blender: [http://www.blender.org] [2] Blender-Filme: [http://www.blender.org/features-gallery/movies] [3] Elephant\’s Dream: [http://www.elephantsdream.org] [4] Big Buck Bunny: [http://peach.blender.org] [5] Yo Frankie: [http://www.yofrankie.org] [6] Crystal Space: [http://crystalspace3d.org] [7] Zero Install: [http://0install.net] [8] Yo-Frankie-Download: [http://crystalspace3d.org/downloads/YoFrankie/YoFrankie.xml] [9] Freehal: [http://wiki.de.freehal.org] [10] Chatterbox Challenge: [http://www.chatterboxchallenge.com] |






