SATソルバーに大きな違いがあるのはなぜですか?


25

SATソルバーは、代数攻撃、たとえばwalksatminisatで非常に重要です

ただし、ここで利用可能なベンチマークの問題を解決するとき、2つの間に大きなパフォーマンスの違いがあります。これらの問題では、Walksatはminisatよりもはるかに高速です。どうしてこれなの?

この walksatの実装には、いくつかのパフォーマンスの改善があるようです- 国際SATコンテストに含まれなかった理由はありますか?


特定のアルゴリズムが特定の競合から除外された理由についての2番目の質問は、おそらくこのサイトの範囲外です。あるアルゴリズムを他のアルゴリズムよりも高速にする理由についての最初の質問は、公平なゲームだと思いますが、より理論に優しいものにするためにいくつかの言い直しが必要になるかもしれません。
レフReyzin

短いメモ:Minisatは非常に古く、保守されていないようで、競争にも参加していません。また、「巨大」とはどういう意味で、どのトラックを参照していますか(ランダム/作成済み/アプリケーション)?
ラドゥグリゴール

5
@Radu:MiniSAT 2.2.0は2010年7月にリリースされました。メンテナンスされていないとは言いません。また、コードは非常に安定しており、クリーンであるため、頻繁に更新されることは問題になりません。新しいソルバーは最新技術をよりよく反映していることに同意します。
ヴィジェイD

1
Crypto.SEcrypto.stackexchange.com/questions/153/…からクロスポストされた質問。
M.アラガン

回答:


33

はい、MiniSATとWalkSATには大きな違いがあります。まず、はっきりさせましょう-MiniSATは、バックトラッキングと句学習を使用するDPLL / CDCLアルゴリズムの汎用クラスの特定の実装であり、WalkSATは欲張りなステップとランダムなステップを交互に行うアルゴリズムの一般名です。

一般に、DSAT / CDCLは構造化されたSATインスタンスではるかに高速で、WalkSATはランダム k-SATで高速です。工業用および応用のSATインスタンスは多くの構造を持つ傾向があるため、最新のSATソルバーではDPLL / CDCLが支配的です。ただし、インスタンスからインスタンスへの1つの手法が勝つ可能性があり、これがポートフォリオソルバーが一般的になった理由の1つです。

そのページのインスタンスでは、WalkSATはMiniSATよりもはるかに高速であるという主張に多くの問題を抱えています。一つには、ギガバイトのSATインスタンスがあります-それらを何個比較しましたか?WalkSATは、ほとんどの構造化されたインスタンスではまったく競争力がないため、競争ではあまり見られません。

サイドノートで-ViSATはMiniSATがまだ適切であることは正しいです。実際、オープンソースであり、よく書かれているため、MiniSATは与えられた最適化が有望であることを示すために打ち負かすソルバーです。多くの人が、MiniSAT自体を調整して最適化を紹介しています。最近のSATコンテストの「MiniSATハック」カテゴリをご覧ください。


17

sat インスタンスには大きな違いがあります。SATソルバーは、インスタンスのクラスで良好に動作しますが、インスタンスのクラスでは不十分です。一方、ソルバーは、クラス良好に動作し、クラス不十分です。AバツYBYバツ

このトピックで読むのに良い紙があり、この1 Nudelmanによる。この論文の要点は、SATインスタンスの計算しやすい機能を判断することです。この機能により、どのアルゴリズムが適切に実行される可能性が高く、どのアルゴリズムがそうでないかがわかります。この手法を使用すると、問題のあるインスタンスを迅速に分析し、最も適切なアルゴリズムでインスタンスを解決するポートフォリオベースのアルゴリズムを構築できます。それに続く論文の進展があります。SATzillaをグーグルで検索すると、たくさんの読み物が見つかります。

ソルバーSATなぜあなたは迷っている場合はソルバーよりも良いかもしれません上のすべての例では、よく、私はの進捗状況:)ことを推測します。ソルバーが特に優れている理由を知りたい場合は、おそらくいくつかの博士論文に変換できます。Nudelman らの論文から始めることをお勧めします。AB

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.