• Tidak ada hasil yang ditemukan

ABSTRACT

2. LINGO 프로그램

. 개요

공급지(source) S1, S2에서 수요지(destination) D1, D2, D3, D4 등으로 물량을 수송할 때 총 수송비용을 최소화하는 문제를 대상으로 하여

LINGO 프로그램의 사용방법을 설명한다. 단위당 수송비용은 COST, 수

송량은 VOLUME으로 표현하고, 이들을 간단히 표로 나타내면 다음과

같다.

공급지 공급량

S1 20

S2 30

<표 7-5> 공급량 데이터

수요지 수요량

D1 10

D2 12

D3 8

D4 20

<표 7-6> 수요량 데이터

수요지

공급지 D1 D2 D3 D4

S1 1.0 0.8 1.2 1.5

S2 1.5 1.4 1.1 0.7

<표 7-7> 수송비용 데이터

. SET

LINGO 프로그램에서 유사한 객체들은 SET를 사용해서 표현하고 있

다. 예제에서 유사한 객체들은 공급지 및 수요지, 그리고 공급지에서 수요지로 수송되는 물량의 수송비용(LINKS)으로 나눌 수 있다 또한 공급지의 공급량, 수요지의 수요량을 생각할 수 있다. 공급량, 수요량, 수송비용 등은 주어진 값을 갖고 있는데, 이러한 값들을 속성이라 한 다. SET를 정의할 때 각 객체들의 이름과 함께 각 객체들의 이러한 속성을 동시에 정의해야 한다. 예제에서는 공급량의 속성을

CAPACITY, 수요량의 속성을 DEMAND, 수송비용의 속성을 COST와

VOLUME의 결합으로 정의하였다.

SET를 LINGO 프로그램으로 작성하면 다음과 같다.

SETS:

SOURCES / S1 S2/: CAPACITY;

DESTINATION / D1 D2 D3 D4/: DEMAND;

LINKS( SOURCES, DESTINATION): COST, VOLUME;

ENDSETS

. 목적함수/제약식

목적함수는 공급지에서 수요지로의 총 수송비용을 최소화하는 것으로 서 목적함수를 수식으로 표현하면 다음과 같다.

   ×    ×  

 ×    ×  

 ×   ×  

 ×    × 

···(7-13)

이것을 다시 간단하게 표현하면 다음과 같다.





×···(7-14)

이러한 수식은 <표 7-8>을 이용하여 LINGO 프로그램으로 전환할 수 있다.

수식 LINGO 프로그램

 MIN

 @SUM( LINKS( I, J)

 COST( I, J)

× *

 VOLUME( I, J)

<표 7-8> 목적함수의 LINGO 프로그램 변환

여기서 @SUM은 공급지 I에서 수요지 J로의 모든 수송비용 LINKS(I,

J)를 더하는 LINGO 명령어이다. 또한 목적함수를 LINGO 프로그램으로

작성하면 다음과 같다.

MIN = @SUM( LINKS( I, J): COST( I, J) * VOLUME( I, J))

한편 각 공급지에서 모든 수요지로 출하되는 총 물량은 항상 공급량 보다 작거나 같으므로, 이러한 관계를 수식으로 표현하면 다음과 같다.

≤      ···(7-15)

이러한 공급량에 대한 제약조건을 나타내는 수식은 <표 7-9>의 변환 관계를 이용하여 LINGO 프로그램으로 전환할 수 있다.

수식 LINGO 프로그램

    @FOR( SOURCES( I)

@SUM( DESTINATION( J)

 VOLUME( I, J)

× *

 CAPACITY( I)

<표 7-9> 공급량 제약조건의 LINGO 프로그램 변환

여기서 @FOR는 공급지 I에서 출하되는 모든 수송량을 표현하기 위한

LINGO 명령어이다. 공급지에 대한 제약조건을 LINGO 프로그램으로

작성하면 다음과 같다.

@FOR( SOURCES( I):

@SUM( DESTINATION( J): VOLUME( I, J)) <= CAPACITY( I));

한편 수요지로 들어오는 총 물량은 수요량과 같아야 하므로, 이러한 제약조건을 수식으로 표현하면 다음과 같다.

      (7-16)

이러한 수요량에 대한 제약조건은 <표 7-10>의 관계를 이용하여

LINGO 프로그램으로 전환할 수 있다.

수식 LINGO 프로그램

    @FOR( DESTINATION( J)

@SUM( SOURCES( I)

 VOLUME( I, J)

× *

 DEMAND( J)

<표 7-10> 수요량 제약조건의 LINGO 프로그램 변환

한편 수요지에 대한 제약조건을 LINGO 프로그램으로 작성하면 다음 과 같다.