1

나는 C++로 코드를 작성하고 CPLEX를 호출하여이를 해결하려고합니다. 아주 좋은 해결책을 빨리 찾지 만, 그것을 개선하기 위해 오랜 시간이 걸립니다. 그래서 코드를 종료하기 위해 더 큰 값으로 간격을 설정하려면,이 내가 무엇을 사용 :cplex로 해결할 때 틈새를 설정하는 방법

cplex_model.setParam(EpGap, 0.01); 

하지만 컴파일러는 나에게 EpGap이 선언되지 않은 식별자입니다 없다는 오류를 제공합니다. 상대적인 격차의 기본 이름은 무엇입니까? EpGap 1 (1 %)이다

경우

답변

4

EpGap 클래스 내에 열거의 일부 IloCplex

cplex_model.setParam(IloCplex::EpGap, 0.01); 
+0

이로 인해 오류가 제거되었지만 코드가 내 gam보다 작아도 계속 실행됩니다! set cplex_model.setParam (IloCplex :: EpGap, 1); 하지만 현재 간격은 0.46 %이지만 여전히 실행 중입니다! – Anna

-1

cplex_model.setParam(IloCplex::EpGap, 0.01);는 그 이중성을 제공 찾은 다음 가능한 용액 간다 정확 1 % 이하의 갭이 있으므로 1 % 미만으로 떨어지면 중지해야합니다. 따라서 귀하의 경우 이중 갭> 1 %에서 0.43 %로 갈 수 있습니다!