решить многоцелевую оптимизацию: CPLEX или Matlab? - PullRequest
2 голосов
/ 19 декабря 2011

Мне нужно решить многоцелевую проблему, но я не знаю, стоит ли мне использовать CPLEX или Matlab.Можете ли вы объяснить преимущества и недостатки обоих инструментов.Большое спасибо!

Ответы [ 2 ]

4 голосов
/ 08 января 2012

Это действительно вопрос выбора наиболее подходящего подхода к моделированию при наличии нескольких целей, а не выбора между CPLEX или MATLAB.

Многокритериальное принятие решений - это целое подполе само по себе. Взгляните на: http://en.wikipedia.org/wiki/Multi-objective_optimization.

После того, как вы определились с подходом и сформулировали свою проблему (либо путем объединения ваших нескольких целей в взвешенную, либо в виде серии линейных программ), любой инструмент сделает эту работу за вас.

Поскольку вы знакомы с MATLAB, вы можете начать с его использования для решения ряда линейных программ (подход целевого программирования). На этой странице Mathworks есть несколько примеров с пошаговыми подробностями: http://www.mathworks.com/discovery/multiobjective-optimization.html, чтобы начать работу.

0 голосов
/ 08 августа 2012

Может ли cplex решить мультиобъективный тип Парето? Все, что я знаю, - это то, что он может решить простое программирование целей путем определения лексикографических объектов или использует взвешенную сумму для постепенного изменения весов с помощью информации о чувствительности и «перечисляет» фронт Парето, который сильно зависит от весов и выглядит очень субъективно.

Вы можете сослаться здесь как на то, как cplex решает би-объективный, что кажется нехорошим.

Для истинного способа Парето, который включает в себя ранжирование, я знаю, что только некоторые варианты GA могут сделать как NSGA-II.

...