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

고객지원

기술문의

lplex6.c 예제 질문입니다.

  • 이지혜
  • 2012.11.27
  • 조회수 1,948
저의 부족함에 잦은 질문하여 먼저 죄송합니다.

lplex6.c 예제를 해석하는 과정에서
먼저 cplex환경으로 초기화를 하고 문제를 생성하고 이런부분은 알겠습니다.
그런데 이 예제에서 궁긍적으로 해결하고자 하는
obj: x1 + 2x2 +3x3
st: -x1+x2+x3<=20
.................
end
부분의 최적해의 결과값은 단지 c언어 에서 빌드하는 것만으로도 확인이 가능한가요?
코딩 중간에 보면 fprintf 함수가 있어서 따로 파일에 저장되는 것같은데
그 파일이 확인이 되지 않아서 이부분이 궁금합니다.

또한 다른 문제를 해결하는 과정에서 C로 구현하고자 한다면
처음과 같ㅇ 초기화하고
문제를 생성하고 이러한 부분은 모두 같고
목적함수와 제약조건을 생성하는 부분 (행렬식으로 행과 열을 지정하는 부분)
만 수정하면 되는 건지 궁금합니다.

또한 populate 의미가 CPLEX 상에서는 어떠한 의미인지
궁금합니다.
바쁘신 와중에 정말 감사드립니다.

댓글 1

  • 김반2012-11-27

    안녕하세요.

    c 언어를 이용하는 방법은 수리모델을 구현해서 결과를 보는 방법중에 하나입니다.
    다른 프로그래밍 언어(C++, JAVA, C# 등)를 이용해서 할수도 있구요.
    물론, 해당 프로그래밍 언어에 대해서 기본적인 이해는 필요합니다.

    만약 처음 시작하는 단계라면, CPLEX Studio IDE 사용을 권해드리고 싶습니다. 물론, 해당 툴에 대해서도 기본적인 이해는 필요하지만, 다른 방법보다다 직관적이고, 학습하기가 용이합니다.

    1. 말씀하신 fprintf 부분은 파일에 출력이 아니라 실행창(Command 창)에 출력하는 부분입니다.
    2. populate 는 사용자가 정의한 함수의 이름이죠 (CPLEX 에서 제공하는것이 아니라 사용자가 새로 정의한 함수명) 원하시는데로 네이밍을 하시면 됩니다.
    3. 문제를 생성 하는부분은 기존 예제의 기본 포멧은 유지할수 있겠지만,
    변수, 제약조건, 목적식에 따라 달라지겠죠,
    개인적으로 c 언어보다는 c++ 이 해석하기가 나은것 같습니다.

    일단 해당 메뉴얼을 천천히 읽어보시기를 권해드립니다.
    아이콘삭제

댓글 입력