sistema esperto
sistema esperto in informatica, locuzione con cui si indica un programma o un insieme di programmi tra loro collegati in grado di risolvere autonomamente problemi, anche complessi, appartenenti a uno specifico campo di competenze, senza che il programmatore abbia esplicitamente e preventivamente considerato tutte le possibili varianti del problema stesso. Tali sistemi costituiscono uno dei prodotti delle ricerche relative all’→ intelligenza artificiale e cominciarono a essere sviluppati attorno agli anni Settanta del xx secolo per rispondere all’esigenza di elaborare sistemi che riproducessero comportamenti intelligenti versatili, cioè applicabili a più settori. Caratteristica dei sistemi esperti è quella di avere capacità di autoapprendimento per cui, opportunamente parametrizzati a seconda dei risultati in uscita (di successo, di fallimento, di maggiore o minore vantaggio conseguito), sono in grado di eseguire autonomamente procedure algoritmiche differenti, anche operando in parallelo.
Un sistema esperto è costituito da una base di conoscenza relativa al dominio dei problemi che deve trattare (per esempio patologia umana, chimica organica, finanza…), da un meccanismo deduttivo (detto motore inferenziale) che consente di trarre conseguenze coerenti con le premesse e i dati del problema, da un modulo di spiegazione che espone il percorso seguito dal sistema per arrivare alle sue conclusioni. Base di conoscenza e motore inferenziale sono memorizzati in un computer che colloquia con l’operatore attraverso un’interfaccia molto elastica, dotata cioè di molte possibilità d’ingresso.
Il primo vantaggio fondamentale dei sistemi esperti consiste nella possibilità di introdurre modalità di ragionamento di tipo qualitativo. La base di conoscenza, infatti, contiene non soltanto le relazioni funzionali di tipo logico-matematico caratteristiche dei tradizionali sistemi di elaborazione, ma anche regole di natura qualitativa che rispecchiano le esperienze degli esperti del settore. Tali regole sono una meccanizzazione della conoscenza non formalizzata, imprecisa e incompleta, acquisita dall’esperto umano nel suo lavoro quotidiano e altrettanto importante della conoscenza formalizzata. Il problema fondamentale che si incontra nella costruzione dei sistemi esperti è proprio la traduzione di questa conoscenza non formalizzata in regole meccaniche sufficientemente rigide per poter essere comprensibili a un elaboratore elettronico e, nello stesso tempo, sufficientemente elastiche per consentire all’elaboratore stesso sufficiente libertà per “scegliere” tra alternative diverse. Il secondo vantaggio, che deriva dal modulo di spiegazione, risiede nel fatto che un sistema esperto non fornisce semplicemente una soluzione all’utente, ma, su richiesta, anche tutto il ragionamento seguito per arrivare a tale risultato. L’utente viene così messo in grado di conoscere l’intero percorso logico seguito dal sistema e le ragioni per cui certe alternative sono state scartate in favore di altre. I sistemi esperti hanno anche il vantaggio di una notevole flessibilità e adattabilità nei riguardi del mutamento delle situazioni: l’aggiornamento della base di conoscenza non procede infatti per sostituzioni, ma soltanto per aggiunte successive.