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

Lecture slides for POM 2-12

hajimizu
September 08, 2023

Lecture slides for POM 2-12

生産管理技術2の講義12のスライドです.

hajimizu

September 08, 2023
Tweet

More Decks by hajimizu

Other Decks in Technology

Transcript

  1. © Hajime Mizuyama Production & Operations Management #2 @AGU Lec.12:

    Scheduling Games and Mechanisms #2 • Reverse game theory and mechanism design • VCG mechanism • Scheduling auction
  2. © Hajime Mizuyama Course Schedule #2 Date Contents Dynamic scheduling

    and control (1): Dynamic scheduling environment, discrete-event simulation (DES), and online job shop scheduling Dynamic scheduling and control (2): Discrete-time simulation (DTS), black-box optimization, and reinforcement learning Scheduling games and mechanisms (1): Game theoretical scheduling environment, and price of anarchy (POA) Scheduling games and mechanisms (2): Mechanism design, VCG mechanism, and scheduling auction Supply chain management (1): Bullwhip effect, and supply chain simulation Supply chain management (2): Double marginalization, and game theoretical analysis Summary and review
  3. © Hajime Mizuyama Mechanism Design: A Reverse Game Theory 3

    Hajime Mizuyama Traditional game theory Structure of a game Outcome of a game Players Mechanism design: a reverse game theory How to structure the game? How to achieve a desired outcome?
  4. © Hajime Mizuyama Mount-Reiter Triangle of Mechanism Design 4 Hajime

    Mizuyama D X Preference Space Outcome space f: Social choice function If M = D and g = f holds, then it is called a direct mechanism. s: A solution concept M Message space g: Outcome function Mechanism t: Payment function
  5. © Hajime Mizuyama Shared Machine Scheduling Example 5 Hajime Mizuyama

    D X Preference on how long and when to use the machine, expressed in monetary values Feasible schedules for specifying the time slot when each user can use the machine f: To maximize the total values of the users s: A solution concept, e.g., Nash equilibrium M Candidate time slots for usage and their values g: To maximize the total declared values t: How much to pay for using the machine A shared machine Users
  6. © Hajime Mizuyama A direct mechanism (𝑀 = 𝐷, 𝑔

    = 𝑓) that incentivizes players to declare true valuation, assuming that the players (𝑖 ∈ 𝐼) have quasi-linear utility with respect to the outcomes (𝑥 ∈ 𝑋). • True valuation of players (∈ 𝐷): 𝑣 ≡ 𝑣! : 𝑋 → ℝ 𝑖 ∈ 𝐼 • Declared valuation of players (∈ 𝑀 = 𝐷): 𝑏 ≡ 𝑏! : 𝑋 → ℝ 𝑖 ∈ 𝐼 • True social surplus of outcome 𝑥 ∈ 𝑋: 𝑠 𝑣, 𝑥 ≡ ∑!∈# 𝑣! 𝑥 • Declared social surplus of outcome 𝑥 ∈ 𝑋: 𝑠 𝑏, 𝑥 ≡ ∑!∈# 𝑏! 𝑥 • Social choice function to implement: 𝑓 𝑣 = argmax $∈% 𝑠 𝑣, 𝑥 • Outcome function: 𝑔 𝑏 = 𝑓 𝑏 = argmax $∈% 𝑠 𝑏, 𝑥 Vickrey-Clarke-Groves (VCG) Mechanism #1
  7. © Hajime Mizuyama A direct mechanism (𝑀 = 𝐷, 𝑔

    = 𝑓) that incentivizes players to declare true valuation, assuming that the players (𝑖 ∈ 𝐼) have quasi-linear utility with respect to the outcomes (𝑥 ∈ 𝑋). • Payment function of player 𝑖 ∈ 𝐼: 𝑡! 𝑏 = 𝑠 𝑏&! , 𝑓(𝑏&! ) − 𝑠 𝑏, 𝑓(𝑏) − 𝑏! (𝑓(𝑏)) • Overall payoff of player 𝑖 ∈ 𝐼: 𝑣! 𝑓 𝑏 − 𝑡! 𝑏 = 𝑠 (𝑏&! , 𝑣! ), 𝑓 𝑏 − 𝑠(𝑏&! , 𝑓(𝑏&! )) Vickrey-Clarke-Groves (VCG) Mechanism #2 This term does not depend on 𝑏! , the declaration of player 𝑖
  8. © Hajime Mizuyama Truthful and Untruthful Declarations 8 Hajime Mizuyama

    𝑏! 𝑥 = 𝑣! 𝑥 𝑏" 𝑥 = 𝑣" (𝑥) 𝑏# 𝑥 = 𝑣# (𝑥) 𝑏! 𝑧 = 𝑣! 𝑧 𝑏" 𝑧 = 𝑣" (𝑧) 𝑏# 𝑦 = 𝑣# (𝑦) 𝑏! 𝑦 = 𝑣! 𝑦 𝑏" 𝑦 = 𝑣" (𝑦) 𝑏# 𝑧 = 𝑣# (𝑧) ・・・ Truthful Even if you could achieve a better outcome by providing false valuation, the overall payoff, including the payment, will never be higher than that obtained by declaring true valuation. 𝑥 ∈ 𝑋 𝑦 ∈ 𝑋 𝑧 ∈ 𝑋 Payment from 𝑖 Payoff Payoff Payment Social surplus 𝑥 ∈ 𝑋 𝑦 ∈ 𝑋 𝑧 ∈ 𝑋 𝑏! 𝑥 ≠ 𝑣! 𝑥 ・・・ Untruthful 𝑏! 𝑧 ≠ 𝑣! 𝑧 𝑏" 𝑧 = 𝑣" (𝑧) 𝑏# 𝑧 = 𝑣# (𝑧) 𝑏# 𝑦 = 𝑣# (𝑦) 𝑏" 𝑦 = 𝑣" (𝑦) 𝑏! 𝑦 = 𝑣! 𝑦 𝑏" 𝑥 = 𝑣" (𝑥) 𝑏# 𝑥 = 𝑣# (𝑥) Social surplus
  9. © Hajime Mizuyama Strategy proofness • Declaring the true valuation

    becomes the dominant strategy for every player. Pareto efficiency • A Pareto efficient outcome, which cannot be improved for at least one player without worsening the situation for others, can be achieved. Individual rationality • No player is worse off by participating in the mechanism compared to not participating. Weakly budget balanced • The total payments collected from players are non-negative, ensuring financial sustainability. Favorable Properties of VCG Mechanism
  10. © Hajime Mizuyama • Scheduling problem (to be solved in

    a game theoretical environment) – Players, i.e., jobs and/or machines, hold certain private information, which is necessary to fully formulate the scheduling problem. + • VCG mechanism – Players can be induced to declare their relevant private information truthfully. Scheduling auction Scheduling Auction
  11. © Hajime Mizuyama • There are three players, and each

    of them has a job to be processed on a single shared machine (player/job 𝑗 ∈ {1, 2, 3} ≡ 𝐽). • Job 𝑗 ’s processing time 𝑝' is public information, but its weight 𝑤' and due date 𝑑' are private information of player 𝑗 and unknown to the scheduler. Illustrative Example Player/Job (𝑗) 1 2 3 Processing time (𝑝" ) 50 35 65 Weight (𝑤" ) 15 7 5 𝑤" /𝑝" 3/10 1/5 1/13 Due date (𝑑") 100 70 80 Processing times and valuations
  12. © Hajime Mizuyama • Each player 𝑗 ∈ 𝐽, i.e.,

    (the owner of) each job 𝑗, evaluates every possible schedule 𝜋 ∈ Π( based only on the weighted tardiness of job 𝑗, that is, 𝑣' (𝜋) = −𝑤' max(0, 𝐶' 𝜋 − 𝑑' ). • Each player 𝑗 declares her/his evaluation to the scheduler as 𝑏' (𝜋) = −𝑤' ) max(0, 𝐶' 𝜋 − 𝑑' ), where 𝑤' ) = 𝑤' may not hold. • The scheduler chooses a schedule by 𝜋∗ ∈ argmin +∈,+ ∑'∈( 𝑤' ) max(0, 𝐶' 𝜋 − 𝑑' ). • Each player 𝑗 pays a fee calculated by VCG mechanism, which makes the truthful declaration (𝑤' ) = 𝑤') her/his dominant strategy. Case 1: Minimizing Total Weighted Tardiness
  13. © Hajime Mizuyama Illustrative Example: Case 1 (Full Schedules) 1

    2 3 1 2 3 1 3 2 1 2 3 1 2 3 1 3 2 𝝅 = (𝟏, 𝟐, 𝟑) 𝝅 = (𝟏, 𝟑, 𝟐) 𝝅 = (𝟐, 𝟑, 𝟏) 𝝅 = (𝟐, 𝟏, 𝟑) 𝝅 = (𝟑, 𝟏, 𝟐) 𝝅 = (𝟑, 𝟐, 𝟏) 𝐶 = (50, 85, 150) 𝑏 = (0, −105, − 350) 𝑠 = −455 𝐶 = (50, 150, 115) 𝑏 = (0, −560, −175) 𝑠 = −735 𝐶 = (150, 35, 100) 𝑏 = (−750, 0, −100) 𝑠 = −850 𝐶 = (85, 35, 150) 𝑏 = (0, 0, −350) 𝑠 = −350 𝐶 = (115, 150, 65) 𝑏 = (−225, −560, 0) 𝑠 = −785 𝐶 = (150, 100, 65) 𝑏 = (−750, −210, 0) 𝑠 = −960
  14. © Hajime Mizuyama Illustrative Example: Case 1 (Partial Schedules) 1

    2 1 3 3 2 1 2 1 3 3 2 𝝅 = (𝟏, 𝟐) 𝝅 = (𝟏, 𝟑) 𝝅 = (𝟐, 𝟑) 𝝅 = (𝟐, 𝟏) 𝝅 = (𝟑, 𝟏) 𝝅 = (𝟑, 𝟐) 𝐶 = (50, 85) 𝑏 = (0, −105) 𝑠 = −105 𝐶 = (50, 115) 𝑏 = (0, −175) 𝑠 = −175 𝐶 = (35, 100) 𝑏 = (0, −100) 𝑠 = −100 𝐶 = (85, 35) 𝑏 = (0, 0) 𝑠 = 0 𝐶 = (115, 65) 𝑏 = (−225, 0) 𝑠 = −225 𝐶 = (100, 65) 𝑏 = (−210, 0) 𝑠 = −210
  15. © Hajime Mizuyama Player 1 𝑡- 𝑏 = 𝑠 𝑏&-

    , (2, 3) − 𝑠 𝑏, (2, 1, 3) − 𝑏- ((2, 1, 3)) = −100 + 350 = 250 Player 2 𝑡. 𝑏 = −175 + 350 = 175 Player 3 𝑡/ 𝑏 = 0 − 0 = 0 Illustrative Example: Case 1 (Payment by Each Player)
  16. © Hajime Mizuyama • Each player 𝑗 ∈ 𝐽, i.e.,

    (the owner of) each job 𝑗, evaluates every possible schedule 𝜋 ∈ Π( based only on the weighted completion time of job 𝑗, that is, 𝑣' (𝜋) = −𝑤' 𝐶' (𝜋). • Each player 𝑗 declares her/his evaluation to the scheduler as 𝑏' (𝜋) = −𝑤' )𝐶' (𝜋), where 𝑤' ) = 𝑤' may not hold. • The scheduler chooses a schedule by 𝜋∗ ∈ argmin +∈,+ ∑'∈( 𝑤' )𝐶' 𝜋 . • Each player 𝑗 pays a fee calculated by VCG mechanism, which makes the truthful declaration (𝑤' ) = 𝑤') her/his dominant strategy. Case 2: Minimizing Total Weighted Completion Times
  17. © Hajime Mizuyama Illustrative Example: Case 2 1 2 3

    WSPT schedule of 𝑱 𝐶 = (50, 85, 150) 𝑏 = (750, 595, 750) 𝑠 = −2095 Assuming truthful declaration, WSPT rule will yield the schedule 𝑓(𝑏) = 1, 2, 3 . The social surplus of this schedule for 𝐽&- = 𝐽 ∖ 1 is −2095 + 750 = −1345. In general, when minimizing total weighted completion times, the payment will be: 𝑡' 𝑏 = ∑ !#/## $(!$/#$) 𝑤' 𝑝( 2 3 WSPT schedule of 𝑱%𝟏 𝐶 = (35, 100) 𝑏 = (245, 500) 𝑠 = −745 If player 1 does not exist, the outcome schedule for 𝐽&- is 𝑓(𝑏&- ) = 2, 3 , and its surplus is −745. Hence, the payment by player 1 will be: 𝑡- 𝑏 = −745 + 1345 = 600