40
Submitted to Operations Research manuscript OPRE-2009-04-180.R4 Coordination of Outsourced Operations at a Third-Party Facility Subject to Booking, Overtime, and Tardiness Costs Xiaoqiang Cai Department of Systems Engineering and Engineering Management, The Chinese University of Hong Kong, Shatin, NT, Hong Kong, [email protected] George L. Vairaktarakis Weatherhead School of Management, Department of Operations, Case Western Reserve University, 10900 Euclid Avenue, Cleveland, OH 44106-7235, [email protected] We consider an outsourcing problem where a group of manufacturers outsource jobs to a single third-party who owns a specialized facility needed to process these jobs. The third-party announces the time slots available on her facility and the associated prices. Manufacturers reserve, on a first-come-first-book basis, time slots that they desire to utilize. Booking of overtime is possible, at a higher cost. A job completed after its due date incurs a tardiness cost. Each manufacturer books chunks of facility time and sequences his jobs over the time slots booked, so as to minimize his booking, overtime, and tardiness costs. This model captures the main features of outsourcing operations in industries like semiconductor manufacturing, biotechnology, drug R&D, etc. In current practice, the third-party executes all outsourced jobs without performing optimization and coordination. We investigate the issue of the third-party serving as a coordinator to create a win-win solution to all. We propose a model based on a cooperative game as follows: (i) Upon receiving the booking requests from the manufacturers, the third-party derives an optimal solution if manufacturers cooperate, and computes the savings achieved; (ii) She devises a savings sharing scheme so that, in monetary terms, every manufacturer is better off to coordinate than act independently or coalesce with a sub-group of manufacturers; (iii) For her work, the third-party withholds a portion ρ of the booking revenue paid by the manufacturers for time slots that are released after coordination. We further design a truth-telling mechanism, which can prevent any self- interested manufacturer from purposely reporting false job data so as to take advantage of the coordination scheme. We also show that the mechanism still ensures the (modified) savings sharing distribution to be in the core of the cooperative game. Finally, we perform a large set of simulation to assess the value of coordination to the various parties involved. Subject classifications : Outsourcing; Scheduling and planning; Cooperative game; Truth-telling Mechanism. 1

Coordination of Outsourced Operations at a Third-Party Facility Subject to Booking, Overtime, and Tardiness Costs

  • Upload
    case

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Submitted to Operations Researchmanuscript OPRE-2009-04-180.R4

Coordination of Outsourced Operations at aThird-Party Facility Subject to Booking, Overtime,

and Tardiness CostsXiaoqiang Cai

Department of Systems Engineering and Engineering Management, The Chinese University of Hong Kong,Shatin, NT, Hong Kong, [email protected]

George L. VairaktarakisWeatherhead School of Management, Department of Operations, Case Western Reserve University,

10900 Euclid Avenue, Cleveland, OH 44106-7235, [email protected]

We consider an outsourcing problem where a group of manufacturers outsource jobs to a single third-party

who owns a specialized facility needed to process these jobs. The third-party announces the time slots

available on her facility and the associated prices. Manufacturers reserve, on a first-come-first-book basis,

time slots that they desire to utilize. Booking of overtime is possible, at a higher cost. A job completed

after its due date incurs a tardiness cost. Each manufacturer books chunks of facility time and sequences

his jobs over the time slots booked, so as to minimize his booking, overtime, and tardiness costs. This

model captures the main features of outsourcing operations in industries like semiconductor manufacturing,

biotechnology, drug R&D, etc. In current practice, the third-party executes all outsourced jobs without

performing optimization and coordination.

We investigate the issue of the third-party serving as a coordinator to create a win-win solution to all. We

propose a model based on a cooperative game as follows: (i) Upon receiving the booking requests from the

manufacturers, the third-party derives an optimal solution if manufacturers cooperate, and computes the

savings achieved; (ii) She devises a savings sharing scheme so that, in monetary terms, every manufacturer is

better off to coordinate than act independently or coalesce with a sub-group of manufacturers; (iii) For her

work, the third-party withholds a portion ρ of the booking revenue paid by the manufacturers for time slots

that are released after coordination. We further design a truth-telling mechanism, which can prevent any self-

interested manufacturer from purposely reporting false job data so as to take advantage of the coordination

scheme. We also show that the mechanism still ensures the (modified) savings sharing distribution to be

in the core of the cooperative game. Finally, we perform a large set of simulation to assess the value of

coordination to the various parties involved.

Subject classifications : Outsourcing; Scheduling and planning; Cooperative game; Truth-telling

Mechanism.

1

Author: Cai and Vairaktarakis: Coordination of Outsourced Operations2 Article submitted to Operations Research; manuscript no. OPRE-2009-04-180.R4

1. Introduction and Literature Review

Outsourcing has become an important business strategy of many firms today. Unlike large

manufacturers of the past century, the most powerful firms of the 21st century are vertically

disintegrated – they focus on their internal core competencies and outsource other operations to

third parties with specialized facilities. Typical examples include high-tech manufacturing giants

like Apple, Dell, Lucent, Cisco, Motorola and others, who outsource or subcontract major parts of

their production. The ability of outsorucing is even more critical for small and mid-size enterprises

(SME). As emphasized by Holton and Dastmalchi (2008), for SME, “the ability to outsource ... is

not just a matter of convenience ...; it is a pre-requisite for survival. Without the ability to farm

out their manufacturing..., they simply lack the economies of scale that allow them to effectively

compete with their larger competitors.”

The main purpose of this article is to develop a model to coordinate the operations outsourced

by multiple manufacturers to a single third-party1 (3P). This type of 3P/manufacturer relationship

is referred to as sole sourcing in the literature (see Elmaghraby, 2000). The problem we address

can be stated as follows. The 3P announces, at time 0, the available time slots of her facility and

the associated price of each. The price of a time slot is determined by 3P according to seasonality

of demand for her capacity. Overtime can also be requested, subject to a maximum amount and

at a higher price. Time slots that are not available to manufacturers are reserved for 3P’s internal

production or for prior commitments.

Manufacturers are free to book the available time slots on a first-come-first-book (FCFB) basis.

Upon entering the system, a manufacturer selects amongst the time slots that are still available,

so as to process his jobs at minimum cost. Except for the booking payment, a manufacturer

suffers late penalties for his jobs completed after their due-dates, as well as the cost for overtime

if such is requested. Evidently, early time slots are always preferred with respect to reducing

tardiness penalties. However, early time slots may command a higher booking price and hence

the manufacturer may be better off to select a later one of lower booking cost. Alternatively, a

manufacturer may opt to buy overtime so as to avoid booking additional time or to reduce his

tardiness penalties.

After the booking process is completed, 3P knows the reservation by each manufacturer and

the schedule of his jobs. The sequential arrivals of manufacturers to the system imply that there

is no coordination amongst manufacturers and that significant savings may be possible if she

1 We adopt the usual terminology of “third-party” with the understanding that the “manufacturer” and his “customer”are the other two parties.

Author: Cai and Vairaktarakis: Coordination of Outsourced OperationsArticle submitted to Operations Research; manuscript no. OPRE-2009-04-180.R4 3

coordinates production. This leads to the problem we aim to investigate. Currently the industry

practice is that 3P executes the jobs submitted by the manufacturers according to their reservations,

without optimization or coordination. Can 3P help reduce costs, re-distribute the resulting savings,

and increase the utilization of her capacity? How to prevent self-interested players from taking

advantage of the savings sharing scheme, by reporting misleading information ? These and other

related questions are what we aim to address in this article.

The operational protocol of the Semiconductor Product Analysis and Design Enhancement

(SPADE) Center (www.ust.hk/spade) is a typical example that validates the applicability of our

model. SPADE provides services to local and nearby semiconductor companies. A group of spe-

cialized facilities are available, which can be booked at a cost. Rules of the booking scheme are

available in http : //www.ust.hk/spade/pricelist.html, and include the following:

(a) Jobs performed on Sundays and public holidays are charged at 2 × basic rate;

(b) Jobs performed during non-office hours are charged at 1.5 × basic rate;

Rule (a) shows that there are two types of charging rates: basic and weekend rates, corresponding

to the regular and peak rates in our model. The office hours of the SPADE Center are: 9:00 a.m. to

5:30 p.m. (Mondays to Fridays) and 9:00 a.m. to 12:00 p.m. (Saturdays). Rule (b) indicates that

overtime booking is possible, at an overtime rate. This validates another key feature of our model

- the option of overtime.

MyUMC (www.umc.com/english/about/j.asp), UMC’s online supply chain portal, is another

example that demonstrates how a large semiconductor company provides information sharing and

real-time capacity booking to her customers. Founded in 1980 as Taiwan’s first semiconductor com-

pany, UMC is now a world-leading semiconductor foundry, specializing in contract manufacturing

of customer designed IC’s. To foster close collaboration with her customers as well as partners

throughout the entire supply chain, UMC has developed and maintained MyUMC since 1998. This

is a full-service information portal, offering her customers 24-hour access to detailed account infor-

mation such as manufacturing, engineering, design and financial data. In particular, MyUMC’s

capacity booking engine ATP (Available to Promise) allows customers to receive instant capacity

availability information and to book production capacity in UMC’s fabs online. Evidently, coordi-

nated capacity and production planning opportunities exist within such a framework.

To summarize, SPADE’s online reservation system, UMC’s MyUMC, and specialized facilities

with an online booking portal (additional examples include, e.g., Bosch Institute’s hybrid PCR

machine, aus.calsnet.net/ibr molbiol cal), fall naturally into the framework of our model. Our

Author: Cai and Vairaktarakis: Coordination of Outsourced Operations4 Article submitted to Operations Research; manuscript no. OPRE-2009-04-180.R4

model is also applicable when reservations are made in other formats (e.g., telephone booking, or

paper form). While the production and information protocols of many existing systems coincide

with the assumptions of our model, there is no evidence that cooperative models and analytical

methodologies like those prescribed in this article are utilized, primarily because the literature on

production chain cooperation is scarce.

The model considered in this article significantly differs from the production scheduling literature

in several aspects. First, existing literature carries the common hypothesis that one manufacturer

possesses all capacity needed to process all his jobs. Second, our model considers the coordination

of activities using incentive payments that render every manufacturer better off by abiding to

the coordinated schedule. Third, the limited literature on cooperative sequencing games does not

consider facility booking, whereas as we see from SPADE and MyUMC, booking decisions should

be considered together with sequencing decisions.

The novelty of the proposed approach and the diverse applications provide the opportunity for

research on a variety of operational protocols. Only a few papers closely related to ours have

appeared recently. Aydinliyim and Vairaktarakis (2010) consider a similar operational protocol but

focus on a different problem where the manufacturers are concerned about the weighted flowtime

of their jobs. Moreover, overtime (which is one of the most difficult issues to tackle) is not allowed.

Because of the difference in the problem, their optimization algorithms and the cooperative game

are very different from what we develop here. In particular, the truth-telling mechanism we devise

represents a significant new effort to address the information misreporting issue in outsourcing

cooperative games.

Vairaktarakis and Aydinliyim (2007) consider a problem where a set of players subcontract work

to a single 3P who aims to maximize the utilization of her facility. Each player, on the other hand,

wants to complete his in-house and subcontracted workload as soon as possible – his main concern

is thus how to properly align his in-house production plan with the outsourcing decision, so that his

jobs can be finished as quick as possible. Evidently, this model bears no similarity with our model,

does not incorporate booking or overtime costs, and the objective of each player is his makespan

minimization. The authors propose a game which is found to be convex and propose coordinating

schemes. Though a computational experiment, they compute the decentralization cost against the

competitive version of the problem studied in Vairaktarakis (2008).

Hall and Liu (2010) consider a different protocol that involves bidding, which concerns a make-

to-order supply chain where the manufacturers have insufficient production capacity to process all

Author: Cai and Vairaktarakis: Coordination of Outsourced OperationsArticle submitted to Operations Research; manuscript no. OPRE-2009-04-180.R4 5

orders and hence use bidding strategies to book the capacity available at a single 3P. The authors

study the issue of coordination through incentive payments for cases where such scheme is possible

and tractable. Significant results are obtained based on the game-theoretic model.

Another related body of literature deals with sequencing games. Curiel et al. (1989) first consider

such a problem, where each player wishes to optimize a weighted flowtime objective on a single

machine. They show that the corresponding game is convex under some conditions, which implies

that the core is guaranteed to be non-empty (see Gillies(1959) and Shapley (1971) for the concept

of core). For arbitrary regular objective function and a class of σ0-Component Additive Games,

Curiel et al. (1994) prove that the core is non-empty and propose one such core element. Hamers,

Borm and Tijs (1995) consider the case with job release times, and show that these games are not

convex except when all jobs have unit processing times or unit weights. Borm et al. (2002) consider

the case with due dates. For three due-date based criteria they show that the core is non-empty

and prove convexity for a special subclass. Hamers et al. (2002) study precedence constraints on

the jobs and prove that the corresponding games are convex, if the precedence relations are parallel

chains. Calleja et al. (2004) consider a model where each job might be of interest to many players.

They show that the core is non-empty if the underlying cost functions are additive with respect to

the initial order of jobs. Hamers et al. (1999) investigate games with m parallel identical machines.

Calleja et al. (2002) consider a multi-machine problem where every player has two operations, each

to be processed on a specific machine, and the objective is to minimize the maximum weighted

completion time. Curiel et al. (2002) present a survey of sequencing games that includes most of

the aforementioned articles.

The above literature deals with cooperation as a means of achieving centralized benefits. Alter-

natively, one may choose competition as a vehicle for coordination. However, this type of literature

is at its infancy. In Bukchin and Hanany (2007), each player’s objective is the sum of completion

times of his jobs. They model competition on a single machine assuming infinite capacity and

constant unit production cost for the remaining work. The authors measure the difference between

the centralized cost and the overall cost resulted from competition, Also, they provide an incen-

tive rule that causes players to mimic the centralized strategies. Agnetis et al. (2004) consider a

scheduling problem between two agents, each competing to perform their respective jobs on a com-

mon processing resource. Leung, Pinedo, and Wan (2010) generalize this problem to the case with

multiple machines. Relationships between two-agent scheduling problems and other areas such as

rescheduling and scheduling subject to availability constraints are established.

Author: Cai and Vairaktarakis: Coordination of Outsourced Operations6 Article submitted to Operations Research; manuscript no. OPRE-2009-04-180.R4

The remainder of this article is organized as follows. We start the next section with a formal

description of our model together with supporting assumptions. Algorithms are presented in Sec-

tion 3 for computing the optimal booking and sequencing decisions. In Section 4 the savings sharing

scheme is described. The truth-telling mechanism is presented in Section 5. In Section 6 we report

our findings on the value of coordination. Concluding remarks are made in Section 7. The online

appendices include our results on: (i) the total number of tardy jobs; (ii) the total weighted tardi-

ness cost; (iii) an algorithm that computes the savings of any coalition; and (iv) a counterexample

to show the non-convexity of the cooperative game.

2. Model and Assumptions

We consider the following problem: Let M be a group of manufacturers and 3P a single third-party.

Each m ∈M outsources to 3P a set Nm of operations (jobs) according to the following protocol:

At time 0, 3P announces a set of K available time slots [at, bt] as well as the associated booking

prices ht, t = 1,2, . . . ,K. Let Wt = [at, bt] denote the t-th time slot; also referred to as the t-th

manufacturing window. If Wt is reserved, an amount Ot of overtime can be booked at a unit rate

αt for up to Ot time units. Then, following the announced availability of 3P, each m∈M books a

subset of windows Wm ⊆ {1,2, . . . ,K} and the amount of overtime of each, and schedules his jobs

over the time slots booked, so as to minimize the total booking cost∑

t∈Wmht, plus a tardiness

penalty βj for each job j completed after its due-date dj, plus overtime cost. Let σ0 denote the

concatenation of the initial schedules of all manufacturers m∈M on 3P’s facility.

Without loss of generality, we assume that every m∈M determines his manufacturing windows

Wm at time 0, 3P replaces the original schedule σ0 with the coordinated schedule, say σ∗, at

time 0, and the resulting schedule σ∗ is executed starting at time 0. This assumption is made for

notational simplicity only. In reality, at time 0, 3P announces her availability following a future

time t0. Between time 0 and t0, manufacturers reserve capacity amongst the available time windows

in a first-come-first-book (FCFB) fashion, say 1,2, . . . , |M |. Then,

Wm ⊆ {1,2, . . . ,K}−W1− · · ·−Wm−1 for m∈M.

Each manufacturer schedules his own jobs over the windows that he has booked. The overall

initial schedule σ0 is the natural outcome of concatenating the schedules of all manufacturers. Then,

at time t0, 3P reschedules all jobs so as to maximize the savings for players in M as a whole, thus

forming the overall optimal schedule σ∗. Without loss of generality we assume that all activities

that take place during the booking interval [0, t0] happen instantaneously at time 0 (i.e., assume

t0 = 0). Similarly, we assume that all jobs in N =∪m∈MNm are available at time 0.

Author: Cai and Vairaktarakis: Coordination of Outsourced OperationsArticle submitted to Operations Research; manuscript no. OPRE-2009-04-180.R4 7

Each job j ∈N requires a processing time pj at 3P’s facility. We assume that the total processing

requirements of jobs in Nm do not exceed the available capacity. Otherwise manufacturer m has

to seek service elsewhere. We assume that the setup required between jobs is either negligible or

included in the processing times. Moreover, we assume:

1. All windows Wt = [at, bt] have the same amount of available capacity, i.e., L = bt − at for

t = 1,2, . . . ,K, for given integer L. The processing times pi and the due dates di are integer.

2. Every job may halt at the end of a manufacturing window and resume in a subsequent one.

3. The booking cost ht may only take on the value h or hP , where h is the booking cost on a

regular demand day while hP is the cost on a peak demand day, with hP > h.

4. Window Wt : t = 1,2, . . . ,K has Ot = O of maximum available overtime.

5. One unit of overtime production during Wt costs αt dollars, αt > ht/L and at ∈ {α,αP}, where

α and αP are the overtime rates for regular windows and peak windows, respectively.

6. For every job j ∈Nm, its due-date dj coincides with the end of a manufacturing window.

Introducing the assumptions makes our model more presentable without sacrificing applicability.

Assumption 1 reflects the reality that in practice, capacity bookings are made in multiples of a

basic time unit (e.g., hour). Assumption 2 captures common practice where operations halted may

resume between shifts. Assumption 3 allows 3P to segment her capacity so as to charge a premium

during peak demand periods. Assumption 4 captures typical overtime limits utilized in industry.

Assumption 5 allows a higher unit overtime cost αP on a peak production window. Assumption 6

is in line with the practice where jobs are delivered in batches at the end of each shift.

The optimization problem faced by each manufacturer and by 3P is the same except for windows

available and the jobs to be scheduled. For simplicity, when we present our results on the optimal

booking and sequencing decisions, we limit our presentation to the problem faced by 3P where a

collection of windows from {1,2, . . . ,K} and a sequence σ to process the jobs in N =∪m∈MNm are

sought so that the total booking and overtime cost plus the overall tardiness penalty is minimized.

We denote this as 3P model with overtime production or (OP).

Without loss of generality, we can pre-process the parameters at, bt : 1≤ t≤K and dj : j ∈N so

as to obtain an equivalent problem where all manufacturing windows available are consecutive, i.e.,

bt + Ot = at+1, t = 1,2, . . . ,K − 1, where Ot ∈ [0, Ot] is the amount of overtime booked in window

Wt. Indeed, consider the transformation

a′t = (t− 1)L+t−1∑k=1

Ok, b′t = tL+t∑

k=1

Ok for t = 1,2, . . . ,K, and d′j = b′tj for j ∈N, (1)

where tj is the window at the end of which job j is due. Then, all manufacturing windows available

Author: Cai and Vairaktarakis: Coordination of Outsourced Operations8 Article submitted to Operations Research; manuscript no. OPRE-2009-04-180.R4

are consecutive. In the rest of this article we will assume that the parameters at, bt for t = 1,2, . . . ,K

and dj for j ∈N already satisfy (1).

Although the model we describe above assumes only two kinds of booking costs: h and hP , we

can relax this assumption by allowing arbitrary booking rates. This will be studied in Section 3.3.

Lastly, we note that our study here is applicable to other tardiness-based criteria. We will focus

on the problem where each tardy job i incurs a fixed but job-dependent tardiness penalty βi. The

problem to minimize the total number of tardy jobs, and the problem to minimize the total cost

of tardy jobs, will be presented in Appendices 1 and 2, respectively.

3. Optimal Booking and Sequencing

In this section we develop several efficient algorithms to determine optimal booking and sequencing

decisions to process jobs under consideration. We first present the following properties that form

the basis of our algorithms.

Property 1. There exists an optimal set of windows W?O for the problem (OP) such that the

following properties hold:

i) If Wc is the last peak window booked in W?O, then all its preceding peak windows are also booked.

ii) If a regular window is booked in W?O, all earlier regular windows are also booked. If W?

O contains

no peak window, then it includes the earliest regular windows sufficient to process all jobs.

iii) Regular production of all windows in W?O except possibly the last one is fully occupied.

iv) If αP = α and a window in W?O utilizes overtime, then all preceding windows utilize amount O

of overtime.

v) If αP > α, at most one window with booking cost hP (h) may utilize overtime partially; all

preceding peak (regular) cost windows utilize amount O of overtime.

Properties 1-i through 1-iii follow from straightforward interchange arguments based on the idea

that shifting work earlier whenever possible is better, and are given without proof. Note that, for

a given set of booked windows, shifting work earlier may not worsen any tardiness penalties. This

is true irrespective if the early capacity is regular or overtime. We refer to Wc in Property 1-i as

the critical window of W?O. Property 1-iv follows from the fact that it is always beneficial to utilize

overtime earlier rather than later in order to reduce the tardiness cost. Properties 1-i through 1-iv

help us determine an optimal window collection when αP = α. Property 1-v alludes to two critical

windows - one of booking cost h and the other of hP , each being the last of its kind where overtime

is used. When αP is much greater than α one may be better off to book overtime on a late window

of cost h than utilize available overtime in an earlier window of cost hP .

Author: Cai and Vairaktarakis: Coordination of Outsourced OperationsArticle submitted to Operations Research; manuscript no. OPRE-2009-04-180.R4 9

The following property helps us sequence the jobs over the windows booked and can be proved

by a job-interchange argument.

Property 2. Non-tardy jobs are scheduled in the order of earliest due-date (EDD) first and pre-

cede all tardy jobs; and tardy jobs can be scheduled in any order.

3.1. Optimal sequencing given the booking decisions

For any collection of windows booked, we can apply transformation (1) so that the machine time

of 3P’s facility becomes continuously available. Then, the problem (OP) is equivalent to 1||∑βiUi,

where Uj = 1 when job j finishes after time dj and 0 otherwise (Here we adopt the 3-field notation

α|β|γ for scheduling problems; see Pinedo 2002). According to Property 2, we can define the follow-

ing dynamic program (DP) to optimally solve 1||∑βiUi. First, assume that the jobs are indexed in

EDD order. Then, define Z(j, t) as the minimum total tardiness penalty for jobs 1,2, . . . , j, subject

to the last non-tardy job being completed at time t.

Algorithm DP

Recursive relation: Z(j, t) = min

{Z(j− 1, t− pj) if t≤ dj

Z(j− 1, t)+βj

for j = 1,2, . . . , |N | and t = 0,1, . . . ,∑j

k=1 pk.

Boundary conditions: Z(j, t) =

0 for t = 0, j = 0∞ for t 6= 0, j = 0∞ for t < 0, any j.

Optimal value: f∗ = min0≤t≤P Z(|N |, t) where P =∑

j pj.

Note that the first branch of Z(j, t) considers scheduling job j early when t≤ dj, while the second

branch renders job j tardy and adds amount βj to the total tardiness penalty. The algorithm finds

the optimal schedule because it evaluates all feasible options for each job. The number of states

of Z(j, t) is bounded by O(|N |P ), while each application of the recurrence relation requires O(1)

time. Hence, the complexity of DP is O(|N |P ).

3.2. Optimal booking

The optimal collection of windows W?O for the problem (OP) can be derived using Property 1 and

Algorithm DP. First, consider the special case with no overtime (i.e., O = 0), which we denote

as the problem with regular production or (RP). Let W? be an optimal window collection. It is

obvious that W? will contain precisely w = dPLe windows in order to process all jobs j ∈N , where

P is the sum of all processing times. Furthermore, according to Properties i and ii, if W∗ contains

Author: Cai and Vairaktarakis: Coordination of Outsourced Operations10 Article submitted to Operations Research; manuscript no. OPRE-2009-04-180.R4

the earliest r peak windows for some 0≤ r ≤ w, it should also contain the earliest w− r regular

windows; let W(r) denote this collection of windows. For given r ∈ {0,1, · · · ,w}, we can compute

the total booking cost of windows in W(r), and apply algorithm DP to derive the total tardiness

cost of scheduling the jobs over W(r). We can enumerate all r ∈ {0,1, · · · ,w} and find the optimal

value r∗ of minimum booking plus tardiness cost.

The method above can be extended to the case of overtime. First, from Property 1-iv we know

that overtime should always be booked earlier rather than later. Thus, if O is the amount of total

overtime booked in a window collection W(r), then O should be allotted to the earliest windows of

W(r) and maximum overtime Ot should be booked for an earlier window before using overtime in

subsequent windows. Let W(r,O) denote the collection W(r) when the total overtime booked is O.

Note that r≤w = dPLe because overtime does not increase the number of windows required. Also,

O≤∑t∈W(r) Ot. Then, for given integer O ∈ (0,wO], we can write O = Ot1 +Ot2 + · · ·+Ots +Ots+1

=

sO +Ots+1, due to Property 1-iv, where t1, . . . , ts+1 are the s+1 smallest window indices in W(r).

Hence, for given O > 0, transformation (1) uses

Ot =

O for t = t1, t2, . . . , ts,

Ots+1for t = ts+1,

0 otherwise.

(2)

The optimal r∗ and O∗ can be found by enumerating all possible values of r and O so as to minimize

the total booking, overtime plus tardiness costs. We propose the following algorithm for (OP).

Algorithm Opt

Input : Collection of available windows W = {Wt : 1≤ t≤K}, booking costs ht : 1≤ t≤K,

overtime rates αt ∈ {α,αP}, and parameters pj, dj, βj : j ∈N

Output : Optimal window collection W∗O, overtime profile {O∗

t } for t∈W∗O, and schedule σ∗

[1] Compute w = dPLe

[2] For r = 0 to w do

[3] For O = 0 to wO do begin

Apply transformation (1) with respect to W(r,O)

Apply DP on the resultant 1||∑βiUi problem

Let Z∗(r,O) and σ∗(r,O) be the resultant total tardiness cost and schedule

and W∗(r,O)⊆W(r,O) the subset of utilized windows

end

[4] Compute Z∗ = min0≤r≤w, 0≤O≤wO{Z∗(r,O)+∑

t∈W∗(r,O) αtOt +∑

t∈W∗(r,O) ht},and let W∗

O, {O∗t }, and σ∗ be the corresponding window collection, overtime profile, and schedule.

Author: Cai and Vairaktarakis: Coordination of Outsourced OperationsArticle submitted to Operations Research; manuscript no. OPRE-2009-04-180.R4 11

Theorem 1. Algorithm Opt optimally solves the problem (OP) with overtime and αP = α in

O(w2O|N |P ) time and the problem (RP) without overtime in O(w|N |P ) time.

Proof: The optimality comes from: (i) the fact that algorithm DP finds the corresponding min-

imum total tardiness cost, given collection W(r,O), (ii) Property 1-iv, and (iii) the exhaustive

enumeration over the possible values for r and O that take place in lines [2] and [3] of Opt.

Algorithm Opt requires one application of DP for each combination of r and O. The complexity of

DP is O(|N |P ), and hence algorithm Opt takes no more than O(w2O|N |P ) time because∑w

t=1 Ot ≤

wO and r ≤ w. For the special case of O = 0, the algorithm does not need to enumerate over O

and so the time complexity of (RP) is simply O(w|N |P ). ¤

Algorithm Opt can quickly be extended to the case αP 6= α as follows: LetWP ,WR be the windows

in [1,K] with peak and regular booking costs, respectively. Moreover, for given r = 0,1, . . . ,w, let

WP ∩W(r) = {t1, t2, . . . , ts}, and WR ∩W(r) = {q1, q2, . . . , qw−s}, where the indices are assumed

to be the s,w− s smallest indices in the respective window collections. Property 1-v states that

Ot =

O for t = t1, t2, . . . , ts0, and t = q1, q2, . . . , qs′0 ,

O1 for t = ts0+1, s0 < s

O2 for t = qs′0+1, s′0 < w− s

0 otherwise

such that O = (s0 + s′0)O +O1 +O2.

Clearly, there are(

w2

)O such integral profiles for O ∈ (wO] or O(w2O). Therefore, by applying

step [3] of Opt on all possible overtime profiles we obtain the following result.

Corollary 1. Algorithm Opt optimally solves the problem (OP) in O(w3O|N |P ) time.

Note that the time complexity of algorithm Opt is pseudo-polynomial because of the parameters

P and O. This complexity may be reduced for the case with equal tardiness penalties for all jobs

(that is, βj = β for all j ∈N). By further exploiting the problem structure for this special case, we

have developed an algorithm which is fully polynomial. The analysis of this case, however, requires

additional optimality properties and the application of an algorithm by Moore and Hodgson (Moore

1968) that solves the single machine problem 1||∑Ui. Our result for this case is stated next, and

the supporting analysis is relegated to Appendix 1.

Author: Cai and Vairaktarakis: Coordination of Outsourced Operations12 Article submitted to Operations Research; manuscript no. OPRE-2009-04-180.R4

Theorem 2. Problem (OP) with constant penalties βi = β for all i ∈ N can be solved in

O(w2|N | log |N |) time when O > 0 and in O(w|N | log |N |) time when O = 0, where w is bounded

by the number of windows.

We also need to solve an optimization problem for a coalition S ⊂ N of jobs. An algorithm,

referred to as Coalition, is presented in Appendix 3, which will be used in Section 4 to compute

an allocation of savings to jobs (and subsequently, to the manufacturers) for any given S.

3.3. Arbitrary booking rates and overtime rates

So far we have considered two possible booking costs: h and hP . With some additional effort,

our methodology extends to arbitrary booking rates ht : t ∈ [1,K]. The extension addresses the

important problem where 3P wishes to segment the price of utilizing her facility into different

levels. Moreover, it also allows us to take care of arbitrary overtime rates, under a mild assumption.

Assume that any booking must be made in multiples of a basic time slot. Then an overtime booking

can be treated like other normal booking. For example, suppose 3P’s normal working hours are

8:00am-12:00noon and 2:00-6:00pm, and overtime can be booked during 12:00noon-2:00pm and

6:00-8:00pm. Booking is restricted to multiples of 0.5 hour, and the unit booking rates for the AM

shift, PM shift, and overtime during noon and evening are: hAM , hPM , hON , and hOE, respectively,

with hOE > hON > hAM > hPM . Our model with arbitrary booking rates handles such a case easily.

With the assumption of basic time slot, we no longer need the notion of maximum overtime

amount O and so we can assume O = 0. We refer to this problem as (RP-A). Note that with

arbitrary booking prices, Property 2 still holds and hence jobs in N still need be indexed in EDD

order. Define:

• ZA(j, t, k): the minimum total booking cost for early jobs plus tardiness cost for late jobs in

1,2, . . . , j, when the total workload of non-tardy jobs is t and the last amongst them completes in

Wk, for j = 0,1, . . . , |N |, 0≤ t≤L ·K and k = 0,1, . . . ,K.

• Hk′+1,k(s): the cost of the s cheapest windows amongst Wk′+1, . . . ,Wk, given k′ and k; ∞ if

k− k′ < s or Wk is not amongst them.

Author: Cai and Vairaktarakis: Coordination of Outsourced OperationsArticle submitted to Operations Research; manuscript no. OPRE-2009-04-180.R4 13

Note that the definition of ZA(j, t, k) does not account for the booking cost of late jobs. The

booking cost of late jobs will be incorporated after ZA(|N |, t, k) is computed by the following

dynamic programming algorithm.

Algorithm Opt-A

Recursive relation:

ZA(j, t, k) = min

ZA(j− 1, t− pj, k) if dj ≥ bk, d t−pj

Le= d t

Le

mink′<k{ZA(j− 1, t− pj, k′)+Hk′+1,k(d t

Le− d t−pj

Le)} if dj ≥ bk, d t−pj

Le> d t

Le

ZA(j− 1, t, k)+βj if dj > bk

Boundary conditions: Z(j, t, k) =

{0 for (t = j = k = 0∞ for t 6= 0, j = k = 0), (t < 0, ∀ j, k).

The three branches of the above recurrence relation for ZA(j, t, k) correspond to i) both jobs j−1

and j finish non-tardy in Wk, ii) job j − 1 finishes non-tardy in Wk′ , and job j finishes non-tardy

in Wk, for k′ < k, and iii) job j is scheduled late. The second branch accounts for a large job j that

do not fit in Wk′ and may require more than one additional windows. The number of additional

windows needed to accommodate pj is d tLe−d t−pj

Le and these must be amongst Wk′+1, . . . ,Wk with

Wk being one of them.

Given t∈ [0, P ] and k ∈ [0,K], state ZA(|N |, t, k) does not account for booking costs due to tardy

jobs. Irrespective of the windows booked to process these jobs, they will be tardy. Hence, for these

jobs we simply require the cheapest available windows after Wk. The total workload of tardy jobs

is P − t and any unused time in Wk after time t may be used to process tardy jobs at no additional

charge. Hence, the number of additional windows needed is dPLe− d t

Le. Define

• gk(s): the cost of the s cheapest windows following Wk; ∞ if k + s > K.

Then, the total cost associated with state ZA(|N |, t, k) is ZA(|N |, t, k) + gk(dPLe − d t

Le) and the

optimal value for (RP-A) is:

Optimal value: Z∗A = min 0≤t≤P

1≤k≤K{ZA(|N |, t, k)+ gk(d t

Le− d t−pj

Le)}.

The recurrence relation for Opt-A takes O(K) time and the number of states is O(|N |PK).

Enumerating all Hk′,k(·) and gk(·) takes no more than O(K logK) time per (k′, k) pair, required

to sort the booking rates. In most cases, it is expected that K ≤ |N | and hence O(K3 logK)

Author: Cai and Vairaktarakis: Coordination of Outsourced Operations14 Article submitted to Operations Research; manuscript no. OPRE-2009-04-180.R4

is dominated by the computing effort O(|N |PK2) for Opt-A. We summarize our findings in the

following theorem.

Theorem 3. The minimum total cost for (RP-A) is Z∗A and is computed in O(|N |PK2) time.

The above results make use of the modeling assumption that bookings are made in multiples

of a basic time slot. Without this assumption we can also develop a solution algorithm that can

handle continuous overtime. The algorithm is however much more complicated and involved.

4. Sharing the Savings

The algorithms developed above can be used by every manufacturer m ∈ M to determine his

window collection Wm and his job schedule over these windows, as well as by 3P to obtain the

optimal window collection and processing schedule of all manufacturers. A solution for any coalition

S ⊆ M of manufacturers consists of the booking decisions and the processing decisions on the

jobs belonging to this coalition. The cost difference between the solution initially formed and that

generated by rescheduling the jobs over their windows is the potential savings via cooperation.

We can now introduce the savings game amongst the manufacturers. Let S be an arbitrary

coalition of manufacturers, S ⊆M . Then, one can apply algorithm Opt or Opt-A from Section 3

to job set N(S) = ∪m∈SNm with the set of available windows being W0(S) = ∪m∈SWm; i.e., the

windows booked by players in S during the FCFB phase. Then, define v(S) to be the maximum

cost savings obtained by optimally rescheduling the jobs in N(S).

Cost savings v(S) consist of three parts: (i) the total refund (1− ρ)∑

k∈W0(S)/W∗(S) hk that S

receives from 3P for those windows that are freed up after the rescheduling, where W∗(S) is the

set of windows that are utilized after the rescheduling, and ρ is the percentage of the booking

savings withheld by 3P; (ii) the total refund for the reduced overtime; and (iii) the reduction in the

tardiness costs of the jobs of N(S) due to the optimal rescheduling. Then, the pair (M,v) defines

a game. For a coalition S ⊆M , v(S) is also known as the characteristic function of the coalition,

which we define as the difference between the uncoordinated total cost and the coordinated total

cost of the coalition.

Author: Cai and Vairaktarakis: Coordination of Outsourced OperationsArticle submitted to Operations Research; manuscript no. OPRE-2009-04-180.R4 15

The release of the booking revenue allows 3P to resell it at full price and still withhold a portion

from the original booking. Hence, releasing unnecessary capacity presents a win-win proposition

for 3P and the manufacturers in S. However, the schedule proposed by 3P may alter the cost of

one or more manufacturers. To make coordination possible, 3P seeks a so-called balanced allocation

(or distribution) y1, y2, . . . , y|M | of the savings v(M) such that

ym ≥ 0,∑

m∈M

ym = v(M), and∑m∈S

ym ≥ v(S) for all S ⊂M.

These three (in)equalities completely describe the coordination game and are referred to as core

(in)equalities, which ensure that all manufacturers have the incentives to participate in the grand

coalition M that can generate the largest cost savings via coordination. A game is said to be convex

when ∀ S,T ⊆M, v(S ∪T )+ v(S ∩T )≥ v(S)+ v(T ). If a game is convex, it is guaranteed to have

an allocation that satisfies the core inequalities (Shapley, 1971). Unfortunately, as shown in the

counterexample described in Appendix 4, game (M,v) is not convex. This therefore leaves open

the question of whether an allocation ym : m ∈M exists that satisfies the core (in)equalities. An

empty core would render coordination hard to achieve because then some manufacturers would be

better off to join smaller coalitions. Fortunately, this is not the case in our problem. We will show

that (M,v) possesses a core allocation even though it is not convex. To do this, we first introduce

and study a game based on jobs - not manufacturers.

4.1. The manufacturer game and the job game

We now introduce a cooperative game amongst manufacturers in M as well as an auxiliary game for

jobs in N . The definitions for both games are developed next. Let T ⊂M be an arbitrary coalition

of manufacturers and N(T ) = ∪i∈T Ni be the set of jobs of T . Recall that σ0 is the uncoordinated

sequence of jobs formed by the manufacturers’ initial bookings. Then, the coalition T seeks a

sequence σ that reschedules jobs in N(T ) so as to minimize the total cost. Apart from the obvious

assumptions that every manufacturer (or job) may be a member in at most one coalition and that

the jobs in N(T ) may be rescheduled only in the windows belonging to T , our cooperative games

Author: Cai and Vairaktarakis: Coordination of Outsourced Operations16 Article submitted to Operations Research; manuscript no. OPRE-2009-04-180.R4

allow only rescheduling sequences that do not violate the processing priority of jobs outside the

coalition, i.e., the following admissibility rule should be obeyed.

Admissibility Rule: For every T ⊂M , a rescheduling sequence σ for jobs in N(T ) is admissible only

if Pj(σ) = Pj(σ0) for all j 6∈N(T ), where Pj(λ) is the set of predecessors of job j in a sequence

λ, i.e., Pj(λ) = {k ∈N(M) : λ(k) < λ(j)} and λ(k) is the k-th job in λ.

This admissibility rule specifies that for any job j not belonging to the coalition T , its predecessors

Pj(σ0) should not be changed due to any rescheduling σ of the jobs of T , that is, Pj(σ) = Pj(σ0).

Basically, this implies that “queue-jumping” without prior agreement is disallowed. This rule is

meritorious in three important ways as follows:

(i) It respects the priority order of players not in T ,

(ii) It avoids “fairness” issues for 3P, and

(iii) It avoids the scenario that cooperation is unable to be achieved.

With respect to (i), imagine a group of customers colluding to violate priority on a waiting line,

bypassing customers not in the coalition. In a service setting this is certain to lead to chaos and does

not seem to ever happen in practice. Such behavior does not seem as extreme in a manufacturing

setting when customers do not usually see the waiting line. In our model, however, the FCFB

protocol in 3P’s booking system implies a priority order of using 3P’s facility. Dissatisfied customers

may resort to, in extreme cases, discrimination lawsuits if they realize that their priority in the

system is violated without prior agreement, as alluded in (ii). Finally, with respect to (iii), note that

a rescheduling sequence of jobs in N(T ) is always admissible if all jobs in N(T ) form a contiguous

subsequence in σ0. Hence the admissibility rule does not affect the grand coalition. Without the

admissibility rule, we can easily show by counterexamples that balanced-allocation may not exist

and therefore it is impossible to form a stable grand coalition.

Indeed, visibility and fairness are widely regarded as the most essential ingredients of trust

to develop successful outsourcing partnerships between the service provider and the outsourcing

clients; cf. Atos Origin (2009), Dawson (2002), and Deitert (2009). They are especially important

for the service provider to maintain her long-term vitality to acquire new clients and to retain

Author: Cai and Vairaktarakis: Coordination of Outsourced OperationsArticle submitted to Operations Research; manuscript no. OPRE-2009-04-180.R4 17

existing ones. Therefore, 3P has the incentive to offer transparency, maintain fairness by honoring

the booking protocol, and create a win-win solution to all. The kind of admissibility rules has been

commonly adopted in studies of sequencing games (see, e.g., see Borm et al. (2002) and Curiel et

al. (1994)). The booking protocol addressed by our model justifies this rule.

We now proceed with the admissibility rule. We will first consider a cooperative game amongst

jobs. More formally, the manufacturer game is defined as (M,v), where v is the cost savings obtained

by rescheduling the jobs in N(T ). In contrast, the job game assumes that each individual job is a

player. Let vJ(S) be the maximum cost savings produced by an admissible rescheduling sequence

σ for coalition N(S) of jobs compared to the corresponding cost in the initial sequence σ0. The job

game is denoted as (N,vJ) and will be studied ahead of (M,v).

4.2. The savings allocation scheme

Let G{a, b} = {σ0(a), σ0(a + 1), . . . , σ0(b)}, 1 ≤ a ≤ b ≤ |N |, be the coalition of jobs that occupy

positions a through b in σ0. We say that G{a, b} is a contiguous coalition because they occupy

contiguous positions in σ0. The time interval occupied by jobs of coalition G{a, b} is from the start

of job σ0(a) to the completion of job σ0(b). For brevity, we will use vJ{a, b} to denote the maximum

savings vJ(G{a, b}) obtained by rescheduling jobs in G{a, b}. Let We, Wl be the earliest and latest

windows (respectively) utilized to process the jobs in G{a, b} on σ0. Clearly, one or both of these

windows may also be occupied by jobs outside G{a, b}. In this case, coalition G{a, b} cannot release

windows We, Wl (because jobs outside G{a, b} are affected) and hence no booking savings can be

realized from these windows. Algorithms in Section 3 and Appendix 3 can be adapted to produce

a mincost schedule for G{a, b} with which we can compute the cost savings vJ{a, b}.

We propose the following savings allocation scheme for game (N,vJ):

xi =12

{[vJ{1, i}− vJ{1, i− 1}

]+

[vJ{i, |N |}− vJ{i+1, |N |}

]}, i∈N, (3)

where vJ{1,0} = 0 and vJ{|N + 1|,N} = 0. Evidently, this allocation rule gives job i a share of

Author: Cai and Vairaktarakis: Coordination of Outsourced Operations18 Article submitted to Operations Research; manuscript no. OPRE-2009-04-180.R4

the savings by considering its marginal contributions when joining the coalitions of preceding and

succeeding jobs. For game (M,v), we define the distribution to a manufacturer m by

ym =∑

i∈Nm

xi for m∈M, (4)

where Nm is the set of jobs owned by manufacturer m.

4.3. The balancedness

We now show that {xi} satisfy the core (in)equalities, i.e., game (N,vJ) is balanced. First,

we show that the game is superadditive (Shapley, 1971), i.e., ∀ G,H ⊂ N , with G ∩ H = ∅,

vJ(G ∪H) ≥ vJ(G) + vJ(H). The superadditive property basically means that a larger coalition

can do better in terms of cost savings.

For any coalition G, let σ∗(G) denote the optimal job sequence obtained after rescheduling the

jobs in G to minimize their total cost.

Lemma 1. Game (N,vJ) is superadditive.

Proof: First consider two contiguous coalitions G{a, b} and H{c, d}, with a ≤ b < c ≤ d. Then,

G∩H = ∅. If c = b+1 (i.e., there is no job between σ0(b) and σ0(c)), then I{a,d}= G{a, b}∪H{c, d}

is also a contiguous coalition. In this case, concatenate σ∗(G) and σ∗(H) to form a feasible schedule

σ(I) for the jobs in I. The optimal sequence σ∗(I) is no worse than σ(I) and hence vJ(G∪H)≥

vJ(G) + vJ(H). If c > b + 1, that is, there is another job between σ0(b) and σ0(c) in the sequence

σ0, then any admissible sequence for the coalition G∪H will comprise a subsequence for the jobs

in G{a, b} and a subsequence for the jobs in H{c, d}. Hence, vJ(G∪H) = vJ(G)+ vJ(H).

It is evident that, in general, for any arbitrary coalitions G and H with G ∩H = ∅, if G ∪H

contains a larger contiguous job-set than in job subsets G or H, then vJ(G∪H)≥ vJ(G)+ vJ(H),

otherwise vJ(G∪H) = vJ(G)+ vJ(H). This completes the proof. ¤

We can now prove the following theorems.

Theorem 4. Distribution {xi}i∈N is in the core of the game (N,vJ).

Author: Cai and Vairaktarakis: Coordination of Outsourced OperationsArticle submitted to Operations Research; manuscript no. OPRE-2009-04-180.R4 19

Proof: The non-negativity of xi follows by definition of (3). Consider contiguous coalition G{a, b}=

{σ0(a), σ0(a+1), . . . , σ0(b)}. Then,

i∈G{a,b}xi =

12

i∈G{a,b}

{[vJ{1, i}− vJ{1, i− 1}

]+

[vJ{i, |N |}− vJ{i+1, |N |}

]}

=12

{[vJ{1, b}− vJ{1, a− 1}

]+

[vJ{a, |N |}− vJ{b+1, |N |}

]}.

It follows from Lemma 1 that vJ{1, a−1}+vJ(G{a, b})≤ vJ{1, b} and vJ(G{a, b})+vJ{b+1, |N |} ≤

vJ{a, |N |}. Therefore,∑

i∈G{a,b} xi ≥ vJ(G{a, b}).

Now consider the case where G{a, b} comprises more than one contiguous job set Gk{ak, bk},

i.e., G =⋃

k Gk{ak, bk}. For each Gk we have∑

i∈Gk{ak,bk} xi ≥ vJ(Gk{ak, bk}) and hence the above

inequality extends to G =⋃

k Gk{ak, bk}.

Finally, if G{a, b}= N , then a = 1, b = |N |, and

∑i∈N

xi =12

[vJ{1, |N |}− vJ{1,0}

]+

[vJ{1, |N |}− vJ{|N |+1, |N |}

]= vJ(N).

Therefore, {xi}i∈N satisfy the core (in)equalities. ¤

Theorem 5. Distribution {ym}m∈M is in the core of the game (M,v).

Proof: The non-negativity of ym follows from the non-negativity of xi. Consider an arbitrary

coalition T of manufacturers. The jobs belonging to the coalition T of manufacturers forms kT ≥ 1

distinct contiguous job subsets in σ0. That is, N(T ) =⋃kT

k=1 Gk{ak, bk}, where Gk{ak, bk} is the

k-th contiguous job set of T . Then,

∑m∈T

ym =∑m∈T

∑i∈Nm

xi =∑

i∈N(T )

xi =kT∑k=1

∑i∈Gk

xi ≥kT∑k=1

vJ(Gk{ak, bk}) = v(T ),

where the last equality is due to the fact that the total savings of coalition T must be generated

from the maximum savings of its kT contiguous subsets using admissible schedules. Similarly,

∑m∈M ym =

∑i∈N xi = vJ(N) = v(M). This completes the proof. ¤

Author: Cai and Vairaktarakis: Coordination of Outsourced Operations20 Article submitted to Operations Research; manuscript no. OPRE-2009-04-180.R4

5. Truth-Telling Mechanism

The savings {xi} prescribed in (3) are calculated using the job parameters reported by the manu-

facturers. It is conceivable that a self-interested manufacturer may strategically falsify information

about his jobs so as to gain a larger benefit. In this section we deal with this problem. We will

design a truth-telling mechanism to incentivize all manufacturers to report their true data.

Here we assume that 3P does not withhold any portion of the booking savings (i.e., ρ = 0). We

will show later that 3P may still gain a portion of the overall savings after giving the incentives to

the individual players. We assume that the processing time of any job is public information. This is

a realistic assumption as a job will eventually be processed by 3P and thus falsifying the processing

time is impossible. The private information of a job i is its due date di and the tardy penalty βi;

These are parameters typically included in the contract of a manufacturer with his client.

Let mi denote the message {βi, di : i ∈Nk} reported by manufacturer Mk on his job i and m−i =

(m1, . . . ,mi−1,mi+1, . . . ,m|N |) be the reported messages on other jobs. Under the coordination

approach described in Section 4, 3P performs an optimal rescheduling over all jobs with the reported

messages (mi,m−i), and the savings achieved are allotted to each job according to the allocation

scheme (3). Let xi(mi,m−i) be the allocation to job i, when the joint message is (mi,m−i). Further,

we introduce x′j(m−i), which is the allocation to job j according to (3) when the rescheduling is

performed over all the jobs except i. Specifically, x′j(m−i) is calculated as follows:

(1) First, using the parameters in m−i, 3P performs optimal rescheduling of the jobs j ∈

{1,2, · · · , i− 1, i + 1, · · · , |N |} over the time slots booked during the FCFB phase. For job j, let

the cost after the rescheduling be Z ′j(m−i), and the initial cost be Z0

j (mj) (which depends on the

reported message for job j only).

(2) The rescheduling results in the savings:∑

j 6=i[Z0j (mj) − Z ′

j(m−i)]. Then, 3P allocates the

savings to job j ∈ {1,2, · · · , i− 1, i+1, · · · , |N |} according to the scheme (3). The allocation to job

j is denoted as x′j(m−i).

We also introduce the following notation:

Author: Cai and Vairaktarakis: Coordination of Outsourced OperationsArticle submitted to Operations Research; manuscript no. OPRE-2009-04-180.R4 21

Z0i : the “true” initial cost of job i based on the initial FCFB schedule.

Z∗i (mi,m−i): the “reported” cost of job i after 3P performs the optimal rescheduling over all jobs,

calculated according to the joint message (mi,m−i).

Z∗i (mi,m−i): the “true” cost of job i after 3P performs the optimal rescheduling over all jobs,

calculated according to the joint message (mi,m−i).

In the preceding definitions, the cost of a job includes the booking fee and the tardiness penalty.

If a window with a booking rate h is used to process a subset of jobs, then we assume that the

portion of the booking cost of each job is proportional to the amount of its processing in that

window. That is, if the total processing time for the jobs occupying the window is Ps and the

processing time of job i occupying the window is pi, then its share of the booking cost is piPs

h.

The message reported by a manufacturer is his strategy. In what follows we design a mechanism

such that revealing true messages is a dominant strategy for all manufacturers to minimize their

true cost. Our mechanism proposes that 3P allocate [xi(mi,m−i)− δi] to each job i∈N , where

δi =∑j 6=i

x′j(m−i)−∑j 6=i

xj(mi,m−i). (5)

The 3P’s coordination process now works as follows: (i) 3P performs optimal rescheduling over

all jobs according to the reported messages (mi,m−i); (ii) The “reported” cost of each job i is

changed from Z0i (mi) to Z∗

i (mi,m−i) due to the rescheduling; (iii) Each job transfers the “surplus”

[Z0i (mi) − Z∗

i (mi,m−i)] to 3P, and then receives an amount of re-distribution [xi(mi,m−i) − δi]

from 3P. Therefore, the utility (defined as the negative cost) of job i to a manufacturer is

ui(mi,m−i) =−Z∗i (mi,m−i)−

[Z0

i (mi)− Z∗i (mi,m−i)

]+

[xi(mi,m−i)− δi

]. (6)

Plugging δi from (5) into (6), and recalling that∑

j∈N xj(mi,m−i) =∑

j∈N [Z0j (mj)− Z∗

j (mi,m−i)]

and∑

j 6=i x′j(m−i) =

∑j 6=i[Z

0j (mj)− Z ′

j(m−i)], we have

ui(mi,m−i) = −Z∗i (mi,m−i)−

[Z0

i (mi)− Z∗i (mi,m−i)

]+

∑j∈N

xj(mi,m−i)−∑j 6=i

x′j(m−i) (7)

= −Z∗i (mi,m−i)−

∑j 6=i

Z∗j (mi,m−i)+

∑j 6=i

Z ′j(m−i). (8)

Author: Cai and Vairaktarakis: Coordination of Outsourced Operations22 Article submitted to Operations Research; manuscript no. OPRE-2009-04-180.R4

Let mti denote the true message for job i. We now show the mechanism described above is

incentive compatible, in the sense that reporting mti is a dominant strategy.

Theorem 6. For any job i, revealing the true message mti is a dominating strategy, i.e.:

ui(mti,m−i)≥ ui(mi,m−i), for all mi and m−i, i∈N

Proof: Let λt and λ¦ denote the optimal solutions by rescheduling all the jobs when the joint

reported messages are (mti,m−i) and (m¦

i ,m−i), respectively. Since λt is optimal for (mti,m−i),

which minimizes Z∗i (mt

i,m−i)+∑

j 6=i Z∗j (mt

i,m−i), we have (for simplicity of notation, we let Z(λ)

denote the cost corresponding to the solution λ):

Z∗i (λt)+

∑j 6=i

Z∗j (λt)≤Z∗

i (λ)+∑j 6=i

Z∗j (λ),

for any λ. Since the processing times of all jobs do not depend on the reported messages, the

solution λ¦ also generates a feasible processing schedule under (mti,m−i). Thus, the inequality

above also holds when λ = λ¦. This gives us

ui(mti,m−i) = −Z∗

i (λt)−∑j 6=i

Z∗j (λt)+

∑j 6=i

Z ′j(m−i)

≥ −Z∗i (λ¦)−

∑j 6=i

Z∗j (λ¦)+

∑j 6=i

Z ′j(m−i)

= ui(m¦i ,m−i), (9)

for any (m¦i ,m−i). This completes the proof. ¤

The gist of the proof above is, with the true message mti, the true cost of job i is considered in

3P’s optimization to minimize the total cost. With a false message m¦i , it is the reported cost (rather

than the true cost) that is considered in the optimization. Mechanisms of this kind are known in

the literature as the Groves-Clarke mechanisms (Clarke 1971, Groves 1973, Grives and Loeb 1979).

It is now easy for us to explain why we need the assumption ρ = 0 in this Section. It can be seen

from (8) that, if we have ρ > 0, then the second term of (8) will contain this parameter and so the

first two terms of (8) will not be the total cost to be minimized in 3P’s optimization. Note also that

Author: Cai and Vairaktarakis: Coordination of Outsourced OperationsArticle submitted to Operations Research; manuscript no. OPRE-2009-04-180.R4 23

δi is the regulating factor in our proposed mechanism, which can be regarded as “fee” levied by 3P

on job i to induce an honest message by the manufacturer. If mi hurts the total allocation of other

jobs (i.e., reduces the value of the term∑

j 6=i xj(mi,m−i) in (5)), then δi increases and the amount

of allocation (xi− δi) to job i decreases. Hence, the proposed δi discourages a manufacturer from

jeopardizing the welfare of other players to benefit himself.

Incentive compatibility, individual rationality, and budget feasibility, are issues of common con-

cern in studies of mechanism design (cf. Cavallo 2006, Green and Laffont 1977). Next we show

that our mechanism possesses the property of individual rationality, i.e., a job is not worse off by

participating in 3P’s coordination. Denote the initial utility of job i by u0i , i.e., u0

i =−Z0i .

Proposition 1. The mechanism is individual rational, i.e.,

ui(mti,m−i)≥ u0

i , for all m−i and i∈N.

Proof: Due to Theorem 6, the true message mti should be reported for job i and hence

Z∗i (mt

i,m−i) = Z∗i (mt

i,m−i). Then, from (7), we can see that

ui(mti,m−i)−u0

i =∑j∈N

xj(mti,m−i)−

∑j 6=i

x′j(m−i)≥ 0, (10)

since the cost saving that can be achieved by a larger coalition is not less than that of a smaller

one. ¤

Another important issue in mechanism design is budget balance, i.e., the sum of payments to

or charges from the players to implement the mechanism. It is known (Green and Laffont 1977)

that full-budget balance (i.e., zero-sum) in direct revelation mechanisms is difficult to satisfy.

Our problem provides a natural setting where full-budget balance is not required. In our context,

coordination is budget feasible for 3P if the total monetary allocation to the manufacturers does

not exceed the total savings due to coordination. In this case, 3P does not need to use her own

money to implement coordination; rather, she can retain any surplus as a reward for implementing

Author: Cai and Vairaktarakis: Coordination of Outsourced Operations24 Article submitted to Operations Research; manuscript no. OPRE-2009-04-180.R4

it. Note that the total cost saving after the rescheduling is∑

j∈N [Z0j (mj)− Z∗

j (mi,m−i)], and the

allocation that 3P pays out is

∑i∈N

[xi(mi,m−i)− δi] =∑i∈N

[xi(mi,m−i)+

∑j 6=i

xj(mi,m−i)−∑j 6=i

x′j(m−i)]

=∑i∈N

[∑j∈N

xj(mi,m−i)−∑j 6=i

x′j(m−i)]

=∑i∈N

[Z0i (mi)− Z∗

i (mi,m−i)]−∑i∈N

[∑j 6=i

Z∗j (mi,m−i)−

∑j 6=i

Z ′j(m−i)

]

≤∑j∈N

[Z0j (mj)− Z∗

j (mi,m−i)]. (11)

The last inequality holds since∑

j 6=i Z′j(m−i) is the minimum cost of scheduling the jobs {j : j 6= i}.

This gives us the following result.

Proposition 2. The mechanism is budget feasible for 3P to perform the coordination.

The mechanism with incentives {δi}i∈N is designed to ensure truth revelation of the manufac-

turers. With this purpose achieved, 3P may allow the manufacturers to freely form any coalition,

as in the cooperative game of Section 4. We will now show that, with the same constant δ∗i charged

to job i irrespective of which coalition it joins, where

δ∗i =∑j 6=i

x′j(mt−i)−

∑j 6=i

xj(mti,m

t−i), (12)

then a modified distribution scheme based on (3) is in the core of the cooperative game.

Proposition 3. Distribution {xi = xi − δ∗i }i∈N is in the core of the game (N, vJ), where xi is

calculated by (3) and vJ(N) = vJ(N)−∑i∈N δ∗i . Accordingly, distribution {ym =

∑i∈Nm

xi}m∈M is

in the core of the game (M, v), with v = vJ .

A proof similar to the one in Theorem 4 yields that {xi}i∈N is in the core of (N, vJ) and {ym}m∈M

is in the core of the game (M, vJ).

To summarize, we have devised a mechanism, which ensures that all players reveal true infor-

mation and hence the true optimum for the overall system is obtained. The modified allocation

scheme {xi}i∈N can still motivate the players to cooperate in the grand coalition, therefore allowing

the largest cost saving to be obtained.

Author: Cai and Vairaktarakis: Coordination of Outsourced OperationsArticle submitted to Operations Research; manuscript no. OPRE-2009-04-180.R4 25

6. The Value of Coordination

In this section we perform an experiment that helps us assess the value of coordination to the

various parties involved. In our experiment we generate problem instances by varying the values of

parameters L, O, K, pj, dj and βj for j ∈N , M and Ni for i∈M , h, hP and α. In what follows we

explain the levels given to each parameter in an effort to limit the number of combinations without

losing essential aspects of the problem.

First, we want to let L simulate a usual production day of 8 hours for a single shift or 16

hours for double shift. In the former case we want to allow for up to O = 4 hours of overtime.

This produces three (L,O) combinations; namely (8,0), (16,0) and (8,4). The first 2 combinations

only differ in the number of jobs that can be processed in a day. Rather than using an hour as

the time unit, we count time in multiples of 30 minute intervals and let job processing times be

multiples. Specifically, we use L = 16,32 and O = 8. The gap between windows is assumed to be 0

and due-dates are selected appropriately later on. We consider two booking prices: h and hP = 1.3h.

Price h corresponds to booking costs during regular customer demand while hP is used for peak

demand periods. Then, we randomly draw 15% or 30% of the windows and designate them as peak

windows, i.e., |WP |/K ∈ {0.15,0.30}. Processing times pj are drawn uniformly from [1,4] for small

jobs and from [5,8] for large jobs. Therefore, the mean pj is 75 minutes for a small job and 195

minutes for a large job which are common job durations in practice. However, we add the range

[20,35] to experiment with very large jobs that, in most cases, occupy more than a full production

window. This will allow us to assess the impact of such jobs on the savings due to coordination. We

consider a production planning horizon of K=100 days for small and large jobs, and K=200 days

for very long jobs so as to ensure that the total processing capacity exceeds the total workload. We

assume that 20% of the days during the planning horizon are unavailable due to earlier reservations,

non-working days, etc.

We experiment with the pairs (4,20) and (8,10) for (|M |, |Nm|) so as to assess the effect of

the number of windows per manufacturer to system profits and the effect of the size of the grand

Author: Cai and Vairaktarakis: Coordination of Outsourced Operations26 Article submitted to Operations Research; manuscript no. OPRE-2009-04-180.R4

coalition. This set of parameters results to 12 combinations for each of the three (L,O) combinations

presented earlier (a total of 36 combinations so far). Each test problem is run for the values α =

1.5h/L, and β = 0.8∆h or 1.2∆h where ∆h = hP −h = 0.3h, and β denotes the mean βj. Our choice

of α is based on the fact that, in practice, it is often the case that the hourly overtime rate is 50%

over the hourly rate h/L on a non-peak day. For our choice of β, it is important to consider values

in connection to the threshold value ∆h. Whether a peak window is booked instead of a regular

one depends on how h + β compares to hP . If h + β ≤ hP then, on average, cheap late windows

are preferred over earlier peak windows. In this case peak windows would only be booked if the

regular windows are exhausted. This is not likely, however, because the number of peak windows

is just 15% or 30% of the total. It is for this reason that we consider the value β = 0.24h in our

experiment. In this case, βj values are drawn uniformly from [0.18h,0.3h] and hence β = 0.24h.

On the other hand, if h + β > hP manufacturers would be willing to book earlier peak windows

over later cheap ones. This motivates the value β = 0.36h. Therefore, βj’s are drawn uniformly

from [0.3h,0.42h]. Finally, we will experiment with much larger βj values drawn from [0.48h,0.6h]

(i.e., β = 0.54h) in order to test the effect of coordination when tardiness penalties are dominant.

Consequently, the total number of combinations tested is 108.

Job due-dates are given so that at least 40% of the workload of each manufacturer is completed

late. This is done by letting window Wt = [(t− 1)(L+O), t(L+O)−O] for 1≤ t≤K, ordering all

jobs in Ni according to shortest processing time (SPT), and assigning

dj = (∑m<i

d∑

j∈Nmpj

Le+ b3

∑j∈Ni

pj

5Lc)(L+O) ∀ j ∈Ni.

The first term of dj accounts for windows booked by manufacturers who booked prior to man-

ufacturer i and the second term ensures that about 40% of i’s workload is processed after the

due-date. For each combination we randomly generate 10 problems and report in Table 1 the

following statistics for O = 0:

∆C =∑

i Z(W∗i )−Z(W∗)∑

i Z(W∗i )

100%; percentage savings due to coordination,

∆B =∑

i∑

t∈W∗i

ht−∑

t∈W∗ ht∑

i∑

t∈W∗i

ht100%; percentage booking savings,

Author: Cai and Vairaktarakis: Coordination of Outsourced OperationsArticle submitted to Operations Research; manuscript no. OPRE-2009-04-180.R4 27

A+ = 100%|{i : τ(W∗i ) > τi(W∗)}|/|M |; the % of manufacturers whose tardiness penalty decreases

after coordination, where τ(W∗i ) and τi(W∗) are the total tardiness penalties for manufacturer i in

the optimal uncoordinated and coordinated solutions, respectively.

The corresponding statistics for O > 0 are denoted by ∆CO, ∆BO, A+O respectively, where

Z(·), τ(·) are replaced by ZO(·), τO(·), and W∗i , W∗ are replaced by W∗

i,O, W∗O, respectively. Also,

we report

∆O =∑

i∑

t∈W∗i

Ot−∑

t∈W∗ Ot∑

i∑

t∈W∗i

Ot100%; the percentage overtime savings,

∆Z = Z(W∗)−ZO(W∗O)

Z(W∗) 100%; percentage savings due to overtime availability.

Table 1 Computational experiment|WP |

K= 15%

|WP |K

= 30%

(L, O) |M| × |Ni| β pj ∆C ∆B A+ ∆C ∆B A+

(16,0) 4 × 20 0.24h [1,4] 26.3 9.5 66.7 - - 25.3 9.6 68.4 - -[5,8] 7.6 5.1 72.1 - - 8.4 3.2 69.5 - -

[20,35] 2.6 0.5 64.5 - - 2.1 0.8 71.3 - -0.36h [1,4] 21.3 9.1 68.3 - - 20.2 10.2 72.4 - -

[5,8] 9 3.4 69.4 - - 9.9 2.3 71.2 - -[20,35] 0.8 0.5 70.2 - - 1.4 0.4 64.3 - -

0.54h [1,4] 27.7 9.3 69.1 - - 24.3 9.6 70.2 - -[5,8] 9.5 3.7 68.5 - - 13.5 2.4 71.3 - -

[20,35] 1.1 0.9 70.4 - - 1.8 0.3 67.6 - -8 × 10 0.24h [1,4] 31.9 21.4 65.3 - - 32.1 18.9 68.3 - -

[5,8] 18.6 12.3 65.4 - - 18.3 12.2 72.3 - -[20,35] 4.1 2.5 71 - - 4.1 2.3 63.2 - -

0.36h [1,4] 33.4 17.3 73.2 - - 31.1 18.4 66.5 - -[5,8] 12.6 10.1 71.5 - - 17.3 9.2 69.8 - -

[20,35] 3.1 1.5 68.9 - - 2.2 1.4 63.4 - -0.54h [1,4] 41.5 18.2 73.6 - - 35.0 15.1 69.3 - -

[5,8] 14.4 9.9 72.2 - - 19.9 7.9 68.0 - -[20,35] 4.6 1.8 67.0 - - 3.9 2.5 70.7 - -

(32,0) 4 × 20 0.24h [1,4] 21.3 10.8 67.3 - - 22.1 10.3 67.3 - -[5,8] 9.2 6.1 71.1 - - 8.2 3.5 70.6 - -

[20,35] 2.1 1.2 73 - - 0.7 0.6 72.4 - -0.36h [1,4] 16.3 8.4 71.2 - - 18.3 8.1 71.2 - -

[5,8] 7.2 3.1 68.3 - - 5.3 1.9 67.5 - -[20,35] 2.3 0.7 63 - - 1.5 1.3 68.3 - -

0.54h [1,4] 20.9 9.1 70.2 - - 24.0 9.3 69.4 - -[5,8] 6.0 3.8 70.1 - - 7.7 2.2 68.2 - -

[20,35] 3.2 1.2 69.4 - - 1.4 1.1 70.1 - -8 × 10 0.24h [1,4] 32.3 22.5 67 - - 32.1 18.3 65.4 - -

[5,8] 17.4 13.1 68.3 - - 18.2 11.5 72.1 - -[20,35] 3.5 2.2 67.5 - - 3.3 2.8 69.3 - -

0.36h [1,4] 30.9 17.6 68.3 - - 33 16 70.2 - -[5,8] 17.2 8.4 71.2 - - 17.5 11.2 71.3 - -

[20,35] 2.9 1.9 74.3 - - 2.8 2.1 72.3 - -0.54h [1,4] 38.9 18.5 69.1 - - 43.2 17.9 70.2 - -

[5,8] 22.3 9.5 70.7 - - 21.5 12.1 70.5 - -[20,35] 3.6 2.3 75.0 - - 3.9 2.8 72.8 - -

∆CO ∆BO A+O

∆Z ∆O ∆CO ∆BO A+O

∆Z ∆O

(16,8) 4×20 0.24h [1,4] 21.2 9.3 68.9 1.23 31.2 22.4 11.2 72.4 10.3 32.1[5,8] 7.5 4.1 66.8 11.2 34.1 7.3 5.3 73.1 12.3 34.8

[20,35] 2.1 0.5 63.1 12.8 30.2 2.8 0.7 67.4 11.5 310.36h [1,4] 18.3 8.7 69.4 13.2 33.6 18.6 7.9 68.8 14.7 38.9

[5,8] 7.9 2.7 64.2 15.2 37.6 7.3 3.4 71.2 13.6 36.5[20,35] 1.4 0.9 71.1 13.1 32.9 1.1 0.7 68.9 13.9 31.3

0.54h [1,4] 24.3 9.1 68.8 17.9 32.3 23.7 8.2 73.4 19.6 39.2[5,8] 11.7 2.9 67.0 21.7 38.5 9.8 3.0 75.3 17.0 35.4

[20,35] 2.9 1.7 72.2 18.0 35.1 1.7 1.0 71.8 17.9 30.18×10 0.24h [1,4] 21.7 21.6 69.2 14.2 29.4 32.7 23.8 72.7 13.2 29.8

[5,8] 18.8 11.7 67.4 15.6 31.1 17.4 12.8 68.4 14.9 33.6[20,35] 3.5 2.9 72.2 12.9 28.7 3.6 2.8 66.7 15.3 29.4

0.36h [1,4] 34.1 20.3 72.9 13.7 31.7 31.8 18.9 63.8 16.1 38.6[5,8] 16.7 11.9 69.3 16.1 31.7 17.3 12.5 67.4 15.9 40.7

[20,35] 2.9 2.1 67.3 14.6 32.6 2.8 2.1 71.0 16.8 41.20.54h [1,4] 41.4 21.8 71.9 16.1 30.9 18.7 19.0 69.1 22.1 35.0

[5,8] 22.6 12.2 70.3 19.3 32.0 19.1 11.7 70.6 20.2 39.6[20,35] 3.9 2.4 69.5 18.7 33.7 3.7 2.6 73.0 19.8 42.5

Author: Cai and Vairaktarakis: Coordination of Outsourced Operations28 Article submitted to Operations Research; manuscript no. OPRE-2009-04-180.R4

Note that there is no need to experiment over specific ρ values since this simply indicates the

fixed portion of the ∆B,∆BO amount withheld by 3P. Based on our experiment, we make the

following observations:

• Savings ∆B,∆BO increase with |M | and with L+Opj

but do not depend on |WP |K

.

As the number |M | of manufacturers increases, the booking savings increase as well. This is

primarily due to consolidation of work into fewer windows with better utilization of idle time.

For fixed L + O and |M | × |Ni|, as pj increases, the number of windows needed to process the

total workload increases and so does the total booking cost. On the other hand, the potential

benefits due to better utilization of idle time across manufacturers stay the same and hence the

percentage booking savings diminish. This is evident with all processing time ranges reported in

Table 1 as we move from [1,4] to [5,8] to [20,35]. The same rationale explains the fact that our

findings about ∆B,∆BO do not depend on |WP |K

. Namely, greater frequency of peak windows does

not affect the number of windows that may be released due to better utilization of idle time across

manufacturers. For |M |=4,8 the overall average booking savings are 4.53% and 10.86% respectively.

On the other hand, for pj ∈ [1,4], [5,8], [20,35], the average ∆B values are 14.58%, 7.44% and

1.54% respectively.

• The total savings ∆C due to coordination, increase with |M |, decrease with pj, and do not

depend on |WP |K

.

We saw earlier that booking savings ∆B,∆BO increase with |M |. Tardiness savings increase as

well because of more rearrangement opportunities across players. This is especially true for small

jobs because more of them fit into the same window making them non-tardy after coordination.

This is why throughout Table 1, ∆C decreases with the ranges [1,4], [5,8], [20,35].

If one compares the percentage tardiness ∆C−∆B versus the booking savings ∆B, he observes

that booking savings dominate their tardiness counterpart for large and very large jobs but not

for small jobs. This is because, as we argued above, the number of rearrangements that result to

reduced tardiness costs decreases with pj while the booking savings stay about the same across

each row of Table .

Author: Cai and Vairaktarakis: Coordination of Outsourced OperationsArticle submitted to Operations Research; manuscript no. OPRE-2009-04-180.R4 29

The relative contribution of tardiness savings into ∆C also depends on the size of β compared

to ∆h. The greater the value of β, the greater the contribution of tardiness savings into ∆C. Note

that for β = 0.36h or 0.54h, high tardiness penalties dictate that players book the earliest available

windows upon their arrival to the system (because h + β >> hP ), booking savings are limited to

consolidation of the idle time available in the last windows booked by each player, window rebooking

is not possible, and hence coordination savings are primarily due to job rearrangements that lead

to tardiness savings. These savings are captured by the difference ∆C −∆B and, as expected,

they are directly proportional to β. Indeed, observe that 0.54h0.36h

= 1.5 while for every combination

of parameters tested, the corresponding ratio of the ∆C −∆B values is also 1.5. In other words,

when tardiness penalties are dominant, coordination benefits by capacity consolidation and the

resulting refunds, plus tardiness savings that increase proportionately with β.

• For fixed |M |, the relative contribution ∆C∆B

of booking savings to ∆C decreases with L+O.

This is due to the fact that the number of windows needed to process the total workload,

decreases with L + O and (as we argued above) so do the number of beneficial rearrangements of

jobs across windows (all else being equal). Therefore, tardiness savings decrease with L + O. On

the other hand, booking savings are primarily due to |M | and therefore, for fixed |M | the ratio ∆C∆B

decreases with L+O. In Table 1, this is evident as we move from L+O = 16 to 24, to 32.

• On average, after coordination 69.5% of the manufacturers incur lower tardiness penalties.

As indicated by A+, under all scenarios approximately two-thirds of the manufacturers improve

over their initial schedules in terms of the tardiness penalties. These manufacturers are primarily

late comers in the FCFB order because after coordination they use windows booked by early comers

that were not available when they arrived to the system. Generally, the manufacturers who initially

booked the later windows benefit from coordination as they gain access to earlier windows.

Further, Table 1 indicates that the value ∆Z of overtime is significant and increases with β. This

is expected because the higher the β the greater the incentive to book early windows at higher

booking rates. Finally, the ∆O values in Table 1 suggest that the overtime usage after coordination

is significantly smaller than before coordination - an additional incentive for coordination.

Author: Cai and Vairaktarakis: Coordination of Outsourced Operations30 Article submitted to Operations Research; manuscript no. OPRE-2009-04-180.R4

In our experiment we do not report specific xi values other than the number of winners A+. Note

that xi is computed using (3) which requires solving 4 optimization problems. In our experience,

xi values appear to be ad hoc without any discernible trend. The same holds true for δi.

The observations made in this section highlight the importance of coordination amongst manu-

facturers and the additional benefits for them and the third party with or without overtime. We

conclude that:

Coordination results to an average of 14.4% in savings,

improves on-time service performance for 2 out of 3 manufacturers,

and better utilizes regular and overtime capacity.

Excluding jobs in the [20,35] range (which is not common in practice and is presented here

mostly for comparison purposes), overall coordination savings average 20.45%.

7. Concluding Remarks

In this paper we develop a model to coordinate the outsourced operations at a single 3P. Our

mathematical and numerical analyses offer strong monetary and customer service incentives to

effect coordination as well as saving sharing schemes that facilitate such coordination.

We also address the honesty issue in cooperation. We design a direct revelation mechanism

to ensure that revealing truthful information is a dominant strategy for each manufacturer. A

truth-telling mechanism is important to prevent the coordination from being jeopardized by self-

interested players.

There are plenty of opportunities for further investigation. A wealth of related models is of

interest. They may involve different resources (as opposed to a single third party), different cost

structures (e.g, both earliness and tardiness are to be minimized via outsourcing), different capacity

booking protocols (e.g. bidding via competition or cooperation), further studies on revelation of

private date to facilitate the success of coordination. Such models will involve many interesting

and challenging topics for future research.

Author: Cai and Vairaktarakis: Coordination of Outsourced OperationsArticle submitted to Operations Research; manuscript no. OPRE-2009-04-180.R4 31

Acknowledgments

This research was initiated while the second author visited The Chinese University of Hong Kong,

and was supported in part by the Research Grants Council of Hong Kong under General Research

Fund Nos. 410208 and 410509, and NSFC Key Project No. 70932005. We wish to express our

sincere gratitude to the Associate Editor and the reviewers for their constructive comments and

suggestions to help improve the paper.

References

[1] Agnetis, A., Mirchandani, P.B., Pacciarelli, D., and Pacifici, A. Scheduling Problems with Two Com-

peting Agents, Operations Research, 52(2), 229-242, 2004.

[2] Atos Origin Consulting, Transparency in Outsourcing, www.atosorigin.com/en-us/Business Insights/

Thought leadership/Thought leadership Container/wp transparency in outsourcing.htm. 2009.

[3] Aydinliyim, T. and Vairaktarakis, G. L. Coordination of Outsourced Operations to Minimize Weighted

Flow Time and Capacity Booking Costs, Manufacturing & Service Operations Management, 12, 236 -

255, 2010.

[4] Borm, P., Fiestras-Janeiro, G., Hamers, H., Sanchez, E. and Voorneveld, M. On the Convexity of

Games Corresponding to Sequencing Situations with Due Dates, European Journal of Operational

Research, 136, 616-634, 2002.

[5] Bukchin, Y. and Hanany, E. Decentralization Cost in Scheduling: A Game-Theoretic Approach,

Manufacturing & Service Operations Management, 9 (3), 263-275, 2007.

[6] Calleja, P., Estevez-Fernandez, M. A., Borm, P. and Hamers, H. Job Scheduling, Cooperation and

Control, CentER Discussion Papers 2004-65, Tilburg University, Tilburg, The Netherlands, 2004.

[7] Calleja, P., Borm, P., Hamers, H., Klijn, F. and Slikker, M. On a New Class of Parallel Sequencing

Situations and Related Games, Annals of Operations Research, 109, 263-276, 2002.

[8] Cavallo , R. Optimal Decision-Making with Minimal Waste: Strategyproof Redistribution of VCG Pay-

ments, Proceedings of the Fifth International Joint Conference on Autonomous Agents and Multiagent

Systems, Hakodate, Japan, 2006.

[9] Clarke, E.H., Multipart Pricing of Public Goods, Public choice, 11, 17-33, 1971.

[10] Curiel, I., Pederzoli, G. and Tijs, S. Sequencing Games, European Journal of Operational Research,

40, 344-351, 1989.

[11] Curiel, I., Potters, J., Rajendra Prasad, V., Tijs, S. and Veltman, B. Sequencing and Cooperation,

Operations Research, 42, 566-568, 1994.

Author: Cai and Vairaktarakis: Coordination of Outsourced Operations32 Article submitted to Operations Research; manuscript no. OPRE-2009-04-180.R4

[12] Curiel, I., Hamers, H. and Klijn, F. Sequencing Games: A Survey in Chapters in Game Theory: In

Honor of Stef Tijs, Kluwer (eds. P. Borm and H. Peters), Boston, pp. 27-50, 2002.

[13] Dawson, R. Living Networks: Leading Your Company, Customers, and Partners in the Hyper-

Connected Economy, FT Press, 2002.

[14] Deitert, E., Trust: The New Value Proposition for Today’s BPO Provider, Cutter IT Journal, 22,

16-21, 2009.

[15] Elmaghraby, W. J. Supply Contract Competition and Sourcing Policies, Manufacturing and Service

Operations Management, 2, 350-371, 2000.

[16] Gillies, D. B. Solutions to General Non-Zero-Sum Games, in Tucker, A. W. and Luce, R. D.: Contri-

butions to the Theory of Games IV, Princeton University Press, 1959.

[17] Granot, D. A Note on the Roommate Problem and a Related Revenue Allocation Problem. Manage-

ment Science, 30, 633-643, 1984.

[18] Green, J. and Laffont, J.J. Characterization of Satisfactory Mechanisms for the Revelation of Prefer-

ences for Public Goods. Econometrica, 45, 427-438, 1977.

[19] Groves, T. Incentives in Teams. Econometrica, 41, 617-631, 1973.

[20] Groves, T. and Loeb, M. Incentives in a Divisionalized Firm. Management Science, 25, 221-231, 1979.

[21] Hall, N.G. and Liu, Z. Capacity Allocation and Scheduling in Supply Chains, Operations Research, 58,

1711-1725. 2010

[22] Hamers, H., Borm, P. and Tijs, S. On Games Corresponding to Sequencing Situations with Ready

Times, Mathematical Programming, 70, 1-13, 1995.

[23] Hamers, H., Klijn, F. and Suijs, J. On the Balancedness of Multimachine Sequencing Games, European

Journal of Operational Research, 119, 678-691, 1999.

[24] Hamers, H., Klijn, F. and van Velzen, B. On the Convexity Precedence Sequencing Games, CentER

Discussion Papers 2002-112, Tilburg University, Tilburg, The Netherlands, 2002.

[25] Hariri A.M.A., Potts, C.N. and Van Wassenhove L. N. Single Machine Scheduling to Minimize Total

Weighted Late Work, ORSA Journal on Computing, 7, 232-242, 1995.

[26] Holton, J. and Dastmalchi, B. Manufacturing Outsourcing for Small and Mid-Size Companies. White

Paper, Symphony Consulting Inc., 2008.

[27] Kolliopoulos S. G. and Steiner G. Approximation Algorithms for Minimizing the Total Weighted

Tardiness on a Single Machine, Theoretical Computer Science, 355(3), 261-273, 2006.

[28] Lawler, E.L. A Pseudopolynomial Algorithm for the Sequencing of Jobs to Minimize Total Tardiness,

Annals of Discrete Mathematics, 1, 331-342, 1977.

[29] Leung, J. Y.-T., Pinedo, M., and Wan, G., Competitive Two-Agent Scheduling and Its Applications,

Author: Cai and Vairaktarakis: Coordination of Outsourced OperationsArticle submitted to Operations Research; manuscript no. OPRE-2009-04-180.R4 33

Operations Research, 58, 458-469, 2010.

[30] McNaughton, R. Scheduling with Deadlines and Loss Functions, Management Science, 6, 1-12, 1959.

[31] Moore, J.M. An n Job, One Machine Sequencing for Minimizing the Number of Late Jobs, Management

Science, 15, 102-109, 1968.

[32] Pinedo, M., Scheduling: Theory, Algorithms, and Systems, 2nd Edition, Prentice Hall, Englewood

Cliffs, NJ. 2002.

[33] Sethi, D. Core in Cooperative Games, www.cse.iitd.ernet.in/ rahul/cs905/lecture18/lecture18.html,

2002.

[34] Shapley, L. Cores of Convex Games, International Journal of Game Theory, 1, 11-26, 1971.

[35] Tijs, S.H., Parthasarathy, T., Potters, J.A.M., and Rajendra Prasad, V., Permutation Games: Another

Class of Totally Balanced Games, OR Spectrum, 6, 119-123, 1984.

[36] Vairaktarakis, G. L. and Aydinliyim, T. Centralization vs. Competition in Subcontracting Operations,

Working Paper, 2007 (http://filer.case.edu/˜txa50/centcomp.pdf)

[37] Vairaktarakis, G. L. Non-Cooperative Outsourcing Games, TM-822, Weatherhead School of Managa-

ment, Case Western Reserve University, 2008.

Appendix 1. Minimizing the Number of Tardy Jobs

We present, in this appendix, additional structural properties and optimal algorithms for the special

case of (OP) with βj = β for every j ∈N . This special case is of interest in its own right because

it is often that tardiness penalties are not dependent on the jobs or the manufacturers but on the

mode of transportation used to express ship late orders. Alternatively, β may represent the cost

of a lost sale which is expected to be nearly identical for players who produce the same product.

Moreover, the constant penalty case allows for structural insights that are not available for the

general case. These insights allow the development of a strongly polynomial time algorithm.

Towards this end, observe that the optimal cost for 1||∑βUi differs by a factor β from the

optimal cost for 1||∑Ui. The later problem is solved inO(|N | log |N |) time due to the EDD ordering

in the MH algorithm below. Therefore, the pseudopolynomial algorithm DP can be replaced by

MH so as to solve 1||β ∑Ui in polynomial time.

Algorithm MH (Moore, 1968)

1. Order jobs in N in EDD order; let L be the resulting ordered set.

2. Schedule the first job in L, say j, next to the last non-tardy job in N − L. Let Cj be the

resulting completion time and set L :=L−{j}.

Author: Cai and Vairaktarakis: Coordination of Outsourced Operations34 Article submitted to Operations Research; manuscript no. OPRE-2009-04-180.R4

3. If Cj > dj then select a non-tardy job in N −L with longest processing time, say j0, declare

it tardy and we schedule it last.

4. If L 6= ∅ then goto step 2 else Stop.

Note that, whenever the currently scheduled job becomes tardy, the longest preceding job is made

tardy in step 3 of algorithm MH, so as to allow as many of the jobs left in L to complete on-time.

When the jobs to be scheduled are specified, it is convenient to use the following notation:

MH(W)= the schedule produced when MH is applied to the single machine problem associated

with transformations (1) applied to the jobs scheduled for processing in windows W.

Z(W)= the sum of booking, overtime, plus tardiness costs corresponding to schedule MH(W).

In what follows we assume that an optimal collection W∗O has been determined and one needs

to construct an optimal schedule σ∗ for (OP ), including the decision of booking overtime. The

following 2 schedules facilitate this construction.

σR: Optimal schedule when no overtime is used and schedule MH(W∗O) is obtained assuming that

the last window in W∗O has unlimited capacity.

σF : Optimal schedule when the overtime of every window in W∗O is fully utilized before allocating

work to the following window.

Note that when no overtime is used in the windows of W∗O, we may need additional capacity to

process all the workload. This is the reason for allowing unlimited capacity in the last window of

W∗O in σR. Let TR and ER be the set of tardy and non-tardy jobs in σR respectively. Similarly, let

TF and EF be the corresponding sets in σF and T ∗, E∗ the corresponding sets in σ∗. The next two

results are important for the identification of T ∗ which in turn is key in finding W∗O.

Lemma 2. TF ⊆ T ∗ ⊆ TR

Proof: Suppose that jobs are indexed according to the EDD order and Ji ∈ TF . We will prove that

Ji ∈ T ∗. If not, let Ji be the l-th tardy job when MH obtained σF . From the mechanics of MH

there must exist r > i such that the completion time of Jr is Cr > dr when Jr is considered for

scheduling. Such Jr must exist otherwise Ji wouldn’t become tardy by MH. Let Al be the set of

jobs scheduled in σF prior to Cr when Jr is first introduced and A∗l the set of jobs scheduled in σ∗

when Jr is first introduced. The total workload prior to Cr in σF is no less than the corresponding

workload in σ∗ when Jr is first considered for scheduling. This is because the total overtime used

prior to Cr in σF is no less than in σ∗. Therefore, A∗l ⊆Al.

Without loss of generality suppose that in constructing σF and σ∗ ties are broken by MH so

that the set A∗l has as many jobs in common with Al as possible. This maximality property implies

Author: Cai and Vairaktarakis: Coordination of Outsourced OperationsArticle submitted to Operations Research; manuscript no. OPRE-2009-04-180.R4 35

that, whenever possible, the same longest job is made tardy in σF and σ∗. Since A∗l ⊆Al, we have

max{pj : Jj ∈A∗l } ≤max{pj : Jj ∈Al}= pi.

If the latter inequality holds strictly, then MH must have already rendered Ji tardy in σ∗ prior to

scheduling Jr, i.e., Ji ∈ T ∗. On the other hand, if Ji ∈ Al, the maximality of A∗l implies that all

other jobs in Al should also be in A∗l because their processing time is no longer than pi and the

fact that MH always removes the longest among the jobs scheduled so far. Equivalently, Al ⊆A∗l

and hence A∗l = Al. But then, Jr must be tardy when introduced to σ∗ since it is already tardy

when introduced to σF which uses at least as much overtime as σ∗ prior to introducing Jr. Then,

MH would render Ji tardy in σ∗ because it is the longest job in A∗l . In either case, Ji ∈ T ∗. This

completes the left hand side of the lemma. The proof for the right hand side is analogous to our

argument above except that MH is applied to windows of σR. ¤In light of Lemma 2, finding T ∗ is equivalent to identifying jobs in TR−TF that must be processed

early in σ∗. Suppose that the SPT order of TR−TF is

TR−TF = {Ji1 , Ji2 , . . . , Jir} and E∗ = ER +E where E ⊆ TR−TF .

The following lemma indicates that T ∗ consists of the first few jobs in the ordered set

{Ji1 , Ji2 , . . . , Jir}.

Lemma 3. Suppose that TR−TF = {Ji1 , Ji2 , . . . , Jir}. If Jik+1∈E∗ then Jik ∈E∗ for 1≤ k < r.

Proof: Suppose that Jik+1is early in σ∗ but Jik is tardy. Because of the SPT ordering we have

pik ≤ pik+1. If dik ≥ dik+1

then swap Jik+1and Jik . Then, Jik becomes non-tardy because so is Jik+1

even though its processing time is not less than pik . Hence, there is an optimal schedule such that

if Jik+1∈E∗ then Jik ∈E∗.

On the other hand, if dik < dik+1, then consider the EDD order of jobs in ER +E+{Jik}−{Jik+1

}.The amount x of overtime needed to process jobs in ER + E + {Jik} − {Jik+1

} is no more than

the amount x′ needed to process jobs in ER + E because pik ≤ pik+1. Also, none of the jobs in

ER +E +{Jik}−{Jik+1} is tardy because this is the case when x′ units of overtime are used in σF

(because Jik /∈ TF ). Therefore, there is an optimal schedule where Jik ∈E∗ and Jik+1may or may

not be tardy. This completes the proof of the lemma. ¤We can now present an optimal algorithm for (OP) with constant penalties for the jobs. The

algorithm examines all possible schedules Wf,F that satisfy properties i, ii, iv, and v where F

denotes the number of peak windows and f the total number of windows booked. Number f

cannot exceed w = d∑

i pi

Le. These 2 numbers together with properties i and ii completely specify the

Author: Cai and Vairaktarakis: Coordination of Outsourced Operations36 Article submitted to Operations Research; manuscript no. OPRE-2009-04-180.R4

collection Wf,F . Then, algorithm CP Opt below addresses problem (OP) with constant penalties

by identifying the optimal non-tardy set E∗ = ER +E for E ⊆ {Ji1 , Ji2 , . . . , Jir}.

Algorithm CP Opt

Input : Collections WR and WP , associated booking costs and values O, α, β and dj : j ∈N

Output : Optimal collection W∗O and schedule σ∗

Begin

Let E∗ = ∅ and ZO =∞[1] For F = 0 to min{w, |WP |} do

For f = F to w do begin

[2] Wf,F := {F earliest windows in WP}∪ {f −F earliest windows in WR}[3] Apply MH(Wf,F ) when every window has length L+O; let TF be the tardy set

Apply MH(Wf,F ) when every window has length L except the last that has infinite

capacity; let ER, TR be the resulting early and tardy sets

Order T := TR−TF = {{Ji1 , Ji2 , . . . , Jir}} in SPT order

For k = 1 to r do begin

Find smallest integer k0 such that PWk =∑

j∈ERpj +

∑k

l=1 pil ≤ k0(L+O)

If k0 > f then Goto [9]

[4] Schedule jobs in {Jik+1, . . . , Jir} as late as possible in windows in Wf,F

[5] Schedule jobs in ER + {Ji1 , . . . , Jik} in EDD order using the next available window

in Wf,F and overtime whenever a job becomes tardy. Let σ be the resulting schedule

[6] If ZO(σ)≤ZO then W∗O =Wf,F , ZO = Z(σ), σ∗ = σ and E∗ = ER + {Ji1 , . . . , Jik}

end

[7] end

End

The complexity of CP Opt is dominated by the O(w2) loops in [1] and the MH applications in

[3] that take O(n logn) time. The resulting complexity is O(w2|N | log |N |). When no overtime is

available, we know that F = w and hence the above algorithm can be modified to solve (3P) with

constant penalties in O(w|N | log |N |) time. These observations verify Theorem 2 of Section 3.

Appendix 2. Minimizing the Total Weighted Tardiness

In this appendix we explore the relationship of our model to the case where the lateness penalty

βjUj(Cj) is replaced by βj(Cj − dj)+, where Cj is the completion time of job j, for every j ∈N .

Author: Cai and Vairaktarakis: Coordination of Outsourced OperationsArticle submitted to Operations Research; manuscript no. OPRE-2009-04-180.R4 37

This is commonly referred to as the problem of minimizing the total weighted tardiness (TWT).

For arbitrary due dates, minimizing the TWT on a single processor is known to be strongly NP -

hard (Lawler, 1977). McNaughton (1959) has also shown that allowing preemption of jobs does

not affect the optimum tardiness cost.

Because of the strong NP -hardness of TWT, it is unlikely to get a polynomial-time algorithm

to compute its exact solution. There is a research result, however, which shows that a pseudo-

polynomial algorithm exists for the TWT problem as long as the number of distint due dates is

finite; see Kolliopoulos and Steiner (2006). It is interesting to note that our model falls naturally

into this pseudo-polynomially solvable setting, because of the structure of our model that the

due date of every job coincides with the end of a manufacturing window, whereas the number of

windows is finite. Consequently, following from Kolliopoulos and Steiner (2006), we have

Theorem 7. There is an algorithm with time complexity O((|N |K!(|N |+K

K

)(|N | T

K)O(K2))2) which

optimally solves the TWT problem in our model, where |N | is the number of jobs, K is the number

of windows, and T is an upper bound on the maximum tardiness of jobs in N .

In our problem, a possible upper bound is T = bK + O. Hence, given a window collection W(r),

the algorithm of Kolliopoulos and Steiner (2006) can be adapted to yield the booking plus total

weighted tardiness cost, referred to as the problem (B-TWT). Having such an optimal algorithm,

players can determine their optimal booking and sequencing strategies, and 3P can compute a

globally optimal schedule. Moreover, the coordinating mechanism developed in Section 4 carries

over to the problem (B-TWT).

Although the algorithm of Kolliopoulos and Steiner (2006) is psedudo-polynomial, its complexity

is still too high. This is less of an issue for the problem with agreeable weights where pi < pj implies

βi > βj. On a single processor, the TWT problem with agreeable weights was considered by Lawler

(1977) who presented a dynamic programming algorithm that takes O(|N |4P ) time, where P is

the total processing time. Lawler’s algorithm can also be adapted to yield the booking plus total

weighted tardiness cost for our problem (B-TWT) when the weights meet the agreeable condition.

If one does not seek to find the exact optimal solution, the dynamic programming scheme we

propose in Section 3 can be applied to yield an approximate solution for the problem (B-TWT),

based on a property established in Kolliopoulos and Steiner (2006) regarding a relationship between

the TWT problem and the problem of minimizing total weighted late work. First, consider the

case without overtime. Let σ∗, σ∗T be optimal solutions for the problems (RP) and (B-TWT),

respectively, and let Z(.) be the total cost. Following Kolliopoulos and Steiner (2006) we have

Author: Cai and Vairaktarakis: Coordination of Outsourced Operations38 Article submitted to Operations Research; manuscript no. OPRE-2009-04-180.R4

Theorem 8. If there exists polynomial f(|N |) such that P = O(f(|N |)), then Z(σ∗T ) ≤f(|N |)Z(σ∗).

In other words, algorithm Opt provides an approximation for (B-TWT). Interestingly, the above

theorem does not depend on regular or overtime production and hence the result extends to the

case with overtime. Note that the dynamic programming scheme we proposed in Section 3 exhibits

quite acceptable computational complexity, and thus provides a powerful approximation approach

to the problem (B-TWT).

The savings allocation scheme (3) presented in Section 4 is applicable because the weighted

tardy penalty βjUj(Cj(σ)) and the total weighted tardiness βj(Cj(σ)− dj)+ of a job j are both

nondecreasing functions of the completion time Cj(σ) of j in σ. For problem (B-TWT), the savings

vT (S) for a coalition S ⊆M are vT (S) = ZT (σ0(S))−ZT (σ∗(S)), where σ0(S) is the initial schedule

σ0 on players in S, and σ∗(S) the corresponding optimal schedule for players in S subject to the

admissibility constraint, and

ZT (σ(S)) =∑

i∈Sk∈Wi(σ)

ρ(hk +αkOk(σ))+∑

j∈N(S)

βj(Cj(σ)− dj)+.

The last expression accounts for regular and overtime booking costs and total weighted tardiness

costs.

Appendix 3. Algorithm Coalition

In what follows we describe, based on algorithm Opt presented in Section 3, an algorithm Coalition

to compute savings v(S) associated with an arbitrary coalition S ⊂M . Note that after the booking

process is complete, the jobs in N form a sequence σ0 = (σ0(1), σ0(2), · · · , σ0(|N |)) where σ0(i)

denotes the i-th job in the sequence. Let G{a, b}= {σ0(a), σ0(a+1), . . . , σ0(b)}, for 1≤ a≤ b≤ |N |be a coalition of jobs. A window is booked by coalition G{a, b} if it is occupied by any job in the

coalition.

Upon completion of the initial bookings, let We and Wl be the earliest and the latest booked

windows of coalition G{a, b}, respectively. By definition, note that windows We and Wl may process

jobs outside G{a, b}. This cannot be the case for windows between We and Wl. As a result, any

window between We and Wl can generate booking savings by consolidating the workload of jobs in

G{a, b} and releasing unused windows. Windows We, Wl however, may not yield booking savings to

G{a, b} if they are also occupied by jobs outside the coalition. Coalition G{a, b} faces the problem

of rescheduling jobs over the windows booked originally, so as to achieve the minimum combined

Author: Cai and Vairaktarakis: Coordination of Outsourced OperationsArticle submitted to Operations Research; manuscript no. OPRE-2009-04-180.R4 39

booking, overtime, and tardiness cost. Denote this problem as P Coalition. The main difference

between P Coalition and (OP) is that windows We and Wl may not be released and hence the

booking charges he, hl have to be paid. We introduce the following notation:

Qab =∑

j∈G{a,b} pj; the total processing time (workload) of jobs in G{a, b},Qe: the amount of window time in We not belonging to G{a, b}, 0≤Qe ≤L,

Ql: the amount of window time in Wl not belonging to G{a, b}, 0≤Ql ≤L,

Evidently, Opt can be modified to produce optimal schedules that satisfy the constraints imposed

on collection W(r, O) of Opt. Permanently including We or Wl forces us to include one or more of

these windows in W(r, 0). Permanently excluding a window simply prevents us from introducing

that window in the next candidate collection. Moreover, Opt is not effected if We and/or Wl allow

for different maximum regular or overtime production time. Hence, P Coalition can be solved by

making the following adjustments on the regular and overtime capacity availability of windows We,

Wl, and revised booking costs h′e, h′l:

We: Regular: max{L−Qe,0}, Overtime: L+O−max{Qe,L}.Wl: Regular: max{L−Ql,0}, Overtime: L+O−max{Ql,L}.These capacity limits simply reflect the remaining regular and overtime capacity in windows We, Wl

after accounting for the workload of jobs not in G{a, b} that are processed in We, Wl respectively.

Given these availabilities, let W∗(G) denote an optimal collection of windows for coalition G{a, b}.The following constraints indicate when We, Wl are candidate or required windows of W∗(G). In

each case the revised cost of the window is included.Qe ∈ (0,L), h′e = he, We ∈W∗(G) Ql ∈ (0,L), h′l = hl, Wl ∈W∗(G)Qe = 0, h′e = he, We candidate Ql = 0, h′l = hl, Wl candidateQe ≥L, h′e = 0, We candidate Ql ≥L, h′l = 0, Wl candidate.

To verify these constraints, observe that, when Qe ∈ (0,L) window We must be in W∗(G) to

process jobs not in coalition G{a, b}, and hence the booking cost remains unchanged. When Qe = 0,

then We is used exclusively by jobs in G{a, b} and hence can be replaced by any other window

if this is profitable. The resulting booking saving in this case is h′e = he. If on the other hand

Qe ≥L, window We must be included in W∗(G) to process jobs not in coalition G{a, b}, and hence

the cost to jobs in G{a, b} is 0. Similarly for window Wl. The exhaustive enumeration nature of

this modified version of Opt (referred to as algorithm Coalition) produces an optimal solution for

problem P Coalition. The time complexity of Coalition is the same as that for Opt.

Author: Cai and Vairaktarakis: Coordination of Outsourced Operations40 Article submitted to Operations Research; manuscript no. OPRE-2009-04-180.R4

Appendix 4. Counterexample

Consider an instance where manufacturers 1, 2, 3 arrive to the system in the order 1, 2, 3, each of

which owns a single job with pj = 1, dj = 9 for j = 1,2,3, L = 3, h1 = h3 = 0, h2 = 100, O = 0, ρ = 1

and arbitrary positive βj’s. Recall that all parameters are rescaled so that the 3 manufacturing

windows have no idle time between them (i.e., window t + 1 starts at time at+1 = bt). Before

coordination, manufacturers 1 and 2 (occupying windows W1 and W3 respectively) incur no cost

while manufacturer 3 (occupying W2) incurs cost of 100 and all jobs finish early. After coordination

all 3 jobs are scheduled in window W1. Consider coalitions S = {1,3} and T = {2,3}. Then, v(T ) =

v(S)=100 because both release W2 thus earning refund savings of 100. The same is true for coalition

S ∪ T = {1,2,3}. However, v(S ∩ T ) = v({3}) = 0 because manufacturer 3 cannot create savings

all by himself. Thus, v(S ∪T ) + v(S ∩T ) = 100 < 200 = v(S) + v(T ). This example shows that the

cooperative game is not convex.