Soft computing
La soft computing è una branca dell'informatica che studia i sistemi informatici ispirati alla biologia. La soft computing si occupa di sviluppare sistemi di intelligenza artificiale con funzioni e/o architetture simili a quelle utilizzate dall'uomo. Ad esempio, molte decisioni umane sono prese seguendo delle regole IF-THEN ( se-allora ) in cui al presentarsi di una serie di premesse ( IF ) seguono delle azioni e/o dei comportamenti ( THEN ). Non potendo avere una visione completa dell'ambiente, a causa dell'incertezza e della complessità della realtà, per prendere una particolare decisione l'uomo seleziona soltanto alcune informazioni dall'ambiente esterno. Sono oggetto di studio della soft computing le reti neurali e la logica fuzzy.
- Reti neurali. Le reti neurali sono un'architettura ispirata alla mente umana. Le informazioni sono rappresentate sotto forma di nodi ( neuroni ) e archi ( sinapsi ). Gli archi hanno un verso e un peso numerico modificabile. Le reti neurali offrono uno strumento di percezione e di apprendimento della conoscenza particolarmente adattabile alla complessità della realtà.
- Logica fuzzy. A differenza di un sistema logico formale, la mente umana non lavora a due stati ( vero o falso ) bensì è più sfumata. Anche in natura le informazioni non sono grandezze discrete ( zero o uno ) bensì continue ( analogiche ). A questo si ispira la logica fuzzy, in base alla quale un'affermazione può essere anche parzialmente vera ( es. vera al 75% ) o parzialmente falsa ( vera al 25% ).
- Algoritmi genetici. Gli algoritmi genetici sono sviluppati ispirandosi all'evoluzione, alle leggi di selezione e di mutazione degli organismi viventi. Gli algoritmi genetici offrono un'elevata capacità di ottimizzazione e adattività all'ambiente esterno;
Adattività. Le tecniche della soft computing consentono di realizzare sistemi ad elevata adattività al continuo mutare delle condizioni dell'ambiente esterno. L'aggiornamento o l'aggiunta di nuovi dati non pregiudica l'intero impianto logico del sistema. Nel corso del tempo possono verificarsi conflitti logici tra i fatti ma senza bloccare il funzionamento e la struttura logica della conoscenza. Ad esempio, le reti neurali circoscrivono i conflitti in ambito locale, si adattano e, nel peggiore dei casi, si degradano nel tempo. L'aggiunta di un dato contraddittorio non impedisce alla rete neurale di continuare a funzionare. Al verificarsi di un guasto, il danno viene circoscritto localmente. La logica fuzzy, invece, affronta l'incertezza con le probabilità degli eventi di essere contemporaneamente sia veri che falsi ( logica sfumata ).