狠狠撸

狠狠撸Share a Scribd company logo
動的計画法の基礎と応用 ~色々使える大局的最適化法
動的計画法の基礎と応用 ~色々使える大局的最適化法
?
?
?
?
?
?
?
?
決して特別なものではなく
身の回りにあふれている
?
?
?
y=f(x)
∫P(x, f(x))dx → min
f(0)=0, f(T)=0, |f’(x)|≦ε
y
x T(=おばあちゃん家)
P(x,y)
y=f(x)
∫P(x, f(x))dx → min
f(0)=0, f(T)=0, |f’(x)|≦ε
y
x T(=おばあちゃん家)
y=f(x)
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
動的計画法の基礎と応用 ~色々使える大局的最適化法
http://www.ieeeghn.org/wiki
/index.php/Richard_Bellman
http://www.amazon.com/
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
動的計画法の基礎と応用 ~色々使える大局的最適化法
動的計画法の基礎と応用 ~色々使える大局的最適化法
動的計画法の基礎と応用 ~色々使える大局的最適化法
動的計画法の基礎と応用 ~色々使える大局的最適化法
1x ix Ix
X
1y
jy
Jy
Y
X Y
X
Y
i
ui
ui
i
i
X
Y
ui
? ? iuiii yxud ??
i
ui
動的計画法の基礎と応用 ~色々使える大局的最適化法
動的計画法の基礎と応用 ~色々使える大局的最適化法
変形可能範囲
基準
パターン
この距離を最小化するのが
最適弾性マッチング
基準
パターン
入力
動的計画法の基礎と応用 ~色々使える大局的最適化法
X
Y
0
? ?ii ud
i
j
i
j
i
j
i
j
i
j
i
j
i
j
i
j
i
j
i
j
i
j
i
j
i
j
? ? ? ? ? ?11
210
min ??
????
?? ii
iuiu
iiii ugudug
1
2
3 1
10 5 5 1
3 2 4 5
4 0 2
2 7 0 4 6
i
j
?
?
? O( JI )
? O( 1 )
?
?
? O(IJ)
?
O(J ) or O(IJ)
i
iuj ?
動的計画法の基礎と応用 ~色々使える大局的最適化法
i
?
?
?
?
?
?
変形可能範囲
標準
パターン
入力
1x 2x 1?ix ix 1?ix Ix1?Ix
X
1y 2y 1?jy jy 1?jy Jy1?Jy
Y
? ? ? ? ? ?? ?IIuiiuu xyxyxy ??? ,,,,11 ??
? ?Ii uuu ,,,, ??1
1u 2u 1?iu iu 1?iu Iu
動的計画法の基礎と応用 ~色々使える大局的最適化法
動的計画法の基礎と応用 ~色々使える大局的最適化法
動的計画法の基礎と応用 ~色々使える大局的最適化法
?
? ? iuiii yxud ??
? ? iuiii yxud ??
i
? ?ii ud
? ? ? ?iuiii yxud ,max?
? ?
?
?
? ??
?
otherwise1
if0 ?iui
ii
yx
ud
iuj ?
Uchida, et al., “Logical DP
matching for detecting
similar subsequence”,
ACCV2007
? ?
?
?
? ??
?
otherwise1
if0 ?iui
ii
yx
ud
動的計画法の基礎と応用 ~色々使える大局的最適化法
動的計画法の基礎と応用 ~色々使える大局的最適化法
動的計画法の基礎と応用 ~色々使える大局的最適化法
A
B
C
動的計画法の基礎と応用 ~色々使える大局的最適化法
動的計画法の基礎と応用 ~色々使える大局的最適化法
動的計画法の基礎と応用 ~色々使える大局的最適化法
5 5 5 0 5
2 2 0 5 0
0 0 2 5 2
2 2 0 5 0
i
j
5 5 5 0 5
2 2 0 5 0
0 0 2 5 2
2 2 0 5 0
i
0.7, 0.2, 0.1
0.4, 0.5, 0.1
0.1, 0.2, 0.7
0.5, 0.4, 0.1
i
0.7, 0.2, 0.1
0.4, 0.5, 0.1
0.1, 0.2, 0.7
0.5, 0.4, 0.1
0.1 0.1 0.2 0.2
0.4 0.4 0.5 0.5
0.7 0.7 0.2 0.2
0.5 0.5 0.4 0.4
0.7
0.1
0.1
0.1
動的計画法の基礎と応用 ~色々使える大局的最適化法
0.7, 0.2, 0.1
0.4, 0.5, 0.1
0.1, 0.2, 0.7
0.5, 0.4, 0.1
動的計画法の基礎と応用 ~色々使える大局的最適化法
?
?
?
?
?
?
?
?
?
?
?
0 Ti-1 i
?
0 Ti-1 i
?
0 Ti-1 i
0 i-1 i
i-1
i
0 i-1 i
i
0 i-1 i
0 Ti-1 i
0 Ti-1 i
?O(N4T)
?
?
?
x
y s
動的計画法の基礎と応用 ~色々使える大局的最適化法
動的計画法の基礎と応用 ~色々使える大局的最適化法
動的計画法の基礎と応用 ~色々使える大局的最適化法
動的計画法の基礎と応用 ~色々使える大局的最適化法
動的計画法の基礎と応用 ~色々使える大局的最適化法
動的計画法の基礎と応用 ~色々使える大局的最適化法
動的計画法の基礎と応用 ~色々使える大局的最適化法
動的計画法の基礎と応用 ~色々使える大局的最適化法
動的計画法の基礎と応用 ~色々使える大局的最適化法
動的計画法の基礎と応用 ~色々使える大局的最適化法
動的計画法の基礎と応用 ~色々使える大局的最適化法
動的計画法の基礎と応用 ~色々使える大局的最適化法
動的計画法の基礎と応用 ~色々使える大局的最適化法
?
動的計画法の基礎と応用 ~色々使える大局的最適化法
?
?
?
?
?
?
動的計画法の基礎と応用 ~色々使える大局的最適化法
動的計画法の基礎と応用 ~色々使える大局的最適化法
? ?????? ?
?
I
i
ii
uu
uuu
udF
ii
Ii
120
,,,,
1
1
minmin
??
? ?
? ? ? ? ? ?
?
?
?
?
?
?
?
?
??
?
?
?
??
?
?
?
??? ?
?
? ??????
????
?
?
I
i uu
u
ii
uu
uuu
I
i
ii
uu
uuu
ududud
ud
ii
Ii
ii
Ii
3
11
20
22
20
,,,,
120
,,,,
12
1
1
2
1
1
minmin
min
??
??
1u
1u 2u
1u
? ?
? ? ? ? ? ?
? ? ? ??
?
?
?
?
?
??
?
?
?
?
?
?
?
?
??
?
?
?
??
?
?
?
???
?
?
?
????
? ??????
????
?
?
?
I
i
ii
uu
uuu
I
i uu
u
ii
uu
uuu
I
i
ii
uu
uuu
ugud
ududud
ud
ii
Ii
ii
Ii
ii
Ii
3
22
20
,,,,
3
11
20
22
20
,,,,
120
,,,,
1
2
12
1
1
2
1
1
min
minmin
min
??
??
??
1u 2u
1u
? ? ? ?
? ? ? ? ? ?
? ? ? ??
?
?
?
?
?
??
?
?
?
?
?
?
?
?
??
?
?
?
??
?
?
?
???
?
?
?
?
?
?
?
?
?
?
????
? ??????
????
?
?
?
I
i
ii
uu
uuu
I
i uu
u
ii
uu
uuu
I
i
ii
uu
uuu
ugud
ugudud
ugud
ii
Ii
ii
Ii
ii
Ii
4
33
20
,,,,
4
22
20
33
20
,,,,
3
22
20
,,,,
1
3
23
2
1
3
1
2
min
minmin
min
??
??
??
2u
? ? ? ?
? ? ? ? ? ?
? ? ? ??
?
?
?
?
?
??
?
?
?
?
?
?
?
?
??
?
?
?
??
?
?
?
???
?
?
?
?
?
?
?
?
?
?
????
? ??????
????
?
?
?
I
i
ii
uu
uuu
I
i uu
u
ii
uu
uuu
I
i
ii
uu
uuu
ugud
ugudud
ugud
ii
Ii
ii
Ii
ii
Ii
4
33
20
,,,,
4
22
20
33
20
,,,,
3
22
20
,,,,
1
3
23
2
1
3
1
2
min
minmin
min
??
??
??
? ? ? ? ? ?11
20 1
1
min ??
??? ?
?
?? ii
uu
u
iiii ugudug
ii
i
? ?11 ?? ii ug
? ?ii ud
動的計画法の基礎と応用 ~色々使える大局的最適化法
i
j
i
j
Raphael, “Coarse-to-Fine
Dynamic Programming”,
TPAMI, 2001
i
j
i
j
i
j
?
? J
動的計画法の基礎と応用 ~色々使える大局的最適化法
iu
i
? ? ? ? ? ?11
20 1
1
min ??
??? ?
?
?? ii
uu
u
iiii ugudug
ii
i
iu1?iu1u 2u Iu1?iu
i+1
i
i-1
i+1
i
i-1
動的計画法の基礎と応用 ~色々使える大局的最適化法
動的計画法の基礎と応用 ~色々使える大局的最適化法
動的計画法の基礎と応用 ~色々使える大局的最適化法
動的計画法の基礎と応用 ~色々使える大局的最適化法
動的計画法の基礎と応用 ~色々使える大局的最適化法
K
N
? ?
動的計画法の基礎と応用 ~色々使える大局的最適化法
動的計画法の基礎と応用 ~色々使える大局的最適化法
動的計画法の基礎と応用 ~色々使える大局的最適化法
?
?
?
?
?
?
?
?
動的計画法の基礎と応用 ~色々使える大局的最適化法
動的計画法の基礎と応用 ~色々使える大局的最適化法
動的計画法の基礎と応用 ~色々使える大局的最適化法
無理やりだが,
DPで解ける形にはなった
DPは不得意な構造...
A B
+
+
+
A B
A B
A B 10 5 2 20
3 9 8 10
20 5
7 3 2 3
A B 10 5 2 20
3 9 8 10
20 5
7 3 2 3
A B 10 5 2 20
3+5=8 9+5=14 8+2=10 10+2=12
20 5
7 3 2 3
DP
A B 10 5 2 20
3+5=8 9+5=14 8+2=10 10+2=12
20+8=28 +8=9 +10=145+10=15
7 3 2 3
DP
A B 10 5 2 20
3+5=8 9+5=14 8+2=10 10+2=12
20+8=28 +8=9 +10=145+10=15
7+28=35 3+9=12 2+9=11 3+14=17DP
A B 10 5 2 20
3+5=8 9+5=14 8+2=10 10+2=12
20+8=28 +8=9 +10=145+10=15
7+28=35 3+9=12 2+9=11 3+14=17
A B 10 5 2 20
3+5=8 9+5=14 8+2=10 10+2=12
20+8=28 +8=9 +10=145+10=15
2+9=11
A B 10 5 2 20
3+5=8 9+5=14 8+2=10 10+2=12
+8=9
A B 10 5 2 20
3+5=8
A B
)O( 22 N
CN )O( N
NC
NxN
# = は定数C
N
NCO )(
pseudo-2D
(
)
)O( 4
N
)O( 3
N
?
?
動的計画法の基礎と応用 ~色々使える大局的最適化法
i
iu
i+t
tiu ?
i
これもDPは不得意.
でも何とかして解きたい
DPはあきらめて
別の最適化で解こう!
t
?
t
?
t
?
t
?
t
?
動的計画法の基礎と応用 ~色々使える大局的最適化法
t
?
t
?
t
?
t
?
t
?
t
?
t
?
t
?
動的計画法の基礎と応用 ~色々使える大局的最適化法
http://en.wikipedia.org/wiki/Seam_carving
動的計画法の基礎と応用 ~色々使える大局的最適化法
動的計画法の基礎と応用 ~色々使える大局的最適化法
動的計画法の基礎と応用 ~色々使える大局的最適化法
DP + beam search
?
?
?
Particle filter
?
?
?
× 1 × 2
?
?
?
Uchida, et al., “Analytical Dynamic
Programming Tracker”, ACCV2010
?
0 Ti-1 i
?
?
?
?
0 Ti-1 i
?
i-1 i
?
i-1 i
?
i-1 i

More Related Content

動的計画法の基礎と応用 ~色々使える大局的最適化法