ILP变量映射将基于问题的Matlab公式转换为基于求解器的公式

时间:2019-05-13 22:05:14

标签: matlab mathematical-optimization integer-programming mixed-integer-programming

我正在使用Matlab工具作为它的“媒介”来开发ILP。它们同时具有常规的"solver" based (SB) formulation和更高级别的"problem" based (PB) formulation

SB和PB之间的区别在于,对于PB,用户不必担心哪些问题变量会映射到变量的ILP列向量的元素。 最优化问题对象以符号形式接受最优化函数和相等/不等式约束,并且类方法处理簿记,以定义问题变量的列向量,最优化函数的系数以及矩阵和相关的RHS,以实现平等和不平等约束。

一个人实际上可以通过使用prob2struct从PB转换为SB来检查与PB配方相对应的SB。不幸的是,目前尚不清楚prob2struct如何决定哪些PB变量映射到变量的列向量的哪些元素。

我尝试搜索PB公式中的优化问题对象,以查看其是否包含其自身的内部SB公式详细信息(无论是否与prob2struct匹配)或至少包含变量映射。我找不到这样的细节。

对于prob2struct,是否存在一个可靠的规则让我们知道哪个符号PB变量映射到SB的列矢量列中的哪些元素?

1 个答案:

答案 0 :(得分:3)

尝试使用varindex功能。它是在R2019a中引入的。