2016-07-16 1 views
0

지금 Gurobi를 사용하고 있지만 모델이 실행 불가능한 것으로 판명되므로 실수를했는지 확인하기 위해 모든 제약 조건을 인쇄하려고합니다. 각 제약 조건의 이름을 출력하는 방법에 대한 몇 가지 기능을 알고 있지만 제약 조건 자체 (수학 표현식)를 인쇄하는 최종 솔루션을 찾을 수 없습니다.Gurobi C++의 모든 제약 조건을 출력하는 방법은 무엇입니까?

GRBConstr *c=0; 
c = model.getConstrs(); 

for(int i=0;i<model.get(GRB_IntAttr_NumConstrs);++i){ 
    cout << c[i].get(GRB_StringAttr_ConstrName) << endl; 
} 

답변

3

모델을 디버깅하는 가장 좋은 방법은 모델 파일을 LP 형식으로 작성하는 것입니다.

model.update(); 
model.write("debug.lp"); 

그런 다음 여러분이 좋아하는 텍스트 편집기에서 파일 debug.lp을 검색 : 귀하의 예제에서 코드를 추가합니다.