
第一问问题和建的模型如图,问题就是matlab代码该怎么实现这个模型,我使用了for循环和while循环,可是就是没法实现。二三四问顺便也问一下,没啥思路

第一问问题和建的模型如图,问题就是matlab代码该怎么实现这个模型,我使用了for循环和while循环,可是就是没法实现。二三四问顺便也问一下,没啥思路
根据你的描述,可以把这个问题看作一个多目标优化问题,目标分别为最大可种植树木的数量以及树的高度尽可能相同(标准差最小)。使用matlab+yalmip工具箱的求解思路如下:
1.首先,定义决策变量x1-x5,分别表示五种不同的高度树的数量,matlab代码是:x = sdpvar(5,1);则两个目标函数可以分别表示为最大化f1 = sum(x);以及最小化f2 = std(x);,并将两个目标组合形成单目标f=w1*f1+w2*f2;
2.约束条件的建模
(1)每棵树需要占地10平方米,并且不能与其他树的占地重叠。Cons = [Cons, sum(x)*10 <= 500*500];