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

고객지원

기술문의

CPLEX에서 min, max 값 찾는 함수 문의

  • 박하은
  • 2017.07.18
  • 조회수 2,070
안녕하세요? CPLEX 관련 문의 드립니다.
코드 작성 중에 제약식에서 최소값 또는 최대값을 찾는 함수를 적용하고 싶은데요, 그런 함수를 지원하는지 궁금합니다.

엑셀을 예로 들면
A < B 인 경우
min(A, B) = A
max(A, B) = B
값을 리턴하는 함수가 CPLEX에도 존재하는지 궁금합니다.

감사합니다.

댓글 6

  • 비회원2017-07-18
    1. A, B가 상수인 경우,
    IloMax, IloMin 함수를 이용하시면 됩니다.

    2. A, B가 변수인 경우,
    CPLEX의 기본적형식인 1차식의 표현이 아니기 때문에, 이런 제약식은 잘 사용하지 않습니다.
    (1차식 표현으로 모델링 하셔야합니다.)
    단, IloIfThen 이란 함수를 이용하여 표현은 가능하나, performance에 좋지 않은 형태의 제약입니다.
    아이콘삭제
  • 비회원2017-07-18
    앞의 답변 2번도 Concert API에서 가능합니다.
    즉, IloMax(변수A, 변수B) 및 IloMax(변수열)도 사용할 수 있습니다. -- 여기서 변수라 함은 IloNumVar, IloIntVar 를 말함.
    뿐만 아니라 IloMax(변수, 상수) 와 그 반대 등의 조합도 가능합니다.
    예제:
    IloIntVarArray x(env, 5, 0, 1000);
    IloNumVar y(env, -1000, 5000);
    IloNumVar z(env, -1000, 1000);

    IloMin(x) >= IloAbs(y);
    아이콘삭제
  • 비회원2017-07-18
    앞의 답변 2번도 Concert API에서 가능합니다.
    즉, IloMax(변수A, 변수B) 및 IloMax(변수열)도 사용할 수 있습니다. -- 여기서 변수라 함은 IloNumVar, IloIntVar 를 말함.
    뿐만 아니라 IloMax(변수, 상수) 와 그 반대 등의 조합도 가능합니다. 유사 함수로 IloMin, IloAbs 도 있습니다.
    예제:
    IloIntVarArray x(env, 5, 0, 1000);
    IloNumVar y(env, -1000, 5000);
    IloNumVar z(env, -1000, 1000);

    IloMax(x) >= IloAbs(y);
    아이콘삭제
  • 비회원2018-02-21
    1. A, B가 상수인 경우,
    IloMax, IloMin 함수를 이용하시면 됩니다.

    2. A, B가 변수인 경우,
    CPLEX의 기본적형식인 1차식의 표현이 아니기 때문에, 이런 제약식은 잘 사용하지 않습니다.
    (1차식 표현으로 모델링 하셔야합니다.)
    단, IloIfThen 이란 함수를 이용하여 표현은 가능하나, performance에 좋지 않은 형태의 제약입니다.
    아이콘삭제
  • 비회원2018-02-21
    2. A, B가 변수인 경우,
    CPLEX의 기본적형식인 1차식의 표현이 아니기 때문에, 이런 제약식은 잘 사용하지 않습니다.
    (1차식 표현으로 모델링 하셔야합니다.)
    단, IloIfThen 이란 함수를 이용하여 표현은 가능하나, performance에 좋지 않은 형태의 제약입니다.
    아이콘삭제
  • 비회원2018-02-21
    1. A, B가 상수인 경우,
    IloMax, IloMin 함수를 이용하시면 됩니다.
    아이콘삭제

댓글 입력