Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
動的計画モデル
Search
Masafumi Abeta
September 23, 2022
Science
210
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
動的計画モデル
「オペレーションズ・リサーチ」輪講会の発表資料です。
Masafumi Abeta
September 23, 2022
More Decks by Masafumi Abeta
See All by Masafumi Abeta
Pythonのパッケージマネージャー「uv」
abeta
1
470
GPTモデルでキャラクター設定する際の課題
abeta
0
410
GPTをLINEで使えるようにして布教した
abeta
0
230
【Nishika】プリント基板の電子部品検出
abeta
0
380
初心者向けChatGPT入門
abeta
0
300
GPT Short Talk
abeta
0
180
拡散モデルについて少しだけ
abeta
0
100
物体追跡
abeta
0
370
特徴量記述
abeta
0
230
Other Decks in Science
See All in Science
CVPR2026_VGGTとその仲間たち
mickey_0226
0
1.2k
バランスって大事だね
akasan
1
160
20261012_hcmpl2026
takusamar
0
100
TypeScript で WebAssembly を用いた 型安全なプラグイン設計
nagano
2
630
Wet Active Matter
rajeshrinet
0
260
From Prediction to Understanding: Causal Discovery for Data Science and AI Applications
sshimizu2006
0
320
医療 LLM ベンチマークの現在地:多面的評価 と日本ローカライズ
analokmaus
1
740
Conwayの法則を"ちゃんと"使うために — 原典でConwayは何を言っていたのか
bonotake
10
7.5k
データベース03: 関係データモデル
trycycle
PRO
1
900
生成AI・プレプリント時代における 研究成果公開の再設計 ― トップカンファレンス文化はどこへ向かうのか / Redesigning the Dissemination of Research Outputs in the Age of Generative AI and Preprints — Where Is the Top-Conference Culture Heading?
ykiyota
0
30k
サンプル対応のない複数遺伝子発現プロファイルに対するテンソル分解型統合解析の要約
tagtag
PRO
0
260
Leitner Inauguration Lecture Chalmers University of Technology
xleitix
0
380
Featured
See All Featured
AI Search: Where Are We & What Can We Do About It?
aleyda
0
8.1k
Scaling GitHub
holman
464
140k
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
1
340
Designing Experiences People Love
moore
143
24k
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
The Invisible Side of Design
smashingmag
301
52k
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
400
StorybookのUI Testing Handbookを読んだ
zakiyama
31
7k
The SEO identity crisis: Don't let AI make you average
varn
0
580
My Coaching Mixtape
mlcsv
0
350
The Pragmatic Product Professional
lauravandoore
37
7.5k
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
74
42k
Transcript
XX University 9章 動的計画モデル 2022.07.03 Abeta
2 切符購⼊問題 スタート地点からゴール地点までの切符を買うとき、最も安くなる購⼊組み合わせを知りたい。 三島ー掛川=23940 三島ー静岡、静岡ー掛川=10680+9420=20100 ← 安い! 駅名 掛川 静岡
9420 静岡 新富⼠ 16020 7500 新富⼠ 三島 23940 10680 7500 三島 熱海 25140 14940 10620 6240 熱海 ⼩⽥原 27060 17220 13920 10080 6840 ⼩⽥原 新横浜 37740 27060 23940 17220 14940 10680 新横浜
3 動的計画法 ゴール地点から考える。 0をスタート、0からi-1までの最⼩費⽤が分かっているとし、 𝑝! , … , 𝑝"#$ と書く。
𝑗から𝑖への切符費⽤を𝑐%" と書く。 0 1 j i-1 i i+1 𝑝"#$ 𝑝% 𝑝$ 𝑝! 𝑐%" 再帰的な式が得られる。 𝑝" = ( 0 min %∈ !,$,…,"#$ (𝑝% + 𝑐%" ) 𝑖 = 0 𝑖 > 0 𝑐%" は三⾓表で与えられている。スタートとゴールが同⼀駅の場合は0として、再帰式を計算できる。
4 最適性の原理 最適性の原理・・・決定の全系列にわたって最適化を⾏うためには、初期の状態と最初の決定がどんなもので あっても、残りの決定は最初の決定から⽣じた状態に関して最適な⽅策を構成していなければならない。 → 𝑗 < 𝑖に対し、 𝑝" を最適化するための問題で解いた𝑝%
は、 𝑝% を最適化するための問題においても最適解と なっている。 0 1 j i-1 i i+1 𝑝"#$ 𝑝% 𝑝$ 𝑝! 𝑐%" 𝑝"#$ を求める 問題の最適解 𝑝% を求める問 題の最適解 𝑝$ を求める問 題の最適解 𝑝! を求める問 題の最適解
5 計算量 • すべての分割を総当り 2 )*! + + C) =
2+ = 𝜊(𝑘+) 2 )*! + 𝑘 = 𝑛(𝑛 + 1) 2 = 𝜊(𝑛,) • 動的計画法
6 アミノ酸配列のアラインメント 問題としては⽂字列の類似さを⽐較する問題。 例)DELTAとDATAを⽐較する。 D_ATA DELTA DELTA DA_TA ⼀致は加点 不⼀致は減点
⽋損は減点 ⚠点数は⽂字に依存 • D-D=8点 • A-A=5点 • A-E=-1点 • A-L=-2点 • E-_=-8点 等 どこにギャップ( _ )を⼊れればスコアを最⼤化できるか? 9点 8点
7 𝑥 𝑦 アライン済 アライン済 ⽂字列𝑥と𝑦のアラインメントを考える。 具体例として、例えば𝑥 =RESEARCH、 𝑦 =DESIREとする。
最後のアラインメントは次のようになる。 E H アライン済 アライン済 E _ アライン済 アライン済 _ H ⽂字の選び⽅は3通りある。
8 2次元の動的計画法 𝑥の𝑖⽂字⽬と𝑦の 𝑗⽂字⽬までアラインメントが済んでいるとき、そのときの最適スコアを𝑠[𝑖, 𝑗] とする。 𝑠[𝑖, 𝑗]に辿り着く道は3通りある。その3通りのう ちスコアが最⼤になる状態を採⽤する。 𝑠[𝑖,
𝑗] = max { 𝑠 𝑖 − 1, 𝑗 − 1 + 𝑏 𝑥" , 𝑦% , 𝑠 𝑖 − 1, 𝑗 − 8, 𝑠 𝑖, 𝑗 − 1 − 8 } −8𝑗 −8𝑗 0 𝑖 = 0, 𝑗 > 0 𝑖 > 0, 𝑗 = 0 𝑖 = 𝑗 = 0 𝑖 > 0, 𝑗 > 0
9 ⾏列積の計算 𝑝! ×𝑝$ ⾏列と𝑝$ ×𝑝, ⾏列の積を計算するとき、掛け算の回数は𝑝! 𝑝$ 𝑝, となる。
3つの⾏列𝐴$ ×𝐴, ×𝐴- の⼤きさが10×100, 100×5, 5×50のとき、 (𝐴$ ×𝐴, )×𝐴- → 10×100×5 + 10×5×50 = 7500 𝐴$ ×(𝐴, ×𝐴- )→ 10×100×50 + 100×5×50 = 75000 となり、積の順序で掛け算回数が変わる。掛け算回数を最⼩にしたい。
10 分割の動的計画法 ⾏列𝐴$ 𝐴, ⋯ 𝐴+ の最後の分割を(𝐴$ ⋯ 𝐴" )(𝐴".$
⋯ 𝐴+ )に決定する次に(𝐴$ ⋯ 𝐴" )と(𝐴".$ ⋯ 𝐴+ )を分割して、、、と 繰り返すことで動的計画法を適⽤できる。 𝐴" 𝐴".$ ⋯ 𝐴% の掛け算量を𝑚[𝑖, 𝑗]とする。分割の位置を (𝐴" ⋯ 𝐴) )(𝐴).$ ⋯ 𝐴% )のように探索すれば、次の再帰式を 得る。 𝑚[𝑖, 𝑗] = ( 0 min "/)/%#$ {𝑚 𝑖, 𝑘 + 𝑚[𝑘 + 1, 𝑗] + 𝑝"#$ 𝑝) 𝑝% } 求めたいものは𝑚[1, 𝑛]である。 𝑗 − 𝑖 = 𝑘のとき、 𝑗0 − 𝑖0 = 𝑘 − 1となる𝑚[𝑖′, 𝑗′]が 全てわかっていれば再帰式を計算できる。 𝑖 = 𝑗 𝑖 < 𝑗
11 最短路問題 有効グラフの最短経路を考える。 𝑑(𝑣) = ( 0 min 1∈23(5) (𝑑
𝑢 + 𝑤15 ) 𝑣 = 𝑠 𝑣 ≠ 𝑠 スタート𝑠から頂点𝑣までの最適経路⻑を𝑑(𝑣)とする。 再帰計算をどこから始めればよいか⾃然な順序はない。
12 ダイクストラ法 • 全てのエッジのコストが 0 以上であること。 • 負のコストがある場合はベルマン・フォード法。 • ナイーブな計算量は𝜊(𝑉,)。
• ヒープ法で𝜊(𝐸 + 𝑉log 𝑉)になる。 • 順序的に解くので並列化不可能。
13 最適化問題でない動的計画法 道の数え上げ 𝐹" = W 1 𝐹"#$ + 𝐹"#,
𝑖 = 1,2 𝑖 ≥ 3 1から6に⾄る道の本数を知りたい。
14 最適化問題でない動的計画法 Banzhaf指数 例)A,B,Cの3つの政党がある。議席数はそれぞれ10,10,1とする。過半数11で議案を通すことが出来るとき、 議案を通せる提携(党の連⽴の組み合わせ)は{A,B,C},{A,B},{B,C},{C,A}である。この集合の意味で、A,B,Cは 対等になっている。 ⼀般化して𝑛個の政党があるとする。政党の集合を𝑁と表す。空集合も提携と呼ぶ。政党𝑖の議席数を𝑤" とする。 投票が𝑞以上のとき議案を通せるとする。 Banzhaf指数は政党𝑖を含まない敗北提携のうち、政党𝑖を加えると勝利提携になるものの数を2+#$
で割った値。 𝛽" = | 𝑆 ⊆ 𝑁 ∖ 𝑖 2 %∈7 𝑤% < 𝑞 ≤ 𝑤" + 2 %∈7 𝑤% }|/2+#$
15 例 𝑛 = 7, 𝑤$ , 𝑤, , 𝑤-
, 𝑤8 , 𝑤9 , 𝑤: , 𝑤; = 1,1,2,1,3,1,1,3 , 𝑞 = 8の例。 𝛽; を求める。 8未満かつ3加えたら 8以上になるもの。
16 動的計画法まとめ • 最適原理に基づく⽅法。 • 現在では多種多様の⽅法に発展して動的計画法という名前が指すものの実態がよく分からなくなった。 • 動的計画法は、実際の時間順と逆順に問題を捉え、時間順にどのような情報を積み上げておけばよいか⾒ つけることで、算法を得られる。 •
図を描け。