1. 하나의 메인함수에서 여러개의 최적화 문제를 푸는 것은 가능하지만 일반적으로 하나의 문제를 구성하는 것이 구현상 오류가 적게 납니다.
단, 같은 모델을 파라미터나 데이터에 따라 조금 다르게 반복적으로 수행하고자 할때 모델을 호출하는 부분에 반복문을 걸어 구현하는 경우가 있는데요. 이때 주의하실 점은 Concert library의 메모리를 관리하는 env의 관리입니다.
IloEnv env; 모델 구현 env.end();
위와 같은 형태로 구현해야 메모리가 해제됩니다. 이때 env를 다시 사용하거나 메모리상 오류를 피하기 위해 다음과 같이 초기화를 넣는 게 보통입니다.
IloEnv env = IloEnv();
2. env.end(); 가 끝난 후에는 Ilo 환경과 관련된 메모리가 해제되기 때문에 문제의 결과를 cplex.getValue(변수); 형태로 가져올 수 없습니다. 따라서 env.end()를 수행하기 전에 Ilo 환경과 관련없는 일반 변수에 (double, int 등이 되겠죠.) 값을 복사하여 필요하시면 추후에 사용합니다.