Нельзя использовать тип dvar float + для ограничения - PullRequest
0 голосов
/ 13 мая 2018

Я строю модель CPLEX OPL. Я нашел ошибку

Тип Не может использовать тип dvar float + для ограничения.

Форма этой переменной:

dvar float+     travel_time_p[plant][plant];

и ограничение:

forall(p1 in plant,p2 in plant : p1!=p2)
      travel_time_p[p1][p2] = (distance_p[p1][p2])/velocity ;

как я правильно пишу это ограничение. Заранее большое спасибо.

1 Ответ

0 голосов
/ 13 мая 2018

Чтобы выразить ограничение равенства, нужно использовать == вместо =. Так что вместо

forall(p1 in plant,p2 in plant : p1!=p2)
      travel_time_p[p1][p2] = (distance_p[p1][p2])/velocity ;

Можете ли вы попробовать

 forall(p1 in plant,p2 in plant : p1!=p2)
       travel_time_p[p1][p2] == (distance_p[p1][p2])/velocity ;

...