【问题标题】:How to include integer constraint in MatLab's 'linprog( )' function?如何在 MatLab 的 'linprog( )' 函数中包含整数约束?
【发布时间】:2017-03-31 04:30:18
【问题描述】:

所以我在 matlab 上使用 linprog 来解决优化问题,其中一个约束是所有数字都是 0.5 的倍数,或者换句话说,每个加倍的数字都是整数。 由于所有约束必须采用的形式(它们都必须在线性方程中),我正在努力寻找一种方法来将此规则设置为约束。

如何向 linprog 写入约束以确保返回数组中的所有数字都是 0.5 的倍数?

提前致谢!

【问题讨论】:

标签: matlab optimization linear-programming


【解决方案1】:

您可以使用 intlinprog 轻松完成。 https://www.mathworks.com/help/optim/ug/intlinprog.html

为此,您必须声明一个整数变量 x_int。

如果 x 是您的初始连续变量,则以下约束确保 x 始终是 0.5 的倍数

2x = x_int

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-09-18
    • 1970-01-01
    • 1970-01-01
    • 2011-02-19
    • 1970-01-01
    • 1970-01-01
    • 2017-11-28
    • 1970-01-01
    相关资源
    最近更新 更多