外点法求约束最优化问题.doc

上传人:wj 文档编号:1977807 上传时间:2023-05-02 格式:DOC 页数:7 大小:170.50KB
下载 相关 举报
外点法求约束最优化问题.doc_第1页
第1页 / 共7页
外点法求约束最优化问题.doc_第2页
第2页 / 共7页
外点法求约束最优化问题.doc_第3页
第3页 / 共7页
外点法求约束最优化问题.doc_第4页
第4页 / 共7页
外点法求约束最优化问题.doc_第5页
第5页 / 共7页
外点法求约束最优化问题.doc_第6页
第6页 / 共7页
外点法求约束最优化问题.doc_第7页
第7页 / 共7页
亲,该文档总共7页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

外点法求约束最优化问题.doc

《外点法求约束最优化问题.doc》由会员分享,可在线阅读,更多相关《外点法求约束最优化问题.doc(7页珍藏版)》请在冰点文库上搜索。

外点法求约束最优化问题.doc

数学规划课程设计

题目外点法求约束最优化问题

姓名

学号

成绩

摘要

罚函数是应用最广泛的一种求解式的数值解法,基本思路是通过目标函数加上惩罚项,将原约束非线性规划问题转化为求解一系列无约束的极值问题。

(这种惩罚体现在求解过程中,对于企图违反约束的那些迭代点,给予很大的目标函数值,迫使这一系列无约束问题的极小值或者无限地向可行解(域)逼近,或者一直保持在可行集(域)内移动,直到收敛于原来约束问题的极小值点。

本文.......

外点法可用于求解不等式约束优化问题,又可用于求解等式约束优化问题,主要特点是惩罚函数定义在可行域的外部,从而在求解系列无约束优化问题的过程中,从可行域外部逐渐逼近原约束优化问题最优解。

关键词:

罚函数法、约束最优化问题、外点法

一、预备知识(基本理论)

看下是否还有定理、定义等等,可以加一些

外点惩罚函数法的一般形式

考虑不等式约束优化设计时:

构造一般形式的外点惩罚函数为:

其中:

(1)当满足所有约束条件时惩罚项为0,即

(2)当X违反某一约束条件,即时表明X在可行域外,惩罚项起作用,且若X离开约束边界越远,惩罚力度越大。

这样用惩

罚的方法迫使迭代点回到可行域。

(3)惩罚因子是一递增的正数数列,即

且一般

考虑等式约束的优化问题:

构造外点罚函数:

同样,若X满足所有等式约束则惩罚项为0;若不能满足,则且随着惩罚因子的增大而增大;

综合等式约束和不等式约束情况,可以得到一般约束优化问题的外点罚函数公式为:

实际计算中,因为惩罚因子不可能达到无穷大,故所得的最优点也不可能收敛到原问题的最优点,而是落在它的外面,显然,这就不能严格满足约束条件。

为了克服外点惩罚函数法的这一缺点,对那些必须严格满足的约束(如强度、刚度等性能约束)引入约束裕度,即将这些约束边界向可行域内紧缩,移动一个微量,得到

这样用重新定义的约束函数来构造惩罚函数,得到最优设计方案。

外点惩罚函数法的迭代步骤:

1.给定初始点,初始惩罚因子,维数n迭代精度和递增系数;

2.构造外点惩罚函数;

3.选用无约束优化方法来求解惩罚函数极小点,即,

4.检验是否满足迭代终止条件

或若满足转6,若不满足转5;

5.令,转2;

6.输出最优解,迭代终止。

二、解问题

1问题重述

用外点法求解约束最优化问题

2问题求解

解:

构造罚函数

用解析法求解

即,

的解为

当时,,

即解为:

程序解法:

利用MATLAB编写程序如下:

m=zeros(1,50);a=zeros(1,50);

b=zeros(1,50);f0=zeros(1,50);%ab为最优点坐标,f0为最优点函数值,f1f2最优点梯度。

symsx1x2e;%e为罚因子。

m

(1)=1;c=10;a

(1)=0;b

(1)=0;%c为递增系数。

赋初值。

f=x1^2+2*x2^2+e*(1-x1-x2)^2;f0

(1)=1;

fx1=diff(f,'x1');fx2=diff(f,'x2');fx1x1=diff(fx1,'x1');

fx1x2=diff(fx1,'x2');fx2x1=diff(fx2,'x1');

fx2x2=diff(fx2,'x2');%求偏导、海森元素。

fork=1:

100%外点法e迭代循环.

x1=a(k);x2=b(k);e=m(k);

forn=1:

100%梯度法求最优值。

f1=subs(fx1);%求解梯度值和海森矩阵

f2=subs(fx2);

f11=subs(fx1x1);

f12=subs(fx1x2);

f21=subs(fx2x1);

f22=subs(fx2x2);

if(double(sqrt(f1^2+f2^2))<=0.001)%最优值收敛条件a(k+1)=double(x1);b(k+1)=double(x2);f0(k+1)=double(subs(f));

break;

else

X=[x1x2]'-inv([f11f12;f21f22])*[f1f2]';

x1=X(1,1);x2=X(2,1);

end

end

if(double(sqrt((a(k+1)-a(k))^2+(b(k+1)-b(k))^2))<=0.001)&&(double(abs((f0(k+1)-f0(k))/f0(k)))<=0.001)%罚因子迭代收敛条件

a(k+1)%输出最优点坐标,罚因子迭代次数,最优值

b(k+1)

k

f0(k+1)

break;

else

m(k+1)=c*m(k);

end

end

得结果:

ans=

0.6666

ans=

0.3333

k=

5

ans=

0.6666

即min()的最优结果为0.6666

写一些总结性内容

三、参考文献

[1]范玉妹,徐尔,赵金玲,胡毅庆.数学规划及其应用[M].北京:

冶金工业出版社,2009

[2]姜启源,谢金星,叶俊.数学建模[M].北京:

高等教育出版社,2003

[3][沙特]M.H.Alsuwaiyel.算法设计技巧与分析[M].北京:

电子工业出版社,2009

[4]刘卫国.MATLAB程序设计及其应用[M].北京:

高等教育出版社,2006

[6]唐加福,汪定伟,许宝栋,李露.基于评价函数的遗传算法求解非线性规划问题[J].控制与决策学报,2000(5)

-6-

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > PPT模板 > 其它模板

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2