Formally Verified Certification of Unsolvability of Temporal Planning Problems
Wang, Abdulaziz
We present an approach to unsolvability certification of temporal planning. Our approach is based on encoding the planning problem into a network of timed automata, and then using an efficient model checker on the network followed by a certificate checker to certify the output of the model checker. Our approach prioritises trustworthiness of the certification: we formally verify our implementation of the encoding to timed automata using the theorem prover Isabelle/HOL and we use an existing certificate checker (also formally verified in Isabelle/HOL) to certify the model checking result.
academic
Certificazione Formalmente Verificata dell'Insolubilità dei Problemi di Pianificazione Temporale
L'articolo propone un metodo per la certificazione dell'insolubilità dei problemi di pianificazione temporale. Il metodo si basa sulla codifica dei problemi di pianificazione come reti di automi temporali, seguita dall'applicazione di efficienti model checker sulla rete e dall'utilizzo di verificatori di certificati per autenticare l'output del model checker. Il metodo privilegia l'affidabilità della certificazione: utilizza il dimostratore di teoremi Isabelle/HOL per la verifica formale dell'implementazione della codifica degli automi temporali e impiega un verificatore di certificati esistente (anch'esso formalmente verificato in Isabelle/HOL) per autenticare i risultati del model checking.
Il problema centrale affrontato da questa ricerca è la certificazione dell'insolubilità dei problemi di pianificazione temporale. La pianificazione temporale è una forma di pianificazione più ricca che consente alle azioni di avere durata e di essere eseguite concorrentemente, risultando più complessa della pianificazione classica.
Esigenza di Affidabilità: I sistemi di pianificazione esistenti sono estremamente complessi sia a livello algoritmico che implementativo, rendendo cruciale aumentare l'affidabilità dei loro output
Difficoltà di Certificazione: A differenza dei problemi risolvibili (verificabili mediante l'esecuzione di un piano), le affermazioni di insolubilità o optimalità sono difficili da certificare in modo compatto
Complessità Esponenziale: Nel caso peggiore, tali certificati possono crescere esponenzialmente rispetto alla dimensione del compito di pianificazione
Mancanza di Garanzie Formali: I metodi esistenti per il rilevamento dell'insolubilità nella pianificazione temporale mancano di garanzie di correttezza formale
Alta Complessità: Le tecniche algoritmiche più avanzate nella pianificazione temporale hanno un'elevata complessità, rendendo difficile progettare schemi pratici di certificazione dell'insolubilità
Lacuna nella Verifica: Rispetto al lavoro di verifica formale già disponibile nella pianificazione classica, il campo della pianificazione temporale presenta una lacuna significativa
L'articolo adotta un approccio di trasformazione mediante codifica: codifica i problemi di pianificazione temporale in altri problemi computazionali per i quali esistono algoritmi di certificazione pratici (automi temporali), e verifica formalmente mediante dimostratore di teoremi l'intero processo di codifica e il verificatore di certificati, garantendo l'affidabilità della certificazione.
Metodo di Codifica Formalmente Verificato: Prima verifica formale della codifica da pianificazione temporale ad automi temporali proposta da Heinz et al.
Implementazione Ingegneristica: Adattamento della codifica per produrre formati di automi temporali compatibili con il sistema di Wimmer e von Mutius
Progettazione di Semantica Semplificata: Progettazione di una semantica della pianificazione temporale più semplice rispetto ai lavori esistenti, facilitando il ragionamento matematico, con dimostrazione di equivalenza rispetto alle semantiche esistenti
Framework di Certificazione Completo: Costruzione di una catena di certificazione affidabile completa dai problemi di pianificazione temporale al model checking degli automi temporali
Garanzie di Correttezza Teorica: Dimostrazione della correttezza della codifica in Isabelle/HOL, fornendo garanzie teoriche robuste
Per ogni proposizione p: variabile binaria vp (codifica il valore di verità) e contatore di lock lp (registra il numero di azioni attive che richiedono p come vera)
aa: registra il numero totale di azioni attive
ps: stato di pianificazione (0=non iniziato, 1=in corso, 2=completato)
Progettazione dei Clock (Definizione 25):
Per ogni azione a sono assegnati due clock: ca⊢ (registra il tempo dopo l'inizio) e ca⊣ (registra il tempo dopo la fine)
Automa Principale (Definizione 26):
Controlla le transizioni di stato dell'intero processo di pianificazione, inclusa l'inizializzazione e il controllo dell'obiettivo.
Automi di Azione (Definizione 27):
Ogni azione corrisponde a un automa, contenente le seguenti transizioni chiave:
sea: applicazione degli effetti dell'azione di inizio
se'a: blocco delle condizioni invarianti
eea: preparazione prima della fine
ee'a: applicazione degli effetti dell'azione di fine
Combinazione dell'automa principale e di tutti gli automi di azione in una rete di automi temporali (Definizione 28), con configurazione iniziale che imposta tutti gli automi in stato inattivo.
Supporto per Esecuzione Concorrente: A differenza di Heinz et al. che utilizzano lock globali, questo articolo utilizza vincoli di clock per consentire l'esecuzione concorrente di azioni snapshot
Gestione di Azioni Istantanee: Supporto per azioni a durata zero mediante l'aggiunta di transizioni iea
Verifica Formale: Prima fornitura di dimostrazione di correttezza controllata da macchina per questo tipo di codifica
Semplificazione della Semantica: Progettazione di una semantica della pianificazione temporale più adatta al ragionamento formale
Teorema 1 (Teorema Principale di Correttezza):
Se il piano π è valido e privo di auto-sovrapposizioni (valid(π) ∧ no_self_overlap(π)), allora l'asserzione A ⊨ EF(loc(AM) = goal) è valida.
Struttura della Dimostrazione:
Lemma 1: Costruzione di una simulazione che induce un'esecuzione del piano parallelo
Lemma 2: Raggiungibilità dalla configurazione iniziale allo stato codificato
Lemma 3: Transizione dallo stato finale alla configurazione obiettivo
Dimostrazione di Completezza: Dimostrazione riuscita della completezza della codifica, ovvero ogni piano valido può trovare un'esecuzione valida nella corrispondente rete di automi temporali
Controllo da Macchina: Tutte le dimostrazioni sono state controllate dalla macchina tramite Isabelle/HOL, fornendo il massimo livello di garanzia di affidabilità
Progettazione Modulare: La struttura della dimostrazione è modulare, facilitando la comprensione e la manutenzione
L'implementazione della codifica è stata adattata al formato compatibile con il verificatore di certificati verificato esistente, formando una catena di certificazione completa ed eseguibile.
Dimostrazione di Equivalenza: Pianificazione della dimostrazione formale dell'equivalenza tra la semantica di questo articolo e quella dei verificatori esistenti
Implementazione Eseguibile: Sviluppo di un verificatore di certificati eseguibile
Verifica dell'Istanziazione: Verifica formale degli algoritmi di istanziazione, come il risolutore di data log di Helmert
Rilassamento dei Vincoli: Ricerca della possibilità di rilassare la condizione di assenza di auto-sovrapposizioni
Rigore Teorico: Prima fornitura di dimostrazione formale controllata da macchina per la certificazione dell'insolubilità della pianificazione temporale
Completezza Ingegneristica: Non solo fornisce un framework teorico, ma realizza anche l'integrazione con gli strumenti esistenti
Innovazione Metodologica:
Progettazione della codifica che supporta l'esecuzione concorrente
Soluzione elegante per la gestione delle azioni istantanee
Progettazione di semantica semplificata ma equivalente
Garanzie di Affidabilità: Fornitura del massimo livello di garanzie di correttezza tramite dimostratore di teoremi
Abdulaziz & Koller (2022): Semantica formale e verificatore per la pianificazione temporale
Heinz et al. (2019): Codifica da pianificazione temporale ad automi temporali
Wimmer & von Mutius (2020): Verificatore di certificati formalmente verificato per automi temporali
Abdulaziz & Kurz (2023): Sistema di pianificazione basato su SAT verificato
Questo articolo fornisce un contributo importante nel campo della verifica formale della pianificazione temporale. Sebbene vi sia ancora spazio per miglioramenti in termini di praticità, il suo rigore teorico e l'innovazione metodologica pongono una base solida per lo sviluppo futuro del campo.