Я раскручиваю ILP, используя для этого инструменты Matlab.Они имеют как традиционную формулировку "на основе решателя" (SB) , так и формулировку "на основе проблемы" (PB) на более высоком уровне абстракции.
Разницамежду SB и PB то, что для PB пользователю не нужно беспокоиться о том, какие проблемные переменные отображаются на элементы вектора-столбца переменных ILP. задача оптимизации объект принимает функцию оптимизации и ограничения равенства / неравенства в символической форме, а методы класса обрабатывают учет вектора столбцов проблемных переменных, коэффициентов функции оптимизации и матриц и связанных с нимиRHS для ограничений по равенству и неравенству.
Можно фактически изучить аналог SB для формулировки PB, используя prob2struct
для преобразования из PB в SB.К сожалению, неясно, как prob2struct
решает, какие переменные PB соответствуют каким элементам вектора-столбца переменных.
Я попытался найти объект задачи оптимизации в формулировке PB, чтобы увидеть, содержит ли он его.собственные подробности внутренней формулировки SB (независимо от того, совпадают ли они с prob2struct
) или, по крайней мере, отображение переменных.Я не смог найти такие подробности.
Для prob2struct
, существует ли надежное правило, позволяющее нам узнать, какие символические переменные PB отображаются на какие элементы в векторном столбце переменных SB?