optimal budget allocation: theoretical guarantee and efficient algorithm
TRANSCRIPT
Optimal Budget Allocation:Theoretical Guarantee and Efficient Algorithm
Tasuku Soma Naonori Kakimura Kazuhiro Inaba Ken-ichi Kawarabayashi
Univ. of Tokyo Univ. of Tokyo Google NII, JST, ERATO
Kawarabayashi LargeGraphProject
1 / 16
Budget Allocation Problem (Alon et al. ’11)
A mathematical model for company’s ads.
source1
source2
source3
Total: 6
cap:3
cap:5
cap:2
alloc:2→ cap:3
alloc:3→ cap:5
alloc:1→ cap:2
1st trial: Pr 0.32nd trial: Pr 0.73rd trial: Pr 0.2
Influence Probs
fail
fail
success
fail
successsuccess
2 / 16
Budget Allocation Problem (Alon et al. ’11)
A mathematical model for company’s ads.
source1
source2
source3
Total: 6
cap:3
cap:5
cap:2
alloc:2→ cap:3
alloc:3→ cap:5
alloc:1→ cap:2
1st trial: Pr 0.32nd trial: Pr 0.73rd trial: Pr 0.2
Influence Probs
fail
fail
success
fail
successsuccess
2 / 16
Budget Allocation Problem (Alon et al. ’11)
A mathematical model for company’s ads.
source1
source2
source3
Total: 6
cap:3
cap:5
cap:2
alloc:2→ cap:3
alloc:3→ cap:5
alloc:1→ cap:2
1st trial: Pr 0.32nd trial: Pr 0.73rd trial: Pr 0.2
Influence Probs
fail
fail
success
fail
successsuccess
2 / 16
Budget Allocation Problem (Alon et al. ’11)
A mathematical model for company’s ads.
source1
source2
source3
Total: 6
cap:3
cap:5
cap:2
alloc:2→ cap:3
alloc:3→ cap:5
alloc:1→ cap:2
1st trial: Pr 0.32nd trial: Pr 0.73rd trial: Pr 0.2
Influence Probs
fail
fail
success
fail
successsuccess
2 / 16
Budget Allocation Problem (Alon et al. ’11)
A mathematical model for company’s ads.
source1
source2
source3
Total: 6
cap:3
cap:5
cap:2
alloc:2→ cap:3
alloc:3→ cap:5
alloc:1→ cap:2
1st trial: Pr 0.32nd trial: Pr 0.73rd trial: Pr 0.2
Influence Probs
fail
fail
success
fail
successsuccess
2 / 16
Budget Allocation Problem (Alon et al. ’11)
A mathematical model for company’s ads.
source1
source2
source3
Total: 6
cap:3
cap:5
cap:2
alloc:2→ cap:3
alloc:3→ cap:5
alloc:1→ cap:2
1st trial: Pr 0.32nd trial: Pr 0.73rd trial: Pr 0.2
Influence Probs
fail
fail
success
fail
successsuccess
2 / 16
Budget Allocation Problem (formal)G = (S,T ;E): Bipartite graphFor each source s ∈ S:
• capacity c(s)
• Pr of success of the ith trial p(i)s (i = 1, . . . , c(s))
B ∈ Z+: Total budgetf(b) := the expected # of influenced nodes by budget allocation b ∈ ZS ,which satisfies:
• x ≤ y =⇒ f(x) ≤ f(y) (monotonicity)
• f(x) + f(y) ≥ f(x ∨ y) + f(x ∧ y) (∀x, y ∈ ZS) (submodularity)
Maximize f(b)
subject to 0 ≤ b(s) ≤ c(s) (s ∈ S)∑s∈S
b(s) ≤ B
3 / 16
Budget Allocation Problem (formal)G = (S,T ;E): Bipartite graphFor each source s ∈ S:
• capacity c(s)
• Pr of success of the ith trial p(i)s (i = 1, . . . , c(s))
B ∈ Z+: Total budgetf(b) := the expected # of influenced nodes by budget allocation b ∈ ZS ,which satisfies:
• x ≤ y =⇒ f(x) ≤ f(y) (monotonicity)
• f(x) + f(y) ≥ f(x ∨ y) + f(x ∧ y) (∀x, y ∈ ZS) (submodularity)
Maximize f(b)
subject to 0 ≤ b(s) ≤ c(s) (s ∈ S)∑s∈S
b(s) ≤ B
3 / 16
Previous Work
• NP-hard
• If P , NP, (1 − 1/e)-approximation is best possible
• Previous algorithm (Alon et al. ’11) is polytime, but impracticaldue to the heavy time complexity
• What about more complicated real scenarios?
4 / 16
Our Results
1 Submodular Function Maximization over Integer Lattice:• A gerenal framework including more complicated scenarios
• (1 − 1/e)-approximation algorithm
2 Faster Algorithm for Nonincreasing Influence Probabilities:• Speeding up Alon et al.’s algorithm under natural assumption
• Almost linear time for graph size
• Numerical experiments for real & big data
5 / 16
1 Submodular Function Maximization over Integer Lattice
2 Faster Algorithm for Nonincreasing Influence Probabilities
6 / 16
Submodular Func. Maximization over ZS+
f : ZS+ → R ... monotone submodular function over integer lattice
• x ≤ y =⇒ f(x) ≤ f(y)
• f(x) + f(y) ≥ f(x ∨ y) + f(x ∧ y)(∀x, y ∈ ZS)
(x ∨ y : elem-wise max, x ∧ y : elem-wise min)
cf. submodularity forset functions:f(X) + f(Y) ≥
f(X ∪ Y) + f(X ∩ Y)(∀X ,Y ⊆ S)
c ∈ ZS+, w ∈ ZS
+, B ∈ Z≥0
Maximize f(b)
subject to 0 ≤ b ≤ c∑s∈S
w(s)b(s) ≤ B (knapsack constraint)
b ∈ ZS
7 / 16
Submodular Func. Maximization over ZS+
f : ZS+ → R ... monotone submodular function over integer lattice
• x ≤ y =⇒ f(x) ≤ f(y)
• f(x) + f(y) ≥ f(x ∨ y) + f(x ∧ y)(∀x, y ∈ ZS)
(x ∨ y : elem-wise max, x ∧ y : elem-wise min)
cf. submodularity forset functions:f(X) + f(Y) ≥
f(X ∪ Y) + f(X ∩ Y)(∀X ,Y ⊆ S)
c ∈ ZS+, w ∈ ZS
+, B ∈ Z≥0
Maximize f(b)
subject to 0 ≤ b ≤ c∑s∈S
w(s)b(s) ≤ B (knapsack constraint)
b ∈ ZS
7 / 16
Submodular Func. Maximization over ZS+
f : ZS+ → R ... monotone submodular function over integer lattice
• x ≤ y =⇒ f(x) ≤ f(y)
• f(x) + f(y) ≥ f(x ∨ y) + f(x ∧ y)(∀x, y ∈ ZS)
(x ∨ y : elem-wise max, x ∧ y : elem-wise min)
cf. submodularity forset functions:f(X) + f(Y) ≥
f(X ∪ Y) + f(X ∩ Y)(∀X ,Y ⊆ S)
c ∈ ZS+, w ∈ ZS
+, B ∈ Z≥0
Maximize f(b)
subject to 0 ≤ b ≤ c∑s∈S
w(s)b(s) ≤ B (knapsack constraint)
b ∈ ZS
7 / 16
Submodular Func. Maximization over ZS+
General Framework Including:
• Optimal budget allocation with various unit costs• Optimal budget allocation with competitor• Maximum coverage, Sensor placement, Text summarization, ...
Pseudo Polytime (1 − 1/e)-Approximation Algorithm:
Theorem
A (1 − 1/e)-approximate solution can be found in O(B5|S |4θ) time(θ: the running time of oracle for f ) for a monotone submodular functionmaximization over the integer lattice subject to knapsack constraint.
• Extends the algorithm for optimal budget allocation (Alon et al. ’11)
8 / 16
Submodular Func. Maximization over ZS+
General Framework Including:
• Optimal budget allocation with various unit costs• Optimal budget allocation with competitor• Maximum coverage, Sensor placement, Text summarization, ...
Pseudo Polytime (1 − 1/e)-Approximation Algorithm:
Theorem
A (1 − 1/e)-approximate solution can be found in O(B5|S |4θ) time(θ: the running time of oracle for f ) for a monotone submodular functionmaximization over the integer lattice subject to knapsack constraint.
• Extends the algorithm for optimal budget allocation (Alon et al. ’11)
8 / 16
1 Submodular Function Maximization over Integer Lattice
2 Faster Algorithm for Nonincreasing Influence Probabilities
9 / 16
Nonincreasing Influence Probabilities
Under a natural assumption, Alon et al.’s algorithm can be accelerated.
Assumption:Influence probabilities of each ad source are nonincreasing:
p(1)s ≥ p(2)
s ≥ · · · ≥ p(c(s))s (∀s ∈ S)
(i.e., Effectiveness of each ad is nonincreasing with time)
Alon et al.’s algorithm: O(B6|S |5|T |) time
Our algorithm: O(B(|S |+ |T |+ |E |)) time (almost linear for graph size)
10 / 16
Nonincreasing Influence Probabilities
Under a natural assumption, Alon et al.’s algorithm can be accelerated.
Assumption:Influence probabilities of each ad source are nonincreasing:
p(1)s ≥ p(2)
s ≥ · · · ≥ p(c(s))s (∀s ∈ S)
(i.e., Effectiveness of each ad is nonincreasing with time)
Alon et al.’s algorithm: O(B6|S |5|T |) time
Our algorithm: O(B(|S |+ |T |+ |E |)) time (almost linear for graph size)
10 / 16
Algorithm
Under the assumption, f satisfies the following diminishing marginalreturn property:
f(b + 2es) − f(b + es) ≤ f(b + es) − f(b) (b ∈ ZS , s ∈ S)
Note: This property is NOT implied by submodularity!
Algorithm1: b := 02: while
∑s∈S b(s) < B do
3: Among s with b(s) < c(s), choose one of f(b +es)− f(b) maximum.4: Set b := b + es .5: end while6: return b
11 / 16
Algorithm
Under the assumption, f satisfies the following diminishing marginalreturn property:
f(b + 2es) − f(b + es) ≤ f(b + es) − f(b) (b ∈ ZS , s ∈ S)
Note: This property is NOT implied by submodularity!
Algorithm1: b := 02: while
∑s∈S b(s) < B do
3: Among s with b(s) < c(s), choose one of f(b +es)− f(b) maximum.4: Set b := b + es .5: end while6: return b
11 / 16
Algorithm
One more trick:For optimal budget allocation, f(b + es) − f(b) can be computed inO(1) time.
TheoremA (1 − 1/e)-approximate solution can be found in O(B(|V |+ |E |)) time ifthe influence probabilities of each ad source are nonincreasing.
• If B = O(1), runs in linear time for graph size.
12 / 16
ExperimentsOur algorithm for nonincreasing probabilities vs Heuristics.
Graphs:
• Real Data (Yahoo! Webscope Dataset)≈ 10,000 nodes & 50,000 edges
• Random Graph ≈ 2M nodes & 8M edges
Heuristics:
• Degree-prob ... allocate to nodes with higher degree and prob.
• Degree ... allocate to nodes with higher degree
• Random ... allocate at random (baseline)
Machine: Xeon E5-2690 2.9GHz CPU, 64GB RAM
13 / 16
Real Data (10k nodes & 50k edges)
0
1000
2000
3000
4000
5000
6000
7000
8000
9000
0 100 200 300 400 500 600 700 800 900 1000
Influenced n
odes: f (b
)
Budget: B
Greedy (Ours)Degree-prob
DegreeRandom
• Maximum 15% outperforming14 / 16
Random Graph (2M nodes & 8M edges)
0
200000
400000
600000
800000
1000000
1200000
1400000
0 100 200 300 400 500 600 700 800 900 1000
Influenced n
odes: f (b
)
Budget: B
Greedy (Ours)Degree-prob
DegreeRandom
• Our algorithm finds an approx solution in a few seconds15 / 16
Our Results
1 Submodular Function Maximization over Integer Lattice:• A gerenal framework including more complicated scenarios
• (1 − 1/e)-approximation algorithm
2 Faster Algorithm for Nonincreasing Influence Probabilities:• Speeding up Alon et al.’s algorithm under natural assumption
• Almost linear time for graph size
• Numerical experiments for real & big data
16 / 16