필자는 IBM ILOG CPLEX Optimization Studio에서 모델링 된 선형 문제를 가지고있어 올바른 솔루션 즉 목표 값을 반환합니다. 이제java에서 ilog 결정 변수에 액세스하는 방법은 무엇입니까?
IloOplFactory.setDebugMode(false);
IloOplFactory oplF = new IloOplFactory();
IloOplErrorHandler errHandler = oplF.createOplErrorHandler(System.out);
IloOplModelSource modelSource = oplF.createOplModelSource("CDA_Welfare_Examination_sparse2.mod");
IloCplex cplex = oplF.createCplex();
IloOplSettings settings = oplF.createOplSettings(errHandler);
IloOplModelDefinition def=oplF.createOplModelDefinition(modelSource,settings);
IloOplModel opl=oplF.createOplModel(def,cplex);
String inDataFile = path;
IloOplDataSource dataSource=oplF.createOplDataSource(inDataFile);
opl.addDataSource(dataSource);
opl.generate();
opl.convertAllIntVars(); // converts integer bounds into LP compatible format
if (cplex.solve()){
}
else{
System.out.println("Solution could not be achieved, probably insufficient memory or some other weird problem.");
}
, 나는 자바에서 실제 의사 결정 변수 일치 [정합 가능한]를 액세스 할 수 싶습니다 시뮬레이션을 위해 나는 ILOG 모델 모델 파일과 나는 자바에서 모두 호출 데이터 파일을 사용합니다.
ILOG CPLEX 최적화 스튜디오에서나는 다음과 같은 nomenclatura 사용 : 자바에서
tuple bidAsk{
int b;
int a;
}
{bidAsk} Matchable = ...;
dvar float match[Matchable];
나는 다음과 같은 방법으로 목표 값에 액세스 (잘 작동) : 이제
double sol = new Double(opl.getSolutionGetter().getObjValue());
을 수행하는 방법 결정 변수 "match"에 액세스합니까? 지금까지 나는 시작했습니다
IloOplElement dVarMatch = opl.getElement("match");
그러나 나는 더 이상 얻을 수없는 것 같습니다. 도움말은 대단히 감사합니다! 고마워요!