Qual è la definizione precisa di Random K-SAT?


12

Esistono 4 diversi vincoli che possiamo avere durante la definizione di K-SAT casuale.
1) Il numero totale di letterali in una determinata clausola è esattamente K o AT la maggior parte di K
2) Un dato letterale può essere utilizzato con o senza sostituzione nella stessa clausola (A o A o A)
3) Una determinata variabile può essere utilizzata con o senza sostituzione nella stessa clausola (A o ~ A o ~ A)
4) Una determinata clausola può essere utilizzata con o senza sostituzione in una determinata formula
Quale sarebbe la definizione più "corretta"? Quali sono i pro e i contro dell'utilizzo di queste diverse definizioni?


17
Non penso che esista un'unica definizione universalmente accettata.
Tsuyoshi Ito,

5
Ancora un'altra scelta diversa che puoi fare è se scegliere un numero fisso di clausole (con o senza sostituzione) o scegliere un campione di Poisson (ogni clausola è inclusa indipendentemente con una probabilità fissa).
David Eppstein,

4
@Tsuyoshi, Geekster: sono d'accordo con Tsuyoshi, per quanto ne so SAT Solvers non ha bisogno di alcuna definizione di K-SAT casuale, qualunque sia la tecnica che usano (DPLL, ricerca locale, propagazione del sondaggio). Sono sicuro al 100% che qualsiasi serio solutore SAT rimuoverà clausole duplicate, clausole tautologiche e letterali duplicati prima di iniziare la ricerca. Alcuni risolutori rimuovono anche le clausole di cui è stato fatto il sottoutilizzo.
Giorgio Camerani,

4
Non penso che ci sia una risposta alla domanda nella forma attuale perché nessuna definizione sembra "più corretta" di altre e "contro e pro" presumibilmente dipendono da ciò per cui si desidera utilizzare i risultati su k-SAT casuale. Ho votato per chiuderlo perché non è una vera domanda.
Tsuyoshi Ito,

4
Immagino che la domanda possa essere riformulata, rimossa la parte "più corretta" e concentrarsi sui pro e contro sotto alcuni risultati specifici. (O la risposta può passare attraverso ogni possibile risultato.) Poiché questa domanda è in qualche modo simile a una domanda sul taglio più parsimonioso che sembra rientrare nell'ambito di applicazione senza alcun argomento, personalmente vorrei vedere che la domanda rimane aperta.
Hsien-Chih Chang 張顯 之 l'

Risposte:


15

Come è stato sottolineato all'inizio di questa discussione nei commenti, non esiste necessariamente un'unica definizione "giusta" per -SAT casuale .k

Detto questo, le due varianti più comuni di -SAT casuali sono entrambi modelli FCL (fixed clause length), il che significa che in ogni clausola compaiono esattamente letterali. Entrambe queste varianti non consentono variabili ripetute e valori letterali all'interno di una clausola, ma differiscono nel caso in cui consentano clausole ripetute all'interno di una formula. Tuttavia, sono essenzialmente gli stessi che verranno discussi di seguito.k k

Due modelli principali:

Il modello casuale di Selman - Sono consentite clausole ripetute . Kyle ha fornito questo piacevole riferimento nei commenti alla sua risposta, ma ha erroneamente supposto che il modello non consentisse clausole ripetute. La versione collegata (leggermente diversa) dell'articolo contiene una discussione più dettagliata del modello casuale nella Sezione 3: "Questo metodo di generazione consente clausole duplicate in una formula ... Tuttavia, poiché N ottiene grandi duplicati diventeremo rari perché generalmente seleziona solo un numero lineare di clausole ".

Il modello casuale di Achlioptas - Non sono consentite clausole ripetute . Trattiamo la generazione di una formula casuale come la selezione di clausole dal clausole possibili totali senza sostituzione. Vedi il cap. 8 del Manuale di soddisfazione [1] (Random SAT di Achlioptas) come riferimento. Questo modello sembra più diffuso nella letteratura teorica, probabilmente perché gran parte di esso è stato scritto dallo stesso Achlioptas.m2k(nk)

Equivalenza delle posizioni di transizione di fase :

Tuttavia, la transizione di fase (soglia di soddisfacibilità del 50%) si verifica con lo stesso rapporto tra clausole e variabili indipendentemente da quale di questi modelli sia scelto essenzialmente per il motivo che Selman et al. annotato nel loro documento.

Sia il numero atteso di coppie identiche di clausole in un'istanza di Selman random -SAT. La probabilità che una data coppia di clausole sia identica è , mentre il numero totale di coppie di clausole è . Per la linearità dell'aspettativa, .A(n,m,k)(n,m,k)p=1/(2k(nk))N=(m2)A(n,m,k)=pN=(m2)/2k(nk)

Con il Teorema 3 in [1], il limite superiore provabile sulla posizione della transizione di fase -SAT, usando il modello di Achlioptas, si verifica quando . Riparando e impostando otteniamokm=O(2kn)k3m=O(2kn)

A(n,m,k)=(m2)/2k(nk)=O(m2)/O(nk)=O(n2)/O(nk) .

Quindi, poiché , , il che significa che in attesa ci saranno zero clausole ripetute attorno al -SAT transizione di fase quando si generano formule SAT casuali utilizzando il modello Selman.k3limnO(n2)/O(nk)=0k

Autopromozione spudorata - Discuto brevemente questi argomenti nella Sezione 4.1 della tesi di laurea magistrale .

QBF casuale

A quanto pare, la situazione è molto più interessante per il QBF casuale. Quali sono AFAIK i primi tre articoli su QBF casuale hanno proposto ciascuno un nuovo modello casuale, criticando il loro predecessore.

Vedi i seguenti documenti:

  • Cadoli et al. "Analisi sperimentale del costo computazionale della valutazione di formule booleane quantificate." AI * IA 1997
  • Gent + Walsh "Oltre NP: la transizione di fase QSAT." AAAI / IAAI 1999
  • Chen + Interian "Un modello per la generazione di formule booleane quantificate casuali". IJCAI 2005

14

[Modificato per chiarezza]

La definizione più utilizzata nella letteratura di ricerca è quella che richiede esattamente k variabili distinte per clausola e nessuna clausola duplicata. Se allenti la restrizione delle variabili distinte, gran parte della ricerca esistente non avrà senso per te perché i tuoi risultati non corrisponderanno ai loro risultati. La ben nota transizione di fase sat / unsat avverrà con un diverso rapporto clausola-variabile (se la transizione esiste) e non troverai le istanze difficili di SAT dove ti aspetteresti dalla letteratura.


3
Generazione di gravi problemi di soddisfazione da parte di Mitchell, Selman e Levesque. La sezione 4 descrive ciò che chiamano "K-SAT casuale". Il documento non parla di allentare le restrizioni; ciò deriva dalla mia modifica di un generatore 3SAT casuale e dall'invio di molte istanze in un tipico solutore SAT basato su DPLL.
Kyle Jones,

5
"La definizione più corretta è quella che produce la transizione di fase sat / unsat a circa 4,26 clausole per variabile per 3SAT casuale." Stai scherzando.
Tsuyoshi Ito,

1
@Tsuyoshi: Mentre "il più corretto" è sicuramente un tratto, penso che l'argomento sia che questa versione è standard e una delle migliori studiate.
Huck Bennett,

2
Stai affermando in modo bizzarro che 4.26 è il numero magico che distingue una particolare definizione del termine "random k-SAT" come quella più corretta. Se questo non è uno scherzo, non so cosa dire.
Tsuyoshi Ito,

4
No, sto affermando che la scoperta della transizione di fase e tutte le successive ricerche e articoli che sono seguiti concordano sulla definizione predefinita di k-SAT casuale, che è la definizione che ho dato. Se usi una definizione diversa, molti articoli non avranno senso perché i tuoi risultati non corrispondono ai loro risultati. Se stai lavorando su un solutore SAT, troverai casi semplici in cui ogni documento correlato che ho letto dice che dovresti trovarne di difficili. Non c'è nulla di magico in questo, solo convenzioni stabilite a questo punto. Se vuoi citare controesempi, allora fallo.
Kyle Jones,
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.