数学建模——多目标规划

1.概念

多目标规划(Multi-Objective Optimization, MOO)是数学规划的一个分支,用于解决同时优化多个相互冲突的目标函数的问题。其核心在于寻找一组"帕累托最优解"(Pareto Optimal Solutions),即在没有其他解能同时改善所有目标的情况下,这些解是最优的。

多目标规划相比前面的单一目标规划,就是目标函数不止一个,前面只有一个目标函数,那么目标函数最小的时候就是答案。但是多目标规划目标函数不止一个,求出的答案也不是每一个目标函数都是最优

常见例题:

物流中心选址,需要同时满足运输成本和建设费用(选址)都较低

投资组合,需要风险尽可能小,收益尽可能大

2.解

1.解的类型

由于目标函数不止一个所以解有三种类型

|-----|-----------------------------------------------------------------|
| 最优解 | 所有目标函数都取到了最优(几乎不存在) |
| 有效解 | 使至少一个目标函数取到最小值但不是所有(如果是所有就是上一种情况) |
| 满意解 | 主要是从决策者的角度,根据决策者的偏好提出的,有的时候决策者要求低给出的要求不高,只要满足要求就认为可以接受,是满意解 |

对于绝大多数问题,决策者偏好的方案都是有效解

2.求解方法

求解之前要对目标函数去量纲,归一化

补充:

去量纲(无量纲化)

去量纲是将不同量纲或单位的特征转换为统一尺度,消除量纲对模型的影响。

归一化

归一化通常指将数据转换为单位范数或特定比例

|------------------|-------------------------------------------------|---------------------------------------------------------|
| 方法 | 核心 | 特点 |
| 线性加权法 | 将多个目标函数通过权重加权求和,转化为单目标优化问题。 | * 权重由决策者主观确定,导致结果可能因偏好不同而变化。 * 简单易行,但对权重敏感,可能遗漏非凸解。 |
| 约束法(主要目标法/参考目标法) | 选定一个主要目标优化,其他目标转化为约束条件(设定容许阈值)。 | * 通过调整阈值可生成不同的Pareto解。 * 需明确次要目标的可接受范围,对阈值设定敏感。 |
| 理想点法 | 以各单目标最优值为"理想值",最小化目标值与理想值的加权平方偏差。 | * 兼顾所有目标与理想值的接近程度,结果更均衡。 * 需预先计算单目标最优值,计算复杂度较高。 |
| 优先级法 | 按目标重要性分层,逐级优化:高优先级目标先最优,低优先级在不劣化高优先级的前提下优化。 | * 严格反映决策者的优先级顺序,但可能牺牲低优先级目标的性能。 * 适用于目标有明确先后次序的场景。 |

其中线性加权法简单常用

线性加权法就是对多目标函数进行加权组合,使其变成单目标规划

step1:确定权系数

step2:写出评价函数

step3:求评价函数最优值

注意:

注意:

1、要将多个目标函数统一 为最大化和最小化问题(不同的加"-")才可以进行加权组合

2、如果目标函数量纲不同,则需要对其进行标准化再进行加权,标准化的方法一般是且标函数除以某一个常量,该常量是这个目标函数的某个取值,具体取何值可根据经验确定

3、对多目标函数进行加权求和是,权重一般由该领域专家给定

3.例题

决策变量

设二元变量 xi​∈{0,1},其中 xi​=1 表示在位置 Ai​ 建设物流中心(i=1,2,...,8)。

约束条件

1.建设数量限制

2.覆盖人口下限

分析完后可以得到以下模型

然后对目标函数去除量纲并且加权

所以目标函数转化为

化简完成就是

原来的模型也就变成了这个

这个就是典型的线性规划了,用linprog求解

4.补充

敏感性分析概述

敏感性分析用于评估模型输出对输入参数变化的敏感程度,广泛应用于金融、工程、项目管理等领域。通过识别关键变量,帮助决策者优化资源分配或降低风险。

单变量敏感性分析

固定其他参数,仅改变一个输入变量,观察输出结果的变化。适用于参数间独立性较强的场景。

步骤示例

  1. 选择目标变量(如净现值NPV)。
  2. 确定待测试的输入参数(如折现率、成本)。
  3. 在合理范围内调整单一参数值(如折现率从5%增至10%)。
  4. 记录输出结果并绘制敏感性曲线。

多变量敏感性分析

同时改变多个输入参数,分析其对输出的综合影响。常用方法包括蒙特卡洛模拟和方差分解法。

蒙特卡洛模拟步骤

  1. 定义输入参数的概率分布(如正态分布、均匀分布)。
  2. 随机生成参数组合并计算输出结果。
  3. 通过统计方法(如相关系数、回归分析)量化敏感性

像上面用linprog之后就可以输入更多可能的权重,根据结果和需求来看是否是最佳结果

相关推荐
嵌入式冰箱16 小时前
2026年数学建模美赛C题
数学建模
小文数模1 天前
2026年美赛数学建模C题完整参考论文(含模型和代码)
python·数学建模·matlab
DS数模1 天前
2026年美赛MCM A题保姆级教程思路分析|A题:智能手机电池消耗建模
数学建模·智能手机·美国大学生数学建模竞赛·美国大学生数学建模·2026美赛·2026美赛a题
Deepoch1 天前
Deepoc-M模型:以数学赋能,解锁通信产业“普惠创新”新可能
科技·5g·数学建模·通信·deepoc·deepoc数学大模型
小文数模1 天前
2026美赛数学建模D题完整参考论文(含模型建立求解、代码等)
python·数学建模·matlab
一只小小的土拨鼠1 天前
【26美赛B题】2026美赛数学建模(MCM/ICM)思路解析及代码分享
数学建模
数学建模导师2 天前
2026美赛数学建模选题分析+ABCDEF题思路代码挖掘
数学建模
乾元2 天前
自动化渗透:强化学习在内网渗透测试(DQN/PPO)中的实验
运维·网络·人工智能·深度学习·安全·数学建模
小文数模2 天前
2026美赛数学建模F题完整参考论文(含模型建立求解、代码等)
python·数学建模·matlab
一只小小的土拨鼠2 天前
2026年美国大学生数学建模竞赛全题型高质量成品资料,(MCM/ICM)完整论文+代码结果+思路解析(全套资源)保姆级教程(ABCDEF全套资源)
数学建模