Как закодировать проблему минимизации с ограничениями и индексами в PSO в MATLAB? [closed]

У меня есть код GAMS, который представляет математическую модель, которая зависит от задержки (i, p) для каждой работы i и периода дня p. Итак, у меня есть индексы для представления задержки, и цель — минимизировать суммирование этих задержек.

Пример ограничений ..

Структура в GAMS:

constraint(this part means constraint covers each indice in this part)$(if condition structure)..
        (constraint function is here)

Пример ограничения модели:

*jobstart, delay: variables 
*readytime, distance_oven and speed_cookline: parameters

constraint1(i,j,u,p)$(param1(j,u)>0 and j=param2(i) and p = param3(i))..
     jobstart(i) = readytime(i) + (distance_oven(j,u)/(speed_cookline(j,u)))*3600 + delay1(i);

constraint2(i,i2,j,j2,u,u2)$(i<>k and j=param2(i) and n=param2(i2) and param1(j,u) = 1 and param1(j2,u2) = 1 and u=u2)..
     abs(jobstart(i) - jobstart(i2)) => 120

objective function: min sum(delay1(i,p))

Есть ли готовая структура для решения проблемы или мне нужно закодировать ее как эвристическую, а затем внедрить этот код в PSO?

* Я спросил об этом, потому что я определяю имитацию отжига для другой задачи, подходя к ней как эвристику, а затем применяю ее в моделировании отжига. Но это настолько исчерпывающее и неэффективное кодирование для управления ограничениями для назначенных случайных задержек в способе кодирования PSO.

Благодаря,

0

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *