Проверьте новую переменную сниженную стоимость с CPLEX - PullRequest
2 голосов
/ 20 марта 2019

Я работаю над алгоритмом генерации столбцов. Как оценить новые переменные и рассчитать уменьшенную стоимость, как я могу добавить новую переменную и проверить, верна ли моя расчетная уменьшенная стоимость в соответствии с CPLEX?

Когда я добавляю новую переменную в модель и повторно оптимизирую RMP (уменьшенную основную задачу), новая переменная входит в основу, поэтому ее уменьшенная стоимость равна 0, что нормально. Тем не менее, я хотел бы проверить сниженную стоимость, рассчитанную CPLEX, перед добавлением переменной.

1 Ответ

3 голосов
/ 23 марта 2019

Я не уверен, какой из многих API-интерфейсов CPLEX вы используете, но я думаю, что подход, который вы должны использовать, более или менее одинаков.А именно, перед повторной оптимизацией RMP, установите предел итерации 0 и оптимизируйте RMP с новыми добавленными столбцами.Предположительно, у вас есть оптимальная база из предыдущего решения RMP на данный момент.Таким образом, с пределом итерации 0, CPLEX не приведет ни один из ваших новых столбцов в базу.Вместо этого они будут неосновными, но оптимизация с пределом итерации 0 даст вам расчет CPLEX всех неосновных сокращенных затрат, в том числе для вновь созданных столбцов.

...