Nozioni di base di sistema esperti
-
23-08-2019 - |
Domanda
ho bisogno di fare scrivere un sistemi esperti che dovrebbero aiutare l'utente in raccogliendo miglior operatore di telefonia mobile. Dovrebbe essere molto semplice e non sulla base di lingue / libaries quali CLISP o JESS. Così ho bisogno di scrivere tutto da zero.
Lo sai alcuni libri o tutorial online che spiega come questo può essere fatto? Quello che ho davvero bisogno di conoscere è come rappresentare la conoscenza e fatti.
Qualsiasi aiuto sarebbe molto apprezzato.
Soluzione
Se si ottiene uno qualsiasi dei buoni testi su AI, ci sarà una sezione su sistemi esperti; è possibile, se costretti, lavorare fuori da lì e implementare il proprio.
L'idea di base è davvero abbastanza semplice: si dispone di un insieme di regole in forma "if-then" che rappresentano inferenze, implicazioni OR4. Come, ad esempio:
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
In altre parole, hai un sacco di regole, e si valutano le regole fino ad arrivare a una conclusione. C'è molto di più per è (in avanti o all'indietro Chaing e questo genere di cose), che si può leggere su in thed abbastanza decente Wikipedia articolo.
Sono perplesso perché non è possibile utilizzare un motore regola esistente anche se - ci sono un certo numero di loro, per la maggior parte delle lingue, di solito sotto licenze piuttosto liberali. Questo è davvero un percorso più facile a meno che questo è un problema compiti o qualcosa del genere.
Altri suggerimenti
Prolog ben si adatta alla scrittura di sistemi basati su regole (un approccio piuttosto standard per lo sviluppo di sistemi esperti). P # compila in C #, che può soddisfare le vostre esigenze -. Ed è gratuito
La logica basi, e prova matematica, per il PROLOG lingua, dovrebbe aiutare a capire la maggior parte dei concetti è necessario affrontare, se non fornire la lingua finale è necessario utilizzare per la sua attuazione.
Non sono riuscito a trovare un link per l'implementazione originale, ma non vi aiutano molto comunque. I primi lavori di Alain Colmerauer sulla programmazione logica dovrebbe essere disponibile.
[EDIT] Ci dispiace duplice ...
voterei per un po 'implementazione di Prolog o clip, a seconda se avanti o indietro il concatenamento logica meglio si adatta al problema. Invece di re-implementare uno di questi, trascorrere il tempo lavorando come integrarli con l'ambiente.
Jess è una buona scelta, ma si dovrebbe leggere il libro "Jess in azione" come primo passo.