Skip to main content
QUICK REVIEW

[論文レビュー] Constraint Propagation in Presence of Arrays

Sebastian Brand|ArXiv.org|May 14, 2001
Constraint Satisfaction and Optimization参考文献 9被引用数 9
ひとこと要約

本稿では、制約充足問題における多次元配列式の制約伝播のためのルールベースの制約伝播システムを提案する。これは、要素制約を一般化したものである。効率的なアルゴリズム arr-ac を提示し、すべてのインデックス組み合わせを体系的にチェックすることでアーク整合性を保証する。正しさを証明し、バックトラッキングを伴わずにクロスワードパズルのような問題を解く実用的効率性を示している。

ABSTRACT

We describe the use of array expressions as constraints, which represents a consequent generalisation of the "element" constraint. Constraint propagation for array constraints is studied theoretically, and for a set of domain reduction rules the local consistency they enforce, arc-consistency, is proved. An efficient algorithm is described that encapsulates the rule set and so inherits the capability to enforce arc-consistency from the rules.

研究の動機と目的

  • 制約プログラミングにおける要素制約を多次元アレイに一般化すること。
  • 変数をインデックスとして用いるアレイ式を含む制約の伝播のためのルールベースのシステムを開発すること。
  • 提案されたルールセットがアレイ制約に対してアーク整合性を保証することを証明すること。
  • ルールから得られるアーク整合性の性質を継承する効率的なアルゴリズム(arr-ac)の設計および実装すること。
  • アーク整合性が、バックトラッキングを伴わない実世界の問題(例:クロスワードパズル)の解決において実用的な利点をもたらすことを示すこと。

提案手法

  • 本稿では、$ x = a[y_1, \ldots, y_n] $ のようなアレイ式を、変数 $ x $ および $ y_1, \ldots, y_n $ の間の制約としてモデル化し、アレイ $ a $ に含まれるすべての変数を含める。
  • すべての可能なインデックスタプル $ (b_1, \ldots, b_n) $ を体系的にチェックすることで、どの値がサポートされるかを特定するルールセット $ \mathcal{R}_{\text{arr}} $ を導入する。
  • arr-ac アルゴリズムは、すべてのインデックス組み合わせについて $ a[b_1, \ldots, b_n] $ を評価することで、サポートされる値の集合 $ T $ を反復的に計算し、変数のドメインを適切に削減する。
  • アルゴリズムは、少なくとも1つのサポート割り当てが存在する値のみを保持することで、アーク整合性を保証する。
  • 証明理論にインspiredされた宣言的でルールベースの形式的定式化を用いることで、制約伝播中に妥当性と同値性の保存が保証される。
  • ECLiPSe における lib(fd) プリミティブを用いた実装により、アルゴリズムの効率性が確認され、直接的なルールベース実装よりも約 50% の高速化が達成された。

実験結果

リサーチクエスチョン

  • RQ1多次元で変数インデックスを用いるアレイ式を、要素制約を一般化する形で制約としてモデル化できるか?
  • RQ2このようなアレイ制約に対してアーク整合性を保証するルールセットは何か? また、その妥当性と完全性は保証されるか?
  • RQ3すべての可能なインデックス値の組み合わせを全探索せずに、アーク整合性を強制する効率的なアルゴリズムをどのように設計できるか?
  • RQ4アレイ制約にアーク整合性を適用することで、クロスワードパズルのような実用的問題でバックトラッキングの必要がなくなるか?
  • RQ5OPL や AKL(FD) といった既存のシステムと比較して、提案手法の性能とドメイン削減の強度はどの程度か?

主な発見

  • ルールセット $ \mathcal{R}_{\text{arr}} $ が、アレイ制約に対してアーク整合性を保証することが証明された。これにより、すべてのドメイン値が少なくとも1つの有効な割り当てによってサポートされる。
  • arr-ac アルゴリズムは、すべてのインデックス組み合わせ $ (b_1, \ldots, b_n) $ を体系的に評価することでアーク整合性を正しく保証する。最悪計算量は $ \mathcal{O}(d^n) $、最良計算量は $ \mathcal{O}(d) $ である。
  • アルゴリズムは、$ x $、$ y_1, \ldots, y_n $、およびアレイ変数 $ a[b_1, \ldots, b_n] $ のドメインにおける不要な値を効果的に削除し、サポートされる値のみを残す。
  • クロスワードパズルのインスタンスにおいて、arr-ac を用いたアーク整合性の適用により、バックトラッキングを伴わず問題が解かれた。実用的効果が実証された。
  • ECLiPse における実装により、arr-ac は $ \mathcal{R}_{\text{arr}} $ の直接的なルールベース実装よりも約 50% 速く動作することが確認され、運用上の効率性が裏付けられた。
  • OPL の制約伝播は、arr-ac が検出する一部の削減を実行できないことが判明した。これにより、arr-ac がより強いドメイン削減を実現していることが証明された。

より良い研究を、今すぐ始めましょう

論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。