タグ付けされた質問 「backtracking」

1
競合駆動型条項学習のバックトラッキングの説明
ここのウィキペディアのページでは、CDCLアルゴリズムがかなりよく説明されています(写真はプリンストンのSharad Malikが作成したスライドから撮られたようです)。しかし、どのようにバックトラックするかを説明するとき、それは「適切なポイントへ」と言うだけです。MiniSATもCDCLアルゴリズムのバリアントを使用しているので、このペーパーを読みました。彼らが言っているように見えるのは、学習された節が単位節になるまで後戻りする必要があるということです。それは確かに明確化ですが、私には意味がありません。最後の割り当ては間違いなく、学習した矛盾句の一部になります(おそらくここで間違っているのでしょうか)。そのため、1つのステップをバックトラックすると、すぐに学習した句のユニットが作成され、最後に割り当てられた値が反転します。アルゴリズムは、十分に遠くまでバックトラックすることなく、DPLLとまったく同じように処理されます。さらに、ウィキペディアのページはこのルールに従っていません。望ましいように見えるので、はるかに後戻りします。 どれだけバックトラックすることになっていますか?

1
最小線形配置の分岐および境界
私はこのブランチとバウンドの問題を解決しようとしていますが、コストよりも優れたおおよそのコスト関数を思い付くことができませんでした。 まあ言ってみれば GGG のグラフです んnn ノード { 1 、2 、3 、... 、N }{1,2,3,…,n}\{1, 2, 3, \ldots , n\}。順列のためにfff のノードの GGG、各エッジの重み (x 、y)(x,y)(x,y) になります | f(x )− f(y)||f(x)−f(y)||f(x)-f(y)|。総重量GGGエッジの重みの合計になります。あなたは考えることができますfff のノードの再ラベル付けとして GGG、 どこ f(x )f(x)f(x) ノードの新しいラベルです バツxx。 順列を見つけようとしています fff その結果、最小総重量は GGG。 これを解決しようとすると、私が思いつくことができるのは、これまでに完了した各エッジの重みの合計であるおおよそのコスト(バックトラックツリーノードごとに)を見つけ、最小コストノードから続行することだけです。誰かがより良い近似式で私を助けてくれるかどうか疑問に思っています。
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.