SlideShare a Scribd company logo
1 of 6
Download to read offline
- 1 -
Paper Review: Forrest J. J. H., and J. A. Tomlin (1972)
고려대학교 컴퓨터학과 박사과정 유재성
리뷰한 페이퍼: Forrest J. J. H., and J. A. Tomlin, "Updating Triangular Factors of the Basis to
Maintain Sparsity in the Product Form Simplex Method,“
Mathematical Programming, 2 (1972) pp. 263-278, 1972.
1. 개요
min.   
sub. to.  ≤ ,  ≥ 
단,     ⋯  ,  






  ⋯ 
  ⋯ 
⋯ ⋯ ⋯ ⋯
  ⋯ 
,     ⋯  
,     ⋯  
그리고 는 의 basis matrix.
위 문제에 대해 simplex method를 이용하여 풀이를 한다고 할 때,  혹은  
에 관한 연산이 대부
분을 차지한다. 따라서, 이  
을 조금이라도 효율적으로 연산하기 위한 방법이 연구되었는데, 특히 
를 LU분해하는 방법에 대한 연구가 있었으며, Forrest and Tomlin의 연구도 그러한 연구 중 하나이다.
2. Forrest and Tomlin과 관련된 몇 가지 연구
나  
를 LU분해하여   로 표현할 수 있다고 하자. 는 lower trangular matrix, 는 upper
trangular matrix이다.
2.1. BTRAN과 FTRAN
우선 BTRAN(backward transformation), FTRAN(forward transformation)이라는 연산이 있는데, 이들은 다음과 같다.
① BTRAN
Simplex multiplier의 계산은 
 

 
로 할 수 있고, 를 LU분해한다면 이는 다음과 같이 표현된다.

 

 
 


 


 
여기에서 


 
라고 두면, 

 
가 되고, 그러면 이 식은 연립1차방정식인데, 삼각형태
의 연립1차방정식처럼 된다. 예를 들면 다음과 같은 것이다.
  
    
      
이런 식은, 바로   을 구하고, 다음 , 를 차례로 치환하여 구하는 방식으로 쉽게 해를 구
할 수 있다. 이렇게 구해진 를 대입하면, 
 
 
이 되고, 기는 
  
가 되는데, 이 또한 삼각
형태인 연립1차방정식이다. 따라서, 이것 역시 쉽게 해를 구할 수 있게 된다.
② FTRAN
진입 column의 수정은 ㆍ   
ㆍ  
ㆍ  
 
ㆍ로 구할 수 있다. 이 식은 BTRAN
과 같이, 먼저    
ㆍ에서 쉽게 를 구한 후, 다시 ㆍ  
를 쉽게 구할 수 있게 된다.
이처럼 LU분해를 사용할 경우, 단순한 치환으로 해를 구할 수 있게 된다. 그런데 페이퍼를 보면서
- 2 -
다음과 같은 의문점이 들었다.
의문점 1. 를 직접 사용할 때는 메모리에 만 저장하면 되지만, LU분해를 하면, 과 를 일
단 구해야하므로 더 많은 계산이 요구되지 않을까?
의문점 2. 또한,  뿐만 아니라 과 를 각각 저장하고 있어야 하므로, 더 많은 기억공간이
요구되지 않을까?
의문점 3. 과 를 이용하여 연산을 한 것과, 그냥 로 계산할 때와 결과가 달라지지는 않을까?
우선 LU 분해가 이루어진다면,  ×  크기의 행렬에 대한 원소를 전부 사용하는 것이 아닌, 그 절반
만 사용하는 셈이 되므로, 의문점 1.은 쉽게 해결됨을 어렵지 않게 예상할 수 있었다. 다만 의문점 2.와
의문점 3.에 대해서는 개인적으로 쉽게 예상되지 않았는데, 따라서 이에 대해 계속 자세히 살펴보았다.
2.2. Gaussian Elimination과 LU분해
의문점 3에 대해서는 Gaussian Elimination과 LU분해와의 관계를 파악하면 해결될 것으로 판단하였다.
따라서 논문에서 이만큼 소개하고 있지는 않지만, 참고문헌 [1]을 참고하여 다음과 같이 정리하여 보았다.
우선 행렬 를  






  ⋯ 
  ⋯ 
⋯ ⋯ ⋯ ⋯
  ⋯ 
이라고 하고,  






ㆍ



 ⋯ 
 ⋯ 
⋯
 ⋯ 


,  





⋯
⋯




ㆍ



 ⋯ 
 ⋯ 
 ⋯ 
⋯
 ⋯ 


과 같다고 하자.
그러면  






 



⋯ 

  

⋯ 

  ⋯ ⋯ ⋯
⋯ ⋯ ⋯ ⋯ ⋯
  

⋯ 

이 된다.
이렇게 를 만들면, 결국  ⋯  







⋯ 
 ⋯

 가 된다.
따라서,  ⋯    
이라고 두면, 결국   로 표현될 수 있다.
예를 들어,  






  
  
  
로 주어졌다고 하자. LU 분해는 유니크한 , 가 나오지 않을 수 있는데,
 





  
  
  
,  





  
  
  
로 구해지기도 하고,
 






  
  
  
,  






  
  
  
로 구해지기도 한다.
2.3. Bartels and Golub의 방법
Forrest and Tomlin의 방법을 이야기할 때, 앞서서 Bartels and Golub의 방법[2]을 먼저 파악하지
않을 수 없는 것 같다. Forrest and Tomlin의 소개에 따르면, 그들의 방법보다 앞서서 LU분해를 이용
하여 simplex method 풀이를 시도한 연구인 것으로 보인다.
우선 를  
  로 표시된다고 하자. 그런데 의 번째 열을 ㆍ로 교체하여 를 만들고, 이
에 대응하는 과 를 구하고자 한다. 그러면  
과 가 어떻게 변할까?
다시 말해서,   ㆍ ⋯ ㆍ  ㆍ ㆍ  ⋯ ㆍ이라고 하자. 그러면
    
ㆍ ⋯  
ㆍ   
ㆍ  
ㆍ  ⋯  
ㆍ
 ㆍ ⋯ ㆍ   
ㆍ ㆍ  ⋯ ㆍ
- 3 -
식 (a)를 그림으로 표현하면 위와 같으며,  
ㆍ에서 에 해당하지 않는 부분만 제거하면 가 된다.
이제  의 번째 열을 맨 끝으로 옮긴 행렬을 라고 하면,
  ㆍ⋯ ㆍ  ㆍ  ⋯ ㆍ  
ㆍ
이 행렬을 그림으로 표현하면 오른쪽과 같고, upper trangular matrix
와 비슷하지만, 진정한 upper trangular matrix가 되려면 초록색 부분을
없애야 한다. 새로 만들 upper triangular marix를 라고 칭하도록 하자.
우선, 의 번째 열을 다음과 같이 upper triangular matrix로 만들려고 한다.






 
⋯
 
  

⋯

⇒






  
⋯
  

⋯

이것은 번째 행에   
  
을 곱하여 번째 행에 합하면 된다. 그런데 여기에서 numerical
stability1)을 구하기 위해서는  
  
 을 유지할 필요가 있다고 한다. 따라서,
  ≥   이면, 그대로      이면 번째 행과 번째 행을 교환하
여 번째의 원소를 소거한다. 이것은 행렬 에 다음과 같은 행렬  을 곱함으로써 수행된다.
  







⋯ 

 

 ⋯

, 단





  


 

 
  
      
  
if   ≥   
  


 

 
  
       
 
if      
그러면, 가 upper triangular marix가 된다고 한다. 가 계산된 것이다.
그런데 Forrest and Tomlin은 Bartels and Golub의 방법이 large scale sparse linear program에 대해서는
구현하는 데 어려움이 있다고 소개하고 있다.2) 특히, 위 초록색 부분이 0이 되어야 하는데, non-zero가 될
염려가 많아서, 의 크기가 커지는 문제가 있다. 의문점 2.에 대해 더 해결해야할 점이 남아있는 것이다.
1) 사실 이 용어에 대해 완벽하게 이해한 것은 아니지만, 앞선 의문점 중 하나인 의문점 3.에 대한 문제가 없음을
보장한다는 의미로 이해하였다.
2) Forrest와 Tomlin의 논문 264페이지 7째 줄부터, “however, there are some practical difficulties in
implementing their method in a system designed for large scale sparse linear programs.”
- 4 -
3. Forrest and Tomlin의 방법
Bartels and Golub의 방법은 를 만드는 과정에서 나 에 non-zero인 부분을 만든다. (앞선 예
에서는 “초록색 부분”) 그러나 Forrest and Tomlin은 이 부분을 아예 만들지 않으려는 방법이다.
우선, 위 그림에서 파란색 행은 번째 행이며, 초록색 부분은 전부 0이다. 초록색 부분을 
라고 두
고, 
와 를 다음과 같다고 하자.

   ⋯    ⋯  , 
 

,  







⋯
    ⋯ 
 ⋯

 
그러면, 
   

  
  

  
여기서, 
는 초록색 부분이 없어진 행렬이라고 할 수 있다. 그리고 이 행렬에 대해 열교환을 하
면 다음과 같은 모습이 된다.
⇒
이렇게 non-zero인 원소를 줄임으로써 Bartels and Golub의 방법에 비해 의문점 2.에 대한 갈증을 해
소한 방법이다. zero인 원소가 많아지면, sparse-matrix 형태로 행렬을 줄여서 메모리나 주기억장치에 저
장할 수 있을 것이기 때문이다.
다만, numerical stability에 대해서는 언급하지 않고 있고, computational results도 large problems에
대해 결과에 더 빨리 수렴한다는 점을 강조하고 있다. 다만, 일단 “suitable”, “adequate”와 같은 표현을
쓰며 결과에 “충분히”, “적당히” 수렴함을 Forrest and Tomlin은 어필하고 있다.
- 5 -
4. Simplex Method, Bartels and Golub, Forrest and Tomlin의 비교[3]
Simplex method와 revised simplex method, Bartels and Golub의 방법, Forrest and Tomlin의 방법을 비교해보면 다음과 같다.
순서 Simplex Method Revised Simplex Method Bartels and Golub Forrest and Tomlin
1 Determine the current basis .    
   
 
   


 

2
Choose  to enter the basis
based on the greatest cost
contribution.
    ㆍ 

  min 
    
 

  min  
    


 

  min 
3
If  cannot decrease the cost,
 is optimal solution.
If  ≧ ,  is optimal solution. If  ≧ ,  is optimal solution. If  ≧ ,  is optimal solution.
4
Determine  that first exits
the basis (becomes zero) as 
increases.
   
ㆍ
 

 min

   
  
ㆍ 
ㆍ
 

 min 

   
  
ㆍ


 
ㆍ
 

 min

   
5
If  can decrease without
causing another variable to
leave the basis, the solution is
unbounded.
If  ≦  for all , the solution
is unbounded.
If  ≦  for all , the solution
is unbounded.
If  ≦  for all , the solution
is unbounded.
6 Update dictionary. Update  
. Update 
and  
.
Update 
, creating a row
factor as necessary.
If there are too many factors
completely refactor the basis.
- 6 -
리뷰한 페이퍼 이외의 참고문헌
[1] http://www.personal.psu.edu/jhm/f90/lectures/lu.html
[2] R. H. Bartels and G. H. Golub (1969) "The simplex method of linear programming using LU
decomposition," Communications ACM 12, 266-268, 275-278.
[3] http://staff.ulsu.ru/semushin/_index/_pilocus/_gist/docs/mycourseware/9-linprogram/6-tools/simplex-DemoCD/_SIMPLEX-DemoTools/teor3/chapter2.htm

More Related Content

Featured

Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
Kurio // The Social Media Age(ncy)
 

Featured (20)

AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
 
Skeleton Culture Code
Skeleton Culture CodeSkeleton Culture Code
Skeleton Culture Code
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
 
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
 
12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work
 
ChatGPT webinar slides
ChatGPT webinar slidesChatGPT webinar slides
ChatGPT webinar slides
 
More than Just Lines on a Map: Best Practices for U.S Bike Routes
More than Just Lines on a Map: Best Practices for U.S Bike RoutesMore than Just Lines on a Map: Best Practices for U.S Bike Routes
More than Just Lines on a Map: Best Practices for U.S Bike Routes
 

Forrest and tomlin

  • 1. - 1 - Paper Review: Forrest J. J. H., and J. A. Tomlin (1972) 고려대학교 컴퓨터학과 박사과정 유재성 리뷰한 페이퍼: Forrest J. J. H., and J. A. Tomlin, "Updating Triangular Factors of the Basis to Maintain Sparsity in the Product Form Simplex Method,“ Mathematical Programming, 2 (1972) pp. 263-278, 1972. 1. 개요 min.    sub. to.  ≤ ,  ≥  단,     ⋯  ,           ⋯    ⋯  ⋯ ⋯ ⋯ ⋯   ⋯  ,     ⋯   ,     ⋯   그리고 는 의 basis matrix. 위 문제에 대해 simplex method를 이용하여 풀이를 한다고 할 때,  혹은   에 관한 연산이 대부 분을 차지한다. 따라서, 이   을 조금이라도 효율적으로 연산하기 위한 방법이 연구되었는데, 특히  를 LU분해하는 방법에 대한 연구가 있었으며, Forrest and Tomlin의 연구도 그러한 연구 중 하나이다. 2. Forrest and Tomlin과 관련된 몇 가지 연구 나   를 LU분해하여   로 표현할 수 있다고 하자. 는 lower trangular matrix, 는 upper trangular matrix이다. 2.1. BTRAN과 FTRAN 우선 BTRAN(backward transformation), FTRAN(forward transformation)이라는 연산이 있는데, 이들은 다음과 같다. ① BTRAN Simplex multiplier의 계산은       로 할 수 있고, 를 LU분해한다면 이는 다음과 같이 표현된다.                 여기에서      라고 두면,     가 되고, 그러면 이 식은 연립1차방정식인데, 삼각형태 의 연립1차방정식처럼 된다. 예를 들면 다음과 같은 것이다.                이런 식은, 바로   을 구하고, 다음 , 를 차례로 치환하여 구하는 방식으로 쉽게 해를 구 할 수 있다. 이렇게 구해진 를 대입하면,      이 되고, 기는     가 되는데, 이 또한 삼각 형태인 연립1차방정식이다. 따라서, 이것 역시 쉽게 해를 구할 수 있게 된다. ② FTRAN 진입 column의 수정은 ㆍ    ㆍ   ㆍ     ㆍ로 구할 수 있다. 이 식은 BTRAN 과 같이, 먼저     ㆍ에서 쉽게 를 구한 후, 다시 ㆍ   를 쉽게 구할 수 있게 된다. 이처럼 LU분해를 사용할 경우, 단순한 치환으로 해를 구할 수 있게 된다. 그런데 페이퍼를 보면서
  • 2. - 2 - 다음과 같은 의문점이 들었다. 의문점 1. 를 직접 사용할 때는 메모리에 만 저장하면 되지만, LU분해를 하면, 과 를 일 단 구해야하므로 더 많은 계산이 요구되지 않을까? 의문점 2. 또한,  뿐만 아니라 과 를 각각 저장하고 있어야 하므로, 더 많은 기억공간이 요구되지 않을까? 의문점 3. 과 를 이용하여 연산을 한 것과, 그냥 로 계산할 때와 결과가 달라지지는 않을까? 우선 LU 분해가 이루어진다면,  ×  크기의 행렬에 대한 원소를 전부 사용하는 것이 아닌, 그 절반 만 사용하는 셈이 되므로, 의문점 1.은 쉽게 해결됨을 어렵지 않게 예상할 수 있었다. 다만 의문점 2.와 의문점 3.에 대해서는 개인적으로 쉽게 예상되지 않았는데, 따라서 이에 대해 계속 자세히 살펴보았다. 2.2. Gaussian Elimination과 LU분해 의문점 3에 대해서는 Gaussian Elimination과 LU분해와의 관계를 파악하면 해결될 것으로 판단하였다. 따라서 논문에서 이만큼 소개하고 있지는 않지만, 참고문헌 [1]을 참고하여 다음과 같이 정리하여 보았다. 우선 행렬 를           ⋯    ⋯  ⋯ ⋯ ⋯ ⋯   ⋯  이라고 하고,         ㆍ     ⋯   ⋯  ⋯  ⋯    ,        ⋯ ⋯     ㆍ     ⋯   ⋯   ⋯  ⋯  ⋯    과 같다고 하자. 그러면              ⋯       ⋯     ⋯ ⋯ ⋯ ⋯ ⋯ ⋯ ⋯ ⋯     ⋯   이 된다. 이렇게 를 만들면, 결국  ⋯          ⋯   ⋯   가 된다. 따라서,  ⋯     이라고 두면, 결국   로 표현될 수 있다. 예를 들어,                  로 주어졌다고 하자. LU 분해는 유니크한 , 가 나오지 않을 수 있는데,                 ,                 로 구해지기도 하고,                  ,                  로 구해지기도 한다. 2.3. Bartels and Golub의 방법 Forrest and Tomlin의 방법을 이야기할 때, 앞서서 Bartels and Golub의 방법[2]을 먼저 파악하지 않을 수 없는 것 같다. Forrest and Tomlin의 소개에 따르면, 그들의 방법보다 앞서서 LU분해를 이용 하여 simplex method 풀이를 시도한 연구인 것으로 보인다. 우선 를     로 표시된다고 하자. 그런데 의 번째 열을 ㆍ로 교체하여 를 만들고, 이 에 대응하는 과 를 구하고자 한다. 그러면   과 가 어떻게 변할까? 다시 말해서,   ㆍ ⋯ ㆍ  ㆍ ㆍ  ⋯ ㆍ이라고 하자. 그러면      ㆍ ⋯   ㆍ    ㆍ   ㆍ  ⋯   ㆍ  ㆍ ⋯ ㆍ    ㆍ ㆍ  ⋯ ㆍ
  • 3. - 3 - 식 (a)를 그림으로 표현하면 위와 같으며,   ㆍ에서 에 해당하지 않는 부분만 제거하면 가 된다. 이제  의 번째 열을 맨 끝으로 옮긴 행렬을 라고 하면,   ㆍ⋯ ㆍ  ㆍ  ⋯ ㆍ   ㆍ 이 행렬을 그림으로 표현하면 오른쪽과 같고, upper trangular matrix 와 비슷하지만, 진정한 upper trangular matrix가 되려면 초록색 부분을 없애야 한다. 새로 만들 upper triangular marix를 라고 칭하도록 하자. 우선, 의 번째 열을 다음과 같이 upper triangular matrix로 만들려고 한다.         ⋯       ⋯  ⇒          ⋯     ⋯  이것은 번째 행에       을 곱하여 번째 행에 합하면 된다. 그런데 여기에서 numerical stability1)을 구하기 위해서는       을 유지할 필요가 있다고 한다. 따라서,   ≥   이면, 그대로      이면 번째 행과 번째 행을 교환하 여 번째의 원소를 소거한다. 이것은 행렬 에 다음과 같은 행렬  을 곱함으로써 수행된다.           ⋯       ⋯  , 단                             if   ≥                           if       그러면, 가 upper triangular marix가 된다고 한다. 가 계산된 것이다. 그런데 Forrest and Tomlin은 Bartels and Golub의 방법이 large scale sparse linear program에 대해서는 구현하는 데 어려움이 있다고 소개하고 있다.2) 특히, 위 초록색 부분이 0이 되어야 하는데, non-zero가 될 염려가 많아서, 의 크기가 커지는 문제가 있다. 의문점 2.에 대해 더 해결해야할 점이 남아있는 것이다. 1) 사실 이 용어에 대해 완벽하게 이해한 것은 아니지만, 앞선 의문점 중 하나인 의문점 3.에 대한 문제가 없음을 보장한다는 의미로 이해하였다. 2) Forrest와 Tomlin의 논문 264페이지 7째 줄부터, “however, there are some practical difficulties in implementing their method in a system designed for large scale sparse linear programs.”
  • 4. - 4 - 3. Forrest and Tomlin의 방법 Bartels and Golub의 방법은 를 만드는 과정에서 나 에 non-zero인 부분을 만든다. (앞선 예 에서는 “초록색 부분”) 그러나 Forrest and Tomlin은 이 부분을 아예 만들지 않으려는 방법이다. 우선, 위 그림에서 파란색 행은 번째 행이며, 초록색 부분은 전부 0이다. 초록색 부분을  라고 두 고,  와 를 다음과 같다고 하자.     ⋯    ⋯  ,     ,          ⋯     ⋯   ⋯    그러면,                 여기서,  는 초록색 부분이 없어진 행렬이라고 할 수 있다. 그리고 이 행렬에 대해 열교환을 하 면 다음과 같은 모습이 된다. ⇒ 이렇게 non-zero인 원소를 줄임으로써 Bartels and Golub의 방법에 비해 의문점 2.에 대한 갈증을 해 소한 방법이다. zero인 원소가 많아지면, sparse-matrix 형태로 행렬을 줄여서 메모리나 주기억장치에 저 장할 수 있을 것이기 때문이다. 다만, numerical stability에 대해서는 언급하지 않고 있고, computational results도 large problems에 대해 결과에 더 빨리 수렴한다는 점을 강조하고 있다. 다만, 일단 “suitable”, “adequate”와 같은 표현을 쓰며 결과에 “충분히”, “적당히” 수렴함을 Forrest and Tomlin은 어필하고 있다.
  • 5. - 5 - 4. Simplex Method, Bartels and Golub, Forrest and Tomlin의 비교[3] Simplex method와 revised simplex method, Bartels and Golub의 방법, Forrest and Tomlin의 방법을 비교해보면 다음과 같다. 순서 Simplex Method Revised Simplex Method Bartels and Golub Forrest and Tomlin 1 Determine the current basis .                    2 Choose  to enter the basis based on the greatest cost contribution.     ㆍ     min            min               min  3 If  cannot decrease the cost,  is optimal solution. If  ≧ ,  is optimal solution. If  ≧ ,  is optimal solution. If  ≧ ,  is optimal solution. 4 Determine  that first exits the basis (becomes zero) as  increases.     ㆍ     min         ㆍ  ㆍ     min          ㆍ     ㆍ     min      5 If  can decrease without causing another variable to leave the basis, the solution is unbounded. If  ≦  for all , the solution is unbounded. If  ≦  for all , the solution is unbounded. If  ≦  for all , the solution is unbounded. 6 Update dictionary. Update   . Update  and   . Update  , creating a row factor as necessary. If there are too many factors completely refactor the basis.
  • 6. - 6 - 리뷰한 페이퍼 이외의 참고문헌 [1] http://www.personal.psu.edu/jhm/f90/lectures/lu.html [2] R. H. Bartels and G. H. Golub (1969) "The simplex method of linear programming using LU decomposition," Communications ACM 12, 266-268, 275-278. [3] http://staff.ulsu.ru/semushin/_index/_pilocus/_gist/docs/mycourseware/9-linprogram/6-tools/simplex-DemoCD/_SIMPLEX-DemoTools/teor3/chapter2.htm