# by Andrea Bianchini 2021
# questa è la base di conoscenza del Sistema Esperto
kb=[["C'è alimentazione di rete in casa ?",1,4],
["Con una lampadina sana si accende ?",2,3],
["La lampadina è fulminata; sostituiscila",-1,-1],
["C'è un problema elettrico o nella spina o nel portalampade",-1,-1],
["Collega la rete; (salvavita o interruttore generale)",-1,-1]]
# by Andrea Bianchini 2021
# questo è il motore inferenziale del sistema esperto
import kb
print("Sistema esperto per risoluzione problema : non si accende lampadina")
print("-------------------------------------------------------------------")
print()
k=0
while k!=-1:
if k>-1:
r=input(kb.kb[k][0]+"([s]/n): ")
if r.upper()=="S" or r=="":
k=kb.kb[k][1]
else:
k=kb.kb[k][2]
print("fine")
Esempio:
Sistema esperto per risoluzione problema : non si accende lampadina
-------------------------------------------------------------------
C'è alimentazione di rete in casa ?([s]/n): s
Con una lampadina sana si accende ?([s]/n): n
C'è un problema elettrico o nella spina o nel portalampade([s]/n):
fine
>>>
Questo è un esempio di Sistema Esperto. La base della conoscenza è volutamente molto semplice. Anche il motore inferenziale è abbastanza semplice ma con questo modello potete costruire un Sistema Esperto veramente capace.