外点惩罚函数法matlab程序例子,外点罚函数优化实例.doc

本文通过一个桁架结构的优化问题,介绍了外点罚函数法在MATLAB中的应用。目标是找到支点A和B的位置,使杆3的长度最小。使用外点罚函数法进行优化,并与MATLAB内置的fmincon工具进行对比,探讨了罚因子系数c对算法效率的影响。
摘要由CSDN通过智能技术生成

精品Word文档,知识共享!

外点罚函数优化实例

一、优化问题

如图1所示,为某一桁架的一部分,杆2距O点30cm处有一支点C。为了固定桁架,现欲在杆1和2上设置支点A和B,用来连接杆3(可拆卸)。已知当桁架固定时,杆1和2成直角;而且,杆1右边有一段长为20cm的重要部位,不能设置支点。卸去杆3、收起桁架时,支点A的位置不能高于BC段中点D。求取支点A、B的位置,使得杆3的长度尽量小,以节省材料。

图1 桁架结构示意图

二、数学模型

设A、B两点距离O点的长度分别为和,而桁架固定时杆1和2成直角。所以杆3的长度为。

由图1可知,且,即且。

设,取。因此,数学模型为:

极小化目标函数

约束条件

三、求解数学模型

(1)外点罚函数法求解

构造外点法罚函数,如下:

程序流程图如图2所示:

给定、

给定、、c、

k=0

i=0

求与Hessian矩阵

输出和

Y

N

i=i+1

k=k+1

Y

N

结束

牛顿法求的极

值点

图2 外点罚函数法程序流程图

程序步骤:

①选择适当的初始罚因子、初始点、收敛精度和罚因子系数c。在本程序中分别取,,

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值