约束最优化方法 (二) Zoutendijk容许方向法

算法:(Zoutendijk法)

已知目标函数 f ( x ) f(x) f(x)及其梯度 ∇ f ( x ) \nabla f(x) f(x),不等式约束中的矩阵 A A A和向量 b b b,等式约束中的矩阵 C C C和向量 d d d,终止限 ε \varepsilon ε

  1. 选定初始容许点 x 0 x_{0} x0;置 k = 0 k=0 k=0
  2. A A A分解为 A k ′ A_{k}^{'} Ak A k ′ ′ A_{k}^{''} Ak′′,相应地把 b b b分解为 b k ′ b_{k}^{'} bk b k ′ ′ b_{k}^{''} bk′′,使得 A k ′ x k = b ′ A_{k}^{'}x_{k}=b^{'} Akxk=b A k ′ ′ x k ′ ′ ≥ b k ′ ′ A_{k}^{''}x_{k}^{''} \geq b_{k}^{''} Ak′′xk′′bk′′。设 b k ′ ′ b_{k}^{''} bk′′的维数为 τ \tau τ
  3. 求解线性规划问题:
    m i n p   ∇ f ( x k ) T p s . t .    A k ′ p ≥ 0 C p = 0 − e ≤ p ≤ e min_{p} \ \nabla f(x_{k})^{T}p \\ s.t. \ \ A_{k}^{'}p \geq 0 \\ Cp =0 \\ -e \leq p \leq e minp f(xk)Tps.t.  Akp0Cp=0epe
    设其最优解为 p k p_{k} pk
  4. ∣ ∇ f ( x k ) T p k ∣ < ε |\nabla f(x_{k})^{T}p_{k}| < \varepsilon ∣∇f(xk)Tpk<ε,则打印 x k x_{k} xk,停机;否则,计算 u = A k ′ ′ x k − b k ′ ′ u=A_{k}^{''}x_{k}-b_{k}^{''} u=Ak′′xkbk′′ v = A k ′ ′ p k v=A_{k}^{''}p_{k} v=Ak′′pk
  5. p ≥ 0 p \geq 0 p0,则作直线搜索 x k + 1 = 1 s ( x k , p k ) x_{k+1}=1s(x_{k},p_{k}) xk+1=1s(xkpk);否则,计算
    t ‾ = m i n 1 ≤ i ≤ ε { − u i v i ∣ v i < 0 } \overline{t}=min_{1 \leq i \leq \varepsilon} \{ -\frac{u_{i}}{v_{i}}| v_{i} < 0 \} t=min1iε{viuivi<0}
    并求解:
    m i n t f ( x k + t p k ) ; s . t .    0 ≤ t ≤ t ‾ min_{t}f(x_{k}+tp_{k}); \\ s.t. \ \ 0 \leq t \leq \overline{t} mintf(xk+tpk);s.t.  0tt
    设其最优解为 t k t_{k} tk;计算 x x + 1 = x k + t k p k x_{x+1}=x_{k}+t_{k}p_{k} xx+1=xk+tkpk
  6. k = k + 1 k=k+1 k=k+1,转2。

我的微信公众号名称:小小何先生
公众号介绍:主要研究分享深度学习、机器博弈、强化学习等相关内容!期待您的关注,欢迎一起学习交流进步!

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值