线性代数|机器学习-P25线性规划和两人零和博弈

文章目录

  • 0. 概述
  • 1. 线性规划问题
    • 1.1 定义
    • 1.2 举例
  • 2. 线性规划中的对偶问题
  • 3. 最大流 - 最小割问题
  • 4. 两人零和博弈

MIT教授教学视频,讲得比较泛,需要另外学习很多知识补充

0. 概述

  1. 线性规划[LP]问题
    线性规划是问题为线性求最值,约束也是求线性关系的问题,具体参考
    线性规划学习笔记
  2. 最大流-最小割问题
    最大流-最小割问题是一个对偶问题,具体参考最大流最小割学习笔记
  3. 两人游戏-对偶问题
  4. 拉格朗日乘子法
    拉格朗日乘子法的引入是为了解决约束条件下的最优问题,通过强对偶理论和弱对偶理论来转换目标函数,具体参考强对偶,弱对偶理论学习笔记

1. 线性规划问题

1.1 定义

假设我们的原问题如下:

  • 标准形式:
    ( L P ) min ⁡ c T x s t . A x = b , x ≥ 0 x = ( x 1 , x 2 , ⋯ , x n ) T ; x i ≥ 0 c = ( c 1 , c 2 , ⋯ , c n ) T ; x i ≥ 0 \begin{equation}\begin{aligned} &(LP)\; \;\min\; c^Tx\\ &st.\;\;Ax=b,x\ge 0\\ &x=(x_1,x_2,\cdots,x_n)^T;x_i\ge0\\ &c=(c_1,c_2,\cdots,c_n)^T;x_i\ge0\\ \end{aligned}\end{equation} (LP)mincTxst.Ax=b,x0x=(x1,x2,,xn)T;xi0c=(c1,c2,,cn)T;xi0
    其中, c ∈ R n , A ∈ R m × n , b ∈ R m c\in R^n,A\in R^{m\times n},b\in R^m cRn,ARm×n,bRm,通常假设系数矩阵A行满秩,即 r ( A ) = m < n r(A)=m<n r(A)=m<n

1.2 举例

( L P ) min ⁡ { x 1 + 2 x 2 + 5 x 3 } s t . x 1 + x 2 + x 3 = 3 , x i ≥ 0 \begin{equation}\begin{aligned} &(LP)\; \;\min\; \{x_1+2x_2+5x_3\}\\ &st.\;\;x_1+x_2+x_3=3,x_i\ge 0\\ \end{aligned}\end{equation} (LP)min{x1+2x2+5x3}st.x1+x2+x3=3,xi0

  • 根据单纯形法Simplex method,Dantzig
    —理论依据:若LP有最优解,则最优解可在极点取到
    – -基本思想: 找到一个极点 x ˉ \bar{x} xˉ,判断 x ˉ \bar{x} xˉ是否最优;若 x ˉ \bar{x} xˉ不是最优,寻找一个更优(值更小)的极点
  • 我们知道最小值只需要在三个极点上找即可,分别算出三个点的值后,取最小值即可是整个线性规划问题的最小值
    P 1 = ( 3 , 0 , 0 ) → y 1 = 3 + 2 ∗ 0 + 5 ∗ 0 = 3 P 2 = ( 0 , 3 , 0 ) → y 2 = 0 + 2 ∗ 3 + 5 ∗ 0 = 6 P 3 = ( 0 , 0 , 3 ) → y 3 = 0 + 2 ∗ 0 + 5 ∗ 3 = 15 min ⁡ ( 3 , 0 , 0 ) { x 1 + 2 x 2 + 5 x 3 } = 3 \begin{equation}\begin{aligned} &P_1=(3,0,0)\to y_1=3+2*0+5*0=3\\ &P_2=(0,3,0)\to y_2=0+2*3+5*0=6\\ &P_3=(0,0,3)\to y_3=0+2*0+5*3=15\\ & \min\limits_{(3,0,0)}\{x_1+2x_2+5x_3\}=3 \end{aligned}\end{equation} P1=(3,0,0)y1=3+20+50=3P2=(0,3,0)y2=0+23+50=6P3=(0,0,3)y3=0+20+53=15(3,0,0)min{x1+2x2+5x3}=3

2. 线性规划中的对偶问题

  • 给出如下线性规划问题,求其对偶问题:
    min ⁡ c T x s t ; A x = b , x ≥ 0 , 其中, c ∈ R n , A ∈ R m × n , b ∈ R m \begin{equation}\begin{aligned} &\min \;c^Tx\\ &st; Ax=b,x\ge0,其中,c\in R^n,A\in R^{m\times n},b\in R^m \end{aligned}\end{equation} mincTxst;Ax=b,x0,其中,cRn,ARm×n,bRm
  • 根据约束来拉格朗日函数:
    L ( x , μ ) = c T x + μ T ( b − A x ) \begin{equation} L(x,\mu)=c^Tx+\mu^T(b-Ax) \end{equation} L(x,μ)=cTx+μT(bAx)
  • 找出拉格朗日函数的对偶问题,先选定一个x后,求最小,再求关于 μ \mu μ的最大值:
    - max ⁡ μ min ⁡ x ≥ 0 { c T x + μ T ( b − A x ) } \begin{equation} \max\limits_{\mu}\min\limits_{x\ge0}\{c^Tx+\mu^T(b-Ax)\} \end{equation} μmaxx0min{cTx+μT(bAx)}
  • 先求内部最小值:
  • 展开公式可得:
    - min ⁡ x ≥ 0 { c T x + μ T ( b − A x ) } = min ⁡ x ≥ 0 { ( c − A T μ ) T x + b T μ } \begin{equation} \min\limits_{x\ge0}\{c^Tx+\mu^T(b-Ax)\}=\min\limits_{x\ge0}\{(c-A^T\mu )^Tx+ b^T\mu\} \end{equation} x0min{cTx+μT(bAx)}=x0min{(cATμ)Tx+bTμ}
  • 我们知道, x ≥ 0 x\ge0 x0,但凡 { c − A T μ } \{c-A^T\mu\} {cATμ}中有一个负数,那么在求整体最小值的时候,就容易出现 − ∞ -\infty ,所以可得:
    min ⁡ x ≥ 0 { ( c − A T μ ) T x + b T μ } = { b T μ , c − A T μ ≥ 0 − ∞ , o t h e r v i s e \begin{equation}\min\limits_{x\ge0}\{(c-A^T\mu )^Tx+ b^T\mu\}=\left\{\begin{aligned} %\nonumber \;\;\;b^T\mu,\; c-A^T\mu\ge0\\ -\infty,othervise\\ \end{aligned}\right.\end{equation} x0min{(cATμ)Tx+bTμ}={bTμ,cATμ0,othervise
  • 再求最大值,其中负无穷就不用考虑了:
    max ⁡ b T μ s t : A T μ ≤ c \begin{equation}\begin{aligned} &\max \;b^T\mu\\ &st:A^T\mu\le c \end{aligned}\end{equation} maxbTμst:ATμc
  • 为了方便观看,将 μ \mu μ转换成y,整理可得:
  • 线性规划的对偶问题如下:
    max ⁡ b T y s t : A T y ≤ c \begin{equation}\begin{aligned} &\max \;b^Ty\\ &st:A^Ty\le c \end{aligned}\end{equation} maxbTyst:ATyc
  • 弱对偶理论,原问题的最优值大于等于对偶问题的最优值: v ( D ) ≤ v ( P ) v(D)\le v(P) v(D)v(P)
    b T y ≤ c T x , ∀ x , y ∈ S \begin{equation} b^Ty\le c^Tx,\forall x,y \in S \end{equation} bTycTx,x,yS
  • 强对偶理论
    1) 集合X为非空凸集, f ( x ) f(x) f(x) g i ( x ) , i = 1 , 2 , ⋯ , m g_i(x),i=1,2,\cdots,m gi(x),i=1,2,,m是凸函数, h i ( x ) , i = 1 , 2 , ⋯ , l h_i(x),i=1,2,\cdots,l hi(x),i=1,2,,l均为线性函数。
    2) 假设存在 x ^ ∈ X \hat{x}\in X x^X使得 g i ( x ^ ) < 0 , i = 1 , ⋯ , m , h i ( x ^ ) = 0 , i = 1 , ⋯ , l g_i(\hat{x})<0,i=1,\cdots,m,h_i(\hat{x})=0,i=1,\cdots,l gi(x^)<0,i=1,,m,hi(x^)=0,i=1,,l,且
    0 ∈ i n t h ( X ) 0\in \mathrm{int}\; h(X) 0inth(X),其中 h ( X ) = { [ h 1 ( x ) , h 2 ( x ) , ⋯ , h l ( x ) ] T ∣ x ∈ X } h(X)=\{[h_1(x),h_2(x),\cdots,h_l(x)]^T\big|x\in X\} h(X)={[h1(x),h2(x),,hl(x)]T xX},则强对偶成立,即:
    min ⁡ { f ( x ) ∣ x ∈ S } = max ⁡ { d ( λ , μ ) ∣ λ ≥ 0 , μ } \begin{equation} \min \{f(x)|x\in S\}=\max \{d(\lambda,\mu)\big|\lambda \ge 0,\mu\} \end{equation} min{f(x)xS}=max{d(λ,μ) λ0,μ}

3. 最大流 - 最小割问题

具体参考最大流最小割学习笔记
水流从source开始流向sink,每根线代表管道,上面的数字代表水管的流量能力,我们希望知道最终流到sink上的最大流速是多少?最小割代表的是用刀割断水管,怎样把source和sink 分割成两部分的最小断管数
在这里插入图片描述
最大流和最小割是对偶问问题:
min ⁡ { c u t } = max ⁡ { f l o w } = 14 \begin{equation} \min \{\mathrm{cut}\}=\max \{\mathrm{flow}\}=14 \end{equation} min{cut}=max{flow}=14

4. 两人零和博弈

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/383203.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Spring Security认证授权介绍

一、目标 真正控制系统权限的&#xff0c;需要引入专门的安全框架才行&#xff0c;所以&#xff0c;我们今天重点来学习Spring家族中的一员Spring Security安全框架。最终呢&#xff0c;我们会使用Spring Security框架来控制养老项目的后台管理系统 能够熟悉常见的权限控制的方…

记录|C# winform布局学习

目录 前言一、自适应布局Step1. 添加AutoAdaptWindowsSize类Step2. Form中引用Step3. 创建SizeChanged事件函数Step4. 在Fram.Disiger中添加 更新时间 前言 参考视频&#xff1a; C#5分钟winform快速自适应布局 参考文章&#xff1a; 其他参考&#xff1a; 写这篇文章&#xff…

【C#】Visual Studio2022打包依赖第三方库的winForm程序为exe

0.简介 IDE&#xff1a;VS2022 平台&#xff1a;C# .NetFramework4.7.2 WinForm界面 有GDAL、EEplus第三方库的依赖&#xff0c;所以在其他未安装环境的电脑中功能无法使用。 1. 安装 1.1 运行文件输出 在VS扩展中选择管理扩展&#xff0c;安装&#xff1a;Microsoft Visua…

docker相关内容学习

一、docker的四部分 二、镜像相关命令 三、容器相关命令

【BUG】已解决:NameError: name ‘python‘ is not defined

NameError: name ‘python‘ is not defined 目录 NameError: name ‘python‘ is not defined 【常见模块错误】 【解决方案】 欢迎来到英杰社区https://bbs.csdn.net/topics/617804998 欢迎来到我的主页&#xff0c;我是博主英杰&#xff0c;211科班出身&#xff0c;就职于…

SVN文件夹没有图标(绿钩子和红感叹号)

3分钟教会你解决SVN文件夹没有绿勾和红色感叹号的问题_svn文件被改动过不显示红色-CSDN博客https://blog.csdn.net/weixin_43382915/article/details/124251563 关于SVN状态图标不显示的解决办法(史上最全) - 简书 (jianshu.com)https://www.jianshu.com/p/92e8e1f345c0

接入百度文心一言API教程

然后&#xff0c;编辑文章。点击AI识别摘要&#xff0c;然后保存即可 COREAIPOWER设置 暂时只支持经典编辑器.古腾堡编辑器等几个版本后支持.在比期间,你可以自己写点摘要 摘要内容 AL识别摘要 清空 若有收获&#xff0c;就点个赞吧 接入文心一言 现在百度文心一言&…

网站基本布局CSS

代码 <!DOCTYPE html> <html> <head><meta charset"utf-8"><meta name"viewport" content"widthdevice-width, initial-scale1"><title></title><style type"text/css">body {margi…

性能调优 17. GraalVM云原生时代的Java虚拟机

1. GraalVM诞生的背景 1.1. Java在微服务/云原生时代的困境及解决方案 ‌‌‌  事实 ‌‌‌  Java总体上是面向大规模、长时间的服务端应用而设计的。 ‌‌‌  即时编译器(JIT)、性能优化、垃圾回收等有代表性的特征需要一段时间来达到最佳性能。 ‌‌‌  矛盾 ‌…

4、Python+MySQL+Flask的文件管理系统【附源码,运行简单】

4、PythonMySQLFlask的文件管理系统【附源码&#xff0c;运行简单】 总览 1、《文件管理系统》1.1 方案设计说明书设计目标工具列表 2、详细设计2.1 登录2.2 注册2.3 个人中心界面2.4 文件上传界面2.5 其他功能贴图 3、下载 总览 自己做的项目&#xff0c;禁止转载&#xff0c…

大厂面试官问我:两个1亿行的文件怎么求交集?【后端八股文十五:场景题合集】

本文为【场景题合集】初版&#xff0c;后续还会进行优化更新&#xff0c;欢迎大家关注交流~ hello hello~ &#xff0c;这里是绝命Coding——老白~&#x1f496;&#x1f496; &#xff0c;欢迎大家点赞&#x1f973;&#x1f973;关注&#x1f4a5;&#x1f4a5;收藏&#x1f…

Unity UGUI 之 Input Field

本文仅作学习笔记与交流&#xff0c;不作任何商业用途 本文包括但不限于unity官方手册&#xff0c;唐老狮&#xff0c;麦扣教程知识&#xff0c;引用会标记&#xff0c;如有不足还请斧正 1.Input Field是什么&#xff1f; 给玩家提供输入的输入框 2.重要参数 中英文对照着看…

设计模式|观察者模式

观察者模式是一种行为设计模式&#xff0c;它定义了一种一对多的依赖关系&#xff0c;让多个观察者对象同时监听某一个主题对象。当主题对象发生变化时&#xff0c;它的所有观察者都会收到通知并更新。观察者模式常用于实现事件处理系统、发布-订阅模式等。在项目中&#xff0c…

爬虫学习4:爬取王者荣耀技能信息

爬虫&#xff1a;爬取王者荣耀技能信息&#xff08;代码和代码流程&#xff09; 代码 # 王者荣耀英雄信息获取 import time from selenium import webdriver from selenium.webdriver.common.by import By if __name__ __main__:fp open("./honorKing.txt", "…

nginx隐藏server及版本号

1、背景 为了提高nginx服务器的安全性&#xff0c;降低被攻击的风险&#xff0c;需要隐藏nginx的server和版本号。 2、隐藏nginx版本号 在 http {—}里加上 server_tokens off; 如&#xff1a; http {……省略sendfile on;tcp_nopush on;keepalive_timeout 60;tcp_nodelay o…

Microsoft 365 Office BusinessPro LTSC 2024 for Mac( 微软Office办公套件)

Microsoft 365 Office BusinessPro LTSC 2024是一款专为商业用户设计的办公软件套件&#xff0c;它集成了Word、Excel、PowerPoint等核心应用&#xff0c;并特别包含了Microsoft Teams这一强大的协作工具。Teams将聊天、会议、文件共享、任务管理等功能整合到一个平台上&#x…

【黑科技】:Laravel 项目性能提升 20 倍

令人激动的黑科技&#xff1a;Laravel 项目性能提升 20 倍 这个项目能够在无需修改任何代码且无需第三方扩展的前提下&#xff0c;将你的 Laravel 项目性能提高 20 倍。它仅依赖于 PHP 原生的 pcntl、posix、fiber 和 sockets。 项目灵感 起因是看到官方发布的 PHP 8.1 更新…

软件开发者消除edge浏览器下载时“此应用不安全”的拦截方法

当Microsoft Edge浏览器显示“此应用不安全”或者“已阻止此不安全的下载”这类警告时&#xff0c;通常是因为Windows Defender SmartScreen或者其他安全功能认为下载的文件可能存在安全风险。对于软件开发者来说&#xff0c;大概率是由于软件没有进行数字签名&#xff0c;导致…

河南萌新联赛2024第(二)场:南阳理工学院

文章目录 原题链接A.国际旅行Ⅰ题意&#xff1a;思路&#xff1a;代码&#xff1a; F.水灵灵的学弟题意&#xff1a;思路&#xff1a;代码 I.重生之zbk要拿回属于他的一切题意&#xff1a;思路&#xff1a;代码&#xff1a; J.这是签到题意&#xff1a;思路&#xff1a;代码&am…

畅游时空|虚拟世界初体验,元宇宙游戏如何开发?

在元宇宙中&#xff0c;用户可以通过虚拟身份进行互动、社交、工作和娱乐&#xff0c;体验与现实世界平行的生活和活动。元宇宙不仅仅是一个虚拟空间&#xff0c;更是一个融合了虚拟和现实的生态系统&#xff0c;具有巨大的发展潜力和应用前景。 在不断发展的数字环境中&#x…