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

고객지원

기술문의

Ilog opl 함수 관련입니다.

  • 최우혁
  • 2022.05.15
  • 조회수 563
안녕하세요.
Ilog cplex 문제 푸는 도중,
최적배치관련해서 모르는 게 있는데
2행 3열 형태의 공간에
물동량이 주어졌을 때 최소이동거리로 5개의 설비를 배치하는 문제에서
(2행2열 위치의 한 직사각형 공간에는 설비를 둘 수 없다는 조건)
이런 조건이 있을 때는 제약함수를 어떻게 설정해야 하나요?? 그러니까
int xsize = 3
int ysize=2 이렇게 두고 시작하잖아요
그런데 특정 한 공간은 비워둔 채 나머지 공간에 설비최적화배치를 할 때 해당공간음 제약식에서 어떻게 표현하나요….? 감사합니다

댓글 3

  • 비회원2022-05-16
    어느 수준까지 모델링을 완성하신지 확인 할순 없느나
    말씀주신 내용을 바탕으로 추정하면
    아래의 일반 제약을 선언하시고
    - res capa 제약
    - 물동 양 capa 제약 등,

    각 위치에 배치 여부를 나타내는 boolean변수를 지정하고 (2 X 3 size)
    BigM 기반 indicator 제약 을 추가한후

    회피 포지션에 대해 ind_var[x][y] == 0 의 형태로 입력하시면 되겠습니다.
    감사합니다.
    아이콘삭제
  • 비회원2022-05-17
    int xSize = 3;
    range xSet = 1..xSize;

    int ySize = 2;
    range ySet = 1..ySize;

    int NumSections = xSize*ySize;
    range Sections = 1..NumSections;

    이런 식으로 코드를 짰을 때는 (2,2)자리는 제외해야한다는 조건을 어떻게 쓰나요...?
    아이콘삭제
  • 비회원2022-05-23
    위부분은 데이터의 정의 부분이고.

    결정변수를 선언하신 후에 첫 답변처럼 결정변수에 대해 위와 같은 제약을 추가하시면됩니다.
    아이콘삭제

댓글 입력