cplex - 指导我写一个容量约束
问题描述
我正在尝试使用现有的资源约束项目调度问题可用的 OPL 示例添加更多约束。这里我附上 RCPSP 问题的示例文件。目前在这个示例问题中,我可以根据资源容量启动尽可能多的任务。我想对间隔变量中执行的最大任务数添加一个额外的约束,应该小于或等于 5。换句话说,我一次不能同时执行超过 5 个任务。
示例问题位于 OPL 中的示例/opl/sched_rcpsp
解决方案
你可以使用 cumul 函数。
在要阻止的主题之前,您可以写:
cumulFunction nbTasks =
sum(t in Tasks) pulse(itvs[t],1);
然后在要阻止的主题中添加:
nbTasks<=5;
推荐阅读
- spring-boot - 在 Spring Boot 中,我正在尝试创建另一个功能类似于 messages.property 的 .property 文件,这可能吗?
- node.js - MongoDB根据数据更新整个集合
- keras - 加载的模型返回随机结果
- javascript - 用 JavaScript 计算复选框的值
- kotlin - 带有大量协程的 Kotlin 应用程序被锁定
- rocketmq - RocketMQ消息发出延迟消息,此后一直没有消息
- java - 如何从另一个类中获取返回值
- angular - TypeError:uniqueId_1.default 不是使用 Jest 进行 Angular 单元测试的函数
- javascript - Ionic 的购买插件无法获取任何实体
- reactjs - 如何将 react-hook-form 的寄存器与 react-jhipster 的 ValidatedInput 一起使用