Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
ゆる計算理論ラジオ / P vs NP for beginner
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
megane42
March 17, 2023
Science
270
1
Share
ゆる計算理論ラジオ / P vs NP for beginner
megane42
March 17, 2023
More Decks by megane42
See All by megane42
Immutable ActiveRecord
megane42
0
320
Rails deprecation warning に立ち向かう技術 / v.s. rails deprecation warnings
megane42
0
770
OSS コミットゴルフのすすめ / Let's play OSS-contribute-golf
megane42
0
120
How to Make "DJ giftee"
megane42
1
980
Rails 6 Upgrade "Practical" Guide
megane42
6
1.4k
updated_at に依存したら大変なことになった / Don't depend on updated_at
megane42
0
620
本当は怖い Rails の `build_xxx` / The Hard Facts of `build_xxx` of Rails
megane42
0
280
Other Decks in Science
See All in Science
ITTF卓球世界ランキングのポイント比を用いた試合結果予測モデルの性能評価 / Performance evaluation of match result prediction models using the point ratio of the ITTF Table Tennis World Ranking
konakalab
0
120
HajimetenoLT vol.17
hashimoto_kei
1
210
Distributional Regression
tackyas
0
470
タンパク質間相互作⽤を利⽤した⼈⼯知能による新しい薬剤遺伝⼦-疾患相互作⽤の同定
tagtag
PRO
0
190
AkarengaLT vol.41
hashimoto_kei
1
130
データベース01: データベースを使わない世界
trycycle
PRO
1
1.2k
AIに仕事を奪われる 最初の医師たちへ
ikora128
0
1.1k
NDCG is NOT All I Need
statditto
2
3k
アクシズを探せ! 各勢力の位置関係についての考察
miu_crescent
PRO
1
250
東北地方における過去20年間の降水量の変化
naokimuroki
1
130
Non-Gaussian, nonlinear causal discovery with hidden variables and application
sshimizu2006
0
110
論文紹介 音源分離:SCNET SPARSE COMPRESSION NETWORK FOR MUSIC SOURCE SEPARATION
kenmatsu4
0
610
Featured
See All Featured
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.4k
The Impact of AI in SEO - AI Overviews June 2024 Edition
aleyda
5
800
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
260
Evolving SEO for Evolving Search Engines
ryanjones
0
180
Documentation Writing (for coders)
carmenintech
77
5.3k
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
320
Optimising Largest Contentful Paint
csswizardry
37
3.6k
Jess Joyce - The Pitfalls of Following Frameworks
techseoconnect
PRO
1
130
How to Ace a Technical Interview
jacobian
281
24k
How to Get Subject Matter Experts Bought In and Actively Contributing to SEO & PR Initiatives.
livdayseo
0
100
The browser strikes back
jonoalderson
0
970
[RailsConf 2023] Rails as a piece of cake
palkan
59
6.5k
Transcript
ゆる計算理論ラジオ 2023/03/17 giftee TechBash @megane42
クイズ P = NP? P ≠ NP?
P = NP だと思った人は ひらめきや創造性を伴う、人間の聖域とも言えるクリエイティブな活動を全て機械で代 替可能だと思ってるってことですよね?
自己紹介 @megane42 趣味: かっこいいワンタイムパスワード集め
背景 どんな施策でも実施できる 柔軟なキャンペー ン設計システムを作りたかった 少し考えた結果、オートマトンというやつに 構造が似ている気がしてきた どんな施策でも実施できる ことを数学的に言 えたりしないだろうか なんかチューリング完全的な?
参考図書 計算理論とオートマトン言語理論 [第2版] 丸岡 章 著
結論 わからなかった 考えていたシステムがチューリングマシ ン(詳細は割愛)に変換可能であること が言えれば、並大抵のキャンペーンは実 施できそうだったが、その証明が困難だ った 一方、その過程で面白い事柄を学べた P 対
NP 問題
P 対 NP 問題 P とか NP というのは 問題のクラス (種類)のこと
P = NP なのか P ≠ NP なのかで一生揉めている 今のところ P ≠ NP っぽいと思われているが、誰も証明できていない P ⊆ NP であることはわかっている
クラス P の定義 答えを効率よく見つけられる問題 ざっくりいうと「しらみつぶしに頑張る」より効率的な手段があるタイプの問題
クラス P の例 ソート クイックソートみたいな効率の良いアルゴリズムが存在する 100 冊のマンガを 1 巻から順に並び替えたいときに、「全ての取りうる並び順を洗 い出したあと、順番に並んでいるパターンが見つかるまでしらみつぶしにチェック
する」みたいなことはしない
クラス NP の定義 答えの検証だけは効率よくできる問題 効率的に解けるかどうかについては触れていないことに注意 まず答えの検証が効率良くできたら、その問題はクラス NP 更に答えの探索が効率良くできたら、その問題はクラス P
クラス NP の例 パズル(ハミルトン閉路問題) 与えられたグラフの全点を 1 度ずつ通って最初の点 に戻ってくるような経路は存在するか? 答えが与えられたら、その答えの検証は簡単にでき るので、クラス
NP 今のところ効率よく解く方法は見つかっていない 取りうる経路のパターンを全て列挙してチェッ クするしかない 見つかってないだけで存在するかもしれない
P 対 NP 問題 再掲 P = NP ? P
≠ NP ? ハミルトン閉路問題のような NP 問題に対して、効率良い解き方が 存在するけど人類が まだ見つけてないだけなのか (P = NP なのか) どうかが一生わかっていない
身近な NP 身の回りの問題は、実は NP であることが多い 全てのバイトの希望を満たすシフト表の作成 タンパク質の構造の最適化 ロジスティクスの最適化 P =
NP が判明すれば、世の中が劇的に変わる(効率が良くなる)
帰着と NP 完全 一般に、ある問題を変形して別の問題に置き換える(帰着させる)ことができる NP 完全 な問題とは、任意の NP 問題をそれに帰着できるような問題のこと NP
問題の母みたいなことです NP 完全問題のうち 1 つでも P であることが証明できると、たちどころに全ての NP が P であることが言える (すなわち P = NP) 実は ハミルトン閉路問題は NP 完全 他にも NP 完全問題がたくさん見つかっている が、そのいずれも効率的なアルゴリズムが一生見つかっていない・・・
NP 問題と創造性 (1) 数学の定理の証明 ある定理の証明が与えられたときに、それを検証するのは簡単 NP 問題の定義を満たすので、数学の定理の証明は NP 問題
NP 問題と創造性 (2) 良い俳句をつくる ある俳句が与えられたときに、それがグッと来るかどうか検証するのは簡単 NP 問題の定義を満たすので、俳句の作成は NP 問題
NP 問題と人間 人間は全パターンを洗い出したりしないけど、正解を見 つけることがある この世の定理全ての組み合わせを列挙したりせずに 定理の証明を思いつく 17 文字の 50 音全ての組み合わせを列挙したりせず
に良い俳句を思いつく 人間は ひらめき という神秘的な能力で答えを見つける ことができる もし P = NP だとすると、人間のひらめきに大した価値 が無い気がしてきませんか?
まとめ 名前しか知らなかった「P 対 NP 問題」について、解像度が高まった 効率の良い解き方が存在はするけど、人類が見つけられてないだけ? もし P = NP
だった場合、世の中のいろいろな問題が一挙に効率化されてしまう 特に NP 完全問題が狙い目 もし P = NP だった場合、人間の持つ「ひらめき」という神秘的な能力の価値が低くなる 気がする
寄り道: 「効率が良い」の定義 効率が良い = 入力のサイズ n に対して、n の多項式時間で解ける 例: n
冊のマンガを並べ替えたいとき 最低でも n^2 ステップで並べ替えができる方法 → 効率が良い 最低でも 2^n ステップで並べ替えができる方法 → 効率が悪い しらみつぶしに全パターン網羅しようとすると、得てしてパターンは指数関数的に 増えるので、効率が悪い(多分)
寄り道: NP 問題の別の定義 非決定性チューリングマシン で効率良く解ける問題 非決定性チューリングマシンとは、超ざっくりいうと、同じ入力が与えられたとき のふるまいが一意に決まってないような機械のこと 入力: グラフ ふるまい:
どの経路に着目するか 各経路 1 つずつの検証は効率良く行える たまたま正解の経路に着目すれば答えが見つかる ありうる全パターンを同時に並列処理できるなら効率良く解ける、みたいなことを 言っている NP は Non-deterministic Polynomial の略で、Not P ではないです
参考 計算下界の解明 ー その意義とシナリオ (徳山 豪) https://researchmap.jp/read0065631/misc/31636571 https://researchmap.jp/read0065631/misc/31636564 第14回 P≠NP予想について考える(前編) (辻真吾)
https://www.school.ctc-g.co.jp/python/columns/tsuji/tsuji14.html 第15回 P≠NP予想について考える(後編) (辻真吾) https://www.school.ctc-g.co.jp/python/columns/tsuji/tsuji15.html