주메뉴 바로가기 본문 바로가기 하단 바로가기

고객지원

기술문의

lp 파일 opt 실행시 생기는 문제 문의

  • 정미경
  • 2011.11.03
  • 조회수 2,266
안녕하세요.
산업공학과 대학원에 재학중인 학생입니다.
졸업 논문을 위해 TPP(travelling purchaser problem) 변형 문제를 모델링하고
그에 맞게 lp파일 만들어서 CFLEX에 실행하였습니다.
여기서 문제가 발생했는데요.

제가 작성한 lp 파일의 변수들은 Y변수는 이진수, X변수는 정수 값을 가져야 해서,
각각 변수 조건에 이를 표시하고 opt 명령어로 실행하였는데, Row 'c2' infeasible, all entries at implied bounds.
라는 메시지와 함께, MIP - Integer infeasible,
Current MIP best bound is infinite 라는 메세지가 나옵니다.
c2라고 하면 두번째 제약식을 의미하는거 같은데, 이는 제가 문제에서 정한 구매요구량을 의미하며
문제에서 굉장히 중요한 제약식입니다.
근데 이와 동일한 문제도 X변수에 integer 조건을 빼고 opt 명령어를 실행하면
해를 찾아줍니다. 소수점 끝자리는 보이지 않지만 표면적으로는 정수입니다.
손으로 문제를 풀어보면, 최적해는 아닐지라도 분명 가능한 해는 있습니다.
제가 세운 모델에 관련된 모델식과 lp 파일 2버젼(X변수 integer 조건 포함과 비포함)
같이 첨부합니다. 무엇인 문제인지 알려주시면 정말정말 감사하겠습니다.
다운로드아이콘lp.zip

댓글 1

  • 유환주2011-11-08
    안녕하세요.
    저희 컨설턴트 한분이 알아냈습니다.
    요즘 이 포멧은 거의 사용하지 않는 관계로 답변이 늦었습니다.
    메뉴얼을 검색해서 아래와 같은 문구를 찾았습니다.

    To specify any of the variables as general integer variables, add a GENERAL section;
    to specify any of the variables as binary integer variables, add a BINARY section.

    따라서 정수변수는 INTEGER가 아니라 GENERAL 이더군요.
    테스트 해보니 결론적으로 INTEGER로 선언하면 BINARY로 인식합니다.

    예제 (아래 GENERAL 부분이 정수 변수를 선언한 부분) -------------
    Maximize
    obj: x1 + 2 x2 + 3 x3 + x4
    Subject To
    c1: - x1 + x2 + x3 + 10 x4 <= 20
    c2: x1 - 3 x2 + x3 <= 30
    c3: x2 - 3.5 x4 = 0
    Bounds
    0 <= x1 <= 40
    2 <= x4 <= 3
    General
    x4
    End
    아이콘삭제

댓글 입력