matlab中用遗传算法求解约束非线性规划问题new

matlab中用遗传算法求解约束非线性规划问题new

ID:34424439

大小:155.88 KB

页数:3页

时间:2019-03-06

matlab中用遗传算法求解约束非线性规划问题new_第1页
matlab中用遗传算法求解约束非线性规划问题new_第2页
matlab中用遗传算法求解约束非线性规划问题new_第3页
资源描述:

《matlab中用遗传算法求解约束非线性规划问题new》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第22卷第4期哈尔滨商业大学学报(自然科学版)Vol.22No.42006年8月JournalofHarbinUniversityofCommerce(NaturalSciencesEdition)Aug.2006MATLAB中用遗传算法求解约束非线性规划问题王勇(哈尔滨商业大学基础科学学院,黑龙江哈尔滨150028)摘要:约束非线性规划问题的求解往往是运筹学中的NP问题,利用MATLAB中的遗传算法工具箱中的函数方便、快捷的求得了两个实例的最优解,进一步指出了遗传算法与传统的最优化算法的区别.关键词:遗传算法;约束非线性规划;MA

2、TLAB中图分类号:O221文献标识码:A文章编号:1672-0946(2006)04-0116-02SolutionofoptimizationwithnonliearconstraintsprogrammingbygeneticalogorithminMATLABWANGYong(SchoolofBasicScience,HarbinUniversityofCommerce,Harbin150028,China)Abstract:Thesolutionprocesstooptimizationnonlinearconstrain

3、tsprogrammingoftencon2cernsNPproblemsinoperationsresearch.Thispaperemploysthefunctionsofgeneticalgo2rithminMATLABtoolkit,andgetsswiftlyandconvenientlytwooptionalsolutionsintwoca2sesconcerned.Andpointsoutthedifferencesbetweenthegeneticalgorithmandthetradi2tionaloptimala

4、lgorithm.Keywords:geneticalgorithm;optimizationnonliearconstraintsprogramming;MATLAB约束非线性规划问题是运筹学中的一个重要解约束非线性规划问题.分支,在经济、管理、计划,以及军事、生产自动化方1遗传算法的一般步骤面有着重要应用,但它的求解往往比较复杂.而遗[1]传算法是一个新兴的方法,1975年Hollland在他1)选择N个个体构成初始种群P0,并求出的著作《AdaptationinNaturalandArtificalSystems》种群内各个个

5、体的函数值.染色体用实数数组来表中首次提出遗传算法,其基本思想是从一个代表最示,种群可由随机数生成函数建立.在MATLAB中优化问题解的一组初值开始进行搜索,这组解称为使用遗传算法求解函数gaopt(),则会自动生成所一个种群,种群有一定数量、通过基因编码的个体需的初始种群P0.组成,其中每一个个体称为染色体,不同个体通过2)设值代数为i=1,即设置为第一代.染色体的复制、交叉、变异又生成新的个体,依照适3)计算选择函数的值,所谓选择即通过概率者生存的规则,个体也在一代一代进化,通过若干的形式从种群中选择若干个个体的方式.遗传算法代

6、的进化最终得出条件最优的个体.很快就将其应工具箱提供了3个选择函数:roulette()实现了轮用于求解非线性最优化问题,在著名的数学软件盘选择算法,normGeomSelect()函数实现了归一化MATLAB中有一个有效地工具箱--遗传算法工几何选择方法,tournSelect()实现了锦标赛形式的具箱,本文即使用遗传算法工具箱为主要工具,求选择方式,本文使用normGeomSelect()函数确定选收稿日期:2006-04-29.作者简介:王勇(1972-),男,硕士,教师,研究方向:运筹学与控制论.第4期王勇:MATLAB中用

7、遗传算法求解约束非线性规划问题·117·择函数值.c)遗传算法采用的是概率性规则而不是确定4)通过染色体个体基因的复制、交叉、变异等性规则,所以每次得出的结果不一定完全相同,有创造新的个体,构成新的种群Pi+1,其中复制、交时甚至会有较大差异,这就需要我们增加搜索的代叉、变异都有相应的MATLAB函数,可使手工计算数.量大大减少.遗传算法最优化工具箱中有一个gaopt()函5)i=i+1,若终止条件不满足,则转到步骤3)数,它的调用极其简单.即使对遗传算法理解不多,继续进化处理.只须利用MATLAB语言描述出目标函数,就可以得出最优

8、解,需要注意的是,gaopt()函数能求解的2约束非线性规划问题是问题的最大化问题,所以在编写目标函数时应加约束非线性规划问题的一般描述是以留意.下面用两个实例来说明该函数的应用.32xs.t.mG(ixn)≤0f(x)minF=x1

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。