1 / 27

정수계획법의 필요성

정수계획법의 필요성. 선형계획법은 분할성의 가정을 두고 있다 . 즉 모든 결정변수는 제약조건을 충족하고 음수가 아닌 한 어떠한 값도 가질 수 있다는 전제를 두고 있다 . 항공회사에서 여객기 구매계획을 위한 모형의 최적해가 B747 을 1 3/4 대 , Air Bus 400 을 2 1/3 대 구입하는 것이라면 이는 실행이 불가능한 답이다 .

makala
Download Presentation

정수계획법의 필요성

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 정수계획법의 필요성 • 선형계획법은 분할성의 가정을 두고 있다. 즉 모든 결정변수는 제약조건을 충족하고 음수가 아닌 한 어떠한 값도 가질 수 있다는 전제를 두고 있다. • 항공회사에서 여객기 구매계획을 위한 모형의 최적해가 B747을 1 3/4대, Air Bus 400을 2 1/3대 구입하는 것이라면 이는 실행이 불가능한 답이다. • 결정변수 값이 정수라야 실행이 가능한 경우에는 최적해가 정수가 된다는 것을 보장할 수 없는 선형계획법 대신에 정수를 보장하는 정수선형계획법(整數線形計劃法; integer linear programming: 이하 정수계획법이라 칭함)을 이용하여야 한다.

  2. 정수계획법의 복잡성 • 간단해 보이는 정수제약조건의 첨가로 인하여 제 3장에서 설명한 심플렉스법만으로는 최적해를 구할 수 없고 정수를 보장할 수 있는 해법을 추가로 사용하여야 한다. • 이렇게 추가로 사용하는 해법은 심플렉스법과 같이 효율적이지 못하기 때문에 정수계획법의 최적해를 구하는 데는 많은 시간이 소요된다. • 컴퓨터의 발달로 선형계획법의 경우에는 문제의 크기에 거의 제한을 받지 않고 있으나 정수계획법의 경우에는 변수의 수와 제약조건의 수가 100개 정도를 넘게되면 최적해를 구하기가 어렵다.

  3. 정수계획법의 해법 • 1958년에 R. E. Gomory가 처음으로 “cutting plain method”로도 불리는 Gomory법과 • A. H. Land와 A. C. Doig가 1960년에 개발한 분단탐색법(分段探索法; branch and bound method)이 정수를 유도하는 해법으로 사용되고 있다. • 컴퓨터가 발달한 요즈음에도 문제가 큰 경우에는 최적해를 구하는 대신 수용할 만한 선에서 만족해(satisfactory solution)를 구하여 활용하고 있는 실정으로 실무자들의 욕구를 충족시켜 주지 못하고 있다.

  4. 정수계획법의 분류 • 연속적변수(連續的變數; continuous variable) • 정수변수(整數變數; integer variable) • 일반정수변수(一般整數變數; general integer variable) • 이가정수변수(二價整數變數; bianry integer variable) • 전정수계획법(全整數計劃法; all or pure integer programming) • 혼합정수계획법(混合整數計劃法; mixed integer programming) • 전0-1이가정수계획법(all 0-1 integer programming) • 혼합0-1이가정수계획법(mixed 0-1 integer programming)

  5. 예제6-2 제일통운 • 제일통운에서는 16억 6,000만원의 자금을 확보하여 가격이 8,000만원인 A형과 6,000만원인 B형 특장차를 구매하려고 한다. A형 특장차로는 월 80만원, B형 특장차로는 월 70만원의 순이익을 얻을 수 있을 것으로 예상하고 있다. A형은 한 대당 월 12시간, B형은 월 20시간의 정비를 해야 할 것으로 예상하나 회사의 정비부에서 신규 구입하는 차량의 정비에 할애할 수 있는 시간은 월 380시간으로 추정하고 있다. 이익을 최대화하려면 두 종류의 차량을 몇 대씩 구입하여야 하는 가?

  6. 예제6-2의 정수계획모형

  7. 그래프를 이용한 해법 • 정수제약조건을 적용하지 않은 선형계획모형으로 가해영역을 찾고 등가이익선을 그려 최적해를 구한다. • 정수계획모형의 가능해는 선형계획모형의 가해영역내에 있어야 하고 정수여야 하므로 가해영역내에 있는 모든 점들이 아니라 x1과 x2의 좌표가 정수인 점들만이다. • 정수구성점(整數構成點; integer lattice point) • 등가이익선을 원점 방향으로 평행으로 옮겨 오면서 제일 먼저 만나는 정수구성점이 정수계획모형의 최적해가 된다.

  8. 정수계획법의 필요성

  9. 비분할성기회비용 • 선형계획모형의 최적해에서 Z=1,779 1/11이고, 정수계획모형의 최적해에서는 Z=1,750이다. 이 차이 29 1/11은 결정변수 값의 분할을 허용하지 않고 정수를 요구한 데 기인하므로 이를 비분할성기회비용(非分割性機會費用; opportunity cost of indivisibility)이라 한다.

  10. 분단탐색법 • 분단탐색법은 먼저 정수계획모형에서 정수제약을 제외한 선형계획모형의 최적해에서 2개의 분단제약조건(分段制約條件; branching constraint)을 도출한다. • 이 제약조건을 선형계획모형에 하나씩 추가한 2개의 확장선형계획모형(擴張線形計劃模型; augmented linear programming model)을 구축하여 최적해를 구하고, • 다시 분단제약조건을 도출하여 확장선형계획모형에 추가하여 최적해를 구하는 과정을 정수제약을 가진 결정변수 값이 정수가 될 때까지 반복하는 방법이다.

  11. (1) 정수제약이 없는 선형계획법모형(LP relaxation)의 최적해를 구한다. LP relaxation의 최적해가 정수계획법모형의 정수제약을 충족하면 이는 정수계획모형의 최적해다. LP relaxation의 최적해가 정수계획법모형의 정수제약을 충족하지 못하면 Z* (최적해후보의 목적함수값) = 0으로 설정하고 (2)단계로 넘어간다. • (2) 정수제약을 가진 결정변수 xj가 모두 정수가 아니면 아래와 같이 정수부분(kj)과 소수부분(fj)으로 나누어 나타낼 수 있다. xj = kj + fj

  12. 이 중에서 임의로 하나를 분단변수(分段變數; branching variable)로 선택하여(일반적으로 소수부분 fj가 가장 큰 변수를 선택) • 다음과 같은 2개의 분단제약조건을 도출하고 선형계획모형에 각각 하나씩 추가하여 2개의 확장선형계획모형을 구축한다.

  13. (3) (2)에서 유도한 2개의 확장선형계획모형(ALP)의 최적해를 구하고 폐기되지 않은 ALP를 대상으로 다음과 같은 절차를 따른다. • ① 모든 fj의 값이 0인 모형은 분단을 중단하고 Z*(현재 등록되어 있는 최적해후보의 목적함수값)와 Z값을 비교하여 Z >= Z*이면 Z*를 갱신하고 Z < Z*이면 폐기(fathoming) • ② 실행불능해(infeasible solution)인 모형은 분단을 중단하고 폐기 • ③ 모든 fj의 값이 0이 아닌 모형에서 Z < Z* 이면 폐기(fathoming)함. Z >= Z* 을 만족하는 모형 중 Z의 값이 가장 큰 모형을 선택함. 선택한 모형에 대해서 (2)와 같은 방법으로 분단을 계속함.

  14. (4) 더 이상 분단할 확장선형계획모형이 없을 때까지 (2)와 (3)을 반복한다. • 모든 분단이 끝나면 원래의 정수계획모형의 최적해 대상으로 남겨둔 해를 비교하여 목적함수 값이 가장 큰(최소화문제의 경우 가장작은) 확장선형계획모형의 최적해가 원래의 정수계획모형의 최적해가 된다.

  15. 만족해 • 만족해를 구하는 방법중에서 가장 많이 활용되는 방법이 소수정리법과 최대오차율 기준이다.

  16. 소수정리법 • 정수제약 없이 선형계획모형으로 구한 결정변수 중 최적해에 영향을 많이 미치는 일부의 변수만을 소수정리 할 변수로 선택하고 정수제약을 갖는 나머지 변수들의 소수값은 모두 절삭한다. • 소수정리할 변수로 n개를 선정하면 소수정리방법은 2n개가 된다는 것을 고려하여 통제가능한 범위내에서 변수를 선정하여야 한다. 2n 개의 소수정리방법을 모두 열거하여 가능해여부를 확인하고 가능해의 목적함수 값을 비교하여 목적함수 값이 가장 큰(최소화문제의 경우 가장 작은) 해를 최적근사치(最適近似値; near optimal value)로 한다.

  17. 최대오차율 기준

  18. 분단탐색법으로 해를 구하는 과정에서 분단정수계획모형의 최적해가 사전에 정한 최대오차율 허용한계 내에 있으면 최적근사치로서 만족하고 분단을 중단하는 방법이다. • 정수계획모형의 최적해를 찾지 못하는 데 따른 오차의 정도를 나타내는 것을 실질오차율(實質誤差率; actual percentage error)이라 한다. • 실질오차율은 위의 공식에서 선형계획모형의 최적해 목적함수 값 대신에 정수계획모형의 최적해 목적함수 값을 사용하기 때문에 최대오차율보다는 클 수가 없다. • 그러나 실질오차율은 정수계획법의 최적해를 찾기 전에는 파악할 수 없다. 최대오차율 허용한도의 기준은 없으나 10%이내에서 정하여 만족해를 찾고 있다.

More Related