ITTO20090562A1 - Procedimento per la generazione di un insieme di conflitti per la diagnosi di sistemi basata su modello, e procedimento di diagnosi corrispondente - Google Patents

Procedimento per la generazione di un insieme di conflitti per la diagnosi di sistemi basata su modello, e procedimento di diagnosi corrispondente Download PDF

Info

Publication number
ITTO20090562A1
ITTO20090562A1 IT000562A ITTO20090562A ITTO20090562A1 IT TO20090562 A1 ITTO20090562 A1 IT TO20090562A1 IT 000562 A IT000562 A IT 000562A IT TO20090562 A ITTO20090562 A IT TO20090562A IT TO20090562 A1 ITTO20090562 A1 IT TO20090562A1
Authority
IT
Italy
Prior art keywords
relations
diagnosis
arr
variables
conflicts
Prior art date
Application number
IT000562A
Other languages
English (en)
Inventor
Anthony Barrett
Amir Fijany
Farrokh Vatan
Original Assignee
Fond Istituto Italiano Di Tecnologia
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fond Istituto Italiano Di Tecnologia filed Critical Fond Istituto Italiano Di Tecnologia
Priority to ITTO2009A000562A priority Critical patent/IT1395258B1/it
Priority to US12/841,691 priority patent/US8311783B2/en
Publication of ITTO20090562A1 publication Critical patent/ITTO20090562A1/it
Application granted granted Critical
Publication of IT1395258B1 publication Critical patent/IT1395258B1/it

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Prevention of errors by analysis, debugging or testing of software
    • G06F11/3604Analysis of software for verifying properties of programs
    • G06F11/3608Analysis of software for verifying properties of programs using formal methods, e.g. model checking, abstract interpretation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)
  • Indicating And Signalling Devices For Elevators (AREA)
  • Testing, Inspecting, Measuring Of Stereoscopic Televisions And Televisions (AREA)
  • Telephonic Communication Services (AREA)

Description

"Procedimento per la generazione di un insieme di conflitti per la diagnosi di sistemi basata su modello, e procedimento di diagnosi corrispondente"
DESCRIZIONE
La presente invenzione riguarda in generale la diagnostica dei sistemi e, più specificamente, la generazione di un insieme di conflitti per la diagnosi di un sistema basata su modello, e un procedimento per la diagnosi di un sistema, basato sulla determinazione di un insieme di conflitti rappresentativi del comportamento reale del sistema.
In particolare, l'invenzione ha per oggetto un procedimento per la generazione di un insieme di conflitti del tipo definito nel preambolo della rivendicazione 1, ed un procedimento per la diagnosi di un sistema, secondo il preambolo della rivendicazione 6.
Il funzionamento di un sistema - termine generico col quale si indicheranno in questa descrizione e nelle rivendicazioni allegate impianti industriali, apparecchiature di produzione o di ricerca, macchine di diversi generi (ad esempio, velivoli o sonde spaziali) - à ̈ controllato tipicamente mediante sofisticati sistemi diagnostici in grado di rilevare ed isolare condizioni anomale di funzionamento appena esse si manifestano. Nelle missioni spaziali guidate da terra, in orbita terrestre o nello spazio profondo, grande attenzione à ̈ dedicata alla diagnosi del sistema costituito dal velivolo e dai suoi apparati di bordo, ed in particolare alla rivelazione in tempo reale dei guasti al sistema, al fine di rimediare alle anomalie che potrebbero compromettere la missione.
Il principio fondamentale della diagnosi basata su modelli à ̈ quello di confrontare il comportamento atteso o nominale di un sistema, fornito da un modello del sistema, con il comportamento reale desunto da misure sul sistema, ottenute tramite un insieme di sensori ad esso associati.
In generale, la diagnosi di un sistema basata su modello comprende tre fasi:
- Rivelazione dei guasti: dato uno specifico insieme di ingressi del sistema ed il suo modello, Ã ̈ eseguita una simulazione del sistema per calcolare i valori attesi dei sensori. Ogni discrepanza o incongruenza tra il valore atteso dei sensori ed i loro valori reali rappresenta un guasto. Questa fase consiste essenzialmente nel determinare l'esistenza di incongruenze tra valori attesi ed osservati dei sensori;
- Generazione degli insiemi di conflitti: in questa fase, date le incongruenze tra i valori attesi ed i valori osservati dei sensori, Ã ̈ generato un gran numero di insiemi di conflitti, ciascuno dei quali implica che almeno un suo componente sia guasto per via delle incongruenze osservate;
- Diagnosi: in questa fase, dati gli insiemi di conflitti, il sistema à ̈ diagnosticato, ovvero à ̈ determinato il numero minimo di componenti guasti. Questa fase à ̈ eseguita risolvendo problemi di determinazione di un hitting set, i quali, dati gli insiemi di conflitti, determinano il numero minimo di componenti intersezione di tutti gli insiemi di conflitti. Questo insieme minimo rappresenta l'insieme di componenti guasti all'origine delle incongruenze osservate, e quindi rappresenta, in definitiva, la diagnosi del sistema.
La prima fase di rivelazione dei guasti à ̈ immediata e richiede soltanto una simulazione del sistema. La terza fase à ̈ stata per lungo tempo una limitazione ad una diagnosi efficiente, ma recentemente à ̈ stato sviluppato uno strumento logicomatematico che ha permesso una rapida soluzione del problema di determinazione di un hitting set, anche per sistemi complessi. L'attuale ostacolo ad una rapida diagnosi di sistema à ̈ attualmente l'efficienza nella fase di generazione degli insiemi di conflitti.
Attualmente, vi sono due classi di metodologie ed approcci distinti per la derivazione di insiemi di conflitti.
Negli ultimi decenni la ricerca nel campo della diagnosi di sistemi basata su un modello descrittivo della funzione dei componenti del sistema e della sua connettività (topologia), à ̈ stata condotta essenzialmente secondo due differenti discipline: una, l'approccio di rivelazione e di isolamento dei guasti (Fault Detection and Isolation, FDI), sfrutta la conoscenza completa del sistema ed à ̈ basata sulle teorie dei controlli automatici e decisioni statistiche; l'altra, nota come approccio DX, non necessita della completa conoscenza del sistema ed à ̈ basata su tecniche di intelligenza artificiale applicate ad un insieme di assunzioni sui modi di funzionamento del sistema nel suo complesso.
L'approccio FDI impiega nella sua applicazione le relazioni di ridondanza analitica (Analytical Redundancy Relations, ARRs), note anche come residuo o equazione di parità, che rappresentano ciascuna una differente relazione tra parametri misurati del sistema. Ogni ARR non soddisfatta rappresenta una discrepanza tra il comportamento atteso del sistema e quello reale, e permette di distinguere un funzionamento anomalo del sistema, dovuto alla presenza di qualche guasto, rispetto alla normale attività.
L'approccio DX si fonda invece sul concetto di conflitto, e più in generale di insieme di conflitti (conflict set), che à ̈ un insieme di componenti del sistema, la cui assunzione di corretto funzionamento non à ̈ consistente con il comportamento osservato del sistema.
Recentemente, un quadro unificato delle due teorie citate ne ha ricostruito la sostanziale equivalenza. Il rapporto tra i concetti di relazione di ridondanza analitica e di conflitto à ̈ stato riconosciuto nel fatto che il supporto di una ARR, ovvero l'insieme di componenti coinvolte in tale ARR à ̈ un possibile conflitto, ovvero esiste un possibile scenario di misure sul sistema che produce tale insieme come un conflitto.
Entrambi gli approcci, adottati singolarmente per la conduzione della diagnosi di un sistema, presentano notevoli svantaggi computazionali, che li rendono inefficienti per molte applicazioni di interesse.
Per quanto riguarda l'approccio basato sulle relazioni di ridondanza analitica (ARR), gli algoritmi noti per la generazione di un insieme completo di ARR presentano una complessità di calcolo esponenziale, per cui la generazione e l'applicazione delle ARR risultano, nei casi reali, praticamente impossibili.
Inoltre, per molti sistemi pratici di interesse, l'insieme delle ARR può non essere ottenibile in forma analitica, e ciò ne impedisce il concreto utilizzo.
Nell'approccio DX, invece, l'algoritmo General Diagnosis Engine (GDE) più comunemente impiegato richiede l'esecuzione di molte verifiche di coerenza (consistency checks) tra valori attesi dal modello e valori osservati sul sistema, molte delle quali potrebbero non rivelarsi strettamente necessarie al risultato della diagnosi, per cui anche la sua applicazione determina una complessità esponenziale del calcolo.
Gli approcci DX ed FDI
Nel seguito à ̈ fornita una discussione più approfondita degli approcci alla diagnosi di un sistema secondo le tecniche note DX ed FDI, che risulterà utile a comprendere gli sviluppi dell'invenzione.
Nella diagnosi basata su modelli, i modelli dei dispositivi costituenti un sistema complesso sono oggetto di confronto con le osservazioni del comportamento reale del sistema per rilevare eventuali discrepanze (incongruenze) e diagnosticarne le cause all'origine (guasti).
Un modello di sistema (System Model, SM) consiste di un modello comportamentale (Behavioral Model, BM) e di un modello di osservazioni (Observation Model, OM). Il modello comportamentale BM à ̈ una descrizione del sistema basata sui suoi componenti e consiste di un insieme di relazioni primarie (Primary Relations, PR). Ciascun componente à ̈ descritto dalla funzione che esso realizza, ovvero da una o più relazioni primarie PR e dai suoi ingressi ed uscite, per cui la descrizione basata sui componenti include anche la topologia del sistema. Il modello di osservazioni OM à ̈ l'insieme di relazioni che definiscono le osservazioni che sono effettuate sul sistema attraverso una pluralità di sensori ad esso associati.
In figura 1 à ̈ mostrato l'esempio di un sistema a più porte, consistente di tre moltiplicatori (M1, M2, M3) e due sommatori (A1, A2).
Il modello comportamentale per questo sistema, che ne fornisce una descrizione di componenti e topologia, Ã ̈ dato da un insieme di Relazione Primarie PR e dai componenti loro associati, come definito nel seguito:
PR1: x = a c; M1
PR2: y = b d; M2
PR3: z = c e; M3
PR4: f = x y; A1
PR5: g = y z; A2
L'approccio DX
Dal punto di vista dell'approccio DX ciascuna relazione primaria PR Ã ̈ modellizzata come insieme di regole per propagare valori da una variabile a un'altra.
Ad esempio, il componente moltiplicatore M1Ã ̈ definito dalle seguenti tre regole, che assumono la condizione in cui M1funziona correttamente.
1) x = a c
2) if (a ≠0) then c = x/a
3) if (c ≠ 0) then a = x/c
Si noti che mentre la prima regola inferisce un'uscita dati gli ingressi, le altre due determinano in modo condizionale un ingresso data l'uscita e l'altro ingresso.
Di fatto, l'approccio DX permette a ciascuna variabile di assumere un insieme di possibili valori date diverse assunzioni, e la considerazione di ogni valore insieme all'utilizzo delle relative regole consente di calcolare i valori di altri variabili del sistema. Dal momento che tali calcoli si basano su assunzioni di partenza, un algoritmo DX contraddistingue ciascun valore assegnato ad una variabile con le assunzioni che contribuiscono al suo calcolo (valore contrassegnato).
Pertanto, le regole sopra citate si traducono di fatto nelle seguenti, in cui Svà ̈ l'insieme di valori associabili alla variabile v, e <n:N> Svindica che v à ̈ uguale ad n (ossia, la variabile v assume il valore n) quando à ̈ verificato l'insieme delle assunzioni N.
c
Ad esempio, l'impostazione degli ingressi a=2 e c=2 determina l'aggiunta di <2:{}> in Sae di <2:{}> in Sc, il che porta l'algoritmo DX ad inferire che <3:{M1}> Sx, ciò che innesca ulteriori inferenze aggiungendo un elemento all'insieme Sx.
Una discrepanza o incongruenza sorge durante la propagazione inferenziale dei valori tra le variabili del sistema, dagli ingressi alle uscite, quando due diversi valori sono assegnati alla stessa variabile.
Ad esempio, l'impostazione di tutti gli ingressi del sistema multi-porta di figura 1 a "2" determina per inferenza <8:{M2,M3,A2}> Sg.
Una successiva misurazione g = 9 determina una discrepanza poiché <9:{}> à ̈ anch'esso un elemento di Sgdovuto alla misura, ma non à ̈ coerente con il modello del sistema. L'unione delle assunzioni che contribuiscono a questo risultato porta al riconoscimento di una discrepanza, che implica che M2, M3, o A2deve essere un dispositivo guasto.
Tipicamente, nel corso di una propagazione in ferenziale di valori entro un sistema non sono rintracciate discrepanze, ma quando occorrono guasti al sistema possono apparire molteplici discrepanze. Il processo di inferenza causale continua infatti a determinare nuove discrepanze fino al completamento della propagazione dei valori possibili contrassegnati delle variabili alle uscite del sistema, il che può richiedere molto tempo poiché il numero di valori attribuiti a ciascuna variabile può crescere esponenzialmente col numero di possibili assunzioni. Ciò porta un generico algoritmo DX a richiedere una quantità di tempo esponenziale per la propagazione dei valori nell'intero sistema.
Successivamente, il generico algoritmo DX rintraccia gli insiemi minimi di assunzioni intersezioni di tutte le discrepanze rivelate, che rappresentano le diagnosi delle cause all'origine delle misure contraddittorie.
Purtroppo, il calcolo dell'insieme minimo à ̈ per complessità equivalente ad un problema di calcolo dei primi implicanti, che à ̈ un problema NP-completo.
Per migliorare le prestazioni l'algoritmo DX GDE (General Diagnosis Engine) applica un approccio minimalista alla gestione degli insiemi, eliminando <n:Li> da un insieme se <n:Lj> appartiene all'insieme e LiLi. Ciò à ̈ possibile poiché il secondo elemento rende <n:Li> ridondante quando si determina un valore sulla base delle assunzioni di partenza.
L'insieme di discrepanze à ̈ inoltre minimizzato eliminando una discrepanza ridondante Liquando esiste un'altra discrepanza Ljtale per cui LjLi.Tali test su sottoinsiemi riducono gli oneri computazionali della procedura inferenziale, ma fan sì anche la procedura di test sia richiamata numerose volte nell'algoritmo, il che richiede comunque un tempo di calcolo elevato.
In definitiva, il modello diagnostico secondo l'approccio DX risulta in un sistema in cui ogni variabile può essere testata. L'obiettivo sarebbe tuttavia quello di testare il minor numero di variabili possibile. Effettivamente, un algoritmo DX à ̈ in grado di identificare un numero di possibili diagnosi di una discrepanza e di suggerire la misurazione di un determinato sottoinsieme di variabili per ridurre l'ambiguità della diagnosi.
Benché questo approccio sia in teoria conveniente, all'atto pratico ci si accorge che alcune variabili non possono essere misurate quando il sistema in questione à ̈ distante o irraggiungibile (si pensi a sonde in viaggio nello spazio profondo). L'approccio DX deve dunque essere applicato stabilendo a priori le variabili effettivamente misurabili, ossia i sensori associati al sistema che ne consentono l'osservazione. Sorge dunque il problema di identificare a priori le variabili più appropriate che si vuole rilevare, al fine di minimizzare le ambiguità di diagnosi.
L'approccio FDI
L'aspetto principale per cui l'approccio FDI differisce dall'approccio DX Ã ̈ l'assunzione iniziale che i sensori di osservazione del sistema sono stabiliti a priori.
L'ottimizzazione dei sensori e la tecnica diagnostica si basano sui concetti di relazione di ridondanza analitica (ARR) e matrice di firma dei guasti (FSM).
Nel seguito si introducono e si discutono brevemente i concetti di relazioni di ridondanza analitica (ARR) e matrice di firma dei guasti (Fault Signature Matrix, FSM), per chiarezza e semplicità assumendo il caso di un singolo guasto di un sistema.
L'insieme di variabili (V) di un sistema, ad esempio il sistema di figura 1, può essere scomposto in un insieme di variabili incognite (X) e un insieme di variabili osservate (O), ovvero vale la relazione .
Una relazione di ridondanza analitica (ARR) à ̈ un vincolo dedotto dal modello del sistema (SM). Le ARR possono essere derivate dal modello SM eliminando le variabili incognite dalle Relazioni Primarie. Pertanto una ARR contiene soltanto variabili osservate, e quindi può essere calcolata a partire da esse.
Il supporto di una ARR Ã ̈ il sottoinsieme di componenti coinvolti nella derivazione della ARR.
Per il sistema di figura 1, se i sensori sono disposti alle uscite f e g, e sono noti gli ingressi a, b, c, d, e, allora O = {a, b, c, d, e, f, g} e X = {x, y, z}.
Le ARR risultanti sono date nella tabella 1 seguente:
Tabella 1 – ARR, componenti di supporto e sensori riferiti all'esempio di figura 1
ARR Componenti di Sensori supporto
ARR1: f = ac bd M1, M2, A1f
ARR2: g = bd ce M2, M3, A2g
ARR3: f – g = ac – ce M1, M3, A2, A1f, g
Le ARR sono quindi utilizzate per verificare la consistenza delle osservazioni sul sistema rispetto al modello SM. In altre parole, le ARR sono soddisfatte se il comportamento del sistema osservato soddisfa i vincoli del modello, ossia produce osservazioni attese dal modello.
Nell'assunzione di un singolo guasto, ovvero se una componente del supporto di una ARR à ̈ guasta, allora tale ARR non à ̈ soddisfatta.
Di fatto, con il concetto di insieme di supporto, questa affermazione costituisce il fondamento dell'approccio di diagnosi basata su modelli nell'ambito della metodologia FDI.
Una matrice di firma dei guasti (FSM) à ̈ derivabile dalle ARR. Essa à ̈ definita come una matrice binaria le cui righe sono le ARR generate per il sistema in esame e le cui colonne identificano i componenti del sistema. Un elemento FSijdi questa matrice ha valore 1 se l'associato componente Cidel sistema à ̈ parte del supporto della relazione ARRj, altrimenti FSij= 0. La i-esima colonna corrispondente al componente Cià ̈ definita come vettore di firma del guasto di Cied à ̈ denominata FSVi= [FSVi1, …, FSVin]<t>.
Con riferimento al sistema di figura 1, la FSM può essere derivata dalla tabella 1 ed à ̈ data nella seguente tabella 2.
Tabella 2 – Matrice di firma dei guasti per il sistema di figura 1
A1A2M1M2M3
ARR11 0 1 1 0
ARR20 1 0 1 1
ARR31 1 1 0 1
Il caso di guasti multipli può essere trattato espandendo le colonne della matrice FSM. Il vettore FSV di firma di un guasto multiplo à ̈ ottenibile dai vettori FSVkdi firma dei singoli guasti occorsi simultaneamente eseguendo una operazione di OR logico tra elementi corrispondenti dei rispettivi vettori di firma FSVk. Pertanto, in un sistema con n componenti, la considerazione di tutte le possibili combinazioni di guasti multipli porta a costruire una matrice FSM con 2<n>colonne.
La diagnosi del sistema à ̈ quindi basata sulla valutazione delle ARR, a partire da un insieme di osservazioni del sistema.
Se una ARRià ̈ soddisfatta sulla base delle osservazioni, allora ARRi= 0, altrimenti ARRi= 1. Le ARR sono istanziate con i valori osservati fornendo una firma osservata. La firma della i-esima osservazione à ̈ definita come un vettore binario OSi= [O-Si1, …, OSin]<t>, in cui OSij= 0 se ARRjà ̈ soddisfatta dalle osservazioni, e OSij= 1 altrimenti.
La tabella 3 mostra la diagnosi del sistema di figura 1 sulla base di differenti firme di osservazione.
Tabella 3 – Diagnosi del sistema di figura 1 mediante ARR, per differenti firme di osservazione.
Diagnosi Osservazioni
ARR10 0 1 1 1 ARR20 1 0 1 1 ARR30 1 1 0 1 Diagnosi di gua- nessuno A2; M3A1; M1M2Nessuno sto singolo
Diagnosi di gua- nessuno (A2,M3) (A1,M1) nessuno Tutti gli insto multiplo siemi di guasti doppi, esclusi (A1,M1) e (A2,M3)
La diagnosi à ̈ formulata sulla base dei guasti tenuti in conto nella matrice di firma dei guasti, ovvero una firma osservata OSi= [OSi1,…, OSin]<t>à ̈ consistente con una firma di guasto FSi= [FSi1,…, FSin]<t>se FSij= OSijper ogni j.
Ad esempio, per il sistema di figura 1 la firma di osservazione [0,1,1]<t>Ã ̈ equivalente alla firma di guasto dei componenti A2ed M3.
Si noti che ciò indica che, dipendentemente dai sensori del sistema, i guasti delle componenti A2ed M3non possono essere discriminati, così come nel caso di A1ed M1.
Il criterio di rivelazione ed isolamento (discriminazione dei guasti) può essere descritto in termini di FSM.
Tutti i guasti possono essere rivelati (rivelazione completa) se non vi à ̈ alcuna colonna interamente nulla (ossia, nessun vettore di firma dei guasti nullo) nella FSM. Ovvero, per un dato componente guasto Ci, almeno una ARR viene influenzata. L'isolamento dei guasti à ̈ invece assicurato richiedendo che non esistano due colonne della FSM identiche, dal momento che ciò implicherebbe che i due vettori di firma dei guasti siano identici e che quindi i relativi guasti non possano essere distinti.
Il maggiore inconveniente nell'applicazione delle ARR ad un procedimento di diagnosi à ̈ relativo alla derivazione efficiente dell'insieme completo e non ridondante di ARR, che à ̈ una limitazione degli algoritmi attuali di esecuzione di diagnosi secondo un approccio FDI.
Un primo aspetto da considerare à ̈ innanzitutto il possibile numero di relazioni di ridondanza analitica.
Si consideri un sistema descritto da n relazioni primarie PR (tipicamente ciò significa che il sistema ha n componenti, ma in generale questo potrebbe implicare che il sistema ha al massimo n componenti) ed m sensori (osservazioni) in cui, nella maggior parte dei casi pratici, n > m.
Se si considerano le ARR come funzioni di tutte le possibili combinazioni di osservazioni, allora il numero totale di ARR sarebbe dell'ordine di O(2<m>). D'altro canto, se si considera che le ARR sono ottenute dalla combinazione di relazioni primarie attraverso l'eliminazione delle variabili incognite, ciò implica un limite superiore al numero di relazioni ARR dell'ordine di O(2<n>).
Il punto chiave, che gli inventori ritengono non abbia ricevuto sufficiente attenzione nelle tecniche attualmente applicate, Ã ̈ dato dal fatto che le relazioni ARR possono coinvolgere tutte le possibili combinazione di relazioni primarie PR e di osservazioni.
Di fatto, un medesimo insieme di relazioni primarie può portare a differenti relazioni ARR, ovvero a differenti ARR con il medesimo insieme di componenti di supporto, ma differenti insiemi di osservazioni.
Si possono anche considerare casi in cui un medesimo insieme di osservazioni può portare a differenti relazioni ARR che differiscono nelle proprie componenti di supporto.
Adottando questo punto di vista si può dunque concludere che il limite superiore al numero totale di relazioni ARR à ̈ di fatto dell'ordine di O(2<n+m>). Naturalmente, per ogni sistema di interesse pratico il numero di relazioni ARR à ̈ sempre finito a causa dei vincoli strutturali del sistema.
Un'ulteriore questione fondamentale nell'applicazione delle relazioni ARR sia per la diagnosi di sistemi che per la risoluzione del problema di ottimizzazione dei sensori, à ̈ relativa alla completezza dell'insieme di ARR. Più precisamente, gli inventori sono consapevoli che la questione del minimo insieme completo di ARR non ha finora ricevuto sufficiente attenzione.
In letteratura sono stati discussi i concetti di d-completezza (completezza per la rivelazione dei guasti) e i-completezza (completezza per l'isolamento dei guasti). Tuttavia, questi due concetti possono essere applicati per l'analisi dell'applicabilità di un dato insieme di ARR per la diagnosi di un sistema, mentre non à ̈ affrontato direttamente il problema della derivazione di un insieme completo di relazioni ARR, ma à ̈ altrettanto ovvio che la completezza à ̈ un aspetto fondamentale sia nella diagnosi che nella ottimizzazione dei sensori, dal momento che in entrambi i problemi à ̈ richiesta la maggiore informazione possibile proveniente dalle relazioni ARR.
E' inoltre ovvio che qualsiasi applicazione di un insieme incompleto di relazioni ARR, sia per la diagnosi di un sistema che per l'ottimizzazione dei sensori ad esso associati potrebbe portare a risultati errati e/o subottimali.
Gli inventori, nel proprio articolo dal titolo "A new efficient method for system structural analysis and generating analytical redundancy relations", Proc. IEEE Aerospace Conference, Marzo 2009, hanno presentato un innovativo procedimento per la derivazione di un insieme completo di relazioni di ridondanza analitica, la cui complessità à ̈ pari - nel caso peggiore - solo a O(L<4>), dove L à ̈ il numero di relazioni del sistema, che risolve alcuni limiti degli algoritmi di generazione di ARR fino ad allora noti, svantaggiosamente nondeterministici e di complessità esponenziale.
Un altro aspetto da considerare à ̈ che, benché la complessità di calcolo delle ARR sia specifica di ogni sistema, un comune inconveniente di questa tecnica à ̈ dato dal fatto che per la diagnosi del sistema à ̈ richiesta la valutazione di tutte le ARR, il che comporta significativi oneri di calcolo, anche quando non sono presenti guasti nel sistema. In altre parole, non à ̈ possibile determinare a priori un sottoinsieme di ARR che à ̈ sufficiente calcolare per rispondere alle necessità di diagnosi contingenti.
Altro aspetto meritevole di considerazione à ̈ l'effettiva procedibilità nel calcolo (valutazione) delle ARR. Poiché una ARR à ̈ per definizione ottenibile per combinazione di un insieme di relazioni primarie, tale combinazione può richiedere l'inversione delle funzioni rappresentative di una o più relazioni primarie, espresse in forma analitica. Di fatto, nei sistemi reali che si incontrano in applicazioni pratiche, le funzioni rappresentative della relazioni primarie di alcuni componenti non lineari non possono essere invertite in forma analitica, ma solo in forma numerica, il che rappresenta un ulteriore forte inconveniente che accresce gli oneri computazionali della procedura e ne limita l'applicazione pratica.
Infine, come più sopra richiamato, successivamente alla valutazione delle ARR ed alla formazione del vettore delle osservazioni o firme osservate, quest'ultimo deve essere confrontato con i vettori dei guasti nella matrice FSM. Benché questa operazione sia piuttosto semplice, la complessità à ̈ accresciuta nel caso di diagnosi di guasti multipli.
Se si considera un sistema con n componenti e tutte le possibili combinazioni di guasti, allora si formerebbe una matrice FSM di 2<n>colonne, il che comporta una crescita esponenziale nello spazio di memoria da allocare alla FSM nel sistema di elaborazione per l'esecuzione dell'algoritmo di diagnosi e nel tempo di calcolo impiegato da tale sistema per il confronto del vettore di osservazione con i vettori di guasti.
* * *
La presente invenzione si prefigge lo scopo di fornire una soluzione soddisfacente ai problemi in precedenza esposti, evitando gli inconvenienti della tecnica nota.
Più in particolare, la presente invenzione si prefigge lo scopo di fornire un procedimento efficiente, in particolare dal punto di vista computazionale, e corretto per la diagnosi tempestiva di guasti critici ad un sistema, basata su un modello del sistema.
Secondo la presente invenzione tali scopi vengono raggiunti grazie ad un procedimento per la generazione di un insieme di conflitti per la diagnosi di un sistema basata su modelli, avente le caratteristiche richiamate nella rivendicazione 1, ed un procedimento di diagnosi avente le caratteristiche richiamate nella rivendicazione 6.
Modi particolari di realizzazione formano oggetto delle rivendicazioni dipendenti, il cui contenuto à ̈ da intendersi come parte integrale o integrante della presente descrizione.
Formano ulteriore oggetto dell'invenzione un sistema di diagnosi ed un programma per elaboratore per l'attuazione dei suddetti procedimenti, come rivendicato.
La presente invenzione si fonda sul principio di combinare le caratteristiche vantaggiose degli approcci DX e FDI sopra descritti, ed in particolare dell'algoritmo DX GDE e dell'algoritmo FDI basato sulle ARR, evitando l'applicazione integrale di ognuno di essi, che farebbe incorrere nei rispettivi svantaggi sopra menzionati.
In particolare, il procedimento oggetto dell'invenzione trae vantaggio dall'approccio di diagnosi basato sulle ARR, che corrispondono ai potenziali conflitti alla base della tecnica di diagnosi DX, in quanto le ARR sono generate a priori una sola volta per un dato sistema. Ciò consente di eseguire una diagnosi più rapida, in confronto con la ripetuta esecuzione di algoritmi di ricerca degli insiemi di conflitti secondo l'approccio DX.
Più specificamente, le relazioni di ridondanza analitica sono ricavate secondo il procedimento descritto dagli inventori nel citato articolo "A new efficient method for system structural analysis and generating analytical redundancy relations", Proc. IEEE Aerospace Conference, Marzo 2009.
Ciascuna relazione intermedia, di seguito indicata brevemente Rj, impiegata per derivare l'insieme di relazioni di ridondanza analitica ARR, che per definizione comportano solo variabili note (osservazioni), Ã ̈ data da una quadrupla della forma seguente:
Rj= (Nj, Cj, Sj, Tj) in cui Njà ̈ il numero d'ordine assegnato alla relazione Rj, Cjà ̈ l'insieme delle componenti di supporto, Sjà ̈ l'insieme delle variabili coinvolte in Rje Tjà ̈ l'insieme delle relazione primarie utilizzate per derivare la relazione Rj.
Specificamente, ciascuna relazione primaria à ̈ rappresentata da una quadrupla di forma
Rj= (nj, Cj, Sj, {nj}) in cui njà ̈ il numero della relazione primaria, e dal momento che ciascuna relazione primaria non dipende dalle altre relazioni, l'ultima componente della quadrupla à ̈ {nj}.
Operazione di base del procedimento di generazione di un insieme completo di ARR Ã ̈ la generazione di una nuova relazione a partire da due relazioni date, per eliminazione di una variabile comune.
Date due relazioni:
Rj= (Nj, Cj, Sj, Tj) e Rk= (Nk, Ck, Sk, Tk) se sono soddisfatte entrambe le seguenti condizioni:
Sj∩ Sk≠ {} e Tj∩ Tk= {} allora, per ciascuna variabile non osservata x∈Sj∩ Sksi genera la seguente relazione R=(N, Cj∪Ck, (Sj∪Sk)−{x}, Tj∪ Tk ), in cui N à ̈ un nuovo numero.
Poiché à ̈ possibile che si ottengano le medesime relazioni (intermedie o ARR) attraverso differenti derivazioni, per evitare di mantenere diverse copie di una medesima relazione, due relazioni Rj= (Nj, Cj, Sj, Tj) e Rk= (Nk, Ck, Sk, Tk) si definiscono identiche se
(Sj, Tj) = (Sk, Tk)
e nel processo di generazione delle ARR, se una nuova relazione intermedia o una ARR à ̈ identica ad una generata precedentemente, allora essa à ̈ cancellata dall'elenco.
Si noti che la generazione di ogni nuova relazione à ̈ eseguita in forma implicita attraverso operazioni su insiemi, senza necessità di determinare a priori alcuna espressione analitica e calcolare l'inversione delle funzioni rappresentative di una o più relazioni.
A partire dall'insieme completo di relazioni di ridondanza analitica in forma implicita à ̈ comunque possibile derivare la matrice FSM del sistema, senza necessità di conoscere esattamente le funzioni analitiche di ciascuna relazione e di calcolarne l'inversione, ricorrendo alla derivazione della forma esplicita ed alla valutazione esclusivamente di un sottoinsieme limitato di relazioni ARR per l'effettiva diagnosi del sistema.
Ogni ARR necessaria alla diagnosi del sistema può essere calcolata numericamente considerando l'insieme di relazioni primarie coinvolte nella sua derivazione, nonché il suo percorso di derivazione, ossia l'ordine di combinazione delle suddette relazioni primarie. Occorre evidenziare che la valutazione del sottoinsieme di ARR richiede esclusivamente l'inversione numerica della relativa funzione e non la determinazione della forma analitica della sua inversa.
In tal modo à ̈ possibile sfruttare le due caratteristiche vantaggiose dell'approccio di diagnosi basato sulla valutazione delle ARR, ossia la derivazione in una sola occasione delle relazioni di ridondanza analitica che stabiliscono le relazioni tra i valori osservati dei sensori ed i componenti del sistema, nonché la possibilità di derivazione della matrice di firma dei guasti per una analisi a priori delle proprietà di rivelazione ed isolamento dei guasti del sistema e la determinazione degli insiemi di ambiguità nella diagnosi.
Per ovviare all'onere computazionale proprio di una diagnosi basata su ARR secondo la tecnica nota FDI, che richiederebbe la valutazione di tutte le ARR, tanto più impegnativa quanto più le relative espressioni analitiche non sono disponibili e devono essere calcolate numericamente, poiché la derivazione delle ARR deve essere convenientemente effettuata in tempo reale ogniqualvolta à ̈ eseguito l'algoritmo di diagnosi, l'invenzione si basa sul principio di ridurre il numero di ARR da valutare quale chiave per migliorare l'efficienza del procedimento di diagnosi.
Come discusso nell'articolo di M-O.Cordier et al. "Conflicts vs. analytical redundancy relations: a comparative analysis of the model based diagnosis approach from the artificial intelligence and automatic control perspectives", IEEE Transactions on Systems, Men and Cybernetics, Part B: Cybernetics, vol. 34, n. 5, pagg. 2163-2177, Ottobre 2004, le ARR possono essere raggruppate in ARR di rivelazione (D-ARR) e ARR di isolamento (I-ARR). Le D-ARR riguardano un solo sensore o variabile di osservazione del sistema (quindi il loro numero complessivo à ̈ pari a quello dei sensori), mentre le I-ARR dipendono ciascuna da più sensori (variabili di osservazione del sistema). Il meccanismo di generazione delle ARR individua direttamente da quali e quanti sensori dipendono, quindi ne permette automaticamente la classificazione.
Nell'esempio del sistema multi-porta di figura 1, ARR1ed ARR2sono D-ARR, mentre ARR3Ã ̈ una I-ARR.
Secondo l'invenzione, solo le D-ARR determinano i valori attesi dei sensori.
Queste ARR rappresentano di fatto la simulazione del sistema, ovvero le relazioni per il calcolo dei valori attesi dei sensori utilizzando il modello di sistema, per un dato insieme di valori delle variabili di ingresso. Si noti che ciascuna D-ARR coinvolge solo un sensore, e quindi il numero di D-ARR corrisponde al numero complessivo prestabilito dei sensori del sistema. Inoltre, esse non necessitano di una inversione della relativa funzione.
Pertanto, un primo passo del procedimento oggetto dell'invenzione per la generazione di un insieme di conflitti e la diagnosi di un sistema comprende una operazione di rivelazione dei guasti, in cui dato un insieme di ingressi à ̈ eseguita una simulazione sulla base del modello del sistema per definire i valori attesi dei sensori. Ciò corrisponde alla valutazione delle D-ARR. Se il valore atteso dei sensori corrisponde a quello misurato, ovvero le D-ARR sono soddisfatte, allora non vi sono guasti al sistema.
Se i valori attesi dei sensori sono differenti da quelli misurati, ciò rappresenta una discrepanza, secondo la definizione dell'approccio DX.
E' quindi eseguito un successivo passo di generazione di conflitti a partire dalla conoscenza dei sensori che rappresentano le discrepanze rivelate, ossia quei sensori i cui valori attesi sono differenti da quelli misurati.
Secondo l'invenzione, dall'insieme di I-ARR quelle che non comportano alcun sensore che presenti una discrepanza sono necessariamente soddisfatte, dal momento che esse rappresentano relazioni tra gli ingressi del sistema e le misure risultanti corrette, attese dal modello. Al contrario, le I-ARR che comportano uno o più sensori che presentano discrepanze sono considerate come potenziali conflitti.
Le I-ARR che comportano uno o più sensori che presentano discrepanze (sottoinsieme di tutte le I-ARR possibili) sono quindi calcolate e valutate eseguendo una verifica di consistenza (consistency check).
La verifica di consistenza determina se ciascuna I-ARR in esame, ossia facente parte di quelle che dipendono da più sensori che coinvolgono componenti guasti, à ̈ soddisfatta oppure no. Questo controllo non viene eseguito calcolando esplicitamente la I-ARR (che à ̈ generata solo in forma implicita, dato che una forma esplicita o analitica potrebbe non esistere), ma calcolando la coerenza dei risultati delle relazioni primarie che sono coinvolte nella I-ARR medesima: se queste sono coerenti, la relativa I-ARR à ̈ soddisfatta, altrimenti no.
Una I-ARR soddisfatta à ̈ esclusa delle successive operazioni. Il supporto di ciascuna I-ARR che viene riconosciuta come non soddisfatta rappresenta definitivamente un conflitto.
A questo punto, avendo determinato le ARR non soddisfatte si può formare un vettore di osservazione ed eseguire la diagnosi del sistema mediante la matrice FSM, secondo un approccio FDI.
Come si comprenderà, questo approccio innovativo misto permette di raggiungere una maggiore efficienza rispetto alla singola tecnica GDE o alla singola tecnica di diagnosi basata su ARR, poiché limita il calcolo alla valutazione di un sottoinsieme delle ARR.
Infine, poiché per sistemi complessi la diagnosi di guasti multipli mediante una matrice FSM espansa determinerebbe oneri crescenti esponenzialmente in termini di tempo di calcolo e spazio di memoria, à ̈ preferibile l'esecuzione di una diagnosi minima attraverso la risoluzione del relativo problema di determinazione dell'"hitting set" o insieme minimo intersezione di tutti gli insiemi dei potenziali conflitti così determinati, ossia dell'insieme minimo di componenti di cui almeno uno à ̈ contenuto in ciascuno degli insiemi di potenziali componenti guasti, definiti dalle ARR non soddisfatte. Benché il problema di determinazione dell'"hitting set" sia un problema NP-completo à ̈ possibile risolverlo efficientemente in casi pratici, ad esempio applicando l'algoritmo di brench-and-bound descritto da A. Fijany e F. Vatan in "New high performance algorithmic solution for diagnosis problem", Proc. IEEE Aerospace conference, Marzo 2005, e nel brevetto statunitense US 7 249 003 dal titolo "System for solving diagnosis and hitting set problems, degli stessi autori.
Ulteriori caratteristiche e vantaggi dell'invenzione verranno più dettagliatamente esposti nella descrizione particolareggiata seguente, data a titolo di esempio non limitativo, con riferimento ai disegni allegati, nei quali:
la figura 1 rappresenta uno schema circuitale di un sistema multi-porta analizzato nella parte introduttiva di questa descrizione; e
le figure 2a e 2b rappresentano rispettivi schemi circuitali di circuiti combinatori a cui à ̈ applicato il procedimento oggetto dell'invenzione.
Un sistema di elaborazione per la diagnosi di un sistema secondo il procedimento oggetto dell'invenzione comprende una stazione di lavoro computerizzata (workstation) di tipo noto (non raffigurata), ovvero un sistema di elaborazione di tipo distribuito, avente un sottosistema elaboratore e dispositivi periferici di ingresso/uscita, locali o remoti, predisposti per eseguire un programma di elaborazione e calcolo o gruppi/moduli di programma memorizzati su disco o accessibili in rete, che realizzano il procedimento (algoritmo) oggetto dell'invenzione. Tali soluzioni qui richiamate sono considerate ben note nella tecnica e non saranno ulteriormente descritte in questa sede perché di per sé non rilevanti ai fini dell'attuazione e della comprensione della presente invenzione.
Per meglio comprendere lo sviluppo del procedimento misto oggetto dell'invenzione basato sulla derivazione di relazioni di ridondanza analitica implicite e l'estrapolazione da esse di un insieme di conflitti per la diagnosi di un sistema, Ã ̈ utile fornire una sintetica introduzione all'approccio DX secondo lan tecnica nota, per poterne estendere la portata in un quadro di notazioni comuni al presente procedimento.
Secondo l'approccio DX, le variabili di un sistema sono rappresentate da un vettore di variabili e ciascuna relazione primaria PR Ã ̈ rappresentata da un insieme di regole per la propagazione dei valori da una variabile all'altra.
Ciascuna regola include cinque componenti, espresse nel seguito, in cui le variabili sono indicate dal vettore Vars[].
- out indice in Vars[]
- in[] vettori di indici in Vars[] - Fn() funzione sugli ingressi
- Tst() test sugli ingressi
- A assunzione
In un tradizionale approccio DX ciascun elemento di Vars[] contiene un insieme di zero o più espressioni nella forma <valore:{assunzioni}>, che denotano che una variabile può assumere un particolare valore in funzione di quale insieme di assunzioni valga. Ad esempio, con riferimento al sistema multi-porta di figura 1, la prima regola, espressione del moltiplicatore M1, avrebbe le seguenti cinque componenti, in cui gli indici 1, 3, 6 nel vettore Vars[] indicano le variabili "a", "c" e "x", rispettivamente.
- out = 6
- in[] = [1,3]
- Fn() = moltiplica() – moltiplica semplicemente gli ingressi
- Tst() = vero() – ritorna semplicemente vero
- A = M1
Data questa rappresentazione delle variabili e delle regole, la propagazione dei valori nel sistema segue l'algoritmo in tabella 4, che rappresenta la routine Propagate() in cui Vars[V] assume un valore C ogniqualvolta risulta vero l'insieme di assunzioni S non contraddittorio.
Per determinare se un insieme di assunzioni à ̈ contraddittorio oppure no à ̈ eseguito il confronto con gli elementi di un insieme NGDS, contenente tutti gli insiemi contraddittori di assunzioni noti.
Tabella 4 - Routine di propagazione dei valori tra variabili di un sistema, secondo un insieme di regole predeterminate
La routine di propagazione Propagate() riceve le proprie variabili di ingresso ed un insieme di regole (Rules) ed esegue iterazioni su ciascuna regola che abbia Vars[V] come ingresso. Poiché ciascuna regola presenta molteplici variabili di ingresso, e ciascuna variabile può avere molteplici valori in funzione delle assunzioni, ciascuna regola può propagare numerosi valori, in funzione dei propri ingressi. Questo calcolo, per ogni regola, à ̈ eseguito dal ciclo interno della routine che assicura che l'ingresso per V sia <C:S>.
Ciascuna iterazione del ciclo interno esegue due test per determinare se la regola deve applicarsi al proprio insieme di ingressi. Gli ingressi tenuti in considerazione nel calcolo devono superare la funzione di test Tst() delle regole e le assunzioni non devono contraddirsi tra loro. Le contraddizioni sono testate raccogliendo l'unione delle assunzioni e determinando se l'insieme risultante contiene un insieme contraddittorio appartenente a NGDS.
Ogniqualvolta si applica una regola viene calcolato un valore contrassegnato da assegnare ad una variabile di uscita e le assegnazioni di tali valori sono raccolte nell'insieme agenda2 di relazioni non soddisfatte (insieme di conflitti) e infine ritornati all'algoritmo chiamante.
L'algoritmo DX
L'algoritmo maggiormente applicato nella letteratura DX, che utilizza la routine di propagazione sopra richiamata, Ã ̈ certamente l'algoritmo GDE.
L'approccio generale usato nella tecnica DX à ̈ quello di assumere un insieme di osservazioni e propagarle attraverso un modello del sistema, ricercando le inconsistenze tra le assunzioni e le osservazioni. Date queste inconsistenze, l'algoritmo DX ricerca l'insieme delle assunzioni non rispettate che tiene conto nel modo più appropriato delle osservazioni.
Ad esempio, la seguente tabella 5 contiene un algoritmo mGDE, variante semplificata dell'algoritmo GDE, che usa la procedura Propagate() per la propagazione dei valori.
Tabella 5 - Algoritmo DX di propagazione dei valori
Questo algoritmo assume semplicemente un'agenda iniziale di assegnazioni di valori contrassegnati e li elabora per determinare insiemi di assunzioni reciprocamente inconsistenti.
Ciascuna iterazione, che avviene attraverso il ciclo WHILE più esterno, elabora una singola assegnazione di un valore contrassegnato. Se tale assegnazione non à ̈ ridondante rispetto ai valori contrassegnati già associati alla relativa variabile, allora essa à ̈ aggiunta all'insieme di valori con trassegnati della variabile. Quando un'aggiunta rende altri valori contrassegnati ridondanti, questi sono allora rimossi dall'insieme della variabile. Formalmente, un valore contrassegnato <C:S> rende <C:T> ridondante ogniqualvolta le assunzioni S implicano le assunzioni T, o in altri termini, S T.
Una volta che un valore contrassegnato à ̈ assegnato ad una variabile il ciclo FOR più interno gestisce gli insiemi di assunzioni inconsistenti. Innanzitutto, una variabile non può avere due valori allo stesso tempo, quindi questa condizione à ̈ indicata come una inconsistenza. Le inconsistenze sono aggiunte all'insieme NGDS una volta rimosse le ridondanze, dove un insieme à ̈ considerato ridondante se esso à ̈ un superinsieme di un altro. Queste inconsistenze contribuiscono anche a rimuovere elementi dall'agenda e dal vettore Vars[] quando le loro etichette sono riconosciute come inconsistenti.
Infine, il risultato ultimo ritornato dalla routine mGDE Ã ̈ l'hitting set delle inconsistenze, ovvero l'insieme che contiene almeno un elemento da ciascuno degli insiemi di inconsistenze.
L'insieme di diagnosi à ̈ dato dall'insieme dei minimi hitting set di NGDS.
L'algoritmo basato sulle ARR implicite, oggetto dell'invenzione
Si consideri una ARR come una equazione analitica da verificare ed un insieme di assunzioni che si rivelano mutuamente inconsistenti quando l'equazione non à ̈ verificata.
Invece dell'equazione da verificare, si caratterizza esclusivamente l'insieme di sensori che intervengono nella verifica dell'equazione. Pertanto, una ARR per un sistema diagnosticabile adottando il procedimento secondo l'invenzione presenta due componenti:
- sensors un insieme di variabili rilevate o rilevabili; e
- assume un insieme di assunzioni
Utilizzando questa caratterizzazione delle ARR l'algoritmo di diagnosi include un modello DX del dispositivo per verificare ciascuna ARR e la procedura (l'algoritmo) di diagnosi per mezzo delle ARR somiglia a quello riportato in tabella 4, in cui gli ingressi denotano valori imposti al sistema e le uscite denotano i valori rilevati. Ciò differisce sostanzialmente dalla procedura mGDE sopra richiamata, che si basa solo sull'agenda di parametri, con assegnazioni di valori contrassegnati per entrambi gli ingressi e le uscite.
Come mostrato in tabella 6 seguente, l'algoritmo esegue inizialmente un ciclo WHILE per simulare un sistema a partire dagli ingressi imposti e calcolare le uscite attese.
Tabella 6 - Procedura di diagnosi basata sulle ARR implicite
Le uscite calcolate sono quindi confrontate con le uscite rilevate per determinare l'insieme BADS di valori rilevati che risultano inconsistenti con i valori attesi calcolati.
Questo insieme à ̈ quindi utilizzato per determinare quali ARR devono essere verificate ulteriormente, al fine di calcolare la pluralità di insiemi di assunzioni inconsistenti (conflitti). Pertanto, il successivo ciclo FOR esegue una iterazione su per ciascuna ARR e verifica se i sensori che contribuiscono a tale ARR intersecano l'insieme BADS.
La verifica di una ARR comporta di considerare se gli ingressi ed i valori rilevati siano consistenti con le regole implicate dalle assunzioni della ARR medesima. Pertanto, il ciclo WHILE più interno ha notevoli somiglianze con l'algoritmo mGDE. La differenza primaria à ̈ data tuttavia dal fatto che i valori non sono contrassegnati. Ne deriva che il test delle ARR fallisce ogniqualvolta due valori differenti sono assegnati alla medesima variabile. Per questo motivo le etichette sono completamente superflue ed una variabile non possiederà mai più di un valore ad essa associato.
Per questo motivo, la chiamata della procedura Propagate() da parte della routine mARR non ritorna mai più di un valore da aggiungere all'insieme A-genda di relazioni non soddisfatte o conflitti.
Conclusioni
Una verifica delle prestazioni del procedimento oggetto dell'invenzione à ̈ stata condotta confrontando l'esito di un procedimento di diagnosi basato su un tradizionale approccio DX con l'esito di un procedimento di diagnosi basato sull'algoritmo proposto dagli inventori, tramite la verifica su circuiti composti da sommatori e moltiplicatori come il circuito multi-porta di esempio, rappresentato in figura 1.
Per verificare la correttezza degli approcci sono stati provocati guasti in ciascun elemento del sistema ed entrambi gli algoritmi sono stati eseguiti per ottenere un insieme di risultati di diagnosi, i quali sono poi stati confrontati tra loro per verificare se restituivano i medesimi insiemi di diagnosi.
A titolo esemplificativo, sono stati sottoposti a test due strutture circuitali rappresentate nelle figura 2a e 2b, che mostrano due schemi di circuiti combinatori includenti sommatori e moltiplicatori, dove gli ingressi sono raffigurati in alto e le uscite in basso. Specificamente, il primo esempio à ̈ una estensione del circuito multi-porta di figura 1, mentre il secondo rappresenta un circuito dalla connettività più complessa.
Per ottenere informazioni sulle prestazioni relative tra l'algoritmo di tecnica nota e l'algoritmo oggetto dell'invenzione, essi sono stati eseguiti su entrambi i circuiti per diagnosticare un guasto imposto ad una delle porte.
In tutti i casi, gli algoritmi di diagnosi hanno calcolato il medesimo insieme NGDS e hanno fornito in uscita i medesimi insiemi di diagnosi, in cui una delle diagnosi riconosciute era effettivamente la porta guasta.
Poiché gli insiemi NGDS erano identici, la miglior misura relativa della quantità di calcolo eseguita da ciascun algoritmo à ̈ rappresentata dal numero totale di assegnazioni di valori contrassegnati, forniti in uscita dalla routine Propagate().
La tabella 7 riporta, a scopo di confronto, alcuni risultati statistici per ciascuno dei tre sistemi descritti nelle figure 1, 2a e 2b.
Tabella 7 - Risultati del confronto tra procedimenti di diagnosi
#ARR mGDE mARR Circuito Fig. 1 3 45,8 9,3 Circuito Fig. 2a 39 1390,5 408,9 Circuito Fig. 2b 94 1807,7 1244,2 Nella prima colonna à ̈ riportato il numero di ARR richieste per diagnosticare il circuito. Nel caso in cui una qualsiasi di queste ARR sia rimossa, la procedura mGDE non fornisce la stessa diagnosi della procedura mARR, il che dimostra che l'intero insieme di ARR à ̈ necessario, ed à ̈ conveniente che si determinato col minor onere computazionale possibile.
La seconda colonna rappresenta il numero totale medio di calcoli effettuati dalla procedura Propagate() richiamata dalla routine mGDE, mentre la terza colonna rappresenta il numero totale medio di calcoli effettuati della procedura Propagate() richiamata dalla routine mARR.
Questi valori sono stati determinati iterando l'algoritmo per tutti i test con nessun guasto e con un guasto, sommando il numero di assegnazioni contrassegnate risultanti, e dividendo tale numero per il numero di iterazioni eseguite. Si nota chiaramente che la routine mARR oggetto dell'invenzione offre prestazioni decisamente migliori della routine mGDE.
Vantaggiosamente, dunque, il metodo oggetto dell'invenzione rende possibile la diagnosi efficiente di un sistema sfruttando, in una combinazione innovativa, i punti forti dei metodi di diagnosi bastati sulle ARR e sulla tecnica DX, ma nel contempo evitandone gli inconvenienti, ottenendo prestazioni superiori ai procedimenti di diagnosi interamente basati sulla valutazione delle ARR o, in alternativa, sull'approccio DX.
La metodologia proposta rende possibile la più efficiente ed accurata derivazione degli insiemi di conflitti per la diagnosi di un sistema. Analogamente all'approccio FDI, essa impiega le ARR, ma in forma implicita e non in forma esplicita ed analitica, per cui può essere praticamente applicata ad ogni sistema. In modo analogo all'approccio DX, essa impiega le verifiche di consistenza per valutare alcune assunzioni sul sistema, ma diversamente da tale approccio essa sfrutta la conoscenza completa del sistema, fornita dalle ARR implicite, e riduce pertanto drasticamente il numero di verifiche di consistenza, a beneficio dell'efficienza.
La derivazione rapida e corretta di un insieme di conflitti à ̈ alla base per una efficiente e rapida diagnosi di un sistema, che consenta di attuare una strategia di recupero ed evitare la perdita del sistema ed ulteriori possibili danni.
Naturalmente, fermo restando il principio dell'invenzione, le forme di attuazione ed i particolari di realizzazione potranno essere ampiamente variati rispetto a quanto à ̈ stato descritto ed illustrato a puro titolo di esempio non limitativo, senza per questo allontanarsi dall'ambito di protezione dell'invenzione definita dalle rivendicazioni allegate.

Claims (8)

  1. RIVENDICAZIONI 1. Procedimento attuabile per mezzo di un elaboratore per la generazione di un insieme di conflitti per la diagnosi di un sistema descrivibile da un modello basato sulla configurazione di componenti del sistema, comprendente un insieme di relazioni primarie tra ingressi ed uscite di ciascuna componente, indicative della relativa funzione operativa, ed al quale à ̈ associata una pluralità di sensori per l'osservazione di variabili indicative di condizioni di funzionamento, in cui detto insieme di conflitti comprende un sottoinsieme di componenti del sistema la cui assunzione di corretto funzionamento non à ̈ consistente con il comportamento osservato del sistema, il procedimento essendo caratterizzato dal fatto che comprende le operazioni di: - generare, in via preliminare, un insieme completo di relazioni di ridondanza analitica (ARR) in forma implicita per il sistema, in cui ogni relazione à ̈ rappresentativa delle relazioni logiche tra un sottoinsieme di variabili osservabili del sistema ed un corrispondente sottoinsieme di componenti di supporto del sistema, e per ogni istanza di diagnosi - eseguire una simulazione del sistema sulla base del modello, dato un prestabilito insieme di valori agli ingressi del sistema, calcolando i valori attesi di un primo sottoinsieme di relazioni di ridondanza analitica (D-ARR) comprendente le relazioni che includono rispettivamente una sola variabile di osservazione del sistema, - confrontare i valori attesi ed i valori osservati delle variabili di osservazione del sistema ed identificare le variabili di osservazioni discrepanti ovvero le relazioni di ridondanza di detto primo sottoinsieme che non sono soddisfatte, indicative di un guasto in almeno un componente del sistema; e nel caso di rivelazione di discrepanze, - verificare la consistenza di ciascuna relazione di un secondo sottoinsieme di relazioni di ridondanza analitica (I-ARR) comprendente relazioni che includono rispettivamente una pluralità di variabili di osservazione del sistema, almeno una delle quali presenta discrepanze tra i valori attesi ed i valori osservati; e - identificare l'insieme dei supporti delle relazioni di ridondanza di detto secondo sottoinsieme che non sono soddisfatte come insieme di con flitti del sistema, atti a consentire la rivelazione e la discriminazione dei guasti al sistema.
  2. 2. Procedimento secondo la rivendicazione 1, caratterizzato dal fatto che comprende la selezione di un insieme completo di relazioni di ridondanza analitica (ARRk) del sistema tra un insieme di relazioni intermedie stabilite tra variabili osservabili e non osservabili del sistema, in cui ogni relazione intermedia (Rj) à ̈ generata per combinazione di due relazioni predeterminate Rj= (Nj, Cj, Sj, Tj) e Rk= (Nk, Ck, Sk, Tk) Nj, Nkessendo i numeri d'ordine assegnati rispettivamente alle relazioni Rj, Rk, ciascuna delle quali à ̈ espressa in forma implicita come tupla (i) di un sottoinsieme Sjdi variabili del sistema, (ii) dell'insieme Cjdelle componenti di supporto a tale relazione, e (iii) dell'insieme Tjdelle relazione primarie utilizzate per derivare detta relazione intermedia, secondo la regola: R=(N, Cj∪Ck, (Sj∪Sk)−{x}, Tj∪ Tk ), dove (Sj∪Sk) −{ x } indica una operazione di differenza simmetrica tra i sottoinsiemi di variabili Sj, Skper ciascuna variabile non osservabile x∈Sj∩ Sk, quando sono soddisfatte entrambe le condizioni: Sj∩ Sk≠ {} e Tj∩ Tk= {}
  3. 3. Procedimento secondo la rivendicazione 2, caratterizzato dal fatto che detto insieme di relazioni intermedie non include relazioni intermedie identiche, secondo la relazione di identità: (Sj, Tj) = (Sk, Tk).
  4. 4. Procedimento secondo la rivendicazione 1, 2 o 3, in cui la verifica della consistenza di ciascuna relazione di detto secondo sottoinsieme di relazioni di ridondanza analitica (I-ARR) Ã ̈ eseguita verificando la coerenza dei risultati delle relazioni primarie coinvolte nella relazione, espressa in forma implicita.
  5. 5. Procedimento secondo una qualsiasi delle rivendicazioni precedenti, comprendente l'operazione di derivare, a partire dall'insieme completo di relazioni di ridondanza analitica generato in forma implicita, la matrice di firma dei guasti per una condizione teorica di guasto singolo, per analizzare le proprietà di rivelazione ed isolamento di guasti del sistema e determinarne gli insiemi di ambiguità.
  6. 6. Procedimento per la diagnosi di un sistema al quale à ̈ associata una pluralità di sensori per l'osservazione di variabili indicative di condizioni di funzionamento, basata su un modello del sistema rappresentativo della configurazione di componenti del sistema, includente un insieme di relazioni primarie tra ingressi ed uscite di ciascuna componente, indicative della relativa funzione operativa, comprendente: - la simulazione del sistema sulla base del modello; - la rivelazione di guasti al sistema per confronto tra i valori attesi dalla simulazione ed i valori osservati delle variabili di osservazione del sistema; - la generazione di almeno un insieme di conflitti comprendente un sottoinsieme di componenti del sistema la cui assunzione di corretto funzionamento non à ̈ consistente con il comportamento osservato del sistema; e - la determinazione del minimo numero di componenti coinvolti nella generazione di discrepanze tra il comportamento atteso del sistema e quello reale, intersezione di tutti gli insiemi di conflitti generati; caratterizzato dal fatto che la generazione degli insiemi di conflitti à ̈ effettuata attraverso un procedimento secondo una qualsiasi delle rivendicazioni 1 a 5.
  7. 7. Sistema di diagnosi, comprendente un complesso di elaborazione predisposto per attuare un procedimento per la generazione di un insieme di conflitti e la diagnosi di un sistema descrivibile da un modello, secondo una qualsiasi delle rivendicazioni 1 a 6.
  8. 8. Programma di elaboratore o gruppo di programmi eseguibile/i da un complesso di elaborazione, comprendente/i uno o più moduli di codice per l'attuazione di un procedimento per la generazione di un insieme di conflitti e la diagnosi di un sistema descrivibile da un modello, secondo una qualsiasi delle rivendicazioni 1 a 6.
ITTO2009A000562A 2009-07-23 2009-07-23 Procedimento per la generazione di un insieme di conflitti per la diagnosi di sistemi basata su modello, e procedimento di diagnosi corrispondente IT1395258B1 (it)

Priority Applications (2)

Application Number Priority Date Filing Date Title
ITTO2009A000562A IT1395258B1 (it) 2009-07-23 2009-07-23 Procedimento per la generazione di un insieme di conflitti per la diagnosi di sistemi basata su modello, e procedimento di diagnosi corrispondente
US12/841,691 US8311783B2 (en) 2009-07-23 2010-07-22 Method for the generation of a set of conflicts for model-based system diagnostics, and corresponding diagnostic method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
ITTO2009A000562A IT1395258B1 (it) 2009-07-23 2009-07-23 Procedimento per la generazione di un insieme di conflitti per la diagnosi di sistemi basata su modello, e procedimento di diagnosi corrispondente

Publications (2)

Publication Number Publication Date
ITTO20090562A1 true ITTO20090562A1 (it) 2011-01-24
IT1395258B1 IT1395258B1 (it) 2012-09-05

Family

ID=41648343

Family Applications (1)

Application Number Title Priority Date Filing Date
ITTO2009A000562A IT1395258B1 (it) 2009-07-23 2009-07-23 Procedimento per la generazione di un insieme di conflitti per la diagnosi di sistemi basata su modello, e procedimento di diagnosi corrispondente

Country Status (2)

Country Link
US (1) US8311783B2 (it)
IT (1) IT1395258B1 (it)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109598330A (zh) * 2018-12-06 2019-04-09 湖北鄂电德力电气有限公司 一种考虑配电网拓扑特点的最小碰集算法

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
IT1398573B1 (it) * 2010-03-05 2013-03-01 Fond Istituto Italiano Di Tecnologia Procedimento per la derivazione di un insieme minimo di relazioni di ridondanza analitica per la diagnosi di sistemi
US9043647B2 (en) * 2013-01-02 2015-05-26 Tata Consultancy Services Limited Fault detection and localization in data centers
CN107422715B (zh) * 2016-05-24 2021-08-27 华为技术有限公司 一种存储信息的系统和装置
CN109116219B (zh) * 2018-09-17 2021-04-06 合肥工业大学 一种电路系统的分布式故障诊断方法
US12436528B2 (en) * 2020-07-30 2025-10-07 Tyco Fire & Security Gmbh Building management system with supervisory fault detection layer
CN119047345B (zh) * 2024-10-31 2025-01-24 中国人民解放军海军航空大学 一种基于因果匹配的装备故障可诊断性设计方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080177994A1 (en) * 2003-01-12 2008-07-24 Yaron Mayer System and method for improving the efficiency, comfort, and/or reliability in Operating Systems, such as for example Windows
US8924269B2 (en) * 2006-05-13 2014-12-30 Sap Ag Consistent set of interfaces derived from a business object model
WO2008021137A2 (en) * 2006-08-08 2008-02-21 Siemens Energy & Automation, Inc. Devices, systems, and methods regarding a plc system fault
US8516399B2 (en) * 2009-02-18 2013-08-20 Mentor Graphics Corporation Collaborative environment for physical verification of microdevice designs
US20110185323A1 (en) * 2009-08-21 2011-07-28 William Matthew Hogan Stacked Integracted Circuit Verification

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
AMIR FIJANY ET AL: "A new efficient method for system structural analysis and generating Analytical Redundancy Relations", AEROSPACE CONFERENCE, 2009 IEEE, IEEE, PISCATAWAY, NJ, USA, 7 March 2009 (2009-03-07), pages 1 - 12, XP031450250, ISBN: 978-1-4244-2621-8 *
CORDIER M-O ET AL: "Conflicts Versus Analytical Redundancy Relations: A Comparative Analysis of the Model Based Diagnosis Approach From the Artificial Intelligence and Automatic Control Perspectives", IEEE TRANSACTIONS ON SYSTEMS, MAN AND CYBERNETICS. PART B:CYBERNETICS, IEEE SERVICE CENTER, PISCATAWAY, NJ, US, vol. 34, no. 5, 1 October 2004 (2004-10-01), pages 2163 - 2177, XP011118847, ISSN: 1083-4419 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109598330A (zh) * 2018-12-06 2019-04-09 湖北鄂电德力电气有限公司 一种考虑配电网拓扑特点的最小碰集算法
CN109598330B (zh) * 2018-12-06 2023-04-21 湖北鄂电德力电气有限公司 一种考虑配电网拓扑特点的最小碰集方法

Also Published As

Publication number Publication date
US20110022891A1 (en) 2011-01-27
US8311783B2 (en) 2012-11-13
IT1395258B1 (it) 2012-09-05

Similar Documents

Publication Publication Date Title
Metodi et al. A novel sat-based approach to model based diagnosis
ITTO20090562A1 (it) Procedimento per la generazione di un insieme di conflitti per la diagnosi di sistemi basata su modello, e procedimento di diagnosi corrispondente
King et al. Towards a bayesian network model for predicting flaky automated tests
JP3858000B2 (ja) フィルタリング型アプローチを使用する組合せ回路の検証方法
CN118246562A (zh) 量子位校准
JP2013100083A (ja) 輸送機健全性管理システムのモデルを統合するための方法
CN107563596A (zh) 一种基于贝叶斯因果网络的评价指标均衡态分析方法
US11347864B2 (en) Ace: assurance, composed and explained
Mutar Estimating the reliability bounds of communication system by using sum of disjoint product method
Weissenbacher Interpolant strength revisited
CN113221316A (zh) 一种考虑测试不确定性的故障诊断策略优化方法
Kuhtz et al. LTL path checking is efficiently parallelizable
Sardar et al. Theorem proving based formal verification of distributed dynamic thermal management schemes
Bennett et al. Review of machine learning for micro-electronic design verification
Friedler et al. Effective post-silicon failure localization using dynamic program slicing
Bittner et al. Symbolic synthesis of observability requirements for diagnosability
Vitucci et al. A deductive fault analysis method based on hypergraphs
Quetschlich et al. Towards equivalence checking of classical circuits using quantum computing
Viktoros et al. Compact fault dictionaries for efficient sensor fault diagnosis in IoT-enabled CPSs
Gottschalk et al. Coarsening in algebraic multigrid using Gaussian processes
Li et al. Inferring topology of networked dynamical systems by active excitations
Su et al. Window-based diagnostic algorithms for discrete event systems: What information to remember
Rumschinski et al. Complete fault diagnosis of uncertain polynomial systems
Fey et al. Reusing learned information in SAT-based ATPG
Gange et al. Fast Set Bounds Propagation using BDDs.