Eliza V2.70c =========== ============ (c) 1991 (27.6.1993) by Henry König, Bornheide 71, 22549 Hamburg. "Eliza" ist ein Programm, daß künstliche Intelligenz simuliert. Das heißt, Sie können "Eliza" Fragen stellen und "Eliza" antwortet Ihnen in deutscher Sprache. Falls "Eliza" keine Antwort kennt, fragt "Eliza" Sie etwas. Sollte Eliza keine Antwort kennen, dann können Sie Eliza -wenn der Lernmodus eingeschaltet ist- noch etwas beibringen. Der Wortschatz von "Eliza" ist in dieser Version auf ca. 1200 Fragen und Antworten begrenzt. Die Shareware-Version kann bis 9000 Antworten und Fragen aufnehmen. Bei Festplattenbetrieb erheblich mehr. Wenn Sie nur ein Laufwerk besitzen, werden Sie nach einiger Zeit zum Ein- legen der Workbench aufgefordert. Besitzen Sie zwei Laufwerke, dann starten Sie "Eliza" vom zweiten (externen) Laufwerk. Der Quellcode in GFA-Basic ist, für die Version 1.20, beigefügt. Shareware 20,- DM inkl. Diskette, Porto und Verpackung. Sollten Sie die Wortschatzdatei schon erweitert haben, wäre ich Ihnen dankbar wenn Sie mir die zur Verfügung stellen würden. Als Dankeschön erhalten Sie eine neue erweiterte Wortschatzdatei aller vorhandenen Wortschatzdateien. Die Verben für die Textkompositionen sind jetzt in der Datei "Eliza.Verben". Diese Datei können sie mit einem Texteditor berichtigen und auf 200 Verben erweitern. Arbeiten sie vorsorglich nur mit einer Kopie der Datei. Die Verben müssen in einer Zeile stehen und werden durch ein Komma getrennt. Beispiel: fahre,fährst finde,findest Die letzte Zeile in der Datei muß eine Leerzeile sein! Eine Erweiterung und Verbesserung des Programms ist vorgesehen. **************************************************************************** * Dieses Programm darf n u r mit meiner schriftlichen Genehmigung * * veröffentlicht werden. Verteilung der PD-Version unter Freunden und * * Bekannten ist erwünscht. * **************************************************************************** 1.1 Info Kurzinformation über das Programm. 1.2 Dialog mit Eliza ---------------- Bei der Anwahl dieses Menüpunktes wird zuerst ein Filerequester (Datei- auswahlbox) eingeblendet. Hier müssen Sie die Wortschatzdatei laden. Die Wortschatzdatei hat den Namen "Eliza.Daten". Diese Datei kann in einem beliebigen Ordner (Schublade) sein. Nach dem Laden der Wortschatzdatei werden Sie nach Ihren Namen gefragt. Nun beginnt der Dialog mit Eliza. Fragen an "Eliza" müssen mit einem Fragezeichen enden. Am Fragezeichen wird eine Frage erkannt. Wird das Fragezeichen vergessen, so wird die Antwort nicht Ihren den Wünschen entsprechen. Den Dialog beenden sie mit der Eingabe von "quit" oder der "Esc"-Taste. 1.3 Dialogdatei pflegen ------------------- Dieser Menüpunkt ist zur Ergänzung und Korrektur der Wortschatzdatei vorgesehen. Die Datenpflege beinhaltet Daten eingeben (neue Daten in die Datei aufnehmen), Daten suchen für die Anzeige, Änderung oder Löschung, Daten ändern (Korrektur vorhandener Datensätze) und Daten löschen. Sollte die Menüsteuerung mal nicht funtionieren, so drücken Sie . In der Maske können Sie mit Cursor links und Cursor rechts jeweils ein Zeichen weiterschalten. Cursor hoch und Cursor runter wechselt das Datenfeld. positioniert den Cursor ins nächste Datenfeld. Ist der Cursor im letzten Datenfeld, so bewirkt die Speicherung des Daten- satzes. ------------------------------------------------------------------------------ Prg.:Eliza Frei: 1900002 Größe: 27264 Extern:317 Intern:300 ------------------------------------------------------------------------------ Schlüsselwort:| | Normaler Text: | | Kennung:| | *----------------------------------------------------------------------------* | eingabe suchen ändern lösche 1.Satz zurück vor tab.Ende Sprache lern Ende | *----------------------------------------------------------------------------* * * *----------------------------------------------------------------------------* | Anweisungszeile | *----------------------------------------------------------------------------* Die Anwahl der Datenpflege-Menüs erfolgt mit den Cursor-Tasten, Anfangs- buchstaben des Menüpunktes oder der linken Maustaste. Die Auswahl (Bestätigung) mit oder der rechten Maustaste. 1.3.01 eingeben -------- Für die Dateneingabe ist kein vorhergehender Datenimport notwendig. Der neu eingegebene Datensatz wird erst dann gespeichert, wenn Sie im l e t z t e n Datenfeld drücken. Die Eingabemaske können Sie n u r mit der verlassen. Mit der Maus kann innerhalb der Maske frei positioniert werden. WICHTIGE HINWEISE ZUR DATENEINGABE FINDEN SIE IM KAPITEL 5. 1.3.02 suchen ------ Suchen können Sie nur im Indexfeld. Den Suchbegriff können Sie mit einem Stern begrenzen. Alle Zeichen ab dem Stern werden nicht mehr verglichen. Auf eine Suchmöglichkeit nach Stichwort wurde aus Zeitgründen verzichtet. Eine Datei von 10000 (!) Datensätzen kann deshalb innerhalb 1 Sekunde durchsucht werden. Beispiel: Programmname:|k* | Es wird der erste mit "K" beginnende Datensatz angezeigt. Bei erfolgloser Suche wird eine Meldung ausgegeben. 1.3.03 ändern ------ Wählen Sie mit der Maus den gewünschten Datensatz an und führen die Änderung aus. In der Maske wird die Änderung erst vorgenommen, wenn Sie im letzten Datenfeld die RETURN-Taste drücken. In der tabellarischen Dar- stellung wird der Datensatz immer dann gespeichert, wenn Sie den Cursor auf ein anderes Datenfeld positionieren. 1.3.04 lösche ------ Wählen Sie den gewünschten Datensatz an. Wählen Sie "löschen" aus und bestätigen die "J/N"-Abfrage. Die "J/N"-Abfrage können Sie mit den Cursor- Tasten oder der linken Maustaste umschalten und mit RETURN oder der rechten Maustaste bestätigen. Aus Zeitgründen wird der Datensatz mit Leerzeichen überschrieben und nicht aus der Datei entfernt. Die gelöschten Datensätze stehen immer vor den Datensätzen mit Inhalt. 1.3.05 1.Satz ------ Zeigt den 1. internen Datensatz in der Maske an. 1.3.07 zurück ------ Blättert in der Maske satzweise zurück. In der Maske können Sie mit "RETURN", oder durch anklicken des "zurück"- feldes mit der rechten Maustaste, weiterblättern. 1.3.06 vor === Blättert in der Maske satzweise vorwärts. In der Maske können Sie mit "RETURN", oder durch anklicken des "vorwärts"- feldes mit der rechten Maustaste, weiterblättern. 1.3.08 tab.Ende -------- Zeigt in der Maske den letzten internen Datensatz an. 1.3.09 Sprache ------- Schaltet die Sprachausgabe an oder aus. 1.3.10 lern ---- Schaltet den Lernmodus aus. 1.3.11 Ende ---- Dieser Menüpunkt kehrt zum Hauptmenü oder in den Dialogmodus zurück. 1.4 Programm beenden ---------------- Nach Sicherheitsabfrage zurück zur Workbench. 2.1 Sprache an/aus -------------- Sprachausgabe an- oder ausschalten. Die Anwahl dieses Menüpunktes wirkt als Wechselschalter. Die Aktivität wird durch einen Haken gekennzeichnet. 2.2 Spracheinstellung ----------------- Über Schieberegler können Sie alle Parameter der Sprachausgebe verändern. Eine Änderung der Voreinstellung verbessert die Sprachausgabe nicht unbedingt. 2.3 Lernmodus1 an/aus ---------------- Lernmodus1 an- oder ausschalten. Die Anwahl dieses Menüpunktes wirkt als Wechselschalter. Die Aktivität wird durch einen Haken gekennzeichnet. Findet Eliza keine Antwort, dann verzweigt das Programm in die Daten- pflege (1.3). 2.4 Lernmodus2 an/aus ---------------- Lernmodus2 an- oder ausschalten. Die Anwahl dieses Menüpunktes wirkt als Wechselschalter. Die Aktivität wird durch einen Haken gekennzeichnet. Findet Eliza keine Antwort, dann fragt Eliza ob der Dialog gespeichert werden soll. Eine von Ihnen gestellte Frage wird als Verlegenheitsfrage gespeichert. Hatten Sie keine Frage gestellt fragt Eliza nach einem Schlüsselwort, welches in Kleinbuchstaben eingegeben werden muß. Dieser Text wird mit der Kennung 3 gespeichert. Die Speicherung können Sie mit der "Esc"-Taste verhindern. 2.5 Dialogaufzeichnung ------------------ Die Anwahl dieses Menüpunktes wirkt als Wechselschalter. Die Fragen und Antworten des Dialoges wird in eine Datei geschrieben. Die Namen der Dateien heißen "Eliza" plus Tagesdatum plus Minuten der Zeit und werden im gleichen Directory (Ordner) abgelegt in dem die Wortschatz- datei ist. Bei jedem Dialog wird eine neue Datei angelegt. 3.1 Wortschatz auf Drucker ---------------------- Liste der Wortschatzdatei kann für Vergleichszwecke ausgedruckt werden. 3.2 Wortschatz in Datei ------------------- Wortschatzdatei in eine Datei ausgeben für Anwender die keinen Drucker haben und sich die Datei mit einem Texteditor ansehen wollen. 4.1 Iconify ------- Läßt das Programm in der Menüzeile verschwinden. Das Anklicken des Schließgadgets, links neben dem Schriftzug "Eliza", bringt das Programm wieder in den Vordergrund. 5. Hinweise zur Dateneingabe und dem Ablauf von Eliza -------------------------------------------------- Die Datenpflege können Sie über einen Menüpunkt (1.3) anwählen. Ist der Lernmodus eingeschaltet und Eliza findet keine Antwort, dann verzweigt das Programm in die Datenpflege. Wählen Sie "eingabe" an. "Eliza" ist dumm. Es wird dem Anwender nur vorgemacht mit einem intelligenten Programm zu arbeiten. Deshalb ist es wichtig Elizas Wort- schatz nach festen Regeln und sehr sorgfältig zu erweitern. Der Aufbau eines Datensatzes: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1. Feld ist das Schlüsselwort 2. Feld ist der Text 3. Feld ist eine Kennung Das Schlüsselwort ist ein beliebiges Wort oder ein Satzteil (Redewendung) welches in der Eingabe im Dialog vorhanden ist. Beispiel: ~~~~~~~~~ Sie fragen Eliza: "Wie geht es Dir?" Eliza zerlegt den Satz in: 1. Wie 2. geht 3. es 4. Dir 5. wie geht 6. wie geht es 7. wie geht es Dir und sucht in der Wortschatzdatei ob eines der 7 Wortkombinationen in der Wortschatzdatei vorhanden ist. Wird kein Wort oder Wortkombination gefunden, weil es nicht vorhanden ist oder weil es schon verwendet wurde, so wird eine Verlegenheitsfrage gestellt. Verlegenheitsfragen erhalten das Schlüsselwort "verlegenheit" und die Kennung "2". Eliza findet nun das Schlüsselwort "geht". Die Antwort von Eliza lautet "Na ja, es geht so.". WICHTIG: Am Fragezeichen erkennt Eliza, daß es sich um eine Frage handelt. Damit Eliza den Zusammenhang des Dialogs erkennt muß der Datensatz eine Kennung haben. Kennung Art ~~~~~~~~~~~~ 0 Antwort auf eine Frage nach vorhandenem Schlüsselwort 1 Eingabe des Anwenders beugen und den Satz anhängen (keine Frage). 2 Verlegenheitsfrage stellen. Das Schlüsselwort muß "verlegenheit" lauten. 3 Frage oder Antwort nach gefundenem Schlüsselwort ausgeben. Kein Dialog auf eine Frage! Beispiele zur Wortschatzergänzung: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Dialog: "Wie geht es Egon Meier?" Schlüsselwort: "geht" Text: "Wie soll es gehen?" Kennung: 0 für Antwort auf eine Frage. Hinweis: ~~~~~~~~ Die Antwort auf eine Frage sollte sehr allgemein ausfallen, weil das Programm den Zusammenhang noch nicht erkennen kann. Antworten auf Verben sollte man meiden. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Dialog: "Was hälst Du von Computer?" Schlüsselwort: "Computer" Text: "Als Computer sage ich: sehr wichtig." Kennung: 0 für Antwort auf eine Frage. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Dialog: "Ich dachte Du gibst klügere Antworten" Schlüsselwort: "dachte" Text: ". Mit dem Denken ist das so eine Sache." Kennung: 1 für Eingabe beugen und Antwort anhängen Hinweis: ~~~~~~~~ Bei der Kennung "1" werden die Anreden getauscht, der Satz gebeugt und der Antworttext angehängt. Eine Art Textkomposition. Ausgabe: "Du dachtest Ich gebe klügere Antworten. Mit dem Denken ist das so eine Sache." Die Kennung "1" sollten Sie möglichst nicht verwenden, weil die Wortschatzdatei und Wortdatei zum Beugen noch zu gering ist. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Dialog: "Wie geht es Dir?" Schlüsselwort: keins gefunden oder schon gebraucht, dann wird als Schlüsselwort "verlegenheit" eingesetzt. Text: "Beliebiger Text" Schlüsselwort: verlegenheit Kennung: 2 für Verlegenheitsfrage Hinweis: ~~~~~~~~ Verlegenheitsfragen stellt Eliza immer dann, wenn kein Schlüsselwort gefunden wurde oder wenn das Schlüsselwort schon verwendet wurde. Dialog: "Ich habe ein großes Haus" Schlüsselwort: "haus" Text: "Beschreibe mir das Haus etwas genauer." Kennung: 3 für Frage oder Antwort nach Schlüsselwort. Hinweis: ~~~~~~~~ Texte dieser Kennung sollten so gewählt werden, daß die Antworten oder Fragen des Anwenders wieder vorhandene Schlüsselwörter enthalten. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Beispiel wie der Anwender ausgefragt werden kann: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Schlüsselwort: "verlegenheit" Text: "Hast Du ein Haus oder eine Wohnung?" Schlüsselwort: verlegenheit Kennung: 2 für Verlegenheitsfrage Die Antwort könnte sein: "Ich habe ein Haus" oder "Ich habe eine Wohnung" In den Antworten sind die nächsten Schlüsselwörter "haus" und "wohnung" enthalten. Bei einer Antwort: "Ich habe kein Haus" oder "Ich habe keine Wohnung" Bei diesem Dialog wird Eliza falsche Antworten geben! Ab der Version 2.50 kann das Schlüsselwort auch aus Satzteilen (Rede- wendungen) bestehen, dadurch wird die Auswertung noch besser. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Dialog: "Was hälst Du von Computer?" Schlüsselwort: "was hälst Du" Text: "Was soll ich denn davon halten?" Kennung: 0 für Antwort auf eine Frage. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Dialog: "Antwortest Du immer nur mit Vielleicht?" Schlüsselwort: "antwortest du" Text: "Nein, nicht immer. Das ist abhängig von den Fragen." Kennung: 0 für Antwort auf eine Frage. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Dialog: "Was hälst Du vom Sex? Schlüsselwort: "was hälst Du vom" Text: "Von dem halte ich viel." Kennung: 0 für Antwort auf eine Frage.