An Auction-Theoretic Modeling of Production Scheduling ... - CiteSeerX

3 downloads 0 Views 319KB Size Report
A central coordination mechanism then makes resource allocation based on an ..... Monash 46] deals with the multiple object auction in which the availabil-.
An Auction-Theoretic Modeling of Production Scheduling to Achieve Distributed Decision Making Dissertation Proposal Erhan Kutanoglu Department of Industrial and Manufacturing Systems Engineering Lehigh University

An Auction-Theoretic Modeling of Production Scheduling to Achieve Distributed Decision Making by Erhan Kutanoglu and S. David Wu Department of Industrial and Manufacturing Systems Engineering Lehigh University Abstract Most existing methods for scheduling are based on centralized or hierarchical decision making using monolithic models. In this study, we investigate a new generation of scheduling methods based on a distributed and locally autonomous decision structure. Speci cally, we propose a decision structure based on auction theory. The basic idea is to localize and distribute the functionality of scheduling, leaving the complexity of operational decisions to local decision makers, while maintaining a simple and generic central coordination mechanism. The proposed structure allows local decision makers to make their decisions dynamically and independently according to changes in their local environments. A central coordination mechanism then makes resource allocation based on an iterative auction process using information obtained from local decision makers. We propose following research endeavors:

 We will study the decomposition of monolithic optimization models which provides

the basis for a distributed decision structure. In this research, we will focus on combinatorial optimization models in job shop scheduling. Speci cally, we propose to study Lagrangean relaxation and decomposition techniques.  We will study auction theoretic modeling of production scheduling which provides the means for analyzing how local preferences might be aggregated into collective decisions. Speci cally, we propose to investigate two types of auction mechanisms: (1) price-adjustment based auction, and (2) winner coalition based auction.  To evaluate practicality of the proposed distributed structure, we plan to test our approach using real data and operational scenarios at Ford North Penn Electronics Facility.

1 Introduction Production scheduling is the backbone of many manufacturing information systems. The way a scheduling system is structured a ects directly how production functions are carried out in a manufacturing system. Most existing methods for production scheduling take one of the two extreme approaches: (1) centralized or hierarchical decision making based on monolithic models, or (2) localized but uncoordinated decision making. Monolithic models are often found in academic literature especially in Operations Research, while localized methods can be frequently observed in industry. In this study, we propose a new generation of scheduling methods that are distributed and locally autonomous but are at the same time highly coordinated. Due to the advancement of computing technology, decision making in modern manufacturing environment is becoming increasingly distributed. That is, local decision makers have direct access to decision making tools and computers and each is responsible for his/her own segment of production. Each decision maker has his/her own constraints, special needs, preferences, and objectives, with some loose link to the global company objective. Unavoidably, local decision makers may have con icting interests over their shared resources. For example, rms often have designated product managers each responsible for a set of similar product types (See Section 5 for some discussion of an industry case). This product-oriented distribution of responsibilities and decision making are common in manufacturing systems with complex supply structures, such as the case in electronics and automotive manufacturing. Each product manager is motivated to satisfy his/her own customers' requirements. However, di erent market conditions, lead time pressure, and process requirements demand product managers to deal with distinctively di erent issues. In these environments, scheduling systems must accommodate local preferences and needs in order to support such objectives as market responsiveness, customer satisfaction and pipe-line eciency in the supply chain. The conventional, monolithic approach to scheduling attempts to capture the nest details involved in each and every local decision units. Typically a huge centralized computer software is used which encodes all the perceived constraints and variables. There are many problems associated with implementing monolithic models. First, manufacturing environments are both dynamic and stochastic, i.e. shop disturbances such as machine breakdowns and changes in job characteristics are inevitable. It is often the case that the hard-coded model used for scheduling is inaccurate even at the moment of its release. Second, these models need detailed and accurate information about local constraints and objectives for each of the local decision units. This results in the need for a complex monitoring and control system and an accurate centralized model of the real system. Most likely, when the last model update is made, new local constraints are added and new updates are necessary. Moreover, changes due to the introduction of a 1

new process or new technology in one of the local units may require changes to the entire model. Updating such centralized model over time is often costly and time consuming. Third problem with monolithic models is the complexity involved in the solution process. If a modeler includes all scheduling related details in the model, the model quickly becomes intractable. One common way of treating the complexity is to decompose the monolithic model hierarchically [25]. In this case, problem is decomposed into solvable small pieces in which each piece takes input from an output of higher, less-detailed level. In such hierarchical structure, there is a high possibility that the subordinates do not implement planned actions obtained from a higher level, since the local decision makers did not directly participate in the decisions made in an upper level. Finally, decision making among decision makers is typically asynchronous since local changes and updates do not occur in perfect synchronization. Centralized or hierarchical systems do not accommodate asynchronous decision making. In this study, we propose a distributed decision structure suitable for the already distributed modern manufacturing environment. The basic idea is to localize and distribute the functionality of operational scheduling decisions, leaving the complexity to local decision makers, while maintaining a simple and generic coordination mechanism at a central site. The proposed method is distributed in the sense that each local decision maker bases his/her decisions on a local utility which is de ned based on both local preferences and global constraints. The approach is exible in that it allows the local decision makers to change/adjust their local utilities (i.e. preferences, objectives and constraints) freely an frequently, and make their decisions asynchronously and dynamically. Speci cally, each local decision maker has a local optimization problem which is to maximize expected total reward subject to his/her local constraints. This is then communicated to the coordination mechanism as a \bid". The coordination mechanism or an \auctioneer" is a bid processor that makes resource allocation based on an iterative auction process using the bidding information. The auctioneer optimizes a global utility function which maximizes the eciency of the overall system. Distributed problem solving and computing have been the emerging trends for both computer hardware and software infrastructure. We believe that the time is never better in considering distributed problem solving and decision making for manufacturing. These distributed methods o er a level of exibility and local autonomy in decision making that was not physically possible a decade ago. Most interestingly, we can demonstrate that traditional optimization models for scheduling can be viewed as special cases our proposed structure and well-known optimization techniques such as Lagrangean relaxation can be adapted to handle iterative auction (See section 3).

2

2 Literature Review The notion of distributed and asynchronous decision making can be found not only in Operations Research literature; much of this research is inspired by work in Economics and Computer Science. In this section, we will rst review agent-based scheduling techniques from Computer Science. We will then review relevant ndings in Lagrangean relaxation and decomposition methods focusing on the implementations in scheduling. Finally, we will summarize the auction-based algorithms for optimization problems along with related auction theory from Economics. We will focus on complex auctions such as multi-item auction and combinatorial auction.

2.1 Distributed and Agent-based Scheduling Distributed scheduling has attracted many researchers in the computer science community. There are mainly two branches in this area: (1) Decomposition-based methods mostly built on constraint satisfaction version of the scheduling problem, and (2) Distributed Arti cial Intelligence (DAI) applications (agent-based systems) for scheduling. Although decomposition is not explicitly stated, one of the decomposition-based studies from CS literature is done by Sadeh [65] which describes micro-opportunistic scheduling technique for combined weighted tardiness and inventory costs objective. It relies on its detection of critical con icts between jobs and bottleneck resource analysis. After Sadeh's work, there have been a number of studies based on the opportunistic scheduling. The di erences in the algorithms lie on the bottleneck de nition, on the number and types of decisions (assigning start time values to the con icting operations ( xed start times ) versus imposing precedence constraints among operations (precedence constraint posting ), and making decisions for all the operations in the set of con icting operations (macro-opportunistic) versus making decision only for most critical operation(s) among the con icting operations (micro-opportunistic) ) [65], [48], [70]. The optimization attempts of these constraint satisfaction approaches can be found in [71], and [9]. The one of the drawbacks of these algorithms is the backtracking involved if earlier assignments do not leave a feasible space for the unscheduled operations. In addition, the e ects of the assignments of the start times are in forward fashion. From this point of view, the algorithms are not really di erent from one-pass myopic heuristics. The explicit distributed scheduling techniques called multi-agent systems have emerged recently in Distributed Arti cial Intelligence (DAI) literature. The idea is to decompose the problem into subproblems each of which is solved by activating an agent who has a particular view of the problem. Again these approaches are rooted on constraint satis3

faction version of the scheduling problem [74] [38], [37]. The optimization version of the problem has rarely been attempted in this area [74], [39]. Sycara, et al. [74] revise the micro-opportunistic scheduling approach studied in [65] to develop a distributed and multi-agent scheduling system. Liu and Sycara [39] propose multi-agent approach for specially structured bottleneck job shop scheduling problem with weighted tardiness objective. There are resource agents responsible for enforcing capacity constraints and, job agents responsible for enforcing precedence constraints, etc. The bottleneck resource's agent is called anchor which locally minimizes its local tardiness objective. Other agents try to adjust their solutions according to constraints imposed by the anchor solution, i.e. the non-anchor resource agents and job agents perform asynchronous distributed constraint satisfaction using previously proposed constraint partition and coordinated reaction approach [37]. The procedure repeats itself till a global solution that is compatible with the current anchor solution is found. The approach di ers from the earlier opportunistic scheduling techniques in that (1) it builds a complete but possibly infeasible schedule and incrementally revises it, and (2) it does not perform global constraint analysis; each constraint is locally enforced by coordinated reactions of the agents. During the last decade, the other line of research, rooted from DAI eld, has been marketbased distributed problem solving. The di erence between the two approaches is that the communication among the problem solving agents is governed by the computational economic process. Since the market-based approach cannot be thought independent from microeconomics theory, there have been conceptual works to enhance DAI with economics theory and in particular with game theory [84]. One of the pioneer work in this area was conducted by Davis and Smith [11] who propose a contract net for dynamic assignment of independent tasks to loosely coupled processors in which the tasks are distributed to the processors in a negotiation environment [69]. In various studies, contract net model is proposed for dynamic on-line manufacturing scheduling where each agent responsible for a manufacturing step gets its input by issuing request for bids to the agents who can supply that input and selecting the best bidder among them [53] [54] [1]. While Parunak [53] [54] discusses requirements for appropriate implementation of contract net to the manufacturing setting, Baker [1] presents an implementation of contract net in which actual accounting costs are used to generate bids which are in the form of unit cost as a function of delivery time and lot size. As Parunak states, the contract net approach is suitable for systems with dynamic and stochastic events. Upton, Barash and Matheson [76] study a dynamic parallel machine scheduling problem . They propose a particular bid calculation that depends on the earliest expected completion time. From this perspective, the resulting auction is not really di erent from routing the jobs dynamically to the machine with corresponding earliest completion time. Similar auction-based approach for detecting right setup timing for parallel machine problem is proposed by Wang and Veeramani [82]. 4

In a relevant study, Neiman, Hildum and Lesser [51] investigate a multi-agent distributed scheduling system in which each agent responsible for a set of resources negotiate with each other so that they may borrow resources to perform its own set of tasks. Another such dynamic scheduling technique is proposed by Sandholm [66] for vehicle routing problem. In this approach, each agent is again responsible for a set of resources ( eet of trucks) and they use negotiation to nalize the tasks (deliveries) each agent would perform. The bid of an agent is computed based on the marginal cost calculations for adding and/or removing task sets from its current task set. This approach is similar to a distributed, asynchronous search where the search is done over possible multiple-task exchanges.

2.2 Lagrangean Relaxation and Decomposition Techniques We will demonstrate in this research that the distributed auction mechanism is a generalization of the traditional optimization problems. Lagrangean relaxation (LR) and Lagrangean Decomposition (LD) techniques commonly used in optimization can be adapted to iterative auction mechanisms. In this section, we review some of the important developments in using LR for scheduling. There are two main uses of Lagrangean techniques: (1) They provide lower bounds that can be used in a branch-and-bound approach for an integer programming problem. (2) They can be used as a basis for designing ecient heuristics for hard-to-solve problems. We will focus on the latter. Although LR techniques have many other application areas such as non-linear optimization, they are proposed for integer programming problems in early 70s [68], [23]. Two papers by Fisher [20] [21] provide earlier review of the LR techniques for integer programming. Before implementation of LR for JSP, it is used for lot sizing and production planning problems (See [25], [34], [75] and [15] for recent implementations in these areas). The other application area for LR is single machine problem mainly with tardiness objective [19], [56]. An application to the single machine weighted completion time problem with precedence constraints is proposed in [77] and [32]. Parallel machine and ow shop applications are very few (See [40] for parallel machine problem, and [78] for 2-machine

ow shop problem). Although applications of the method for these relatively simple problems are numerous, the JSP has been rarely attempted with LR. One of the rst LR implementation in JSP-like context is made by Fisher [18] who uses LR to get iteratively tighter lower bounds in each node of a branch and bound search. A speci c JSP application of LR is proposed by Hoitomt, Luh and Pattipati [31] for a quadratic weighted tardiness objective. In this approach, the job shop scheduling problem is formulated as a discrete time integer programming, and both operation precedence constraints and machine capacity constraints are relaxed using Lagrangean multipliers to get operation level subproblems. Since the operation level objectives do not take into 5

account the operation interdependence, they report serious oscillation problems observed during the course of subgradient optimization. They later propose another LR technique with arti cial operation objectives with operational due dates and operational weights derived from job due dates and job weights [10]. Limited experimental study for randomly generated job shop scheduling problems shows some promising results. LR with dualized machine capacity constraints is used in another study to provide a basis for real-time dispatching by Roundy, et al. [64]. They propose a two-level scheduling approach in which the rst level tries to nd the best lagrangean multiplier values corresponding to the machine capacity constraints (machine prices ), and the second level dispatches the jobs with a priority rule using the provided machine prices. In this approach, they tried to capture the global view of scheduling in the rst level (planning level) by calculating machine prices using subgradient optimization. Detailed scheduling is left to the second level (dispatching) which handles shop dynamics such as new job arrivals, and processing times variations. Lagrangean Decomposition (LD) for integer programming is proposed by Guignard and Kim [27] [28]. This approach involves introducing copies of the original variables for a subset of the constraints, and dualizing the equivalence conditions between the original variables and the copies. The method decomposes the optimization problem into two subproblems each having a subset of the constraints. They show that the lower bound of LD dominates the LR bound. The applications of LD include resource constrained minimum weighted arborescence problem [29] and constrained assignment problem [60]. For the scheduling problems, there are only two applications of the LD technique that we are aware of. Guignard [26] implements di erent LD approaches for alternative formulations of the parallel machine makespan problem with setup times and compared the theoretical dual bounds of the approaches. Another LD application is proposed by de Matta [12] for single line multi-product lot sizing problem with setup costs.

2.3 Auction Mechanism Design and Auction Algorithms McAfee and McMillan [44] de ne auction as a market institution with an explicit set of rules determining resource allocation and prices on the basis of bids from the market participants. Hence, auction can be interpreted as one way of allocating resources with dicult-to-determine standard values. The literature on the theory of auction has developed after a seminal paper by Vickrey [80] in which he compared rst-price and secondprice auctions. A bibliography by Stark and Rothkopf [73] lists nearly 500 papers over the next two decades after Vickrey's study. In another survey, Engelbrecht-Wiggans [16] reviews main theoretical results and research e orts on auctions and bidding. Smith [72] 6

collects several papers on experimental economics mainly on auction research published from 1962 to 1990. Simple, single-object auction has been most widely studied [45], [17]. More recent and broader review on competitive bidding can be found in [62]. From point of view of this research, the most relevant branch of the auction theory is the optimal auction design. First two studies on optimal auction design are by Myerson [49] and by Riley and Samuelson [59]. Myerson's study is especially important, because it reports that optimal auction design problem is equivalent to a relatively simple constrained maximization problem: Maximize the seller's expected revenues subject to (1) participation constraints (or individual rationality) that each bidder receive a nonnegative expected surplus (gain from participation), and (2) incentive compatibility constraints that it be equilibrium behavior for bidders to reveal their true valuations. Harris and Raviv [30] try to answer the questions of why auctions are used to allocate resources in certain environments and which type of auction is most ecient. For review of optimal auction design studies, see Myerson [50]. Other optimal auction design studies concentrate on di erent versions of single-object auctions in di erent types of economic environments [41], [43], [47], [8]. While useful for auctioning simple goods, the use of auction procedures to schedule resource-constrained systems is more complex. The problem is at least as complex as multi-object auctions which involve selling of independent-valued indivisible objects. Weber [83] compares three forms of multiple object auctions: simultaneous-dependent, simultaneous-independent, and sequential auctions in which a number of identical objects are to be sold. Monash [46] deals with the multiple object auction in which the availability of the object can be predicted stochastically. Hylland and Zeckhauser [33] consider problem of allocating individuals to positions with limited capacities. They propose an auction-assignment procedure to which the individuals respond with their true valuations. Leonard [36] investigates the problem of eliciting true preferences from individuals who must be assigned to a set of positions. He proposes to charge prices that causes individuals to choose the best position and that correspond to an ecient assignment. He presents the procedure as a multi-object second price auction mechanism which is a generalization of Vickrey's second-price auction. Demange, Gale and Sotomayor [14] propose a dynamic or progressive auction for the multi-item case to achieve incentive-compatible minimum price equilibrium. Instead instead of a single-pass sealed bid auction as in Leonard [36], they present two progressive auction mechanisms: (1) exact auction mechanism, and (2) approximate auction mechanism. In exact progressive auction, the auctioneer keeps increasing the prices of over-demanded items until there is no over-demand in any of the items. In approximate auction, each bidder commits himself to buying an item at the announced price. The demanded items are then traded between bidders and the item price increases by some small increment, say  in each iteration. The approximate auction terminates when there are no more uncommitted bidders, at which point each committed bidder buys the item assigned to him at its current price. It has been shown that ap7

proximate algorithm yields nal prices di erent from the minimal equilibrium price by at most N units where N is the number of items. Sankaran [67] proposes an improvement on the exact auction mechanism based on a labeling algorithm. The equivalency of auction mechanisms for multi-object auctions and classical assignment problem led Bertsekas to develop so called auction algorithm for assignment problem [4]. Auction algorithm is similar to the approximate auction mechanism outlined above with two main di erences: (1) An uncommitted bidder always chooses the item with the highest \net value" (i.e. the di erence between the value of the item to the bidder and its current price), and (2) The committed bidder increases the bid for the item by an amount that is the di erence between the net value of this best item and that of the second best item. If the two best items have the same net values the price increase is a xed amount . Bertsekas show that the price vector obtained at the end of the auction is the approximate optimal dual vector of the primal assignment problem. This, in fact, is a restatement of the result of Demange, Gale and Sotomayor. In this context, we can say that nding incentive-compatible minimum equilibrium price in an optimal auction design problem is equivalent to nding dual optimal solution for the corresponding assignment problem. After the success of the auction algorithm designed for assignment problem, Bertsekas extended application areas of the algorithm for other types of linear network optimization problems such as shortest path, transportation and minimum cost network ow [5], [6], [7]. To develop an auction mechanism for the scheduling of resource-constrained systems is even much more complex than multi-item auction. Here, we must deal with auctions in which multiple items have inter-dependent and dynamic valuations. Investigation of this type of combinatorial auction in which the bidders demand a set or combination of objects with a single bid has started very recently. Banks, Ledyard and Porter [3] consider allocating multiple resources each with divisible capacity when there are uncertainties in demand or supply. They generalize the Vickrey second-price auction for this environment in which each bidder demands a combination of some portions of each resource with a single bid. Rothkopf, Pekec and Harstad [63] investigate the simultaneous combinatorial auctions in which bidders may wish to submit bids for combination of items each can be awarded to only one bidder. They show that nding the revenue maximizing set of noncon icting bids is NP-Hard. They analyze di erent allowable bid structures to nd computationally tractable auction types. Applications of this type of auction mechanism can be found in Graves, Schrage, and Sankaran [24] who implement an combinatorial auction mechanism in course registration. Students are assigned to capacity-limited classrooms and faculty members according to their bids for the course schedules. In another application, Rassenti, Smith, and Bul n [58] propose a sealed-bid combinatorial auction mechanism for allocation of airport time slots to competing airlines. An algorithm for solving the problem yields an allocation of slots to packages that maximizes the system surplus as revealed by the set of package bids submitted. In the next section, we will propose such 8

combinatorial auction mechanism for JSP and analyze the similarities and di erences between proposed auction and Lagrangean relaxation based decomposition.

3 Problem Statement and Solution Methodology 3.1 Problem Statement We consider production scheduling problem where a set of jobs each of which requires a set of machines for a certain period of time is to be completed. Each job consists of a series of operations that represent the production steps of the job. Each operation needs a certain machine(s) for a certain time period called processing time, to be spent on the machine without any interruption i.e. no preemption is allowed. Job processing times and their corresponding machine requirements represent the job routing. The prescribed sequence of operations in each job is the precedence constraint. Each machine has a limited capacity of one, i.e. it can process one and only one operation at a time. This requirement de nes the machine capacity constraints. The performance measure or objective function is a representation of the real-life goal which might be due date performance (e.g., weighted tardiness, maximum tardiness, number of tardy jobs) or inventory costs (e.g., weighted

ow time, work-in-process inventory). Job shop scheduling involves multi-stage (multiple operations per job) production where each job can have di erent routings. If all jobs have an identical routing, this is a ow shop scheduling problem. If there is only one machine, then it is a single machine problem. If the scheduling problem includes routing or machine selection decisions (i.e., when an operation can be performed by a number of di erent machines), then the problem is a JSP with alternative machines (JSP-A). Single stage version of JSP-A is a parallel machine problem. For a complete taxonomy of production scheduling problems, see Pinedo [55].

3.2 Distributed Auction-based Approach for Scheduling As discussed in Section 2.3, auction algorithm designed for assignment problem [4] corresponds closely to simple multi-item auction. That is, nding incentive-compatible minimum equilibrium prices in multi-item auction is equivalent to maximizing the seller's revenue subject to assignment constraints. In scheduling, if we consider the time slots available on the resources as \objects" open for bidding from the jobs, an analogy can be drawn between simple multi-item auction and single-stage (single machine or parallel machine) scheduling problems in which each operation has unit processing times (i.e., 9

each time slot is independent from each other and each has a speci c value for each job). Not surprisingly, these scheduling problems are typically easy to solve and can be reduced to assignment problems analytically. More general scheduling problems, such as job shop scheduling, require a more complex auction mechanism namely combinatorial auction. In this section, we propose an auctionbased approach for JSP with weighted tardiness objective inspired from the relevant multiitem and combinatorial auctions reviewed in Section 2.3 [61], [13], [63], [58]. Research work that needs to be completed for this analysis is summarized in Section 5. Our proposed auction mechanism is progressive or dynamic as proposed by Demange, Gale and Sotomayor [13] since it involves some number of iterations before a nal allocation of objects to the bidders can be made. In our analysis, we de ne \objects " as discrete time slots on the machines and \bidders " as individual jobs. An auctioneer is the coordinating agent or seller who keeps updating the prices of objects starting from initial reservation prices. The auctioneer announces the start of an auction with an initial price vector. Each bidder (job) demands time slots from the machines on its routing, according to a local objective based on, for instance, a charge of using the machine, its due date and weight. Each job tries to nd the best combination of time slots on the machines (objects) so as to maximize its own utility function. Obviously, objects have inter-dependent values and di erent combination of objects generates di erent values for jobs as in the case of combinatorial auctions [58] [63]. The precedence and non-preemption constraints restrict the combinations of time slots that each job bids. As in standard auctions, bidders may submit a demand function, make an o er for payment along with a demand function, or use any other means to signal his demand [42]. In this research, we consider two possible selling procedures : (1) Starting from an initially announced reservation price vector, each bidder bids for a combination of time slots on its required machines using the current prices. The auctioneer evaluates the bids from all jobs and updates the reservation prices according to the overall congestion and con icts on the machines. This repeats in an iterative fashion until it nds a con ict-free demand pro le [13]. (2) Each bidder submits a demand function along with a bid or potential payment for that combination included in the demand function. The auctioneer announces the winners (and losers) by identifying a best con ict-free combination of demand functions from the point of view of a system utility function. The winners' combined demand function or the winner coalition [63] gives potential feasible resource/time allocation. The losers try to change this winner coalition by proposing higher bids for a di erent combination of time slots. This proceeds in an iterative fashion until all jobs are in the winner coalition. This selling procedure is investigated for the allocation of divisible resources in [3]. Since the rst procedure is relatively straight-forward and is similar to pricedirected search in combinatorial optimization, we will rst focus on the rst procedure. Possible implementation of the second procedure will be further investigated. 10

In the following, we describe the rst auction procedure more formally for a weighted tardiness job shop scheduling problem. We rst adopt the following notation.

 t: Time slot index, t = 1; : : : ; T , where T represents the length of the planning          

horizon during which all the jobs can be completed (i.e. some reasonable upper bound on the makespan of the problem). k: Machine index, k = 1; : : : ; M , where M is the number of machines in the shop (Hence there are TM time slots for bidding). i: Job (bidder) index, i = 1; : : :; N , where N is the number of jobs. j : Operation index, j = 1; : : : ; ni, where ni is the number of operations for job i. Wi: Weight of job i, which might represent the cost per unit time if the job i is completed after its due date. di: Due date of job i pij : Processing time of operation j of job i oik : The operation of job i which requires machine k mij : Machine required by operation j of job i, oik = j if k = mij : Bij;a;b: A combination of time slots from time slot a to time slot b for operation j of job i (Operation bid) Bi: A combination of demanded time slots of job i (Job bid, it is collection of operation bids)

The set of objects (time slots available from the machines) that each bidder (job) is allowed to bid can be de ned as a set of pairs (machine,time slot ). Hence each possible bid Bi from job i is a subset of following object set:

O = f(k; t) : 1  k  M; 1  t  T g:

(1)

Equivalently, each operation bid Bij;a;b is a subset of machine mij 's object set:

Om = f(mij ; t) : 1  t  T g: ij

(2)

Since preemption of operations is not allowed, the operation bid is restricted as follows:

Bij;a;b = f(mij ; t) : 1  a  t  b  T; b = a + pij ? 1g 11

(3)

Thus, job i's overall bid is a limited combination of allowable operation bids:

Bi = f(Bi1;a 1;b 1 ; : : :; Bi;n ;a i

i

i

i;n

i

;b

i;n i

) : ai;j+1 > bi;j ; 8j < ni g

(4)

The condition in the set de nition determines the precedence constraints between consecutive operations. Job i's local utility function can be stated as follows:

Ui(Bi) = ?Wi maxf0; bi;n ? dig ? i

b n X X i

ij

j =1 t=a

m

ij

;t

(5)

ij

where kt is the current nonnegative price of using time slot t on machine k. First term in the utility function gives the total weighted tardiness saved by demanding Bi which in turn yields completion of the job as bi;n and the second term is basically the total payment for demanded time slots in Bi . Therefore, the best bid for job i (Bi) can be de ned as the one that maximizes this utility function: i

max Ui(Bi ) B i

(6)

During the auction, each job agent i solves its locally constrained utility maximization problem to nd the best combination of resource-time slots. Each job agent then submits its bid Bi to the auctioneer. The auctioneer collects all the bids, updates the prices kt, then announce new prices to local agents. The goal of price updates is to reduce the number of resource con icts. Since each bid Bi de nes a demand function for job i, one way of updating prices in this procedure is to adjust them according to the excess job demands (number of jobs that bid for a certain time slot minus the total capacity of the machine) which is a measurement of con ict on that time slot: N X (7) Dkt = i;o (t) ? 1 i=1

ik

where i;o (t) is 1 if (k; t) is in Bij ;a ;b and mij = k, is 0 otherwise. Since excess demand can be negative it is possible to reduce prices for time slots which do not have enough demand. However, the reduced price must be nonnegative. The auctioneer may want to be more aggressive in price update in early iterations in order to get the overall demand picture quickly. Smaller adjustments can be made in later iterations to improve the quality of allocation. One possible price adjustment can be de ned as follows: ik

ij

ij

rkt+1 = maxf0; rkt + f (Dktr ; r)g

(8)

where r is the iteration number, and f is a function nondecreasing in Dkt while nonincreasing in r. The process iterates until a satisfactory resource-time allocation is achieved. 12

To prevent an excess number of updates the auctioneer may stop iterations (1) after some limit on the number of iterations is achieved, (2) after a limit on the total number of con icts (size of the total excess demand) is achieved, or (3) after a con ict-free combination of local bids is obtained. In the rst two cases, the auctioneer needs a procedure to nalize the job-resource/time allocation. In the next two sections, we will show that subgradient search used in the context of Lagrangean relaxation can be adapted for the above iterative auction mechanism.

3.3 Lagrangean Relaxation First we will focus on the integer programming (IP) formulation of the job shop scheduling problem with weighted tardiness objective. Although there are di erent types of formulations we will use the discrete time formulation (JSP ) due to Pritsker, Watters, and Wolfe [57]. We dualize machine capacity constraints of this (JSP ) to obtain a Lagrangean relaxation (LR) which is then decomposed into N independent subproblems, one for each job. These subproblems are dual of maximum ow problems with special network structure [64]. The main decision variable is Xijt: ( if operation j of job i has started by time t, Xijt = 01 otherwise.

(9)

The JSP under consideration can be formulated as follows (For indices out of its range, we set the corresponding variable to 0): (JSP ) min

X i

3 2 X (1 ? Xi;n ;t)5 Wi 4 t>d ?p i

i

s.t. Xi;j;t+1  Xi;j;t 8i; j; t < T Xi;j;t  Xi;j?1;t?p ?1 8i; j > 1; t X X (Xi;j;t ? Xi;j;t?p )  1 8k; t i;j

i j :m

ij

=k

(10)

i;ni

ij

Xi;j;t 2 f0; 1g 8i; j; t

(11) (12) (13) (14)

The rst set of constraints (11) make sure that once an operation is started, it remains started in all subsequent time periods. This is due to the de nition of Xijt and the non13

preemption requirement. The constraints (12) state that an operation cannot start until all its predecessors are completed. And nally, the machine capacity constraints (13) state that at most one job can be processed on a particular machine in a given time period. The objective function (10) is the total weighted tardiness derived from the fact that a cost of Wi is incurred for each time period after di during which job i has not been completed. The objective function can be rewritten as follows:

2 3 XXX X X Wi 4 (1 ? Xi;n ;t)5 = Wi(T ? di + pi;n ) + ?wijtXijt

X i

t>d ?p i

i

where

i

i

i;ni

i

j

t

(15)

(

i if j = ni and t > di ; wijt = W (16) 0 otherwise. Since the rst term in the objective function (15) is a constant we represent it as A = Pi Ai where Ai = Wi(T ? di + pi;n ). i

If we dualize the machine capacity constraints (13) with nonnegative Lagrangean multipliers kt ; 8k; t we get following Lagrangean Relaxation problem for JSP (LR)

min

X i

Ai +

XXX i

j

t

(m ;t ? m ij

ij

;t+p

ij

? wijt)Xijt ?

XX k

t

kt

s.t. Xi;j;t+1  Xi;j;t 8i; j; t < T Xi;j;t  Xi;j?1;t?p ?1 8i; j > 1; t Xi;j;t 2 f0; 1g 8i; j; t i;j

(17) (18) (19) (20)

We may decompose LR into independent job-level subproblems as follows:

v(LR) =

X i

v(LR;i) ?

XX t

k

kt

(21)

where v(P ) denotes the value of optimal solution of problem P , and

v(LR;i) = min Ai +

XX j

t

(m ;t ? m ij

ij

;t+p

ij

? wijt)Xijt

s.t. Xi;j;t+1  Xi;j;t 8j; t < T Xi;j;t  Xi;j?1;t?p ?1 8j > 1; t Xi;j;t 2 f0; 1g 8j; t i;j

14

(22) (23) (24) (25)

The job-level subproblems satisfy integrality property, in fact they are dual of a specially structured maximum ow network problem. We can therefore relax the binary constraints (25). Xijt  1; 8j; t (26) Xijt  0; 8j; t (27) Repeated application of rst set of constraints (23) leads us to the following constraints instead of relaxed constraints (26{27): XijT  1; 8j (28) Xijt  0; 8j; t (29) Since the dual to (LR;i) is a max- ow problem on a network, we can use special dual network ow algorithms to solve each job-level subproblem. For each set of Lagrangean multipliers , v(LR) which is a function of summation of solutions to (LR;i) (see (21)), provides a lower bound on the optimal cost of (JSP ). The best lower bound corresponds to the solution of the following Lagrangean dual problem: (LRD) max v(LR) (30) 0 Although there are alternative ways to improve the Lagrangean lower bound and solve the Lagrangean dual, subgradient optimization procedure has been most frequently used. Subgradient optimization starts with an initial value for the multipliers , for example 0 = 0. Then the method generates a sequence fr g over the iterations r by the rule rkt+1 = maxf0; rkt + sr gkt (X r )g (31) where sr is an appropriately selected step size and gkt(X r ) is the subgradient of the capacity constraint of machine k for time period t de ned by the optimal solution X r of LR : X X r r (32) gkt (X r ) = (Xi;j;t ? Xi;j;t ?p ) ? 1 r

i j :m

ij

ij

=k

Step size sr should satisfy following conditions in order to get a good convergence to r X optimal Lagrangean dual value: (1) As r ! 1, sr ! 0, and (2) as r ! 1, sh ! 1. h=1 A formula that has proven to be e ective in practice is ! UB ? v ( LR ) sr = r P P g2 (X r ) (33) k t kt where r is a scalar satisfying 0 < r  2 and UB is a target upper bound value for (JSP ) which can be updated over the iterations. r

For completeness, we summarize the overall procedure as follows: 15

Step 0. Initialize Lagrangean multipliers (e.g., 0 0) and scalar (e.g. 0 2), and set r = 0. Step 1. Solve the job-level subproblems by dual network ow algorithm for X r , calculate the lower bound v(LR ). Step 2. Update UB; if necessary. If stopping criterion is satis ed, stop, otherwise adjust the Lagrangean multipliers, set r r + 1, go to Step 1. r

We can update upper bound value by using a fast heuristic that converts the capacityinfeasible solution into a feasible one in each iteration. It is also suggested in the literature that one should decrease the value of if there has been no improvement over a certain number of iterations. The procedure stops when (1) we nd a capacity-feasible global solution to problem LR , (2) when lower bound is epsilon-close to the upper bound, (3) when becomes very small or (4) when a xed number of iterations is reached. The procedure will end with an infeasible solution (but typically, a good lower bound) due to the last three criteria. r

3.4 Lagrangean Relaxation and Auction Algorithm In this section, we show that subgradient search in the context of Lagrangean Relaxation can be viewed as a version of the rst type of combinatorial auction introduced in Section 3.2. As a result, we may adapt subgradient search as one particular way of iterative auction. First, we note that local utility function Ui of job i can be expressed as the negative of the objective function of i'th job-level subproblem in Lagrangean relaxation LR;i. The restrictions on the combinations of time slots that job i is allowed to bid (Bi) could be the same constraints as in the job-level subproblem (i.e., Non-preemption and precedence  ; 8j; t to problem LR;i produces the optimal constraints). Therefore, the solution Xijt  bid Bi of job i in auction. Hence, each job bidder in combinatorial auction in fact solves a job-level subproblem in Lagrangean relaxation. Equivalently, max Ui(Bi)  v(LR;i): (34) B i

Second, we observe that multiplier adjustment in subgradient optimization can be viewed as price updates made by the auctioneer in the auction algorithm. While subgradient optimization tries to penalize infeasibility of dualized constraints, auction price update tries to reduce congestion on the demanded objects. Subgradient algorithm adjusts prices proportional to the amount of infeasibility (higher penalty for larger infeasibility), auction 16

updates the prices proportional to the excess demand. In fact, the subgradient calculated in optimization procedure can be set to the excess demand used in reservation price update in auction: gkt(X r ) = Dktr : (35) Although not unique, one way of updating the prices in auction is to set the function f as below: f (Dktr ; r) = sr Dktr (36) In this case, the auction algorithm can be set equivalent to subgradient optimization. Moreover, aggressiveness in the early iterations and minor adjustments later in auction are parallel to the idea of starting big and reducing the amount over the iterations. In any case, since at the end of a xed number of iterations subgradient optimization does not guarantee a feasible solution to JSP , auction algorithm implemented in this context is likely to face the same duality gap and it will be necessary to use a heuristic to eliminate the positive excess demand after some desired convergence is obtained from the auction algorithm.

4 Preliminary Results We started testing the proposed auction mechanism using subgradient price update on a set of 6 10x10 (10 job, 10 machine) job shop scheduling problems selected from the literature [85]. We coded the IP formulation of JSP in AMPL [22] and used the dual network simplex algorithm [52] to solve job-level subproblems. We used initial parameter values as 0kt = 0 8k; t, and 0 = 1. We halve the value of if there is no improvement in the Lagrangean lower bound for 3 iterations and set the total number of iterations at 100. Since the long processing times require longer planning horizon (T ) which in turn causes longer computations, we scaled the processing times by a xed constant to have scaled processing times between 1 and 10. We scaled the original due dates similarly. We call these as scaled problems to distinguish them from the original problems with the original processing times. First we use Apparent Tardiness Cost (ATC) rule [79] which is shown to be one of the best performers for weighted tardiness criterion [35] to obtain initial upper bound value for the scaled problem. Then we solve job-level scaled subproblems and calculate lower and upper bound values for the scaled problem in each iteration. Before we update the prices in each iteration, we use a heuristic to convert the capacity-infeasible schedule to a feasible one by using the priorities of the jobs which are assigned according to their sequence on each machine. We generate two feasible schedules for the original problem as follows: (1) Active schedule : This corresponds to using the sequence of jobs in the capacity-infeasible schedule and generating a feasible schedule using the active schedule 17

20000 18000

Weighted Tardiness

16000 14000 12000 10000 8000 6000 4000 2000

97

93

89

85

81

77

73

69

65

61

57

53

49

45

41

37

33

29

25

21

17

9

13

5

1

0

Iteration Active LR Schedule

Non-delay ATC

Non-delay LR Schedule

Figure 1: Feasible schedule values of active scheduling and non-delay scheduling methods generation procedure [2]. (2) Non-delay schedule : Here we established job sequences to generate their priorities, but the actual sequence may change according to the ready times of jobs on speci c machines. This is true because a machine does not wait for a higher priority job which is not ready at the decision point. By this way, in each iteration, we have two feasible schedules for the original problem. We also use active scheduling scheme to update upper bound for the scaled problems. We have recorded the total number of con icts (i.e. total infeasibility) and lower bound values over the iterations to check the convergence of the algorithms. Since the general behavior of the algorithm over the iterations does not signi cantly change across test problems, we provide detailed performance charts for one particular problem (ABZ5). Figure 1 shows the weighted tardiness values for each of the schedules generated for the original problem. We observe fairly signi cant improvement over the iterations for both active and non-delay schedules. The weighted tardiness value for active scheduling improves 28% over initial ATC schedule in 100 iterations and 5% for non-delay scheduling, i.e., we obtained the best value 6171 for active scheduling at iteration 91 and 8110 for non-delay scheduling at iteration 77. If we compare the initial and nal weighted tardiness values of both techniques, we see 44% and 23% improvement in active scheduling and nondelay scheduling, respectively. The lower and upper bound values for the scaled problem 18

Objective Function Value

2500

2000

1500

1000

500

97

93

89

85

81

77

73

69

65

61

57

53

49

45

41

37

33

29

25

21

17

13

9

5

1

0

Iteration LR Lower Bound

LR Upper Bound

Best UB

Figure 2: LR Lower bound and upper bound values (obtained by active scheduling) for scaled problem are plotted in Figure 2. Recall that upper bound values for scaled problem are updated using active scheduling scheme using scaled processing times. As we can see, whereas Lagrangean relaxation lower bound gets tighter and the best upper bound improves over the iterations, there is still a big duality gap at the end. This is to be expected for most combinatorial optimization problems. However, in this case the solution provided by Lagrangean lower bound can be easily converted to feasible schedules. This particular property makes the method promising for heuristic development. To see the parallel performance between the scaled problem and original problem, see Figure 3. Finally, Figure 4 shows the positive correlation between Lagrangean upper bound value for the scaled problem and the total number of con icts over the iterations. We summarize overall results of this initial experimental study in Table 1. As we can see from the results, both schedules generated by the auction procedure are considerably better than ATC schedule. For example, average improvement of active scheduling over ATC is 34% ranging from 14% to 68%. Active scheduling gives better performance than Non-delay scheduling for all the problems except one. It should be noted, however, it is not the goal of this research to develop scheduling heuris19

2500

20000 18000 16000 14000

1500

12000 10000

1000

8000 6000

500

UB for Original Problem

UB for Scaled Problem

2000

4000 2000

93 97

85 89

77 81

69 73

61 65

53 57

45 49

37 41

29 33

21 25

9 13 17

0

5

1

0

Iteration LR Upper Bound

Active LR Schedule

Figure 3: Comparison of scaled problem and original problem tics in the conventional context of optimization. The preliminary results demonstrate that an iterative auction algorithm similar to that of subgradient search provide reasonable results from the view point of traditional optimization. This base line approach establishes a benchmark for further generalization and heuristic development of the iterative auction algorithm where incorporation of local preferences and achieving minimum price equilibrium are the ultimate goals. The base line model allows us to investigate the following speci c issues: Table 1: Summary of the preliminary experimental results with the selected JSP problems (LR Lower bound, Best upper bound and Minimum total con icts over the iterations are collected for scaled problem.) Problem LB Best UB Con icts ATC Non-delay LR Active LR Non-delay ABZ5 370.18 881 109 8547 6171 8110 MT10 188.22 731 82 6009 3905 4587 LA16 229.30 587 87 4536 3882 3435 LA20 70.35 593 79 5865 4085 4794 ORB3 48.76 704 95 5613 3934 4909 ORB6 12.00 422 88 2655 842 1595 20

2500

300

UB for Scaled Problem

200 1500 150 1000 100 500

50

97

89 93

81 85

73 77

69

61 65

53 57

45 49

37 41

29 33

21 25

9

13 17

0

5

0

1

Total Conflicts

250

2000

Iteration LR Upper Bound

Total Conflict

Figure 4: Feasible schedule values of active scheduling and non-delay scheduling methods

1. If local preferences and constraints are to be changed dynamically, to what extent can the system maintains its global performance? 2. Can we design an iterative auction mechanism that maintain a stable performance while accommodating local changes and variations? 3. To what extent the optimization structure of the original IP model will hold when subproblems are going through independent and frequent changes? What should be the restrictions on these changes?

5 Research Plan The overall research approach for this work is summarized in Figure 5. On one hand, monolithic optimization models common in Operations Research provide the structure necessary to analyze di erent means of decomposition and the fundamental properties of various utility functions. In this research, we will focus our attention on combinatorial optimization models in job shop scheduling. On the other hand, distributed game theoretic 21

Feedback Adjustment to Reality Analytic Benchmarking

Monolithic Optimization Model

- Decomposition - Basis for local utility function - Basis for iterative auction - Basis for optimization of system performance

LR and LDbased decomposition

(OR)

A Generalized Distributed Decision Structure

Conceptual Mapping

Distributed Game Theoretic Model

Auction Theory

Industry Case Study and Testing

- Auction mechanism design - Expanded local utility to incorporate local preferences and local constraints - Basis for asynchronous and dynamic decision making

(Economics)

Feedback Adjustment to Reality

Figure 5: Proposed distributed decision making approach models rooted in Economics provide the means for analyzing how individual preferences might be elicited and aggregated into collective decisions. Our ultimate goal is to provide some insights in the correspondence between system optimality and the minimum price equilibrium of individual entities in the system. To this end, we propose the following research endeavors.

1. Decomposition of Monolithic Optimization Models: Lagrangean Relaxation and Decomposition

Of the rst branch of research endeavor we propose to study decomposition methods in combinatorial optimization which may provide the basis for a distributed decision structure. Speci cally, we propose to study Lagrangean relaxation and Lagrangean decomposition techniques to address the following research issues. Through the analysis using Lagrangean relaxation we will 22

1.1. identify the basis of and the relationship between system optimization (master problem) and local utility functions (subproblems). 1.2. generalize solution techniques such as subgradient search or dual ascent in the context of iterative bidding. Investigate more general and powerful computational heuristics using the basic structure of LR. 1.3. analyze various alternatives of decomposition. This provides us the means for understanding di erent forms of distributed decision making (e.g., resource bidding for jobs vs. jobs bidding for resources) and their corresponding mathematical structure. 1.4. analyze mathematical properties of various decompositions. This helps us to understand the extent of which local utilities can be generalized to incorporate added local constraints and preferences without destroying the basic optimization structure. 1.5. develop analytic benchmark to the proposed approach using the traditional optimization paradigm. Through the study of Lagrangean decomposition techniques (see Appendix A) we will be able to examine the following additional issues. 1.6. study scheduling problems where multiple sets of decisions (e.g., alternative machine selection and scheduling, see Appendix B) can be decoupled and decomposed. 1.7. examine the e ects of tighter lower bounds and di erent decomposition perspectives provided in LD to the computational heuristics developed under LR. 1.8. examine the e ects of LD to topics 1.3,1.4 and 1.5 under LR.

2. Distributed Auction Theoretic Modeling

In the second research endeavor we propose to study the price adjustment based mechanism in combinatorial auction, and the winner coalition based auction mechanisms. Speci cally, we propose to address the research issues organized as follows. Under price adjustment based scheme, we propose to 2.1. examine di erent pricing updating schemes. Starting by the pricing scheme used in subgradient search (which can be shown to be a special case), we will study pricing schemes which use speci c properties of job shop scheduling. Further, we will study the correspondence between minimal equilibrium pricing and optimality for scheduling problems. 2.2. examine alternating perspectives between bidders and auctioneers, e.g., resources bidding for jobs combined vs. jobs bidding for resources. This is particularly interesting for scheduling problems considering alternative machines. 2.3. examine scenarios where local preferences and constraints are changing asynchronously and dynamically. We are interested in mechanisms and pricing 23

schemes which e ectively incorporate system uncertainties such as dynamic changes in resource availability, order priority, labor status and other local preferences and constraints. 2.4. study incentive compatibility through the pricing structure. Under the assumption that agents won't reveal their true preferences unless their incentives are properly aligned, we propose to examine the extent which incentive compatible pricing can be incorporated into minimal equilibrium pricing. Under winner coalition type of auction mechanism, we propose to examine the e ects of this new scheme to topics outlined in 2.3 and 2.4.

3. Implementation and Industry Case Study

To evaluate practicality of the proposed distributed structure, we plan to test our approach using real data and operational scenarios at Ford North Penn Electronics Facility located in Landsdale, Pennsylvania. Ford has agreed to collaborate with us and will provide a speci c operational platform suitable for the proposed distributed decision structure. This is a consolidated SMD (surface mount device) area where 80% of all electronic products at Ford Lansdale will go through a pick and place process using these machines. There are product managers each responsible for the production of a family of similar products. Each manager has his/her product speci c local constraints and preferences driven by shipment frequencies, contractual agreement with customers and suppliers, characteristic of demands, and technological speci cations. The product managers must compete for the same set of resources (SMD's) while trying to maximize his/her own interests captured by a local utility at the moment. The goal of the decision system is to maximize system performance (in the consolidated SMD area) while catering to local preferences and objectives. Ultimately Ford would like to have a system that is exible to changes (therefore, easy to maintain), align company wide interests with local incentives, and maximize eciency of the capital intensive SMD area. In this research endeavor, we propose to complete the following issues: 3.1. implement and test a particular version of the distributed decision method for the scheduling problem 3.2. compare the proposed method against the historical realization of their own decisions 3.3. test the robustness of the method by considering a realistic set of uncertainties based on real operational scenarios.

24

6 Expected Contributions of the Research As we mentioned in Introduction, there is a big need for distributed decision making structure for scheduling in today's distributed manufacturing environment. Centralized or hierarchical approaches based on monolithic models do not ll this need satisfactorily because of their inherent properties (e.g. time-dependent local objectives, preferences, and constraints cannot be considered in a monolithic centralized model very e ectively). Main contribution of this research is to satisfy this need by proposing a new distributed decision structure. The idea is to localize and distribute the functionality of scheduling decisions, leaving the complexity to autonomous local decision makers, while maintaining a simple and generic central auction-based coordination mechanism. Other research contributions can be summarized as follows:

1. The research provides important insights in the correspondence between system op-

timality and the minimum price equilibrium of individual entities in the system. These insights provide the basis for distributed implementation of monolithic optimization models. 2. The research establishes a pathway which allows us to study distributed decision making using the structure of traditional optimization. The wealth of mathematical explorations and computational methods in optimization can be taken advantage for the development of distributed decision making. 3. From the perspective of distributed decision making, the research examines di erent means of decomposition and their corresponding auction mechanisms for production scheduling problems. 4. The research examines practical issues involved in implementing distributed decision making using real industry data and scenarios.

References [1] A. D. Baker. Metaphor or reality: A case study where agents bid with actual costs to schedule a factory. In S. H. Clearwater, editor, Market-Based Control: A Paradigm for Distributed Resource Allocation. World Scienti c, River Edge, NJ, 1996. [2] K. R. Baker. Introduction to Sequencing and Scheduling. John Wiley and Sons, New York, NY, 1974. [3] J. S. Banks, J. O. Ledyard, and D. P. Porter. Allocating uncertain and unresponsive resources: An experimental approach. RAND Journal of Economics, 20(1):1{25, 1989. 25

[4] D. P. Bertsekas. The auction algorithm: A distributed relaxation method for the assignment problem. Annals of Operations Research, 14:105{123, 1988. [5] D. P. Bertsekas. The auction algorithm for assignment and other network ow problems: A tutorial. Interfaces, 20(4):133{149, 1990. [6] D. P. Bertsekas. Linear Network Optimization. The MIT Press, Cambridge, MA, 1991. [7] D. P. Bertsekas. Auction algorithms for network ow problems: A tutorial introduction. Computational Optimization and Applications, 1:7{66, 1992. [8] J. Bulow and J. Roberts. The simple economics of optimal auctions. Journal of Political Economy, 97(5):1060{1090, 1989. [9] C. Cheng and S. F. Smith. A constraint satisfaction approach to makespan scheduling. In Proceedings of the 1st International Joint Workshop on Arti cial Intelligence and Operations Research, Timberline, OR, 1995. [10] C. S. Czerwinski and P. B. Luh. Scheduling products with bills of materials using an improved Lagrangean relaxation technique. IEEE Transactions on Robotics and Automation, 10(2):99{111, 1994. [11] R. Davis and R. G. Smith. Negotiation as a methaphor for distributed problem solving. Arti cial Intelligence, 20:63{109, 1983. [12] R. de Matta. A Lagrangean decomposition solution to a single line multiproduct scheduling problem. European Journal of Operational Research, 79:25{37, 1994. [13] G. Demange and D. Gale. The strategy structure of two-sided matching markets. Econometrica, 53(4):873{888, 1985. [14] G. Demange, D. Gale, and M. Sotomayor. Multi-item auctions. Journal of Political Economy, 94(4):863{872, 1986. [15] G. Dobson and I. Khosla. Simultaneous resource scheduling with batching to minimize weighted ow times. IIE Transactions, 27:587{598, 1995. [16] R. Engelbrecht-Wiggans. Auctions and bidding models: A survey. Management Science, 26(2):119{142, 1980. [17] R. Engelbrecht-Wiggans. An introduction to the theory of bidding for a single object. In R. Engelbrecht-Wiggans, M. Shubik, and R. M. Stark, editors, Auctions, bidding, and contracting: Uses and Theory, pages 53{103. New York University Press, New York, NY, 1983. [18] M. L. Fisher. Optimal solution of scheduling problems using Lagrange multipliers: Part i. Operations Research, 21:1114{1127, 1973. 26

[19] M. L. Fisher. A dual algorithm for the one-machine scheduling problem. Mathematical Programming, 11:229{251, 1976. [20] M. L. Fisher. The Lagrangian relaxation method for solving integer programming problems. Management Science, 27(1):1{18, 1981. [21] M. L. Fisher. An application oriented guide to Lagrangian relaxation. Interfaces, 15(2):10{21, 1985. [22] R. Fourer, D. M. Gay, and B. W. Kernighan. AMPL: A Modeling Language for Mathematical Programming. Boyd and Fraser Publishing Company, Danvers, MA, 1993. [23] A. M. Geo rion. Lagrangean relaxation for integer programming. Mathematical Programming Study, 2:82{114, 1974. [24] R. L. Graves, L. Schrage, and Sankaran. An auction method for course registration. Interfaces, 23(5):81{92, 1993. [25] S. C. Graves. Using Lagrangean techniques to solve hierarchical production planning problems. Management Science, 28(3):260{275, 1981. [26] M. Guignard. Solving makespan minimization problems with Lagrangean decomposition. Discrete Applied Mathematics, 42:17{29, 1993. [27] M. Guignard and S. Kim. Lagrangean decomposition: A model yielding stronger Lagrangean bounds. Mathematical Programming, 39:215{228, 1987. [28] M. Guignard and S. Kim. Lagrangean decomposition for integer programming: Theory and applications. RAIRO, 21(4):307{323, 1987. [29] M. Guignard and M. B. Rosenwein. An application of Lagrangean decomposition to resource-constrained minimum weighted arborescence problem. Networks, 20:345{ 359, 1990. [30] M. Harris and A. Raviv. Allocation mechanisms and design of auctions. Econometrica, 49(6):1477{1499, 1981. [31] D. J. Hoitomt, P. B. Luh, and K. R. Pattipati. A practical approach to job-shop scheduling problems. IEEE Transactions on Robotics and Automation, 9:1{13, 1993. [32] J. A. Hoogeveen and S. L. van de Velde. Stronger Lagrangian bounds by use of slack variables: Application to machine scheduling problems. Mathematical Programming, 70:173{190, 1995. [33] A. Hylland and R. Zeckhauser. An ecient allocation of individuals to positions. Journal of Political Economy, 87(2):293{314, 1979. 27

[34] U. S. Karmarkar and L. Schrage. The deterministic dynamic product cycling problem. Operations Research, 33(2):326{345, 1985. [35] E. Kutanoglu and I. Sabuncuoglu. Experimental investigation of scheduling rules in a dynamic job shop with weighted tardiness costs. In Proceedings of 3rd Industrial Engineering Research Conference, Atlanta, GA, 1994. [36] H. B. Leonard. Elicitation of honest preferences for the assignment of individuals to positions. Journal of Political Economy, 91(3):461{479, 1983. [37] J. Liu and K. Sycara. Distributed problem solving through coordination in a society of agents. In Proceedings of the 13th International Workshop on Distributed Arti cial Intelligence, 1994. [38] J. Liu and K. P. Sycara. Distributed constraint satisfaction through constraint partition and coordinated reaction. In Proceedings of the 12th International Workshop on Distributed Arti cial Intelligence, 1993. [39] J. Liu and K. P. Sycara. Exploiting problem structure for distributed constraint optimization. In Proceedings of the 1st International Conference on Multi-agent Systems, San Fransisco, CA, 1995. [40] P. B. Luh, D. B. Hoitomt, E. Max, and K. P. Pattipati. Scheduling generation and recon guration for parallel machines. IEEE Transactions on Robotics and Automation, 6:687{696, 1990. [41] E. Maskin and J. Riley. Optimal auctions with risk averse buyers. Econometrica, 52(6):1473{1518, 1984. [42] E. Maskin and J. Riley. Optimal multi-unit auctions. In F. Hahn, editor, The Economics of Missing Markets, Information, and Games, pages 312{335. Clarendon Press, Oxford, 1990. [43] S. A. Matthews. On the implementability of reduced form auctions. Econometrica, 52(6):1519{1522, 1984. [44] R. P. McAfee and J. McMillan. Auctions and bidding. Journal of Economic Literature, 25(2):699{738, 1987. [45] P. R. Milgrom and R. J. Weber. A theory of auctions and competitive bidding. Econometrica, 50(5):1089{1122, 1982. [46] C. A. Monash. Ecient allocation of a stochastic supply: Auction mechanisms. In R. Engelbrecht-Wiggans, M. Shubik, and R. M. Stark, editors, Auctions, bidding, and contracting: Uses and Theory, pages 231{254. New York University Press, New York, NY, 1983. 28

[47] J. Moore. Global incentive constraints in auction design. Econometrica, 52(6):1523{ 1535, 1984. [48] N. Muscettola. Scheduling by iterative partitioning of bottleneck con icts. In Proceedings of the 9th Conference on Arti cial Intelligence for Applications, pages 49{55, Los Alamitos, CA, 1993. [49] R. B. Myerson. Optimal auction design. Mathematics of Operations Research, 6(1):58{73, 1981. [50] R. B. Myerson. The basic theory of optimal auctions. In R. Engelbrecht-Wiggens, M. Shubik, and R. M. Stark, editors, Auctions, bidding, and contracting: Uses and Theory, pages 149{163. New York University Press, 1983. [51] D. E. Neiman, D. W. Hildum, and V. R. Lesser. Exploiting meta-level information in a distributed scheduling system. In Proceedings of 12th National Conference on Arti cial Intelligence, Seattle, WA, 1994. [52] CPLEX Optimization. Using the CPLEX base system including CPLEX mixed integer solver and barrier solver options, 1995. [53] H. V. D. Parunak. Manufacturing experience with the contract net. In M. N. Huhns, editor, Distributed Arti cial Intelligence, pages 285{310. Morgan Kaufmann Publishers, Los Altos, CA, 1987. [54] H. V. D. Parunak. Applications of distributed arti cial intelligence in industry. In G. M. P. O'Hare and N. R. Jennings, editors, Foundations of Distributed Arti cial Intelligence, pages 139{164. John Wiley and Sons, 1996. [55] M. Pinedo. Scheduling: Theory, Algorithms and Systems. Prentice Hall, Englewood Cli s, NJ, 1995. [56] C. N. Potts and L. N. van Wassenhove. A branch and bound algorithm for the total weighted tardiness problem. Operations Research, 33(2):363{377, 1985. [57] A. Pritsker, L. Watters, and P. Wolfe. Multiproject scheduling with limited resources: A zero-one programming approach. Management Science: Theory, 16(1):93{108, 1969. [58] S. J. Rassenti, V. L. Smith, and R. L. Bul n. A combinatorial auction mechanism for airport time slot allocation. Bell Journal of Economics, 13:402{417, 1982. [59] J. G. Riley and W. F. Samuelson. Optimal auctions. The American Economic Review, 71(6):381{392, 1981. [60] M. B. Rosenwein. An improved bounding procedure for the constrained assignment problem. Computers and Operations Research, 18(6):531{535, 1991. 29

[61] M. H. Rothkopf. Bidding in simultaneous auctions with a constraint on exposure. Operations Research, 25(4):620{629, 1977. [62] M. H. Rothkopf and R. M. Harstad. Modeling competitive bidding: A critical essay. Management Science, 40(3):364{384, 1994. [63] M. H. Rothkopf, A. Pekec, and R. M. Harstad. Computationally manageable combinatorial auctions. Technical report, Rutgers University, 1995. [64] R. O. Roundy, W. L. Maxwell, Y. T. Herer, S. R. Tayur, and A. W. Getzler. A pricedirected approach to real-time scheduling of production operations. IIE Transactions, 23(2):149{160, 1991. [65] H. Sadeh. MICRO-BOSS: A micro-opportunistic factory scheduler. Technical Report CMU-RI-TR-91{22, Carnegie Mellon University, The Robotics Institute, 1991. [66] T. Sandholm. An implementation of the contract net protocol based on marginal cost calculations. In Proceedings of 11th National Conference on Arti cial Intelligence, pages 256{262, Washington, DC, 1993. [67] J. K. Sankaran. On a dynamic auction mechanism for a bilateral assignment problem. Mathematical Social Sciences, 28(2):143{150, 1994. [68] J. F. Shapiro. Generalized Lagrange multipliers in integer programming. Operations Research, 19:68{76, 1971. [69] R. G. Smith. The contract net protocol: High-level communication and control in a distributed problem solver. IEEE Transactions on Computers, C{29(12):1104{1113, 1980. [70] S. F. Smith and C. Cheng. Slack-based heuristics for constraint satisfaction scheduling. In Proceedings of the 11th National Conference on Arti cial Intelligence, pages 139{144, Washington, DC, 1993. [71] S. F. Smith, J. Y. Ow, P. S. Potvin, N. Muscettola, and D. Matthys. An integrated framework for generating and revising factory schedules. Journal of Operational Research Society, 41(6):539{552, 1990. [72] V. L. Smith. Papers in Experimental Economics. Cambridge University Press, New York, NY, 1991. [73] R. M. Stark and M. H. Rothkopf. Competitive bidding: A comprehensive bibliography. Operations Research, 27:364{391, 1979. [74] K. Sycara, S. Roth, N. Sadeh, and M. Fox. Distributed constraint heuristic search. IEEE Transactions on System, Man, and Cybernetics, 21:1446{1461, 1991. 30

[75] J. M. Thizy and L. N. van Wassenhove. Lagrangean relaxation for the multiitem capacitated lot-sizing problem: A heuristic implementation. IIE Transactions, 17(4):308{313, 1985. [76] D. M. Upton, M. M. Barash, and A. M. Matheson. Architectures and auctions in manufacturing. International Journal of Computer Integrated Manufacturing, 4(1):23{33, 1991. [77] S. L. van de Velde. Dual decomposition of a single-machine scheduling problem. Mathematical Programming, 69:413{428, 1995. [78] S. L. ven de Velde. Minimizing the sum of job completion times in the two-machine

ow shop by Lagrangean relaxation. Annals of Operations Research, 26:257{268, 1990. [79] A. P. J. Vepsalainen and T. E. Morton. Priority rules for job shops with weighted tardiness costs. Management Science, 33(8):1035{1047, 1987. [80] W. Vickrey. Counterspeculation, auctions and competitive sealed tenders. Journal of Finance, 16(1):8{37, 1961. [81] H. M. Wagner. Principles of Operations Research. Prentice-Hall, Englewood Cli s, NJ, 1975. [82] K. Wang and D. Veeramani. An adaptive machine bidding strategy for distributed shop- oor control under stochastic part demands. In 5th Industrial Engineering Research Conference Proceedings, pages 321{326, Minneapolis, MN, 1995. [83] R. J. Weber. Multiple-object auctions. In R. Engelbrecht-Wiggens, M. Shubik, and R. M. Stark, editors, Auctions, bidding, and contracting: Uses and Theory, pages 165{191. New York University Press, 1983. [84] M. P. Wellman. Market-oriented programming: Some early lessons. In S. H. Clearwater, editor, Market-Based Control: A Paradigm for Distributed Resource Allocation. World Scienti c, River Edge, NJ, 1996. [85] S. D. Wu, E. S. Byeon, and R. H. Storer. A graph-theoretic decomposition of job shop scheduling problems to achieve scheduling robustness. Technical Report 93T009, Lehigh University, 1993.

31

Appendix A: Lagrangean Decomposition for JSP We plan to use another type of decomposition method for JSP : Lagrangean Decomposition (LD). We will analyze LD from auction perspective. In this method, rst we de ne new set of variables (copy variables ) Zijt 2 f0; 1g ; 8i; j; t and we add equivalence constraints between original decision variables and copy variables:

Xijt = Zijt; 8i; j; t (*) Zijt 2 f0; 1g ; 8i; j; t Then we rewrite machine capacity constraints in copy variables Zijt : X X i j :m

ij

=k

(Zi;j;t ? Zi;j;t?p )  1; 8k; t ij

When we dualize the new constraints (*) with free variables uijt, we get the following Lagrangean Decomposition (LDu ) problem: XXX

X

XXX

Ai + min (uijt ? wijt)Xijt ? uijtZijt i j t i i j t s.t. Xi;j;t+1  Xi;j;t 8i; j; t < T X  X 8 i; j > 1; t (LDu ) Xi;j;t X i;j ?1;t?p ?1 (Zi;j;t ? Zi;j;t?p )  1 8k; t i;j

i j :m =k Xijt 2 f0; 1g ; Zijt ij

ij

2 f0; 1g

8i; j; t

We can decompose LDu into two subproblems one in original decision variables, and the second in copy variables:

v(LDu ) = v(LDuX ) ? v(LDuZ ) where LDuX and LDuZ are X -subproblem and Z -subproblem, respectively, i.e, XXX X Ai + v(LDuX ) = min (uijt ? wijt)Xijt i j t i s.t. Xi;j;t+1  Xi;j;t 8i; j; t < T Xi;j;t  Xi;j?1;t?p Xijt 2 f0; 1g 32

i;j

?1

8i; j > 1; t 8i; j; t

and

XXX

v(LDuZ ) = max uijtZijt i j t s.t. X X (Zi;j;t ? Zi;j;t?p )  1 8k; t i j :m

ij

ij

=k

Zijt 2 f0; 1g

8i; j; t

In fact, for each subproblem further decomposition is possible: We can decompose the X subproblem into job-level subproblems as in the LR case, and Z -subproblem into machinelevel subproblems. We can de ne Lagrangean Decomposition Dual (LDD) as follows: (LDD) max u v (LDu ) The theoretical relationship between dual bounds is as follows:

v(JSP )  v(LDD)  v(LRD) = v(LP ) where v(LP ) is the optimal value of linear programming relaxation of JSP . Hence, LD lower bound can improve over the LR lower bound which is equal to the LP relaxation bound. We can use similar price update methods to solve LD dual (subgradient optimization, or auction). However, from the perspective of auction analysis of scheduling, we can have other alternatives: In LDu , X -subproblem solves job-level subproblems by ignoring machine capacity constraints. Hence, each job demands time slots from the machines as a solution of its subproblem. On the other hand, Z -subproblem solves machine level problems by ignoring precedence constraints. Therefore, each machine suggests to the jobs alternative schedules where capacity constraints are satis ed. Whenever these two schedules are equivalent, i.e. X = Z we can stop the algorithm. Otherwise, we can update the prices of time slots where X di erent from Z and we can resolve the subproblems again. Actually, we can start with LR by performing subgradient optimization some number of iterations, then with a non-zero set of prices, we can start LD pricing. To do this we need following relationship between LR multipliers  and LD multipliers u:

uijt = m ;t ? m ij

ij

;t+p

ij

In fact, Guignard and Kim [27] show that if we set u as in this formula it is guaranteed that we have tighter lower bounds than LR.

33

Appendix B: Di erent Scheduling Problems As we pointed out earlier, we started this investigation with job shop scheduling problem. However we would like to add other common scheduling problems studied in the literature: Single machine, ow shop, parallel machine, and job shop scheduling with alternative machines. Actually, it will be easy to apply the similar ideas to single machine and ow shop problems, because we can easily modify the formulations and algorithms for these problems: For example, if we set ni = 1; 8 i and M = 1 we obtain single machine problem. Similarly, if we set ni = M; 8 i and mij = mj ; 8 i where mj is common machine for j 'th operation for all the jobs, then we get ow shop problem. The required change in the algorithms will be minimal. For the parallel machine case, we will start with the formulation of a more general case: job shop scheduling with alternative machines (JSPA ). We modify the standard formulation of JSP presented in Section 3.3 to obtain following formulation of the JSPA. min s.t.

X i

wi(T ? di + pi;n ) + i

i

j

q

t

?wijtXijqt

Xi;j;q;t+1  Xi;j;q;t

X q

Xi;j;q;t 

X

XX X

(JSPA)

XXXX

i

X t

X q

j q:m

ijq

=k

q

Xi;j?1;q;t?p

8i; j; q; t < T i;j

8i; j > 1; t

?1

(Xi;j;q;t ? Xi;j;q;t?p )  1 ij

8k; t

Xijqt  TYijq

8i; j; q

Yijq = 1

8i; j

Xi;j;q;t 2 f0; 1g

8i; j; q; t

Yijq 2 f0; 1g

8i; j; q

where

 q: Alternative machine index, q = 1; : : : ; Kij , where Kij is the number of alternative

machines for operation j of job i.  mijq : Machine number of qth alternative machine for operation j of job i 34

8 > < 1 if operation j of job i has started by time t  Xijqt = >: on qth alternative machine 0 otherwise (

if operation j of job i is assigned to qth alternative machine  Yijq = 01 otherwise New constraints related to Y state that each operation of each job should be assigned to one of its alternative machines and this should be done in the planning horizon. Although this formulation assumes that processing times are same across the alternative machines, it is not dicult to consider unequal alternative machine case in which processing times of an operation on alternative machines are di erent. This formulation uni es the routing and scheduling decisions in a single model: Decision variables Y yield job-machine assignments (routing) and X will produce the operation-time allocation over the planning horizon (scheduling). With this formulation, we can consider di erent decomposition alternatives to get distributed algorithms:

 Hierarchical decomposition : In this decomposition we basically decouple the problem

into two parts: First we make routing decisions in a upper-level problem, then we solve classic JSP for Y produced from upper-level. Alternatively, we can use Lagrangean decomposition reviewed in Appendix A.  Lagrangean Relaxation : We again implement LR technique by dualizing machine capacity constraints in JSPA. In this case, the problem decomposes into job-level subproblems as in JSP case, but here each job additionally considers alternative machines for each of its operations. They will similarly compete for the best time slots on the machines, however they will have more combinations of time slots allowed, because of the possible availability of cheaper time slots on the alternative machines.

The question of how alternative machine case will a ect the auction procedure will be under investigation, because we foresee that there are some interesting issues to address: In auction procedures discussed up to this point, jobs compete for the best time slots on the resources. However, in alternative machine case, it might be interesting to allow the resources to compete to get the most valuable jobs. This type of forward-reverse auction was proposed by Bertsekas [6] for classic assignment problem. It is possible to develop a similar forward-reverse combinatorial auction mechanism for scheduling problems with alternative machines. We can attempt to address this issue starting from the simplest case of JSPA which is parallel machine case. In fact, single stage version of JSPA is parallel machine problem where ni = 1; 8 i. 35

Appendix C: Stochastic Processing Times As we discussed in previous sections, one of the advantages of distributed auction-based scheduling tools is exibility, adaptability and robustness: Each local agent can change its local constraints, add new constraints, or can update its local utility function to include new preferences without a ecting whole model or procedure. This advantage applies over time too. Local agents can do these local updates dynamically and asynchronously. We plan to investigate this issue in more detail. Although not unique way to do this, one of the rst starting points might be stochastic processing times or processing time variation case. We can add then other types of uncertainties and disruptions that can occur in a real-life system such as machine breakdowns, job due date and release date changes, arrival of a new hot job and introduction of a new operation for a job. For stochastic processing time case, we can incorporate chance-constraint stochastic programming very easily [81]. Suppose that the distribution and expected or mean of the processing times are known. We will consider chance-constraint programming for precedence constraints which are local for each job-level subproblem. For a speci c job i, the precedence constraints are as follows:

Xijt  Xi;j?1;t?p

i;j

?1 ;

8 j > 1; t

Since we consider stochasticity of pij and it is dicult to include probabilistic indices for this set of constraints. However, we can obtain start and completion times (Sij and Cij ) of each operation as follows: X Sij = T ? Xijt + 1 t

X

Cij = T ?

t

Xijt + pij

Hence we can rewrite the precedence constraints as below:

Cij  Si;j+1 ? 1; 8 j < ni ; or equivalently

X t

Xijt ?

X t

Xi;j+1;t  pij ; 8 j < ni

Now we can incorporate probabilistic processing times: If we want to have con dence levels of ij for each operation j to satisfy corresponding precedence constraint, then we have following chance constraint: X

X

t

t

P ( Xijt ? or

P (pij 

X t

Xi;j+1;t  pij )  ij ; 8j < ni

Xijt ?

X t

Xi;j+1;t)  ij ; 8j < ni

36

Then we can put following constraint to the model: X t

Xijt ?

X t

Xi;j+1;t  Pij ; 8j < ni

where Pij is the smallest number satisfying

P (pij  Pij )  ij or F (Pij )  ij If the processing times are uniformly distributed between paij and pbij , then Pij = paij + ij (pbij ? paij ). However, if the processing times are normally distributed as N (pij ; ij2 ), then Pij = pij + Ka ij where K is a standard normal value. ij

Since we loose integrality property when we put this constraint directly to the formulation, we convert the chance constraint into original form. Then the equivalent formulation for job-level subproblem is XX v(LR;i) = min Ai + (m ;t ? m ;t+p ? wijt)Xijt j t s.t. Xi;j;t+1  Xi;j;t 8j; t < T ij

Xi;j;t  Xi;j?1;t?P Xi;j;t 2 f0; 1g

ij

i;j

?1

ij

8j > 1; t 8j; t

where Ai is mean value for Ai since it involves pi;n , and pij is mean processing time of operation j of job i. i

April 24, 1997 37

Suggest Documents