21.08.2013 Views

优化中的分支定界方法及其在计算机视觉中的应用

优化中的分支定界方法及其在计算机视觉中的应用

优化中的分支定界方法及其在计算机视觉中的应用

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

优化中的分支定界方法及其在<br />

计算机视觉中的应用<br />

张强<br />

2009.10.20


主要内容<br />

1.回顾——凸函数与非凸函数<br />

2.优化中的分支定界方法<br />

3.分支定界方法在计算机视觉的应用


凸函数与非凸函数<br />

n 函数 f : R → R为凸函数(convex<br />

function),<br />

如果其定义域为凸集,并且 ∀xy , ∈dom f,<br />

0≤θ≤1, 有<br />

f ( θ x+ (1 −θ) y) ≤ θ f( x) + (1 −θ)<br />

f( y)<br />

B. Stephen and V. Lieven. Convex Optimization. Cambridge University Press,<br />

2004.


凸函数与非凸函数<br />

非凸函数:<br />

函数 f n : R → R为拟凸函数(quasiconvex‐<br />

function),如果其定义域及所有的子集<br />

为凸。<br />

S = { x∈dom f | f( x) ≤α, α ∈R}<br />

α


凸函数与非凸函数<br />

非凸函数:


优化中的分支定界方法<br />

分支定界(branch and bound)方法是解决非凸<br />

优化全局极值的一种启发式方法。该方法利用目<br />

标函数的上界或者下界对可行集进行删减,并最<br />

终在一定精度上达到全局极小值。这种方法相当<br />

于在整个可行集上逐点进行枚举,但由于在搜索<br />

过程中不断更改可行集,所以其运算速度大大高<br />

于一般搜索方法。<br />

B. Kolman and R.Beck. Elementary Linear Programming with<br />

Applications(international edition). Academic Press, 1980.<br />

F. Kahl , S. Agarwal, and et al. Practical Global Optimization for Multiview<br />

Geometry. IJCV, 79:271‐284,2008.


优化中的分支定界方法<br />

例:一个3变量的0,1优化问题<br />

右图中根节点(root node)为整<br />

个可行集,而其他节点为根节<br />

点的子节点表示子可行集,连<br />

接节点之的线称为分支(branch),<br />

从节点1到节点k的一系列分支组成一条通路<br />

(path),被未检查到的节点称为隐式枚举的<br />

(implicitly enumerated)节点,反之称为显示枚举的<br />

(explicitly enumerated)节点。隐式枚举节点的顶端<br />

节点称为终止节点(terminal node)。


优化中的分支定界方法<br />

一般的搜索方法在整个可行集中进行逐点枚举。<br />

相比之下,分支定界方法能够利用一些条件进行<br />

自顶向下的枚举,在这个过程中不符合条件的节<br />

点成为终止节点,从而使得隐式枚举节点不用显<br />

式的被检查,大大加快了计算速度。


优化中的分支定界方法<br />

例:一个连续函数优化问题的分支定界方法<br />

min Φ(<br />

x)<br />

st. l ≤ x ≤<br />

u


优化中的分支定界方法<br />

步骤1<br />

*<br />

给定初始最优估计值 Φ(<br />

x ) ,及终止条件 ε 。<br />

对 Φ(<br />

x)<br />

做凸松弛,计算出松弛函数在整个可行集<br />

上的最小值 lb( ) ,如果 ,则终止,<br />

输出最佳值 ,否则继续迭代;<br />

x′<br />

Q<br />

Φ Φ( x′ ) −Φlb( x′ ) ≤ε<br />

x = x′<br />

opt


优化中的分支定界方法<br />

步骤2<br />

将可行集分为k个子集 Qi,计算每个子集上松弛函<br />

数的最小值 lb( i ) 。定义 ,如<br />

果 ,则停止迭代,输出结<br />

果 ;<br />

x′<br />

*<br />

Φ x1 = arg min k Φ(<br />

x′<br />

)<br />

{ qi}<br />

i<br />

i=<br />

1<br />

*<br />

Φ( x1 ) −min 1≤i≤<br />

kΦlb( x′ i)<br />

≤ε<br />

*<br />

x<br />

1


优化中的分支定界方法<br />

步骤3<br />

j<br />

′<br />

*<br />

如果第 个子集, Φlb( xj) −Φ ( x ) > 0,则排除该子集,<br />

反之留下该子集。<br />

*<br />

*<br />

如果存在 Φ( x′ ) −Φ ( x ) < 0,<br />

则 j。重复步骤2。<br />

j<br />

x =<br />

x′


优化中的分支定界方法<br />

分支定界方法的收敛条件:<br />

1.可行集为闭的紧集,以确保具有全局极值;<br />

2.当可行集 Q 的边界 lu , , l−u 趋近于0时,<br />

* *<br />

Φ( x ) −Φlb(<br />

x ) 亦趋近于0。


分支定界方法在计算机视觉的应用<br />

问题描述<br />

重投影残差<br />

其中摄像机矩阵 P p , p , p ,图像坐标 uv , ,<br />

空间点齐次坐标 X<br />

。<br />

T T<br />

⎛ p1 X p2 X ⎞<br />

r = ⎜u− , v−<br />

T T ⎟<br />

⎝ p3 X p3 X ⎠<br />

T<br />

= [ ]<br />

( )<br />

1 2 3<br />

T


分支定界方法在计算机视觉的应用<br />

对于计算重建问题,其目标函数可以表示为<br />

其形式为<br />

i= 1 i<br />

N<br />

∑<br />

i=<br />

1<br />

N fi( x)<br />

min ∑<br />

subject to x∈D x g ( x)<br />

该优化不是一个凸优化问题。<br />

r<br />

i<br />

2<br />

2


分支定界方法在计算机视觉的应用<br />

将上述进一步代换得到<br />

min<br />

xts ,,<br />

i= 1 i<br />

st . f ( x) ≤ t, g ( x) ≥ s<br />

Q<br />

x∈D,( t, s) ∈Q0<br />

2 p<br />

[ l , u ] × L× [ l , u ] × [ L, U ] × L×<br />

[ L , U ]<br />

其可行集为凸集。 0为一个<br />

维空间<br />

N<br />

∑<br />

ti<br />

s<br />

i i i i<br />

1 1 p p 1 1<br />

p p<br />


分支定界方法在计算机视觉的应用<br />

定界(Bounding)<br />

寻找合适的松弛方法对非凸函数进行松弛。<br />

生成的松弛函数应具有如下特点:1.便于计算;<br />

2.可以得到较紧的下界;3.易于最小化。


分支定界方法在计算机视觉的应用<br />

分数函数 t/ s, t∈[ l, u], s∈[ L, U]<br />

的松弛函数为<br />

r′ 0, r r′<br />

u − t<br />

≥ − ≥0<br />

λ =<br />

u −<br />

l<br />

Tawarmalani,M., & Sahinidis, N. V. Semidefinite relaxations of fractional<br />

programs via novel convexification techniques. JGO,20,137‐158,2008.<br />

其中<br />

⎡t⎤ convenv<br />

⎢<br />

= min r<br />

s rr , ′ , s′<br />

⎣<br />

⎥<br />

⎦<br />

st . r, r′ , s′∈R, 2λ<br />

l<br />

r′ − s′<br />

2(1 − λ)<br />

≤ r′ + s′<br />

,<br />

u<br />

r −r′ − s+ s′<br />

λL≤ s′ ≤λU,<br />

≤ r − r′ + s−s′ ,<br />

(1 −λ) L≤ s−s′ ≤(1 −λ)<br />

U,


分支定界方法在计算机视觉的应用<br />

由于函数和的凸包大于等于函数凸包的和,可得<br />

min<br />

xrr , , ′ , ss , ′ , t<br />

N<br />

∑<br />

i = 1<br />

n p<br />

st . x∈ R , r, r′ , s, s′ , t∈ R ,<br />

2λ<br />

r<br />

2(1 − λ )<br />

i<br />

i i<br />

i i<br />

l<br />

r′ − s′<br />

≤ r′ + s′<br />

,<br />

u<br />

i i<br />

i i<br />

r − r′ − s + s′<br />

i i i i<br />

λ L ≤ s′ ≤ λU<br />

i i i i i<br />

,<br />

≤ r − r′ + s − s′<br />

,<br />

i i i i<br />

(1 − λ ) L ≤ s − s′ ≤ (1 − λ ) U ,<br />

i i i i i i<br />

r′ i ≥ 0, ri − r′<br />

i ≥ 0,<br />

li ≤ ti ≤ ui, Li ≤ si ≤U<br />

i,<br />

f ( x) ≤ t , g ( x) ≥ s for i = 1, L<br />

, p.<br />

i i i i


分支定界方法在计算机视觉的应用<br />

分支(Branching)<br />

1.在分支时,可以先从拥有最小下界的可行集开<br />

始,依次进行判断;<br />

2.由于一般情况下可行集都具有较多的维数,所<br />

以从哪一维进行分支就是一个重要的问题;<br />

3.如何对选定维分割。


分支定界方法在计算机视觉的应用<br />

本例在分母中寻找待分的那一维<br />

Benson,H.P. Using concave envelopes to globally solve the nonlinear sum of<br />

ratios problem. JGO, 22, 343‐364, 2002.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!