심플 렉스 알고리즘의 복잡성


36

리니어 프로그램에 대한 솔루션을 찾기위한 심플 렉스 알고리즘의 상한은 무엇입니까?

그러한 경우에 대한 증거를 찾으려면 어떻게해야합니까? 각 정점은 그것이 그 방문 할 경우 최악의 경우 인 것처럼 보인다 . 그러나 실제로는 표준 알고리즘이 이보다 더 빠른 속도로 표준 알고리즘을 실행합니다.영형(2)

이 방법을 사용하여 해결되는 문제의 평균 복잡성을 어떻게 알 수 있습니까?

모든 정보 또는 참조는 대단히 감사합니다!


5
mashca가 대답 에서 말했듯이 실제로 "단순 알고리즘"은 없습니다. 피봇 규칙의 선택에 따라 다양한 단방향 알고리즘이 있습니다.
Ito Tsuyoshi

2
차원 의 큐브 는 2 개의 n 꼭지점을 가지므로 Klee-Minty 큐브에 대한 단일 변형 변형에 대한 상한 인 경우입니다. 그러나, 차원 다면체있는 N2 개 N 이상으로, 듀얼 순환 polytopes 등의 측면, 2 개 N 그래서, 정점 2 N 상 일반적으로 사각형 제약 행렬에 대한 단순 방법의 실행 시간의 경계 즉시 아니다 . 2222
Rahul Savani

답변:


72

참 심플 렉스 알고리즘을 방문하는 모든 2 최악의 경우 정점은 ( 클레 & 민티 1972 ), 아웃이 회전은 결정 피벗 규칙에 대한 사실입니다. 그러나 스무드 분석을 사용하는 랜드 마크 논문에서 Spielman and Teng (2001) 알고리즘의 입력이 약간 무작위로 교란 될 때 단순 알고리즘의 예상 실행 시간이 모든 입력에 대해 다항식임을 증명했습니다. 어떤 문제라도 단순한 방법으로 효율적으로 해결할 수있는 "가까운"문제가 있으며, 해결하려는 모든 실제 선형 프로그램을 거의 다룹니다. 이후 Kelner and Spielman (2006) truley가 모든 입력에서 작동하는 다항식 시간 무작위 심플 렉스 알고리즘. 원래의 심플 렉스 알고리즘에 대한 나쁜 입력조차도.


36

레프는 최악의 경우 상기 된 바와 같이, 알고리즘 방문 모두 2 정점 변수의 수이다. 그러나 단순 알고리즘의 성능은 사용 된 특정 피벗 규칙에 따라 크게 달라질 수 있습니다. 내가 아는 한, 지수가 최악 인 경우의 실행 시간이있는 특정 결정적 피벗 규칙이 존재하는지 여부는 여전히 공개적인 질문입니다. 하한 결과로 많은 후보자가 제외되었습니다. 최근에 Friedmann, Hansen 및 Zwick 은 일부 자연 수정 된 피벗 규칙에 대한 최초의 비 다항식 하한을 보여 주었으며 나중에 일부 수정 사항이 제공 되었습니다 .

그러나 Lev가 언급 한 스무딩 된 분석 결과에 더하여, Vershynin은 스무딩 분석을 도입 한 Spielman과 Tengs 저널에 이어 2006 년에 한도를 더욱 향상 시켰 습니다. 제약 조건 , 86 에서 아래로 .


4
JeffE가 다른 질문 ( cstheory.stackexchange.com/questions/2149/… ) 에서 지적했듯이 현재 최고의 지수법 은 이중 심플 렉스입니다.
Suresh Venkat

Vershynin 논문과의 연결이 끊어졌습니다.
kutschkem

8

심플 렉스 분석법의 최악의 경우와 평균의 경우에 대한 통찰력을 얻으려면 "부드러운 분석 : 심플 렉스 알고리즘에 보통 다항식 시간이 걸리는 이유"를 읽어보십시오. Spielman과 Teng.


3

왜 지수가 다항식 시간에 실행되지 않는지에 대한 좋은 참고 자료는 Papadimitriou & Steiglitz Combinatorial Optimization, 섹션 8.6이 Simplex가 다항식 알고리즘이 아님을 입증하는 섹션 8.6입니다.


1

=200

GLPK Simplex Optimizer, v4.65
200 rows, 200 columns, 20100 non-zeros
Preprocessing...
199 rows, 200 columns, 20099 non-zeros
Scaling...
 A: min|aij| =  1.000e+00  max|aij| =  1.607e+60  ratio =  1.607e+60
...
Constructing initial basis...
Size of triangular part is 199
*     0: obj =   0.000000000e+00 inf =   0.000e+00 (200)
*     1: obj = -6.223015278e+139 inf =   0.000e+00 (0)
OPTIMAL LP SOLUTION FOUND
Time used:   0.0 secs
Memory used: 3.4 Mb

누구든지 단순 방법에 대해 어려운 문제를 구성하는 다른 방법을 제안 할 수 있습니까?

추가 : 3D 순열 행렬 일명 라틴어 정사각형 은 많은 정점을 가지고있는 것 같습니다-얼마나?
이론과 실제는 실제보다 이론에 더 가깝습니다.


-1

원래의 심플 렉스 알고리즘은 발산있다; 특정 인스턴스에서 순환합니다. 따라서 일반적인 한계는 없습니다. 다른 답변은 Simplex 알고리즘의 다양한 수정에 대한 답변을 제공합니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.