首页 > 其他分享 >经典的二次规划问题的标准形式

经典的二次规划问题的标准形式

时间:2024-10-23 21:20:34浏览次数:3  
标签:二次 优化 Gx 经典 Ax 约束 规划 向量

在这里插入图片描述

公式 9-33 描述的是经典的二次规划问题的标准形式,它是支持向量机(SVM)等机器学习算法以及许多凸优化问题中的核心问题。该公式描述了一个最小化目标函数的问题,并且附带有不等式约束和等式约束。具体形式如下:
min ⁡ x 1 2 x T P x + q T x \min_{x} \quad \frac{1}{2} x^T P x + q^T x xmin​21​xTPx+qTx

s.t. G x ≤ h , A x = b \text{s.t.} \quad Gx \leq h, \quad Ax = b s.t.Gx≤h,Ax=b

1. 目标函数

目标函数是二次规划的核心部分,形式为:
1 2 x T P x + q T x \frac{1}{2} x^T P x + q^T x 21​xTPx+qTx

  • 1 2 x T P x \frac{1}{2} x^T P x 21​xTPx:这是目标函数中的二次项。其中:

    • x x x 是待优化的变量向量。
    • P P P 是一个对称的正半定矩阵,描述了二次项的系数。这一部分常用于描述变量之间的相互关系(例如支持向量机中的分类间隔最大化)。
    • x T x^T xT 是 x x x 的转置,形成了二次型 x T P x x^T P x xTPx,这是一个标量,表示变量 x x x 的平方和交叉项。
  • q T x q^T x qTx:这是目标函数中的线性项。其中:

    • q q q 是线性项的系数向量,它定义了目标函数中每个变量的线性权重。
    • q T q^T qT 表示 q q q 的转置,形成了线性型 q T x q^T x qTx,它也是一个标量。

这部分目标函数综合了二次项和线性项,通过对 x x x 的调整,我们希望找到使该函数最小化的最优解。

2. 不等式约束 G x ≤ h Gx \leq h Gx≤h

不等式约束的形式为:
G x ≤ h Gx \leq h Gx≤h

  • G G G:是一个矩阵,表示不等式约束的系数矩阵。
  • x x x:是优化变量向量。
  • h h h:是一个向量,表示不等式约束的上限。

这个不等式约束的意思是,在求解 x x x 时,所有的线性组合 G x Gx Gx 必须小于或等于向量 h h h 中的对应值。

例如,在支持向量机问题中,可能有类似于 x i ≥ 0 x_i \geq 0 xi​≥0 之类的约束,表示支持向量机中的拉格朗日乘子不能为负。这些约束会影响优化的可行解。

3. 等式约束 A x = b Ax = b Ax=b

等式约束的形式为:
A x = b Ax = b Ax=b

  • A A A:是一个矩阵,表示等式约束的系数矩阵。
  • x x x:是优化变量向量。
  • b b b:是等式约束的常数向量。

这个等式约束的意思是,某些线性组合 A x Ax Ax 必须恰好等于向量 b b b。这种约束常用于控制变量之间的精确关系。

在许多实际优化问题中,等式约束是用于保持某些变量的平衡或守恒。

4. 优化问题的解释

总结来说,公式 9-33 描述了一个典型的二次规划问题:

  • 目标:最小化一个二次函数 1 2 x T P x + q T x \frac{1}{2} x^T P x + q^T x 21​xTPx+qTx,其中包含二次项和线性项。
  • 不等式约束:通过 G x ≤ h Gx \leq h Gx≤h 形式的约束限制优化解 x x x 在某个区域内。
  • 等式约束:通过 A x = b Ax = b Ax=b 形式的约束确保优化解满足某些精确的条件。

二次规划问题广泛应用于机器学习、金融优化、工程设计等领域。例如,在支持向量机(SVM)中,二次规划被用来最大化分类间隔,同时满足分类约束。

5. 公式 9-33 的各个组成部分

  1. 变量 x x x

    • x x x 是我们要求解的优化变量,可能是多维向量。
  2. 二次项 1 2 x T P x \frac{1}{2} x^T P x 21​xTPx

    • 二次项表示优化问题中的变量之间的平方关系或交互关系。
    • 矩阵 P P P 规定了这些关系。
  3. 线性项 q T x q^T x qTx

    • 线性项表示优化问题中的变量与系数 q q q 的线性组合,影响了优化变量的权重。
  4. 不等式约束 G x ≤ h Gx \leq h Gx≤h

    • 不等式约束确保优化解 x x x 满足一定的范围或边界。
  5. 等式约束 A x = b Ax = b Ax=b

    • 等式约束确保优化解满足特定的线性等式。

6. 示例应用:支持向量机(SVM)中的二次规划

在支持向量机(SVM)问题中,二次规划问题用于最大化分类间隔,同时满足分类约束。SVM 中的优化问题形式可以表达为公式 9-33 的形式:

  • P P P:定义了支持向量之间的交互关系。
  • q q q:表示偏置项和正则化项的影响。
  • G G G 和 h h h:用于约束拉格朗日乘子的范围(例如 α i ≥ 0 \alpha_i \geq 0 αi​≥0)。
  • A A A 和 b b b:用于确保拉格朗日乘子的线性关系(如 ∑ i α i y i = 0 \sum_i \alpha_i y_i = 0 ∑i​αi​yi​=0)。

7. 总结

公式 9-33 描述了标准的二次规划问题,用于解决带有二次目标函数和线性约束的最优化问题。它在支持向量机、金融投资组合优化、工程设计等多个领域中有广泛应用。

标签:二次,优化,Gx,经典,Ax,约束,规划,向量
From: https://blog.csdn.net/u013172930/article/details/143189747

相关文章

  • 【旧文重发】MATLAB 通过函数封装一劳永逸地解决线性规划与运输问题的linprog的标准化
    这篇随笔原本是我上实验课时候的笔记,2023年7月曾经在CSDN平台上发布过。今天恰好有朋友跟我问起MATLAB自带的求解器输入很不直观的问题,我打开这个文章发给他的时候发现自己一年前写的LaTeX公式依托答辩,所以重打了一遍。再加上由于CSDN平台的持续摆烂,终于是用不下去......
  • C语言经典20例(输入数组元素,求出最大值和最小值,并输出)
    在c语言中,要实现要实现“输入数组元素,并求出最大值和最小值,并输出”主要步骤主要有以下几步:1.必要的头文件。2.定义数组大小。3.从用户那里接受数组元素的输入4.使用循环遍历数组。找出最大值和最小值5.输出最大值和最小值代码如下:#include<stdio.h>intmain(){......
  • C语言经典20例(二进制数转换为十进制数)
     #include<stdio.h>#include<string.h>//函数原型声明intbinaryToDecimal(constchar*binary);intmain(){charbinary[100];//声明一个字符数组,用于存储用户输入的二进制数,假设最大长度为99intdecimal;//用于存储转换后的十进制数//提示......
  • 【数据结构与算法】之链表经典算法大集合
    本文主要内容是几个关于链表的初级经典算法的分享,都采用Java语言实现,话不多说,立马开始!注意:以下代码有关链表的算法实现均基于以下链表节点类://链表节点类publicclassListNode{intval;ListNodenext;ListNode(){}ListNode(intval){this.val=v......
  • c语言基础程序——经典100道实例。
    c语言基础程序——经典100道实例001,组无重复数字的数002,企业发放的奖金根据利润提成003,完全平方数004,判断当天是这一年的第几天005,三个数由小到大输出006,输出字母C图案007,特殊图案008,9*9乘法表009,国际象棋棋盘010,打印笑脸011,兔子生崽012,101到200的素数013,水仙花数014,分......
  • P9750 [CSP-J 2023] 一元二次方程 题解
    大模拟此题大模拟即可,只需注意几点:分母$>0$.要给根式化简.分数要约分.求较大根,那就$b^2$加$\bigtriangleup$即可.分母>0因为求根公式中,分母中只有$a$一个未知数,所以我们只需保证$a>0$即可.所以,当$a<0$时,我们把$a,b,c$全部取相反值.但这也是......
  • 机器人开源调度系统OpenTcs6二次开发-模型表设计
    基于OpenTCS工厂模型的数据,我们可以设计一个关系型数据库表结构来存储模型数据,包括点、路径、位置、车辆等元素。以下是一个基于OpenTCS模型的数据库表设计建议,以便高效地管理这些数据。1.表结构概览OpenTCS的工厂模型包括以下主要部分:Points(点)Paths(路径)......
  • 基于模仿学习的自动泊车运动规划算法 ResNet+BERT分类模型
    本文使用ResNet+BERT分类模型来实现APA自动泊车算法首先定义模型的输出动作类别类别名说明S0停车S+直行前进单位距离S-直行后退单位距离L+左转前进单位角度L-左转后退单位角度R+右转前进单位角度R-右转后退单位角度设单位距离为0.05米,单位......
  • Unity Shader深度图的应用,手把手教你写出可以正确计算并且渲染出二次元角色边缘光的着
    梦开始的地方相信大家看番的时候,都注意到了,很多时候,在角色周围有一圈光晕旧版《魔术快斗》剧照《新蔷薇少女》剧照 我们将这种光晕,称之为边缘光边缘光是描边的一种,动画师之所以加入边缘光,是为了凸现角色轮廓,使得角色区别于背景不少游戏也有着这种边缘光游戏《鸣潮》......
  • 【LeetCode】动态规划—790. 多米诺和托米诺平铺(附完整Python/C++代码)
    动态规划—790.多米诺和托米诺平铺题目描述前言基本思路1.定义2.理解问题和递推关系3.解决方法4.进一步优化5.小总结代码实现Python代码Python代码解释总结C++代码C++代码解释总结总结题目描述前言本文将详细讨论LeetCode上的"多米诺和三米诺平铺"问题。......