热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

MirrotProxmethodbyNemirovski的一个著名算法

本文介绍了一个著名算法MirrotProxmethodbyNemirovski,该算法用于寻找鞍点min⁡xmax⁡yf(x,y)的方法。算法的输入包括(α,ϵ)-relaxedproximaloracleO(z)、迭代次数KKK等参数,输出是满足E[Gap(zˉ)]≤αΘK+ϵ的点zˉK。初始化时,使用arg⁡min⁡r(z)进行初始化。在每次迭代中,使用Proxzk−1α(g(zk−1/2))进行更新。该算法在优化问题中有广泛应用。

寻找鞍点 min⁡xmax⁡yf(x,y)\min_{x}\max_{y} f(x,y)minxmaxyf(x,y)的一个著名算法

输入:
(α,ϵ)(\alpha,\epsilon)(α,ϵ)-relaxed proximal oracle O(z)\mathcal{O}(z)O(z) for gradient mapping ggg, distance generating rrr.

参数:
迭代次数KKK

输出:
zˉK\bar{z}_{K}zˉK,满足E[Gap(zˉ)]≤αΘK+ϵ\mathbb{E}[Gap(\bar{z})]\leq \frac{\alpha\Theta}{K}+\epsilonE[Gap(zˉ)]KαΘ+ϵ.

初始化:
z0=arg⁡min⁡r(z)z_{0}=\arg\min r(z)z0=argminr(z)

for k=1,2,...,Kk = 1,2,..., Kk=1,2,...,K do:
zk−1/2=O(zk−1)\quad z_{k-1/2}=\mathcal{O}(z_{k-1})zk1/2=O(zk1)
zk=Proxzk−1α(g(zk−1/2))\quad z_{k}=Prox^{\alpha}_{z_{k-1}}(g(z_{k-1/2}))zk=Proxzk1α(g(zk1/2))

return zˉK=1K∑k=1Kzk−1/2\bar{z}_{K}=\frac{1}{K}\sum_{k=1}^{K}z_{k-1/2}zˉK=K1k=1Kzk1/2


推荐阅读
  • 图解redis的持久化存储机制RDB和AOF的原理和优缺点
    本文通过图解的方式介绍了redis的持久化存储机制RDB和AOF的原理和优缺点。RDB是将redis内存中的数据保存为快照文件,恢复速度较快但不支持拉链式快照。AOF是将操作日志保存到磁盘,实时存储数据但恢复速度较慢。文章详细分析了两种机制的优缺点,帮助读者更好地理解redis的持久化存储策略。 ... [详细]
  • Oracle分析函数first_value()和last_value()的用法及原理
    本文介绍了Oracle分析函数first_value()和last_value()的用法和原理,以及在查询销售记录日期和部门中的应用。通过示例和解释,详细说明了first_value()和last_value()的功能和不同之处。同时,对于last_value()的结果出现不一样的情况进行了解释,并提供了理解last_value()默认统计范围的方法。该文对于使用Oracle分析函数的开发人员和数据库管理员具有参考价值。 ... [详细]
  • 2020年第十一届蓝桥杯决赛JAVA B G题“皮亚诺曲线距离“的个人题解目录
    本文是2020年第十一届蓝桥杯决赛JAVA B G题“皮亚诺曲线距离“的个人题解目录。文章介绍了皮亚诺曲线的概念和特点,并提供了计算皮亚诺曲线上两点距离的方法。通过给定的两个点的坐标,可以计算出它们之间沿着皮亚诺曲线走的最短距离。本文还提供了个人题解的目录,供读者参考。 ... [详细]
  • [大整数乘法] java代码实现
    本文介绍了使用java代码实现大整数乘法的过程,同时也涉及到大整数加法和大整数减法的计算方法。通过分治算法来提高计算效率,并对算法的时间复杂度进行了研究。详细代码实现请参考文章链接。 ... [详细]
  • 3.223.28周学习总结中的贪心作业收获及困惑
    本文是对3.223.28周学习总结中的贪心作业进行总结,作者在解题过程中参考了他人的代码,但前提是要先理解题目并有解题思路。作者分享了自己在贪心作业中的收获,同时提到了一道让他困惑的题目,即input details部分引发的疑惑。 ... [详细]
  • 第四章高阶函数(参数传递、高阶函数、lambda表达式)(python进阶)的讲解和应用
    本文主要讲解了第四章高阶函数(参数传递、高阶函数、lambda表达式)的相关知识,包括函数参数传递机制和赋值机制、引用传递的概念和应用、默认参数的定义和使用等内容。同时介绍了高阶函数和lambda表达式的概念,并给出了一些实例代码进行演示。对于想要进一步提升python编程能力的读者来说,本文将是一个不错的学习资料。 ... [详细]
  • Oracle优化新常态的五大禁止及其性能隐患
    本文介绍了Oracle优化新常态中的五大禁止措施,包括禁止外键、禁止视图、禁止触发器、禁止存储过程和禁止JOB,并分析了这些禁止措施可能带来的性能隐患。文章还讨论了这些禁止措施在C/S架构和B/S架构中的不同应用情况,并提出了解决方案。 ... [详细]
  • 本文讨论了编写可保护的代码的重要性,包括提高代码的可读性、可调试性和直观性。同时介绍了优化代码的方法,如代码格式化、解释函数和提炼函数等。还提到了一些常见的坏代码味道,如不规范的命名、重复代码、过长的函数和参数列表等。最后,介绍了如何处理数据泥团和进行函数重构,以提高代码质量和可维护性。 ... [详细]
  • Java 11相对于Java 8,OptaPlanner性能提升有多大?
    本文通过基准测试比较了Java 11和Java 8对OptaPlanner的性能提升。测试结果表明,在相同的硬件环境下,Java 11相对于Java 8在垃圾回收方面表现更好,从而提升了OptaPlanner的性能。 ... [详细]
  • 生成式对抗网络模型综述摘要生成式对抗网络模型(GAN)是基于深度学习的一种强大的生成模型,可以应用于计算机视觉、自然语言处理、半监督学习等重要领域。生成式对抗网络 ... [详细]
  • 本文讨论了如何优化解决hdu 1003 java题目的动态规划方法,通过分析加法规则和最大和的性质,提出了一种优化的思路。具体方法是,当从1加到n为负时,即sum(1,n)sum(n,s),可以继续加法计算。同时,还考虑了两种特殊情况:都是负数的情况和有0的情况。最后,通过使用Scanner类来获取输入数据。 ... [详细]
  • 本文主要解析了Open judge C16H问题中涉及到的Magical Balls的快速幂和逆元算法,并给出了问题的解析和解决方法。详细介绍了问题的背景和规则,并给出了相应的算法解析和实现步骤。通过本文的解析,读者可以更好地理解和解决Open judge C16H问题中的Magical Balls部分。 ... [详细]
  • soatest新建db工具,执行sql语句的步骤和注意事项
    本文介绍了在soatest中新建db工具并执行sql语句的步骤和注意事项,包括设置数据库连接参数、使用配置文件的方法编写sql查询语句、增加oracle驱动连接jar包、运行测试用例以及查看查询结果。详细说明了每个步骤的操作和相关注意事项。 ... [详细]
  • Linux下安装依赖包版本高解决方法
    本文介绍了在Linux系统下,当已安装的依赖包版本高于需要安装的依赖包版本时,解决方法包括欺骗安装程序和修改相关配置文件等操作。针对不同情况,提供了不同的解决方案。 ... [详细]
  • 如何利用 Myflash 解析 binlog ?
    本文主要介绍了对Myflash的测试,从准备测试环境到利用Myflash解析binl ... [详细]
author-avatar
叶斯琪147-
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有