最悪の場合、ブール充足可能性(P!= NPと仮定)には指数関数的な時間がかかります。それにもかかわらず、DPLLのバリアントを使用する最新のSATソルバーは、実際に役立つのに十分なインスタンスを解決できます。
使用されている1つの手法は、実際に良い結果を示しており、ランダム再起動です。直感的に、ランダムに再起動するということは、適切な変数の割り当てを推測して幸運になる可能性があることを意味します。
同じ直感は、問題のインスタンスが実際に満足できる場合(したがって、ソリューションを構成する一連の変数の割り当てを推測するだけでよい場合)がそうでない場合よりもはるかに効果的であることを示唆しています(したがって、原則として可能な限りすべてをチェックする必要があります)とにかく、割り当ては、少なくとも初期の推測に明らかに影響されない、単位伝播や非時系列バックトラックなどの手法でスキップできる検索空間のモジュロセクションです。
2番目の直感は正しいですか?問題のインスタンスが実際に満足できる場合、ランダム再起動は実際には平均してはるかに効果的ですか?