资源描述:
《《讲多目标规划》PPT课件》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、多目标规划问题BYCAOMultiobjectiveOptimizationOPtim_tb.pdfP131~140选做作业:1)MATLAB中的多目标优化思路!2)多目标优化算法讨论3)有关多目标优化实例分析AlgorithmImprovementsforGoalAttainmentMethodx=fgoalattain(fun,x0,goal,weight)x=fgoalattain(fun,x0,goal,weight,A,b)x=fgoalattain(fun,x0,goal,weight,A,b,Aeq,beq
2、)x=fgoalattain(fun,x0,goal,weight,A,b,Aeq,beq,lb,ub)x=fgoalattain(fun,x0,goal,weight,A,b,Aeq,beq,lb,ub,nonlcon)x=fgoalattain(fun,x0,goal,weight,A,b,Aeq,beq,...lb,ub,nonlcon,options)x=fgoalattain(fun,x0,goal,weight,A,b,Aeq,beq,...lb,ub,nonlcon,options,P1,P2,...)[x
3、,fval]=fgoalattain(...)[x,fval,attainfactor]=fgoalattain(...)[x,fval,attainfactor,exitflag]=fgoalattain(...)[x,fval,attainfactor,exitflag,output]=fgoalattain(...)[x,fval,attainfactor,exitflag,output,lambda]=fgoalattain(...)Theargumentspassedintothefunctionaredesc
4、ribedinTable4-1.TheargumentsreturnedbythefunctionaredescribedinTable4-2.Detailsrelevanttofgoalattainareincludedbelowforfun,goal,nonlcon,options,weight,attainfactor,exitflag,lambda,andoutput.Thefunctiontobeminimized.funtakesavectorxandreturnsavectorFoftheobjective
5、functionsevaluatedatx.Youcanspecifyfuntobeaninlineobject.Forexample,fun=inline('sin(x.*x)');Alternatively,funcanbeastringcontainingthenameofafunction(anM-file,abuilt-infunction,oraMEX-file).Iffun='myfun'thentheM-filefunctionmyfun.mwouldhavetheformfunctionF=myfun(
6、x)F=...%ComputefunctionvaluesatxTomakeanobjectivefunctionasnearaspossibletoagoalvalue,(i.e.,neithergreaterthannorlessthan)setoptions.GoalsExactAchievetothenumberofobjectivesrequiredtobeintheneighborhoodofthegoalvalues.Suchobjectivesmustbepartitionedintothefirstel
7、ementsofthevectorFreturnedbyfun.Ifthegradientoftheobjectivefunctioncanalsobecomputedandoptions.GradObjis'on',assetbyoptions=optimset('GradObj','on')thenthefunctionfunmustreturn,inthesecondoutputargument,thegradientvalueG,amatrix,atx.Notethatbycheckingthevalueofna
8、rgoutthefunctioncanavoidcomputingGwhen'myfun'iscalledwithonlyoneoutputargument(inthecasewheretheoptimizationalgorithmonlyneedsthevalueofFbutnotG):function[F,G]