Singapore Management University
Institutional Knowledge at Singapore Management University
Research Collection School Of Information Systems
School of Information Systems
11-2007
Multi-Period Combinatorial Auction Mechanism
for Distributed Resource Allocation and
Scheduling
Hoong Chuin LAU
Singapore Management University, hclau@smu.edu.sg
Shih-Fen CHENG
Singapore Management University, sfcheng@smu.edu.sg
Thin Yin LEONG
Singapore Management University, tyleong@smu.edu.sg
Jong Han PARK
Zhengyi ZHAO
Singapore Management University
DOI: https://doi.org/10.1109/IAT.2007.41
Follow this and additional works at: https://ink.library.smu.edu.sg/sis_research
Part of the Artificial Intelligence and Robotics Commons, Business Commons, and the
Operations Research, Systems Engineering and Industrial Engineering Commons
Citation
LAU, Hoong Chuin; CHENG, Shih-Fen; LEONG, Thin Yin; PARK, Jong Han; and ZHAO, Zhengyi. Multi-Period Combinatorial
Auction Mechanism for Distributed Resource Allocation and Scheduling. (2007). IEEE/WIC/ACM International Conference on
Intelligent Agent Technology, 2007: IAT '07: 2-5 November 2007, Fremont, CA: Proceedings. 407-411. Research Collection School Of
Information Systems.
Available at: https://ink.library.smu.edu.sg/sis_research/208
This Conference Proceeding Article is brought to you for free and open access by the School of Information Systems at Institutional Knowledge at
Singapore Management University. It has been accepted for inclusion in Research Collection School Of Information Systems by an authorized
administrator of Institutional Knowledge at Singapore Management University. For more information, please email libIR@smu.edu.sg.
Multi-Period Combinatorial Auction Mechanism for
Distributed Resource Allocation and Scheduling
Hoong Chuin Lau Shih Fen Cheng Thin Yin Leong
Jong Han Park Zhengyi Zhao
School of Information Systems
Singapore Management University
{hclau, sfcheng, tyleong, jhpark, zyzhao}@smu.edu.sg
Abstract
We consider the problem of resource allocation and
scheduling where information and decisions are
decentralized, and our goal is to propose a market
mechanism that allows resources from a central
resource pool to be allocated to distributed decision
makers (agents) that seek to optimize their respective
scheduling goals. We propose a generic combinatorial
auction mechanism that allows agents to competitively
bid for the resources needed in a multi-period setting,
regardless of the respective scheduling problem faced
by the agent, and show how agents can design optimal
bidding strategies to respond to price adjustment
strategies from the auctioneer. We apply our approach
to handle real-time large-scale dynamic resource
coordination in a mega-scale container terminal.
1. Introduction
In a classical scheduling problem (such as the job-shop
scheduling problem), the goal is to schedule a set of jobs
on a set of machines (resources), subject to resource
capacity and other scheduling-specific constraints. In this
paper, we consider the problem of resource allocation and
scheduling where information and optimization decisions
are decentralized, and our goal is to propose a
coordination mechanism that allows resources from a
central resource pool to be allocated to distributed
decision makers that seek to optimize their respective
optimization goals. More precisely, we are concerned
with the following decentralized scheduling scenario:
a. there is a central pool of limited renewable resources
that comprises multiple units of resources for each
machine type;
b. there are multiple selfish agents, each having a job list
and is responsible to service its job list by solving its
respective scheduling problem; without loss of
generality, we will assume that each agent is interested
in minimizing a performance function (such as
makespan, tardiness or combinations thereof).
One example of such problem can be found in the
allocation of resources for loading and discharging
vessels in a container terminal. Each job, comprising a
container that needs to be moved from/to a vessel,
requires three different types of machines – a Quay Crane
(QC), a Prime Mover (PM) and a Yard Crane (YC). In
practice, each QC is endowed with a job list and it has to
acquire multiple units of different resources (PMs and
YCs) over time to complete its given job list. All PMs
have a common processing time, and so do YCs and QCs.
The goal is to decide an optimal resource allocation for
time-overlapping job lists in a distributed manner (since
each QC works independently without considering other
QCs’ job lists).
To coordinate the resource usage by all selfish QC
agents over time, we propose to design a market
mechanism that allows agents to act as price takers and
acquire the rights to utilize resources from the pool to
solve their respective scheduling problems. In other words,
each agent is expected to pay for the utilization of
resources from the central pool defined by a price
function. Hence, in our approach, each agent seeks to
minimize its total cost function, which is the sum of the
performance and price functions.
Solving the above decentralized scheduling problem
with market mechanisms can provide several advantages
(as described in Wellman et al., 2001):
a. Market mechanisms are naturally decentralized.
Agents compute bids independently and submit them
to the market mechanism.
b. Communication overhead for the market mechanisms
is low. The only information required to be exchanged
between markets and agents are bids and prices.
Previous works on market-based decentralized
scheduling [Wellman et al. (2001), Thomas et al. (2002)]
have provided encouraging empirical results. As a result,
over the past decade, significant amount of efforts have
been devoted to the building of a general framework for
using market-based approaches in various resource
allocation problems (including scheduling).
The primary contribution of this paper is to propose a
market-based approach that can be used in solving largescale decentralized scheduling problems where each agent
is given a pre-determined job-list. The market mechanism
we propose is a combinatorial auction. While there have
been similar proposals in the literature (see Section 2
below), most of them are targeted at solving small and
specific scheduling problems, and computational
efficiency is usually not a primary concern.
2. Literature Review
Distributed scheduling has attracted much attention in
recent years. One line of research is market-based
distributed problem solving. In the market-based
paradigm, auctions are introduced to coordinate resource
usage among selfish agents who seek to maximize their
respective objectives. Wellman et al (2001) introduced
auction mechanisms which used prices derived through
distributed bidding protocols to determine schedules. The
existence of equilibrium prices for some general classes
of scheduling problems was investigated. Not only
ascending auction but also combinatorial auction’s
bidding behaviors and protocols were investigated.
Dewan and Joshi (2002) used Lagrangean relaxation to
decompose and solve the distributed scheduling in
dynamic job shop environment. The jobs constructed their
bids from subproblems obtained by Lagrangean relaxation
which relaxes the capacity constraint. A central auctioneer
was used for coordinating among job agents by adjusting
prices for all the resources. Attanasio et al. (2006) applied
a similar approach for decentralized parallel machine
scheduling problem. In these studies, the price adjustment
process was based on tatonnement process which was
originally proposed by Walras (1954) and improved by
many other studies (e.g. Joyce (1984), Cheng and
Wellman (1998)). The tatonnement process resolves
resource conflicts by updating the price based on excess
demand iteratively. Several price adjustment processes
has been proposed in different studies. Fisher (1985)
proposed price adjustment process based on subgradient
search method. Joyce (1984) set the step parameter based
on the level of difference between demand and supply. He
set higher value on step parameter when the difference
between demand and supply is large and vice versa.
Dewan and Joshi (2002) and Attanasio et al. (2006) used
Fisher (1985)’s approach.
In general scheduling problems, a job agent may
demand a combination of time slots from multiple
machines to process its operations. Hence, we must
consider auctions in which agents bid for multiple items
that have inter-dependent valuations. This property of
scheduling problem motivates us to adopt a combinatorial
auction mechanism that allows bidders to submit a
combination of items with a single bid. Kutanoglu and
Wu (1999) noted the equivalence of the combinatorial
auction approach to the Lagrangean relaxation and use the
shadow prices as transfer pricing to link decomposed
subproblems. They also used tatonnement process to
resolve conflicts among agents. Jung and Kim (2006)
considered the problem of load scheduling for multiple
quay cranes in port container terminals.
3. Notations and Problem Formulation
We assume that a central pool of resources is owned
by a central server (who is the auctioneer). Each job list
is represented by a bidder agent who bids for resources to
service all the jobs in its job list. Clearly, since each agent
chooses to minimize total cost, it will be encouraged to
bid for more resources when the prices are low and vice
versa. We therefore seek to achieve a conflict-free
resource allocation through a market mechanism of
demand, supply and price adjustments.
Note that as opposed to conventional auctions, our
auction mechanism seeks to achieve a minimum cost
resource conflict-free resolution rather than revenue
maximization. Our approach is based on the tatonnement
process which resolves resource conflicts by iteratively
updating the prices of resources based on excess demand.
This approach has been applied similarly in different
scheduling contexts such as [Dewan and Joshi 2002,
Attanasio et al. 2006]. In our approach, the auctioneer
iteratively updates the prices of resources starting from
initial price. Based on current price of items, each bidder
needs to find the best bid in order to maximize its own
utility function. The auctioneer then evaluates bids from
all bidders and updates the prices in response to excess
demand. The new prices will be used in the next round of
bidding, and this process repeats until a conflict-free
allocation is found.
In our problem, there are K resources, and the entire
time horizon is divided into T discrete time periods. Since
each job list may span across multiple time periods, this
gives rise to a multi-period combinatorial auction
problem. A bid is hence composed of a combination of
resources over multiple periods. Note that the bid may
specify varying units of resources for different periods.
• Let Xrikt denote the demand quantity bidded by agent i
for resource k in time period t during iteration r.
• Let Prkt denote the price for resource k in time period
t during iteration r.
• Let Ck denote the total supply (capacity) for resource
k across all time periods.
• Let Drkt denote the aggregate demand (of all agents)
for resource k in time period t in iteration r.
4. Solution Approach
There are two key components that need to be
designed: (a) bid generation strategies for individual
agents, and (b) price adjustment strategy for the
auctioneer. The bid generation strategies are based on the
prices, while the prices are computed based on the
submitted bids. In such a system where the decisions of
two individual components depend on each other, what
constitutes a solution is the pair of bids and prices such
that the new bids computed from the current prices are
identical to the current bids, and vice versa. In economics,
this solution is called general equilibrium since it
achieves equilibrium (supply equals demand) for all
resources simultaneously. An intuitive way to approach
such solution is through an iterative process, where in
each iteration every agent generates a combinatorial bid
using the bid generation strategy and upon receiving all
the bids, the auctioneer adjusts the prices according to the
excess demand (non-zero excess demand implies that the
equilibrium is not reached yet). The process is repeated
until we reach the general equilibrium (or the stopping
criterion is satisfied). In the reminder of the section, we
will discuss the detail of these two critical components.
4.1. Bid Generation Strategy
The bidder’s objective is to maximize its utility. In our
context, utility is the net value from job completions
minus the payment for additional resources sold by the
auctioneer. It can be shown that maximizing this utility
function is equivalent to minimizing the total cost
function. For job shop scheduling for instance, this is the
sum of total makespan cost, tardiness penalty cost, and
resource cost. The total resource usage cost is simply the
sum of current price of each resource in each period
multiplied by the amount requested for that period.
Hence, each bidder agent is confronted with an
optimization problem that is concerned with the tradeoff
between makespan/tardiness and resource usage. This
optimization problem can be formulated as follows: for
each agent i in any iteration r, given the current price
defined by [Prkt] and i’s job list, find a bid [Xrikt] that
minimizes agent i’s total cost.
Although this optimization is smaller compared to the
centralized optimization problem, it is still an extremely
challenging problem that cannot be solved efficiently.
Therefore, we propose the following 2-step heuristic bid
generation strategy which we term as Relax and Repair:
Step 1. Relax the multi-period problem to a single
period problem, i.e. decide on an initial common resource
level for each resource across all periods. By eliminating
the time dimension, the problem can be reduced to a
classical resource allocation problem.
Step 2. (Repair) Improve the quality of the solution by
local search – by increasing or decreasing the resource
level in each period. Note that for each period, we need to
consider either an increase or decrease in resource level
but not both. Hence, the neighborhood of each local
search iteration is O(T). Note that while the resulting bid
might not be optimal, our experimental study (see Section
5) shows that the performance difference is reasonably
small, with considerable savings in execution time.
The price adjustment from one iteration to the next is
essentially based on excess demand. For example, from
iteration r to r+1, the updated price for a resource k at
period t is defined by Pr+1kt = Prkt + S (Drkt – Ck)/Ck. If the
step parameter S is constant between iterations, we have a
non-adaptive tatonnement. In contrast, adaptive
tatonnement means that larger price adjustment is
permitted in early iterations to allow quick move to
promising region, and as the step size diminishes, the
auctioneer could fine-tune the prices to find the
equilibrium. More involved discussion on the price
adjustment can be seen in [Fisher 1985, Joyce 1984].
From the economic standpoint, the price adjustment
process will proceed until the general equilibrium is
reached. However, this may not be possible from the
resource allocation point of view. Based on the stopping
rules defined in [Rockafellar 1993], we propose the
following stopping criteria:
1. Equilibrium solution: All the following conditions
must be satisfied:
• The minimum number of iterations has been
performed.
• X number of feasible solutions (i.e. conflict-free
allocations where supplies meet demands for all
resources in all time periods) have been found.
Notice that in these solutions, supplies may exceed
demands.
• The change in the performance function or price
vector does not exceed some prescribed thresholds
in the last Y (predefined constant) number of
iterations subsequent to finding a feasible solution.
This condition essentially allows the auction
process to continue after the feasible solution has
been found, with the hope to improve the
performance function further, but capped at a limit
when the improvement becomes trivially small.
2. Best solution among feasible solutions: If an
equilibrium solution cannot be found after the
maximum number of iterations, stop and return the
best feasible solution.
3. Manually adjusted feasible solution: If no feasible
solution has been found, repair the solution from the
last iteration by manually resolving resource
conflicts.
4.2. Price Adjustment Strategy
5. Application to Vessel Loading/Unloading
Within each iteration, the auctioneer collects bids from
all agents and updates prices in order to resolve resource
conflicts. A proper design of the price adjustment strategy
is essential for fast convergence, since the tatonnement
process is known to converge slowly especially in a
market with large number of resources that violates
competitive assumptions [Cheng & Wellman (1998)].
In this section, we discuss how we apply our approach
to solve the resource coordination problem for vessel
loading and unloading described in Section 1. Recall that
each agent represents a QC with an endowed job list, and
it wants to complete the jobs on the list with minimal cost,
which is defined as the sum of makespan and total
tardiness penalty. Essentially, this entails solving a job
scheduling problem where each job comprises a sequence
of 3 tasks executed contiguously: for a load job, the tasks
require the use of 1 YC, 1 PM and the designated QC; and
for a discharge job, the sequence is reversed.
It is assumed that each agent is assigned a fixed
number of PM and YC initially (denoted N0 and M0
respectively). Unassigned PM and YC are managed by an
auctioneer, and agents can acquire additional PM and YC
from the auctioneer through bidding.
5.1. Bid Generation Strategy
To generate a bid, each QC agent solves a scheduling
problem that, given the current unit prices of PM and YC,
seeks the cost-optimal resource vector:
( N , M ) = {( N1 , M 1 ), ( N 2 , M 2 ),...( N T , M T )} ,
where Nt and Mt respectively denote the number of PM
and YC required for period t.
The bid generation strategy is a relax-and-repair
approach (as presented in Section 4):
Step 1. Relax the multi-period problem to a single
period problem. Search for the common resource level
(N*, M*) that minimizes total cost (i.e. among different
resource combinations ranging from the baseload (N0, M0)
to the upper bound (Nmax, Mmax)1; if we set (N*, M*) as the
resource capacity across all periods, we will obtain a
schedule with minimal total cost). This search procedure
is simply hill-climbing in the landscape bordered by (N0,
M0) to (Nmax, Mmax). Note that a by-product of this hillclimbing search is a makespan matrix that contains the
makespan value for each (N, M) resource combination,
regardless of resource prices. Each entry in the matrix
need only to be computed once, and looked up
subsequently when prices change between iterations.
Step 2. Improve the quality of the solution by local
search – by changing the resource level in each period.
As noted earlier, this bid generation process does not
optimally solve the bidder’s problem. In fact, for the
problem instances we studied in this section, our bid
generation heuristics on average generates bids that are
worse than the optimal bids (in the sense of the objective
function values) by about 14%. However, while the
heuristics on average takes less than 2 seconds to finish,
solving for the optimal bids needs nearly one hour. This
huge difference in the execution time is the primary
motivation for choosing this bid generation heuristics
over the optimal bid generation procedure.
5.2. Price Adjustment Strategies
In this paper, we propose to adopt Fisher’s subgradient
search method [Fisher 1985] for our problem, which has
proven effective in practice (Kutanoglu and Wu, 1999).
Given the price in iteration r as prkt, price adjustment is
to calculate the new price regarding to the resource
demand and resource capacity.
1
One such bound can be obtained by assuming infinite resources, which
can be computed via a greedy algorithm.
pktr Ckt
1
∑∑
r
k
t
s = α
⋅
K
T
Ckt
∑ ∑ ( D − C ) 2 T ∑∑
k
t
kt
kt
k =1 t =1
r +1
r
r
pkt = max{0, pkt + s ( Dkt − Ckt )},
where α is constant over iterations and is in [0 ,2].
Compared to the original formula of Fisher (1985), we
removed difference between upper bound and lower
bound in a numerator term. Furthermore, we multiplied
with the average resource price term, which has been
shown to produce better convergence. The reason why it
would accelerate convergence is intuitive: when the
average price is high, the price step will be higher, thus
allows the auctioneer to balance excess demand faster,
and when the price is low, smaller step will let auctioneer
to adjust price in a finer manner.
5.3. Experiments
5.3.1. Experiment Setup
In this section, we evaluate the performance of our
proposed combinatorial auction approach.
All
experiments are performed on a Pentium-4 1.5GHz
processor with 1 GB RAM, and implemented in Matlab.
Recall that each agent can bid for the rights to use
certain resource in time periods it desires. The length of
each time period is set to one hour in our experiment. To
model the scheduling of jobs more precisely, we further
divide each time period into 12 time units, each with
length of 5 minutes. In our experiment, we assume that
the processing times of QC and YC are 1 and 2 time-units
respectively for all agents. The processing time for PM
follows a uniform distribution where both upper and
lower bounds are uniform random variables within [7, 15]
and [15, 23] respectively. These numbers are based on
real operations scenarios obtained from an industry
partner. In all instances we study, there are 4 QC agents,
each of them initially endowed with 1 PM and 1 YC. The
due time to complete all the jobs is 5 hours and the
tardiness penalty cost is 300 per hour. The initial unit
price for PM and YC are set as 30 and 50 per hour
respectively. The number of resource units in the common
pool is identical across all time periods. The price
adjustment parameter, α, is set to be 1.5. For the stopping
criteria, we set X to 6, Y to 3, and δ to 10. These values
are proved effective through many experiments.
5.3.2. Decentralized v.s. Centralized Approaches
To determine the loss in optimality due to
decentralization, we compare our market-based approach
against the state-of-the-art integer programming (IP)
solver (we use CPLEX in our experiments). For each
instance we solve, a corresponding IP model is also
created and solved by CPLEX. The difference in
performance is not what we focus on here, since solving
the problem with an IP model ignores the decentralization
consideration, instead, what we are interested in from
these comparisons, is to obtain an upper bound on the
performance loss due to the decentralized formulation.
The IP formulation of our problem is an extension of
the classical scheduling formation proposed by Pritsker et
al. (1969). In the interest of space, the model is not
presented here. Interested readers can refer to Pritsker et
al. (1969) for detail.
Although our approach is quite scalable to large
examples, the sizes of IP models in those cases are quite
intractable. Therefore, in order to make meaningful
comparisons, we have to limit the size of our test
instances. The test instances used here all have 40
discharge jobs and 40 load jobs, equally divided among
four QC agents (in other words, each agent is given a list
of 10 discharge jobs and 10 load jobs). The number of
available PM and YC is 24 and 16 respectively. We
compare the performance of our solution approach
(loaded with different configurations) against the one
obtained by CPLEX after running for one hour (we have
to limit the execution time to one hour otherwise CPLEX
would run for days before termination).
To estimate the performance of these two solution
methodologies realistically, we have carefully crafted 11
test cases that reflect typical container terminal operations.
In these 11 test cases, the solutions obtained by CPLEX
on average perform 22% better than the ones obtained by
the market-based approach (in terms of the schedule
quality, which is defined as the sum of tardiness cost and
makespan cost). However, the market-based approach
takes only roughly 9 minutes to finish. Please refer to
Figure 1 for the performance comparison in all instances.
For larger instances we study, e.g., the cases with 200
discharge jobs and 200 load jobs, solving the IP model is
intractable. Even the linear relaxation of the problem
cannot be solved within 48 hours. However, the marketbased approach we used can solve each of these instances
in 80 minutes.
1115
11
Instances
1415
1180
10
9
1130
8
1120
1525
1415
1430
1195
7
1435
1145
6
1430
1110
5
1015
4
1470
3
1280
1220
2
1215
1075
1
0
500
1000
1570
1700
1440
1500
2000
Tardiness cost + Makespan cost
Market-based Approach
IP
Figure 1: The performance breakdown.
Note that we do not intend to claim that the marketbased approach we used is superior to the centralized
approach in large problem instances, since there are many
approximate centralized approaches in the scheduling
literatures that can solve very large-scale scheduling
problems efficiently. What we really want to emphasize is
the capability of our approach in handling decentralized
decision making paradigm in a large-scale problem,
which is overlooked by many past research. This does not
mean advances in large-scale scheduling are irrelevant to
the further development of our solution approach; on the
contrary, any such advance will be extremely useful in
solving single-agent problem, and help deliver better
solution quality and efficiency.
6. Conclusion
Future works arising from this research are wideranging. They include analytical works such as how
different bidding behaviors of agents affect the rate of
convergence of the tatonnement process and applied
research of utilizing our approach to derive efficient
solutions to other decentralized, self-interested planning
and scheduling problems.
References
[1] A. Attanasio, G. Ghiani, L. Grandinetti and F. Guerriero.
Auction algorithms for decentralized parallel machine
scheduling. Parallel Computing 32: 701-709, 2006.
[2] J. Q. Cheng and M. P. Wellmam. The WALAS algorithm: A
convergent distributed implementation or general
equilibrium outcomes. Computational Econ. 12: 1-24, 1998.
[3] P. Dewan and S. Joshi. Auction-based distributed scheduling
in a dynamic job shop environment. International Journal
of Production Research 40(5):1173-1191, 2002.
[4] M. L. Fisher. An applications oriented guide to Lagrangian
relaxation. Interfaces 15(2): 10-21, 1985.
[5] P. Joyce. The Walrasian tatonnement mechanism and
information. RAND Journal of Economics 15(3): 416-425,
1984.
[6] S. H. Jung and K. H. Kim. Load scheduling for multiple quay
cranes in port container terminals. Journal of Intelligent
Manufacturing 17 (4): 479-492, 2006.
[7] E. Kutanoglu and S. D. Wu. On combinatorial auction and
Lagrangean relaxation for distributed resource scheduling.
IIE Transactions 31(9): 813-826, 1999.
[8] A. Pritsker, L. Watters, and Ph. Wolfe. Multiproject
scheduling with limited resources: a zero-one programming
approach. Management Science, 16(1): 93-108, 1969.
[9] R. T. Rockafellar. Lagrange multipliers and optimality.
SIAM Review 35(2):183-238, 1993.
[10] P. Thomas, D. Teneketzis, and J. K. Mackie-Mason.
Market-based approach to optimal resource allocation in
integrated-services
connection-oriented
networks.
Operations Research 50(4): 603-616, 2002.
[11] L. Walras. Elements of pure economics. Allen and Unwin.
English translation by William Jaffe 1954 (originally
published in 1874).
[12] M. P. Wellman, W. E. Walsh, P. R. Wurman and J. K.
MacKie-Mason. Auction protocols for decentralized
scheduling. Games and Econ Behavior 35: 271-303, 2001.