Processing math: 100%

Combinatorial Optimization-Papers

Paper list

Learning Combinatorial Optimization Algorithms over Graphs

Traditional Approaches

그래프 최적화문제 G가 주어지고 데이터 분포 D를 모를때 heuristics 보다 나은 알고리즘으로 학습할 수 있을까?

이전 페이퍼들과 다른 점

weighted graphs G(V,E,w) 로 표현가능

V -> Vertex, Node

E -> Edge

w -> weight

함수 w:ER+

w(u,v) , (u,v)E

Minimum Vertex Cover (MVC)
Maximum Cut (MAXCUT)
Traveling Salesman Problem (TSP)

문제들에 대해 알고리즘을 일반적으로 표현 가능

  1. A problem instance G ~ D

  2. Partial Solution -> ordered list

    S=(v1,v2,,v|S|)

    ¯S : 추가가능한 노드들, given S

    binary decision variables x, xv=1 if vS, xv=0 otherwise

  3. A maintenance procedure h(S) -> maps S to constraints

  4. quailityt of partial solution S objective function C(h(s),G)

  5. Greedy 알고리즘을 이용해 node v 선택 -> Q(h(S),v)R를 최대화 시키는 노드 그리고 선택된 VS에 추가

    S:=(S,v),wherev:=argmaxvˉSQ(h(S),v)
  6. termination criterion t(h(S)) 가 만족될때까지 반복

모든 문제가 다른 h(S), c, t 들로 표현 가능

MVC

helper function x,

C(h(S),G)=|S|

t: 모든 엣지 사용 확인

MAXCUT

helper function divides V into two sets (S,¯S) & maintains a cut-set C={(u,v)|(u,v)E,uS,v¯S},

c(h(S),G)=(u,v)Cw(u,v),

termination x

TSP

h maintains tour (node orders),

C(h(S),G)=|S|1i=1w(S(i),S(i+1))w(S(|S|),S(1))

terminate when S=V

Representation: Graph Embedding

structure2vec : 각 노드들은 p-dimension의 feature embedding μv 갖고있음, vV

μt+1vF(xv,{μ(t)u}uN(v),{w(v,u)}uN(v);θ)

F: generic non-linear mapping(NN, kernel function)

N(v): set of neighbors

-> 이웃 노드들의 feature, weight를 이용해 새로운 μt+1v 생성

-> 위 연산을 T번 반복하면 T-hop의 정보를 얻는 것으로 생각할 수 있음 (usually T=4)

뉴럴넷 이용해 다시 적어보면, 위 식은

relu(θ1xv+θ2uN(v)μ(t)u+θ3uN(v)relu(θ4w(v,u)))

로 표현할 수 있다.

θ1Rρ, θ2,θ3Rρ×ρ, θ4Rρ

각 파라미터는 위와 같은 차원을 갖고 차근차근(?) 따져보면 μt+1vρ 차원을 갖는것을 확인할 수 있다.

위 연산은 각 노드들의 feature를 구하는 과정이고 이 구해진 feature들을 이용해 estimated Q 또한 뉴럴넷 이용해 구한다.

ˆQ(h(S),v;θ)=θT5relu([θ6uVμ(T)u,θ7μ(T)v])

θ5R2ρ, θ6,θ7Rρ×ρ, [,]:Concatenation

-> 해당 노드의 feature + 모든 feature의 합(global feature)를 concatenation 한다.

Training: Q-learning

앞에서 정의했던 ˆQ를 RL의 state-value function으로 간주

ˆQ는 다른 분포, 사이즈를 갖고있는 D,D={Gi}mi=1에 대해 학습함

RL formulation
r(s,v)=c(h(S),G)c(h(S),G)c(h(ϕ),G)=0

-> 새로운 state에서의 cost는 커져야 하고 현재의 state에서의 cost는 작아야 함 -> 현재 cost가 작게 되도록 선택해야 함

π(vs):=argmaxjˉSˆQ(h(S),v)

optimal Q-function은 Q로 표기

Problem State Action Helper function Reward Termination
MVC subset of nodes selected so far add node to subset None -1 all edges are covered
MAXCUT subset of nodes selected so far add node to subset None change in cut weight cut weight cannot be improved
TSP partial tour grow tour by one node Insertion operation change in tour cost tour includes all nodes
Learning algorithm

n-step Q-learning, fitted Q-iteration

노드를 다 추가하면 한 에피소드가 끝난것으로 간주,

하나의 노드를 선택하는 것을 1-step 이라고 표현

1-step Q-learning은 매 스텝마다 업데이트 n-step Q-learning은 n 스텝마다 업데이트 (for delayed reward) y=n1i=0r(st+i,vt+i)+γmaxvˆQ(h(St+n),v;θ)

fitted Q-iteration은 버퍼에 저장했다가 배치로 꺼내서 업데이트 하는것

Algorithm

algorithm_1

Erdos Goes Neural: an Unsupervised Learning Framework for Combinatorial Optimization on Graphs


The Erdos probabilistic method for deep learning

weighted graph G=(V,E,w)에서의 조합 문제를 다루고, constrained optimization 문제로 나타낸다.

minSVf(S;G)subjecttoSΩ

Ω는 문제에 따라 원하는 속성을 가진 노드집합의 집합이다.

The “Erdos Goes Neural” pipeline

non-differentiable한 (1)을 다루는 대신 GNN을 이용해 해들의 분포를 취급할 수 있도록 한다.

Figure 1에 제안한 방법의 세 과정이 나와있다.

figure2_1

  1. GNN gθ를 구성하고 sets에 대한 분포 D=gθ(G) 분포를 얻는다.
  2. 낮은 cost f(S;G)의 유효한 SD가 존재할 확률의 최적화를 학습한다.
  3. conditional expectation 방법으로 Deterministically D로부터 S를 복구한다.

D초기화는 viS는 확률 pi를 갖는 베르누이 확률변수 xi로 초기화한다.