贪婪算法找硬币matlab,matlab常用算法大全(数学建模).doc

41528d3028836879cd698677c3999917.gifmatlab常用算法大全(数学建模).doc

本文总结了MATLAB常用的几个算法,希望对数学建模有帮助。利用MATLAB编程FFD算法完成装箱问题设有6种物品,它们的体积分别为60、45、35、20、20和20单位体积,箱子的容积为100个单位体积。建立BOX_MAINMFUNCTIONBOX_COUNT,BBOX_MAINVVMAX100SORTV, DESCEND NLENGTHVBZEROS1,NFORI1NBIVMAXENDBOX_COUNT1FORI1NFORJ1BOX_COUNTIFVIXI,2CARCARXI,2ITEM_COUNTITEM_COUNT1ELSEBREAKENDENDYZEROSITEM_COUNT,2FORI1ITEM_COUNTYI,1XI,1YI,2XI,2ENDEND主程序为V220,208,198,192,180,180,165,162,160,158,155,130,125,122,120,118,115,110,105,101,100,100,98,96,95,90,88,82,80,77,75,73,72,70,69,66,65,63,60,58,56,50,30,20,15,10,8,5,3,1W80,82,85,70,72,70,66,50,55,25,50,55,40,48,50,32,22,60,30,32,40,38,35,32,25,28,30,22,50,30,45,30,60,50,20,65,20,25,30,10,20,25,15,10,10,10,4,4,2,1CAR1000ITEM_COUNT,YCHAOSHIV,W,CARY’;结果为ANSCOLUMNS1THROUGH111585811595821181056965162902510222522323020205028COLUMNS12THROUGH22101125155968816098562201921003240503230553520807038COLUMNS23THROUGH261807712220870304882最大总价值为3095元,可装入体积为996贪婪算法练习练习题1考虑1、8、9、11这四种面值的硬币,要找出币值24的零钱,怎么找能使硬币数最少利用MATLAB编程求解。解设XJ为二进制变量,如果硬币J被选中,则,XJ1,否则XJ0,则找硬币问题的数学模型如下MINNJJX1;MNJJJXV1;用贪婪算法求解,其MATLAB程序如下FUNCTIONN,XPAYBACKV,Y,MM,NSIZEYFORI1NFORJ1N练习题2利用MATLAB编程FFD算法完成下题设有6种物品,它们的体积分别为60、45、35、20、20和20单位体积,箱子的容积为100个单位体积。FUNCTIONNBOX,PSJYN,V,LIMITVM,NSIZEVWLIMITVONESM,NPZEROSNNBOX0FORI1NFORJ1IIFVICLBREAK待放入包的物品重量大于包的重量,跳出循环ELSEXI1XI为1时,物品I在包中CLCLWIPP1P记录放入背包物品的个数ENDENDFUNCTIONKNAPSACKN,LIMITW,W,VTOTALC0TOTALW0M,NSIZEWM是W的行数N是W的列数XZEROSM,NTW记录原数组KCYXP,C,WGOODSINKNAPSACKN,LIMITW,V,W,X排序及计算装箱物品数FORJ1P装包的P件物品FORI1N原N件物品IFWJTIENDENDENDYFORI1NTOTALCTOTALCKIYI背包的总价值IFYI1TOTALWTOTALWTI背包所装载总体积ENDENDTOTALWTOTALCV220,208,198,192,180,180,165,162,160,158,155,130,125,122,120,118,115,110,105,101,100,100,98,96,95,90,88,82,80,77,75,73,72,70,69,66,65,63,60,58,56,50,30,20,15,10,8,5,3,1W80,82,85,70,72,70,66,50,55,25,50,55,40,48,50,32,22,60,30,32,40,38,35,32,25,28,30,22,50,30,45,30,60,50,20,65,20,25,30,10,20,25,15,10,10,10,4,4,2,1LIMITW1000N50KNAPSACKN,LIMITW,W,V;运行结果为YCOLUMNS1THROUGH161101010111101101COLUMNS17THROUGH321011011111110100COLUMNS33THROUGH480010100110000000COLUMNS49THROUGH5000层次分析法MATLAB源程序DISP 请输入判断矩阵AN阶 A A N,NSIZEAXONESN,100YONESN,100MZEROS1,100M1MAXX,1Y,1X,1X,2AY,1M2MAXX,2Y,2X,2/M2P00001I2KABSM2M1WHILEKPII1X,IAY,I1MIMAXX,IY,IX,I/MIKABSMIMI1ENDASUMY,IWY,I/ATMIDISPWDISPT以下是一致性检验CITN/N1RI00052089112126136141146149152154156158159CRCI/RINIFCR01DISP 组合一致性不通过,请重新评分 RETURNEND下面根据比较阵的结果进行组合RESULTEIGOFOPTEIGOFCRIRESULTFUNCTIONFAHP1DIM,CMPMATRIXRI00058090112124132141145149151判断该比较阵是不是一致阵判断该比较阵是不是一致阵V,DEIGCMPMATRIX求得特征向量和特征值求出最大特征值和它所对应的特征向量TEMPNUMD1,1POS1FORH1DIMIFDH,HTEMPNUMTEMPNUMDH,HPOSHENDENDEIGVECTORV,POSMAXEIGDPOS,POSMAXEIGDIMCIMAXEIGDIM/DIM1CRCI/RIDIMIFCR01DISP 准则对目标影响度评分生成的矩阵不是一致阵,请重新评分 RETURNENDCI归一化SUM0FORH1DIMSUMSUMEIGVECTORHENDSUMPAUSE,FORH1DIMEIGVECTORHEIGVECTORH/SUMENDFEIGVECTORCI多目标线性规划的若干解法及MATLAB实现摘要求解多目标线性规划的基本思想大都是将多目标问题转化为单目标规划,本文介绍了理想点法、线性加权和法、最大最小法、目标规划法,然后给出多目标线性规划的模1糊数学解法,最后对每种解法给出例子,并用MATLAB软件加以实现。2关键词多目标线性规划MATLAB模糊数学SOMESOLUTIONSOFMULTIOBJECTIVELINEARPROGRAMMINGANDREALIZEDBYMATLABDINGHONGFEISCHOOLOFMATHEMATICS,SO

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值