2009-04-02 12 views
2

Ich brauche schreiben ein Experte Systeme, die Benutzer bei der Abholung besten Handy-Betreiber helfen sollte. Es sollte sehr einfach sein und nicht auf Sprachen/Bibliotheken wie CLISP oder JESS basieren. Also muss ich alles von Grund auf schreiben.Expertensystem Basics

Kennen Sie einige Bücher oder Online-Tutorials, die erklären, wie das geht? Was ich wirklich wissen muss ist, wie man Wissen und Fakten darstellt.

Jede Hilfe würde sehr geschätzt werden.

+0

Sie erwähnen, dass es nicht auf bestimmten Sprachen/Bibliotheken basieren kann. Haben Sie eine bestimmte Implementierungsumgebung im Auge? – dommer

+0

Offensichtlich will er es direkt im Maschinencode schreiben. Im Ernst, ich schätze, er meint eigentlich "sprachunabhängig". – Svante

Antwort

4

Wenn Sie eine der guten Texte auf AI bekommen, wird es einen Abschnitt über Expertensysteme sein; Sie können, wenn es gezwungen wird, von dort aus arbeiten und Ihre eigenen implementieren.

Die Grundidee ist wirklich ziemlich einfach: Sie haben eine Sammlung von Regeln in "wenn-dann" -Form, die Schlüsse oder 4 Implikationen darstellen. Wie zum Beispiel:

IF blood temperature > 41°C 
THEN patient.has-fever := TRUE 

IF patient has wet-sounding breathing 
THEN patient.has-pneumonia 

IF patient.has-fever AND patient.has-pneumonia 
THEN CONCLUDE bacterial pneumonia. ACTION prescribe Augmentin 

Mit anderen Worten, Sie haben eine Reihe von Regeln, und Sie bewerten die Regeln, bis Sie zu einem Abschluss kommen. Es gibt viel mehr zu tun (vorwärts oder rückwärts chaing und diese Art von Sache), die Sie in dem ziemlich anständigen Wikipedia Artikel lesen können.

Ich bin verwirrt, warum Sie eine vorhandene Regel-Engine zwar nicht verwenden können - es gibt eine Anzahl von ihnen, für die meisten Sprachen, normalerweise unter ziemlich liberalen Lizenzen. Das ist wirklich ein einfacher Weg, es sei denn, dies ist ein Hausaufgabenproblem oder so etwas.

1

Prolog eignet sich sehr gut zum Schreiben von regelbasierten Systemen (ein Standardansatz für die Entwicklung von Expertensystemen). P # wird nach C# kompiliert, was Ihren Anforderungen entspricht - und es ist kostenlos.

More information auf P #.

0

Die Grundprinzipien und der mathematische Beweis für die Sprache PROLOG sollten Ihnen helfen, die meisten Konzepte zu verstehen, die Sie ansprechen müssen, wenn Sie nicht die Sprache angeben, die Sie für die Implementierung benötigen.

Ich konnte keinen Link zu der ursprünglichen Implementierung finden, aber es würde Ihnen sowieso nicht viel helfen. Alain Colmerauers frühe Arbeiten zur Logikprogrammierung sollten hilfreich sein.

[EDIT] Sorry, duplizieren ...

0

Ich würde für eine Implementierung von Prolog oder CLIPS stimmen, je nachdem, ob die Backward- oder Forward-Chaining-Logik dem Problem am besten entspricht. Anstatt beides neu zu implementieren, sollten Sie sich die Zeit nehmen, um herauszufinden, wie Sie sie in Ihre Umgebung integrieren können.

-1

Jess ist eine gute Wahl, aber Sie sollten das Buch "Jess in Aktion" als ersten Schritt lesen.

Verwandte Themen