matlab线性规划

它不是可以设置上下限的范围嘛,但是吧,我要是其中一个变量x,要满足3<x<4或x=0,这样怎么办... 它不是可以设置上下限的范围嘛,但是吧,我要是其中一个变量x,要满足 3<x<4或x=0,这样怎么办 展开
 我来答
tianxiawulang
2014-01-28 · TA获得超过2.7万个赞
知道大有可为答主
回答量:4732
采纳率:89%
帮助的人:2882万
展开全部

数学规划问题都是要求在闭集上求解的,也就是说,约束条件中涉及到大于或小于的符号,都应该包含等号,例如 3<=x<=4,否则,从原理上可能是无解的。等式约束当然没什么问题。

 

举一个非常简单的例子,求 min x, st. x>0,这个问题看似简单,却是无解的。

 

对于非闭集的情况,一个勉强可行的做法是,把不等式约束给加上等号使得问题符合闭集的要求,然后看求解得到的结果,如果刚好落在原问题并不包括的等号约束上,那就说明无解,否则就是最优解。这是我在一个国外的论坛上看到的方法,并没有见到严格的证明,但从基本思路上看应该是可行的。

追问
或x=0这个怎么办呢?
追答

如果你的约束条件是 3<x<4 x=0,很显然,可行解空间不是连续的,当然也就不满足凸集的条件,原理上是不能直接求解的。我能想到的建议是,你可以试试把问题分解成两个子问题,把对x的两种可能的约束分别用在两个子问题上,然后分别求解,最后再选择二者中的最优。

 

最好把问题贴出来,不要泛泛而谈,也许你建立的模型就有问题,问题根本没那么复杂呢。

匿名用户
2014-01-28
展开全部
没见过可以同时这样设置变量范围的,不过你可以试试根据这个条件拆成两个问题,分开求解
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式