【最优化方法】随笔 - 基本概念简单整理

文章目录

  • 前言
  • 1.背景知识
      • 两个概念:
  • 2.最优化问题
    • 2.1应用
    • 2.2 最优化问题的数学形式
      • 极小化目标函数
      • 可行区域
      • 可行解
    • 2.3 举例说明
    • 2.4 最优化问题不同的类型
    • 2.5 一些概念
  • 3.凸集和凸函数
    • 3.1 范数
    • 3.2 矩阵范数(扩展)
    • 3.3 凸集与凸函数
      • 凸集
      • 凸函数
  • 写在最后
  • END

前言

随笔 - 基本概念

1.背景知识

最优化是一种数学方法,在一定约束条件下,找到某个目标函数的最大值或最小值。简单来说,最优化就是“找到最佳解决方案”的过程。(从所有可能的方案中选择最合理的一种方案)

寻找最优方案的方法即最优化方法

两个概念:

  • 目标函数:需要优化的函数,可以是求最大值或最小值。
  • 约束条件:限制目标函数的一系列条件或规则。

2.最优化问题

2.1应用

商业决策、工程设计、资源分配、算法设计等

2.2 最优化问题的数学形式

在这里插入图片描述
极小化目标函数、可行区域和可行解是优化问题中的三个核心概念。

极小化目标函数

极小化目标函数是指在优化问题中,希望找到的解使得目标函数的值尽可能小。

可行区域

可行区域是指所有可能的解中,满足所有约束条件的解的集合。

可行解

可行解是指在可行区域内的任何一个解。这些解满足所有的约束条件,因此可以被认为是问题的有效候选解。

求解此类问题称为programming问题

2.3 举例说明

在这里插入图片描述
数学模型为
在这里插入图片描述

2.4 最优化问题不同的类型

  1. 离散最优化:决策变量取值是离散的,也就是说,它们只能取有限个或可数无限个值。这类问题通常涉及整数或组合优化,例如旅行商问题(TSP)和0-1背包问题。

  2. 连续最优化:决策变量取值是连续的,可以是任意实数值。这意味着决策变量可以在某个区间内取任意值,例如在生产计划中确定产品的最优产量。

  3. 光滑最优化:所有函数(包括目标函数和约束函数)都是连续可微的。这意味着这些函数在定义域内具有连续的导数,可以使用微分法来寻找最优解。

  4. 非光滑最优化:至少有一个函数(目标函数或约束函数)是非光滑的,也就是说,它可能在某点不可导或不连续。这类问题可能需要特殊的优化算法来解决,因为传统的基于梯度的方法可能不适用。

  5. 线性规划:目标函数和所有约束函数都是变量的线性函数,即它们可以表示为变量的一次幂的线性组合。线性规划问题通常可以通过单纯形算法等方法解决。(我们开始学用)

  6. 二次规划:目标函数是变量的二次函数,即可以表示为变量的平方项和变量乘积的线性组合,而约束函数是线性函数。二次规划问题比线性规划问题复杂,但仍然可以通过一些特定的算法(如内点法或二次规划算法)来解决。

2.5 一些概念

类别定义或描述
可行点满足所有约束条件的点
可行集或可行域包含所有可行点的集合
有效约束或起作用约束指在特定条件下,能够限制或影响变量或系统行为的约束
无效约束或不起作用约束指在特定条件下,对变量或系统行为没有实际影响的约束
无约束问题可行域是整个空间的问题,即没有约束限制问题

3.凸集和凸函数

3.1 范数

概述:范数是一个在向量空间中定义的函数,它赋予每个向量一个非负长度或大小。范数通常用来衡量向量的大小或距离,它具有以下性质:

  1. 非负性:对于任意向量 𝑥,范数 ‖𝑥‖ 总是非负的,即 ‖𝑥‖ ≥ 0。当且仅当向量 𝑥 是零向量时,范数等于0。

  2. 齐次性(绝对齐次性):对于任意向量 𝑥 和任意非负实数 α,有 ‖α𝑥‖ = |α|‖𝑥‖

  3. 三角不等式:对于任意向量 𝑥𝑦,有 ‖𝑥 + 𝑦‖ ≤ ‖𝑥‖ + ‖𝑦‖

最常见的几种范数包括:

  • 欧几里得范数(L2范数):这是最常用的范数,定义为向量的各分量平方和的平方根,即 ‖𝑥‖₂ = √(∑︀_{𝑖=1}^{𝑛} |𝑥𝑖|²)

  • 曼哈顿范数(L1范数):也称为1-范数,是向量的各分量绝对值之和,即 ‖𝑥‖₁ = ∑︀_{𝑖=1}^{𝑛} |𝑥𝑖|

  • 无穷范数(L∞范数):是向量中所有分量绝对值的最大值,即 ‖𝑥‖₊ = max(|𝑥₁|, |𝑥₂|, ..., |𝑥𝑛|)

  • p-范数:是L1范数和L2范数的一般化,定义为 ‖𝑥‖ₚ = (∑︀_{𝑖=1}^{𝑛} |𝑥𝑖|^𝑝)^(1/𝑝),其中 𝑝 ≥ 1𝑝 ≠ ∞

在函数空间中,范数可以用来衡量函数的“大小”或“能量”。

3.2 矩阵范数(扩展)

3.3 凸集与凸函数

凸集

定义:一个集合 C 在向量空间中称为凸集,如果对于集合中的任意两个点 xy,以及任意的 λ 满足 0 ≤ λ ≤ 1,点 λx + (1 - λ)y 也在集合 C 中。

几何解释:直观上,如果一个集合中的任意两点之间的线段都完全包含在这个集合内,那么这个集合就是凸的。

性质

  • 任意两个点的凸组合(即线性组合,系数之和为1)也在凸集内。
  • 凸集是封闭的,即如果一个序列的点都在凸集内,并且收敛到某一点,那么这个极限点也在凸集内。

凸函数

定义:一个函数 f: C → ℝ 定义在凸集 C 上,如果对于任意的 x, y ∈ C 和任意的 λ 满足 0 ≤ λ ≤ 1,都有:

f(λx + (1 - λ)y) ≤ λf(x) + (1 - λ)f(y)

几何解释:如果一个函数的图像位于任意两点连线的下方,那么这个函数是凸的。

性质

  • 凸函数的局部最小值也是全局最小值。
  • 凸函数的一阶导数(如果存在)是单调递增的,二阶导数(如果存在)是非负的。

在这里插入图片描述
在这里插入图片描述
凸集的证明见:【最优化方法】期末考试题型讲解部分 - 凸集的证明


写在最后

欢迎技术类的问题到这里提出,我会逐个解答


END

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

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

相关文章

实时宽表建设

实时宽表建设是数据仓库(Data Warehouse, 简称数仓)中的一种重要建模技术,旨在提高数据查询和分析的效率。以下是对实时宽表建设的详细解释: 一、定义 实时宽表,顾名思义,是指具有较多字段(列…

无人机像素经纬度识别

🏆本文收录于《CSDN问答解惑-专业版》专栏,主要记录项目实战过程中的Bug之前因后果及提供真实有效的解决方案,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&收…

组件库 组件工程化管理探索

文章目录 组件库单组件版本控制打包组件在用户项目中注册组件项目可以直接在模版中使用引入的打包后的组件原因 每个组件独立的 package.json 文件的单组件包管理使用 lerna 或 yarn workspaces 进行统一管理添加组件文档、测试通过 CI/CD 流水线自动化这个流程 国际化换肤组件…

旅美钢琴学者何超东北巡演启幕,精湛演绎肖邦全套作品

7月26日、28日,旅美钢琴学者何超在长春和哈尔滨两地成功开启了他的暑期钢琴独奏音乐会东北巡演。在这两场演出中,何超为观众带来了全套肖邦的「谐谑曲」与「叙事曲」,以娴熟的技巧、惊人的记忆力和体力,将八首曲目一气呵成&#x…

一体化政务大数据体系-数据目录系统

1、系统目标 实现数据目录一体化,按照应编尽编的原则,推动各地区各部门建立全量覆盖、互联互通的高质量一体化政务数据目录。建立数据目录系统与部门目录、地区目录实时同步更新机制,实现政务数据“一本账”管理。 2、需求描述 一是实现政…

这可能是开源界最好用的能源管理系统

💂 个人网站: IT知识小屋🤟 版权: 本文由【IT学习日记】原创、在CSDN首发、需要转载请联系博主💬 如果文章对你有帮助、欢迎关注、点赞、收藏(一键三连)和订阅专栏哦 文章目录 写在前面项目简介项目特点项目架构模块展示项目获取 写在前面 大…

buu做题(9)

[MRCTF2020]PYWebsite 有个二维码 扫了一下啊二维码 function enc(code){hash hex_md5(code);return hash;}function validate(){var code document.getElementById("vcode").value;if (code ! ""){if(hex_md5(code) "0cd4da0223c0b280829dc3ea4…

Java之归并排序

归并排序 归并排序(Merge Sort)算法,使用的是分治思想。分治,顾名思义,就是分而治之,将一个大问题分解成小的子问题来解决。小的子问题解决了,大问题也就解决了。 核心源码: mergeSort(m->n) merge(mergeSort(m-&g…

Java8新特性(一) Lambda表达式与函数式接口

Java8新特性(一) Lambda表达式与函数式接口 一. 基本概念 Lambda表达式是Java 8中引入的一个重要的新特性,该表达式提出了一种新的语法规则,用于对某些(函数式接口)匿名内部类的书写方式进行简化。除此之外…

什么是等保测评?

信息安全等级保护测评,简称等保测评,是根据我国《信息安全等级保护管理办法》的规定,对国家重要信息系统进行的安全评估制度。等保测评的频率、必要性以及在实际操作中的常见误区,是企业和机构在进行等保测评时需要了解的重要内容…

智能写作分享

智能写作技术路线 ​ 在大模型的现有能力框架内,其对于处理长文档级别的智能写作任务存在一定的局限性。针对这一问题,本文深入探讨了长文档智能写作这一应用场景,并在此基础上,提出了一套切实可行的技术解决方案。该方案旨在弥补…

ts踩坑!使用可选链 ?.处理可能遇到的 undefined 或 null 值的情况,但是仍然收到一个关于可能为 undefined 的警告!

在 TypeScript 中,当你使用可选链(Optional Chaining)?. 时,你其实已经处理了可能遇到的 undefined 或 null 值的情况。但是,如果你仍然收到一个关于可能为 undefined 的警告,这可能是因为 TypeScript 的类…

关于js函数参数是否会实时更新的问题

遇到一个小问题 export function test001(value, callback) {setTimeout(() > {if (value undefined) {test001(value, callback)} else {callback()}}, 100) }// 调用处 // 要测试的变量 param01 test001(param01, () > {console.log(值不为空啦) }) 这个变量param01…

指针的意义

/指针------------------------------------------------------------------------------------------ // 1,指针是---------- // 通过它能找到以它为地址的内存单元 //int main() //{ // int a 10;//开辟一块空间 // int* p &a;//将变量a的地址取出&…

web自动化6-pytest③实践测试用例-回归用例web自动化

# -*- coding: utf-8 -*- """ lemut_select - 业务受理 Author: duxiaowei Date: 2024/7/17 """ import timeimport allure import pytest from selenium.webdriver.common.by import By# 业务受理 allure.feature("业务受理") class …

Unity Apple Vision Pro 开发:如何把 PolySpatial 和 Play To Device 的版本从 1.2.3 升级为 1.3.1

XR 开发社区: SpatialXR社区:完整课程、项目下载、项目孵化宣发、答疑、投融资、专属圈子 📕教程说明 本教程将介绍如何把 Unity 的 PolySpatial 和 Play To Device 版本从 1.2.3 升级为 1.3.1。 📕Play To Device 软件升级 ht…

使用 Visual Studio 2022 自带的 cl.exe 编译 tensorRT自带测试样例 sampleOnnxMNIST

1. 新建任意文件夹,将 D:\install\tensorRT\TensorRT-8.6.1.6\samples\sampleOnnxMNIST 下面的 sampleOnnxMNIST.cpp 文件复制进来,同时 D:\install\tensorRT\TensorRT-8.6.1.6\samples\sampleOnnxMNIST 下面的 sample_onnx_mnist.vcxproj 中的内容&…

Java核心 - 内部类详解

作者:逍遥Sean 简介:一个主修Java的Web网站\游戏服务器后端开发者 主页:https://blog.csdn.net/Ureliable 觉得博主文章不错的话,可以三连支持一下~ 如有疑问和建议,请私信或评论留言! 前言 在Java编程中&a…

vite5-macos仿macOS网页osx管理系统|vue3+arcoDesign桌面os

基于vite5.xvue3arco-design原创自研网页版os管理框架ViteWebOS。 使用最新前端技术vite5vue3pinia2arcoDesignsortablejsecharts搭建网页pc版桌面os式后台管理系统解决方案。支持自定义桌面栅格布局引擎、可拖拽桌面图标、多屏分页管理、自定义桌面壁纸主题、毛玻璃虚化背景等…

学Java一篇文章就够了(手把手教你入门)

第11章 枚举&注解&内部类 一、枚举 概念 枚举类型是Java 5中新增特性的⼀部分,它是⼀种特殊的数据类型,之所以特殊是因为它既是⼀种类 (class)类型却⼜⽐类类型多了些特殊的约束,但是这些约束的存在也造就了枚举类型的简洁性、安…