constraint-programming - 在 ojAlgo 中显示所有可能的解决方案
问题描述
问题:是否可以调整上述内容以产生所有可能的结果而不是优化结果。
详细信息:给定一组装甲数据,我想生成一组满足我的约束的组合。
Variable helm1 = model.addVariable("Helm 1").binary();
Variable helm2 = model.addVariable("Helm 2").binary();
Variable helm3 = model.addVariable("Helm 3").binary();
Variable arm1 = model.addVariable("Arm 1").binary();
Variable arm2 = model.addVariable("Arm 2").binary();
Variable arm3 = model.addVariable("Arm 3").binary();
Expression statA = model.addExpression().lower(0).weight(1);
Expression statB = model.addExpression().lower(0).weight(1);
Expression statC = model.addExpression().lower(0).weight(1);
//Lower Limit set for desired stat
Expression statD = model.addExpression().lower(2).weight(1);
// Limit number of helms you can equip
model.addExpression().upper(1).set(helm1,1).set(helm2,1).set(helm3,1);
model.addExpression().upper(1).set(arm1,1).set(arm2,1).set(arm3,1);
statA.set(arm1, 1);
statB.set(helm2, 1);
statB.set(helm3, 1);
statB.set(arm2, 1);
statC.set(helm1, 1);
statC.set(arm2, 1);
statC.set(arm3, 1);
statD.set(helm3, 3);
statD.set(arm1, 1);
Optimisation.Result result = model.maximise();
BasicLogger.debug(result);
注意:在推荐库之前,请注意库必须与 Android 兼容。
解决方案
答案:否 - ojAlgo 将输出 1(如果可以找到,则为最佳)解决方案。
推荐阅读
- php - 在 echo 中乘以一个值
- java - 创建名为“tilesViewResolver”的 bean 时出错
- docker - Docker覆盖网络,端口连接不在netstat中可见
- python - 如何在 Mac 中将 .py 转换为 .exe
- django - 如何在返回重定向中获取 pk 参数
- autodesk-forge - 使用 Forge Viewer 6.5.2 获取无效的投影矩阵和隐藏的自定义 THREE.js 对象
- airflow - 气流糟糕页面
- javascript - 从下拉列表中单击后量角器不会转到下一行
- php - 左连接两个表并获取第二个表中的记录数
- c# - 如何从 TFS 查询指定工作项的所有修订?