留言板

尊敬的读者、作者、审稿人, 关于本刊的投稿、审稿、编辑和出版的任何问题, 您可以本页添加留言。我们将尽快给您答复。谢谢您的支持!

姓名
邮箱
手机号码
标题
留言内容
验证码

自适应增益的SPGD算法

方舟 徐项项 李鑫 刘金龙 杨慧珍 龚成龙

方舟, 徐项项, 李鑫, 刘金龙, 杨慧珍, 龚成龙. 自适应增益的SPGD算法[J]. 红外与激光工程, 2020, 49(10): 20200274. doi: 10.3788/IRLA20200274
引用本文: 方舟, 徐项项, 李鑫, 刘金龙, 杨慧珍, 龚成龙. 自适应增益的SPGD算法[J]. 红外与激光工程, 2020, 49(10): 20200274. doi: 10.3788/IRLA20200274
Fang Zhou, Xu Xiangxiang, Li Xin, Liu Jinlong, Yang Huizhen, Gong Chenglong. SPGD algorithm with adaptive gain[J]. Infrared and Laser Engineering, 2020, 49(10): 20200274. doi: 10.3788/IRLA20200274
Citation: Fang Zhou, Xu Xiangxiang, Li Xin, Liu Jinlong, Yang Huizhen, Gong Chenglong. SPGD algorithm with adaptive gain[J]. Infrared and Laser Engineering, 2020, 49(10): 20200274. doi: 10.3788/IRLA20200274

自适应增益的SPGD算法

doi: 10.3788/IRLA20200274
基金项目: 国家自然科学基金(11573011);江苏省“六大人才高峰”高层次人才项目(KTHY-058);江苏省“333”高层次人才培养项目(BRA2019244);江苏省研究生科研与实践创新计划项目(KYCX20_2906,KYCX20_2961)
详细信息
    作者简介:

    方舟(1996-),男,硕士生,主要从事自适应光学系统控制算法方面的研究。Email:Fangzhou9629@163.com

    杨慧珍(1973-),女,教授,博士,主要从事自适应光学技术及其应用方面的研究。Email:yanghz@jou.edu.cn(通讯联系人)

  • 中图分类号: TP273.2

SPGD algorithm with adaptive gain

图(9) / 表(2)
计量
  • 文章访问数:  18
  • HTML全文浏览量:  17
  • PDF下载量:  7
  • 被引次数: 0
出版历程
  • 收稿日期:  2020-07-10
  • 录用日期:  2020-05-21
  • 修回日期:  2020-08-29
  • 网络出版日期:  2020-11-03
  • 刊出日期:  2020-11-03

自适应增益的SPGD算法

doi: 10.3788/IRLA20200274
    作者简介:

    方舟(1996-),男,硕士生,主要从事自适应光学系统控制算法方面的研究。Email:Fangzhou9629@163.com

    杨慧珍(1973-),女,教授,博士,主要从事自适应光学技术及其应用方面的研究。Email:yanghz@jou.edu.cn(通讯联系人)

基金项目:  国家自然科学基金(11573011);江苏省“六大人才高峰”高层次人才项目(KTHY-058);江苏省“333”高层次人才培养项目(BRA2019244);江苏省研究生科研与实践创新计划项目(KYCX20_2906,KYCX20_2961)
  • 中图分类号: TP273.2

摘要: SPGD算法是一种应用广泛的无波前探测自适应光学控制算法。传统SPGD算法中增益系数保持某一固定值不变,随着变形镜单元数的增加,这将导致算法收敛速度变慢及陷入局部极值的概率增大。Adam优化器是深度学习常用的一种优化随机梯度下降算法,它具有增益系数自适应性调整的特点。将Adam优化器自适应调整增益系数的优势与SPGD算法结合起来用于自适应光学系统控制。分别以32、61、97、127单元变形镜作为波前校正器件,不同湍流强度的波前像差作为校正对象,建立了无波前探测自适应光学系统模型。结果表明,优化后的算法收敛速度更快,而且陷入局部极值的概率降低,并且随着变形镜单元数的增加与湍流强度的增大,算法的优势更加明显。以上研究结果为基于Adam优化的SPGD算法的实际应用提供了理论基础。

English Abstract

    • 随着自适应光学技术应用领域的拓展,小型化和低成本化成为趋势。相比于常规自适应光学系统,无波前探测自适应光学系统复杂性低、应用领域广,这一技术成为目前相关领域的研究热点[1-4]。在无波前探测自适应光学系统中,随机并行梯度下降算法(Stochastic Parallel Gradient Descent, SPGD)具有并行化、鲁棒性强、实现简单等优点,是目前最具有应用前景的一种无波前探测自适应光学系统控制算法[5-6]。在SPGD算法实现过程中,增益系数的大小决定控制算法的收敛速度和校正性能,但现有算法中大多凭借经验选取某一固定值作为增益系数。目前随着大口径望远镜的发展,变形镜所需单元数可达上千个。单元数越多,意味着控制参数维度增加,算法寻优范围变大,固定值增益容易导致算法收敛速度变慢及陷入局部极值的概率增大。

      Adam (Adaptive Moment Estimation)[7]优化器是深度学习里常用的一种优化随机梯度下降算法,具有实现简单、计算高效、所占内存较少和参数设定方便等优点,在应用深度学习的图像处理、机器视觉等领域使用广泛[8-9]。和传统的随机梯度下降算法保持固定的学习率不同,Adam结合了动量[10]和RMSProp(Root mean square Prop)算法的优点。每一次算法迭代都利用梯度的一阶矩和二阶矩估计信息对学习率进行调整,通过调整学习率控制梯度下降的方向和步长,减小梯度下降的波动使其快速稳定在下降的最低点,从而提高算法的收敛速度和降低陷入局部极值的概率。

      文中将Adam优化器自适应调整学习率的优势与SPGD算法结合起来用于自适应光学系统控制。分别以32、61、97、127单元变形镜作为波前校正器件,不同湍流强度的波前像差作为校正对象,建立了无波前探测自适应光学系统仿真模型。首先考察了现有SPGD算法随着控制参数维度的增多,收敛速度变慢及陷入局部极值的情况。其次分析了基于Adam优化的SPGD控制算法在自适应光学系统中的校正速度和陷入局部极值的情况,并将优化后的结果与现有SPGD控制算法结果进行了比较。

    • SPGD算法利用性能指标j的变化量$\nabla j$与控制参量u的变化量$\nabla u$对控制参量的梯度进行估计,利用迭代方式在控制参量的梯度下降方向上搜索。第k次迭代时,施加在变形镜N个驱动器上的电压向量${u^k}= {\{ {u_1},{u_2}, \cdots ,{u_N}\} ^k}$的计算公式为:

      $${u^{(k)}}={u^{(k - 1)}} + \alpha \nabla {u^{(k)}}\nabla {j^{(k)}}$$ (1)

      式中:$\alpha $是增益系数;$\nabla {j^{(k)}}$是系统性能指标的变化量;$\nabla {u^{(k)}}={\{ \nabla {u_1},\nabla {u_2}, \cdots \nabla {u_N}\} ^k}$是第k次迭代时施加的随机扰动电压向量。具体过程如下,首先生成扰动电压$\nabla {u^{(k)}}$,将电压${u^{(k - 1)}} + \nabla {u^{(k)}}$施加到变形镜上,然后采集CCD图像并计算性能指标$j_ + ^{(k)}$;同样再把电压${u^{(k - 1)}} - \nabla {u^{(k)}}$施加到变形镜上,采集图像计算出性能指标$j_ - ^{(k)}$;根据公式(2)计算性能指标变化量:

      $$\nabla {j^{(k)}}=j_ + ^{(k)} - j_ - ^{(k)}$$ (2)

      然后按照公式(1)计算控制电压向量$\nabla {u^{(k)}}= {\{ \nabla {u_1},\nabla {u_2}, \cdots, \nabla {u_N}\} ^k}$施加到变形镜上,采集图像得到校正效果完成第K次迭代。

    • 利用Adam的自适应学习率的优点,将Adam算法和SPGD算法相结合,把SPGD算法中固定增益系数优化为自适应增益系数,提高算法的收敛速度和减小局部极值的概率。

      根据公式(2)求得第k次的梯度估计值为$dw=\nabla u\nabla j$。然后再根据下面公式(3)~(6)进行梯度优化。

      实际过程如下,首先初始化梯度的一阶动量${v_{dw}}$和二阶动量${s_{dw}}$。在第K次迭代时,依据公式(3)和(4)计算梯度的一阶动量和二阶动量。

      $${v_{dw}}={\beta _1}{v_{dw}} + (1 - {\beta _1})dw$$ (3)
      $$ {s_{dw}}={\beta _2}{v_{dw}} + (1 - {\beta _2})d{w^2} $$ (4)

      由于在迭代初期,计算偏差太大需要修正,公式(5)和(6)是对梯度值进行偏差修正。

      $${\mathop {{v_{dw}}}\limits^ {\wedge}} =\dfrac{{{v_{dw}}}}{{1 - \beta _1^k}}$$ (5)
      $${\mathop {{s_{dw}}}\limits^ {\wedge}} =\dfrac{{{s_{dw}}}}{{1 - \beta _2^k}}$$ (6)

      最后把以上求得的参数${\mathop {{S_{dw}}}\limits^ {\wedge}} $${\mathop {{S_{dw}}}\limits^ {\wedge}} $代入公式(7)中,计算出第K次迭代的控制电压。

      $$ {u^k}={u^{k - 1}} - \dfrac{\partial }{{\sqrt {\mathop {{s_{dw}}}\limits^ \wedge } + \varepsilon }}\mathop {{v_{dw}}}\limits^ \wedge $$ (7)

      $ \dfrac{\partial }{{\sqrt {\mathop {{s_{dw}}}\limits^ \wedge } + \varepsilon }}$代表了自适应增益,每一次迭代都会进行调整。文中默认值${\beta _{\rm{1}}}={\rm{0}}{\rm{.9}}$${\beta _{\rm{2}}}={\rm{0}}{\rm{.999}}$$\varepsilon ={\rm{1}}{{\rm{0}}^{{\rm{ - 8}}}}$$\partial $根据情况设定大小,设为0.01。算法的具体实现过程如图1所示。

      图  1  优化算法实现流程

      Figure 1.  Optimization algorithm implementation process

    • 图2所示,无波前探测自适应光学系统由波前校正器(变形镜),CCD,波前控制模块等组成。系统工作流程如下,畸变的波前经过变形镜反射经透镜聚焦到CCD上,CCD采集图像并传输到控制器中。通过控制算法的计算得到控制信号,经过高压放大单元传送给变形镜,从而驱动变形镜产生形变补偿像差。然后将残余波前作为待校正的波前继续进行闭环校正,直到满足预设的条件为止。

      图  2  无波前探测自适应光学系统

      Figure 2.  Wavefront sensorless adaptive optics system

      文中的无波前探测自适应光学系统仿真实验用到4种单元变形镜,分别是37、61、97、127单元。

      根据变形镜校正波前的工作原理,变形镜产生的补偿面形$ \phi (x,y)$可以用各驱动器的影响函数线性组合表示:

      $$\phi (x,y)=\sum\limits_{i=1}^N {{v_i}} {S_i}(x,y)$$ (8)

      式中:$ {S_i}(x,y)$是每个驱动器的影响函数;vi是对变形镜施加的控制电压,$i$是驱动器数量。

      仿真实验中采用Roddier[11]提出的方法生成相屏模拟待校正像差,相屏由3~104阶泽尔尼克像差组成,不包含倾斜项。生成的相屏统计属性符合Kolmogrov谱,且相屏间不具有相关性。湍流强度大小用D/r0表示,D为望远镜的口径,r0为大气相干长度。斯特列耳比(SR-Strehl Ration)作为目标函数。以下如无特殊说明,均为随机选择500帧相屏,将统计平均值作为实验结果。

    • 基于建立的无波前探测自适应光学系统的仿真模型,首先分析随着变形镜单元数的增加,常规SPGD算法收敛性和陷入局部极值概率的情况。分别采用4种单元变形镜去校正湍流强度D/r0=5情况下的波前像差。系统迭代1000次,4种单元变形镜各自收敛情况如下图3所示。图中“37”、“61”、“97”和“127”分别代表4种不同单元的变形镜。

      图  3  基于SPGD算法在4种变形镜情况下系统的收敛情况

      Figure 3.  System convergence based on SPGD algorithm under four DMs

      从图3中可以明显看出随着变形镜单元数的增加,系统收敛速度逐渐变慢。以SR达到0.8时的迭代次数作为校正速度的评判标准。37单元变形镜需要107次,61单元变形镜需要146次,97单元变形镜需要190次,127单元变形镜需要220次。

      为了更加直观对比4种变形镜陷入局部极值的概率,统计了系统陷入局部极值的帧数。37单元变形镜有47帧,61单元有72帧,97单元有98帧,127单元有136帧。从数据中可以看出,随着变形镜单元数的增加,系统陷入局部极值的帧数逐渐增多,意味着系统陷入局部极值的概率逐渐增大。

      下面考察了127单元变形镜分别校正D/r0=5、10、15、20这4种湍流强度下的波前像差的情况。收敛曲线如图4所示。

      图  4  基于127单元变形镜SPGD算法在不同湍流强度下的收敛情况

      Figure 4.  Convergence of SPGD algorithm based on 127 elements DM under different D/r0

      从图中可以看出随着湍流强度的增大,系统的收敛速度逐渐变慢。算法迭代1000次后,D/r0=15和20的情况下没有完全收敛。另外,统计了4种湍流强度下陷入局部极值的帧数,D/r0=5~20分别为136、158、200、240帧。由数据可以看出随着湍流强度的增大,系统陷入局部极值的概率也逐渐增大。

    • 基于Adam优化的SPGD算法理论上具有增益系数自适应变化的特点,随机选取D/r0=5时的50帧不同相屏作为校正对象,分析不同单元数变形镜对应的自适应光学系统增益系数变化情况,如图5所示,其中“SPGD”代表基于常规SPGD算法,其它代表基于优化算法,每条曲线为50帧相屏的平均结果。算法迭代了1000次,但300~1000次迭代增益系数基本保持不变,为图像更加清晰,只给出了前300次迭代情况。

      图  5  两种算法的增益系数变化情况对比

      Figure 5.  Comparison of gain coefficient changes of two algorithms

      从图5中可以看出,4种不同单元数的变形镜,优化后的增益系数在算法迭代初期都比固定增益值大得多,大的增益意味着朝优化方向的步长加大,收敛速度加快,并且收敛速度越快的增益初始值越大。经过一定的迭代次数后,优化后增益系数逐渐接近固定增益值的大小,且随着变形镜单元数的增加,接近固定增益值的速度越快。

    • 基于两种算法,首先对4种变形镜校正同一湍流强度像差的情况进行了对比分析。图6给出了基于优化后的SPGD算法在4种不同变形镜的情况下系统收敛情况。其中“37”、“61”、“97”和“127”分别代表4种单元变形镜。

      图  6  基于优化算法在4种变形镜情况下系统收敛情况

      Figure 6.  System convergence based on optimized algorithm under four DMs

      对比图3可以看出,优化前后算法在4种变形镜的情况下迭代1000次都已经收敛。统计了优化后算法的SR达到0.8时所需迭代次数,在4种变形镜情况下分别需要91、122、150、172次。与常规SPGD算法的数据对比,优化后的算法收敛速度更快。

      为了分析随着变形镜单元数的增加,优化前后算法的收敛趋势,将两种算法收敛时所需要的迭代次数进行对比。结果如图7所示,其中所示每条连接线的4个标记位置,对应的横坐标表示4种变形镜的单元数,纵坐标表示每种变形镜校正SR达到0.8时需要的迭代次数。“Adam”表示优化的SPGD算法,“SPGD”表示常规的SPGD算法。

      图  7  两种算法在4种变形镜情况下收敛时的迭代次数对比

      Figure 7.  Comparison of iteration number at convergence under four DMs based on two algorithm

      图7中可以看出,随着变形镜单元数的增多,优化前与优化后的算法收敛所需的迭代次数差距逐渐增大。表明了单元数越多,优化后算法的优势越明显。

      图8给出了优化算法在127单元变形镜情况下对4种湍流强度下像差校正的对比情况。

      图  8  基于127单元变形镜的优化SPGD算法在不同湍流强度下的收敛情况

      Figure 8.  Convergence of optimized SPGD algorithm based on 127 elements DM under different D/r0

      与常规SPGD算法趋势相同,随着湍流强度的增大,系统收敛速度逐渐变慢。但算法迭代1000次后,在D/r0=15和20情况下优化算法已经收敛,表明优化后算法收敛速度更快。

      图9给出了使用127单元变形镜校正4种湍流强度像差时,优化前与优化后的算法收敛时所需迭代次数的对比情况。其中横坐标表示湍流强度,纵坐标表示算法收敛时的迭代次数。

      图  9  基于127单元变形镜不同湍流强下两种算法收敛时的迭代次数对比

      Figure 9.  Comparison of iteration number of two algorithms at convergence based on 127 elements DM under different D/r0

      图9中可以看出,随着湍流强度的增大,优化前后算法收敛时所需的迭代次数差距变大。表明了湍流强度越大,优化后算法优势越明显。

    • 为了对比优化前后算法陷入局部极值的情况,统计了基于4种变形镜在同一湍流强度和基于127单元变形镜在不同湍流强度校正像差时,两种算法陷入局部极值的帧数,见表1表2

      表 1  不同变形镜情况下陷入局部极值的帧数

      Table 1.  Number of frames caught in local extremum in different DM

      DM/elementsSPGDAdam
      374830
      617250
      979867
      12713688

      表 2  不同湍流强度下陷入局部极值的帧数

      Table 2.  Number of frames caught in local extremum under different D/r0

      D/r0SPGDAdam
      513688
      10158110
      15200135
      20240154

      通过表1中两种算法的数据对比,优化后37单元变形镜陷入局部极值的概率降低了30%,61单元变形镜收敛陷入局部极值的概率降低了31.2%,97单元变形镜陷入局部极值概率降低了32%,127单元变形镜陷入局部极值的概率降低了35.3%。

      根据表2中的数据对比,优化算法在4种湍流强度情况下陷入局部极值的概率分别降低了30%、32%、33%和36%。

      由此可以看出优化后的算法陷入局部极值的概率有所降低。同时随着变形镜单元数的增加,湍流强度越大这种优势也越来越明显。

    • 在常规SPGD算法中随着控制参数的增多,算法收敛速度会逐渐变慢而且陷入局部极值的概率逐渐增大。在常规SPGD算法基础上,把求得的梯度估计值结合Adam优化器自适应学习率的更新公式,把固定增益变为自适应增益,将控制参量按照更新公式进行更新获得最优控制电压。以4种不同单元的变形镜作为校正器件,不同湍流强度下的像差作为校正对象,建立了无波前探测自适应光学系统模型。基于Adam优化的SPGD控制算法闭环校正结果表明,优化后的算法在每一次迭代中增益系数都自动进行更新,与现有的SPGD算法相比优化后的算法曲线波动较小、更加平滑,收敛速度更快并且陷入局部极值的概率降低。随着变形镜单元数增多,湍流强度的增大,优化后算法的优势更加明显。研究结果为基于Adam优化的SPGD算法的实际应用提供了理论基础。

参考文献 (11)

目录

    /

    返回文章
    返回