MATLAB优化工具箱简介及应用举例

2025-09-13

MATLAB优化工具箱简介及应用举例

姚春桂

(东南大学电气工程学院,江苏 南京 210096)

摘要:简要介绍了MATLAB优化工具箱中包含的常用优化算法,并给出优化工具箱中常用的优化函数。最后以2004年大学生数学建模竞赛中的一道题目为例,介绍了MATLAB优化工具箱在实际问题中的应用。

关键字:优化工具箱;MATLAB;机组出力分配;regress;linprog

A Brief Introduction of Optimization Toolbox and Applications

Yao Chungui

(Electrical Engineering, Southeast University, Nanjing 210096, China)

Abstract: briefly introduced the optimization algorithm in Optimization Toolbox of MATLAB. Given the commonly used optimization functions Then taking a subject of Mathematical Contest in Modeling in 2004 as an example and introducing Optimization Toolbox’s application in practical problems.

Key words: Optimization Toolbox; MATLAB; Unit output Distribution; regress; linprog

0 引言

优化是寻找目标函数最大或最小值的过程。MATLAB优化工具箱是一组扩展MATLAB数值计算能力的函数集[1]。这个工具箱包含有多种常用的优化问题: ·无约束非线性最小化

·有约束非线性问题,包括目标的实现,极大极小问题最小化,以及半无限最小化问题

·二次规划和线性规划

·非线性最小二乘法的曲线拟合 ·非线性系统的方程求解 ·约束线性最小二乘 ·稀疏和结构大尺度问题

优化工具箱中所有的函数均是由MATLAB根据专门的优化算法实现的M文件。通过在MATLAB输入type function_name 可以查看这些函数的MATLAB

代码。通过用户编写M文件、与其他工具箱或Simulink配合扩展优化工具箱的功能。

1 优化工具箱涵盖的问题

优化工具箱中的优化函数可以解决目标函数最小化问题、方程求解问题、二元整数规划问题、最小二乘或数据拟合问题。 1.1 目标函数最小化

求目标函数最小化的优化函数如表1所示

表1 目标函数最小优化函数

类型 有约束单变量函数最小 符号 minf(x)?x?x1x2 minf(x)xminx函数 fminbnd 无约束多元函数最小 fminunc fminsearch 线性规划 fTx s.t linprog A?x?b,Aeq?x?beq,lb?x?ub 二次规划 min1x2xTHx?fTxs.t quadprog A?x?b,Aeq?x?beq,lb?x?ub 有约束非线性多元函数最小 s.t fmincon minf(x)xc(x)?0,ceq(x)?0,A?x?b,Aeq?x?beq,lb?x?ub 多目标的实现 minimize?x,?F(x)-weight???goals.t fgoalattain ,c(x)?0,ceq(x)?0,A?x?b,Aeq?x?beq,lb?x?ub 有约束极大极小 minmaxxiF(x)is.t fminimax c(x)?0,ceq(x)?0,A?x?b,Aeq?x?beq,lb?x?ub 半无限约束多变量的非线性函数最小化 s.t fseminf minf(x)xc(x)?0,ceq(x)?0,A?x?b,Aeq?x?beq,lb?x?ub,K(x,?)?0,1?i?n ii二元整数规划 minxfTx s.t bintprog A?x?b,Aeq?x?beq,xbinary 1.2 方程求解优化

方程求解优化函数如表2所示

表2 方程求解优化函数

类型 线性方程 符号 C?x?d 函数 n个方程组,n个变量 一元非线性方程 非线性方程组 f(x)?0 fzero fsolve F(x)?0 n个方程组,n个变量 1.3 最小二乘(曲线拟合)

最小二乘(曲线拟合)优化函数如表3所示

表3 最小二乘(曲线拟合)优化函数

类型 线性最小二乘 符号 minxC?x?d22函数 m个方程,n个变量 非负线性最小二乘 minxC?x?d22 s.t lsqnonneg x?0 有约束线性最小二乘 minxC?x?d22 s.t A?x?b,lsqlin Aeq?x?beq,lb?x?ub 非线性最小二乘 min112F(x)2??Fi(x)2x22is.t lb?x?ub lsqnonlin 非线性曲线拟合 min1x2minxF(x,xdata)-ydata2?2iii2 lsqcurvefit ?(F(x,xdata)?ydata)iis.t lb?x?ub 2 优化工具箱举例[2]

以2004年高教社杯全国大学生数学建模竞赛题目[4]——电力市场的输电阻塞管理为例,介绍MATLAB的优化工具箱在电力系统中的应用。由于这道竞赛题目比较复杂,本文只应用优化工具箱求线路上有功潮流关于各发电机组出力的近似表达式和根据下一时段负荷预报值确定电网中各机组出力分配预案。 2.1 记号说明

li:第i台机组当前时段出力值(对应表1中方案0),记L?()T;

li1?81ij2ij3ij4ij5ibbbbb:第i个方案第j台机组出力值(对应表1中方案1—32),记:第i个方案第j条线路潮流值(对应表2中方案1—32),记:第i台机组第j个序段的段容量值(对应表3),记:第i台机组第j个序段的段价(对应表4),记:第i台机组的爬坡速率(对应表5),记:6为第j条线路的潮流限值,

1j631 ?(b1bij)32?8;2 ?(b2bij)32?8;

b3?(bij)8?10;

4; ?()8?10b4bij5T; ?()1b5bi?8bbij6b62j为第j条线路的相对安全裕度(对应表6),

b6?(bij)2?6;

:第i台机组第j个序段的出力系数(0?bbijbij?1),记b?(bij)8?10;

Yi:下一时段负荷预报值;

x:第i台机组的出力;

y:第i条线路上的有功潮流;

ix:矩阵b中的元素按行顺序连接生成的80维列向量;

B:各机组段容量与其对应的段价相乘构成的8*10矩阵中元素按行顺序连接生成的80维行向量;

C:矩阵b3中的元素按行顺序连接生成的80维行向量;


MATLAB优化工具箱简介及应用举例.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:2024届高考化学第一轮复习精选练习(十七)

相关阅读
本类排行
× 游客快捷下载通道(下载后可以自由复制和排版)

下载本文档需要支付 7

支付方式:

开通VIP包月会员 特价:29元/月

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:xuecool-com QQ:370150219