Abstract
This paper studies the favorite machine model, where each machine has different speed for different types of jobs. The model is a natural generalization of the two related machines model and captures the features of some real life problems, such as the CPU–GPU task scheduling, the two products scheduling and the cloud computing task scheduling. We are interested in the game-theoretic version of the scheduling problem in which jobs correspond to self-interested users and machines correspond to resources. The goal is to design coordination mechanisms (local policies) with a small price of anarchy (PoA) for the scheduling game of favorite machines. We first analyze the well known Makespan policy for our problem, and provide exact bounds on both the PoA and the strong PoA (SPoA). We also propose a new local policy, called FF-LPT, which outperforms several classical policies (e.g., LPT, SPT, FF-SPT and Makespan) in terms of the PoA, and guarantees fast convergence to a pure Nash equilibrium. Moreover, computational results show that the FF-LPT policy also dominates other policies for random instances, and reveal some insights for practical applications.
Similar content being viewed by others
References
Andelman N, Feldman M, Mansour Y (2009) Strong price of anarchy. Games Econ Behav 2(65):289–317
Aumann RJ (1959) Acceptable points in general cooperative n-person games. Princeton University Press, Princeton, pp 287–324
Awerbuch B, Azar Y, Richter Y, Tsur D (2006) Tradeoffs in worst-case equilibria. Theor Comput Sci 361(2):200–209
Azar Y, Fleischer L, Jain K, Mirrokni V, Svitkina Z (2015) Optimal coordination mechanisms for unrelated machine scheduling. Oper Res 63(3):489–500
Bilò V, Flammini M, Monaco G, Moscardelli L (2015) Some anomalies of farsighted strategic behavior. Theory Comput Syst 56(1):156–180
Caragiannis I (2013) Efficient coordination mechanisms for unrelated machine scheduling. Algorithmica 66(3):512–540
Caragiannis I, Fanelli A (2019) An almost ideal coordination mechanism for unrelated machine scheduling. Theory Comput Syst 63(1):114–127. https://doi.org/10.1007/s00224-018-9857-2
Caragiannis I, Gkatzelis V, Vinci C (2017) Coordination mechanisms, cost-sharing, and approximation algorithms for scheduling. In: Web and internet economics—13th international conference, WINE 2017, Bangalore, 17–20 December 2017, Proceedings, pp 74–87
Chen B, Gürel S (2012) Efficiency analysis of load balancing games with and without activation costs. J Sched 15(2):157–164
Chen C, Xu Y (2019) Selfish load balancing for jobs with favorite machines. Oper Res Lett 47(1):7–11
Chen L, Ye D, Zhang G (2014) Online scheduling of mixed CPU-GPU jobs. Int J Found Comput Sci 25(06):745–761
Chen Q, Lin L, Tan Z, Yan Y (2017) Coordination mechanisms for scheduling games with proportional deterioration. Eur J Oper Res 263(2):380–389
Chen C, Penna P, Xu Y (2020) Online scheduling of jobs with favorite machines. Comput Oper Res 116(104):868. https://doi.org/10.1016/j.cor.2019.104868
Cho Y, Sahni S (1980) Bounds for list schedules on uniform processors. SIAM J Comput 9(1):91–103
Christodoulou G, Koutsoupias E, Nanavati A (2009) Coordination mechanisms. Theor Comput Sci 410(36):3327–3336
Chung C, Ligett K, Pruhs K, Roth A (2008) The price of stochastic anarchy. In: Proc. of the 1st int. symp. on algorithmic game theory (SAGT), LNCS, vol 4997, pp 303–314
Czumaj A, Vöcking B (2007) Tight bounds for worst-case equilibria. ACM Trans Algorithms (TALG) 3(1):4
de Jong J, Uetz M (2014) The sequential price of anarchy for atomic congestion games. In: Proc. of the 10th international conference on web and internet economics (WINE), LNCS, vol 8877, pp 429–434
Epstein L (2010) Equilibria for two parallel links: the strong price of anarchy versus the price of anarchy. Acta Inform 47(7):375–389
Feldman M, Tamir T (2009) Approximate strong equilibrium in job scheduling games. J Artif Intell Res 36:387–414
Feldmann R, Gairing M, Lücking T, Monien B, Rode M (2003) Nashification and the coordination ratio for a selfish routing game. In: ICALP 2003, vol 30. Springer, pp 514–526
Fiat A, Kaplan H, Levy M, Olonetsky S (2007) Strong price of anarchy for machine load balancing. In: ICALP 2007, vol 4596. Springer, pp 583–594
Finn G, Horowitz E (1979) A linear time approximation algorithm for multiprocessor scheduling. BIT Numer Math 19(3):312–320
Giessler P, Mamageishvili A, Mihalák M, Penna P (2016) Sequential solutions in machine scheduling games. CoRR abs/1611.04159
Gonzalez T, Ibarra OH, Sahni S (1977) Bounds for lpt schedules on uniform processors. SIAM J Comput 6(1):155–166
Hassin R, Yovel U (2015) Sequential scheduling on identical machines. Oper Res Lett 43(5):530–533
Hoeksma R, Uetz M (2019) The price of anarchy for utilitarian scheduling games on related machines. Discrete Optim 31:29–39
Immorlica N, Li LE, Mirrokni VS, Schulz AS (2009) Coordination mechanisms for selfish scheduling. Theor Comput Sci 410(17):1589–1598
Koutsoupias E, Papadimitriou C (1999) Worst-case equilibria. In: Proceedings of the 16th annual symposium on theoretical aspects of computer science (STACS). Springer, pp 404–413
Kress D, Meiswinkel S, Pesch E (2018) Mechanism design for machine scheduling problems: classification and literature overview. OR Spectrum 40(3):583–611
Leme RP, Syrgkanis V, Tardos É (2012) The curse of simultaneity. In: Proc. of innovations in theoretical computer science (ITCS), pp 60–67
Nong Q, Fan G, Fang Q (2017) A coordination mechanism for a scheduling game with parallel-batching machines. J Combin Optim 33(2):567–579
Schuurman P, Vredeveld T (2007) Performance guarantees of local search for multiprocessor scheduling. INFORMS J Comput 19(1):52–63
Vakhania N, Hernandez JA, Werner F (2014) Scheduling unrelated machines with two types of jobs. Int J Prod Res 52(13):3793–3801
Ye D, Chen L, Zhang G (2019) On the price of anarchy of two-stage machine scheduling games. J Combin https://doi.org/10.1007/s10878-019-00474-2
Zhang L, Zhang Y, Du D, Bai Q (2019) Improved price of anarchy for machine scheduling games with coordination mechanisms. Optim Lett 13(4):949–959
Acknowledgements
This work was supported by the National Natural Science Foundation of China (Nos. 71601152, 71720107002); the National Natural Science Foundation of China-Guangdong Joint Fund (No. U1901223); and the Natural Science Foundation of Guangdong Province (No. 2017A030312001).
Author information
Authors and Affiliations
Corresponding author
Additional information
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Part of this work was done while the first author was visiting Department of Computer Science, ETH Zurich, Switzerland. A preliminary version of some results of this paper appeared in Proc. COCOA 2017.
Postponed proofs
Postponed proofs
1.1 Proofs of Lemmas 2–6
Proof of Lemma 2
Since \({a_1}{} > 0\), we consider four subcases: Case 2.1 (\({a_2}{}, {c_1}{}=0\)), Case 2.2 (\({a_2}{}=0, {c_1}{}>0\)), Case 2.3 (\({a_2}{}>0, {c_1}{}=0\)) and Case 2.4 (\({a_2}{}, {c_1}{}>0)\), which correspond to rows 2.1 to 2.4-b in Table 3.
The bound for Case 2.3 is the minimum of the bounds of 2.3-a, 2.3-b and 2.3-c. Similarly, the bound for Case 2.4 is the minimum of the bounds of 2.4-a and 2.4-b. Finally, the maximum of the bounds of the four subcases give the bound for this lemma. These 4 subcases are summed up in Fig. 4b (orange line). \(\square \)
Proof of Lemma 3
Since \({a_1}{} = {a_2}{} = 0\), we consider three subcases: Case 3.1 (\({c_1}{}=0,{c_2}{}>0\)), Case 3.2 (\({c_1}{}>0,{c_2}{}=0\)) and Case 3.3 (\({c_1}{}>0,{c_2}{}>0\)), which correspond to rows 3.1 to 3.3-b in Table 3.
The bound for Case 3.3 is the minimum of the bounds of 3.3-a and 3.3-b. Finally, the maximum of the bounds of the three subcases give the bound for this lemma. These 3 subcases are summed up in Fig. 4c (orange line). \(\square \)
Proof of Lemma 4
Since \({a_1}{} = 0,\, {a_2}{},{c_1}{}>0\), we consider two subcases: Case 4.1 (\({c_2}{}=0\)) and Case 4.2 (\({c_2}{}>0\)), which correspond to rows 4.1-a to 4.2-c in Table 3.
The bound for Case 4.1 is the minimum of the bounds of 4.1-a and 4.1-b, where 4.1-b is the maximum of the bounds of 4.1-b.(8) and 4.1-b.(9). Note that it only needs one of constraints (8) and (9) holds, thus we take the maximum of 4.1-b.(8) and 4.1-b.(9). The bound for Case 4.2 is the minimum of the bounds of 4.2-a, 4.2-b, 4.2-c, where 4.2-a is the maximum of the bounds of 4.2-a.(14) and 4.2-a.(15). Finally, the maximum of the bounds of the two subcases give the bound for this lemma. These 2 subcases are summed up in Fig. 4d. \(\square \)
Proof of Lemma 5
This lemma considers the case \({a_1}{} = {c_1}{} = {c_2}{} = 0\) and \({a_2}{} > 0\), which correspond to rows 5-a to 5-b.(9) in Table 3.
Similar as the above proofs, the bound for this case is the minimum of the bounds of 5-a and 5-b, where 5-b is the maximum of the bounds of 5-b.(8) and 5-b.(9). Furthermore, the bound of 5-b.(8) is the minimum of the bounds of 5-b.(8)-a and 5-b.(8)-b, where 5-b.(8)-b is the maximum of 5-b.(8)-b.(12) and 5-b.(8)-b.(13). Moreover 5-b.(8)-b.(12) is the minimum of 5-b.(8)-b.(12)-a and 5-b.(8)-b.(12)-b, where 5-b.(8)-b.(12)-b is the maximum of 5-b.(8)-b.(12)-b.(10) and 5-b.(8)-b.(12)-b.(11). Finally, the bounds give the bound for this lemma, which is shown in Fig. 4e. \(\square \)
Proof of Lemma 6
This lemma consider the case \({a_1}{} = {c_1}{} = 0\) and \({a_2}{}, {c_2}{} > 0\), which correspond to rows 6.(16)-a to 6.(17)-b.(9) in Table 3.
Similar as the above proofs, the bound for this case is the maximum of the bounds of 6.(16) and 6.(17), where 6.(16) is the minimum of 6.(16)-a, 6.(16)-b and 6.(16)-c, and 6.(17) is the minimum of 6.(17)-a and 6.(17)-b. Furthermore, the bound of 6.(16)-c is the maximum of the bounds of 6.(16)-c.(8) and 6.(16)-c.(9), where 6.(16)-c.(9) is the minimum of 6.(16)-c.(9)-a and 6.(16)-c.(9)-b where 6.(16)-c.(9)-b is the maximum of 6.(16)-c.(9)-b.(12) and 6.(16)-c.(9)-b.(13). Besides, the bound of 6.(17)-a is the maximum of bounds of 6.(17)-a.(10) and 6.(17)-a.(11), and 6.(17)-b is the maximum of 6.(17)-b.(8) and 6.(17)-b.(9). Finally, the bounds give the bound for this lemma, which is shown in Fig. 4f. \(\square \)
1.2 Proof of lower bound (Lemma 7)
Table 2 gives instances that match all the bounds of Theorem 1. Each instance is represented by the setting of Fig. 2 and each symbol (e.g. \({a_1}{}\), \({a_2}{}\), \({b_1}{}\dots \)) represents at most one job.
Proposition 20
The optimal makespan of each instance of Table 2 is at most 1.
Proof
It is easy to see that, for every instance of Table 2, the optimum schedule shown in Fig. 2 satisfies \(\max \{\ell _1^*, \ell _2^*\} \le 1\). Hence we can have \(opt \le 1\) even though the above schedule is not guaranteed to be a SE, because the optimal SE can only have better makespan than that schedule. \(\square \)
Proposition 21
Each schedule of Table 2 is a NE.
Proof
Because \(\ell _1 \ge \ell _2\), no job in machine 2 can reduce its cost by moving to machine 1. Thus we only need to check that if there is no single job in machine 1 would benefit from moving to machine 2. Let \(\ell _1'\) and \(\ell _2'\) be the new loads of machine 1 and 2, respectively, after some movements of the jobs as stated in the corresponding context.
-
LB1 If \({a_2}{}\) moves to machine 2, \(\ell _2' = \ell _2 + {a_2}{}/s = \frac{s^3+s^2+s+1}{s^3+2} = \ell _1\).
If \({c_2}{}\) moves to machine 2, \(\ell _2' = \ell _2 + {c_2}{} \cdot s = \frac{s^3+s^2+s+1}{s^3+2} = \ell _1\).
-
LB2 If \({a_2}{}\) moves to machine 2, \(\ell _2' = \ell _2 + {a_2}{}/s = \frac{s^2+2s+1}{2s+1} = \ell _1\).
If \({c_2}{}\) moves to machine 2, \(\ell _2' = \ell _2 + {c_2}{} \cdot s = \frac{2s^2+2s}{2s+1} \ge \ell _1 = \frac{s^2+2s+1}{2s+1}\).
-
LB3 If \({a_2}{}\) moves to machine 2, \(\ell _2' = \ell _2 + {a_2}{}/s = \frac{s+1}{s} = \ell _1\).
If \({c_2}{}\) moves to machine 2, \(\ell _2' = \ell _2 + {c_2}{} \cdot s = 2 \ge \ell _1 = \frac{s+1}{s}\).
-
LB4 If \({a_2}{}\) moves to machine 2, \(\ell _2' = \ell _2 + {a_2}{}/s = \frac{s^3-s^2+2s-1}{s^3-s^2+s-1} = \ell _1\).
If \({c_2}{}\) moves to machine 2, \(\ell _2' = \ell _2 + {c_2}{} \cdot s = \frac{s^4-s^3+s^2-1}{s^3-s^2+s-1} \ge \ell _1 = \frac{s^3-s^2+2s-1}{s^3-s^2+s-1}\) by \(s \ge s_3 \approx 1.755\).
-
LB5 If \({a_2}{}\) moves to machine 2, \(\ell _2' = \ell _2 + {a_2}{}/s = \frac{3}{2} \ge \ell _1 = \frac{s+1}{2}\) by \(s \le s_5 =2\).
If \({c_2}{}\) moves to machine 2, \(\ell _2' = \ell _2 + {c_2}{} \cdot s = \frac{s+2}{2} \ge \ell _1 = \frac{s+1}{2}\).
-
LB6 If \({a_2}{}\) moves to machine 2, \(\ell _2' = \ell _2 + {a_2}{}/s = \frac{s^2-s+1}{s^2-s} = \ell _1\).
If \({c_2}{}\) moves to machine 2, \(\ell _2' = \ell _2 + {c_2}{} \cdot s = s \ge \ell _1 = \frac{s^2-s+1}{s^2-s}\) by \(s \ge s_5 = 2\).
-
LB7 If \({a_2}{}\) moves to machine 2, \(\ell _2' = \ell _2 + {a_2}{}/s = \frac{s^2}{2s-1} = \ell _1\).
-
LB8 If \({a_2}{}\) moves to machine 2, \(\ell _2' = \ell _2 + {a_2}{}/s = 2 \ge \ell _1 = \frac{s+1}{s}\). \(\square \)
According to Proposition 21 we know that no single job can reduce its cost by moving to other machine. It also holds that
Proposition 22
Epstein 2010 Given a schedule on two machines which is a NE, if this schedule is not a SE, then a coalition of jobs where every job can reduce its cost consists of at least one job of each one of the machines.
Proposition 23
If a schedule of Table 2 is not a SE, then a coalition of jobs where every job can reduce its cost must consist of job \({a_2}{}\).
Proof
Because good job will become bad job after swap, if the coalition consists of only good jobs, it holds that \(\ell _1'+\ell _2' \ge \ell _1+\ell _2\). Thus at least one of the cost of the jobs will get worse after swap. Therefore, if a schedule is not a SE, then a coalition of jobs where every job can reduce its cost must consist of at least one bad job.
For LB7 and LB8, \({a_2}{}\) is in the coalition for sure, since \({a_2}{}\) is the only good job. For other instances in Table 2, if \({a_2}{}\) is not in the coalition then \({b_2}{}\) must in it according to Proposition 22. Next we will show that \({a_2}{}+{b_2}{}/s \ge \ell _2\) for every instance of them, so that if \({b_2}{}\) is in the coalition then \({b_2}{}\) will not benefit from moving to machine 1. Thus \({a_2}{}\) must be in the coalition. For LB1 to LB3, we have \({a_2}{} \ge \ell _2\) thus \({a_2}{}+{b_2}{}/s \ge \ell _2\) holds. For LB4, \({a_2}{}+{b_2}{}/s = \frac{2s^2-s}{s^3-s^2+s-1} \ge \ell _2 = 1\) by \(s \le s_4\). For LB5, \({a_2}{}+{b_2}{}/s = \frac{s}{2} +\frac{1}{2} \ge \ell _2 = 1\). For LB6, \({a_2}{}+{b_2}{}/s = \frac{1}{s-1} +\frac{1}{s} \ge \ell _2 = 1\) by \(s \le s_6 \approx 2.154\). \(\square \)
Proposition 24
For any instance of Table 2, if \({a_2}{}\) is the only job of machine 1 that in a coalition of jobs, these jobs cannot reduce their costs at the same time.
Proof
According to Proposition 22, if \({a_2}{}\) is the only job of machine 1 that in a coalition of jobs, there must be some jobs of machine 2 in this coalition. Thus this proposition says there are no such a \({a_2}{}\text {-}\{*\}\) swap that all these jobs can benefit simultaneously, where \(\{*\}\) is any subset of jobs of machine 2. We prove this for the 8 instances of Table 2 one by one.
-
LB1 In this case \({a_2}{}\) moves to machine 2 and \({c_2}{}\) stays, it holds that no job (or subset of jobs) in machine 2 can benefit from moving to machine 1, because
-
No \({a_2}\text {-} {b_2}{}\) swap: \(\ell _1' = {c_2}{} + {b_2}{}/s = \frac{s+2}{s^3+2} \ge \ell _2 = \frac{s^3+1}{s^3+2}\) by \(s \le s_1 \approx 1.325\);
-
No \({a_2}\text {-} {d_1}{}\) swap: \(\ell _1' = {c_2}{} + {d_1}{} \cdot s = \frac{s^3+1}{s^3+2} = \ell _2\);
-
No \({a_2}\text {-} {d_2}{}\) swap: \(\ell _1' = {c_2}{} + {d_2}{} \cdot s = \frac{s^4-s^3-s^2+3s+1}{s^3+2} > \ell _2 = \frac{s^3+1}{s^3+2}\) by \(s \le s_1\).
-
-
LB2 In this case \({a_2}{}\) moves to machine 2 and \({c_2}{}\) stays, it holds that no job (or subset of jobs) in machine 2 can benefit from moving to machine 1, because
-
No \({a_2}\text {-} {b_2}{}\) swap: \(\ell _1' = {c_2}{} + {b_2}{}/s = 1 \ge \ell _2 = \frac{s^2+s}{2s+1}\) by \(s \le s_2 \approx 1.618\);
-
No \({a_2}\text {-} {d_2}{}\) swap: \(\ell _1' = {c_2}{} + {d_2}{} \cdot s = \frac{s^2+s+1}{2s+1} > \ell _2 = \frac{s^2+s}{2s+1}\).
-
-
LB3 In this case \({a_2}{}\) moves to machine 2 and \({c_2}{}\) stays, it holds that no job (or subset of jobs) in machine 2 can benefit from moving to machine 1, because
-
No \({a_2}\text {-} {b_2}{}\) swap: \(\ell _1' = {c_2}{} + {b_2}{}/s = 1 = \ell _2\);
-
No \({a_2}\text {-} {d_2}{}\) swap: \(\ell _1' = {c_2}{} + {d_2}{} \cdot s = \frac{1}{s}+2s-s^2 > \ell _2 = 1\) by \(s \le s_3 \approx 1.755\).
-
-
LB4 In this case \({a_2}{}\) moves to machine 2 and \({c_2}{}\) stays, it holds that no job (or subset of jobs) in machine 2 can benefit from moving to machine 1, because
-
No \({a_2}\text {-} {b_2}{}\) swap: \(\ell _1' = {c_2}{} + {b_2}{}/s = 1 = \ell _2\);
-
No \({a_2}\text {-} {d_2}{}\) swap: \(\ell _1' = {c_2}{} + {d_2}{} \cdot s = 1 = \ell _2\).
-
-
LB5 In this case \({a_2}{}\) moves to machine 2 and \({c_2}{}\) stay, it holds that no job (or subset of jobs) in machine 2 can benefit from moving to machine 1, because
-
No \({a_2}\text {-} {b_2}{}\) swap: \(\ell _1' = {c_2}{} + {b_2}{}/s = 1 = \ell _2\);
-
No \({a_2}\text {-} {d_2}{}\) swap: \(\ell _2' = {b_2}{} + {a_2}{} /s = \ell _1 = \frac{s+1}{2} \);
-
No \({a_2}\text {-} \{ {b_2}{},{d_2}{}\}\) swap: \(\ell _1' = {c_2}{} + {b_2}{}/s + {d_2}{} \cdot s = \frac{-s^2+2s+2}{2} \ge \ell _2 = 1\).
-
-
LB6 In this case \({a_2}{}\) moves to machine 2 and \({c_2}{}\) stays, it holds that no job (or subset of jobs) in machine 2 can benefit from moving to machine 1, because
-
No \({a_2}\text {-} {b_2}{}\) swap: \(\ell _1' = {c_2}{} + {b_2}{}/s = 1 = \ell _2\).
-
-
LB7 In this case \({a_2}{}\) moves to machine 2, it holds that no job (or subset of jobs) in machine 2 can benefit from moving to machine 1, because
-
No \({a_2}\text {-} {d_1}{}\) swap: \(\ell _1' = {d_1}{} \cdot s = \frac{s(s-1)^2}{2s-1} \ge \ell _2 = \frac{s^2-s}{2s-1}\) by \(s \ge s_6 \approx 2.154\);
-
No \({a_2}\text {-} {d_2}{}\) swap: \(\ell _1' = {d_2}{} \cdot s = \frac{s^2-s}{2s-1} = \ell _2\).
-
-
LB8 In this case \({a_2}{}\) moves to machine 2, it holds that no job (or subset of jobs) in machine 2 can benefit from moving to machine 1, because
-
No \({a_2}\text {-} {d_1}{}\) swap: \(\ell _1' = {d_1}{} \cdot s = 1 \ge \ell _2 = \frac{s^2-1}{s^2}\);
-
No \({a_2}\text {-} {d_2}{}\) swap: \(\ell _1' = {d_2}{} \cdot s = \frac{s^2-s-1}{s} \ge \ell _2 = \frac{s^2-1}{s^2}\) by \(s \ge s_7 \approx 2.247\). \(\square \)
-
Lemma 25
Each schedule of Table 2 is a SE.
Proof
According to Propositions 23 and 24, we know that schedules of LB7 and LB8 are SE, since \({a_2}{}\) is the only job in machine 1. For LB1 to LB6, we will prove there is no such coalition of jobs can reduce their costs at the same time:
-
LB1 According to Proposition 23, we only need to consider the case both \({a_2}{}\) and \({c_2}{}\) of machine 1 are in the coalition. However, we have
-
No \(\{{a_2}{},{c_2}{}\}\text {-}\{{b_2}{},{d_2}{}\}\) swap: \(\ell _2' = {d_1}{} + {a_2}{}/s + {c_2}{} \cdot s = \frac{3s^2+2s-1}{s^3+2} \ge \ell _1 = \frac{s^3+s^2+s+1}{s^3+2}\) by \(s \le s_1\).
Since \(\frac{s^2-1}{s^3+2} \le \frac{s^3-s^2-s+2}{s^3+2} \le \frac{s}{s^3+2}\) by \(s \le s_1\), i.e., \({d_1}{}\le {d_2}{} \le {b_2}{}\), we can know that \({a_2}{}\) and \({c_2}{}\) will not benefit even if the smallest job \({d_1}{}\) of machine 2 stays still. Thus all the jobs in machine 2 should be in the coalition. Since
-
No \(\{{a_2}{},{c_2}{}\}\text {-}\{{b_2}{},{d_1}{},{d_2}{}\}\) swap: \(\ell _1' = {b_2}{}/s + {d_1}{} \cdot s + {d_2}{} \cdot s = \frac{s^4 - s^2 +s +1}{s^3+2} \ge \ell _2 = \frac{s^3+1}{s^3+2}\) by \(s \le s_1\),
we know that there is no such coalition of jobs that every job can reduce its cost by deviating simultaneously.
-
-
LB2 Similar as the former case, we consider the case both \({a_2}{}\) and \({c_2}{}\) are in the coalition. We get the same result by the fact that
-
No \(\{{a_2}{},{c_2}{}\}\text {-}\{*\}\) swap: \(\ell _2' \ge {a_2}{}/s + {c_2}{} \cdot s = \frac{s^2+2s+1}{2s+1} = \ell _1\).
-
-
LB3 Considering the case both \({a_2}{}\) and \({c_2}{}\) are in the coalition, we have that
-
No \(\{{a_2}{},{c_2}{}\}\text {-}\{*\}\) swap: \(\ell _2' \ge {a_2}{}/s + {c_2}{} \cdot s = \frac{s+1}{s} = \ell _1\).
-
-
LB4 Considering the case both \({a_2}{}\) and \({c_2}{}\) are in the coalition, we have that
-
No \(\{{a_2}{},{c_2}{}\}\text {-}\{*\}\) swap: \(\ell _2' \ge {a_2}{}/s + {c_2}{} \cdot s = \frac{s^4-ss^3+2s^2}{s^3-s^2+s-1} \ge \ell _1 = \frac{s^3-s^2+2s-1}{s^3-s^2+s-1}\) by \(s \ge s_3 \approx 1.755\).
-
-
LB5 Considering the case both \({a_2}{}\) and \({c_2}{}\) are in the coalition, we have that
-
No \(\{{a_2}{},{c_2}{}\}\text {-}\{*\}\) swap: \(\ell _2' \ge {a_2}{}/s + {c_2}{} \cdot s = \frac{s+1}{2} = \ell _1\).
-
-
LB6 Considering the case both \({a_2}{}\) and \({c_2}{}\) are in the coalition, we have that
-
No \(\{{a_2}{},{c_2}{}\}\text {-}\{*\}\) swap: \(\ell _2' \ge {a_2}{}/s + {c_2}{} \cdot s = \frac{1}{s^2-s}+s-1 \ge \ell _1 = \frac{s^2-s+1}{s^2-s}\) by \(s \ge s_5 = 2\).\(\square \)
-
1.3 Proofs of Lemmas 9–12
Proof of Lemma 9
Rows 2.1, 2.2 and 3.4-a in Table 3 cover all the cases. Since each of the 3 bounds is below the claimed bound \(\frac{s^3+s^2+s+1}{s^2+s+1}\), the lemma is proved. \(\square \)
Proof of Lemma 10
Similar to the proof of SPoA, according to rows 10.1-a to 10.2 of Table 3 we have
for \(s \ge 1\), thus the lemma is proved. \(\square \)
Proof of Lemma 11
The bound of row 11 of Table 3 implies this lemma. \(\square \)
Proof of Lemma 12
We know that
If \({a_2}{}\) goes to machine 2, the cost of \({a_2}{}\) becomes
Similarly, if \({c_2}{}\) goes to machine 2, the cost of \({c_2}{}\) becomes
Thus the schedule is a NE. \(\square \)
Rights and permissions
About this article
Cite this article
Chen, C., Xu, Y. Coordination mechanisms for scheduling selfish jobs with favorite machines. J Comb Optim 40, 333–365 (2020). https://doi.org/10.1007/s10878-020-00592-2
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10878-020-00592-2