• 検索結果がありません。

充足可能性問題のアルゴリズム

N/A
N/A
Protected

Academic year: 2021

シェア "充足可能性問題のアルゴリズム"

Copied!
4
0
0

読み込み中.... (全文を見る)

全文

(1)

成 膜 大 学 理 工 学 研 究 報 告 J,Fac,Sci,Tech.,Sei/keiUniv. Vol.49No.2(2012)pp.51-54

充 足可 能 性 問 題 の アル ゴ リズ ム

山 本

真 基1

Algorithms

for the satisfiability

problem

Masaki

Yamamoto'

ABSTRACT

: The satisfiability problem (SAT problem for short) is a computational problem, such as the

traveling salesman problem. It is a fundamental problem in theoretical computer science. We present the

background of the SAT problem as well as typical algorithms for solving the problem. The main purpose

of this paper is to introduce one of my research work.

Keywords

: algorithm,

satisfiability

problem,

NP-hard

1.充

足 可 能 性 問 題 と は?

充 足 可 能 性 問 題(satisfiabilityproblem,以 下,SAT 問 題 と 略 す)と は,理 論 計 算 機 科 学 で 最 も 基 本 的 で 重 要 なNP完 全 問 題 の 一 つ で あ る 。 グ ラ フ 理 論 に お け る 巡 回 セ ー ル ス マ ン 問 題,頂 点 彩 色 問 題,独 立 頂 点 集 合 問 題, オ ペ レ ー シ ョ ン ズ ・ リサ ー チ に お け る 整 数 計 画 問 題 ゲ ー ム ・パ ズ ル に お け る 数 独 ,テ ト リス な ど,実 社 会 で 遭 遇 す る 多 く の(決 定)問 題 がNP完 全 問 題 で あ る 。 そ の 中 で も,SAT問 題 は,そ のNP完 全 性 が 示 さ れ た 最 初 の 問 題 で あ る 。 以 下 の 意 味 で,SAT問 題 はNP完 全 問 題 の 根 本 で あ る 。

す べ て のNP完

全 問題 のNP完

全 性 は,(い

くつ か の 例 外 を除 い て)SAT問

題 か らの

有 限 回 の 多 項 式 時 間 還 元 を経 て 示 され た 。

題 か らの 多 項式 時 間 還元 を示 す こ とが で き るは ず だ が,

証 明 が よ り複 雑 に な る こ とで し ょ う。)

SAT問

題 は,以 下 の よ うな 問題 で あ る。

・入 力:和 積 標 準 形(conjunctivenormalforrn:CNF)論 理 式 ψ ・質 問:ψ は 充 足 可 能 か? こ こ で,「CNF論 理 式 ψ が 充 足 可 能 で あ る 」 と は,「 ψ を1(tme)に させ る よ うな ψ の 変 数 へ の0/1割 り 当 て が 存 在 す る 一 こ と を 指 す 。 例 え ば,論 理 変 数 荷,ろ,る, x4,x5上 の 以 下 の よ う なCNF論 理 式, ψ=Xl(Xl>T2)(Xl>X2>M3)(X2>X3>N,) (x3>x4>M5)(Xl>x2>x3>x4>x5).

例 え ば,教 科 書[1]で

は,ハ

ミル トン 閉 路 問題 は 頂 点 被

覆 問題 か らの 多 項 式 時 間 還 元 に よ り,更 に,頂 点 被 覆 問

題 はSAT問

題 か らの 多 項 式 時 間 還 元 に よ りNP完

全 性

が 示 され て い る。 更 に,ハ ミル トン閉 路 問 題 か らの 多 項

式 時 間還 元 が 示 され るNP完

全 問題 も数 多 く存 在 す る。

(も ち ろん,SAT問

題 か らの 直 接 の 還 元,更 に は,S

AT問

題 のNP完

全 性 が 示 され た よ うに,任 意 のNP問

が 入 力 と し て 与 え られ た とす る 。 こ こ で,死 は 濯 の 否 定 を 表 す 。 ま た,ψ を 構 成 す る 一 つ 一 つ の(卍 〉,_) を 節 と 呼 ぶ 。(上 の ψ の 表 記 に お い て,節 と節 と の 間 の AND記 号 く は 省 略 され て い る 。)こ の 場 合,上 の ψ は 充 足 可 能 で あ る 。 な ぜ な ら,変 数 荷,あ,あ,曲,萌 へ の 割 り 当 て を,(Xl,X2,κ3,X4,X5)=(1,1,1,1,1)と し た 場 合,ψ の そ れ ぞ れ の 節 は1と な り,そ れ ゆ え ψ が1と な る か ら で あ る 。 一 方, 1情 報 科 学 科 准 教 授(y㎜ ㎜oto@st .seikei.ac.jp) 一51一

(2)

成 践 大 学 理 工 学 研 究 報 告

Vol,49No.2(2012.12)

q=a,(Xl>72)(Xl>X2>M3)(X2>X3>M,)

(x3>x4>75)(Xl>x2>x3>x4>x5),

/(-SAT問 題 に つ い て,以 下 の 基 本 的 な 事 実 が 知 ら れ て い る 。 の 場 合,こ の ψ は 充 足 不 可 能 で あ る 。(な ぜ な ら,ど の よ うな 割 り 当 て に 対 し て も ψ が1に な らな い の で 。) 任 意 の 整 数1(≧3に 対 し て,/(-SAr問 題 はNP完 全 で あ る 。

2.SAT問

題 を 解 くア ル ゴ リズ ム

で は,こ の よ うな 根 本 的 な 問題 を ど うや っ て(ど の よ

うな ア ル ゴ リズ ム で)解 い た ら よい で し ょ うか?SAT

問 題 はNP完

全 問題 で あ るか ら,多 項 式 時 間 で 解 く こ と

は か な り難 しい こ とで し ょ う。 現 実 的 で はな い が,指 数

時 間 か け て も よい とす る と,以 下 の よ うな 全 探 索 ア ル ゴ

リズ ム がSAT問

題 を解 く こ と分 か る。

bruteforce(f) { fbreacht∈{0,1}〈n if(fが 割 り 当 てtに よ り 充 足 す る), thenoutputYES outputNO } こ こ で,〃 をCNF論 理 式fの 変 数 の 個 数 と す る 。 こ の ア ル ゴ リズ ム の(最 悪)計 算 時 間 は0(lqレ2n)と な る 。(以 降 で は,指 数 時 間 に お け る 多 項 式 要 素 は 省 略 し て 表 記 す る 。 例 え ば,0(IqI・2n)は 〃(2n)と 表 記 さ れ る 。)で は,SAT問 題 を,例 え ば,〃(1.gggggn)時 間 で 解 く こ と は で き な で い だ ろ うか?残 念 な が ら,今(2 012年8月)の と こ ろ,そ の よ うな ア ル ゴ リズ ム は 見 つ か っ て い な い 。 そ の よ うな 一 般 のSAT問 題 で は な く,以 下 の よ うな SAT問 題 の 特 殊 な 問 題,!(-SAT問 題,な ら ば そ れ が 可 能 で あ る 。 よ っ て,SAT問 題 と 同 様,/(≧3で あ れ ば,1(-SAT問 題 を 多 項 式 時 間 で 解 く こ と は か な り難 し い こ と で し ょ う。 (一 方,2-SAr問 題 は 多 項 式 時 間 計 算 可 能 で あ る こ と が 示 さ れ て い る 。)し か し,々 が 定 数 で あ れ ば,少 し 工 夫 す る こ と に よ り,/(-SAr問 題 を 〃((2-E)n)時 間 で 解 く こ と が で き る(E>0は/(に 依 存 し た 正 の 定 数)。 s㎞ple _ksat(f) { if(fが 充 足 し て い る),thenoutputYES if(fが 充 足 し て い な い),thenret㎜

}

fの 任 意 の 節Cを 選 ぶ tk)reacha∈{0,1}〈k if(Cがaで 充 足 す る), thensimple _ksat(fIa) こ こ で,flaと は,fに 割 り 当 てaを 適 用 し て 得 ら れ る 論 理 式 の こ と で あ る 。 簡 単 な 漸 化 式 を 解 く こ と に よ り, こ の ア ル ゴ リ ズ ム の 計 算 時 間 が 〃((2k-1)n/k)と な る こ と が 分 か る 。(1(=3の 場 合 は,〃(Lgl3n)と な る 。) 上 の ア ル ゴ リ ズ ム を 少 し 改 良 す る こ と に よ り,よ り 高 速 の ア ル ゴ リ ズ ム が 得 ら れ る 。 s㎞ple _ksat2(f) { if(fが 充 足 し て い る),thenoutputYES if(fが 充 足 し て い な い),thenret㎜ ・ 入 力;1( -CNF論 理 式 ψ ・ 質 問:ψ は 充 足 可 能 か? こ こ で,!(-CNF論 理 式 と は,節 の 大 き さ が 高 々!(で あ るCNF論 理 式 の こ と で あ る 。 例 え ば,以 下 の ψ は 3-CNF論 理 式 で あ る,

}

ψ の 任 意 の 節Cを 選 ぶ //ア ル ゴ リ ズ ム の 記 述 を 簡 略 化 さ せ る た め, //Cが す べ て 正 の リ テ ラ ル か ら 成 る と す る fori:0<=i<=ICI-l a=10〈i simple _ksat2(fIa) q=κ1(Xl>af2)(Xl>κ2>llf3)(X2>X3>af4)(X3>κ4>lil5). 上 のfbr文 で は,例 え ば,任 意 に 選 ん だ 節CがC=(Xl 一52一

(3)

成 践 大 学 理 工 学 研 究 報 告

Vol,49No.2(2012.12)

>x2>x3)の 場 合,d=1,10,100に よ る3つ の 再 帰 呼 び 出 しsimple _ksat2(fIa)が 実 行 さ れ る 。簡 単 な 漸 化 式 を 解 く こ と に よ り,こ の ア ル ゴ リ ズ ム の 計 算 時 間 が 〃 (cn)(cは 方 程 式 ■k-■k-1-… 一 ■2-■-1=0 を 満 た す 唯 一 の 正 の 実 数 解)と な る こ と が 分 か る 。(沌= 3の 場 合 は,〃(1.841n)と な る 。) 以 上 の 二 つ は,分 枝 限 定 法 と 呼 ば れ る ア ル ゴ リズ ム で あ る.こ れ 以 外 に も,以 下 の よ うな 局 所 探 索 法 と 呼 ば れ る ア ル ゴ リズ ム も あ る. local _search(f) { a∈{0,1}〈nを ラ ン ダ ム に 選 ぶ

}

repeatNtimesdo{ if(fがaで 充 足),outputYES aで 充 足 し て い な い 節Cを 任 意 に 選 ぶ Cの 変 数xを ラ ン ダ ム に 選 ぶ aに お け るxの 割 り当 て を 反 転 す る } outputNO こ こ で,Nは 繰 り返 し 回 数 を 表 す パ ラ メ ー タ で あ る 。 入 力fが!(-CNF論 理 式 で あ れ ば,Nを(2(1(-1)/lt)nに 設 定 す る こ と に よ り,高 い 確 率(1-1/n》O.999)でf の 充 足 可 能 性 を 判 定 で き る こ と が 証 明 さ れ て い る[2]。 以 上 よ り,1(-SAr問 題 は,明 ら か な 計 算 時 間 〃(2n) よ り も 高 速 に 解 け る こ と が 分 か っ た 。で は,!(-SAT問 題 は ど の く ら い 高 速 に 解 く こ と が で き る の だ ろ うか?現 在 (2012年8月)の と こ ろ,最 速 の(決 定 性)ア ル ゴ リズ ム の 計 算 時 間 は,〃((2(1(-1)/!t)n)と な っ て い る[3]。(こ の 式 に1(=3を 代 入 す る と,3-SAr問 題 は 〃 (L3334〃)で 解 け る こ と に な る 。)特 に,3-SAT問 題 に 対 し て は さ ら な る 高 速 化 が 図 ら れ,最 速 は0(L3303〃) と な っ て い る[4]。(更 に,「 乱 択 」 ア ル ゴ リズ ム を 使 う こ と に よ り,さ ら な る 高 速 化 が 図 ら れ て い る 。 例 え ば, 3-SAT問 題 を 解 く 最 速 の 乱 択 ア ル ゴ リ ズ ム の 計 算 時 間 は,〃(L308n)と な っ て い る[5]。)

3.な

ぜ,SAT問

題 を 解 く(指 数 時 間)ア

ル ゴ リ

ズ ム を 研 究 す る の か?

理 論 計 算 機 科 学 の 分 野 に,「Pv.S.NPと い う大 き な 未 解 決 問 題 が あ る 。問 題 ク ラ スPがNPに 真 に 包 含 さ れ て い る か ど うか を 問 う問 題 で あ る。(詳 し く は,教 科 書 [7]な ど を 参 照 。)現 在(2012年8月),多 く の 研 究 者 がP≠NPと 予 想 し て い る 。 つ ま り,SAT問 題 や /(-SAT問 題 が 多 項 式 時 間 で は 解 け な い と予 想 さ れ て い る 。 ア ル ゴ リ ズ ム と い うの は,通 常,と り わ け 実 社 会 で の 応 用 を 考 え た 場 合 は,多 項 式 時 間 計 算 可 能 な 問 題 に 対 し て そ の 存 在 意 義 が 認 め られ る。 で は,な ぜ,多 項 式 時 間 で は 解 け そ うに も な いSAT問 題 を 解 く(指 数 時 間) ア ル ゴ リ ズ ム を 研 究 す る の で し ょ うか? 先 のP≠NPと い うの は あ く ま で 予 想 で あ っ て 証 明 さ れ た 事 実 で は な い が,仮 に,真 実 がP≠NPで あ っ た とす る。 こ こ で,将 来,3-SAr問 題 を 解 く 〃(L2999〃) 時 間(決 定 性)ア ル ゴ リ ズ ム が 開 発 さ れ た と す る。(こ の ア ル ゴ リ ズ ム をAと す る 。)更 に,将 来,コ ン ピ ュ ー一一タ の 性 能 が 向 上 し て,指 数 時 間 か か る ア ル ゴ リ ズ ム も,あ る 程 度 の 大 き な 長 さ の 入 力 を 扱 え る よ うに な っ た と す る 。 例 え ば,〃=1000に 対 して,〃(1.2gggn)時 間 ア ル ゴ リ ズ ムAの 実 行 が(最 新 の ス ー一一パ ー コ ン ピ ュ ー一一タ を 使 っ て)1日 以 内 で 終 了 し た と す る 。 一 方 で,仮 に,現 在 (2012年8月)の3-SAr問 題 を 解 く最 速 の ア ル ゴ リ ズ ム,〃(1.3303n)時 間(決 定 性)ア ル ゴ リズ ム,の 開 発 以 降 こ の 研 究 が 停 滞 し て,こ れ が 最 速 の ま ま で あ っ た とす る。(こ の ア ル ゴ リ ズ ム をBと す る。)こ の 場 合, L3303/L2999・:LO234よ り,ア ル ゴ リ ズ ムBの 実 行 に は,(最 新 の ス ー パ ー コ ン ピ ュ ー タ を 使 っ て も) LO2341000日,お よ そ 三 千 年 も の 年 月 を 要 す る こ と に な る 。(異 な る 二 つ の 指 数 関 数 の 比 も ま た 指 数 関 数 と な る!) コ ン ピ ュ ー タ の 性 能 が 向 上 す れ ば す る ほ ど扱 え る 〃 の 範 囲 が 大 き く な り,そ れ ゆ え,二 つ の ア ル ゴ リ ズ ム の 計 算 時 間(を 表 す 指 数 の 底)が100分 の1で も 異 な れ ば, そ の 比,す な わ ち 二 つ の ア ル ゴ リ ズ ム の 優 劣 が 顕 著 に 表 れ る。 これ が 指 数 時 間 ア ル ゴ リ ズ ム の 研 究 が 滞 っ て は な ら な い 大 き な 理 由 で あ る 。

蛇足

先 の 未 解 決 問 題 「Pv.S.NP」 に つ い て お も し ろ い 調 査 が あ る 。2002年,WilliamGasarchが 理 論 計 算 機 科 学 者 を 対 象 に,あ る 投 票 を 行 っ た[6]。(2011年 7月 に も,彼 は 新 た な 投 票 を 募 る と し て,第2回 目 の 調 査 を 始 め た 。)そ の(2002年 の)投 票 結 果 で 注 目 す べ き こ と は,予 想 の 明 言 を 控 え た 研 究 者 が 少 な く な か っ た こ と で あ る 。(単 純 に,そ の 調 査 自 体 に 興 味 が な か っ た だ け か も しれ な い が 。)更 に,BelaBollobas(ラ ン ダ ム グ 一53一

(4)

成 蹟 大 学 理 工 学 研 究 報 告

Vol.49No.2(2012.12)

ラ フ)やPaulVitanyi(コ ル モ ゴ ロ フ 計 算 量)と い っ た そ の 分 野 の 権 威 が,大 胆 に もP=NPと 予 想 し た こ と も 興 味 深 い 。(ど の 程 度 本 気 な の か は 分 か ら な い が 。)こ の こ とか ら言 え る こ と は,P=NPで あ る と い う可 能 性 が 限 りな く ゼ ロ に 近 い と い う こ と で も な い こ と で あ る 。 lc-SAT問 題 を 解 く 指 数 時 間 ア ル ゴ リ ズ ム の 高 速 化 の 延 長 に,劣 指 数 時 間 ア ル ゴ リズ ム,そ し て 多 項 式 時 間 ア ル ゴ リズ ム と,大 方 の 予 想 に 反 す るP=NPと い う可 能 性 を 追 求 す る こ と は,そ れ ほ ど 大 そ れ た こ と で も な い の か も し れ な い 。

参考文献

[1]ComputersandIntractability:AGuidetotheTheory ofNP-Completeness,M.RGareyandD.S.Jo㎞son, WHFreeman&Co(Sd),1979. [2]U.Sch6ning,AProbabilisticAlgorithmfbrk-SArand ConstrailtSatisfactionProblems,FOCSl999. [3]R.Moser,andD.Scheder,A血llderandomizationof Sch6n血g「sl(-SATalgorithm,STOC2011. [4]K.Makino,S.Tamaki,andM.Y㎜ ㎜oto, DerandomizingHSSWalgorit㎞fbr3-SAr, COCOON2011. [5]THertli,3-SArFasterandSimpler-UniqueSAr Bo㎜dsfbrPPSZHoldinGeneral,FOCS2011. [6]W,Gasarch,TheP=?NPPoll,SIGACTNews ComplexityTheoryColumn36,2002. [7]S.AroraandB.Barak,ComputationalComplexity:A modenlapproach,CambridgeUniversityPress,2009. 一54一

参照

関連したドキュメント

In this paper, we study the generalized Keldys- Fichera boundary value problem which is a kind of new boundary conditions for a class of higher-order equations with

For instance, Racke &amp; Zheng [21] show the existence and uniqueness of a global solution to the Cahn-Hilliard equation with dynamic boundary conditions, and later Pruss, Racke

Kilbas; Conditions of the existence of a classical solution of a Cauchy type problem for the diffusion equation with the Riemann-Liouville partial derivative, Differential Equations,

The oscillations of the diffusion coefficient along the edges of a metric graph induce internal singularities in the global system which, together with the high complexity of

For arbitrary 1 &lt; p &lt; ∞ , but again in the starlike case, we obtain a global convergence proof for a particular analytical trial free boundary method for the

Since the boundary integral equation is Fredholm, the solvability theorem follows from the uniqueness theorem, which is ensured for the Neumann problem in the case of the

Transirico, “Second order elliptic equations in weighted Sobolev spaces on unbounded domains,” Rendiconti della Accademia Nazionale delle Scienze detta dei XL.. Memorie di

So far, most spectral and analytic properties mirror of M Z 0 those of periodic Schr¨odinger operators, but there are two important differences: (i) M 0 is not bounded from below