《最优化方法与应用》
实验指导书
信息与计算科学系编制
1 实验目的
基于单纯形法求解线性规划问题,编写算法步骤,绘制算法流程图,编写单纯形法程序,并针对实例完成计算求解。
2实验要求
程序设计语言:C++
输入:线性规划模型(包括线性规划模型的价值系数、系数矩阵、右侧常数等)
输出:线性规划问题的最优解及目标函数值
备注:可将线性规划模型先转化成标准形式,也可以在程序中将线性规划模型从一般形式转化成标准形式。
3实验数据
123()-5-4-6=Min f x x x x
121231212320
324423230,,03-+≤⎧⎪++≤⎪⎨+≤⎪⎪≥⎩
x x x x x x st x x x x x
1 实验目的
基于线性搜索的对分法、Newton 切线法、黄金分割法、抛物线法等的原理及方法,编写算法步骤和算法流程图,编写程序求解一维最优化问题,并针对实例具体计算。
2实验要求
程序设计语言:C++
输入:线性搜索模型(目标函数系数,搜索区间,误差限等) 输出:最优解及对应目标函数值
备注:可从对分法、Newton 切线法、黄金分割法、抛物线法中选择2种具体的算法进行算法编程。
3实验数据
2211
()+-6(0.3)0.01(0.9)0.04
=
-+-+Min f x x x
区间[0.3,1],ε=10-4
实验三 无约束最优化方法
1实验目的
了解最速下降法、牛顿法、共轭梯度法、DFP 法和BFGS 法等的基本原理及方法,掌握其迭代步骤和算法流程图,运用Matlab 软件求解无约束非线性多元函数的最小值问题。
2实验要求
程序设计语言:Matlab
针对实验数据,对比最速下降法、牛顿法、共轭梯度法、DFP 法和BFGS 法等算法,比较不同算法的计算速度和收敛特性。
3实验数据
Rosenbrock's function
222211()(100)+(1-)=-Min f x x x x
初始点x=[-1.9, 2],,ε=10-4
实验四 约束最优化方法
1实验目的
了解无约束非线性优化问题的内点罚函数法、外点罚函数法等的基本原理及方法,掌握其迭代步骤和算法流程图,运用Matlab 软件编写程序求解约束非线性多元函数的最小值问题。
2实验要求
程序设计语言:Matlab
针对实验数据,对比内点罚函数法、序列二次规划方法等算法,比较不同算法的计算速度和收敛特性。
3实验数据
122121221212
12 ()(42421)1.5 10=++++--≤-⎧⎨≥-⎩
x Min f X e x x x x x x x x x st x x
初始点x0 = [-1,1],,ε=10-4。