๐ง NP-Hard(NP ๋ํด)
Problem X๊ฐ ๋ค์ ์กฐ๊ฑด์ ๋ง์กฑํ๋ฉด ์ด๋ฅผ NP-Hard๋ผ ๋ถ๋ฆ ๋๋ค.
์ด๋ ํ Y $\in$ NP ์ ๋ํด์๋, Y $\leq_p$ X ๊ฐ ์ฑ๋ฆฝ๋๋ค.
์ฆ NP์ ์ํ ์ด๋ ํ ๋ฌธ์ ์ ๋ํด์๋ X๋ก์ Polynomial Time Reduction์ด ์กด์ฌํด์ผ ํฉ๋๋ค.
Halting Problem(์ ์ง ๋ฌธ์ )์ NP-Hard์ ์ํ๋ ๋ํ์ ์ธ ๋ฌธ์ ์ ๋๋ค.
๐ง NP-Complete(NP ์์ )
Problem X๊ฐ ๋ค์ ์กฐ๊ฑด์ ๋ง์กฑํ๋ฉด ์ด๋ฅผ NP-Complete๋ผ๊ณ ๋ถ๋ฆ ๋๋ค.
1) ์ด๋ ํ Y $\in$ NP ์ ๋ํด์๋, Y $\leq_p$ X ๊ฐ ์ฑ๋ฆฝ๋๋ค.
2) X $\in$ NP ์ฌ์ผ ํฉ๋๋ค.
์ฆ NP-Complete๋ NP-Hard์ด๋ฉด์ NP์ธ ๋ฌธ์ ๋ค์ ์๋ฏธํฉ๋๋ค.
Halting Problem(์ ์ง ๋ฌธ์ )์ NP-Hard์ ์ํ์ง๋ง NP ๋ฌธ์ ๋ ์๋๋๋ค.
๋ฐ๋ผ์ NP-Complete๊ฐ ์๋๋๋ค.
๐ง P = NP๋ฅผ ์ฆ๋ช ํ๋ ๋ฐฉ๋ฒ
์ด๋ค NP-Complete์ ์ํ Problem X์ ๋ํ์ฌ,
๋ง์ฝ P = NP๋ผ๋ฉด, X ๋ฅผ Polynomial time ์์ ํด๊ฒฐ ๊ฐ๋ฅํฉ๋๋ค. ๋ํ ์ญ ์ญ์ ์ฑ๋ฆฝํฉ๋๋ค.
์ฆ NP-Complete ์ ์ํ ๋ฌธ์ ๋ฅผ Polynomial time ์์ ํด๊ฒฐ ๊ฐ๋ฅํ๋ฉด, P = NP๋ฅผ ์ฆ๋ช ํ ์ ์์ต๋๋ค.
์ด์ ๋ํ ์ฆ๋ช ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
๐ ์ฆ๋ช
(1) X๊ฐ polynomial time ์์ ํด๊ฒฐ ๊ฐ๋ฅํ๋ค ํ๊ฒ ์ต๋๋ค.
X๋ NP-Complete ์ด๋ฏ๋ก NP์ ์ํ ์์์ Problem Y์ ๋ํ์ฌ, Y $\leq_p$ X ๊ฐ ์ฑ๋ฆฝํฉ๋๋ค.
๋ฐ๋ผ์ Y๋ฅผ ํด๊ฒฐํ๋ polynomial time algorithm ๋ํ ์กด์ฌํ๋ฏ๋ก, Y๋ P์๋ ์ํฉ๋๋ค.
(2) X๋ NP์ ์ํด ์์ผ๋ฏ๋ก, NP = P ๋ผ๋ฉด X๋ P์๋ ์ํ๊ฒ ๋ฉ๋๋ค.
์ฆ X๋ฅผ ํด๊ฒฐํ๋ polynomial time algorithm์ด ์กด์ฌํ๊ฒ ๋ฉ๋๋ค.
๐ง Cook-Levin Theorem
๋ชจ๋ SAT ๋ฌธ์ ๋ NP-complete๋ผ๋ ๊ฒ์ ์ฆ๋ช ํ ์ ๋ฆฌ์ ๋๋ค.
์ฆ ์ด๋ฅผ ํตํด 3-SAT ์ญ์ NP-Complete์ธ ๊ฒ์ ์ฆ๋ช ํ ์ ์์ต๋๋ค.
๐ง NP - Complete๋ฅผ ์ฆ๋ช ํ๋ ๋ฐฉ๋ฒ
์ผ๋ฐ์ ์ผ๋ก ์ด๋ค Problem X๊ฐ NP-Complete ์์ ์ฆ๋ช ํ๋ ๋จ๊ณ๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
1. X๊ฐ NP์ ์ํด ์์์ ์ฆ๋ช ํฉ๋๋ค. (๋งค์ฐ ์ค์ํฉ๋๋ค.)
2. ์ด๋ค(์ด๋ฏธ ์๋ ค์ง) NP-Complete Problem Y์ ๋ํ์ฌ, Y $\leq_p$ X ๋ฅผ ์ฆ๋ช ํฉ๋๋ค.
2๋ฅผ ์ฆ๋ช ํ ๊ฒฝ์ฐ, ์์์ NP์ ์ํ ๋ฌธ์ Z์ ๋ํด์, Z $\leq_p$ Y $\leq_p$ X๊ฐ ๋๊ณ ,
๋ฐ๋ผ์ Z $\leq_p$ X ์์ ์ ์ ์์ต๋๋ค.
Reduction์ ๋ํด ์์๋ณด๋ ๊ธ์์, ๋ค์์ ์ฆ๋ช ํ์์ต๋๋ค.
(3-SAT) $\leq_p$ (Independent Set) $\leq_p$ (Vertex Cover)
(3-SAT) $\leq_p$ (Independent Set) $\leq_p$ (Clique)
์ด๋ 3-SAT์ด Cook-Levin Theorem์ ์ํด NP์ ์ํ๋ฏ๋ก, Independent Set, Vertex Cover, Clique ๋ชจ๋ NP์ ์์์ ์ฆ๋ช ํ ์ ์์ต๋๋ค.
'๐ฅ Computer Science > ์๊ณ ๋ฆฌ์ฆ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[์๊ณ ๋ฆฌ์ฆ] P์ NP (1) | 2022.12.06 |
---|---|
[์๊ณ ๋ฆฌ์ฆ] Reduction (0) | 2022.12.05 |
[์๊ณ ๋ฆฌ์ฆ] Counting Sort (๊ณ์ ์ ๋ ฌ) (0) | 2022.12.05 |
[์๊ณ ๋ฆฌ์ฆ] Adversary Argument (2) | 2022.12.05 |
[์๊ณ ๋ฆฌ์ฆ] DP(4) - ํ๋ก์ด๋ ์์ฌ(Floyd Warshall) ์๊ณ ๋ฆฌ์ฆ (0) | 2022.11.13 |