Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Class 18: Hardness of Auctions

Class 18: Hardness of Auctions

Class 18: Hardness of Auctions
https://uvammm.github.io/class18

Markets, Mechanisms, and Machines
University of Virginia
cs4501/econ4559 Spring 2019
David Evans and Denis Nekipelov
https://uvammm.github.io/

David Evans

March 21, 2019
Tweet

More Decks by David Evans

Other Decks in Research

Transcript

  1. MARKETS, MECHANISMS, MACHINES University of Virginia, Spring 2019
    Class 18:
    Hardness of
    Auctions
    21 March 2019
    cs4501/econ4559 Spring 2019
    David Evans and Denis Nekipelov
    https://uvammm.github.io
    Trial Auction starts Now!

    View Slide

  2. Trial Auction Starts Now!
    1

    View Slide

  3. Recap: Multi-Unit Auction
    2
    Input: Valuations for the players: !"
    , … , !%
    .
    Output: Allocation, '"
    , … , '%
    where ∑
    )
    ')
    ≤ ' that maximizes ∑
    )
    !)
    ')
    .
    Query model:
    !)
    0 = 0, ∀. ∈ 0, … , ' − 1 : !)
    . ≤ !)
    (. + 1)
    Single-Minded Step Bids:
    !)
    . = 0 for . < .)
    ∗; !)
    . = <)
    ∗ for . ≥ .)
    ∗.
    Downward Sloping:
    ∀. ∈ 0, … , ' − 1 : !)
    . + 1 − !)
    . ≤ !)
    . − !)
    (. − 1)
    No polynomial (in log ') time solution
    Know polynomial (in log ') time solution
    ???

    View Slide

  4. Second most Interesting Complexity Class?
    3
    NP
    Non-deterministic Polynomial Time

    View Slide

  5. q
    1
    1 1 1
    0
    1 0 …
    q
    0
    1 1 1
    0
    0 0 …
    q
    6
    0 1 1
    0
    1 0 …
    Deterministic Turing Machine Nondeterministic Turing Machine
    q
    0
    1 1 1
    0
    0 0 …
    Tries all possible transitions; accepts if
    any path leads to accepting state.
    q
    1
    1 1 1
    0
    1 0 …
    q
    7
    1 1 1
    0
    0 0 …

    View Slide

  6. Computability:
    Is NDTM more powerful than DTM?

    View Slide

  7. Computability:
    Is NDTM more powerful than DTM?
    No! We can simulate a NDTM with a DTM.
    Use a tape to keep track of which paths to try
    (breadth-first search, not depth first!)

    View Slide

  8. Complexity:
    Are there problems that are “hard” to solve with a
    DTM that are “easy” to solve with a NDTM?

    View Slide

  9. Complexity Classes
    NP
    P
    Problems that a DTM can
    solve in polynomial time.
    Problems that a NDTM can
    solve in polynomial time.

    View Slide

  10. P
    NP P
    NP
    We know P ⊆ NP: no need to take advantage of non-determinism.

    View Slide

  11. View Slide

  12. P
    NP P
    NP
    Option 1: There are problems in
    Class NP that are not tractable
    Option 2: All problems in
    Class NP are tractable
    P = NP?
    P ⊊ NP P = NP

    View Slide

  13. Assuming P ⊊ NP, how can we prove a
    problem is not in P?
    12

    View Slide

  14. Class NP-Complete
    13

    View Slide

  15. NP-Complete
    A problem B is in NP-Complete iff:
    2. There is a polynomial-time reduction
    from every problem A Î NP to B.
    1. B Î NP
    B
    NP
    B
    NP
    What does NP-Complete look like?

    View Slide

  16. NP-Hard
    A problem B is in NP-Hard iff:
    There is a polynomial-time reduction
    from every problem A Î NP to B.
    B
    NP
    What does NP-Hard look like?

    View Slide

  17. NP-Hard (if P Ì NP)
    P
    NP-C
    Option 1a: P Ì NP,
    NP-C È P Ì NP
    Option 1b: P Ì NP,
    NP-C È P = NP
    NP-Hard
    P
    NP-C

    View Slide

  18. NP-Hard (if P = NP)
    P
    NP
    Option 2: P = NP
    NP-C
    ≈ NP-Complete

    View Slide

  19. What’s a Reduction?
    18
    There is a polynomial-time reduction
    from every problem A Î NP to B.
    B
    NP

    View Slide

  20. Valid Reductions
    Transform ! into "
    Transformation must not
    take too long: finish in
    polynomial time
    Transformation must not
    expand input size too
    much: polynomial in
    original input size There is a polynomial-time reduction
    from every problem A Î NP to B.
    B
    NP
    Invalid transformation: “do an exponential search to find the answer, and output that”

    View Slide

  21. Reduction Proofs
    Goal: Prove A does not have some property Y.
    We already know B does not have property Y.
    Proof by Contradiction:
    Assume ! has some property ".
    Since ! has ", there is a solution $ to ! that satisfies ".
    Show how $ could be used to solve %.

    View Slide

  22. Reduction Proofs
    Goal: Prove A does not have some property Y.
    We already know B does not have property Y.
    Proof by Contradiction:
    Assume ! has some property ".
    Since ! has ", there is a solution $ to ! that satisfies ".
    Show how $ could be used to solve %.
    Since we know B does not satisfy Y, but having S would imply B satisfies Y,
    S cannot exist. Thus, S cannot exist, and A does not have Y.

    View Slide

  23. NP-Hardness Reduction Proofs
    Goal: Prove A does not have some property Y.
    We already know B does not have property Y.
    Proof by Contradiction:
    Assume ! has some property ".
    Since ! has ", there is a solution $ to ! that satisfies ".
    Show how $ could be used to solve %.
    NP-Hardness:
    " = “is NP-Hard”, % = a known NP-Hard problem,
    $ = “a TM that solves ! in polynomial-time”

    View Slide

  24. Proving NP-Hardness
    Show there is a polynomial-time
    reduction from every problem A
    Î NP to B.
    B
    NP
    Show there is a polynomial-
    time reduction from one
    problem X Î NP-Hard to B.
    X
    NP
    B
    This assumes we already know some problem X that is in NP-Hard.
    To get the first one, we need to prove it the hard way!

    View Slide

  25. 24

    View Slide

  26. KNAPSACK Problem
    Input: !"
    , $"
    , !%
    , $%
    , … , !'
    , $'
    !(
    , $(
    ∈ ℝ+, maximum weight ,
    Output: - ⊆ {1, … , 1} that maximizes ∑
    ( ∈4
    $(
    subject to ∑
    ( ∈4
    !(
    ≤ ,
    25
    Known (but won’t prove):
    KNAPSACK problem is in NP-Hard.

    View Slide

  27. Multi-Unit Auction: Input Representation
    26
    Input: Valuations for the players: !"
    , … , !%
    .
    Output: Allocation, '"
    , … , '%
    where ∑
    )
    ')
    ≤ ' that maximizes ∑
    )
    !)
    ')
    .
    Query model:
    !)
    0 = 0, ∀. ∈ 0, … , ' − 1 : !)
    . ≤ !)
    (. + 1)
    Single-Minded Step Bids:
    !)
    . = 0 for . < .)
    ∗; !)
    . = <)
    ∗ for . ≥ .)
    ∗.
    Downward Sloping:
    ∀. ∈ 0, … , ' − 1 : !)
    . + 1 − !)
    . ≤ !)
    . − !)
    (. − 1)
    No polynomial (in log ') time solution
    Know polynomial (in log ') time solution
    ???

    View Slide

  28. Proof: Multi-Unit Auction with
    Single-Minded Bids is NP-Hard
    27
    Goal: Prove A does not have some property Y.
    We already know B does not have property Y.
    Proof by Contradiction:
    Assume ! has some property ".
    Since ! has ", there is a solution $ to ! that satisfies ".
    Show how $ could be used to solve %.
    NP-Hardness:
    " = “is NP-Hard”, % = a known NP-Hard problem,
    $ = “a TM that solves ! in polynomial-time”

    View Slide

  29. Proof: Multi-Unit Auction with
    Single-Minded Bids is NP-Hard
    28
    Goal: Prove Multi-Unit Auction with Single-Minded Bids is NP-Hard.
    We already know KNAPSACK is NP-Hard.
    Proof by Contradiction:
    Assume !"# is not NP-Hard.
    Since !"# is not NP-Hard, there is a polynomial-time solution %
    to !"#.
    Show how % could be used to solve &'#(%#)&.
    NP-Hardness:
    * = “is NP-Hard”, + = KNAPSACK,
    % = “a TM that solves !"# in polynomial-time”

    View Slide

  30. Reduction
    29
    MUA-SMB
    Input: Valuations for the players: !"
    , … , !%
    .
    !'
    ( = 0 for ( < ('
    ∗; !'
    ( = 1'
    ∗ for ( ≥ ('
    ∗.
    Output: Allocation, 3"
    , … , 3%
    where

    '
    3'
    ≤ 3 that maximizes ∑
    '
    !'
    3'
    .
    KNAPSACK
    Input: 1"
    , !"
    , 16
    , !6
    , … , 1%
    , !%
    1'
    , !'
    ∈ ℝ9, maximum weight :
    Output: ; ⊆ {1, … , ?} that maximizes

    ' ∈A
    !'
    subject to ∑
    ' ∈A
    1'
    ≤ :

    View Slide

  31. Multi-Unit Auction: Input Representation
    30
    Input: Valuations for the players: !"
    , … , !%
    .
    Output: Allocation, '"
    , … , '%
    where ∑
    )
    ')
    ≤ ' that maximizes ∑
    )
    !)
    ')
    .
    Query model:
    !)
    0 = 0, ∀. ∈ 0, … , ' − 1 : !)
    . ≤ !)
    (. + 1)
    Single-Minded Step Bids:
    !)
    . = 0 for . < .)
    ∗; !)
    . = <)
    ∗ for . ≥ .)
    ∗.
    Downward Sloping:
    ∀. ∈ 0, … , ' − 1 : !)
    . + 1 − !)
    . ≤ !)
    . − !)
    (. − 1)
    No polynomial (in log ') time solution
    Know polynomial (in log ') time solution
    NP-Hard: no polynomial time solution unless P=NP

    View Slide

  32. 31
    Trial Auction Results

    View Slide

  33. “If P = NP, then the world would be a
    profoundly different place than we usually
    assume it to be. There would be no special
    value in ‘creative leaps’, no fundamental gap
    between solving a problem and recognizing the
    solution once it’s found. Everyone who could
    appreciate a symphony would be Mozart;
    everyone who could follow a step-by-step
    argument would be Gauss...”
    Scott Aaronson
    Charge
    Project 4:
    Final auction
    next Thursday
    Project 4 reports
    Due next Friday

    View Slide