Plotkin-Shmoys-Tardos 및 Arora-Kale 솔버의 장난감 예제


34

Arora-Kale SDP 솔버가 거의 선형 시간에 Goemans-Williamson 이완을 근사화하는 방법, Plotkin-Shmoys-Tardos 솔버가 거의 선형 시간의 분수 "패킹"및 "커버링"문제를 근사화하는 방법 및 알고리즘을 이해하고 싶습니다. "전문가로부터의 학습"추상 프레임 워크의 인스턴스입니다.

Kale의 논문은 훌륭한 프리젠 테이션을 가지고 있지만 추상 프레임 워크로 직접 들어가는 것이 매우 어렵다는 것을 알았습니다. 나는해야 할 일이 명백한 간단한 문제의 예에서 시작한 다음보다 일반적인 문제로 이동하는 것을 선호합니다 알고리즘과 분석에 "기능"을 점진적으로 추가합니다.

예를 들면 다음과 같습니다.

Plotkin-Shmoys는 비가 중 정점 커버의 선형 프로그래밍 이완을 어떻게 해결합니까? 가중 정점 커버? 표지를 설정? 이분 일치?

Arora-Kale 알고리즘이 흥미로운 작업을 수행하는 가장 간단한 예는 무엇입니까? 그래프 라플라시안의 최대 고유 값은 어떻게 계산합니까?

(라플라시안의 최대 고유 값을 계산하는 것은 Max Cut의 더 약한 버전의 Goemans-Williamson SDP 이완 문제를 해결하는 문제와 동일합니다. 여기서 각 벡터의 길이가 1이어야하는 대신 사각형의 합을 원합니다. 규범 중 | V |.)


2
좋은 질문입니다.
Suresh Venkat

4
패킹 문제에 대한 PST 스타일 알고리즘을 이해하려면 PST가 발전한 다중 상품 흐름 문제를 대략 해결하는 알고리즘을 살펴 보는 것이 좋습니다. 닐 영의 논문은 세트 커버에 대해 자세히 설명합니다. Ihttp : //www.cs.ucr.edu/~neal/non_arxiv/SODA_1995_170.pdf. Arora-Kale-Hazan의 설문 조사는 전문가 프레임 워크와 포장 / 커버링 솔버 사이의 연결을 명시 적으로 만든다고 생각했습니다.
찬드라 체 쿠리

1
@ChandraChekuri : 다소 지연되었지만, 이것이 대답이되어야하는지 궁금합니다.
Suresh Venkat

2
FWIW, @ChandraChekuri가 언급 한 SODA 논문에 대한 일부 노트는 greedyalgs.info/blog/about을 참조하십시오 .
닐 영

업데이트 된 링크 : algnotes.info/on/obliv
Neal Young

답변:


26

루카, 1 년이 지난 지금 당신은 아마도 당신 자신의 답을 연구했을 것입니다. 나는 단지 기록을 위해 여기에 당신의 질문 중 일부에 대답하고 있습니다. 나는 당신이 언급 한 문제들에 대한 라그랑 지아 이완 알고리즘을 검토하고, 특히 전문가의 조언에 따라 학습과의 연결을 스케치합니다. SDP 알고리즘에 대해서는 언급하지 않습니다.

언급 한 특정 알고리즘은 거의 선형 시간에 실행되지 않습니다. (대한 거의 선형 시간 알고리즘이 명시 적으로 주어진 포장이나 문제를 덮고. 참조 분수 포장 및 취재 선형 프로그램에 대한 단면 잔 .) 당신이 생각하고있는 알고리즘을 보통의 거의 선형 수가 실행되는 변형이 반복 하지만, 각 반복에는 일반적으로 최소한 선형 시간도 필요합니다. 아래에서 이러한 알고리즘 중 일부에 대해 설명합니다.

유용한 기능들

yLmax(y)lniexp(yi)maxiyi

maxiyi  Lmax(y)  maxiyi+lnm.
Lmin(y)Lmax(y)miniyi

다음의 편의상, 를 사용하여 의 기울기 를 나타냅니다 . 우리는 를 사용하여 의 기울기 를 나타냅니다 .g(y)Lmin(y)G(y)Lmax(y)

명시 적으로 는 이고 는 .gi(y)exp(yi)/iexp(yi)Gi(y)exp(yi)/iexp(yi)

Lmin 및 Lmax는 다음과 같은 의미에서 매끄 럽 습니다. 모든 벡터 및 , 및 d[0,ε]nyRn

Lmin(y+d)  Lmin(y) + (1O(ε))dg(y)
Lmax(y+d)  Lmax(y) + (1+O(ε))dG(y).

두 그래디언트 모두 1- 노름이 1과 같습니다. 입니다. ( 이때 우리 는 1- 노름을 나타 내기 위해 를 사용합니다.)|G(y)|=|g(y)|=1|z|

또한 참고 그 매트릭스 용 함수의 기울기 에 대하여 (체인 규칙에 의해)이다 . 보다 구체적으로, 대한 함수의 부분 미분 은 입니다. 마찬가지로, 대한 Lmax 의 부분 도함수 는 입니다.AxLmin(Ax)x(g(Ax))TAxjiAijexp(Aix)/iexp(Aix)(Ax)xjiAijexp(Aix)/iexp(Aix)

분수 세트 커버

Set-Cover 인스턴스를 수정하십시오. 하자 소자 / SET 접속 행렬을 나타낸다. 따라서 인 경우 이고 , 그렇지 않으면 0이고 는 소수 커버 가 요소 포함 하는 정도입니다 .AAes=1esAexxe

LP는 . 주어지면 알고리즘은min{|x|:Ax1;x0}ε(0,1)


  1. 모든 초기화하십시오 . 이라고하자 . xs=0N=log(n)/ε
  2. 까지 반복하십시오 : mineAexN

    2.1. Lmin wrt 의 부분 미분을 최대화하는 선택하십시오 . (명시 적으로, 최대화 .) s(Ax)xs (S)
    sesexp(sexs)

    2.2. 를 증가시킵니다 . xsε

  3. 반환 합니다.x/mineAex


이 알고리즘은 반복에서 근사 솔루션을 반환합니다 . 여기서 은 요소 수이고 는 최적입니다 소수 집합 표지 (일반적으로 ). ( 찬드라가 언급 한 논문 에도 비슷한 알고리즘이 등장한다 . 물론 정점 표지는 특별한 경우이다.)(1+O(ε))O(|x|log(n)/ε2)nx|x|n

( 비고 : 반복 바운드는 세트 수, 요소 수에만 의존하지 않으므로 요소에 가중치가 주어지면 알고리즘을 암시 적으로 정의 된 세트 시스템과 함께 사용할 수 있습니다. 최대 (또는 거의 최대) 총 무게의 집합을 찾으십시오 이러한 종류의 오라클은 타원체 알고리즘을 이중 문제 에 적용하는 데 필요한 분리 오라클과 동일합니다 . 요소에 주어진 가중치가 있으면 총 가중치를 최소화 하는 집합을 반환합니다 . 예 : 다중 상품 흐름과 같은 문제의 경우 특정 에지 가중치의 합계를 최소화하는 경로를 찾아야 할 수 있습니다.)

다음은 성능 보증 증명에 대한 스케치입니다. 각 반복에서, 선택된 의 부분 도함수 는 적어도여기서 는 최적의 분수 집합 표지입니다.s1/|x|x

(이유를 알기 위해 대한 Lmin 의 기울기 는 입니다. 분포 에서 무작위 로 세트 를 선택한다면 에 관한 편미분의 기대 값 이에 것 . 이후 이 적어도하다 . 이후 이 적어도이고 . 따라서 존재해야 일부 적어도 편미분주는 알고리즘이 선택(Ax)x(g(Ax))TAsx/|x|xs(g(Ax))TAx/|x|Ax1|g(Ax)|/|x||g(Ax)|=11/|x|s1/|x|xs 부분 미분 을 최대화하기 위해 각 반복 에서, 적어도 의 부분 미분을 달성 .) 1 / | x |1/|x|

그런 다음 스텝 크기 이 충분히 작게 선택되어 좌표 가 보다 증가 하지 않습니다 . 따라서 Lmin의 부드러움으로 인해 를 늘리면 가 최소한 .εAxεxsxs+εLmin(Ax)(1O(ε))ε/|x|

이런 식으로, 알고리즘은 불변 (Lmin 은 같습니다 .)

Lmin(Ax)(1O(ε))|x|/|x|lnn.
(0¯)lnn

종료시, 불변에서 항은 왼쪽에 곱하기 때문에 계산에 의해. 알고리즘의 마지막 줄에서 정규화 한 후에는.lnnO(ε)mineAex(1O(ε))|x|/|x||x|(1+O(ε))|x|

FWIW에서, 불변량을 증명하는 것과 관련된 불평등은 본질적으로 Chernoff 경계를 증명하는 것과 관련된 불평등과 동일합니다. (사실,이 알고리즘은 무작위 라운딩 방식으로 조건부 확률의 방법을 적용하여 유도 될 수있는 분배에서 반복적으로 샘플 세트를 (여분으로) 증가 각 샘플 세트에 대한 이것의 비 무작위 화는 알고리즘을 제공한다 : 근본적인 불변은 단지 비관적 추정기가 1 미만으로 유지된다는 것이다. 찬드라는 논문 에서 언급했다 .)x/|x|xss

분수 가중 세트 커버 (및 일반 분수 커버링)

Weighted Set Cover와 같은 문제를 효율적 으로 처리하기 위해 균일하지 않은 증분 ( Garg 및 Konemann 으로 인한 아이디어)을 사용하도록 알고리즘을 수정합니다 .

LP는 . 여기서 는 요소 범위 , 범위는 세트이며 모든 변수는 비 -부정. 알고리즘을 제시하려면 먼저 문제를 일반적인 문제로 다시 작성하십시오. 하자 에 대한 와 , 그렇지 않으면. 그런 다음 변수를 변경하고 각 를 스케일링 하면 LP는 , LP를 다루는 일반적인 것으로 볼 수 있습니다. 알고리즘은 다음과 같습니다.min{cx:(e)sexs1}esAes=1/csesAes=0xscsmin{|x|:Ax1;x0}


  1. 모든 초기화하십시오 . 이라고하자 .xs=0N=log(n)/ε

  2. 모든 포함 구속 조건이 삭제 될 때까지 반복하십시오.

    2.1. Lmin wrt 의 부분 미분을 최대화하는 선택하십시오 . (명시 적으로 최대화 .)s(Ax)xs
    sesexp(sexs)/cs

    2.2. 를 만큼 증가 . 여기서 는 최대로 선택되어 나머지 모든 적용 제한 조건 에 대해 의 증가 는 최대 됩니다.xsδδeAexε

    2.3 과 같은 모든 제한 조건 삭제하십시오 .eAexN

  3. 반환합니다 .x/mineAex


이 알고리즘은 반복에서 근사값을 반환합니다 . 여기서 은 포함 구속 조건의 수입니다. (반복 할 때마다 는 만큼 증가합니다 . 이것은 삭제되기 전에 시간 만 제약 조건까지 발생할 수 있습니다 .) 정확성 증명은 기본적으로 표지 설정과 동일한 불변성을 통해 이루어집니다.(1+O(ε))O(nlog(n)/ε2)nAexεN/ε

가중치 버텍스 커버는 특별한 경우입니다.

최대 분수 이분법 일치

그래프 주어지면 문제에 대한 자연 LP는 .G=(U,W,E)max{|x|:v.evxe1}

행렬 표현에서 이것은 패킹 LP 0-1 계수의 ( 경우 ). 이러한 문제에는 비 균일 증분이 필요하지 않으므로 비가 중 설정 커버 알고리즘과 유사한 간단한 알고리즘 (그러나 패킹 용)은 다음과 같습니다.max{|x|:Ax1;x0}Ave=1ve


  1. 모든 초기화하십시오 . 이라고하자 .xe=0N=log(n)/ε
  2. 동안 :Ax<N

    2.1. Lmax wrt 의 부분 미분을 최소화하는 선택하십시오 . (명시 적으로, 를 선택 하여 를 최소화 하십시오 .)e(Ax)xe
    eveexp(evxe)

    2.2. 를 만큼 증가시킵니다 . xeε

  3. 반환 합니다.x/maxvAvx


이 알고리즘은 반복 에서 근사 솔루션을 반환합니다 . (각 반복이 만큼 를 증가시키고 , 마지막으로 정규화하기 전에 .(1O(ε))O(nlog(n)/ε2)|x|ε|x|=O(Nn)

퍼펙트 바이 파 타이트 매칭을위한 흥미로운 대안 알고리즘이 있습니다. 그 리콜 . 하자.G=(U,W,E)n=|U|=|W|


  1. 모든 초기화하십시오 . 이라고하자 . xe=0N=4ln(n)/ε
  2. 반복 시간 :nN

    2.1. 에서 임의로 균일하게 선택하십시오 . 2.2. 선택 되도록 의 최소화 . 2.3. 만큼 를 늘리십시오 . uU
    w(u,w)Eewxe
    xuwε

  3. 반환합니다 .x/N


경우 완벽한 매칭 알고리즘 복귀 갖는 같은 그런 , 및, 높은 확률로, 모든 정점에 대한 , , 모든 정점에 대한 , . 증명의 세부 사항에 관심이 있으시면 다음을 요청하십시오.Gx|x|=nuU1O(ε)euxe1+O(ε)wWewxe1+O(ε)

혼합 포장 및 취재

당신은 양자 일치하는의 예는 희망에 대해 질문했을 수 있습니다 혼합 입니다 포장 및 문제를 덮고, 양식 중 하나는 이러한 문제에 대한 하나의 알고리즘이 있습니다. 먼저 및 되도록 정규화하십시오 .

x? Pxp;Cxc;x0.
p=1¯c=1¯

을 제약 조건의 수 ( 행과 행)로 하자 .mPC


  1. 모든 초기화하십시오 . 이라고하자 .xj=0N=2ln(m)/ε
  2. 동안 :Px<N

    2.1. 대한 Lmax 의 부분 미분 값이 대한 Lmin 의 부분 미분 값이되도록 선택하십시오 . ( , 선택 하면j(Px)xj(Cx)xjj

    iPijexp(Pix)iexp(Pix)iCijexp(Cix)iexp(Cix).)

    2.2. 제약 조건 또는 나머지 제약 조건 가 이상 증가 하지 않도록 가 최대로 선택 되는 를 만큼 증가시킵니다 .xjδδPixCixε

    2.3. 과 같은 모든 제한 조건 삭제하십시오 .iCixN

  3. 반환합니다 .x/maxiPix


주어진 문제가 실현 가능하다고 가정하면 알고리즘은 및 과 같은 반환합니다 . 반복 횟수는 . 각 반복은 만큼 제약 조건을 증가시키기 때문에 각 제약 조건 마다 최대 번 발생할 수 있기 때문 입니다.xPx1Cx1O(ε)O(mln(m)/ε2)εN

정확성 증명은 불변 불변은 종료시 왼쪽은 이며 성능을 보장합니다.

Lmax(Px)2ln(m)+(1+O(ε))Lmin(Cx).
maxPx2ln(m)+(1+O(ε))minCx.
Ω(log(m)/ε)

2.1 단계 에서, 원래의 문제가 실현 가능한 한 원하는 가 존재해야합니다. ( 가능한 모든 및 에 대해 분포에서 랜덤 를 선택하면 Lmax 의 부분 미분의 예상 값 이되기 때문 입니다. 관련하여 이하인 것이 . (집합 커버 이전 증명 스케치 참조) 이와 같이, L 최소의 편미분의 기대 값 에 대하여 는 되므로j xxjx/|x|(Px)xj1/|x|(Cx)xj1/|x|j 대한 Lmax 의 부분 도함수가 Lmin 의 부분 도함수와 같아야 합니다.)(Px)xj(Cx)

와 의 선택 과 Lmin과 Lmax의 매끄러움으로 인해 를 증가 시키면 Lmax 가 최대 배 만큼 증가 하기 때문에 각 반복에서 불변은 유지됩니다 . Lmin 증가 .xjδxjxj+δ(Px)1+O(ε)(Cx)

학습 (전문가 팔로우 / 부스팅)

이 연결을 이해하기위한 하나의 참조는 Freund와 Schapire의 곱하기 가중치를 사용한 적응 형 게임 플레이 입니다. 다음은 기술 아이디어를 제공하는 간단한 요약입니다.

다음과 같은 반복 게임을 고려하십시오. 각 라운드에서 : t

  1. ( 소위 전문가 ) 에서 확률 분포 를 선택합니다 . pt[n]n
  2. 알면 공격자는 페이 오프 벡터 합니다. ptat[0,1]n
  3. 당신 은 라운드에 대한 지불 를받습니다. ptat

라운드가 끝난 후 게임이 중단됩니다. 귀하의 목표는 단일 전문가 (즉, 순수한 전략)와 비교하여 후회를 최소화하는 것 입니다. . 즉, 목표는 를 최소화 입니다.i(maxitait)tptat

수정하십시오 . 벡터하자 나타내고 , 즉, 최대 시간으로 귀결 벡터의 시간 벡터 합 . 호출은 L 최대의 구배 .ε>0ytεstasεtG(y)(y)

분석 할 기본 전략은 다음과 같습니다. 라운드 에서 를 합니다.tptG(yt1)

검사를 통해 라운드 에서 을 얻을 수 있습니다.atG(yt1)t

때문에 부드러움 속성 , 즉, 각 라운드에서 는 배 이상 늘릴 수 없습니다 . 이후 이 그 불변 유지 총 보수 시간 많아야이다 플러스 한편, 최고의 전문가에 비해 당신의 후회. 있다는 , 즉,F

Lmax(yt)Lmax(yt1)+(1+O(ε))εatG(yt1).
Lmax(yt)ε(1+O(ε))Lmax(0¯)=lnnLmax(yt)ε(1+O(ε)ln(n)imaxitaitε1maxiyit최대 입니다.ε1Lmax(yt)

따라서 후회는 최대 에 곱하기 총 지불액입니다.ε1ln(n)O(ε)

비고 : Freund와 Schapire가 지적했듯이, "이론"에서 "부스팅"알고리즘도이 분석에 내재되어 있다고 생각합니다. 자세한 내용은 해당 논문을 참조하십시오.

총 지불금 최소화

총 지불액을 최대화하기보다는 최소화 하는 것이 목표 인 설정에 대해 유사한 전략을 도출 할 수 있습니다 . 여전히 최소화하려는 후회는 입니다. 이 경우 해당 전략은 를 의 그래디언트 로 선택 하는 것 입니다. 이 전략을 사용하면 후회는 최대 + 총 보수를 곱한 값입니다.tptatminiaitptLmin(yt)ε1lnnO(ε)

라그랑 지아 이완 알고리즘에 연결

Lagrangian-relaxation 알고리즘과의 연결을 보려면 Set-Cover 인스턴스를 수정하십시오. 전문가 가 귀하의 세트 시스템 의 요소 에 해당하는 후자의 게임 유형 (페이 오프 최소화를 목표로) 을 고려하십시오. 각 라운드에서 확률 분포 선택 L 최소의 기울기로 상기와 같이, 상기 원수는 벡터 보수 선택이 의 함수로서 다음과 같이 설정 선택 극대화 후하게 의 경우 하고 그렇지.ept(yt)atptstespetaet=1estaet=0

올바른 정지 조건 (아래에 설명)이 주어지면이 프로세스는 시작시 논의 된 Set-Cover 알고리즘을 정확하게 제공합니다.

알고리즘의 성능 보증은 다음과 같이 후회 범위를 따릅니다. 하자 사탄이 세트 선택 횟수 수 재생하는 동안. 하자 최적의 부분 집합을 커버 할. 하자플레이 한 라운드 수입니다. 후회는 XssxT=|Xs|

tatptε1ln(m)+minetaet.

정의를 사용 는 번째 보수합니다 ( 왼쪽 요컨대 번째 항은 같음) . 적은 이 보수를 최소화하기 위해 를 선택했습니다 . 대적이 대신 분포 에서 무작위로 를 선택한 경우 , 대가의 기대치는 (위의 모든 대해 을 사용 하고 합니다.) 각 보수는 최소한atttestpetststx/|x|

sxs|x|espet = 1|x|epetsexs  1|x|epet = 1|x|.
sexs1e|pt|=11/|x|후회 바운드는 의 정의에 , 우리가 (각 라운드는 하나의 세트를 선택), , 우리는 일 때 프로세스를 중지 하므로 (용어를 다시 정렬) 즉, 정규화 는 최대 크기의 소수 집합 커버를 제공합니다 배 최적.
T|x|ε1ln(m)+minetaet.
X|X|=Ttaet=e[est]=seXs
|X||x|ε1ln(m)+mineseXs.
mineseXs=Ω(ε2lnm)
|X|mineseXs  (1+O(ε)|x|.
X(1+O(ε))

비고 : 어떤 의미에서이 학습 이론 해석은 알고리즘 해석을 일반화합니다. 그러나 효율성에 필요한 일부 알고리즘 기술 (예 : 비 균일 증분 및 만족스러운 포함 제약 조건 제거)은 학습 이론 설정에 자연스럽게 적용되지 않는 것 같습니다. 마찬가지로, 혼합 패킹 및 LP를 커버하는 알고리즘 (예 : 이들 )은 학습 이론 설정에서 자연스런 유사성을 갖지 않는 것 같습니다.


8
그것은 꽤 답입니다!
Suresh Venkat

1
감사. 아마 그것을 과장했다. 피드백에 관심이 있습니다 : 이러한 아이디어를 접근 가능하게 제시하는 방법, 기타 포함 할 내용 ...
Neal Young
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.