解集合プログラミング(かいしゅうごうプログラミング、Answer set programming : ASP)は、困難な (主にNP困難な) 探索問題を対象とした宣言型プログラミングの一種である。これは、論理プログラミングにおける安定モデル意味論(stable model semantics)に基づいている。ASPでは、探索問題は安定モデルの計算に還元され、安定モデルを生成するためのプログラムである解集合ソルバーを使用して探索が実行される。多くの解集合ソルバーの設計で採用されている計算プロセスは、DPLLアルゴリズムの拡張であり、原則として常に停止する (無限ループにつながる可能性があるPrologクエリ評価とは異なる)。
より一般的な意味では、ASPは、解集合の知識表現と推論へのすべての適用と、これらの適用で発生する問題の解決に対するPrologスタイルのクエリ評価の利用を含む。
出典




