Rilievo di trasformazioni legate all'uso di solutori SAT


13

Sto iniziando a studiare la possibilità di fare affidamento su un solutore SAT per affrontare un problema di ottimizzazione che mi interessa e attualmente sto cercando un sondaggio che includa esempi di trasformazioni "intelligenti" in varianti di SAT (ovvero trasformazioni che risultano in un problema di dimensioni ragionevoli, dal momento che non sono interessato a dimostrare i risultati della durezza ma a risolvere effettivamente il problema), approssimativamente nello spirito di ciò che può essere trovato nel sondaggio sui grafici cubici di Greenlaw e Petreschi , se un confronto può essere fatto tra i due.

Un sondaggio del genere mi ha eluso perché non esiste o perché mi è sfuggito?


Cosa intendi esattamente con "varianti di SAT"?
Giorgio Camerani,

K

4
Non preoccuparti, è la parola giusta, avrei dovuto capirlo. Da un punto di vista puramente pratico, tuttavia, non penso che sia importante (ciò che conta di più è quanto sia parsimoniosa la tua codifica). Potresti fornire ulteriori dettagli sul problema di ottimizzazione che stai cercando di risolvere? Sono molto interessato alle applicazioni pratiche di SAT e agli aspetti ingegneristici della risoluzione SAT.
Giorgio Camerani,

Sembra un po 'confuso che tu stia parlando di un problema di ottimizzazione ma allo stesso tempo di SAT. In genere per l'ottimalità è necessario qualcosa di più forte, ad esempio MAX-SAT. Forse potresti chiarirlo.
Mikolas,

questa domanda potrebbe essere in qualche modo correlata: cstheory.stackexchange.com/q/4314/4506
Mikolas

Risposte:


9

Non sono sicuro che sia quello che stai cercando, ma eccone uno: JM Silva, Applicazioni pratiche di soddisfazione booleana .


2
Non ho potuto accedervi tramite il tuo link, eccone un altro . A prima vista, il documento sembra piuttosto interessante, ma più focalizzato sulle applicazioni rispetto a ciò che sto cercando.
Anthony Labarre,

@Anthony, hai detto che sei interessato all'aspetto pratico :-) Ad ogni modo, i solutori del mainstream esistenti non fanno realmente differenza tra i diversi tipi di SAT. In passato, ad esempio, è stato svolto un certo lavoro sullo sfruttamento delle clausole binarie. Ma i solutori esistenti usano semplicemente l'apprendimento della clausola DPLL + unit prop +. Tuttavia, alcuni dei preprocessori sfruttano la struttura. Ma di nuovo, non proprio dal punto di vista della complessità th. classificazione.
Mikolas,

8

Il capitolo 2 del Manuale di soddisfazione esamina gli aspetti da tenere a mente durante la progettazione di tali trasformazioni, nonché un elenco di riferimenti che rispondono alla mia domanda. Questo mi ha aiutato a trovare alcuni esempi che si possono dare un'occhiata per familiarizzare con queste trasformazioni:

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.