1st Card: ein Expertensystem der besonderen Art

Pik As sticht alles

Wann immer es gilt, Fachwissen mit Hilfe des Computers auch dem Laien verständlich und vor allem nutzbar zu machen, schlägt die Stunde der Expertensysteme. Sie stellen ihr umfangreiches Wissen über ein bestimmtes Fachgebiet dem Benutzer zur Verfügung, ohne ihn mit allen Aspekten der Thematik zu konfrontieren: Durch gezielte Fragen kreist er die Problemstellung ein. Auch der unerfahrene Anwender soll sich durch Computerhilfe beispielsweise im Paragraphendschungel des BGB oder mit den Tücken der Pflanzenbestimmung zurechtfinden.

»1st Card« der Firma Logilex verspricht kinderleichte Entwicklung und Bedienung von Expertensystemen.

1st Card baut auf dem Prinzip der Kartenstapel auf. Dabei ist das gesamte Fachwissen auf einzelne, logisch voneinander abhängige Karten verteilt. Der Anwender hangelt sich mit Hilfe von Entscheidungsbäumen durch das Themengebiet und beantwortet die für das jeweilige Problem relevanten (Multiple-Choice-)Fragen. Das System wertet die Antworten aus und verzweigt abhängig davon zur nächsten Karte, solange, bis die Lösung gefunden ist. Gegenüber der von Lisp- und Prologsystemen verwendeten Prädikatenlogik, die mit abstrakten Symbolen arbeitet, bietet diese Methode den Vorteil der leichten Erlern- und Bedienbarkeit.

Programmieren durch Pull-Down-Menüs: zukunftssichere Programmierung oder Spielerei?

Bezahlen und warten

Um die Daten aller Käufer von 1st Card zu erfassen und auf Raubkopien entsprechend reagieren zu können, gehen die Entwickler von 1st Card einen fragwürdigen Weg: Nach dem Erwerb von 1st Card erhalten Sie nicht sofort das vollständige Programm, sondern finden in der Packung eine abgespeckte Version, die nur 15 Karten erfassen kann. Erst nach Einsendung der beigelegten Registrierkarte bekommen Sie die auf Ihren Namen eingetragene Vollversion, um sinnvolle Anwendungen aufzubauen.

Für diese Anwendungen entwerfen Sie erstmal die notwendigen Karten. Dazu verwenden Sie Texte, Bilder und sog. Buttons. Während die ersteren zwei hauptsächlich der Informationsvermittlung dienen, steuern Sie mit Buttons den Ablauf der Anwendung. Durch Anklicken der Buttons teilt der Benutzer später dem Computer seine Antworten mit. Das kann eine simple Ja/Nein-Entscheidung ebenso sein wie eine mehrstufige Auswahl. Diese Bedienung über Buttons ist für den (möglicherweise unerfahrenen) Anwender die einfachste und bequemste Methode, mit der Anwendung zurechtzukommen. Tiefergehende Kenntnisse über den Umgang mit Computern erfordert das Programm nicht.

Die Anzahl der Knöpfe ist nicht beschränkt, ebensowenig ihre Größe und Position. Auch Bilder dürfen in den Buttons enthalten sein, wodurch Sie grafische Symbole direkt anwählen können. Die Texte für die Karten tippen Sie mit einem kleinem Editor, der sich in der Bedienung an Ist Word anlehnt, auch wenn er nicht so leistungsfähig ist. Immerhin beherrscht er u.a. Word Wrapping und zentriert die Zeilen automatisch. Wer auf mehr Komfort Wert legt, tippt die Texte mit einem Editor eigener Wahl und lädt die ASCII-Datei. Für Bilder steht ein Snapshot-Accessory zur Verfügung, außerdem verdaut 1st Card Grafiken im IMG-Format. Die Bilder werden in einer eigenen Bibliothek gesammelt, aus der Sie sich bei Bedarf das geeignete Symbol herauspicken.

Eremit als Programmiersprache

Haben Sie alle notwendigen Karten entworfen, gilt es, diese logisch zu verbinden. Um dabei nicht den Überblick zu verlieren, empfiehlt es sich, die logischen Strukturen des Entscheidungsbaumes im voraus auf einem Blatt Papier zu planen. Das Verknüpfen selbst geschieht denkbar einfach, indem Sie zuerst den entsprechenden Button anklicken und dann aus einer Übersicht seine Folgekarte wählen. Karten ohne weitere Verknüpfung sind Endkarten; sie stellen das letzte Glied der Verbindung dar und enthalten hoffentlich die Lösung des Problems.

Bis zu 17 verschiedene Anwendungen hält 1st Card gleichzeitig im Speicher. Leider ist es nicht möglich, die Karten verschiedener Anwendungen untereinander zu verknüpfen — jedes System ist für sich unabhängig und unterhält keine Beziehungen zu einem anderen Kartenstapel. Immerhin lassen sich einzelne Bauteile zwischen den Kartenstapeln im-und exportieren.

Kombination von Grafik und Text einfacher denn je

Um die Anwendung zu erleichtern, können Sie zu einzelnen Karten eine Benutzerhilfe anbieten, und zwar wiederum in Form einer Karte. Auch Hilfe-Karten dürfen mit Buttons verbunden sein. Ein kleines Fragezeichen informiert darüber, ob zur aktuellen Karte eine Unterstützung vorhanden ist; aktiviert wird die Funktion über die Help-Taste.

Mit speziell markierten Karten rufen Sie aus 1st Card heraus beliebige Anwenderprogramme auf. Das kann eine Datenbank sein, um tiefergehende Informationen zu erfragen, oder eine Textverarbeitung, um längere Dokumente anzuzeigen. Auch selbstgeschriebene Programme, die beispielsweise den Drucker ansprechen oder Daten aus einem Netzwerk ziehen, sind denkbar. Zusätzlich dürfen Sie dem Aufruf diverse Parameter mit auf den Weg geben, sofern das Anwenderprogramm diese entsprechend auswertet. Nach der Abarbeitung macht 1st Card genau dort weiter, wo es seine Arbeit unterbrochen hatte.

Für eine leistungsfähige Programmierung gibt es in 1st Card sog. Logik-Karten. Diese rufen eine Kartenserie wie ein Unterprogramm (Gosub) auf, um nach dessen Ende wieder zum Ursprung zurückzukehren. Somit brauchen Sie öfters wiederkehrende Strukturen nur einmal zu definieren. Noch bedeutender dabei ist allerdings, daß diese Logik-Karten mit Bedingungen verknüpft sein dürfen. Dann kehrt das Programm erst aus der Unterroutine zurück, wenn es dort auf eine Zielkarte trifft, die ihr einen Wahrheitswert (wahr oder falsch) meldet. Abhängig von dieser Rückmeldung entscheidet die Logikkarte dann, wohin sie weiterverzweigt. Ist aufgrund der bisherigen Verzweigung nur noch ein Ergebnis möglich, bemerkt 1st Card dies und wechselt vorzeitig zurück.

Dieses sog. Backtracking ist ein wichtiges Element der Künstlichen Intelligenz, weshalb das Programm vom Hersteller auch als Kl-System vermarktet wird.

Logik mit Unlogik

1st Card unterscheidet dabei zwei Arten von Logiken: Die ’o’ -(=or) Logik meldet den Wert wahr, wenn mindestens eine Bedingung erfüllt wurde. Bei der ’a’ -(=and) Logik müssen alle Voraussetzungen gültig sein. Eine Negation (not-Verknüpfung) fehlt leider, bei Bedarf muß sie der Benutzer mit Hilfe der anderen beiden Verknüpfungen bilden. Mit den Operatoren lassen sich komplexe Verbindungen aufbauen, was mitunter aber nicht ganz einfach ist. Auch das Handbuch tut sich schwer, die komplexen Sachverhalte verständlich zu machen, auch wenn es sich redlich bemüht. Ansonsten ist die Anleitung zufriedenstellend; mit vielen Abbildungen und Beispielen führt sie den Benutzer gut in die Bedienung des Programms ein.

Um zu überprüfen, ob in Ihrer Struktur auch alles mit rechten Dingen zugeht, fertigt 1st Card eine Referenzliste an. Diese informiert Sie über die Kartennamen, ihre Verzweigungen, logische Verknüpfungen und Hilfsoptionen. Außerdem lassen sich Karten auf ihre Verwendung überprüfen; »Karteileichen« beseitigen Sie so schnell. Als gelöscht markierte Karten und Bilder werden übrigens nicht sofort eliminiert, sondern nur aus dem internen Archiv gestrichen. Erst ein gesonderter Menüpunkt vernichtet die Daten auch physikalisch. Wem dabei die ständigen Sicherheitsabfragen auf den Geist gehen, für den hat 1st Card eine Besonderheit bereit: Bei allen vom Programm aus erzeugten Alertboxen können Sie die Defaultbuttons ändern und das System so an eigene Gewohnheiten anpassen. Ein Novum, das Schule machen sollte.

Ist die Anwendung erst einmal fertiggestellt, wird sie mit einem Paßwort vor unbefugten Änderungen geschützt. Für Modifikationen in Aufbau und Inhalt muß sich der Benutzer dann erst legitimieren. Er kann die fertige Anwendung aber in vollem Umfang benutzen. Alle Arbeitsschritte protokolliert 1st Card mit; bei Fehleingaben reicht ein Druck auf die Undo-Taste, und das Programm blättert eine Karte zurück, um die Entscheidung zu korrigieren. Unterbrochene Sitzungen lassen sich zu einem späteren Zeitpunkt fortsetzen; 1st Card speichert den aktuellen Zustand.

Während dem Entwurf und Ablauf einer Anwendung greift 1st Card exzessiv auf den Massenspeicher zu; die Verwendung einer Festplatte oder RAM-Disk ist dringend erforderlich. Haben Sie beides nicht, avancieren Sie schnell zum Diskjockey und dürfen außerdem regelmäßige Besinnungsmomente einlegen, wenn das System wieder eine Karte nachlädt.

Wollen Sie Ihre Anwendungen auch anderen ST-Besitzem zugänglich machen, bietet der Hersteller dafür einen besonderen Service: Gegen eine geringe Gebühr von 10 bis 15 Mark erzeugt er aus einer Anwendung eine Lizenzversion, die auf Wunsch zentral vertrieben wird. Auch Runtime-Anwendungen sind machbar, diese laufen dann ohne 1st Card. Professionelle Anbieter müssen dabei tiefer in die Tasche greifen, denn ihr Lizenzvertrag bemißt sich nach Absprache.

1st Card ist damit gut geeignet für Lehranwendungen, zur Ausbildung oder im Bereich der öffentlichen Information, wie Fremdenverkehrsamt, Arztpraxis etc., wobei ein Schwerpunkt bei juristischen Anwendungen liegen dürfte.

Um ein Expertensystem in dem Sinn, daß es Entscheidungen selbständig trifft und aus seinen Fehlern lernt, handelt es sich aber nicht. Wer sich diese Tatsache beim Kauf vor Augen hält, findet an dem Programm sicherlich Gefallen. (hb)

Wertung

Name: 1st Card

Hersteller: Logilex, Gerhard Oppenhorst

Preis: 298 Mark

Stärken: Karten frei gestaltbar □ einfacher Aufbau von Verknüpfungen □ komplexe logische Verbindungen möglich □ Alertboxen anpaßbar

Schwächen: häufige Massenspeicherzugriffe □ kein direkter Zugriff auf andere Kartenstapel □ keine »not«-Logik

Fazit: durchdachtes und bedienerfreundliches Programm, mit dem sich auch umfassende Entscheidungssysteme aufbauen lassen

LogiLex — Gerhard Oppenhorst, Eifelstr. 32, 5300 Bonn I

Nach Apples Vorbild

Das Vorbild zu diesem Programm ist »HyperCard« von Apple. HyperCard kann aber noch wesentlich mehr als »nur« Karten in vordefinierter Reihenfolge abzurufen. Integriert ist ein leistungsfähige Programmiersprache, die es erlaubt, auch komplexe Anwendungen unter HyperCard zu programmieren.

Einer der gravierenden Unterschiede liegt auch im Zugriff auf jeden Kartenstapel auf dem Datenträger. Damit begrenzen nicht das verfügbare RAM, sondern die externen Speicher die Kapazität von HyperCard. Zieht man die schnell fortschreitende Technologie der optischen Speicher in seine Überlegungen ein, so tun sich gerade im Grafikbereich fantastische Vorstellungen auf, die bei Ist Caid zur Zeit noch verschlossen sind. Da der Zugriff auf nur einen Stapel begrenzt ist, gelingt es kaum, komplexe Programme aufzubauen. Dies entspricht nicht dem modularen Konzept des großen Vorbilds.

Zwar lassen sich bis zu 17 Stapel gleichzeitig in den Speicher laden, aber der direkte Zugriff untereinander fehlt

Zweifellos liegt mit 1st Card eine neue Art der Programmierung für den Atari ST vor, allerdings ist hier, wie bei vielen Neuheiten, einige Entwicklungsarbeit nötig. Wir verstehen 1st Card eher als Pionier einer neuen Generation. Dafür ist der Ansatz erfolgversprechend.


Marc Kowalsky
Aus: ST-Magazin 02 / 1990, Seite 46

Links

Copyright-Bestimmungen: siehe Über diese Seite