1
我想在我的android應用程序中使用cpl-java構建新的線性編程模型。示例如何使用clp-java
我的功能是E + T + U + URAM,我希望儘量減少這個功能,但我不知道如何使用這個庫以及如何添加我的限制, 我的約束:
E<0 and T<0 and U<0.25 and URam<0.25
這是我的代碼
com.quantego.clp.CLP model = new CLP();
CLPVariable energy = model.addVariable().free();
CLPVariable executionTime = model.addVariable().free();
CLPVariable cpuUsage = model.addVariable().free();
CLPVariable ramUsage = model.addVariable().free();
CLPExpression expression = model.createExpression().add(energy).add(executionTime).add(cpuUsage)
.add(ramUsage);
System.out.println("expression : " + expression.toString());
TreeMap<CLPVariable, Double> energyMap = new TreeMap<>();
energyMap.put(energy, 5.1);
TreeMap<CLPVariable, Double> exeTimeMap = new TreeMap<>();
exeTimeMap.put(executionTime, 5.0);
TreeMap<CLPVariable, Double> cpuusageMap = new TreeMap<>();
cpuusageMap.put(cpuUsage, 0.2);
TreeMap<CLPVariable, Double> ramusageMap = new TreeMap<>();
ramusageMap.put(ramUsage, 0.9);
model.addConstraint(energyMap, CLPConstraint.TYPE.LEQ, 0);
model.addConstraint(exeTimeMap, CLPConstraint.TYPE.LEQ, 0);
model.addConstraint(cpuusageMap, CLPConstraint.TYPE.LEQ, 0.25);
model.addConstraint(ramusageMap, CLPConstraint.TYPE.LEQ, 0.25);