CPLEX: слишком много ошибок при запуске OPL - PullRequest
0 голосов
/ 29 марта 2019

Я новичок в CPLEX 12.8. Я пытаюсь запустить модель OPL, появляется 51 ошибка, в том числе «CPLEX не может извлечь выражение», «Индекс выходит за пределы массива» и заканчивается «Слишком много ошибок, которые заканчиваются на 50».

это некоторые части моей модели, которые показывают ошибки:

forall(p in plant, k1 in truck, k2 in truck, j1 in jobs, j2 in jobs)
  start_load[p][k1][j1]+load_time[k1][j1] <= start_load[p][k2][j2];
forall (k in truck,j in jobs)
      sum(p in plant,r in request,m in deliveries)
        x[p][r][m][k][j+1] <=
      sum(p in plant,r in request,m in deliveries)
        x[p][r][m][k][j] ;
forall(p in plant,r in request)
      travel_time_r[p][r] == (distance_r[p][r])/velocity ;

Мой .dat .mod находится здесь:

https://drive.google.com/open?id=18CVA8zTbPWrHXy5E2vHaLskuTcXeHNs-

Как я отлаживаю эту модель. Заранее спасибо.

EDITED

ct8 : forall(p1 in plant, p2 in plant, r in request, k in truck, j in jobs : j == j0)
      sum(m in deliveries : (j+1) in jobs)
        x[p1][r][m][k][j]*end_pour[k][j] <= arrive_plant[p2][k][j+1]+(base[p2][k]*travel_time_r[p][r]);
ct19 : forall(p1 in plant, p2 in plant, r1 in request, r2 in request,k in truck, j in jobs : j != j0)
        end_pour[k][j] <= 
      (sum(m1 in deliveries, m2 in deliveries : (j+1) in jobs)
        x[p1][r1][m1][k][j]*x[p2][r2][m2][k][j+1]*travel_time_r[p2][r1])+arrive_plant[p2][k][j+1];

1 Ответ

1 голос
/ 29 марта 2019

у вас есть некоторые границы, которые вы должны исправить.

Позвольте привести пример:

Вы написали

ct3 : forall (k in truck,j in jobs)
      sum(p in plant,r in request,m in deliveries)
        x[p][r][m][k][j+1] <=
      sum(p in plant,r in request,m in deliveries)
        x[p][r][m][k][j] ;

но лучше написать

ct3 : forall (k in truck,j in jobs)
      sum(p in plant,r in request,m in deliveries:(j+1) in jobs)
        x[p][r][m][k][j+1] <=
      sum(p in plant,r in request,m in deliveries)
        x[p][r][m][k][j] ;

1011 * привет *

...