Я хочу сослаться на массив, используя значение, присвоенное параметру dvar. Однако вместо этого CPLEX выдал сообщение об ошибке - «CP не может извлечь выражение». Что я могу сделать, чтобы преодолеть ошибку?
Ниже приведены коды моей проблемы - назначение заданий на основе доступного времени сотрудников.
using CP;
{string} Employee = ...;
{string} Jobs = ...;
range EmpIDs = 0..card(Employee)-1;
{int} AvailSlot[EmpIDs] = ...;
range Slots = 1...10
dvar int Time[Jobs] in Slots;
dvar int Emp[Jobs] in EmpIDs;
subject to{
forall (x in Jobs) {
Time[x] in AvailSlot[Emp[x]];} //this constraints the assigned time slot for the job x to be one of the available time slots of the employee that is assigned with the same job x.
}
Заранее спасибо.