我正在研究用于两层楼疏散模拟的 OPL 模型。该模型应该计算从各个节点疏散到出口的人流量,同时考虑容量和旅行时间等约束。但是,我遇到了模型无法提供任何解决方案的问题。
预期结果 我希望该模型能够计算在定义的时间范围内从起始节点到出口(E1 和 E2)的人流量,同时尊重所有约束。相反,它不返回任何可行的解决方案,并且求解器输出显示最短的处理时间,但没有指示任何进度。
你的模型可能不可行。 如果你说出你的限制,你可能会得到一些放松/冲突。
比如说
int nbKids=300;
float costBus40=500;
float costBus30=400;
dvar int+ nbBus40;
dvar int+ nbBus30;
minimize
costBus40*nbBus40 +nbBus30*costBus30;
subject to
{
ctAllKidsNeedToGo:
40*nbBus40+nbBus30*30>=nbKids;
ctMaxTotalBuses:
nbBus30+nbBus40<=7;
}
会在IDE中显示冲突和松弛
https://github.com/AlexFleischerParis/zooopl/blob/master/zooconflictandrelaxation.mod