0% found this document useful (0 votes)
19 views359 pages

Large Scale

Uploaded by

threebody886
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
19 views359 pages

Large Scale

Uploaded by

threebody886
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 359

Lecture Notes in Computer Science 5034

Commenced Publication in 1973


Founding and Former Series Editors:
Gerhard Goos, Juris Hartmanis, and Jan van Leeuwen

Editorial Board
David Hutchison
Lancaster University, UK
Takeo Kanade
Carnegie Mellon University, Pittsburgh, PA, USA
Josef Kittler
University of Surrey, Guildford, UK
Jon M. Kleinberg
Cornell University, Ithaca, NY, USA
Alfred Kobsa
University of California, Irvine, CA, USA
Friedemann Mattern
ETH Zurich, Switzerland
John C. Mitchell
Stanford University, CA, USA
Moni Naor
Weizmann Institute of Science, Rehovot, Israel
Oscar Nierstrasz
University of Bern, Switzerland
C. Pandu Rangan
Indian Institute of Technology, Madras, India
Bernhard Steffen
University of Dortmund, Germany
Madhu Sudan
Massachusetts Institute of Technology, MA, USA
Demetri Terzopoulos
University of California, Los Angeles, CA, USA
Doug Tygar
University of California, Berkeley, CA, USA
Gerhard Weikum
Max-Planck Institute of Computer Science, Saarbruecken, Germany
Rudolf Fleischer Jinhui Xu (Eds.)

Algorithmic Aspects
in Information
and Management

4th International Conference, AAIM 2008


Shanghai, China, June 23-25, 2008
Proceedings

13
Volume Editors

Rudolf Fleischer
Fudan University
Department of Computer Science and Engineering
Shanghai 200433, China
E-mail: [email protected]

Jinhui Xu
State University of New York at Buffalo
Department of Computer Science and Engineering
Buffalo, NY 14260, USA
E-mail: [email protected]

Library of Congress Control Number: 2008927528

CR Subject Classification (1998): F.2.1-2, E.1, G.1-3, J.1

LNCS Sublibrary: SL 3 – Information Systems and Application, incl. Internet/Web


and HCI

ISSN 0302-9743
ISBN-10 3-540-68865-X Springer Berlin Heidelberg New York
ISBN-13 978-3-540-68865-5 Springer Berlin Heidelberg New York

This work is subject to copyright. All rights are reserved, whether the whole or part of the material is
concerned, specifically the rights of translation, reprinting, re-use of illustrations, recitation, broadcasting,
reproduction on microfilms or in any other way, and storage in data banks. Duplication of this publication
or parts thereof is permitted only under the provisions of the German Copyright Law of September 9, 1965,
in its current version, and permission for use must always be obtained from Springer. Violations are liable
to prosecution under the German Copyright Law.
Springer is a part of Springer Science+Business Media
springer.com
© Springer-Verlag Berlin Heidelberg 2008
Printed in Germany
Typesetting: Camera-ready by author, data conversion by Scientific Publishing Services, Chennai, India
Printed on acid-free paper SPIN: 12278879 06/3180 543210
Preface

This volume contains the proceedings of the 4th International Conference on


Algorithmic Aspects in Information and Management (AAIM 2008), held June
23–25, 2008, at Fudan University, Shanghai, China. This conference is intended
for original algorithmic research on immediate applications and/or fundamen-
tal problems pertinent to information management and management science,
broadly construed. The first three conferences were held in Xi’an (2005), Hong
Kong (2006), and Portland (2007).
Submissions to this year’s conference were conducted electronically. A total of
53 papers were submitted from Algeria, Australia, Bangladesh, Canada, China,
France, Germany, Iran, Ireland, Italy, Japan, Latvia, Mexico, Netherlands, UK,
Ukraine, and the USA. Each paper was evaluated by three Program Committee
members from an international Program Committee (listed on the following
pages), assisted in some cases by external reviews and comments. Eventually,
31 papers were accepted, but one paper was later withdrawn. In addition to
these selected papers, the conference also included two invited keynote talks
by Ding-Zhu Du (University of Texas at Dallas and Xi’an Jiaotong University,
China) and Vijay V. Vazirani (Georgia Institute of Technology), and a special
session on Fixed Parameter Tractable (FPT) algorithms by Mike Fellows, Rolf
Niedermeier, Jianer Chen, and Michael Langston.
We would like to thank all the people who made this meeting possible: the
authors for submitting their papers to AAIM 2008, the Program Committee
members and external reviewers (listed on the following pages) for their excellent
work, the speakers of the FPT special session, and the two invited keynote
speakers. Finally, we would like to thank Fudan University, the Software School
of Fudan University, and the National Science Foundation of China (NSFC) for
their support, and the local organizers and our colleagues for their assistance.

June 2008 Rudolf Fleischer


Jinhui Xu
Organization

AAIM 2008 was organized by the Software School of Fudan University, Shanghai,
China.

Program Committee
Tetsuo Asano, JAIST, Japan
Jianer Chen, Texas A&M University, USA
Wei Chen, Microsoft Research Asia, Beijing, China
Francis Chin, The University of Hong Kong, Hong Kong
Ovidiu Daescu, University of Texas at Dallas, USA
Xiaotie Deng, City University of Hong Kong, Hong Kong
Leah Epstein, University of Haifa, Israel
Rolf Fagerberg, University of Southern Denmark, Denmark
Rudolf Fleischer, Fudan University, Shanghai, China (Co-chair)
Xin He, University at Buffalo, The State University of New York, USA
Tsan-Sheng Hsu, Academia Sinica Taipei, Taiwan
Ming-Yang Kao, Northwestern University, USA
Naoki Katoh, Kyoto University, Japan
Guohui Lin, University of Alberta, Canada
Alberto Marchetti-Spaccamela, Sapienza University of Rome, Italy
Ulrich Meyer, Universität Frankfurt, Germany
Matthias Müller-Hannemann, MLU Halle, Germany
M. Muthukrishnan, Google, USA
Giri Narasimhan, Florida International University, USA
Shang-Hua Teng, University of Boston, USA
Xiaodong Wu, University of Iowa, USA
Chen Xi, IAS, Princeton, USA
Jinhui Xu, State University of New York at Buffalo, USA (Co-chair)
Christos Zaroliagis, CTI and University of Patras, Greece
Norbert Zeh, Dalhousie University, Canada
Huaming Zhang, University of Alabama in Huntsville, USA
Yunhong Zhou, HP Labs, USA

External Reviewers
Vincent Conitzer Naoyuki Kamiyama
Refael Hassin Christos H. Makris
Asaf Levin Peter Noel
VIII Organization

Rob Stee Lei Xu


Zhiyi Tan Li Zhang
Fang Wu Yongding Zhu

AAIM Steering Committee


Tetsuo Asano, JAIST, Japan
Franz Aurenhammer, TU Graz, Austria
Bernard Chazelle, Princeton University, USA
Danny Z. Chen, University of Notre Dame, USA
Siu-Wing Cheng, HKUST, Hong Kong
Otfried Cheong, KAIST, Korea
Rudolf Fleischer, Fudan University, China
Wen-Lian Hsu, Academia Sinica Taipei, Taiwan
Tao Jiang, University of California at Riverside, USA
Naoki Katoh, Kyoto University, Japan
Ming-Yang Kao, Northwestern University, USA
Xiang-Yang Li, Illinois Institute of Technology, Chicago, USA
C.K. Poon, City University of Hong Kong, Hong Kong
Rajeev Raman, Leicester University, UK
Peter Widmayer, ETH Zürich, Switzerland
Yinfeng Xu, Xi’an Jiaotong University, China
Binhai Zhu, Montana State University, USA
Table of Contents

Double Partition: (6 + ε)-Approximation for Minimum Weight


Dominating Set in Unit Disk Graphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
Ding-Zhu Du
Nash Bargaining Via Flexible Budget Markets . . . . . . . . . . . . . . . . . . . . . . . 2
Vijay V. Vazirani
On the Minimum Hitting Set of Bundles Problem . . . . . . . . . . . . . . . . . . . . 3
Eric Angel, Evripidis Bampis, and Laurent Gourvès
Speed Scaling with a Solar Cell . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
Nikhil Bansal, Ho-Leung Chan, and Kirk Pruhs
Engineering Label-Constrained Shortest-Path Algorithms . . . . . . . . . . . . . 27
Chris Barrett, Keith Bisset, Martin Holzer, Goran Konjevod,
Madhav Marathe, and Dorothea Wagner
New Upper Bounds on Continuous Tree Edge-Partition Problem . . . . . . . 38
Robert Benkoczi, Binay Bhattacharya, and Qiaosheng Shi
A Meeting Scheduling Problem Respecting Time and Space . . . . . . . . . . . 50
Florian Berger, Rolf Klein, Doron Nussbaum,
Jörg-Rüdiger Sack, and Jiehua Yi
Fixed-Parameter Algorithms for Kemeny Scores . . . . . . . . . . . . . . . . . . . . . 60
Nadja Betzler, Michael R. Fellows, Jiong Guo,
Rolf Niedermeier, and Frances A. Rosamond
The Distributed Wireless Gathering Problem . . . . . . . . . . . . . . . . . . . . . . . . 72
Vincenzo Bonifaci, Peter Korteweg,
Alberto Marchetti-Spaccamela, and Leen Stougie
Approximating Maximum Edge 2-Coloring in Simple Graphs Via Local
Improvement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
Zhi-Zhong Chen and Ruka Tanahashi
An Improved Randomized Approximation Algorithm for Maximum
Triangle Packing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
Zhi-Zhong Chen, Ruka Tanahashi, and Lusheng Wang
Line Facility Location in Weighted Regions . . . . . . . . . . . . . . . . . . . . . . . . . . 109
Yam Ki Cheung and Ovidiu Daescu
Algorithms for Temperature-Aware Task Scheduling in Microprocessor
Systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120
Marek Chrobak, Christoph Dürr, Mathilde Hurand, and Julien Robert
X Table of Contents

Engineering Comparators for Graph Clusterings . . . . . . . . . . . . . . . . . . . . . 131


Daniel Delling, Marco Gaertler, Robert Görke, and Dorothea Wagner

On the Fast Searching Problem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143


Danny Dyer, Boting Yang, and Öznur Yaşar

Confidently Cutting a Cake into Approximately Fair Pieces . . . . . . . . . . . 155


Jeff Edmonds, Kirk Pruhs, and Jaisingh Solanki

Copeland Voting Fully Resists Constructive Control . . . . . . . . . . . . . . . . . . 165


Piotr Faliszewski, Edith Hemaspaandra,
Lane A. Hemaspaandra, and Jörg Rothe

The Complexity of Power-Index Comparison . . . . . . . . . . . . . . . . . . . . . . . . 177


Piotr Faliszewski and Lane A. Hemaspaandra

Facility Location Problems: A Parameterized View . . . . . . . . . . . . . . . . . . . 188


Michael Fellows and Henning Fernau

Shortest Path Queries in Polygonal Domains . . . . . . . . . . . . . . . . . . . . . . . . 200


Hua Guo, Anil Maheshwari, and Jörg-Rüdiger Sack

A Fast 2-Approximation Algorithm for the Minimum Manhattan


Network Problem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 212
Zeyu Guo, He Sun, and Hong Zhu

Minimum Cost Homomorphism Dichotomy for Oriented Cycles . . . . . . . . 224


Gregory Gutin, Arash Rafiey, and Anders Yeo

Minimum Leaf Out-Branching Problems . . . . . . . . . . . . . . . . . . . . . . . . . . . . 235


Gregory Gutin, Igor Razgon, and Eun Jung Kim

Graphs and Path Equilibria . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247


Stéphane Le Roux

No l Grid-Points in Spaces of Small Dimension . . . . . . . . . . . . . . . . . . . . . . 259


Hanno Lefmann

The Secret Santa Problem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271


Leo Liberti and Franco Raimondi

Finding Optimal Refueling Policies in Transportation Networks . . . . . . . . 280


Shieu-Hong Lin

Scale Free Interval Graphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 292


Naoto Miyoshi, Takeya Shigezumi, Ryuhei Uehara, and
Osamu Watanabe

On Representation of Planar Graphs by Segments . . . . . . . . . . . . . . . . . . . . 304


Sadish Sadasivam and Huaming Zhang
Table of Contents XI

An Optimal On-Line Algorithm for Preemptive Scheduling on Two


Uniform Machines in the p Norm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 316
Tianping Shuai, Donglei Du, and Xiaoyue Jiang

An Optimal Strategy for Online Non-uniform Length Order


Scheduling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 328
Feifeng Zheng, E. Zhang, Yinfeng Xu, and Xiaoping Wu

Large-Scale Parallel Collaborative Filtering for the Netflix Prize . . . . . . . 337


Yunhong Zhou, Dennis Wilkinson, Robert Schreiber, and Rong Pan

Author Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 349


Double Partition: (6 + ε)-Approximation for
Minimum Weight Dominating Set in Unit
Disk Graphs

Ding-Zhu Du

Science College, Xi’an Jiaotong University, Xi’an, China


and
Department of Computer Science and Engineering,
University of Texas at Dallas, Richardson, TX 75083
[email protected]

Abstract. We introduce a new technique on partition, called double


partition. With this new type of partition, we obtain a polynomial time
(6 + ε)-approximation (ε > 0) for the minimum weight dominating set
problem in unit disk graphs, which improves a recent result of a 72-
approximation given by Ambühl et al. for solving a long-standing open
problem. As a corollary, we obtain a (9.875 + ε)-approximation for the
minimum weight connected dominating set problem in unit disk graphs.

R. Fleischer and J. Xu (Eds.): AAIM 2008, LNCS 5034, p. 1, 2008.



c Springer-Verlag Berlin Heidelberg 2008
Nash Bargaining Via Flexible Budget Markets

Vijay V. Vazirani

College of Computing

Abstract. In his seminal 1950 paper, John Nash defined the bargaining
problem; the ensuing theory of bargaining lies today at the heart of game
theory. In this work, we initiate an algorithmic study of Nash bargaining
problems.
We consider a class of Nash bargaining problems whose solution can
be stated as a convex program. For these problems, we show that there
corresponds a market whose equilibrium allocations yield the solution to
the convex program and hence the bargaining problem. For several of
these markets, we give combinatorial, polynomial time algorithms, using
the primal-dual paradigm.
Unlike the traditional Fisher market model, in which buyers spend a
fixed amount of money, in these markets, each buyer declares a lower
bound on the amount of utility she wishes to derive. The amount of
money she actually spends is a specific function of this bound and the
announced prices of goods.
Over the years, a fascinating theory has started forming around a
convex program given by Eisenberg and Gale in 1959. Besides market
equilibria, this theory touches on such disparate topics as TCP conges-
tion control and efficient solvability of nonlinear programs by combina-
torial means. Our work shows that the Nash bargaining problem fits
harmoniously in this collage of ideas.

R. Fleischer and J. Xu (Eds.): AAIM 2008, LNCS 5034, p. 2, 2008.



c Springer-Verlag Berlin Heidelberg 2008
On the Minimum Hitting Set of Bundles
Problem

Eric Angel1 , Evripidis Bampis1 , and Laurent Gourvès2


1
IBISC CNRS, Université d’Evry, France
{angel,bampis}@ibisc.fr
2
CNRS LAMSADE, Université de Paris-Dauphine, France
[email protected]

Abstract. We consider a natural generalization of the classical min-


imum hitting set problem, the minimum hitting set of bundles
problem (mhsb) which is defined as follows. We are given a set E =
{e1 , e2 , . . . , en } of n elements. Each element ei (i = 1, . . . , n) has a non
negative cost ci . A bundle b is a subset of E . We are also given a collec-
tion S = {S1 , S2 , . . . , Sm } of m sets of bundles. More precisely, each set
g(j)
Sj (j = 1, . . . , m) is composed of g(j) distinct bundles b1j , b2j , . . . , bj . A

solution to mhsb is a subset E ⊆ E such that for every Sj ∈ S at least
one bundle is covered, i.e. blj ⊆ E  for some l∈ {1, 2, · · · , g(j)}. The total
cost of the solution, denoted by C(E  ), is {i|ei ∈E  } ci . The goal is to
find a solution with minimum total cost.
We give a deterministic N (1 − (1 − N1 )M )-approximation algorithm,
where N is the maximum number of bundles per set and M is the maxi-
mum number of sets an element can appear in. This is roughly speaking
the best approximation ratio that we can obtain since, by reducing mhsb
to the vertex cover problem, it implies that mhsb cannot be approxi-
mated within 1.36 when N = 2 and N − 1 −  when N ≥ 3. It has to
be noticed that the application of our algorithm in the case of the min
k−sat problem matches the best known approximation ratio.

Keywords: minimum hitting set, min k−sat, approximation algo-


rithm.

1 Introduction
The minimum hitting set of bundles problem (mhsb) is defined as follows.
We are given a set E = {e1 , e2 , . . . , en } of n elements. Each element ei (i =
1, . . . , n) has a non negative cost ci . A bundle b is a subset of E. We are also
given a collection S = {S1 , S2 , . . . , Sm } of m sets of bundles. More precisely,
g(j)
each set Sj (j = 1, . . . , m) is composed of g(j) distinct bundles b1j , b2j , . . . , bj .

A solution to mhsb is a subset E ⊆ E such that for every Sj ∈ S at least one
bundle is covered, i.e. blj ⊆ E  for
 some l ∈ {1, 2, . . . , g(j)}. The total cost of the
solution, denoted by C(E  ), is {i|ei ∈E  } ci . Notice that, the cost of an element
appearing in several bundles is counted once. The objective is to find a solution
with minimum total cost.

R. Fleischer and J. Xu (Eds.): AAIM 2008, LNCS 5034, pp. 3–14, 2008.

c Springer-Verlag Berlin Heidelberg 2008
4 E. Angel, E. Bampis, and L. Gourvès

The special case of the mhsb problem, in which a bundle is only an element of
E is the classical minimum hitting set problem1 . It is known to be equivalent
to the classical minimum set cover problem: positive and negative approxima-
bility results for the minimum hitting set can be directly derived from the
classical minimum set cover problem [1]. 2

1.1 Applications of the mhsb Problem


Our motivation to study the mhsb problem comes not only from its own the-
oretical interest, but also from the fact that it models many other combina-
torial optimization problems of the literature. We illustrate this fact with the
multiple-query optimization problem (mqo) in database systems [10] and
the min k-sat problem [3].
In an instance of the mqo problem, we are given a set Q = {q1 , q2 , . . . , qk } of k
database queries and a set T = {t1 , t2 , . . . , tr } of r tasks. A plan p is a subset of T
n(i)
and a query qi can be solved by n(i) distinct plans Pi = {p1i , p2i , . . . , pi }. Each
plan is a set of elementary tasks, and each task tj has a cost (processing time)
cj ∈ Q+ . Solving the problem consists in selecting one plan per query, and the
cost of a solution is the sum of the costs of the tasks involved in the selected plans
(the cost of a task which belongs to at least one selected plan is counted once).
Clearly, a query of the mqo problem corresponds to a subset of S in the mhsb
problem, a plan to a bundle, and a task to an element of E. In this context, N
is the maximum number of plans per query and M , is the maximum number of
queries a task can appear in.
mqo was shown to be NP-hard in [10], and different solution methods have
been proposed, including heuristics, branch and bound algorithms [10] and dy-
namic programming [9]. Up to now, no approximation algorithms with guaran-
teed performance were known for mqo.
As another application, we consider the min k−sat problem. The input con-
sists of a set X = {x1 , . . . , xt } of t variables and a collection C = {C1 , . . . , Cz }
of z disjunctive clauses of at most k literals (a constant ≥ 2). A literal is a
variable or a negated variable in X . A solution is a truth assignment for X with
cost equal to the number of satisfied clauses. The objective is to find a truth
assignment minimizing the number of satisfied clauses. (See Section 4 for the
reduction of min k−sat to the mhsb problem.) Kohli et al [7] showed that the
problem is NP-hard and gave a k-approximation algorithm. Marathe and Ravi
[8] improved this ratio to 2, while Bertsimas et al [3] showed that the problem
is approximable within 2(1 − 21k ). Recently, Avidor and Zwick [2] improved the
result for k = 2 (ratio 1.1037) and k = 3 (ratio 1.2136).
1
Given a collection S of subsets of a finite set E , and nonnegative costs for every
element of E , a minimal hitting set for S is a subset E  ⊆ E such that E  contains at
least one element from each subset in S and the total cost of E  is minimal.
2
Recall that in the minimum set cover problem, given a universe set U, and non-
negative costs for every element of U, a collection T of subsets of U, we look for a
subcollection T  ⊆ T , such that the union of the sets in T  is equal to U, and T  is
of minimal cost.
On the Minimum Hitting Set of Bundles Problem 5

1.2 Contribution

We give a deterministic N (1 − (1 − N1 )M )-approximation algorithm for the mhsb


problem, where N is the maximum number of bundles per set and M is the max-
imum number of sets an element can appear in. Our algorithm follows a rather
classical scheme in the area of approximation algorithms: LP formulation, ran-
domized rounding, derandomization. However, the analysis of the performance
guarantee is quite involved. The approximation ratio is, roughly speaking, the
best that we can expect for the mhsb problem since, by reducing mhsb to the
vertex cover problem, it implies that mhsb cannot be approximated within 1.36
when N = 2 and N − 1 −  when N ≥ 3.
Our algorithm matches the best approximation ratio for the min k−sat prob-
lem (for general k) obtained by the algorithm of Bertsimas et al. [3] and it can
also be applied in the case of the mqo problem.

1.3 Organization of the Paper

We consider the inapproximability of mhsb in Section 2 while Section 3 is devoted


to its approximability. We first consider greedy strategies (proofs are omitted)
yielding to an M -approximation algorithm, followed by LP-based approximation
algorithms. We first give a simple N -approximation algorithm and a random-
ized N (1−(1−1/N )M )-expected approximation algorithm. In Subsection 3.3, we
apply a derandomization technique to derive a deterministic N (1 − (1 − 1/N )M )-
approximation algorithm. An analysis of the integrality gap conducted in Subsec-
tion 3.4 shows that the approximation result is the best we can expect. Section
4 emphasizes the link between mhsb and mink−sat. We finally conclude in
Section 5.

2 Inapproximability
We exploit the fact that the minimum hitting set problem can be formulated
as a min vertex cover in hypergraphs. In the latter problem, we are given a
hypergraph H and the goal is to find the smallest subset of the vertex set with
non empty intersection with each hyperedge of H. Here, we are interested in the
particular case of this problem where each hyperedge is composed of exactly k
vertices (meaning that for the hitting set instance, each subset S ∈ S is such
that |S| = k). We denote this case by min-hyper k−vertex cover. When
k = 2, we get the classical min vertex cover problem on graphs. min-hyper
k−vertex cover admits a k-approximation algorithm. This result is essentially
tight when k ≥ 3 since Dinur et al [4] recently proved that for every  > 0,
min-hyper k−vertex cover cannot be approximated within ratio k − 1 − .
When
√ k = 2, the min vertex cover problem cannot be approximated within
ln |V |
10 5 − 21 ≈ 1.36 [5] while there is a 2 − 2 ln ln |V | (1 − o(1))-approximation
algorithm [6].
6 E. Angel, E. Bampis, and L. Gourvès

From the above discussion we can deduce the following result.


Theorem 1. If there is a ρ-approximation algorithm for the mhsb problem, then
there is an approximation algorithm with the same ratio ρ for the min-hyper
k−vertex cover problem.

As a corollary of Theorem 1, mhsb cannot be approximated within 10 5 − 21 − 
when N = 2 and N − 1 −  when N ≥ 3.

3 Approximation Algorithms
3.1 Greedy Algorithms
We first consider the greedy algorithm (denoted by greedy 1) which selects
argmin1≤l≤g(j) {C(blj )} for every j in {1, . . . , m}. Actually, greedy 1 takes the
cheapest bundle of a set without considering what is chosen for the others.
Proposition 1. greedy 1 is an M -approximation algorithm for mhsb and the
result is tight.
We turn to a more evolved greedy algorithm which, unlike greedy 1, takes into
account the bundles selected for other sets. The algorithm, denoted by greedy
2, is based on the one that was originally used for set cover (see [11]). Given
E  ⊆ E, let B(E  ) = |{Sj ∈ S | ∃blj ⊆ E  }|. Actually, B(E  ) is the number of sets
in S hit by E  . Let Ef f (blj ) be the effective cost of a bundle defined as

C(blj \E  )  
 ∪bl )−B(E  ) if B(E ∪ bj ) > B(E )
l
l
Ef f (bj ) = B(E j
+∞ otherwise
The algorithm uses a set E  which is empty at the beginning. While B(E  ) < m,
greedy 2 computes the effective cost of each bundle and add to E  the one
which minimizes this function. Unfortunately, we can show that greedy 2 does
not improve the performance guarantee of greedy 1.
Proposition 2. greedy 2 is a ρ-approximation algorithm for mhsb such that
ρ ≥ M.

3.2 LP-Based Algorithms


Solving mhsb may also consist in choosing a bundle for each set of S. This helps
to formulate the problem as an integer linear program (ILP).

minimize 1≤i≤n xi ci (1)
g(j)
subject to xj,l ≥ 1 j = 1...m (2)
 l=1
{l|ei ∈bl } xj,l ≤ xi
j
∀(i, j) s.t. ei appears in a bundle (3)
of Sj
xj,l ∈ {0, 1} j = 1 . . . m and l = 1 . . . g(j) (4)
xi ∈ {0, 1} i = 1...n (5)
On the Minimum Hitting Set of Bundles Problem 7

Each bundle blj is represented by a variable xj,l (xj,l = 1 means blj is a subset
of the solution, xj,l = 0 otherwise). Each element ei is represented by a variable
xi (xi = 1 means ei belongs to the solution, otherwise xi = 0). Among all
bundles of a subset Sj , at least one is selected because of the first constraint
g(j)
l=1 xj,l ≥ 1. The second constraint ensures that all elements
 of a selected
bundle appear in the solution. Since the objective function 1≤j≤r xj cj has to
be minimized, an element which does not belong to any selected bundle will not
belong to the solution. Let LP be the linear relaxation of the ILP, i.e. replace
(4) and (5) by

xj,l ≥ 0 j = 1 . . . m and l = 1 . . . g(j) (6)


xi ≥ 0 i = 1...n (7)

In the sequel, OP T and OP Tf are respectively the cost of a solution of ILP


and LP (f stands for fractional). We will also use the following fact.
Remark 1. If {x} is an optimal solution of the LP defined by (1),(2),(3),(6),(7),
g(j)
we can easily prove that l=1 xj,l = 1 for j = 1, 2, . . . , m and that xj,l ≤ 1 for
every j and l.
Let us now consider the first simple algorithm that we call d-rounding: Solve
h
LP and for j = 1 to m, select bj j where hj = argmax1≤l≤g(j) {xj,l } (ties are
broken arbitrarily).

Theorem 2. d-rounding is N -approximate.

Proof. Let {x∗ } (resp. {x}), be an optimal assignment for ILP (resp. LP). One
has:  
xi ci ≤ x∗i ci
1≤i≤n 1≤i≤n

Let {x̃} be the solution returned by d-rounding (x̃i = 1 if ei belongs to the


solution and x̃i = 0 otherwise). For any fixed i, if x̃i = 1 then xi ≥ 1/N .
Indeed, we take the variable whose value is the greatest (at least 1/N since
N = maxj {g(j)}). Then, we have x̃i ≤ N xi and


n 
n 
n
x̃i ci ≤ N xi ci ≤ N x∗i ci 
i=1 i=1 i=1

Now, we consider a randomized algorithm (called r-rounding) which exploits a


natural idea for rounding an optimal fractional solution. It consists in interpret-
ing fractional values of 0-1 variables as probabilities. Formally, the algorithm is
as follows: Solve LP and for j = 1 to m, select randomly a bundle of Sj with a
probability distribution {xj,1 , . . . , xj,g(j) }.
We prove that r-rounding has a better approximation ratio than d-rounding
but, for the sake of readability, we first state two propositions and a lemma whose
proofs will be given later.
8 E. Angel, E. Bampis, and L. Gourvès

Proposition 3. Given two integers M ≥ 2, N ≥ 2 and a real x ∈ [0, 1], the


(1−x)M −1+Mx
function f (M, N, x) = M−N (1−(1−1/N )M ) is nonnegative, increasing and convex.

Proposition 4. Let N , M and P be three positive integers  such that P ≤ N .


P
Let r1 , r2 , . . . , rP be a set of non negative reals such that i=1 ri ≤ 1. The
following inequality holds

P 
P
f (M, N, ri ) ≤ f (M, N, ri )
i=1 i=1

Lemma 1. Given an instance of the mhsb problem where M = maxi |{Sj :


∃l s.t. ei ∈ blj }|, N = maxj {g(j)} and {x} is an optimal assignment for LP,
there exists a feasible assignment {x̃} for LP which satifies

n 
n
x̃i ci ≤ f (M, N, xi )ci (8)
i=1 i=1

We now state the main result about r-rounding.


 
Theorem 3. r-rounding is N 1 − (1 − N1 )M -approximate (in expectation).
Proof. Let ui be the probability of the event ”ei belongs to the solution returned
 that 1 − ui ≥  (1 − xi ) . Indeed, onehas 1 − ui =
M
by
 r-rounding”. Notice
{j|ei ∈bundle of Sj } {l |ei ∈blj } xj,l =
 
{j|ei ∈bundle of Sj }
(1 − {l|ei ∈bl } xj,l )
 j

≥ {j|ei ∈bundle of Sj } (1 − xi ) ≥ (1 − xi ) . The last but one inequality comes


M

from inequality (3), and the last inequality comes from the definition of M ,
which is the maximum number of sets an element can appear in. Since 1 − ui ≥
(1 − xi )M , one has ui ≤ 1 − (1 − xi )M . The expected cost of the solution is then
bounded as follows:
 n 
n
 M
E[C(E  )] = u i ci ≤ 1 − (1 − xi ) ci (9)
i=1 i=1
nn
Using Lemma 1, we know that i=1 xi ci ≤ i=1 x̃i ci since {x̃} is feasible
while {x} is optimal. Using Lemma 1 again we obtain

n 
n 
n
(1 − xi )M − 1 + M xi
xi ci ≤ f (M, N, xi )ci = ci
i=1 i=1 i=1
M − N (1 − (1 − 1/N )M )

This inequality becomes


 
n 
n
 
M − N (1 − (1 − 1/N )M ) xi ci ≤ (1 − xi )M − 1 + M xi ci
i=1 i=1
 
n 
n
 
N (1 − (1 − 1/N )M ) − M xi ci ≥ 1 − (1 − xi )M − M xi ci
i=1 i=1

n 
n
 
N (1 − (1 − 1/N )M ) xi ci ≥ 1 − (1 − xi )M ci
i=1 i=1
On the Minimum Hitting Set of Bundles Problem 9

n
Using this last inequality, inequality (9) and i=1 xi ci = OP Tf ≤ OP T we get
the expected result:

N (1 − (1 − 1/N )M )OP T ≥ E[C(E  )] 

Retrospectively, it was not possible to give a more direct proof of Theorem 3


using N (1 − (1 − 1/N )M )x ≥ 1 − (1 − x)M , because it does not hold when
x ∈ (0, N1 ).

Proof of Proposition 3
Proof. The function f (M, N, x) is increasing between 0 and 1 since f  (M, N, x) =
 −1  
M − N (1 − (1 − 1/N )M ) M − M (1 − x)M−1 ≥ 0. Indeed, we know that
M − N (1 − (1 − 1/N )M ) ≥ 0.

(1 − 1/N )M ≥ 1 − M/N
1 − (1 − 1/N )M ≤ M/N
 
N 1 − (1 − 1/N )M ≤ M (10)
 
0 ≤ M − N 1 − (1 − 1/N )M

Furthermore, M − M (1 − x)M−1 ≥ 0 because M ≥ 1 and 0 ≤ x ≤ 1. As a


consequence, f (M, N, x) ≥ 0 when 0 ≤ x ≤ 1 because f (M, N, 0) = 0 and
f (M, N, x) increases.
The function f (M, N, x) is convex when 0 ≤ x ≤ 1 since f  (M, N, x) =
 −1  
M − N (1 − (1 − 1/N )M ) M (M − 1)(1 − x)M−2 ≥ 0. 
Proof of Proposition 4
Proof. Let E be an experiment with N disjoint outcomes Ω = {O1 , O2 , . . . ,
 
ON }. Every outcome occurs with a probability ri . Then, N i=1 ri = 1. Let Oi be
the event ”Oi occurs a least once when E is conducted M times”. Its probability
Pr[Oi ] is 1 − (1 − ri )M . Given a nonnegative integer P ≤ N , we clearly have
P
i=1 ri ≤ 1. Furthermore, the probability of the event ”at least P
one event in
{O1 , . . . , OP } occurs when E is conducted M times” is 1 − (1 − i=1 ri )M . We
clearly have
P
  
P
1 − (1 − ri )M ≥ 1 − (1 − ri )M , (11)
i=1 i=1
P 
P
since i=1 Pr[Oi ] ≥ Pr[ i=1 Oi ]. Inequality (11) gives


P
  
P 
P
(1 − ri )M − 1 + M ri ≤ (1 − ri )M − 1 + M ri (12)
i=1 i=1 i=1

if we multiply by −1 and add P i=1 M ri on both sides. Finally, we saw in the
proof of Proposition 3 that M − N (1 − (1 − N1 )M ) ≥ 0. Then, one can divide
both parts of inequality (12) by M − N (1 − (1 − N1 )M ) to get the result. 
10 E. Angel, E. Bampis, and L. Gourvès

Proof of Lemma 1

Proof. Let {x} be the values assigned to the variables when LP is solved. Con-
sider the following algorithm which, given {x}, computes new values {x̃}.

1 For j = 1 to m Do
1.1 For l = 1 to g(j) Do
x̃j,l := f (M, N, xj,l )
End For
End For
2 For i = 1 to n  Do
x̃i = maxj { {l|ei ∈bl } x̃j,l }
j
End For

Actually, the algorithm gives to the variable representing bundle blj the value
f (M, N, xj,l ) which is always nonnegative by Proposition 3 and Remark 1. Then,
{x̃} fulfills constraints (6) of LP.
g(j)
We now show that for all j in {1, . . . , m}, we have l=1 x̃j,l ≥ 1. Let P = g(j  )
for a fixed j  belonging to {1, . . . , m}. Since xj,l is optimal by Remark 1, we know
that

P
xj  ,l = 1 (13)
l=1

By the convexity of f (see Proposition 3), we have

1  1 
P P
f (M, N, xj  ,l ) ≥ f (M, N, xj  ,l )
P P
l=1 l=1

Using inequality (13), we get

1 
P
1
f (M, N, xj  ,l ) = f (M, N, )
P P
l=1

from which we deduce that

1 
P
1 (1 − P1 )M − 1 + M/P
f (M, N, xj  ,l ) ≥ f (M, N, ) =
P
l=1
P M − N (1 − (1 − N1 )M )

P
M − P (1 − (1 − 1 M
P) )
f (M, N, xj  ,l ) ≥ (14)
l=1
M − N (1 − (1 − 1 M
N) )

Since P ≤ N , N ≥ 2 and M ≥ 2 we can prove the following inequality.

1 M 1
M − P (1 − (1 − ) ) ≥ M − N (1 − (1 − )M ) (15)
P N
On the Minimum Hitting Set of Bundles Problem 11

Using (14) and (15) we deduce


P
f (M, N, xj  ,l ) ≥ 1 (16)
l=1

Since no particular hypothesis was made for j  , we deduce that {x̃} fulfills con-
straints (2) of LP. Each variable x̃i receives the value maxj { {l|ei ∈bl } x̃j,l } at
j
step 2 of the algorithm. Thus, {x̃} fulfills constraints (3) of LP. Since every x̃j,l is
nonnegative, we know that x̃i is also nonnegative and {x̃} fulfills constraints (7)
of LP. We can conclude that {x̃} is a feasible assignment for LP. The remaining
part of the proof concerns inequality (8).
Take an element ei ∈ E. We know from step 2 that there is a q in {1, . . . , m}
such that  
x̃i = x̃q,l = f (M, N, xq,l ) (17)
{l|ei ∈blq } {l|ei ∈blq }

Using Proposition 4, we know that


 
f (M, N, xq,l ) ≤ f (M, N, xq,l ) (18)
{l|ei ∈blq } {l|ei ∈blq }

Constraint (3) of the LP says {l|ei ∈blq } xq,l ≤ xi . Since f is increasing be-
tween 0 and 1, we deduce

f (M, N, xq,l ) ≤ f (M, N, xi ) (19)
{l|ei ∈blq }

Using inequalities (17), (18) and (19) we know that x̃i ≤ f (M, N, xi ) holds for
every element ei . We sum this inequality over all elements and obtain

n 
n
x̃i ≤ f (M, N, xi )
i=1 i=1

which is the expected result. 

3.3 Derandomization
The derandomization of r-rounding is done via the method of conditional
expectation (see for example [11]). We get a deterministic algorithm called d2-
rounding.
Solve LP
Pr[hj = l] = xj,l where j = 1 . . . m and l = 1 . . . g(j)
For j = 1 to m Do
Let l∗ = argmin1≤l≤g(j) E[C(h) | h1 = l1 , . . . , hj−1 = lj−1 , hj = l]
Set hj = l∗
End For
12 E. Angel, E. Bampis, and L. Gourvès

Here E[C(h)] is the expected cost of a solution constructed by randomly


choosing for each subset Sj a bundle (and therefore the elements inside) accord-
ing to the distribution probability given by the values xj,l for l = 1, . . . , g(j).
This expected cost can be computed in polynomial time: If we note ui the
probability
 that element ei belongs to the solution, recall that one n has ui =
1 − {j|ei ∈bundle of Sj } {l |ei ∈bl } xj,l , and we have E[C(h)] = i=1 ui ci . In
j
the same way, E[C(h) | h1 = l1 , . . . , hj−1 = lj−1 , hj = l] denotes the conditional
l 
expectation of C(h) provided that we have chosen the bundle bjj for the set Sj 
(for 1 ≤ j  ≤ j − 1), and bundle blj for the set Sj . In the same way than before,
this conditional expectation can be exactly computed in polynomial time.

Theorem 4. d2-rounding is a deterministic N (1 − (1 − N1 )M )-approximation


algorithm.

Proof. In the following, we show that the expected cost never exceeds the original
one.
Suppose we are given l = (l1 . . . lj  ), a partial solution of the problem such
that l1 ∈ {1, . . . , g(1)}, l2 ∈ {1, . . . , g(2)}, . . . , lj  ∈ {1, . . . , g(j  )} and j  ∈
{1, . . . , m − 1}.

g(j  +1)

E[C(h) | h1 = l1 , . . . , hj  = lj  ] = E[C(h) | h1 = l1 , . . . , hj  = lj , hj  +1 = l]
l=1
. Pr[hj  +1 = l | h1 = l1 , . . . , hj  = lj  ]


g(j +1)
= E[C(h) | h1 = l1 , . . . , hj  = lj  , hj  +1 = l] xj  +1,l
l=1

If l = argmin1≤l≤g(j  +1) E[C(h) | h1 = l1 , . . . , hj  = lj  , hj  +1 = l] then

E[C(h) | h1 = l1 , . . . , hj  = lj  , hj  +1 = l ] ≤ E[C(h) | h1 = l1 , . . . , hj  = lj  ]

At each step, the algorithm chooses a bundle (fixes its probability to 1) and the
new expected cost does not exceed the previous one. Since E[C(h)] ≤ N (1 −
(1 − N1 )M ) OP T at the beginning of the algorithm, d2-rounding converges to
a solution whose total cost is N (1 − (1 − N1 )M )-approximate. 

3.4 Integrality Gap


Theorem 5. The integrality gap of the LP is N (1 − (1 − 1 M
N ) ).

Proof. Given N and m, we can build an instance as follows.


– S = {S0 , . . . , Sm−1 }
−1
– Sj = {b0j , . . . , bN
j }, j = 0, . . . , m − 1
– E = {e0 , . . . , eN m −1 }
– ci = 1 ∀ei ∈ E
On the Minimum Hitting Set of Bundles Problem 13

– Take i ∈ {0, . . . , N m −1} and let α be the representation of i with the numeral
m−1
N -base system, i.e. i = j=0 α(i, j) N j where α(i, j) ∈ {0, . . . , N − 1}. We
set ei ∈ blj if α(i, j) = l.

We view solutions as vectors whose jth coordinate indicates which bundle of Sj is


selected. Given a solution h, an element ei is not selected if, for j = 0, . . . , N − 1,
we have αji = hj . Then, exactly (N − 1)m elements are not selected. The total
cost is always N m −(N −1)m . Now consider LP. If the variable xj,l of each bundle
blj is equal to 1/N then the fractional cost of the solution is N m−1 . Indeed, an
element ei appears in exactly one bundle per Sj and the value of its variable xi
in LP is also 1/N . As a consequence, we have OP Tf = N m−1 . Since M = m in
the instance, we get the following ratio

OP T N M − (N − 1)M 1
= = N (1 − (1 − )M ) 
OP Tf N M−1 N

4 About min k−sat

Theorem 6. If there is a ρ-approximation algorithm for mhsb then there is an


approximation algorithm with the same ratio ρ for min k−sat.

Proof. Let A be a ρ-approximation algorithm for mhsb. Take an arbitrary in-


stance of min k−sat and build a corresponding instance of mhsb as follows. The
collection S is made of t sets S1 , . . . , St , one for each variable of X . Each set Sj
is composed of two bundles bTj and bF j . The set E contains z elements e1 , . . . , ez ,
one for each clause. Each element ei has a cost ci = 1. Finally, bTj = {ei |
Ci contains the unnegated variable xj } and bF j = {ei | Ci contains the negated
variable xj }. The resulting instance of mhsb is such that N = 2 and M = k.
Let τ be a truth assignment for the instance of min k−sat with cost C(τ ).
One can easily derive from τ a solution h for the corresponding instance of
mhsb with cost C(h) = C(τ ). Indeed, let hj be T if xj is assigned the value
in τ , otherwise hj = F . Conversely, let h be a solution for the mhsb instance
(with N = 2 and M = k). One can easily derive a truth assignment τ for the
corresponding instance of min k−sat with cost C(h) = C(τ ). Indeed, xj gets
the value true if hj = T , otherwise xj is assigned the value false. 

As a corollary of Theorem 6, min k−sat admits a 2(1 − 21k )-approximation algo-


rithm because d2-rounding is a N (1 − (1 − 1/N )M )-approximation algorithm
and the reduction is such that N = 2 and M = k. This result is equivalent to
the one proposed by Bertsimas et al. [3].

5 Concluding Remarks

Among the deterministic approximation algorithms that we considered, d2-


rounding is clearly the best in terms of performance guarantee since N
14 E. Angel, E. Bampis, and L. Gourvès

(1 − (1 − 1/N )M ) < min{N, M } (see inequality (10)). Because of the integrality


gap, improving this ratio with an LP-based approximation algorithm requires
the use of a different (improved) formulation. An interesting direction would be
to use semidefinite programming and an appropriate rounding technique as used
by Halperin [6] for vertex cover in hypergraphs.

References
1. Ausiello, G., D’Atri, A., Protasi, M.: Structure preserving reductions among convex
optimization problems. Journal of Computer and System Sciences 21(1), 136–153
(1980)
2. Avidor, A., Zwick, U.: Approximating MIN 2-SAT and MIN 3-SAT. Theory of
Computer Systems 38(3), 329–345 (2005)
3. Bertsimas, D., Teo, C.-P., Vohra, R.: On dependent randomized rounding algo-
rithms. Operation Research Letters 24(3), 105–114 (1999)
4. Dinur, I., Guruswami, V., Khot, S., Regev, O.: A new multilayered PCP and the
hardness of hypergraph vertex cover. In: Proceedings of STOC 2003, pp. 595–601
(2003)
5. Dinur, I., Safra, S.: The importance of being biased. In: Proceedings of STOC 2002,
pp. 33–42 (2002)
6. Halperin, E.: Improved Approximation Algorithms for the Vertex Cover Problem
in Graphs and Hypergraphs. SIAM J. Comput. 31(5), 1608–1623 (2002)
7. Kohli, R., Krishnamurty, R., Mirchandani, P.: The minimum satisfiability problem.
SIAM Journal on Discrete Mathematics 7, 275–283 (1994)
8. Marathhe, M.V., Ravi, S.S.: On approximation algorithms for the minimum satis-
fiability problem. Information Processing Letters 58, 23–29 (1996)
9. Toroslu, I.H., Cosar, A.: Dynamic programming solution for multiple query opti-
mization problem. Information Processing Letters 92(3), 149–155 (2004)
10. Sellis, T.K.: Multiple-Query Optimization. Transactions on Database Sys-
tems 13(1), 23–52 (1988)
11. Vazirani, V.V.: Approximation Algorithms. Springer, Heidelberg (2001)
Speed Scaling with a Solar Cell

Nikhil Bansal1 , Ho-Leung Chan2 , and Kirk Pruhs2,


1
IBM T.J. Watson Research, P.O. Box 218, Yorktown Heights, NY
[email protected]
2
Computer Science Department, University of Pittsburgh
{hlchan,kirk}@cs.pitt.edu

Abstract. We consider the speed scaling problem of scheduling a collec-


tion of tasks with release times, deadlines, and sizes so as to minimize the
energy recharge rate. This is the first theoretical investigation of speed
scaling for devices with a regenerative energy source. We show that the
problem can be expressed as a polynomial sized convex program. We
that using the KKT conditions, one can obtain an efficient algorithm to
verify the optimality of a schedule. We show that the energy optimal
YDS schedule, is 2-approximate with respect to the recharge rate. We
show that the online algorithm BKP is O(1)-competitive with respect to
recharge rate.

1 Introduction

Chip manufacturers such as Intel, AMD and IBM have made it a priority to
redesign their chips to consume less power and to provide various hardware and
software capabilities for power management. All of these chip manufacturers
make chips that use dynamic speed scaling as a power management technique.
Typically, the power consumed varies as the cube of the processor speed, and
hence this can yield significant energy/temperature reductions.
The first theoretical investigation of speed scaling algorithms was in the sem-
inal paper by Yao, Demers and Shenker [16]. They considered the problem of
feasibly scheduling a collection of jobs with arbitrary release times, deadlines
and sizes to minimize the energy consumed, and gave both offline and online
algorithms for it. Subsequently, there has been a lot of work on improving these
results and extending them to optimize various other objectives such as, flow
time, throughput and so on [2,3,4,5,7,8,11,13,14,15,17].
All of these theoretical investigations of speed scaling as an energy manage-
ment technique involve problems where the goal is to minimize the total energy
used. This would be the appropriate objective if the energy source was a bat-
tery, and the goal was to extend the battery’s lifetime. But some devices, most
notably some sensors, also contain technologies that allow then to harvest en-
ergy from their environment. The most common energy harvesting technology
is solar cells. Some sensors also contain technology that allows then to scavenge

Supported in part by NSF grants CNS-0325353, CCF-0514058 and IIS-0534531.

R. Fleischer and J. Xu (Eds.): AAIM 2008, LNCS 5034, pp. 15–26, 2008.

c Springer-Verlag Berlin Heidelberg 2008
16 N. Bansal, H.-L. Chan, and K. Pruhs

energy from ambient vibrations. To give some feel for state of technology, batter-
ies can store about 1 Joule of energy per cubic millimeter, while solar cells can
provide approximately 100 micro-Watt per square centimeter in bright sunlight,
and vibration devices can provide nano-Watts per cubic millimeter [1].
In this paper we initiate a study of speed scaling for energy management
in devices that contain both a battery and an energy harvesting device, which
we will henceforth assume for simplicity is a solar cell. Our goal is understand
how the presence of a solar cell will affect the resulting speed scaling problems.
For simplicity, we assume that the solar cell generates energy at a fixed rate
(although many of a our results apply to a more general setting). We consider
the deadline feasibility problem introduced in [16] because it is the most studied,
and probably the best understood, speed scaling problem in the literature. We
consider the objective minimizing the recharge rate, subject to the deadline
feasibility constraint.

1.1 Related Results


Before explaining our results, let us recap what is known about speed scaling
with a deadline feasibility constraint on battery only devices. The standard as-
sumption is that when the processor is run at speed s, then the power consump-
tion is P (s) = sα for some constant α > 1 [10,4,12]. For CMOS based devices,
which will likely remain the dominant technology for the near term future, the
well known cube-root rule is that the speed s is roughly proportional to the
cube-root of the power P , or equivalently, P (s) = s3 , i.e., [16] gave an optimum
greedy algorithm YDS. For the online version, they gave an algorithm AVR and
showed that it is 2α−1 αα competitive. It was recently shown that AVR is in
fact (2 − )αα competitive,where  is a vanishingly small function of α. [16] also
proposed another algorithm OA, which was shown by [4] to be αα competitive.
[4] gave another online algorithm BKP and showed that is was 2(α/(α − 1))α eα
competitive(this is the best known competitive ratio for large α. It is also known
that any algorithm must have competitive ratio of at least eα−1 /α [6] and hence
the result cannot be improved substantially. Improved results for the practically
interesting cases of α = 2 and α = 3have also been obtained recently [6].

1.2 Our Results


We consider both the offline and online versions of the minimum recharge rate
problem. In Section 3 we show that the offline problem can be expressed as a con-
vex program and hence can be solved to any desired accuracy by using standard
techniques such as the Ellipsoid Method. We then explore this convex program
further in Section 4. We analyze the consequences of the KKT conditions for
optimality for this program and obtain an equivalent set of combinatorial prop-
erties that are both necessary and sufficient for a solution to be optimal. This
gives us several insights into the structure of an optimum solution and also al-
lows us to obtain an efficient test to determine whether a solution is optimum
or not.
Speed Scaling with a Solar Cell 17

In Section 5, we show that the YDS algorithm, that is optimal for the no-
recharge case, is in fact a 2-approximation for the minimum recharge rate prob-
lem. We also show that this bound is tight. In the special case when the release
times and deadlines of jobs are similarly ordered, we show that YDS is optimal.
Finally, in Section 6, we consider the online setting, and show that we show that
the BKP algorithm [4] is O(1) competitive for the problem. In particular, BKP
α α α
achieves a competitive ratio of 4( α−1 ) e .
In summary, our results seem to suggest that the inclusion of a solar cell in
some sense changes the resulting speed scaling problem by a constant factor.
As evidence of this, the optimal energy schedule YDS, is an O(1)-approximate
schedule for recharge rate, and the algorithm BKP is O(1)-competitive for both
energy and recharge rate. The KKT conditions reveal that cutting the recharge-
rate optimal schedule at the points where the battery is empty, partitions the
schedule into energy optimal YDS schedules. So there is some relationship be-
tween energy optimal and recharge-rate optimal schedules. However, computing
the recharge-rate optimal schedule is still seemingly much harder than com-
puting an energy optimal schedule because it is not clear how to partition
the work amongst these YDS subschedules of the recharge-rate optimal
schedule.

1.3 Formal Problem Statement


We consider a system that consists of a battery that can be charged at a rate of
R, i.e. the energy reserve of the battery increases by R units per unit time,
from an external source such as a solar cell. The battery is used to run a
processor.
The input is a collection of jobs, where each job i has a release time ri when
it arrives into the system, work wi that must be performed to complete the job,
and a deadline di by which this work must be completed. In the online version
of the problem, the scheduler learn about job i at time ri . At this point it also
learns wi and di . A schedule specifies at each time which job is run, and at what
speed. Note that if the processor runs at speed s, the power is consumed at
 t
rate R − sα . Thus the energy level at any time t is t=0 (R − s(t)α )dt. We say
that a schedule is feasible if the system never runs out of power. That is, at any
time the energy level of the battery is non-negative. In the minimum recharge
rate problem, that we consider in this paper, the goal is to construct a feasible
schedule that minimizes the recharge rate R required.
We assume that the energy level of the battery at t = 0 is 0. This is without
loss of generality; given an instance I with battery level E0 at t = 0, we can
construct another instance I  with battery level 0 at t = 0 and with all the
jobs in I shifted forward in time by E0 /R units. We also assume that there
is no upper bound on the amount of energy that the battery can hold. This
assumption is justified as the problem is most interesting when there is not
much “slack” in the instance, and works in the regime where the battery is
never saturated.
18 N. Bansal, H.-L. Chan, and K. Pruhs

2 Preliminaries
We begin by reviewing the algorithms YDS and BKP for energy efficient schedul-
ing, as well as the KKT conditions for convex programming.

The Algorithm YDS. Given an instance I, let the density of any time interval
[t, t ] be defined as den(t, t ) = w(t, t )/(t − t), where w(t, t ) is the total size of
jobs with release time at least t and deadline at most t . Intuitively, den(t, t ) is
the minimum average speed at which any feasible algorithm must work during
the interval [t, t ]. YDS applies the following steps until all jobs are scheduled:
Let [t, t ] be the highest density interval. The speed is set to den(t, t ) during
[t, t ]. Then the instance is modified such that times [t, t ] did not exist. That is,
all deadlines di > t are modified di = max{t, di − (t − t)}, and all release times
ri > t are modified to ri = max{t, ri − (t − t)}, and the process is repeated. The
jobs are scheduled in the earliest deadline first order.
We note that each job is run at fixed speed in the YDS schedule. This speed
is fixed with respect to time, but may be different for different jobs. Moreover,
if job i runs at speed s, then the speed at any time during [ri , di ] is at least s.
Another useful (but non-algorithmic) view of YDS is the following. Start with
an arbitrary schedule, and keep improving the schedule as follows until no longer
possible: If some job i runs at time t when the processor speed is s, and there is
some other time t where job i can run (i.e. ri ≤ t ≤ di ) but the speed at t is
less than s, then move infinitesimally small work of job i from t to t .

The Algorithm BKP. At any time t and t1 < t ≤ t2 , let w(t, t1 , t2 ) be the
total size of jobs that have release time at least t1 , deadline at most t2 and have
been released by time t. Intuitively, it is an estimation for the density of the
interval [t1 , t2 ] based on the jobs released by t. Let v(t) be defined by
w(t, t − (e − 1)(t − t), t )
v(t) = max

t >t e(t − t)
Then, at any time t, BKP runs at speed e · v(t) and processes the unfinished job
α α α
with earliest deadline. BKP is known to be 2( α−1 ) e -competitive [4].

The KKT Conditions. Consider a convex program

min f0 (x) s.t.


fi (x) ≤ 0 i = 1, . . . , n

Assume the functions fi are all differentiable. Let λi , i = 1, . . . , n be a variable


(Lagrangian multiplier) associated with fi . Then the necessary KKT conditions
for solutions x and λ to be primal and dual optimal are:

fi (x) ≤ 0 i = 1, . . . , n (1)
λi ≥ 0 i = 1, . . . , n (2)
λi fi (x) = 0 i = 1, . . . , n (3)
Speed Scaling with a Solar Cell 19


n
∇f0 (x) + λi ∇fi (x) = 0 (4)
i=1

We refer to the above four equations as Condition 1, 2, 3 and 4 of the KKT condi-
tions, respectively. Condition 3 is commonly known as complementary slackness.
If the program is strictly feasible, i.e., there is some point x where fi (x) < 0 for
i = 1, . . . , n, then these conditions are also sufficient [9].

3 Convex Programming Formulation


In this section, we give a convex program to find the minimum recharge rate,
which implies that the problem can solved optimally in polynomial time. For
simplicity of description, we give a pseudo-polynomial sized time indexed for-
mulation, but as we show later the size can be made polynomial.
Let I be any job sequence. Recall that the release time, size and deadline of
a job i are denoted as ri , wi and di , respectively. Without loss of generality, we
assume that the release time and deadline of each job are integers. Let wi,j be
the amount of work done on job i during time [j − 1, j]. Then, minimizing the
recharge rate R can be written as the following program CP.

min R s.t.

wi − wi,t ≤ 0 ∀i = 1, 2, . . . (5)
t:ri <t≤di
 
( wx,t )α − Rj ≤ 0 ∀j = 1, 2, . . . (6)
t:t≤j x:rx <t≤dx
−wi,j ≤ 0 ∀i, j = 1, 2, . . . (7)
The constraints (5) enforce that each job is completed. Constraints (6) enforce
that the battery is non-negative at any integral time. We need to show that the
optimal solution for CP gives the minimum recharge rate. This is not completely
obvious since CP does not explicitly enforce that the battery does not run out
of energy at some non-integral time.
Lemma 1. The optimal solution R for CP is the minimum recharge rate to
complete all jobs in I.
Proof. Constraints (5) guarantee that each job is completed. Consider any time j
and let Ej−1 and Ej be the energy in the battery at time j −1 and j, respectively.
Let s = i:ri <j≤di wi,j be the speed during [j − 1, j] and let R = sα . Then for
any w ∈ [0, 1], at time j − 1 + w the energy in the battery is Ej−1 + w(R − R ).
If R − R ≥ 0, then Ej−1 + w(R − R ) ≥ Ej−1 ≥ 0; else if R − R < 0, then
Ej−1 + w(R − R ) ≥ Ej−1 + (R − R ) = Ej ≥ 0. Hence, if Ej−1 ≥ 0 and Ej ≥ 0,
then the battery is not depleted at any time during [j − 1, j]. This implies that
the schedule returned by CP is feasible. Conversely, every feasible schedule must
satisfy the constraints stated in CP. Hence R is the minimum recharge rate.  
20 N. Bansal, H.-L. Chan, and K. Pruhs

Since CP is convex, we can apply the standard methods to determine R to any


desired accuracy. We remark that CP has pseudo-polynomial size as the number
of variables and equations are depend upon the time horizon. However, given
the insight provided by the KKT conditions in the next section, we can reduce
the size to polynomial by considering only those time points that are the release
time or deadline of a job. We can redefine wi,j to be the work done on job i
between the (j − 1)-th and j-th time points. We also
 need to modify the left size
of (6) such that the speed during that interval is i wi,j divided by the length
of the interval. The resulting convex program gives the minimum recharge rate.

4 Recognizing an Optimal Schedule


We now study the consequences of the KKT conditions when applied to CP and
the structural properties they impose on an optimal solution. This will lead to
a simple algorithm to recognize an optimal schedule.
For our convex program CP, the constraints are differentiable and strictly
feasible, so the KKT conditions are both necessary and sufficient for a solution
to be optimal. Associate a dual variable αi for the equation for job i in constraints
(5) of CP. Associate a dual variable βj for the equation for time j in constraints
(6). Associate a dual variable γi,j for the equation for job i and time j in (7).
Now consider the four KKT conditions 1-4. Condition 1 states that the optimal
solution satisfies the constraints of CP (and hence is feasible). Condition 2 states
that αi , βj and γi,j are non-negative. For Condition 3, the equations become
⎛ ⎞

αi ⎝wi − wi,t ⎠ = 0 ∀i = 1, 2, . . . (8)
t:ri <t≤di
⎛ ⎞
 
βj ⎝ ( wx,t )α − Rj ⎠ = 0 ∀j = 1, 2, . . . (9)
t:t≤j x:rx <t≤dx

γi,j wi,j = 0 ∀i, j = 1, 2, . . . (10)


Equation (9) implies that βj is positive only if the battery is empty at time j.
Equation (10) implies that γi,j is zero if job i is processed during [j − 1, j].
We now consider Condition 4. We list out separately the terms corresponding
to each partial derivative in the gradient. When the derivative is taken w.r.t. R,
we obtain that 
1− jβj = 0 (11)
j

When the derivative is taken w.r.t. variable wi,j , we obtain that


 
αi + γi,j = α( wx,j )α−1 ( βt ) ∀i, j = 1, 2, . . . (12)
x:rx <j≤dx t:j≤t

Note that x:rx <j≤dx wx,j is the speed of the schedule during [j − 1, j]. Hence,
the above equation gives a relationship of how the speed depends on α, β and γ.
Speed Scaling with a Solar Cell 21

As we now show, these KKT conditions are equivalent to the following com-
binatorial properties that a schedule must satisfy.
Lemma 2. Let I be any job sequence and S be a schedule for I. Then, S is
optimal if and only if it satisfies the following 4 properties.
1. S completes all jobs and the battery is not depleted at any integral time.
2. There exists time T > 0 such that the battery has zero energy at T and no
job with deadline after T is processed by T .
3. Let T be the smallest time satisfying Property 2. Let 0 = t0 < t1 < . . . <
tk = T be times up to T such that the battery has zero energy. Then, for
each interval [ty−1 , ty ], y = 1, . . . , k, the work processed during [ty−1 , ty ] is
scheduled using the YDS schedule.
4. There exists multipliers m1 , m2 , . . . , mk−1 ≥ 1 for t1 , t2 , . . . , tk−1 with the
following property. Let si,y denote the speed that job i is processed during
[ty−1 , ty ]. Then, if i is processed during both [ty−1 , ty ] and [ty −1 , ty ], y < y  ,
we have si,y /si,y = my my+1 · · · my −1 .
Remark: We note that the multipliers m1 , . . . , mk−1 are independent of the jobs,
and hence the ratios siy /siy are identical for each job i.
Proof. We first show sufficiency, that is, if S satisfies the 4 properties stated
in Lemma 2, then S also satisfies the KKT conditions for CP and hence S is
optimal. We then show that these properties are also necessary. In particular,
we show that if S does not satisfy these properties, then there is another feasible
schedule with a smaller recharge rate, implying that S is not optimal. We now
give the details.
Consider the values of wi,j and R implied by S. The first property above
implies that wi,j and R satisfy the constraints of CP and hence Condition 1 of
the KKT conditions. The remaining three properties allow us to determine the
values of α, β and γ satisfying Condition 2, 3 and 4 of the KKT conditions. We
first give some intuition. Assume job i is processed during [j − 1, j]
for some time
j. By (10) it follows that γi,j = 0 and by (12) it follows that if t:j≤t βt > 0,
then the speed during [j − 1, j] is
1/(α−1)
 αi
wx,j =  (13)
α t:j≤t βt
x:rx <j≤dx

Note that αi is a constant for job i. Hence, if job i is processed during [j − 1, j]


with speed s  and is processed during [j  − 1, j  ] with speed s , then  we have
 1/(α−1)
that s /s = ( t:j≤t βt ) /( t:j  ≤t βt )1/(α−1) , or equivalently t:j≤t βt =

(s /s)α−1 t:j  ≤t βt . It means that in any optimum schedule, when a job is pro-
cessed during two different time intervals, the ratio of speeds should be deter-
mined by the values of β. Note that this is exactly what property 4 in Lemma 2
also guarantees. This allows us set the values β can be set consistently. We now
give the calculation to derive α, β and γ from the properties of Lemma 2.
Consider t1 < . . . < tk = T and m1 , . . . , mk−1 as defined by the third and
fourth property of Lemma 2. We set βj to zero for all j ∈ / {t1 , . . . , tk }. Note that
22 N. Bansal, H.-L. Chan, and K. Pruhs

it satisfies requirement (9) of the KKT conditions. For j ∈ {t1 , . . . , tk }, we set


βj such that they satisfy the following system of linear equations.
 
βt = (my )α−1 βt y = 1, . . . , k − 1 (14)
t:ty ≤t t:ty+1 ≤t


k
1− ty βty = 0 (15)
y=1

This system has a unique non-negative solution, as (14) can be written as βty =
((my )α−1 − 1) t:ty+1 ≤t βt . Hence, by considering the equation from y = k − 1
down to y = 1, we can express each of βtk−1 , . . . , βt1 in terms of βtk . Substituting
these expressions into (15), we obtain a unique solution for βtk , as well as βty
for y = k − 1, . . . , 1. Note that βtk > 0 and βty ≥ 0 for y = k − 1, . . . , 1. This
completely specifies β. Note that by (15), the values of β satisfy requirement
(11) of the KKT conditions.
To calculate the values of α, we consider each job i. Let [ji − 1, ji ] be the
earliest time interval during which i is processed. Then, αi is set to
 
αi = α( wx,ji )α−1 ( βt ). (16)
x:rx <ji ≤dx t:ji ≤t

Note that αi ≥ 0. As all jobs are completed by S, the KKT condition given
by (8) is satisfied for any value of α. Finally, to calculate the values of γ, we
consider any job i and any time j, ri < j ≤ di . We set γi,j to
 
γi,j = α( wx,j )α−1 ( βt ) − αi . (17)
x:rx <j≤dx t:j≤t

This guarantees that the KKT conditions specified by (12) are satisfied. It re-
mains to show that γi,j ≥ 0 and (10) is satisfied. This is trivially true if i has
not been processed until time tk , because γi,j = 0 in that case. If i has been
processed by time tk , recall that [ji − 1, ji ] is the first interval that i is processed.
Consider any time [j − 1, j] such that ri < j ≤ di . Let y and y  be values that
ty−1 < ji ≤ ty and ty −1 < j ≤ ty . Then, by (17) and (14) we have that
 
γi,j = α( wx,j )α−1 ( βt ) − αi
x:rx <j≤dx t:j≤t

x:rx <j≤dx wx,j
α−1

=α (my my+1 . . . my −1 )α−1 ( βt ) − αi
my my+1 . . . my −1
t:ty ≤t

x:rx <j≤dx wx,j
α−1

=α ( βt ) − αi (18)
my my+1 . . . my −1
t:ty ≤t

If i is processed during [j − 1, j], then by property 4 in Lemma 2, the speed



x:rx <j≤dx wx,j equals my my+1 . . . my  −1 times that during [ji − 1, ji ].
Speed Scaling with a Solar Cell 23

Hence, (18) implies that


 
γi,j = α( wx,ji )α−1 ( βt ) − αi
x:rx <ji ≤dx t:ji ≤t

which is identically equal to 0 by (16). Thus the KKT conditions given by (10) are
satisfied in this case. Finally consider the case when i is not processed during
[j − 1, j]. By property 3 in Lemma 2, the  schedule during [ty−1 , ty ] is a YDS
schedule, hence it must be that the speed x:rx <j≤dx wx,j is at least as large
as my my+1 . . . my −1 times the speed during [ji − 1, ji ]. By (18) and (16), this
implies that γi,j ≥ 0 if i is not processed during [j − 1, j]. This completes the
proof that the 4 properties above implies the KKT conditions.
It is relatively straightforward to see that the properties in Lemma 2 are
necessary. 

Hence, to determine whether a schedule S minimizes the recharge rate, we can
simply check for the above 4 properties. This gives our main result for this section.

Theorem 1. Let I be any job sequence. Given a schedule S, we can determine


in polynomial time whether S minimizes the recharge rate.

Proof. Properties 1, 2 and 3 of Lemma 2 can be checked easily in polynomial


time. To check Property 4 we can write as system of linear equations as follows.
Let i be a job that is processed in both [ty−1 , ty ] and [ty −1 , ty ] for some y < y 
with speed si,y and si,y respectively. We include an equation ln my + ln my+1 +
. . . + ln my −1 = ln(si,y /si,y ). By considering all jobs and time intervals, we
obtain a set of linear equations with variables of the type ln my . There is a
solution to these equations if and only if Property 4 is satisfied. 


5 Performance of YDS

In this section, we analyze the YDS schedule and show that it requires a recharge
rate at most 2 times that of the optimum schedule, and that this bound is the
best possible. Later we show that YDS is optimum for instances where the job
deadlines and release times are ordered similarly.
Let I be any job sequence, and let OPT denote some optimum schedule. We
first state a simple observation used to lower bound the energy usage of OPT.
Lemma 3. Consider the YDS schedule for I. Let s be any speed and t be any
time such that YDS has a speed at least s at t and has a speed strictly less than
s immediately after t. Let Ja be the set of all jobs YDS has processed using a
speed at least s until time t. Then, the energy usage of OPT for processing jobs
in Ja by time t is at least that of YDS.

Proof. We first notice that all jobs in Ja have deadlines at most t and are actually
completed by YDS by time t. Furthermore, in the YDS schedule for I, jobs in Ja
are processed identically as they would be in the YDS schedule for the instance
24 N. Bansal, H.-L. Chan, and K. Pruhs

Ja , i.e. instance I with jobs in I \ Ja removed. Therefore, YDS completes Ja


using the minimum amount of energy. OPT needs to complete Ja by time t and
must use at least the same amount of energy. 

We are now ready to prove the main result of this section.
Theorem 2. YDS is a 2-approximation for minimizing the recharge rate.
Proof. For any schedule if E(t) denotes the energy usage until time t, then by
definition, the recharge rate required is maxt E(t)/t. Consider some instance
where OPT has recharge rate r, but YDS is infeasible even with recharge rate
2r. Let t be the earliest time when YDS runs out of energy, and let t be the
earliest time after t when the speed of YDS falls below r1/α . Consider the times
during [0, t ] where speed of YDS is ≥ r1/α , and let E be the total energy used
during these times. Since YDS is working at speed strictly less than r1/α during
other times in [0, t ], it follows that the total energy used by YDS during [0, t ]
is strictly less than E + rt .
We now apply Lemma 3 at time t with s = r1/α , and define Ja accordingly.
As the energy used by YDS for jobs in Ja is at least E + (t − t )r, it follows
that the energy usage of OPT on jobs in Ja is at least E + (t − t )r. However, as
OPT has recharge rate r, it follows that rt ≥ E + (t − t )r and hence E ≤ rt .
However as the total energy used by the YDS during the interval [0, t ] is strictly
less than E + rt , this implies that the total energy used by YDS is strictly less
than 2rt which contradicts the assumption that YDS ran out of energy at t
with recharge rate 2r. 

We remark that the YDS schedule can be computed in O(n2 log n) time [15],
where n is the number of jobs. Therefore, this gives a polynomial time constant
factor approximation algorithm for the recharge rate minimization problem. We
also note that the above bound for YDS cannot be improved.
Observation 1. The approximation ratio of YDS is at least 2 for the minimum
recharge rate problem.
Proof. Let  be an arbitrarily small parameter such that 1/ is an integer. Con-
sider the instance with two jobs, where job 1 has size 1/1/α , release time 1/ − 1
and deadline 1/ and job 2 has size 1/2 − 1/, release time 0 and deadline 1/2 .
Consider the schedule that stays idle during 0 to 1/ − 1, finishes job 1 during
[1/ − 1, 1/] consuming energy 1/, and then works at speed 1 during [1/, 1/2]
on job 2. It is easily verified that it is feasible with a recharge rate of 1. YDS on
the other hand, works at speed (1/2 − 1/)/(1/2 − 1) ≈ 1 −  during [0, 1/ − 1]
on job 1. As it needs at least 1/ energy during [1/ − 1, 1/] for job 2, it is easily
verified that a recharge rate of 2 − O() is necessary. 


Well-ordered Jobs: We also consider the special case where the jobs are well-
ordered, i.e., for every jobs i1 , i2 , if the release time of i1 is no later than the
release time of i2 , then the deadline of i1 is no later than the deadline of i2 . We
can show that YDS is optimal for job sequences that are well-ordered. We omit
the proof due to the page limit.
Speed Scaling with a Solar Cell 25

Theorem 3. For well-ordered job sequences, YDS minimizes the recharge rate.

6 An Online Algorithm

We now show that the BKP algorithm is constant competitive in the online set-
α α α
ting. For any job sequence I, it is known that BKP uses no more than 2( α−1 ) e
times the total energy used by YDS [4]. In the following lemma, we show that
in fact at any intermediate time t, the energy usage of BKP up to t is at most
α α α
2( α−1 ) e times that of YDS.

Lemma 4. Consider any job sequence I. Let E(t) be the energy usage of YDS up
to time t, and E  (t) be that of BKP. Then, at any time t, E  (t) ≤ 2( α−1
α α α
) e E(t).

Proof. For the proof we define another algorithm ALG, that any time t runs at
speed p(t) = e · maxt1 ,t2 w(t, t1 , t2 )/(t2 − t1 ), where t1 < t ≤ t2 and w(t, t1 , t2 )
denotes the amount of work that has release time at least t1 and has deadline
at most t2 . Recall that the speed of BKP at any time t is no greater than that
of ALG. We will show that at any time t, the energy usage of ALG up to t is no
α α α
greater than 2( α−1 ) e E(t), which implies the lemma.
α α α
It is shown in [4] that ALG is 2( α−1 ) e -competitive in total energy usage.
To show that the same guarantee holds for any intermediate time, consider any
job sequence I and any time t. Without loss of generality, we assume t and
the release time and deadline of every job are integers. Let I  be a job sequence
constructed based on the YDS schedule for I: At any time j < t, a job is released
with deadline j + 1 and size equal to the speed of YDS during [j, j + 1], and
the last job is released at time t − 1. As ALG is 2( α−1 α α α
) e -competitive for total
energy, the energy usage of ALG up to t with input I  is at most 2( α−1 α α α
) e
times that of YDS for I  . To argue back about the job sequence I, we note that
at any time up to t, YDS has the same speed for input I and I  . For ALG, we
note that at any time i < t, the quantity p(i) for input I is at most that for
input I  , and hence the speed of ALG for I is at most that for I  . This implies
α α α
that for I, the energy usage of ALG up to time t is at most 2( α−1 ) e times
that of YDS. Since I and t are arbitrary, the lemma follows. 


By Theorem 2 and Lemma 4 we obtain that


α α α
Theorem 4. The BKP algorithm is 4( α−1 ) e -competitive for minimizing the
recharge rate.

References

1. http://www.eetimes.com/story/OEG20020405S0015
2. Albers, S., Fujiwara, H.: Energy-efficient algorithms for flow time minimization.
In: Durand, B., Thomas, W. (eds.) STACS 2006. LNCS, vol. 3884, pp. 621–623.
Springer, Heidelberg (2006)
26 N. Bansal, H.-L. Chan, and K. Pruhs

3. Albers, S., Müller, F., Schmelzer, S.: Speed scaling on parallel processors. In: Proc.
ACM Symposium on Parallel Algorithms and Architectures (SPAA), pp. 289–298
(2007)
4. Bansal, N., Kimbrel, T., Pruhs, K.: Speed scaling to manage energy and tempera-
ture. J. ACM 54(1) (2007)
5. Bansal, N., Bunde, D., Chan, H.-L., Pruhs, K.: Average rate speed scaling. In:
LATIN 2008 (to appear, 2008)
6. Bansal, N., Chan, H.-L., Pruhs, K., Rogozhnikov-Katz, D.: Improved bounds for
speed scaling in devices obeying the cube-root rule. In: IBM Research Technical
Report
7. Bansal, N., Pruhs, K.: Speed scaling to manage temperature. In: Diekert, V., Du-
rand, B. (eds.) STACS 2005. LNCS, vol. 3404, pp. 460–471. Springer, Heidelberg
(2005)
8. Bansal, N., Pruhs, K., Stein, C.: Speed scaling for weighted flow time. In: SODA
2007: Proceedings of the eighteenth annual ACM-SIAM symposium on Discrete
algorithms, pp. 805–813 (2007)
9. Boyd, S., Vandenberghe, L.: Convex Optimization. Cambridge University Press,
Cambridge (2004)
10. Brooks, D.M., Bose, P., Schuster, S.E., Jacobson, H., Kudva, P.N., Buyukto-
sunoglu, A., Wellman, J.-D., Zyuban, V., Gupta, M., Cook, P.W.: Power-aware
microarchitecture: Design and modeling challenges for next-generation micropro-
cessors. IEEE Micro. 20(6), 26–44 (2000)
11. Chan, H.-L., Chan, W.-T., Lam, T.-W., Lee, L.-K., Mak, K.-S., Wong, P.W.H.:
Energy efficient online deadline scheduling. In: SODA 2007: Proceedings of the
eighteenth annual ACM-SIAM symposium on Discrete algorithms, pp. 795–804
(2007)
12. Irani, S., Shukla, S., Gupta, R.: Online strategies for dynamic power management
in systems with multiple power saving states. Trans. on Embedded Computing Sys
(2003); Special Issue on Power Aware Embedded Computing
13. Kwon, W.-C., Kim, T.: Optimal voltage allocation techniques for dynamically vari-
able voltage processors. In: Proc. ACM-IEEE Design Automation Conf., pp. 125–
130 (2003)
14. Li, M., Liu, B.J., Yao, F.F.: Min-energy voltage allocation for tree-structured tasks.
Journal of Combinatorial Optimization 11(3), 305–319 (2006)
15. Li, M., Yao, F.F.: An efficient algorithm for computing optimal discrete voltage
schedules. SIAM J. on Computing 35, 658–671 (2005)
16. Yao, F., Demers, A., Shenker, S.: A scheduling model for reduced CPU energy. In:
Proc. IEEE Symp. Foundations of Computer Science, pp. 374–382 (1995)
17. Yun, H.S., Kim, J.: On energy-optimal voltage scheduling for fixed priority hard
real-time systems. ACM Trans. on Embedded Computing Systems 2(3), 393–430
(2003)
Engineering Label-Constrained
Shortest-Path Algorithms

Chris Barrett, Keith Bisset, Martin Holzer,


Goran Konjevod, Madhav Marathe, and Dorothea Wagner

Dept. of Computer Science and Virginia Bioinformatics Institute, Virginia Tech


{cbarrett, kbisset, mmarathe}@vbi.vt.edu
Fakultät für Informatik, Universität Karlsruhe (TH)
{mholzer, wagner}@ira.uka.de
Dept. of Computer Science and Engineering, Arizona State University
[email protected]

Abstract. We consider a generalization of the shortest-path problem:


given an alphabet Σ, a graph G whose edges are weighted and Σ-labeled,
and a regular language L ⊆ Σ ∗ , the L-constrained shortest-path problem
consists of finding a shortest path p in G such that the concatenated
labels along p form a word of L. This definition allows to model, e. g.,
many traffic-planning problems. We present extensions of well-known
speed-up techniques for the standard shortest-path problem, and con-
duct an extensive experimental study of their performance with various
networks and language constraints. Our results show that depending on
the network type, both goal-directed and bidirectional search speed up
the search considerably, while combinations of these do not.

1 Introduction
Consider a multimodal road network, with roads differentiated by categories
(highways, local streets etc.) and find in that network a shortest path from a
given start to a destination point that uses highway at most once (thus avoiding
on- and off-ramps). Another example is the k-similar-path problem, where we
want to compute two shortest paths between the same pair of vertices such that
the second path reuses at most k edges of the first (this can be useful to avoid
traffic jams in vehicle routing).
To formalize such problems, we augment the network edges with appropriate la-
bels and model the given restriction as a formal language. The labels of the edges
on a shortest path concatenated must then form an element of the language. A de-
tailed theoretical study of this (formal-) language-constrained shortest-path prob-
lem (LCSP) was undertaken in [4], where also a generalization of Dijkstra’s
algorithm to solve this problem is given, and in [3] an implementation of this al-
gorithm was tested for the special case of linear regular languages (LinLCSP).
Building on this earlier work, we now consider the LCSP with arbitrary reg-
ular expressions (RegLCSP): we propose a concrete implementation of an al-
gorithm solving this extended problem, and present adaptations of speed-up

R. Fleischer and J. Xu (Eds.): AAIM 2008, LNCS 5034, pp. 27–37, 2008.

c Springer-Verlag Berlin Heidelberg 2008
28 C. Barrett et al.

techniques designed for the standard, or unimodal, shortest-path problem to our


setting. In a systematic experimental study on realistic transportation networks
we investigate the applicability of goal-directed search, Sedgewick-Vitter heuris-
tic, and bidirectional search as well as combinations of these. We also explore
the scalability of our implementation by applying them to instances of increas-
ing size as well as involving languages of varying complexity (both linear and
general regular expressions).
Our experiments show that goal-directed search and the Sedgewick-Vitter
heuristic yield substantial speed-up for RegLCSP on all European and some
US road networks, while bidirectional search performs well especially on railway
networks. Unlike in the unimodal case, combinations of bidirectional search with
one of the other techniques do not perform any better than each variant applied
separately. Experiments with k-similar paths confirm growing speed-up factors
with increasing NFA sizes.

1.1 Related Work


Research on generalizations of the standard shortest-path problem has tradition-
ally focused on the extension of Dijkstra’s algorithm [5] to time-dependent cost
functions (cf. [8]), while comparatively little work has been done on constraints
restricting the set of feasible paths. There are reports on studies of multimodal,
or intermodal, shortest paths in transportation science literature, however, gen-
erally of limited applicability. Regular languages as a model for constrained-
shortest-path problems were first suggested in [9], and applications to database
queries described in [13,7]. Our initial motivation for studying LCSP problems
comes from the TRANSIMS project [1,2]. A theoretical study on algorithmic
and complexity-related issues can be found in [4].
In [3], an algorithm for the RegLCSP problem with time-dependent edge
weights obeying the FIFO property is described, where an implicit representation
(cf. Section 3.1) is used; experimental results are presented only for LinLCSP.
Also for time-dependent RegLCSP, [11] gives an implicit algorithm, running in
linear time for FIFO weight functions. This algorithm is extended in [12] to allow
for turn penalties; some experimental results are reported in both these papers.
The present work deals with RegLCSP, where the focus is on an extensive exper-
imental evaluation of speed-up techniques with diverse classes of larger networks.

2 Foundation
In this section we formally define the regular-language-constrained shortest-path
problem, and describe two out of many algorithmic problems, multimodal plans
and k-similar paths, that can be tackled using our problem formulation.

2.1 Problem Statement


The regular-language-constrained shortest-path problem (RegLCSP) is
defined as follows. Given a finite alphabet Σ, a graph—also referred to by
Engineering Label-Constrained Shortest-Path Algorithms 29

network—G = (V, E, c, ) with cost function c : E → R+ and label function


 : E → Σ, and a regular language L ⊆ Σ ∗ . For a query (s, d) ∈ V × V find
a shortest s-d-path p = (e1 , e2 , . . . , ek ) in G such that (p) ∈ L, where (p) is
the concatenation (e1 ) · (e2 ) · · · (ek ) of the labels of p’s edges. The cost—or
length—of p is the sum of costs of p’s edges. By Kleene’s theorem, a regular lan-
guage can be represented through a nondeterministic finite automaton (NFA),
allowing for a concise description.

2.2 Applications
We describe two applications of the RegLCSP problem, which are also re-
spected in our experiments (other examples include turn complexity, counting
constraints, and trip chaining; cf. [3] for an overview).

Multimodal Plans. Consider a traveler who wants to take a bus from a start
s to a destination point d and suppose transfers are undesirable, while walks
from s to a bus stop and from a bus stop to d be allowed. To solve such a task,
add to the given road network a vertex for every bus stop and an edge between
each consecutive pair of stops. Label the edges according to the modes of travel
allowed (e. g., c for car travel; w for walking on sidewalks and pedestrian bridges;
b for bus transit). Now the traveler’s restriction can be modeled as w∗ b∗ w∗ , if
we make sure that the network contains a zero-length w-edge for each change of
bus.

k-Similar Paths. We want to consecutively route two (or more) vehicles from s
to d such that the second uses at most k of the edges passed by the first one.
This can be useful, e. g., to plan for a travel group different transfers between
two fixed points. Note that the second path thus found may, depending on the
network and the choice of k, be of greater length. To do this, find a shortest s-d-
path p in the given network, label p’s edges by t (for taken), the remaining ones
by f (for free), and solve the s-d-query again for the expression f ∗ (t ∪ f ∗ )k f ∗ .

3 Algorithms
We now show how RegLCSP can be solved through a product network con-
structed from given network and NFA, and present some adaptations of unimodal
speed-up techniques to our multimodal algorithm.

3.1 Product Network


Consider the direct product of a weighted, Σ-labeled network G = (V, E,
c, G ) and an NFA A = (Q, Σ, δ, q0 , F ) with set Q of vertices/states, alpha-
bet Σ, transition function δ, start vertex q0 , and set F of final vertices; let T be
the set of state transitions t = (q1 , q2 ) with δ(q1 ) = q2 and labels A (t) ∈ Σ. The
product network P = G × A is defined to have vertex set {(v, q) | v ∈ V, q ∈ Q}
30 C. Barrett et al.

and edge set {(e, t) | e ∈ E, t ∈ T, G (e) = A (t)}. The cost of an edge (e, t) ∈ P
corresponds to c(e).
Theorem 1. Finding an L-constrained shortest path for some L ⊆ Σ ∗ and
(s, d) ∈ V × V is equivalent to finding a shortest path in the product network
P = G × A from vertex (s, q0 ) to (d, f ) for some f ∈ F .
For the proof, one need only observe that there is a one-to-one correspondence
between paths in P starting at (s, q0 ) and ending at some vertex (d, f ) and s-d-
paths in G whose labeling belongs to L (for details please refer to [4]). Theorem 1
immediately yields the RegLCSP Algorithm, which performs an s-d-shortest-
path search in P .

Implementation. Obviously, a direct implementation of this algorithm would re-


quire Θ(|G|·|A|) space. We therefore propose a more practical way without having
to compute an explicit representation of P : the algorithm considers pairs (v, q) ∈
P but to iterate over (v, q)’s outgoing edges, simultaneously accesses the adjacency
lists of v and q. To do this efficiently, we store the outgoing edges of both G and A
bundled by their labels and keep pointers to the first edge of each bundle. Now we
need only iterate over all labels l ∈ Σ and consider each combination of vertices v 
reachable from v via an edge labeled l and q  reachable from q via an edge labeled
l. This implicit representation reduces storage space to Θ(|G| + |A|), while time
complexity does not increase by more than a constant factor.

3.2 Speed-Up Techniques


In order to improve the above-described RegLCSP Algorithm, we adopt several
approaches designed to speed up unimodal Dijkstra’s algorithm: the key idea is
to apply the genuine technique to the product network.

Goal-Directed Search (go). For given source and destination vertices s and d,
goal-directed search, or A∗ search, modifies the edge costs so that during the
search, edges pointing roughly towards d are preferred to those pointing away
from it. The effect is that potentially fewer vertices (and edges) have to be
touched before d is found. With networks featuring distance metric, this mod-
ification, c̄, can typically be achieved through Euclidean distances dist(v, w)
between vertices v and w:
c̄(v, w) = c(v, w) − dist(v, d) + dist(w, d)
(in this case, c accounts for curves, bridges, etc., so that dist provides a lower

bound). When using travel, or time, metric, letting dist (·, d) = dist(·, d)/vmax
with vmax = max{v,w}∈E dist(v, w) c(v, w) yields a feasible lower bound.

Sedgewick-Vitter Heuristic (sv). If we do not insist on exact shortest paths, a


canonical extension of go is to bias the search to d even further: the Sedgewick-
Vitter heuristic [10] uses as modified cost function c̄(v, w) = c(v, w)−α·dist(v, d)+
α · dist(w, d) for some α ≥ 1, influencing the trade-off between gain in running
time and path length increase. For previous work exploring this technique, cf. [6].
Engineering Label-Constrained Shortest-Path Algorithms 31

Bidirectional Search (bi). To reduce the search space, we run two simultaneous
searches, forward and backward, starting from s and d, respectively; the expected
improvement is a halving of the number of touched vertices1 . A shortest s-d-path
has been found when a vertex u is about to be scanned that has already been
settled (i. e., its distance from the search’s origin has become permanent) by the
search in the other direction (note that the shortest path such found need not
pass by u).
Combinations (bi+). We provide two variants for the combination of bi with
either go or sv: (1) the cost function used for the backward search corresponds
to that for the forward search; or (2) the cost function for both searches is the
average of modified cost functions with respect to s and d, respectively:

c̄(v, w) = c(v, w) + 1/2 · (−dist(v, d) + dist(w, d) − dist(w, s) + dist(v, s)) .

4 Experimental Study
The empiric part of this work systematically investigates our implementation of
the RegLCSP Algorithm and the speed-up techniques described in the previous
section. It can be seen as both a continuation and extension of [3] in that the re-
striction to linear expressions is waived and besides goal-directed search and the
Sedgewick-Vitter heuristic, bidirectional search and combinations of techniques
are employed. Our main focus is on the suitability of each technique for sev-
eral networks and NFAs and the speed-ups attainable. Moreover, two different
problems that can be tackled by RegLCSP (cf. Section 2.2) are considered.

4.1 Setup
Our experiments are conducted using realistic networks, representing various
US and European road as well as European railway networks2 (cf. Table 1).
The road networks are weighted with actual distances (not necessarily Euclidean
lengths) and labeled with values reflecting road category (from 1 to 4 for US and
from 1 to 15 for EU networks, ranking from fast highways to local/rural streets).
The railway network represents trains and other means of public transportation,
where vertices mark railway stations/bus stops and edges denote non-stop con-
nections between two embarking points, weighted with average travel times and
labeled from 0 to 9 for rapid Intercity Express trains to slower local buses. One
important difference between the US and the European road data collections is
that the former come undirected, while the latter are directed.
We apply several specific language constraints of varying complexity, listed in
Table 2: for the US networks, we distinguish between enforced use of highway
1
The forward search will explore roughly r 2 vertices to find an r-edge shortest path,
while the searches are likely to meet when each has explored roughly (r/2)2 vertices.
2
The US networks are taken from the TIGER/LINE collection, available at
http://www.dis.uniroma1.it/~challenge9/data/tiger/. The European road and
railway data were provided courtesy of PTV AG, Karlsruhe, and HaCon, Hannover.
32 C. Barrett et al.

Table 1. Network sizes. Left: US road networks; right: European road and railway
networks. For each network, a short key, its type (road/rail), and the numbers n and
m of vertices and edges, respectively, are indicated.

key network type n m key network type n m


AZ Arizona road 545111 665827 LUX Luxembourg road 30087 70240
DC Distr/Col road 9559 14909 CHE Switzerland road 586025 1344496
GA Georgia road 738879 869890 DEU Germany rail 6900 24223

Table 2. Left: language constraints used with different networks (from top to bottom:
US road, European road and railway). For each NFA, a short key, regular expression
recognized by the NFA, informal description, and the numbers n and m of vertices and
edges, respectively, are indicated. Right: complex NFA representing for a decomposition
of the alphabet Σ = Σ1 ∪ Σ2 the unrestricted expression, Σ ∗ .

(interstate or national), regional transfer (all categories but interstates), and use
of local/rural streets only; for the European networks, we employ two different
NFAs imposing no restriction at all (besides the ‘canonical’, S, also an ‘artificially
made-complex’ one, C) as well as such restricting to local streets and avoiding
high-speed trains (the latter usually being a little more expensive), respectively.
To measure the performance of each speed-up technique T , we compute the
ratio tvpl /tvT of touched vertices (product vertices added to the priority queue),
where tvpl and tvT stand for the number of touched vertices with plain Dijkstra
(i. e., pure RegLCSP Algorithm) and with T , respectively. This definition of
speed-up both is machine independent and proved to reflect actual running times
quite precisely. Our code was compiled with the GCC (version 3.4) and executed
on several 2- or 4-core AMD Opteron machines with between 8 and 32 GB of
main memory. Unless otherwise noted, each series consists of 1000 queries.

4.2 Multimodal Routing

The term multimodal here is used in an extended sense since depending on the
network type, it may refer either to multiple road categories or train classes. For
comparability reasons, we explore the exact algorithms and the Sedgewick-Vitter
heuristic separately.
Engineering Label-Constrained Shortest-Path Algorithms 33

Exact Algorithms. Assessment of our results is done in two steps, where we


first provide a synopsis of the overall outcome and then detail on a few networks
under the aspect of path lengths.
Synopsis. Figure 1 shows for each combination of network, NFA, and algorithm
the average speed-up in terms of touched vertices in the product graph; the
algorithms are distinguished along the x-axis (using the abbreviations introduced
in Section 3.2, where pl stands for plain Dijkstra) and the NFAs are marked by
their short keys (cf. Table 2). As a general result, it can be stated that both
variants of the bidirectional/goal-directed combination (lumped together under
bi+) always seem to be dominated by bi: there are just tiny differences in the
number of vertices touched by bi and either one of the bigo variants (or even
bisv). This is astounding insofar as in the unimodal case such combinations
usually outperform both go and bi. Moreover, NFA size (mostly the number of
vertices) has a direct impact on the number of touched vertices: the NFAs H
and C incur considerably higher numbers of touched vertices than the others do.
One striking difference between the various US networks is that for the AZ and
GA graphs, go search does not yield any improvement over pl at all, however, a
speed-up factor of up to 2 (i. e., a reduction of 50 % of touched vertices) can be
achieved for DC. Similar improvement of a factor of 2 is reached with European
road networks, while go accelerates the DEU railway graph only marginally. On
the other hand, bi gives good speed-up of around 2 for the railway network;
little improvement in general for the US networks; and no speed-up, or even a
slow-down (especially with NFA L), for the European road networks.
Overall, the performance of each algorithm is strongly dependent on the net-
work properties, such as density or the metric used. It is also noteworthy that
some NFAs are so much restrictive that a larger number of queries cannot be
answered: e. g., with L, no feasible path is found for 34 and 53 % of the queries
in the LUX and CHE networks, respectively.
Dijkstra Rank. To get a finer picture, we now consider, exemplarily for the LUX
network, the speed-up values categorized by the lengths of the belonging shortest
paths found, also called Dijkstra rank. Figure 2 shows in the form of standard
box plots the average speed-up with the algorithms go and bi and NFA C. The
best factors are obtained when the Dijkstra rank lies somewhere in the middle
of the complete range: a certain minimal distance between start and destination
seems to be required for the speed-up technique to kick in; with higher ranks
(both vertices are located near opposite borders of the network), however, the
pl search is naturally bounded already, so that the speed-up factors decrease
again.

Sedgewick-Vitter. Performance of the sv heuristic can be measured in terms


of both reduction in the number of touched vertices and path length increase:
the bigger the choice of α, i. e., the greater the distortion towards the target,
the smaller gets the search space; however, with increasing α, accuracy of the
found paths drops. For the LUX network, we observed that an α of 1.2 reduces
the number of touched vertices by well over 20 % on average while the path
34 C. Barrett et al.

Fig. 1. Average speed-up in terms of touched vertices with each of the algorithms
plain (pl), goal-directed (go), bidirectional (bi), and bidirectional/goal-directed com-
binations (bi+), applied to different networks (from top to bottom and left to right:
AZ, DC; GA, LUX; CHE, DEU); the NFAs used are indicated by the characters on
the lines (cf. Table 2).
Engineering Label-Constrained Shortest-Path Algorithms 35

3.0

8
2.5

6 2.0

1.5
4

1.0

0.5

210 211 212 213 214 215 216 217 ∞


210 211 212 213 214 215 216 217 ∞

Fig. 2. Speed-up with go (left) and bi (right) applied to the LUX network and C NFA,
categorized by Dijkstra rank. The x-axis denotes the (approximate) length of a path
(∞ comprises infeasible queries); in each plot, the curve joins the mean values.
1.35

1.030
1.30

1.025
1.25

1.020
1.20

1.015
1.15

1.010
1.10

1.005
1.05
1.00

1.000

0.0 0.2 0.4 0.6 0.8 1.0


0.2 0.4 0.6 0.8 1.0

Fig. 3. Reduction in the number of touched vertices and path length increase with sv,
applied to the LUX (left) and DEU (right) networks and the NFA S with α-parameters
of 2 and 50, respectively. The x-axis denotes the share of touched vertices with sv in
the number of vertices touched by go, while the y-axis denotes the path length increase.
The horizontal and vertical lines mark the respective mean values.

lengths remain exact for all but a few queries. When raising α to 2, we save just
over 80 % of touched vertices on average, but path lengths increase by around 4 %
(cf. Figure 3). The picture for the DEU network looks similar, although much
higher factors of α are needed to cause some effect: a reasonable choice seems to
be 50 (the number of touched vertices diminishes to roughly a third with path
quality almost unaffected).

4.3 k-Similar Paths

Besides exploring yet another practical application, the k-similar-path problem,


as defined in Section 2.2, allows to construct NFAs of virtually arbitrary sizes
in a natural way: the NFA restricting the second path found to k ≥ 0 edges
shared with the first one consists of k + 1 vertices and 2k + 1 edges. Figure 4
shows for the DC network and increasing values of k both the number of vertices
touched and speed-ups achieved with each algorithm. As can be predicted from
theory, the curves joining the numbers of touched vertices exhibit to be almost
36 C. Barrett et al.

2.1
P G
200000

2.0
G
150000

1.9
G
P B G

1.8
G
100000

G
G
B

1.7
P
G
50000

1.6
P B
G
B
P G
B

1.5
B
P G B
P B
B G
G B B B B B
0

0 10 20 30 40 50 0 10 20 30 40 50

Fig. 4. k-similar-path computation: number of touched vertices (left) and speed-up


(right) with the DC network and the algorithms pl, go, and bi for different choices of
k (denoted along the x-axis)

linear (in fact, they appear slightly sublinear). With increasing NFA sizes (and
hence bigger product networks), speed-ups also rise: with bi search, only a small
growth is noticeable while with the go variant, the increase ranges between 1.75
(with k = 1) and 2 (with k = 50).

5 Conclusion
We have shown how to solve the regular-language-constrained shortest-path
problem using product networks composed of a graph and an NFA, and proposed
techniques to speed up point-to-point queries. In a practical implementation, all
variants were empirically tested with a variety of real-world networks and con-
straints. Goal-directed and bidirectional search are found to give good speed-ups
also for the multimodal setting. However, their performance greatly depends on
the network properties. The Sedgewick-Vitter heuristic can, especially for rail-
way graphs, take high α-parameters, while the paths found remain near-optimal.
Surprisingly, combinations with bidirectional search do not perform better than
the individual techniques. Investigating the application of k-shortest-path prob-
lems, it could be shown that the speed-up attainable increases with the size of
the NFA.
In our opinion, the most interesting questions for future research include:
adaptation and implementation of further speed-up techniques and heuristics;
comparison between implicit and explicit product network representations; and
integration of time-dependent cost functions.

Acknowledgments
The author Martin Holzer wants to give special thanks to Valentin Mihaylov
for his assistance with parts of the implementation and execution of the exper-
iments.
Engineering Label-Constrained Shortest-Path Algorithms 37

References
1. Barrett, C., Birkbigler, K., Smith, L., Loose, V., Beckman, R., Davis, J., Roberts,
D., Williams, M.: An operational description of TRANSIMS. Technical report, Los
Alamos National Laboratory (1995)
2. Barrett, C.L., Bisset, K., Holzer, M., Konjevod, G., Marathe, M.V., Wagner,
D.: Engineering the label-constrained shortest-path algorithm. Technical report,
NDSSL, Virginia Tech. (2007)
3. Barrett, C.L., Bisset, K., Jacob, R., Konjevod, G., Marathe, M.V.: Classical and
contemporary shortest path problems in road networks: Implementation and ex-
perimental analysis of the TRANSIMS router. In: Möhring, R.H., Raman, R. (eds.)
ESA 2002. LNCS, vol. 2461, pp. 126–138. Springer, Heidelberg (2002)
4. Barrett, C.L., Jacob, R., Marathe, M.V.: Formal-language-constrained path prob-
lems. SIAM J. Comput. 30(3), 809–837 (2000)
5. Dijkstra, E.W.: A note on two problems in connexion with graphs. Numerische
Mathematik 1, 269–271 (1959)
6. Jacob, R., Marathe, M.V., Nagel, K.: A computational study of routing algo-
rithms for realistic transportation networks. ACM Journal of Experimental Al-
gorithms 4(6) (1999)
7. Mendelzon, A.O., Wood, P.T.: Finding regular simple paths in graph databases.
SIAM J. Comput. 24(6), 1235–1258 (1995)
8. Orda, A., Rom, R.: Shortest-path and minimum-delay algorithms in networks with
time-dependent edge-length. J. ACM 37(3), 607–625 (1990)
9. Romeuf, J.-F.: Shortest path under rational constraint. Information Processing
Letters 28, 245–248 (1988)
10. Sedgewick, R., Vitter, J.S.: Shortest paths in euclidean graphs. Algorithmica 1(1),
31–48 (1986)
11. Sherali, H.D., Jeenanunta, C., Hobeika, A.G.: Time-dependent, label-constrained
shortest path problems with applications. Transportation Science 37(3), 278–293
(2003)
12. Sherali, H.D., Jeenanunta, C., Hobeika, A.G.: The approach-dependent, time-
dependent, label-constrained shortest path problems. Networks 48(2), 57–67 (2006)
13. Yannakakis, M.: Graph-theoretic methods in database theory. In: PODS, pp. 230–
242 (1990)
New Upper Bounds on Continuous Tree
Edge-Partition Problem

Robert Benkoczi1 , Binay Bhattacharya2, , and Qiaosheng Shi2


1
Mathematics and Computer Science, University of Lethbridge,
Lethbridge, Alberta, Canada T1K 3M4
[email protected]
2
School of Computing Science, Simon Fraser University,
Burnaby B.C., Canada. V5A 1S6
{binay,qshi1}@cs.sfu.ca

Abstract. We consider continuous tree edge-partition problem on a


edge-weighted tree network. A continuous p-edge-partition of a tree is
to divide it into p subtrees by selecting p − 1 cut points along the edges
of the underlying tree. The objective is to maximize (minimize) the mini-
mum (maximum) length of the subtrees. We present an O(n log 2 n)-time
algorithm for the max-min problem which is based on parametric search
technique [7] and an efficient solution to the ratio search problem. Simi-
lar algorithmic technique, when applied to the min-max problem, results
in an O(nhT log n)-time algorithm where hT is the height of the under-
lying tree network. The previous results for both max-min and min-max
problems are O(n2 ) [5].

1 Introduction
In this paper we consider continuous edge-partition (CEP, for short) problem on
an edge-weighted tree network T = (V (T ), E(T ), l), where V (T ) is the vertex set
and E(T ) is the edge set, and each edge e ∈ E(T ) is associated with a positive
length l(e). We refer to interior points on an edge by their distances, along the
edge, from the two endpoints of the edge. Let π(x, y) be the unique simple path
between a pair of points x and y in T and let d(x, y) denote the length of π(x, y).
For any two different points x, y on an edge e, if x and y are not the two
endpoints of e, then we call the simple path from x to y a partial edge of e. We
define the length of a subtree T  of T , denoted by l(T  ), to be the total length
of its edges and partial edges.
Let x be a point on an edge e : uv ∈ E(T ). A cut at x is a splitting of e into
two closed partial edges: one is from vertex u to x and the other is from x to
vertex v. A cut at an interior point of an edge is called an interior-cut. A cut at
an endpoint of an edge is called a vertex-cut. Note that a vertex cut is uniquely
defined by a vertex and an edge incident to this vertex.
Let p ≥ 2 be an integer. A p-edge-partition of T is a set of p subtrees induced
by p − 1 cuts. The max-min CEP problem is to find a p-edge-partition of T that

Research was partially supported by MITACS and NSERC.

R. Fleischer and J. Xu (Eds.): AAIM 2008, LNCS 5034, pp. 38–49, 2008.

c Springer-Verlag Berlin Heidelberg 2008
New Upper Bounds on Continuous Tree Edge-Partition Problem 39

maximizes the smallest length of a subtree; and the min-max CEP problem is to
find a p-edge-partition of T that minimizes the largest length of a subtree.
Recently, Lin et. al. [5] proposed O(n2 )-time algorithms for the two problems,
which improve the O(n2 log (min {p, n})) result of Halman and Tamir [4]. The
proposed algorithms of Lin et. al. [5] are based on efficiently solving a problem,
called ratio search problem. In this paper we consider a more general version of
the ratio search problem that is defined as follows.
Definition 1 (Ratio search problem). Given a positive integer q, a real num-
ber t, a non-increasing function F : R → R, a set of k non-negative real numbers
Δ = {bi , i = 1, . . . , k}, and each number bi in Δ is associated with a non-
negative integer number gi , 1 ≤ i ≤ k, compute the largest real number z in
{bi /ai , i = 1, · · · , k | ai ∈ [gi + 1, gi + q], bi ∈ Δ} such that F (z) ≥ t.
Lin et. al. [5] proposed an algorithm for the ratio search problem with uniform
value of gi = 0, i = 1, · · · , k. We present an approach that solves the ratio search
problem with the same time complexity, for non-uniform values of gi , i = 1, · · · , k.
Using our efficient algorithm for the ratio search problem, we are able to solve the
max-min CEP problem in O(n log 2 n) time, which is a substantial improvement
of the previous results. For the min-max CEP problem, the proposed algorithm
runs in time O(nhT log n), where hT is the height of the underlying tree.
The rest of the paper is organized as follows. Spine decomposition of a tree T
is reviewed in Section 1.1. Section 2 provides a sub-quadratic algorithm for the
max-min CEP problem on a tree network. The min-max problem is discussed in
Section 3. An algorithm for the ratio search problem is presented in Section 4.
Section 5 gives a brief conclusion.

1.1 Spine Decomposition of T


We consider a rooted binary tree T whose root vertex rT is of degree one. We
denote by p(v) the parent of v in T . Let Tv be the subtree of T that is rooted
at a vertex v. Let Nl (v) be the number of leaves that are descendants of v in T .
A path π(rT , v  ) from the root rT to a leaf v  of T is first identified such that
for any two consecutive vertices vi and vi+1 on π(rT , v  ) (v0 = rT , p(vi+1 ) = vi ,
and vm = v  ), the following condition is satisfied: for any child u of vi other than
vi+1 , Nl (u) ≤ Nl (vi+1 ). That is, the path follows vertices from the root to a leaf
such that the next vertex chosen is always the child of the current vertex with
the most number of leaf descendants. The path π(rT , v  ) is called a spine and
rT is the root of this spine. We label the spine as the 1st -level spine.
The procedure is then applied recursively on each Tu where u is a child of
vertex vi and Tu is composed of Tu and the edge uvi , i = 1, · · · , m − 1. We label
a spine, that hangs from another j th -level spine, a (j + 1)th -level spine.
We have the following property about this spine decomposition of T .
Lemma 1. [1] For any vertex v ∈ V (T ), the simple path π(rT , v) goes through
at most O(log n) spines.
In other words, the maximum level of spines in a spine decomposition of T is
O(log n), denoted by τ .
40 R. Benkoczi, B. Bhattacharya, and Q. Shi

2 The Max-Min Continuous Edge-Partition Problem

In this section, an O(n log 2 n)-time algorithm for the max-min CEP problem is
presented.

Let lp(1) be the length of the smallest subtree in an optimal solution to the
max-min CEP problem. For any positive real number l ≤ l(T ), define Z1 (l) to
be the largest number such that there exist an Z1 (l)-edge-partition in which the
length of each subtree is at least l. A length l is feasible in the max-min model
if Z1 (l) ≥ p, and infeasible, otherwise.

Lemma 2. In the max-min model, lp(1) ≤ l(T )/p.

In [4], Halman and Tamir presented an O(n)-time algorithm to compute Z1 (l)


for a given positive length l. Here we only present its main steps.

A linear-time Feasibility Test A vertex v is called a cluster vertex of a rooted


tree, if all its children are leaves of this tree.
Initially, Z1 (l) = 0. In the algorithm of Halman and Tamir [4] to compute
Z1 (l), each time a cluster vertex of the current tree, say v, is selected and the
following steps are performed. Let {v1 , · · · , vt } be the set of children of v. For
each k = 1, · · · , t, add nk to Z1 (l) where nk = l(vvk )/l (corresponding
t to nk
interior-cuts on edge vvk ), and let ak = l(vi vi(k) ) − nk × l. If k=1 ak ≥ l then
increase Z1 (l) by 1 (corresponding to a vertex-cut
t on v and vp(v)). Otherwise,
increase the length of the edge vp(v) by k=1 ak . Delete all edges vvk from the
current tree. The process is repeated with a cluster of the updated tree. It is not
hard to see that the running time of the approach is O(n).

Lemma 3. [4] Whether a given positive length l is feasible in the max-min CEP
model can be determined in O(n) time.

Definition of q(v), v ∈ V (T ) \ {rT } For each v ∈ V (T ) \ {rT }, let q(v) be the


smallest positive integer s.t. l(vp(v))/q(v) is feasible. In other words, q(v) =

l(vp(v))/lp(1) . We first show, in Section 2.1, that all q(v), v ∈ V (T ) \ {rT } can
be computed in O(n log n) time.

2.1Computing q(v), v ∈ V (T ) \ {rT }



Lemma 4. p ≤ v∈V (T )\{rT } q(v) ≤ (p + n − 1).

Let z1∗ be the largest feasible real number in Z1 = {l(vp(v))/a|a ∈ [1, p], v ∈
V (T ) \ {rT }}. Lin et. al. [5] showed that q(v) = l(vp(v))/z1∗ .

Lemma 5. [5] For each v ∈ V (T ) \ {rT }, q(v) = l(vp(v))/z1∗ .

Therefore, it is suffice to present an O(n log n)-time algorithm to compute z1∗ .


New Upper Bounds on Continuous Tree Edge-Partition Problem 41

Compute z1∗ It is not hard to obtain the following inequalities.

l(vp(v)) p × l(vp(v))
q(v) =  ∗ ≥ , v ∈ V \ {rT } (Lemma 2), (1)
lp(1) l(T )

 p × l(vp(v))
p≤  < p + n − 1. (2)
l(T )
v∈V \{rT }


We have the following result: v∈V \{rT } (q(v) −  p×l(vp(v))
l(T ) ) ≤ n − 1, by com-
bining Equation 2 and Lemma 4. It implies that 0 ≤ q(v) −  p×l(vp(v)) l(T ) ≤
n − 1, v ∈ V \ {rT } (Equation 1).
In other words, z1∗ is the largest feasible real number in Z1 = {l(vp(v))/a|a ∈
[ p×l(vp(v))
l(T ) ,  p×l(vp(v))
l(T ) + n − 1], v ∈ V \ {rT }}. The algorithm for the ratio
search problem presented in Section 4 can be used to compute z1∗ . By using the
linear time feasibility test (Lemma 3) and the result in Theorem 3, z1∗ can be
computed in O(n log n). Therefore, we have the following lemma.

Lemma 6. All q(v), v ∈ V (T ) \ {rT }, can be computed in O(n log n) time.

2.2 Main Idea and the Overall Approach

Our approach for the solution of the max-min tree edge-partition model is to
parametrically apply the linear-time feasibility test proposed by Halman and

Tamir [4], using l as the single parameter, to compute Z1 (lp(1) ) without spec-

ifying the value of lp(1) a priori. The approaches in [4,5] are also based on the
general parametric approach of Megiddo [7]. The main difference between our
approach and the two previous approaches [4,5] is described as follows. In their
approaches [4,5], one feasibility test is needed at each vertex. But we plan to
find all edge-partitions at all j th -level spines in an optimal solution by solving
O(log mj ) feasibility tests where mj is the number of vertices in j th -level spines,
j = 1, · · · , τ . Its details are presented in Section 2.3. Basically, we show that
the edge-partitions at j th -level spines in an optimal solution can be computed in
time O(n log n+mj log 2 mj ). Therefore, based upon Lemma 1, i.e., τ = O(log n),
the max-min CEP can be solved in O(n log 2 n) time since τj=1 mj = n.

Theorem 1. The max-min CEP problem can be solved in O(n log 2 n) time.

2.3 Computing Edge-Partitions at all j th -Level Spines, 1 ≤ j ≤ τ

We assume that, for any k ∈ (j, τ ], the number of cuts at edges in k th -level
spines are known, and that the remainder of each (j + 1)th -level spine is known.
In Fig. 1, an example is demonstrated. The bold pathes are 2nd -level spines and
the dashed parts represent the remainders contributed from 3rd -level spines. We
note that the remainder from each 3rd -level spine is a 1-degree polynomial of
42 R. Benkoczi, B. Bhattacharya, and Q. Shi

rT v1 v2 v3 v4 v5 v6 v7

v12 v25 v26 v31


v28
v8 v19
a1 − b1 × l∗
p v29
v9 v20 v27

v10 v21 a2 − b2 × l∗
p

v11

Fig. 1. 2nd -level spines and remainders of 3rd -level spines

∗ ∗
lp(1) in the form of η − κ × lp(1) where η is a positive real number and κ is a

nonnegative integer number, and that each remainder is less than lp(1) .
We first merge the remainders that are attached to the same vertex. For
∗ ∗
example, in Fig. 1, two remainders η1 − κ1 × lp(1) and η2 − κ2 × lp(1) from 3rd -
level spines are attached to vertex v20 , then we
 remove the two remainders and

attach v20 with a new remainder 2s=1 ηs − 2s=1 κs × lp(1) . We note that now

it is possible to have new remainders that are ≥ lp(1) .
Let λ be the number of j th -level spines and mj be the total number of vertices
on these j th -level spines. For each j th -level spine, i.e., Φ : {v0 , · · · , vt } (vt is the
root of Φ) in Fig. 2, we create a balanced binary tree structure over it. Before
we present the balanced binary tree structure over each j th -level spine Φ, more
notations and definitions are introduced as follows.
The edge connecting vi−1 and vi is denoted by ei , i = 1, · · · , t. We define the

remainder xi of each edge ei on Φ to be l(ei ) − (q(vi−1 ) − 1) × lp(1) , i = 1, · · · , t.

Note that vi is the parent of vi−1 in T and q(vi−1 ) = l(ei )/lp(1) . Therefore,
∗ ∗
0 < xi ≤ lp(1) . We continue with the hypothesis that 0 < xi < lp(1) . For each
i, 1 ≤ i < t, we denote by yi the remainder attached to vertex vi (after merging
remainders of (j + 1)th -level spines).

All xi ’s and yi ’s are in the form of η − κ × lp(1) where η is a positive real

number and κ is a nonnegative integer number. Let xi = ηi − κi × lp(1) and
  ∗
yk = ηk − κk × lp(1) where i = 1, · · · , t and k = 1, · · · , t − 1 (yt is undefined).
Fig. 2 demonstrates a balanced binary tree structure over a spine Φ, denoted
by TΦ , where the vertices on Φ are leaves of TΦ . We denote by Tu the subtree


u3 a (j − 1)th -level spine

u1 u2
x1 x2 x3 x4 x5 xt
Φ e1 e2
v0 v1 v2 v3 v4 v5 vt
y1 y2 y3 y4 y5

Fig. 2. A balanced binary tree structure over a j th -level spine Φ


New Upper Bounds on Continuous Tree Edge-Partition Problem 43

of TΦ rooted at a leaf or an internal node u of TΦ . Let V (Tu ) be the set of leaf


vertices in Tu . For example, in Fig. 2, V (Tv2 ) = {v2 } and V (Tu2 ) = {v3 , v4 }. The
term Iu is defined to be the smallest index of vertices contained in the subtree
Tu of TΦ , i.e., Iu1 = Iu3 = 1 and Iu2 = 3 in Fig. 2.

Preprocessing Step. In this step, we compute three sets of 1-degree poly-



nomials with unknown lp(1) , i.e., Zr , Zr , Zr , and sort elements in these sets
respectively. The three sets are described below. i i−1
For each vertex vi in V (Tu ), let z(u, i) = k=Iu xk + k=Iu yk and z  (u, i) =
i i th
k=Iu xk + k=Iu yk . Clearly, there are O(mj log mj ) such values in j -level
spines since each vertex belongs to O(log mj ) rooted subtrees. All these z(·, ·) and
z  (·, ·) values are in the form of η − κ× lp(1)

where η is a positive real number and
κ is a nonnegative integer number. Also, we have the following property about
these values.

Lemma 7. For each vertex vi in V (Tu ), z(u, i) < n×lp(1) and z  (u, i) < n×lp(1)

.

Let A be the set of constant parts of all these z(·, ·) 1-degree polynomials. As
we know, each ηi in A is associated with a nonnegative integer κi . According to
∗ ∗
Lemma 7, κi × lp(1) < ηi < (κi + n) × lp(1) for each ηi ∈ A. For each η ∈ A,
let q(η) be the smallest positive integer s.t. η/q(η) is feasible. In other words,

q(η) = η/lp(1) .

Let z2 be the largest feasible real number in Z2 = {ηi /fi |ηi ∈ A, fi ∈
[κi + 1, κi + n]}. We obtain that q(η) = η/z2∗ , for each η ∈ A [5]. Ac-
cording to Theorem 3 and Lemma 3, z2∗ can be computed in O(n log n) since
|A| = O(mj log mj ). Therefore, all q(η) (η ∈ A) can be computed in O(n log n)
time.

Definition of Zr and Zr : For each vertex vi in V (Tu ), we let zr (u, i) be the re-
mainder of z(u, i) and let zr (u, i) be yi + zr (u, i), i.e., if z(u, i) = η − κ × lp(1)

then
∗ ∗
zr (u, i) = z(u, i) − (q(η) − κ − 1) × lp(1). Clearly, 0 < zr (u, i) ≤ lp(1) . We continue

with the hypothesis that 0 < zr (u, i) < lp(1) . We define Zr (resp. Zr ) to be the
 ∗
set of these zr (·, ·) (resp. zr (·, ·)) 1-degree polynomials with unknown lp(1) .

Definitions of Zr : Let vi be a vertex lying in a j th -level spine Φ : {v0 , · · · , vt }. In


the balanced binary tree structure TΦ , there are O(log mj ) subtrees containing
all the vertices in path π(vi+1 , vt−1 ), say Tu1 , · · · , Tuh (where Iu1 = i + 1 < Iu2 <
Ius −1
· · · < Iuh < t). For each subtree Tus , 1 ≤ s ≤ h, let z  (us , i) = k=i+1 (xk + yk )
(see Fig. 3). Clearly, these z  (·, ·) values are 1-degree polynomials with unknown
lp∗ . Let zr (us , i) be the remainder of z  (us , i). Similar to the computation of
zr (·, ·), all these zr (·, ·) 1-degree polynomials can be computed in O(n log n)
time. We define Zr to be the set of these zr (·, ·) 1-degree polynomials.

Sort Elements in the Sets Zr , Zr , Zr : Obviously, each of Zr , Zr , and Zr is of size
O(mj log mj ). A comparison between two 1-degree polynomials with unknown
44 R. Benkoczi, B. Bhattacharya, and Q. Shi

us a (j − 1)th -level spine

u1

xk xIu1 xIu2 −1 xIus xIus+1 −1 xt


Φ
v0 vk vIu1 vIu2 −1 vIus vIus+1 −1 vt
yk yIu1 yIu2 −1 yIus yIus+1 −1
π(vk+1 , vIs −1 )

Fig. 3. z  (us , k), 1 ≤ s ≤ h


lp(1) can be resolved by solving one feasibility test. Under Valiant’s comparison
model [8], all the zr (·, ·) (resp. zr (·, ·), zr (·, ·)) can be sorted in O(n log 2 mj ) time
by applying Megiddo’s parametric-searching technique [7].
Actually, this sorting step can be speeded up by applying the result of Cole
[3]. In this way, the sorting can be done in time O(n log mj + mj log 2 mj ).
Finally, we have the following lemma.
Lemma 8. The computation and sorting of elements of Zr , Zr , Zr , that is, the
preprocessing step for computing edge-partitions at all j th -level spines, can be
done in time O(n log n + mj log 2 mj ), 1 ≤ j ≤ τ .

Algorithm. Our algorithm to compute the edge-partitions at j th -level spines


in an optimal solution consists of two steps.
The first step is to locate vertex-cuts on all j th -level spines in an optimal
solution. The second step is to compute the remainder of each j th -level spine.

First Step: Computing Vertex-cuts We explore a property (see Lemma 9) be-


tween two consecutive vertex-cuts in an optimal solution. Based upon this prop-
erty, given a vertex-cut on a j th -level spine, we are able to locate the next
vertex-cut efficiently if it exists.
Lemma 9. Refer to Fig. 4. Assume that there is a vertex-cut on vertex vi−1
and edge ei in an optimal solution. If the next vertex-cut is on vertex vk and
edge ek+1 (i ≤ k ≤ t − 1), then
l l−1
s=i (xs + ys ) (xs + ys ) + xh
 ∗ =  s=i ∗ , where i ≤ l < k,
lp(1) lp(1)

ei ek+1
xi−1 xi xl xk xk+1 xt
Φ
v0 vi−1 vi vl vk vk+1 vt
yi−1 yi yl yk yk+1

Fig. 4. Lemma 9 shows a property about the next vertex-cut on vertex vk and edge
ek+1 after vertex-cut on vertex vi−1 and edge ei
New Upper Bounds on Continuous Tree Edge-Partition Problem 45

and
k k−1
(xs + ys ) (xs + ys ) + xk
 s=i
∗ > s=i
∗ .
lp(1) lp(1)

Lemma 9 says that we can find all vertex-cuts on a j th -level spine Φ one by one,
starting from v0 (we can assume that there is a vertex-cut on v0 and e1 since v0
is a leaf vertex in T ). However, this approach is inefficient and its running time
is O(mj n) (in worst case, we need to solve O(mj ) feasibility tests).
In order to improve the running time of computing vertex-cuts on all j th -
level spines, we propose a parallel approach that is described as follows. We first
describe an algorithm to compute the next vertex-cut for a vertex vi in a j th -
level spine Φ : {v0 , · · · , vt } (0 ≤ i < t − 1) with the assumption that there is a
vertex-cut on vi and ei+1 , and then present our parallel approach to compute
next vertex-cuts for all vertices in j th -level spines.
Computing the next vertex-cut for a vertex vi : refer to Fig. 3. There are
O(log mj ) subtrees of TΦ containing all the vertices in path π(vi+1 , vt−1 ), i.e.,
Tu1 , · · · , Tuh (Iu1 = i+1 < Iu2 < · · · < Iuh < t). For each subtree Tus , 1 ≤ s ≤ h,
we locate the first vertex vk ∈ V (Tus ) s.t. the following condition is satisfied.
k k−1
a=i+1 (xa + ya ) a=i+1 (xa + ya ) + xk
C1:  ∗ > ∗ .
lp(1) lp(1)

Note that we might not be able to find such a vertex in some subtrees. If such
vertex does not exist for any subtree Tus , 1 ≤ s ≤ h, then next vertex-cut does
not exist after vi on spine Φ. Otherwise, let Tus1 be the first subtree in which
such type of vertex, say vi1 , does exist. It is not difficult to see that the next
vertex-cut after vi will be on vertex vi1 and edge ei1+1 .
We next show an approach to locate the first vertex vk ∈ V (Tus ) (1 ≤ s ≤ h)
s.t. C1 is satisfied.
We depict important information of vertices in V (Tus ), 1 ≤ s ≤ h, using a
two-dimensional diagram (see Fig. 5). For each vk ∈ V (Tus ), the horizontal co-
ordinate of vk in the two-dimensional diagram corresponds to zr (us , k) and the
vertical coordinate of vk corresponds to zr (us , k). Note that these zr (us , ·) and
zr (us , ·) values are 1-degree polynomials and are already sorted in the prepro-
cessing step.
We denote by I the region in the two-dimensional diagram that contains all

points whose horizontal coordinates are in [0, lp(1) − zr (us , i)] and whose vertical
∗ 
coordinates are in (lp(1) − zr (us , i), ∞). We denote by II the region in the two-
dimensional diagram that contains all points whose horizontal coordinates are in

(lp(1) − zr (us , i), ∞) and whose vertical coordinates are in (2lp(1)

− zr (us , i), ∞).

Lemma 10. Suppose that there is no vertex-cut in π(vi+1 , vIs −1 ). Then, there
is a vertex-cut in π(vIs , vIs+1 −1 ) if and only if I ∪ II contains at least one point.
Also, if points exist in I ∪ II, let i1 be the smallest index among them, then the
first vertex-cut in π(vIs , vIs+1 −1 ) is on vertex vi1 and edge ei1+1 .
46 R. Benkoczi, B. Bhattacharya, and Q. Shi

zr (us , i)
2l∗  II
p − zr (us , k)

I vi ∈ V (Tus )

l∗ 
p − zr (us , k)

zr (us , i)
0 l∗ 
p − zr (us , k)

Fig. 5. Check if there is a vertex-cut in Tus and locate it if exists

Using priority search tree structure [6] to maintain the two-dimensional diagram
for subtree Tus , we can check if there exists a vertex-cut and locate it if exists
after O(|V (Tus )|) ⊆ O(log mj ) comparisons between 1-degree polynomials with

unknown lp(1) (one feasibility test needs to be resolved for each comparison). We
note that the vertical and horizontal coordinates of points are 1-degree polyno-
mials and are already sorted in the preprocessing step. Hence, we are able to
create the priority search tree in O(|V (Tus )| log |V (Tus )|) time [6].
Computing next vertex-cuts for vertices in j th -level spines: Since it is ineffi-
cient to locate vertex-cuts one by one, in order to speed up the computation,
we can compute them in a parallel way. For each vertex v in a j th -level spine,
we need to locate candidates for its next vertex-cut among O(log mj ) subtrees.
As shown above, a candidate in a subtree (for v) can be computed in O(log mj )
steps where each step is a comparison between two 1-degree polynomials with

unknown lp(1) .
Therefore, the computation of all possible vertex-cuts can be done in O(log mj )
parallel steps by using O(mj log mj ) processors (there are O(log mj ) processors
associated with each vertex), where each step is a comparison between two 1-

degree polynomials with unknown lp(1) . By applying the idea of Cole [3], the
computation can be done in time O(n log mj + mj log 2 mj ).

Second Step: Computing Remainders of Spines After locating vertex-cuts on all


j th -level spines in an optimal solution, we are able to compute the remainder
of each j th -level spine efficiently. For a j th -level spine Φ : {v0 , · · · , vt }, assume
that the last vertex-cut is on vertex vk and edge ek+1 , 0 ≤ k ≤ t − 1 (k = 0
means that there is no vertex-cut on Φ). Then the remainder of spine Φ is the
t t−1
remainder of i=k+1 xi + i=k+1 yi . It is trivial that the 1-degree polynomial
t t−1 ∗
i=k+1 xi + i=k+1 yi is less than n × lp(1) . We need to compute the remainders
of λ 1-degree polynomials (λ is the number of j th -level spines). Similar to the
computation of zr (·, ·) (in the preprocessing step), all these remainders can be
computed in O(n log n) time.
From the above discussion, the total effort (including the effort for the pre-
processing step) to compute the edge-partitions in j th -level spines in an optimal
solution is O(n log n + mj log 2 mj ). It completes the proof of Theorem 1.
New Upper Bounds on Continuous Tree Edge-Partition Problem 47

3 The Min-Max Continuous Edge-Partition Problem

Unfortunately, we cannot use the same approach to solve the min-max CEP
problem as the one for the max-min CEP problem. However, from the linear-
time feasibility test [4] for the min-max problem, we can see that all current
cluster vertices can be handled in a parallel way. Due to page restrictions our
algorithm to compute the edge-partitions at all current cluster vertices in an
optimal solution, by solving logarithmic feasibility tests, is omitted here.
We have the following result for the min-max CEP problem.

Theorem 2. The continuous min-max


 tree edge-partitioning problem can be
solved in O(nhT log n) (or O(n v∈V (T ) δT (v))) time, where hT is the height
of the underlying tree network and δT (v) is the degree of vertex v.

4 An Algorithm for the Ratio Search Problem

In this section we propose an algorithm for the ratio search problem (see Defini-
tion 1). Let a∗ , b∗ be numbers s.t. b∗ ∈ Δ, a∗ is an integer number in [g ∗ +1, g ∗ +q]
(g ∗ is the value associated with b∗ ), and z ∗ = b∗ /a∗ . Without loss of any gener-
ality, we assume that F (0) ≥ t.

Notation Δ : Let Δ be the subset of Δ s.t. F (bi /(gi + q)) ≥ t for any bi ∈ Δ .
Clearly, b∗ ∈ Δ since F (·) is non-increasing function. For each bi ∈ Δ , we
denote by a(bi ) the smallest integer number in [gi +1, gi +q] with F (b/a(bi )) ≥ t.

Notations Δ1 , Δ2 : Let Δ1 = {bi |a(bi ) > gi + 1, bi ∈ Δ } and let Δ2 = Δ \ Δ1 .
Obviously, F (bi /(gi + 1)) ≥ t for any bi ∈ Δ2 , but, F (bi /(gi + 1)) < t for any
bi ∈ Δ1 . We can identify the elements in Δ1 and Δ2 by sorting the elements in
Δ and evaluating values of F (·) for O(log |Δ |) elements in Δ .

Notation z2∗ : Let z2∗ = maxbi ∈Δ2 bi /(gi + 1). It is trivial to see that z ∗ ≥ z2∗
since F (z2∗ ) ≥ t. In the following, we assume that z ∗ > z2∗ .

The Case When z ∗ > z2∗ In this case, b∗ must be in Δ1 . We define kb (z) = b/z
for each b ∈ Δ1 where z is a parameter in (0, ∞). Let f (z) = b∈Δ kb (z). We
1
observe that f (z) is a step function with jumps, including the jump point at z ∗ .

Notations a , z  : Let a be the smallest integer number s.t. F (( b∈Δ b)/a ) ≥
 1
t. Let z  = ( b∈Δ b)/a .
1

 
Lemma 11. bi ∈Δ1 gi + |Δ1 | < a ≤ bi ∈Δ1 gi + q × |Δ1 |.

Since there are at most (q − 1) × |Δ1 | candidate integer values for a (Lemma
11), we are able to compute a in time O(k + tF × (log q + log k)) (note that
|Δ1 | ≤ k).
48 R. Benkoczi, B. Bhattacharya, and Q. Shi


For any b ∈ Δ1 , we can see that b/a(b) < ( bi ∈Δ bi )/(a − 1) since
 1
F (( bi ∈Δ bi )/(a − 1)) < t and F (b/a(b)) ≥ t. Similarly, for any b ∈ Δ1 ,
1
z  < b/(a(b) − 1) since F (z  ) ≥t and F (b/(a(b) − 1)) < t (note that a(b)  > 1).
For any b ∈ Δ1 , b/a(b) < ( bi ∈Δ bi )/(a − 1) ⇒ a(b) > b(a − 1)/ bi ∈Δ bi
1 1
⇒ a(b) > (b/z  ) − 1 (since z  = ( b∈Δ b)/a ); and z  < b/(a(b) − 1) ⇒ a(b) <
1
(b/z  ) + 1. Therefore, (b/z  ) − 1 < a(b) < (b/z  ) + 1 for any b ∈ Δ1 . We note
that a(b) is an integer number and then there are at most two integer numbers
between (b/z  ) − 1 and (b/z  ) + 1 (not including (b/z  ) − 1, (b/z ) + 1), denoted
by a1b and a2b . It is not difficult to see that z ∗ is in the set {b/a1b , b/a2b |b ∈ Δ1 } if
z ∗ > z2∗ .
The finding can be done by using the prune-and-search technique. First, we
compute the median x of the numbers in {b/a1b , b/a2b |b ∈ Δ1 } by the linear-time
select algorithm in [2]. If F (x) ≥ t we prune away all numbers smaller than x
in this set; otherwise, we prune away all numbers larger than x. The process is
repeated on the remaining numbers. Note that the size of this set is no more
than 2|Δ1 | ≤ 2k. Therefore, the above finding of the largest real number z3∗ in
{b/a1b , b/a2b |b ∈ Δ1 } such that F (z3∗ ) ≥ t requires O(k + tF × log k) time.
Based upon the above discussion, an algorithm for the ratio search problem
is presented as follows (Algorithm 1).

Algorithm 1. Ratio-Search(q, F, t, Δ)
Input: an integer q > 0, a non-increasing function F, a real number t, a set Δ of k non-
negative real numbers, and each real number bi in Δ is associated with a nonnegative
integer gi , i = 1, · · · , k.
Output: the largest real number z in {bi /ai |ai ∈ [gi + 1, gi + q], bi ∈ Δ} such that
F(z) ≥ t.
begin
1: b ← the largest number in {bi /(gi + q)|bi ∈ Δ} s.t. F(b ) ≥ t.
2: Δ ← the subset of Δ that contains all the numbers bi ∈ Δ with bi /(gi + q) ≤ b .
3: z2∗ ← the largest real number in {bi /(gi + 1)|bi ∈ Δ } ∪ {0} s.t. F(z2∗ ) ≥ t.
4: Δ1 ← the subset of Δ that contains all the  ∗
numbers bi ∈ Δ with bi /(gi + 1) > z2 .
5: a ← the smallest integer number s.t. F(( b∈Δ b)/a ) ≥ t.
 1
6: z  ← ( b∈Δ b)/a .
1
7: a1b , a2b ← the two integers between (b/z  ) − 1 and (b/z  ) + 1, for each b ∈ Δ1 .
8: z3∗ ← the largest real number in {b/a1b , b/a2b |b ∈ Δ1 } such that F(z3∗ ) ≥ t.
9: return max {z2∗ , z3∗ }.
end

The time complexity of Algorithm 1 is analyzed as follows. Both Line 1 and


Line 3 can be done in time O(k + tF × log k) by the prune-and-search technique
described above for completing Line 8. It is easy to see that the steps in Line
2, Line 4, Line 6, and Line 7 can be done in O(k) time. It is known that Line 5
can be completed in time O(k + tF × (log q + log k)). Therefore, the ratio search
problem can be solved in time O(k + tF × (log q + log k)).
New Upper Bounds on Continuous Tree Edge-Partition Problem 49

Theorem 3. The ratio search problem can be solved in time O(k + tF × (log q +
log k)).

5 Summary
In this paper we study continuous tree p-edge-partition problems on a tree net-
work, and propose efficient algorithms for the max-min and min-max problems.
Similar to the approaches developed in [4,5], our approaches are also based
on the general parametric approach of Megiddo [7]. The main difference is that
in their approaches one feasibility test is needed at each vertex. However, in
our approach for the max-min problem, we build a spine tree decomposition
structure [1] over the underlying tree and locate edge-partitions at all the spines
at the same level by solving logarithmic feasibility tests. In our approach for the
min-max problem, we locate the edge-partitions at all current cluster vertices by
solving logarithmic feasibility tests. In this way, we are able to solve the max-
min problem in sub-quadratic time and to solve the min-max problem in time
O(nhT log n).
In [4], Halman and Tamir mentioned that their algorithms for the continu-
ous tree p-edge-partition problems can be extended to yield polynomial algo-
rithms of the same complexity for the problems in cactus networks, that is,
O(n2 log (min {p, n})). We conjecture that our algorithms for tree networks can
also be extended to cactus networks.

References
1. Benkoczi, R.: Cardinality constrainted facility location problems in trees, Ph.D.
Thesis, School of computing secience, SFU, Canada (2004)
2. Blum, M., Floyd, R.W., Rivest, R.L., Tarjan, R.E.: Time bounds for selection. J.
Comput. Sys. Sci. 7(4), 448–461 (1973)
3. Cole, R.: Slowing down sorting networks to obtain faster sorting algorithms. J.
ACM 34, 200–208 (1987)
4. Halman, N., Tamir, A.: Continuous bottleneck tree partitioning problems. Disc.
App. Math. 140, 185–206 (2004)
5. Lin, J.-J., Chan, C.-Y., Wang, B.-F.: Improved algorithms for the continuous tree
edge-partition problems. Disc. App. Math. (submitted, 2007)
6. McCreight, E.M.: Priority search trees. SIAM J. Comput. 14(2), 257–276 (1985)
7. Megiddo, N.: Applying parallel computation algorithms in the design of serial algo-
rithms. J. ACM 30(4), 852–865 (1983)
8. Valiant, L.G.: Parallelism in comparison problems. SIAM J. Comput. 4, 348–355
(1975)
A Meeting Scheduling Problem
Respecting Time and Space

Florian Berger1, Rolf Klein1 , Doron Nussbaum2 ,


Jörg-Rüdiger Sack2 , and Jiehua Yi2
1
Institute of Computer Science
University of Bonn
53117 Bonn, Germany
{berger,rolf.klein}@cs.uni-bonn.de
2
School of Computer Science
Carleton University
Ottawa, Canada K1S 5B6
{nussbaum,sack,jyi}@scs.carleton.ca

Abstract. We consider the problem of determining suitable meeting


times and locations for a group of participants wishing to schedule a
new meeting subject to already scheduled meetings possibly held at a
number of different locations. Each participant must be able to reach
the new meeting location, attend for the entire duration, and reach the
next meeting location on time. In particular, we give a solution to the
problem instance where each participant has two scheduled meetings
separated by a free time interval. In [2], we presented an O(n log n) al-
gorithm for n participants obtained by purely geometrical arguments.
Our new approach uses the concept of LP-type problems and leads to a
randomized algorithm with expected running time O(n).

1 Introduction
We consider the following problem: A set of people, called participants, would like
to schedule a meeting. The participants are located at different sites and would
like to find a common point for the meeting to be held. These sites are rather
far from each other, so that the travel times to the meeting point are important.
We assume that the travel distances between locations can be measured using
the Euclidean distance in the plane.
Participants have individual schedules which specify: the earliest possible time
they can leave their current location and the latest possible time they must arrive
at their next location. We wish to solve the problem of finding a meeting point
so that the time for all participants to meet is maximized.
Our general objective for this research is to derive efficient algorithms for solv-
ing general meeting scheduling problems, to find approximate solutions, where
appropriate, to implement our solutions, and to integrate them into applica-
tions that allow users who are connected over a network to schedule meetings.
Currently meeting scheduling systems take into consideration only time and not
location/geometry, see e.g. [1,6].

R. Fleischer and J. Xu (Eds.): AAIM 2008, LNCS 5034, pp. 50–59, 2008.

c Springer-Verlag Berlin Heidelberg 2008
A Meeting Scheduling Problem Respecting Time and Space 51

2 Problem Definition
We assume a situation where all participants can travel at the same, constant
speed v in the plane. Since the precise value of v is not critical, we may as well
assume that v = 1 holds. Then, the time it takes to travel from location l to
location l is given by the Euclidean distance l − l .
Let M := {M1 , . . . , Mn } denote the set of participants. The ith participant
pre pre
Mi has a previous meeting at location li ∈ R2 that lasts until time ti ∈ R.
He is due for a subsequent meeting that starts at time tisub ∈ R at location
lisub ∈ R2 .
We want to schedule a meeting of longest possible duration in between the
previous and subsequent meetings of all participants (or report that no such
meeting is possible).
To solve our problem, we have to find a location x ∈ R2 such that the time
interval between the arrival of the last participants from their previous meetings
at time
 
pre pre
S(x) := max ti + li − x
1≤i≤n

and the departure of the first participants to their subsequent meetings at


time
 
E(x) := min tisub − lisub − x
1≤i≤n

is maximized.
We define f (x) := E(x) − S(x). Of course, no common meeting is possible at
locations x with f (x) < 0, but we can easily check this condition once we have
computed a location maximizing f .
In the following, we can assume that there is a solution x with f (x) > 0,
because the optimum meeting points are not changed if we increase f by a
pre
constant. For example, if we define c := f (l1 )−1 and replace all tsub
i values by
sub
ti −c, this leads to a transformed instance where a meeting of positive duration
pre
is possible, because all participants can meet for one time unit at location l1 .
If we can find an optimum solution for the transformed instance, this also leads
to an optimum solution for the original instance.
As an example for the meeting scheduling problem, we consider the following
instance, where every participant has to return to the point of his previous
meeting: ∀i : 1 ≤ i ≤ n
pre
– li = lisub
pre
– ti = 0
pre pre
– tsub
i = C := 1 + 2 max2≤j≤n l1 − lj 
pre
The way we have chosen C ensures that f (l1 ) = 1, so there are feasible lo-
cations for the new meeting. The best one can do for this instance is to find a
52 F. Berger et al.

location where the participants can arrive earliest, because of the symmetry this
will also be a location where they can stay longest.
Every participant can reach the location x at time S(x). This means that
pre
all li are within a circle with midpoint x and radius S(x). The center of the
pre
Smallest Enclosing Disk of the li corresponds to the optimum solution.
There is a randomized algorithm for computing the smallest enclosing disk of
n points in the plane with expected running time O(n), see Welzl [8]. LP-type
problems, introduced by Sharir and Welzl [7], build an abstract framework for
Welzl’s algorithm for the smallest enclosing disk. We will use this concept for
developing the algorithm in Section 4.

3 Geometric Interpretation of the Problem


The possible locations participant Mi can reach, once his previous meeting has
pre
ended, are given by a system of circles centered at li that start expanding at
pre
time ti . If we use the time as a third coordinate, the expanding circles for
participant Mi form a vertical cone PRE i with apex angle π2 whose bottommost
pre pre pre
point is its apex ((li )X , (li )Y , ti ). Let SUB i denote the corresponding
cone for the subsequent meeting, so SUB i is a vertical cone whose uppermost
point is its apex ((lisub )X , (lisub )Y , tsub
i ).
We define PRE := ∩ni=1 PRE i , SUB := ∩ni=1 SUB i and F := PRE ∩ SUB.
We call F the set of feasible points because (lX , lY , t) ∈ F means that all
participants can meet at location l at time t. Observe that F is convex as the
intersection of convex sets. A meeting at location l is possible from time t1 to t2 ,
if and only if the vertical line segment with endpoints (lX , lY , t1 ) and (lX , lY , t2 )
is fully contained in F . Consequently, we have to find a vertical line segment of
maximum length contained in F .
The projection of the cones in PRE on the XY -plane forms a furthest site
Voronoi diagram of circles. The same holds for the cones in SUB. Within each cell

pre
pre
t1 l2
pre
l1
x
π
Fig. 1. PRE is the intersection of upward cones with apex angle 2
A Meeting Scheduling Problem Respecting Time and Space 53

of the overlay of these two Voronoi diagrams, a point corresponding to a vertical


line segment of maximum length can be found in time O(1). Thus, inspecting
every cell of the overlay leads to an algorithm solving the problem in time O(n2 ).
In [2], we presented an O(n log n) algorithm to find a vertical line segment of
maximum length. To this end, we use two planes sweeping upwards, one of them
through the set PRE and the other one through the set SUB. The sweep consists
of different phases. For each phase, there are at most 4 cones that determine the
size of the longest vertical segment within this phase. This means that the the
longest vertical line segment can be computed in time O(1) for each phase.
Because there are only O(n) many phases, the sweeping can be done in time
O(n). Since the algorithm starts with computing furthest site Voronoi diagrams
of circles, its running time is increasesd to O(n log n).

4 The LP-Approach
In this section, we provide a solution to the meeting scheduling problem using
the concept of LP-type problems. We will show that the problem can be stated
as an LP-type problem and its dimension equals 4. This enables us to compute
a meeting of longest duration for n participants in expected time O(n).

4.1 General Framework of LP-Type Problems


LP-type problems were introduced by Sharir and Welzl [7]. Here we will follow
the slightly modified description by Matoušek [3]. We describe the problem as a
maximization problem instead of a minimization problem.
A maximization problem is a pair (H, w), where H is a finite set, and w :
2H → W is a function with values in a linearly ordered set (W, ≤). The elements
of H are called the constraints, and for a subset G ⊂ H, w(G) is called the value
of G. Intuitively, the value w(G) for a subset G of constraints stands for the
largest value attainable by a certain objective function while satisfying all the
constraints of G. The goal is to find w(H). The set W is assumed to possess
a largest element denoted by ∞ (intuitively, it stands for ‘optimum undefined’)
and usually also a smallest element −∞ (with intuitive meaning ‘no feasible
solution exists’).
The maximization problem (H, w) is called an LP-type problem if the following
two axioms are satisfied:
Axiom 1. (Monotonicity) For any F, G with F ⊂ G ⊂ H , w(F ) ≥ w(G).
Axiom 2. (Locality) For any F ⊂ G ⊂ H with w(F ) = w(G) < ∞ and any
h ∈ H, w(G ∪ {h}) < w(G) implies that also w(F ∪ {h}) < w(F ).
We recall some terminology from the theory of LP-type problems. A basis B is
a set of constraints with w(B  ) > w(B) for all proper subsets B  of B. A basis for
a subset G of H is a basis B ⊂ G with w(B) = w(G). The maximum cardinality
of any basis is called the dimension of (H, w) and denoted by dim(H, w). We
say that a constraint h ∈ H violates a set G if w(G ∪ {h}) < w(G).
54 F. Berger et al.

There are several algorithms for solving an LP-type problem of constant


bounded dimension in time O(|H|). The algorithms differ in the assumptions
on the primitive operations available for the considered problem. The primitive
operations of Sharir and Welzl are:
Violation Test. Given a basis B and a constraint h ∈ H, decide whether h
violates B.
Basis Change. Given a basis B and a constraint h, return (some) basis for
B ∪ {h}.
Initial Basis. In the beginning, we have some basis B0 with w(B0 ) < ∞.
The expected number of primitive operations performed by the algorithm
by Sharir and Welzl is O(|H|) for any LP-type problem (H, w) with constant
bounded dimension.

4.2 Preparations for Applying the General Framework


Is the meeting scheduling problem, as we stated it until now, an LP-type prob-
lem, if we consider the set of participants M as the set of constraints and the
function w maps a subset M  ⊂ M to the optimum meeting duration for all
participants in M  ? The answer to this question is negative, because Axiom 2
does not hold in general. Figure 2 shows a situation where Axiom 2 does not
hold.
We will establish that the problem becomes an LP-type problem if we lexico-
graphically maximize (f, S) instead of just maximizing f .
As Figure 2 indicates, we have to analyze those situations where f obtains its
maximum in more than one point.
Lemma 1. |S(x1 ) − S(x2 )| = x1 − x2  holds, if both locations x1 , x2 maxi-
mize f .
Proof. Since the set of feasible points F is convex, the line segment BS from
(x1 , S(x1 )) to (x2 , S(x2 )) is completely contained in F . Analogously, the line
segment BE from (x1 , E(x1 )) to (x2 , E(x2 )) is in F .

l2sub = (1, 2) l3sub = (5, 2)


tsub
2 = 3 tsub
3 = 7

l1pre = (0, 1) l1sub = (6, 1)


tpre
1 = 0 tsub
1 = 7

l2pre = (1, 0) l3pre = (5, 0)


tpre
2 = 0 tpre
3 = 4

Fig. 2. Axiom 2 does not hold for the participants M1 , M2 , M3 , if we use x → f (x) as
objective function. For the sets F := {M1 }, G := {M1 , M2 } and h := M3 , we obtain
w(F ) = w(G) = 1 and w(G ∪ {h}) < w(G), but 1 = w(F ∪ {h}) = w(F ).
A Meeting Scheduling Problem Respecting Time and Space 55

(x2, E(x2))

BE
(x2, S(x2))

(x1, E(x1)) BS

(x1, S(x1))

Fig. 3. Every vertical segment of maximum length contained in this parallelogram


corresponds to a meeting of longest duration

If (l, z) ∈ BS were an inner point of F , we could schedule a meeting at l of


longer duration than at x1 . But this would be a contradiction to x1 maximizing f ,
so BS ⊂ ∂F holds. There must be some cone PRE j whose boundary contains BS .
Otherwise, the line segment BS could intersect every cone’s boundary in at most 2
points. Finally, BS ⊂ ∂PRE j implies that BS is a line segment of slope 1.

Lemma 2. The locations maximizing f form a line segment.

Proof. We have to show that every 3 locations maximizing f are collinear. Let
x1 , x2 , x3 denote locations maximizing f , such that S(x1 ) ≤ S(x2 ) ≤ S(x3 ). By
Lemma 1, we conclude x3 − x1  = S(x3 ) − S(x1 ) = S(x3 ) − S(x2 ) + S(x2 ) −
S(x1 ) = x3 − x2  + x2 − x1 . So, the triangle inequality holds with equality,
which means that x1 , x2 , x3 are collinear.

Lemma 3. The maximum meeting duration is already determined by at most 2


participants, if f obtains its maximum in more than one point.

Proof. Let x1 and x2 denote distinct points where f obtains its maximum and let
BS , BE and PRE j be defined as in the proof of Lemma 1. An analogous argument
to the one showing that BS ⊂ ∂PRE j leads to the fact that there is a downward
cone SUB k such that BE ⊂ ∂SUB k . The optimum meeting duration T is obtained
pre
for a subset of the line segment lj lksub . But even a 2-participant-meeting just
of Mj and Mk has maximum duration T . If j = k, which is also possible, the
maximum meeting duration is already determined by only one participant.

Lemma 4. There is a unique location lexicographically maximizing (f (x), S(x)).

Proof. We define C := {x ∈ R2 : l1pre − x ≤ tsub pre pre


1 − t1 − f (l1 )}. This implies
pre
f (x) < f (l1 ) for all x ∈ R \C. Due to the compactness of C and the continuity
2
56 F. Berger et al.

of f |C , the function f |C obtains its maximum T on C. Since T ≥ f (l1pre ) > f (x)


for all x ∈ R2 \ C, T is also the maximum of f on R2 . The continuous function
S|f −1 (T ) obtains its maximum t on the compact set f −1 (T ). Thanks to Lemma 1,
there can be at most one point x, such that f (x) = T and S(x) = t. Hence the
optimum point is unique.

Now, we introduce some terminology. For M  ⊂ M we refer to OPT M  as the


lexicographically optimum pair (f (x), S(x)) for a meeting of all participants in
M  . Let f |M  (x) denote the maximum duration for a meeting at location x of
all participants in M  . Let X(OPT M  ) denote the unique location where the
optimum meeting is held.

4.3 Application of the General Framework


We consider the set of participants M as the set of constraints. The function w
maps a subset M  ⊂ M to the pair w(M  ) := OPT M  . Those pairs are compared
lexicographically.

Theorem 1. To find the optimum meeting for a set of participants is an LP-


type problem.

Proof. Clearly, a meeting, which is possible for a set of participants G, is also


possible for every subset of G. Thus Axiom 1 holds.
To show that Axiom 2 holds, we consider sets F ⊂ G ⊂ M and a partici-
pant h ∈ M such that OPT F = OPT G and OPT G∪{h} < OPT G . According
to Lemma 4, every point different from X(OPT F ) leads to a solution worse
than OPT F = OPT G already for the participants in F . Hence, every point dif-
ferent from X(OPT F ) leads also for the participants in G to a solution worse
than OPT F = OPT G . We conclude X(OPT F ) = X(OPT G ). The inequal-
ity OPT G∪{h} < OPT G means that participant h cannot stay at the location
X(OPT G ) for the whole time interval [S|G (X(OPT G )), E|G (X(OPT G ))]. But,
this also means that he cannot stay the whole time interval at X(OPT F ) and
we conclude OPT F ∪{h} < OPT F .

Now, we have to look at the dimension of the problem. Figure 4 shows that the
dimension is at least 4.
The proof that the dimension of the problem is at most 4 uses Helly’s theorem.
A similar argument using Helly’s theorem for a related question concerning the
weighted Euclidean 1-center problem is described by Megiddo [4].
Theorem 2 (Helly’s Theorem [5]). Let C1 , . . . , Cn be convex sets in Rd ,
n ≥ d + 1. Suppose that the intersection of every d + 1 of these sets is nonempty.
Then the intersection of all the Ci is nonempty.

Theorem 3. The dimension of the meeting scheduling problem is at most 4.

Proof. Let us assume that B = {Mi1 , . . . , Mib } is a basis and b = |B| > 4 holds.
For every 4-element subset W of {PRE i1 ∩ SUB i1 , . . . , PRE ib ∩ SUB ib }, let TW
A Meeting Scheduling Problem Respecting Time and Space 57

tpre
2 = −2, tsub
2 =2 l3pre = l3sub = (1, 1)
l2pre = l2sub = (0, 1) tpre
3 = 0, tsub
3 =4

l1pre = l1sub = (0, 0) l4pre = l4sub = (1, 0)


tpre
1 = 0, tsub
1 =4 tpre
4 = −2, tsub
4 =2

Fig. 4. Set of 4 participants {M1 , M2 , M3 , M4 } and their way to the optimum meeting
location. The start of their optimum meeting is determined by participants M1 and
M3 , while the end is determined by M2 and M4 . Removing any participant enables a
meeting with longer duration. If one, for example, removes participant M1 , the optimum
meeting location becomes (1, 1) and the duration of the optimum meeting increases by

2 − 1.

denote the maximum length of a vertical segment in the intersection of the sets
in W . Note that, by the assumption that there is a solution with f (x) > 0,
we know that the intersection of the sets in W is nonempty for every W . We
define T  to be the minimum TW obtained for all possibilities of W . Clearly, T 
is an upper bound on the length T of a maximum vertical line segment con-
tained in the set of feasible points for the participants in B. In fact, we can even
show that T = T  holds. To this end, let SUB ik denote the vertical cone with
apex angle π whose uppermost point is its apex ((lsub ) , (lsub ) , tsub − T ) for
2 ik X ik Y ik
1 ≤ k ≤ b. We observe that all sets in {PRE i1 ∩ SUB i1 , . . . , PRE ib ∩ SUB ib }
are convex and, by definition of T  , the intersection of every 4 of them is
nonempty. By Helly’s theorem, this implies that the intersection of all sets in
{PRE i1 ∩ SUB i1 , . . . , PRE ib ∩ SUB ib } is nonempty. But a point in this intersec-
tion corresponds to a vertical line segment of length at least T  in the intersection
of the original cones {PRE i1 , . . . , PRE ib , SUB i1 , . . . , SUB ib }. This means, that
T ≥ T  and together with T ≤ T  we conclude that T = T  holds.
Let V denote a 4-element subset of B such that f |V and f |B obtain the same
value as maximum. If f |V obtains its maximum only in one single point x∗ ,
this point must be the optimum meeting point for V as well as for B. But in
this case S|V (x∗ ) = S|B (x∗ ) holds, which means OPT V = OPT B and we get
contradiction to B being a basis.
So, we must consider the case that f |V obtains its maximum in more than
one point. By Lemma 3, there is a subset Z ⊂ V of at most 2 participants
58 F. Berger et al.

such that f |Z , f |V and f |B obtain the same value as maximum. Let xZ denote
the optimum meeting location for the participants in Z and xB the optimum
meeting location for the participants in B. If xZ = xB , we are done.
By Lemma 2, already the participants in Z can schedule meetings of maximum
duration only in locations on the line through xB and xZ . This means, we can
restrict our examination to the plane containing the vertical segments at xB and
xZ . Figure 5 shows the curves resulting from intersecting this plane with the
downward cones corresponding to participants in B \ Z. Since all participants
in B can reach xB at S|Z (xB ), they can also reach xZ at S|Z (xB ) + xZ − xB ,
which equals SZ (xZ ) by Lemma 1. Hence, the upward cones corresponding to
participants of B \ Z are not important.

(xZ , E|Z (xZ ))

(xZ , S|Z (xZ ))

(xB , E|Z (xB ))

(xB , S|Z (xB ))

Fig. 5. The longest meeting duration that is possible for the participants in Z is the
same as for the participants in B. The dotted curves correspond to downward cones in
B \ Z.

The optimality of xB ensures that there is a downward cone PRE ij which


contains the point (XB , E|Z (XB )) on its boundary and prevents improving the
solution by moving from xB into the direction of xZ . We conclude, that the
optimum meeting for the at most 3 participants in Z ∪ {Mij } is as good as for
all participants in B, which is a contradiction to B being a basis.
Let us recall the primitive operations used for the algorithm by Sharir and Welzl.
The optimum solution can be found in time O(1) for at most 5 participants. To
this end, we could for example use the algorithm we presented in [2]. We conclude
that the primitive operations basis change and violation test can be done in time
O(1). Finally, any participant can be used as initial basis.
Now we can state our main result:
Theorem 4. We can compute a meeting of longest duration (or determine that
no meeting is possible) for n participants in expected time O(n).
A Meeting Scheduling Problem Respecting Time and Space 59

5 Summary and Current Work

The paper addresses the problem which is finding a suitable place and time for
a group of people to meet. By taking into consideration both time and space
limitations of the participants, this paper distinguishes itself from the current
practice of scheduling meetings only based on time limitations. We have seen
that the problem we consider turned out to be an LP-type problem of small
dimension.
One interesting problem we are currently working on is the following: Given
a set of n participants and a parameter k, find a meeting point which maximizes
the duration for a meeting of at least n − k participants. An optimum meeting
for all except k participants can be found by inspecting the optimum meeting
point for every subset of 4 participants, but we would like to find a fast algo-
rithm. However, a subquadratic solution in the full range of k seems unlikely,
because Matoušek [3] mentions that already the problem to find the smallest
circle enclosing at least q points of a set of n points in the plane, is 3SUM-hard.
The techniques described in this paper appear to be generalizable to the
setting of different speeds among participants. We are currently examining this
problem instance.

Acknowledgments. We would like to thank David Kirkpatrick and Emo Welzl


for very helpful discussions.

References
1. BenHassine, A., Ho, T.: An agent-based approach to solve dynamic meeting
scheduling problems with preferences. Engineering Applications of Artificial Intelli-
gence 20(6), 857–873 (2007)
2. Klein, R., Yi, J., Nussbaum, D., Sack, J.-R.: How to Fit in another Meeting. In: 2nd
International Conference on Collaborative Computing (CollaborateCom 2006), At-
lanta, November 2006, IEEE, Los Alamitos (2006), http://ieeexplore.ieee.org
3. Matoušek, J.: On Geometric Optimization with Few Violated Constraints. In: Sym-
posium on Computational Geometry, pp. 312–321 (1994)
4. Megiddo, N.: The weighted Euclidean 1-center problem. Math. Oper. Res. 8, 498–
504 (1983)
5. Radon, J.: Mengen konvexer Körper, die einen gemeinsamen Punkt enthalten. Math.
Ann. 83, 113–115 (1921)
6. Shakshuki, E., Koo, H.-H., Benoit, D., Silver, D.: A distributed multi-agent meeting
scheduler. Journal of Computer and System Sciences 74(2), 279–296 (2008)
7. Sharir, M., Welzl, E.: A combinatorial bound for linear programming and related
problems. In: Finkel, A., Jantzen, M. (eds.) STACS 1992. LNCS, vol. 577, pp. 569–
579. Springer, Heidelberg (1992)
8. Welzl, E.: Smallest enclosing disks (balls and ellipsoids). In: Maurer, H.A. (ed.)
New Results and New Trends in Computer Science. LNCS, vol. 555, pp. 359–370.
Springer, Heidelberg (1991)
Fixed-Parameter Algorithms for Kemeny Scores

Nadja Betzler1, , Michael R. Fellows2, , Jiong Guo1,   ,


Rolf Niedermeier1 , and Frances A. Rosamond2,
1
Institut für Informatik, Friedrich-Schiller-Universität Jena
Ernst-Abbe-Platz 2, D-07743 Jena, Germany
{betzler,guo,niedermr}@minet.uni-jena.de
2
PC Research Unit, Office of DVC (Research), University of Newcastle,
Callaghan, NSW 2308, Australia
{michael.fellows,frances.rosamond}@newcastle.edu.au

Abstract. The Kemeny Score problem is central to many applications


in the context of rank aggregation. Given a set of permutations (votes)
over a set of candidates, one searches for a “consensus permutation”
that is “closest” to the given set of permutations. Computing an opti-
mal consensus permutation is NP-hard. We provide first, encouraging
fixed-parameter tractability results for computing optimal scores (that
is, the overall distance of an optimal consensus permutation). Our fixed-
parameter algorithms employ the parameters “score of the consensus”,
“maximum distance between two input permutations”, and “number of
candidates”. We extend our results to votes with ties and incomplete
votes, thus, in both cases having no longer permutations as input.

1 Introduction

To aggregate inconsistent information does not only appear in classical voting


scenarios but also in the context of meta search engines and many other appli-
cations [8,6,1,5]. In some sense, herein one always deals with consensus problems
where one wants to find a solution to various “input demands” such that these
demands are met as well as possible. Naturally, contradicting demands cannot
be fulfilled at the same time. Hence, the consensus solution has to provide a
balance between opposing requirements. The concept of Kemeny consensus is
among the most classical and important research topics in this context. In this
paper, we study new algorithmic approaches based on parameterized complex-
ity analysis [7,10,13] for computing Kemeny scores and, thus, Kemeny consensus
solutions. To describe our results, we start with introducing Kemeny elections.
Kemeny’s voting scheme goes back to the year 1959. It can be described
as follows. An election (V, C) consists of a set V of n votes and a set C of

Supported by the DFG, research project DARE, GU 1023/1.

Supported by the Australian Research Council. Work done while staying in Jena as
a recipient (MF) of the Humboldt Research Award of the Alexander von Humboldt
foundation, Bonn, Germany.

Supported by the DFG, Emmy Noether research group PIAF, NI 369/4.

R. Fleischer and J. Xu (Eds.): AAIM 2008, LNCS 5034, pp. 60–71, 2008.

c Springer-Verlag Berlin Heidelberg 2008
Fixed-Parameter Algorithms for Kemeny Scores 61

m candidates. A vote is a preference list of the candidates, that is, for each
voter the candidates are ordered according to preference. For instance, in case
of three candidates a, b, c, the order c > b > a would mean that candidate c
is the best-liked one and candidate a is the least-liked one for this voter.1 A
“Kemeny consensus” is a preference list that is “closest” to the preference lists
of the voters: For each pair of votes p, q, the so-called Kendall-Tau distance (KT-
distance for short) between p and q, also known as  the number of inversions
between two permutations, is defined as dist(p, q) = {c,d}⊆C dp,q (c, d), where
the sum is taken over all unordered pairs {c, d} of candidates, and dp,q (c, d) is 0
if p and q rank c and d in the same order, and 1 otherwise. Using divide and
conquer, the KT-distance can be computed in O(m · log m) time.  The score of a
preference list l with respect to an election (V, C) is defined as v∈V dist(l, v). A
preference
list l with the minimum score is called Kemeny consensus of (V, C) and
its score v∈V dist(l, v) is the Kemeny score of (V, C). The problem considered
in this work is as follows:
Kemeny Score
Input: An election (V, C) and a positive integer k.
Question: Is the Kemeny score of (V, C) at most k?
Clearly, in applications we are mostly interested in computing a Kemeny con-
sensus of a given election. All our algorithms that decide the Kemeny Score
problem actually provide a corresponding Kemeny consensus.
Known results. We summarize the state of the art concerning the computa-
tional complexity of Kemeny Score. Bartholdi et al. [2] showed that Kemeny
Score is NP-complete, and it remains so even when restricted to instances with
only four votes [8,9]. Given the computational hardness of Kemeny Score
on the one side and its practical relevance on the other side, polynomial-time
approximation algorithms have been studied. Thus, the Kemeny score can be
approximated to a factor of 8/5 by a deterministic algorithm [16] and to a factor
of 11/7 by a randomized algorithm [1]. Recently, a (theoretical) PTAS result
has been obtained [12]. Conitzer, Davenport, and Kalagnanam [6,5] performed
computational studies for the efficient exact computation of a Kemeny consen-
sus, using heuristic approaches such as greedy and branch and bound. Finally,
note that Hemaspaandra et al. [11] provided further, exact classifications of the
computational complexity of Kemeny elections.
Our results. As pointed out by Conitzer et al. [5], for obvious reasons approx-
imate solutions for election problems such as Kemeny Score may be of limited
interest. Hence, exact solutions are of particular relevance in this context. Given
the NP-completeness of the problem, however, it seems inevitable to live with
exponential-time algorithms for solving Kemeny Score. Fortunately, parame-
terized complexity analysis as pioneered by Downey and Fellows [7,10,13] seems
a fruitful approach here. This will be shown by positive results based on three
natural parameterizations. Before that, note that studying the parameter “num-
ber of votes” is pointless because, as mentioned before, the problem is already
1
Some definitions also allow ties between candidates—we deal with this later.
62 N. Betzler et al.

NP-complete for only four votes. First of all, using the Kemeny score k itself as
the parameter, we derive an algorithm solving Kemeny Score in O(1.53k +
m2 n) time, where n := |V | and m := |C|. This algorithm is based on a problem
kernelization and a depth-bounded search tree. Further, we introduce a struc-
tural parameterization by studying the parameter “maximum KT-distance d
between any two input votes”. Note that in application scenarios such as meta
search engines small d-values may be plausible. We show that Kemeny Score
can be solved in O((3d + 1)! · d · log d · m · n) time by a dynamic program-
ming approach. Eventually, note that by trying all possible permutations of the
m candidates, we can trivially attain an efficient algorithm if m is very small.
The corresponding combinatorial explosion m! in the parameter m is fairly large,
though. Using dynamic programming, we can improve this to an algorithm run-
ning in O(2m ·m2 ·n) time. Finally, we extend our findings to the cases where ties
within votes are allowed and to incomplete votes where not all candidates are
ranked. Due to the lack of space, several proofs are deferred to the full version.

2 Preliminaries

We refer to the introductory section for some basic definitions concerning (Ke-
meny) elections. Almost all further concepts are introduced where needed. Hence,
here we restrict ourselves to concepts of “general” importance. Let the position
of a candidate a in a vote v be the number of candidates that are better than a
in v. That is, the leftmost (and best) candidate in v has position 0 and the
rightmost has position m − 1. Then, posv (a) denotes the position of candidate a
in v. Moreover, we say that two candidates a and b form a dirty pair if in V
there is one vote with a > b and another vote with b > a.
We briefly introduce the relevant notions of parameterized complexity the-
ory [7,10,13]. Parameterized algorithmics aims at a multivariate complexity anal-
ysis of problems. This is done by studying relevant problem parameters and their
influence on the computational complexity of problems. The hope lies in accept-
ing the seemingly inevitable combinatorial explosion for NP-hard problems, but
confining it to the parameter. Hence, the decisive question is whether a given
parameterized problem is fixed-parameter tractable (FPT) with respect to the
parameter, say k. In other words, here we ask for the existence of a solving algo-
rithm with running time f (k) · poly(n, m) for some computational function f . A
core tool in the development of fixed-parameter algorithms is polynomial-time
preprocessing by data reduction rules, often yielding a kernelization. Herein, the
goal is, given any problem instance x with parameter k, to transform it in poly-
nomial time into a new instance x with parameter k  such that the size of x is
bounded from above by some function only depending on k, k  ≤ k, and (x, k)
is a yes-instance if and only if (x , k  ) is a yes-instance. We call a data reduction
rule sound if the new instance after an application of this rule is a yes-instance
iff the original instance is a yes-instance. We also employ search trees for our
fixed-parameter algorithms. Search tree algorithms work in a recursive manner.
The number of recursion calls is the number of nodes in the according tree. This
Fixed-Parameter Algorithms for Kemeny Scores 63

number is governed by linear recurrences with constant coefficients. It is well


known how to solve these [13]. If the algorithm solves a problem instance of
size s and calls itself recursively for problem instances of sizes s − d1 , . . . , s − di ,
then (d1 , . . . , di ) is called the branching vector of this recursion. It corresponds
to the recurrence Ts = Ts−d1 + · · · + Ts−di for the asymptotic size Ts of the
overall search tree.

3 Parameterization by the Kemeny Score

We present a kernelization and a search tree algorithm for Kemeny Score.


The following lemma, whose correctness follows directly from the Extended Con-
dorcet criterion [15], is used for deriving the problem kernel and the search tree.

Lemma 1. Let a and b be two candidates in C. If a > b in all votes v ∈ V , then


every Kemeny consensus has a > b.

3.1 Problem Kernel

When applied to an input instance of Kemeny Score, the following polynomial-


time executable data reduction rules yield an “equivalent” election with at
most 2k candidates and at most 2k votes with k being the Kemeny score. Note
that, if we use a preference list over a subset of the candidates to describe a
vote, then we mean that the remaining candidates are positioned arbitrarily in
this vote. We apply the following data reduction rule to shrink the number of
candidates in a given election (V, C).
Rule 1. Delete all candidates that are in no dirty pair.

Lemma 2. Rule 1 is sound and can be carried out in O(m2 n) time.

Lemma 3. After having exhaustively applied Rule 1, in a yes-instance there are


at most 2k candidates.

Next, we apply a data reduction rule to get rid of too many identical votes.
Rule 2. If there are more than k votes in V identical to a preference list l, then
return “yes” if the score of l is at most k; otherwise, return “no”.

Lemma 4. Rule 2 is sound and works in O(mn) time.

Lemma 5. After having exhaustively applied Rule 1 and Rule 2, in a yes-


instance ((V, C), k) of Kemeny Score there are at most 2k votes.

In summary, we can state the following:


Theorem 1. Kemeny Score admits a problem kernel with at most 2k votes
over at most 2k candidates. It can be computed in O(m2 · n) time.
64 N. Betzler et al.

3.2 Search Tree Algorithm


It is trivial to achieve an algorithm with search tree size O(2k ) by simply branch-
ing on dirty pairs. For the description of an improved search tree algorithm, we
need the following definition: Three candidates a, b, c form a dirty triple if they
occur in at least two dirty pairs. The search tree algorithm first enumerates all
dirty pairs of the given election (V, C) and then branches according to the dirty
triples. At a search tree node, in each case of the branching, an order of the
candidates involved in the dirty triples processed at this node is fixed and main-
tained in a set. This order represents the relative positioning of these candidates
in the Kemeny consensus sought for. Then, the parameter is decreased according
to this order. Since every order of two candidates in a dirty pair decreases the
parameter at least by one, the height of the search tree is upper-bounded by the
parameter.
Next, we describe the details of the branching. At each node of the search
tree, we store two types of information:
– The dirty pairs that have not been processed by ancestor nodes are stored
in a set D.
– The information about the orders of candidates that have already been de-
termined when reaching the node is stored in a set L. That is, for every pair
of candidates whose order is already fixed we store this order in L.
For any pair of candidates a and b, the order a > b is implied by L if there
is a subset of ordered pairs {(c1 , c2 ), (c2 , c3 ), . . . , (ci−1 , ci )} in L which can be
concatenated such that we have a > c1 > · · · > ci > b. To add the order of
a “new” pair of candidates, for example a > b, to L, we must check if this is
consistent with L, that is, L does not already imply b > a.
At the root of the search tree, D contains all dirty pairs occurring in (V, C).
For each non-dirty pair, its relative order in an optimal Kemeny ranking can be
determined using Lemma 1. These orders are stored in L. At a search tree node,
we distinguish three cases:
Case 1. If there is a dirty triple {a, b, c} forming three dirty pairs contained
in D, namely, {a, b}, {b, c}, {a, c} ∈ D, then remove these three pairs from D.
Branch into all six possible orders of a, b, and c. In each subcase, if the cor-
responding order is not consistent with L, discard this subcase, otherwise, add
the corresponding order to L and decrease the parameter according to this sub-
case. The worst-case branching vector of this case is (3, 4, 4, 5, 5, 6), giving a
branching number 1.52. To see this, note that we only consider instances with
at least three votes, since Kemeny Score is polynomial-time solvable for only
two votes. Thus, for every dirty pair {c, c }, if there is only one vote with c > c
(or c > c), then there are at least two votes with c > c (or c > c ). A simple
calculation then gives the branching vector.
Case 2. If Case 1 does not apply and there is a dirty triple {a, b, c}, then a, b, c
form exactly two dirty pairs contained in D, say {a, b} ∈ D and {b, c} ∈ D.
Remove {a, b} and {b, c} from D. As {a, c} is not a dirty pair, its order is
determined by L. Hence, we have to distinguish the following two subcases.
Fixed-Parameter Algorithms for Kemeny Scores 65

If a > c is in L, then branch into three further subcases, namely,

– b > a > c,
– a > b > c, and
– a > c > b.

For each of these subcases, we add the pairwise orders induced by them into L
if they are consistent for all three pairs and discard the subcase, otherwise. The
worst-case branching vector here is (3, 3, 2), giving a branching number 1.53.
If c > a is in L, then we also get the branching vector (3, 3, 2) by branching
into the following three further subcases:

– b > c > a,
– c > b > a, and
– c > a > b.

Case 3. If there is no dirty triple but at least one dirty pair (a, b) in D, then
check whether there exists some relative order between a and b implied by L:
If L implies no order between a and b, then add an order between a and b to L
that occurs in at least half of the given votes; otherwise, we add the implied
order to L. Finally, decrease the parameter k according to the number of votes
having a and b oppositely ordered compared to the one added to L.
The search tree algorithm outputs “yes” if it arrives at a node with D = ∅ and
a parameter value k ≥ 0; otherwise, it outputs “no”. Observe that a Kemeny
consensus is then the full order implied by L at a node with D = ∅.
Combining this search tree algorithm with the kernelization given in Sec-
tion 3.1, we arrive at the main theorem of this section.
Theorem 2. Kemeny Score can be solved in O(1.53k + m2 n) time, where k
denotes the Kemeny score of the given election.
Observe that the search tree algorithm also works for instances in which the votes
are weighted by positive integers. If the votes have arbitrary positive weights, we
can use the dynamic programming algorithm that is described in the following
section.

4 Parameterization by the Maximum KT-Distance

The Kemeny score of some instances might be quite large. So, we consider a fur-
ther parameterization, now with the maximum KT-distance d between any two
given votes as the parameter. Formally, d := maxp,q∈V {dist(p, q)}. We describe
a dynamic programming fixed-parameter algorithm for this parameterization.
To this end, we need the following definitions:
A block of size s with start position p denotes the set of candidates a satis-
fying p ≤ posv (a) ≤ p + s − 1 for at least one v ∈ V . By block(p) we denote a
block of size d + 1 with start position p. With a subvote vC  of a vote v restricted
to a subset C  ⊆ C we mean the order of the candidates in C  such that the
66 N. Betzler et al.

preferences of v with respect to the candidates in C  are preserved. A subinstance


of (V, C) restricted to C  ⊆ C consists of all vC  with v ∈ V .
Now, we state two lemmas that are crucial for the algorithm.
Lemma 6. In an input instance with maximum KT-instance d, the positions of
a candidate in two votes differ by at most d.

Proof. Consider a candidate a and two votes v and w. Assume that posv (a) = p
and posw (a) ≥ p + d + 1. Then, in w there are at least p + d + 1 candidates
that are better than a, and in v there are p candidates that are better than a.
Therefore, there are at least d + 1 candidates that are ranked higher than a in w
and lower than a in v. This means that the KT-distance between v and w is at
least d + 1, a contradiction. 


Lemma 7. In an input instance with maximum KT-instance d, every block of


size d + 1 contains at most 3d + 1 candidates.

Proof. Assume that there are 3d + 2 candidates c1 , c2 , . . . , c3d+2 in a block of


size d + 1 with start position p. Without loss of generality, assume that v1 :=
c1 > · · · > cd > cd+1 > · · · > c3d+2 . Let ci be the candidate in position p in v1 .
If i ≤ d + 1, then candidate c3d+2 is in v1 in position p + 2d + 1 or in a higher
position. However, since c3d+2 is in the block with start position p, it must occur
in position p+ d or lower in some other vote, contradicting Lemma 6. If i > d+ 1,
then a similar argument applies to c1 , again contradicting Lemma 6. 


Basic Idea. For designing the algorithm we exploit that blocks of size d + 1
can be used to decompose an election when computing the Kemeny score. More
precisely, consider a block(i) of size d+ 1, then any candidate a with a ∈ / block(i)
must fulfill either posv (a) < i for all v ∈ V or posv (a) > i + d + 1 for all v ∈ V .
Further, we can show that there is a Kemeny consensus in which a must have a
position in a range that is a function of d. This means that, if we iterate from
left to right over the votes and store the Kemeny score for all “partial orders”
of the candidates of a block, then we can forget all candidates that appear only
left of this block.
Roughly speaking, our algorithm works as follows: It iterates from left to right
over the votes and, in each iterative step, considers a block of size d + 1. That
is, in the first iterative step, the initialization, it considers all possible orders of
the candidates of block(0) and uses a table to store the scores of all such orders
with respect to the subinstance of (V, C) restricted to block(0). Then, in the
following iterations, it considers block(i) with i ≥ 1. The computation of the
score of the orders of block(i) is based on the table entries for block(i − 1). The
Kemeny score of (V, C) is the minimum of the entries for block(m − d − 1). For
the formal description of the algorithm we need some further definitions.

Definitions. For a subset of candidates C  , let π(C  ) denote an order of C  . For


two candidate subsets C  and C  , the orders π  (C  ) and π  (C  ) are compatible if
the candidates of C  ∩ C  have the same order according to π  and π  . Further,
Fixed-Parameter Algorithms for Kemeny Scores 67

Initialization:
For all permutations π(block(0))

T (π(block(0)), 0) := S(π(block(0)))

Update:
For i = 1, . . . , m − d − 1

T (π(block(i)), i) := min {T (π  (block(i − 1)), i − 1)}


π  (block(i−1))∈Comp(i,π)

+ S(π(block(i))) − S(πblock(i−1) (block(i)))

Output:
min {T (π(block(m − d − 1)), m − d − 1)}.
π(block(m−d−1))

Fig. 1. Dynamic programming algorithm for Kemeny Score

if C  ⊆ C  , let πC  (C  ) denote the suborder of π(C  ) restricted to C  . For an


order π(block(i)) the set Comp(i, π) contains all orders of candidates of block(i−
1) that are compatible with π(block(i)). For any fixed order π(C  ) of C  ⊆ C,
its score S(π(C  )) is the sum of its KT-distances between π(C  ) and all subvotes
of votes in V restricted to C  .

Algorithmic Details. Next, we define the table T used in the dynamic program-
ming algorithm. The columns of T one-to-one correspond to the candidate sub-
sets block(i) ⊆ C with 0 ≤ i ≤ m − d − 1. Each row corresponds to a possible
order of the candidates in block(i). By Lemma 7, the number of candidates of
each block is upper-bounded by 3d + 1. Thus, T has at most (3d + 1)! rows.
An entry in column block(i) and row π, where π is an order of the  candidates
in block(i), stores the minimum score of the orders π  of C  := j≤i block(j)
under the condition that π  is compatible with π.
The algorithm is given in Figure 1. In the following, we first state the correct-
ness of the dynamic programming and then analyze its running time.
Lemma 8. The dynamic programming algorithm (see Figure 1) correctly de-
cides Kemeny Score.
Theorem 3. Kemeny Score can be solved in O((3d + 1)! · d · log d · m · n) time
with d being the maximum KT-distance between two input votes.
Proof. As argued above, the table size is bounded by O((3d + 1)! · m). For the
initialization, we compute the score of all orders of at most 3d + 1 candidates
and, for each order, the score is computable in O(d log d · n) time as argued in
the introductory section. Therefore, the initialization can be done in O((3d +
1)! · d log d · n) time.
At block(i) with i ≥ 1, we compute
min {T (π  (block(i − 1)), i − 1)}
π  (block(i−1))∈Comp(i,π)
68 N. Betzler et al.

for all possible orders π(block(i)). Using a pointer data structure, this can be
done in (3d + 1)! · d log d time by going through the (i − 1)th column once. Thus,
the entries of T (π(block(i)), i) can be computed in O((3d + 1)! · d log d · n) time,
giving the running time of the algorithm. 

Note that it is easy to modify the dynamic programming to return a Kemeny
consensus within the same asymptotic running time. Furthermore, the algorithm
can be easily adapted to deal with weighted votes and/or weighted candidates.

5 Parameterization by the Number of Candidates


Theorem 4. Kemeny Score can be solved in O(2m · m2 · n) time.2
Proof. (Sketch) The algorithm goes like this: For each subset C  ⊆ C compute
the Kemeny score of the given election system restricted to C  . The recurrence
for a given subset C  is to consider every subset C  ⊆ C  where C  is obtained
by deleting a single candidate c from C  . Let π  be a Kemeny consensus for the
election system restricted to C  . Compute the score of the permutation π  of C 
obtained from π  by putting c in first position. Take the minimum score over
all π  obtained from subsets of C  . The correctness of this algorithm follows from
the following claim.
Claim: A permutation π  of minimum score obtained in this way is a Kemeny
consensus of the election system restricted to C  .
Proof: Let σ  be a Kemeny consensus of the election system restricted to C  , and
suppose that candidate c is on the first position of σ  . Consider C  = C  \ {c},
and let σ  be the length-|C  | tail of σ  . The score of σ  is t + u, where u is the
score of σ  for the votes that are the restriction of V to C  , and where t is the
“cost” of inserting c into the first position: Herein, the cost is the sum over the
votes (restricted to C  ) of the distance of c from first position in each vote. Now
suppose that π  is a Kemeny consensus of the election system restricted to C  .
Compared with the score of σ  , augmenting π  to π  by putting c in the first
position increases the score of π  by exactly t. The score of π  is at most u (since
it is a Kemeny consensus for the election system restricted to C  ), and so the
score of π  is at most t + u, so it is a Kemeny consensus for the election system
restricted to C  . This completes the proof of the claim.
For each of the subsets of C, the algorithm computes a Kemeny score. Herein,
a minimum is taken from at most m values and the computation of each of these
values needs O(m·n) time. Therefore, the total running time is O(2m ·m2 ·n).  

6 Ties and Incomplete Votes


The algorithm from Section 5 also applies to the following generalizations; we
omit the respective technical details.
2
We give a direct proof here. Basically the same result also follows from a reduction to
Feedback Arc Set on Tournaments and a corresponding exact algorithm [14].
Fixed-Parameter Algorithms for Kemeny Scores 69

6.1 Kemeny Score with Ties

Introducing ties, we use the definition of Hemaspaandra et al. [11]: Each vote
consists of a ranking of candidates that can contain ties between candidates
and the Kemeny consensus can contain ties as well. In the definition of the
KT-distance, we then replace dp,q (c, d) by

⎨ 0 if p and q agree on c and d,
tp,q (c, d) := 1 if p (q) has a preference among c and d and q (p) does not ,

2 if p and q strictly disagree on c and d.

Additionally, we extend the KT-distance to candidate weights, that is, given


a weight function w : C → R+ , the KT-distance dist(p, q) between two votes p, q
is defined as 
dist(p, q) = w(c) · w(d) · tp,q (c, d).
{c,d}⊆C

By increasing the Kemeny score by two if two votes strictly disagree on two
candidates, the overall score becomes larger. It is not surprising that also in case
of ties we can get a linear problem kernel and a search tree with respect to the
parameter Kemeny score. To this end, we extend the notion of dirty pairs such
that a pair of candidates {a, b} is also dirty if we have a = b in one vote and a > b
or a < b in another vote. Then, we can obtain a linear problem kernel in complete
analogy to the case without ties. Concerning the search tree, by branching for
a dirty pair {a, b} into the three cases a > b, a = b, and a < b, we already
achieve the branching vector (1, 2, 4) and, hence, the branching number 1.76.
For example, having three votes in which candidates a and b are ranked equal
in two of the votes and we have a < b in the other vote, by branching into the
case “a = b” we have one inversion that counts one, branching into “a < b” we
have two inversions that count one, and branching into “a > b” we have two
inversions counting one and one inversion counting two.
With some more effort, we can also show that Kemeny Score with Ties is
fixed-parameter tractable with respect to the parameter maximum KT-distance.
To use the dynamic programming of Section 4, we need some bounds on the
positions a candidate can take and the size of a block in analogy to Lemma 6
and Lemma 7. In order to achieve this, we need a preprocessing step, which is
based on the following lemma:

Lemma 9. Let d denote the maximum KT-distance of an input instance. If


there is a vote in which at least d + 2 candidates c1 , . . . , cd+2 are tied, then in a
yes-instance the candidates c1 , . . . , cd+2 are tied in all votes.

Now, we can state the following data reduction rule:

Rule 3. If there are d + i candidates for any integer i ≥ 2 that are tied in all
votes, replace them by one candidate whose weight is the sum of the weights of
the replaced candidates.
70 N. Betzler et al.

The correctness of Rule 3 follows from Lemma 9. Further, note that the dynamic
programming procedure from Section 4 can be adapted to deal with candidate
weights. Now, similar to Lemmas 6 and 7 we can prove the following.
Lemma 10. In a candidate-weighted instance with maximum KT-instance d
obtained after exhaustively applying Rule 3, the positions of a candidate in two
votes differ by at most 2d + 1.
Lemma 11. In a reduced instance with maximum KT-instance d, every block
of size 2d contains at most 6d + 2 candidates.
Using Lemmas 10 and 11, we can show that with the dynamic programming
algorithm given in Section 4, the following running time can be obtained.
Theorem 5. Kemeny Score with Ties can be solved in O((6d + 2)! · d · log d ·
n · m) time with d being the maximum KT-distance between two input votes.

6.2 Incomplete Votes


We now consider Kemeny Score with Incomplete Votes, first introduced
by Dwork et al. [8]. Here, the given votes are not required to be permutations
of the entire candidate set, but only of candidate subsets, while the Kemeny
consensus sought for should be a permutation of all candidates. In the definition
of the KT-distance, we then replace dp,q (c, d) by

0 if {c, d} ⊆ Cp or {c, d} ⊆ Cq or p and q agree on c and d,
dp,q (c, d) :=
1 otherwise,
where Cv contains the candidates occurring in vote v.
A simple reduction from Feedback Arc Set shows that, in contrast to
Kemeny Score with complete votes, the parameterization by the maximum
KT-distance does not lead to fixed-parameter tractability for Kemeny Score
with Incomplete Votes:
Theorem 6. Kemeny Score with Incomplete Votes is NP-hard even if
the maximum KT-distance between two input votes is zero.
By way of contrast, we now show that, parameterized by the Kemeny score k,
also Kemeny Score with Incomplete Votes is fixed-parameter tractable.
Theorem 7. Kemeny Score with Incomplete Votes is solvable in
(1.48k)k · p(n, m) time with k being the Kemeny score and p being a polyno-
mial function of n and m.
Proof. Let ((V, C), k) be the given Kemeny Score instance. The algorithm con-
sists of three steps. First, transform the given election system into one where each
vote contains only two candidates. For example, a vote a > b > c is replaced by
threes votes: a > b, b > c, and a > c. Second, find all dirty pairs and, for each
of them, remove the corresponding votes and branch into two cases, in each case
an order between the two candidates of this pair is fixed and the parameter k is
Fixed-Parameter Algorithms for Kemeny Scores 71

decreased accordingly. Third, after having processed all dirty pairs, we construct
an edge-weighted directed graph for each of the election systems generated by the
second step. The vertices of this graph one-to-one correspond to the candidates.
An arc (c, c ) from vertex c to vertex c is added if there is a vote of the form c > c
and a weight equal to the number of the c > c -votes is assigned to this arc. For
each pair of candidates c and c where the second step has already fixed an or-
der c > c , add an arc (c, c ) and assign a weight equal to k + 1 to this arc. Observe
that solving Kemeny Score on the instances generated by the first two steps is
now equivalent to solving the Weighted Directed Feedback Arc Set prob-
lems on the constructed edge-weighted directed graphs. Directed Feedback
Arc Set is the special case of Weighted Feedback Arc Set with unit edge
weight. The fixed-parameter algorithm by Chen et al. [4] for Directed Feed-
back Arc Set can also handle Weighted Directed Feedback Arc Set with
integer edge weights [3]. Therefore, applying this algorithm in the third step gives
a total running time of (1.48k)k · p(n, m) for a polynomial function p. 


References
1. Ailon, N., Charikar, M., Newman, A.: Aggregating inconsistent information: Rank-
ing and clustering. In: Proc. 37th STOC, pp. 684–693. ACM, New York (2005)
2. Bartholdi III, J., Tovey, C.A., Trick, M.A.: Voting schemes for which it can be
difficult to tell who won the election. Social Choice and Welfare 6, 157–165 (1989)
3. Chen, J.: Personal communication (December 2007)
4. Chen, J., Liu, Y., Lu, S., O’Sullivan, B., Razgon, I.: A fixed-parameter algorithm for the
directed feedback vertex set problem. In: Proc. 40th STOC, ACM, New York (2008)
5. Conitzer, V., Davenport, A., Kalagnanam, J.: Improved bounds for computing
Kemeny rankings. In: Proc. 21st AAAI, pp. 620–626 (2006)
6. Davenport, A., Kalagnanam, J.: A computational study of the Kemeny rule for
preference aggregation. In: Proc. 19th AAAI, pp. 697–702 (2004)
7. Downey, R.G., Fellows, M.R.: Parameterized Complexity. Springer, Heidelberg (1999)
8. Dwork, C., Kumar, R., Naor, M., Sivakumar, D.: Rank aggregation methods for
the Web. In: Proc. WWW, pp. 613–622 (2001)
9. Dwork, C., Kumar, R., Naor, M., Sivakumar, D.: Rank aggregation revisited
(manuscript, 2001)
10. Flum, J., Grohe, M.: Parameterized Complexity Theory. Springer, Heidelberg (2006)
11. Hemaspaandra, E., Spakowski, H., Vogel, J.: The complexity of Kemeny elections.
Theoretical Computer Science 349, 382–391 (2005)
12. Kenyon-Mathieu, C., Schudy, W.: How to rank with few errors. In: Proc. 39th
STOC, pp. 95–103. ACM, New York (2007)
13. Niedermeier, R.: Invitation to Fixed-Parameter Algorithms. Oxford University
Press, Oxford (2006)
14. Raman, V., Saurabh, S.: Improved fixed parameter tractable algorithms for
two “edge” problems: MAXCUT and MAXDAG. Information Processing Let-
ters 104(2), 65–72 (2007)
15. Truchon, M.: An extension of the Condorcet criterion and Kemeny orders. Technical
report, cahier 98-15 du Centre de Recherche en Économie et Finance Appliquées (1998)
16. van Zuylen, A., Williamson, D.P.: Deterministic algorithms for rank aggregation
and other ranking and clustering problems. In: Kaklamanis, C., Skutella, M. (eds.)
WAOA 2007. LNCS, vol. 4927, pp. 260–273. Springer, Heidelberg (2007)
The Distributed Wireless Gathering Problem

Vincenzo Bonifaci1,3, , Peter Korteweg2, ,


Alberto Marchetti-Spaccamela3, , and Leen Stougie2,4,
1
Università degli Studi dell’Aquila, Italy
[email protected]
2
Eindhoven University of Technology, The Netherlands
[email protected], [email protected]
3
Sapienza Università di Roma, Italy
[email protected]
4
CWI, Amsterdam, The Netherlands
[email protected]

Abstract. We address the problem of data gathering in a wireless net-


work using multihop communication; our main goal is the analysis of
simple algorithms suitable for implementation in realistic scenarios. We
study the performance of distributed algorithms, which do not use any
form of local coordination, and we focus on the objective of minimizing
average flow times of data packets. We prove a lower bound of Ω(log m)
on the competitive ratio of any distributed algorithm minimizing the
maximum flow time, where m is the number of packets. Next, we con-
sider a distributed algorithm which sends packets over shortest paths,
and we use resource augmentation to analyze its performance when the
objective is to minimize the average flow time. If interferences are mod-
eled as in Bar-Yehuda et al. (J. of Computer and Systems Science, 1992)
we prove that the algorithm is (1 + )-competitive, when the algorithm
sends packets a factor O(log(δ/) log Δ) faster than the optimal offline
solution; here δ is the diameter of the network and Δ the maximum de-
gree. We finally extend this result to a more complex interference model.

1 Introduction

Wireless networks are used in many areas of practical interest, such as mobile
phone communication, ad-hoc networks, and radio broadcasting. Moreover, re-
cent advances in miniaturization of computing devices equipped with short range
radios have given rise to strong interest in sensor networks for their relevance in
many practical scenarios (environment control, accident monitoring etc.) [1,19].
In many applications of wireless networks data gathering is a critical operation
for extracting useful information from the operating environment: information

Research supported by EU ICT-FET 215270 FRONTS and MIUR-FIRB Italy-Israel
project RBIN047MH9.

Research supported by EU FET-project under contract no. FP6-021235-2 AR-
RIVAL, EU COST-action 293 GRAAL, and the Dutch BSIK-BRICKS project.

R. Fleischer and J. Xu (Eds.): AAIM 2008, LNCS 5034, pp. 72–83, 2008.

c Springer-Verlag Berlin Heidelberg 2008
The Distributed Wireless Gathering Problem 73

collected from multiple nodes in the network should be transmitted to a sink


that may process the data, or act as a gateway to other networks. In the case
of wireless sensor networks sensor nodes have limited computation capabilities,
thus implying that data gathering is an even more crucial operation. For these
reasons, data gathering in sensor networks has received significant attention in
the last few years; we restrict ourselves to cite only two contributions [1,9]. The
problem finds also applications in Wi-Fi networks when many users need to
access a gateway using multi-hop wireless relay-routing [5].
An instance of the Wireless Gathering Problem (Wgp) is given by a static
wireless network which consists of several stations (nodes) and one base station
(the sink), modeled as vertices of a graph; over time data packets arrive at
stations that have to be gathered at the base station. In the sequel we assume
that time is discrete and that stations have a common clock, hence time can be
divided into rounds. Following Bar-Yehuda et al. [3] we adopt the half-duplex
model, in which nodes can either send or receive during a single round. Typically,
not all nodes in the network can communicate with each other, hence packets
have to be sent through several nodes before they can be gathered at the sink;
this is called multi-hop routing. The crucial issue to be considered is interference:
the communication between two pairs of nodes causes interference if either of
the receiver nodes also receives the communication signal intended for the other
node. In case of interference, the receiver node does not receive the packet.
Realistic models of communication among nodes depend on many parameters
that influence the performance of transmissions (see for example [1,22]); this
raises many combinatorial optimization problems that received significant at-
tention in the last few years. We notice that most solution methods proposed so
far are concentrating on polynomial time algorithms that achieve provably good
performance in the worst case. Unfortunately these methods are not suitable for
practical implementations; in fact they are either centralized and/or require solv-
ing complex combinatorial optimization problems [5,15,16]. Since sensors have
limited computational power and are unable to perform sophisticated coordina-
tion activities, sophisticated algorithms that require solving complex combinato-
rial optimization problems are impractical for implementations and have mainly
theoretical interest. Communications algorithms that have been implemented
and tested in real scenarios are not only distributed but can be implemented
with very limited overhead (see e.g. BMAC and DMAC [17,21]).
We notice that a formal analysis of the performance of simple algorithms
suitable for practical implementation is still missing. In this paper we continue
the work initiated in [3,4,7] on the problem of analyzing simple distributed al-
gorithms that have good approximation guarantees in realistic scenarios. We
emphasize that the algorithms analyzed are very simple and that the challenge
is not in their design but in their analysis. Namely, we consider fully distributed
algorithms, i.e. each node makes decisions of when to transmit independently of
other nodes. In order to decrease the possibility of interference we assume clock
synchronization at the nodes. Our model is more restricted than decentralized
74 V. Bonifaci et al.

algorithms, which may allow information exchange between neighbouring nodes


before transmission to decrease the possibility of interference even further.
Our work extends the work of Bar Yehuda et al. [4], where the problem of
data gathering in a wireless network is considered as a subproblem in wireless
routing. In [4] the authors consider the special case where all release times are
zero. The nodes are partitioned into layers, and all nodes of a layer are labeled
based on their distance to the sink. The labeling reduces interference, without
violating the distributed nature of the algorithm. In a typical wireless network,
information on distances is often available or it can be obtained using distributed
algorithms [20]. Bar Yehuda et al. [4] prove that a simple randomized algorithm
requires in expectation 32.27(m+δ) log Δ rounds to gather m packets, where δ is
the diameter of the network, and Δ the maximum degree of a node. Hence, their
algorithm is in expectation an asymptotic O(log Δ)-approximation of optimal
maximum completion time.
In Bar-Yehuda et al. [4] all packets are released at time 0 and the authors ana-
lyze the expected makespan of the schedule. We assume that packets are released
over time and we analyze expected flow times, i.e. the time elapsed between the
release of a packet and its arrival at the sink; it is well known that flow is a measure
more suitable than completion time to describe the Quality of Service (QoS) of a
system. Our main contributions are the following. First, in Section 3, we provide a
lower bound on the approximability of distributed (possibly exponential-time) al-
gorithms for Wgp, minimizing the maximum flow time. We prove a lower bound
of Ω(log m) on the competitive ratio of distributed algorithms, where m is the
number of packets. In Section 4 we analyse the performance of the simple on-line
algorithm proposed by Bar-Yehuda et al. [4] when the goal is to minimize average
flow time. We prove that the algorithm is (1 + )-competitive when the algorithm
sends packets a factor O(log(δ/) log Δ) faster than the optimal offline solution.
As  approaches zero, the solution of the more powerful algorithm approaches the
optimum. In Section 5 we extend the result to include the more complex interfer-
ence model proposed by Bermond et al. [5].
We notice once more that the main challenge is not in the design of the
algorithm but in the analysis: it is easy to find worst case instances where the
algorithm has a very poor performance. The challenge is in finding the right tool
for assessing its quality: we show that resource augmentation allows to bound
the competitive ratio. Resource augmentation was introduced in the context of
machine scheduling in [12], where the idea is to study the performance of on-
line algorithms which are given processors faster than those of the adversary.
Intuitively, this has been done to compensate an on-line scheduler for its lack of
future information. Such an approach has led to a number of interesting results
showing that moderately faster processors are sufficient to attain satisfactory
performance guarantee for different scheduling problems, e.g. [10,12].

Related Work. The wireless gathering problem in a centralized setting was


studied in [5], and [6,7]. Bermond et al. [5] demonstrated that the problem
of minimizing maximum completion time is NP-hard, even when all release
times are zero. In [6,7] we studied centralized and distributed algorithms for the
The Distributed Wireless Gathering Problem 75

wireless gathering problem with arbitrary release times. For the case of min-
imizing maximum completion times, we presented a 4-competitive algorithm,
and demonstrated that no shortest paths following algorithm can be better than
4-approximate [6]. For the case of minimizing maximum flow time, we presented
an algorithm which, under resource augmentation by sending packets a factor
5 faster than an offline algorithm, produces a solution with value at most the
optimal off-line solution value. For this objective, we also demonstrated that no
algorithm can be better than Ω(m1/3 )-approximate, without resource augmen-
tation, unless NP = P [7]. We remark that distributed algorithms considered in
[7] require coordination among neighbouring nodes to avoid interferences dur-
ing transmission; this can be accomplished through a suitable signaling protocol
that is not realistic in current sensor networks.
Kumar et al. [15,16] considered decentralized algorithms for wireless packet
routing. They provide near-optimal polynomial time routing and scheduling al-
gorithms for solving throughput maximization problems in wireless ad hoc net-
works. However, their algorithms are not distributed in the sense that nodes use
information of neighbouring nodes in order to decrease interference and in some
case hinge on the solution of a linear or a convex optimization problem. For this
reason the above results are mainly of theoretical interest.
As we remark there has been much work in recent years on various optimiza-
tion issues in communication algorithms for wireless and sensor networks: see
[13,14,18,23] and references therein. However, to the best of our knowledge a
formal analysis of the worst case performance of simple distributed algorithms
that are suitable for implementation in real scenarios of sensor networks is still
lacking.
A different approach in the analysis of routing protocols that has been pro-
posed in the literature is known as adversarial queuing theory as introduced in
[2,8]. Typically, in queuing theory the input is given by a distribution function,
e.g., a Poisson distribution. In the adversarial queuing theory model the input
is given by an adversary, who is restricted by a bound on the average arrival
rate of packets. An adversarial queuing theory model seems more appropriate
than queuing theory when minimizing packet flow times in case of bursty traffic
that consists of alternating periods of high and low packet arrival rates. The
goal is to prove stability: a system is said to be stable if the average number
of packets in the system is bounded [2,8,11]. Given a routing problem and an
algorithm A, let λ∗ and λA be the highest arrival rate that can be sustained,
respectively, by the omniscient optimum finding adversary and by algorithm A
while maintaining stability. The performance of an algorithm is measured by the
ratio λ∗ /λA . Note that the reduction in the arrival rate of the algorithm is a
dual compensation to our resource augmentation to compensate the limitations
imposed to the algorithm. Given a stable system, it is of interest to consider
the expected flow time of packets. In case of packet routing, in [2] and [8] it is
demonstrated that, even in a stable system, the maximum flow time of packets
may be unbounded.
76 V. Bonifaci et al.

2 Preliminaries

We formulate Wgp as a graph optimization problem. Given is an undirected


graph G = (V, E) with |V | = n, sink s ∈ V , and a set of data packets M =
{1, 2, . . . , m} which arrive over time. We assume that each edge has unit length.
For each pair of nodes u, v ∈ V we define the distance between u and v, denoted
by d(u, v), as the length of a shortest path from u to v in G. A layer of nodes is
a set of all nodes at distance d from sink s, for some d. Each packet j ∈ M has
an origin vj ∈ V and a release time rj ∈ Z+ at which it enters the network;
We assume that time is discrete; we call a time unit a round. Packet j can be
sent for the first time in round rj . The rounds are numbered 0, 1, 2, . . .. During
each round a node may either be sending a packet, be receiving a packet or be
inactive. If d(u, v) = 1 then u can send some packet j to v during a round. If
node u sends a packet j to v in some round, then the pair (u, v) is called a call of
packet j during that round. Two calls (u, v) and (u , v  ) interfere if d(u , v) = 1
or d(u, v  ) = 1; otherwise the calls are compatible. The solution of Wgp is a
schedule of compatible calls such that all packets are sent to the sink.
The above definition of interference is known in the literature as primary
interference; we consider in section 5 the extension to incorporate secondary
interference, i.e. interference between non-adjacent but proximate links in the
network.
Given a schedule, let vjt be the node where packet j resides at time t. Cj :=
min{t : vjt = s} is called the completion time of packet j. We define Fj := Cj −rj
as the flow time of packet j. We assume that packets cannot be aggregated. As
extra notation, let δj := d(vj , s) be the minimum number of calls required for
packet j to reach s, and let δ := maxj∈M δj .
In this paper we analyze distributed algorithms under the following assump-
tions. A network with a shortest paths routing tree is given, and each node
knows the next node on the path to the tree root (the sink), as well as d(vj , s),
its distance to the root. Further, we assume that each node is equipped with a
clock and the clocks are synchronized, i.e. indicate the same time. This enables
nodes to synchronize packet communications. Also, each node knows an upper
bound on the maximum node degree, called Δ.

3 A Lower Bound for Distributed Algorithms

It is known from previous work that Wgp is NP-hard both when minimizing the
maximum completion time and the maximum flow time [6]. The latter problem
is actually NP-hard to approximate within a factor of O(m1/3 ) [7]. Here we give
an unconditional lower bound on the approximability of the maximum flow time
in a distributed setting where routing is done through an in-tree. We consider
a scenario in which the conflicts between transmissions from one layer of the
tree to the next are resolved randomly: whenever several transmissions from a
layer occur in the same round, only a uniformly chosen one succeeds. We call
this the random selection model. This assumption seems natural for distributed
The Distributed Wireless Gathering Problem 77

algorithms, as they have no simple means of coordinating the transmitting nodes


(or more precisely, coordinating the transmitting nodes is as hard as the original
communication task).

Proposition 1. In the random selection model, the approximation ratio of any


algorithm is at least Ω(log m) when minimizing the maximum flow time.

Proof. Consider a constant k ≥ 1. An adversary releases m = 2h2 packets, for


h some integer power of 2. In round i · k · h it releases 2 packets, and in each
round in interval [ikh + 1, ikh + h − 2] it releases one packet, for i = 1, . . . , 2h.
The only use of k in this setting is provision of a control over the average arrival
rate of packets.
We use a star network with three rays, with the sink as the center of the star.
Pairs of packets released in the same round are released on two different rays of
the star, say ray 1 and ray 2; all the other packets are released on ray 3.
Both the algorithm and the adversary can send only one of the packets released
at time ikh in that round, and have to send the other packet in a later round.
We call the packet which is released but not sent in round ikh the target packet.
We prove the proposition by demonstrating that the expected flow time of one of
the 2h target packets exceeds log h + 1 for any algorithm, whereas the maximum
flow time of the adversary is at most 2.
The adversary sends one of the packets, released at time ikh, in that same
round, and the target packet in the next round. The adversary can send all other
packets one round after their release dates, hence the maximum flow time of the
adversary is at most 2.
Consider any algorithm in the random selection model. Clearly the algorithm
can forward at most one packet to the sink each round. Because of the random
selection rule, for f ≥ 1, we have

Pr[Fj = f + 1 | j is a target packet] = 1/2f .

So, if p is the probability


 h that the flow time of a target packet is at most log h+1,
we have p = log f =1 (1/2)f
= 1 − 1/h. Consider the set of 2h target packets.
For  = 1, . . . , 2h, let X = 1 be the event that target packet  has flow time
exceeding log h + 1. Otherwise X = 0. Then E[X ] = 1/h for all  = 1, . . . , 2h
and therefore  the expected number of target packets with flow time exceeding
2h 2h
log h + 1 is E[ =1 X ] = =1 E[X ] = 2. Hence, in expectation at least one
target packet has flow time at least log h + 1. 


It is useful to compare Proposition 1 with the above cited result, that there
is no polynomial time algorithm which can approximate Wgp within a factor
O(m1/3 ) when minimizing the maximum flow time, unless NP = P. The latter
condition is not required in Proposition 1. In [7] we showed that allowing a
constant increase in speed one can obtain a solution with maximum flow time
which is less than that of the optimal solution for the original instance. The
proof of Proposition 1 indicates that such a result is not likely to be obtainable
for distributed algorithms, as they have basically no control on which packet to
78 V. Bonifaci et al.

advance. The reason is that the lower bound is due to an adversarial selection
of which packet to advance; and the probability of obtaining such a selection
depends on the number of packets, and not on the speed of the algorithm.
In the next section we will analyze a distributed algorithm. It cannot deter-
mine which packet is advanced from each layer to the next. Proposition 1 and
the observations above should thus explain why we focus on the analysis of the
expected total flow time (as opposed to maximum flow time) and why we need
to use resource augmentation.
Finally we remark the intuitive fact that, if conflicts are solved adversarially
as opposed to randomly, Proposition 1 can be strengthened further. In the worst-
case selection model, whenever there is a set of pairwise incompatible calls, only
an adversarially chosen one will succeed.
Proposition 2. In the worst-case selection model, the approximation ratio of
any deterministic algorithm is at least Ω(m) when minimizing maximum flow
time or average flow time.

4 A Distributed Algorithm and Its Analysis


4.1 The Algorithm
We consider a distributed algorithm for Wgp first introduced by Bar-Yehuda et
al. in the context of minimizing the maximum completion time for the gathering
problem without release dates [4]. We focus on flow times.
To reduce interference between nodes, the algorithm uses node labels. A node
at distance d from the sink is assigned label d mod 3. Each node can be either
active during a round or inactive; only active nodes will transmit a packet. A
node will not be active if its packet buffer is empty.
Before we describe the algorithm, we introduce a basic but crucial procedure
which enables communication from a set of active nodes. The procedure, first
introduced and studied by Bar-Yehuda, Goldreich and Itai [3], is called De-
cay and requires 2 log Δ rounds; the time needed for a single execution of the
procedure is called a phase.

Algorithm 1. Decay(u, v) [3]


for j = 1, 2, . . . , 2 log Δ do
u sends to v the oldest packet from its buffer;
u deactivates itself for the rest of the phase with probability 1/2.
end for

We can now state a distributed algorithm for Wgp (Algorithm 2). The pro-
tocol requires the existence of a basic communication structure. Therefore, as a
first step of the algorithm a breadth-first search (BFS) tree with the sink as the
root is constructed. This can be done in expected time O((n + δ log n) log Δ) [4].
Since it is done only once, when starting up the system, we will not count this
time in defining the cost of the schedule.
The Distributed Wireless Gathering Problem 79

Algorithm 2. DistributedGreedy (DG) [4]


Construct a breadth-first search tree with root s
for each next phase k = 1, 2, . . . do
Activate each node with label k mod 3 having a nonempty packet buffer;
Execute Decay(u, parent(u)) in parallel for each active node u.
end for

Although the algorithm does not model acknowledgement of packets explic-


itly, it is easy to include them, e.g. by doubling the number of rounds, having
communication in odd rounds and acknowledgements in even rounds, as in [4].
Using this, we can assume that successful receipt of a packet (by the parent of
the sending node in the BFS tree) is acknowledged immediately. Only at that
time it gets removed from the sender’s buffer.
By the transmission protocol in DG, where in phase k only nodes of layer k
mod 3 transmit, if two nodes transmit, then either they are at the same layer or
they are at least distance 3 apart. Hence, in DG two nodes can only interfere if
both sender nodes are in the same layer.
A superphase consists of three consecutive phases. Another important ingre-
dient in the analysis of DG is the following.

Theorem 1 ([4]). Let i be a layer of the tree containing some packet at the
beginning of a superphase. There is probability at least μ := e−1 (1 − e−1 ) that
during this superphase DG sends a packet from a node u in layer i successfully
to the parent node of u in the BFS tree.

This theorem shows that, during a superphase, each nonempty layer forwards a
packet with probability μ to the following layer. Notice however that there is no
guarantee on which particular packet is advanced.

4.2 The Analysis

For our analysis we define three solution models. For a given instance I of
Wgp, we construct relations between the completion times of packets in these
three models. This approach is similar to the approach of Bar-Yehuda et al. [4].
However, one additional difficulty is that, because packets have release dates,
the extra speed given to the algorithm does not directly translate into shorter
flow times.

- In Model 1 each layer sends with probability at least μ at least one packet
every superphase;
- In Model 2 each layer sends with probability p := 1 − (1 − μ)a one packet
in one of the three last rounds of every a superphases, a ∈ N, and with
probability (1 − μ)a no packet;
- In Model 3 each layer sends with probability p one packet in each round,
and with probability 1 − p no packet.
80 V. Bonifaci et al.

Note, that the probabilities stated above refer to the case in which the layer
contains a packet at the start of the period considered (a single superphase
in Model 1, a superphases in Model 2, and a single round in Model 3). This
restriction is similar to the restriction on the Decay procedure. Thus, it follows
from Theorem 1 that a DG-solution is a solution which fits into Model 1. We
define the completion time and the flow time of a packet j in a Model k solution,
(k) (k)
respectively, as Cj and Fj , k = 1, 2, 3.
Motivated by the negative results of Theorem 1 we focus on deriving a bound
on the expected average flow time of DG. We use resource augmentation to
analyze the performance of DG. A σ-speed algorithm sends data packets at a
speed that is σ times faster than an offline algorithm.
Through a sequence of steps we relate the expected flow times of Model 1
to those of Model 2. Subsequently, we demonstrate that the expected flow time
of σ-speed DG is bounded by the expected flow time of a Model 3-solution.
Finally, we relate the expected flow times of a Model 3-solution to the expected
flow times of an optimal offline solution.

Lemma 1. The expected sum of completion times of a Model 1-schedule is at


most the expected sum of completion times of some Model 2-schedule, for every
Wgp-instance.

Lemma 2. The expected sum of flow times of σ-speed DG is at most the ex-
pected sum of flow times of a Model 3 solution, for σ ≥ 6a log Δ.

A deterministic tandem queue with unit processing times is a network which


consists of a sink M0 , and a set of machines Mi , i = 1, . . . , δ, which are positioned
in sequence. I.e. a job which has been processed on machine Mi is sent to machine
Mi−1 , i = 1, . . . , δ. The processing time of a job is 1 on each machine. Jobs arrive
on some machine. We relate the expected flow time of a Model 3-schedule to the
flow time of a tandem queue, in which the layers are the machines.
Lemma 3. The expected sum of flow times of a Model 3-schedule is at most
1/pδ times the sum of flow times of a deterministic tandem queue with unit
processing times.

Proof. Consider a Model 3 schedule S for instance I. First, assume that when in
a round some layer fails to communicate, then all layers fail in that round. In this
case, the probability of having no communication in a round is 1−pδ . The sched-
ule S  that remains after removing rounds without communication is equivalent
to a schedule of a deterministic tandem queue with unit processing times, where
each packet j of the Model 3 instance is transformed in a job arriving at machine
Md(vj ,s) . Consider any set of k rounds of a schedule of a deterministic tandem
queue with unit processing times. The expectednumber of rounds required to

schedule these k rounds in schedule S  is kpδ · i=0 (1 − pδ )i · (i + 1) = k/pδ .
Let Fj be the flow time of packet j in S  . Then we have E[Fj ] = Fj /pδ , for
(3)

each packet j. Flow times are not increased if only some layers fail, but others
forward a packet. 

The Distributed Wireless Gathering Problem 81

Lemma 4. The sum of flow times of a deterministic tandem queue with unit
processing times is at most the sum of flow times of an optimal offline Wgp
schedule.

Proof. Let S be a deterministic tandem queue schedule, and let S ∗ be a schedule


where in each round each layer, except layer 1, can forward any number of
packets, and layer 1 can forward at most one packet.
Consider schedule S ∗ . Let Mt∗ be the set of packets which have not arrived
at the sink in round t. Because the schedule can forward any number of packets
over an edge, we have that if no packet is sent to the sink in S ∗ in round t, then
no packet in Mt∗ can arrive at the sink before or at round t, i.e. rj + δj > t
for each j ∈ Mt∗ . We prove the lemma by demonstrating that if some packet is
sent to the sink in S ∗ in round t, then also some packet is sent to the sink in
S in round t. This suffices to prove the lemma, because an offline optimal Wgp
schedule can not send packets faster than in schedule S ∗ .
Suppose to the contrary that there is a first round t in which some packet is
sent to the sink in S ∗ , but no packet is sent to the sink in S. Let t , t < t, be
the last round before t in which no packet is sent to the sink in S ∗ . Then, there
is a set of t − t packets in S ∗ which arrive at the sink in rounds (t , t]. Hence,
it follows from this and the observation above that there are t − t packets j
such that t < rj + δj ≤ t. Now consider schedule S; in this schedule t − t − 1
packets are sent to the sink in rounds (t , t − 1], hence there is a packet j with
t < rj + δj ≤ t which has not arrived at the sink in round t. But then, j must
have been in layer 1 + i or higher in rounds t − i, i = 1, . . . , δj . I.e. j must have
been in layer 1+δj or higher in round rj ≤ t−δj which gives a contradiction.  

Theorem 2. Let 0 <  ≤ 1 and σ = 6μ−1 · log Δ · ln(δ/). Then σ-speed DG is


in expectation (1 + 3)-competitive when minimizing the average flow time.

Proof. It follows from Lemmas 3 and 4 that the expected sum of flow times of
σ-speed DG is at most 1/pδ times the sum of flow times of an optimal offline
solution, for σ = 6a log Δ. As σ-speed DG is an online algorithm, DG is σ-
speed p−δ -competitive when minimizing average flow times. The probability p =
1 − (1 − μ)a depends on the choice of the speedup a. We set a := μ−1 ln(δ/),
−1
which gives p = 1 − (1 − μ)μ ln(δ/) ≥ 1 − e− ln(δ/) = 1 − /δ, so that p−δ ≤
−δ
(1 − /δ) ≤ e ≤ e2 ln(1+) = 1 + 2 + 2 ≤ 1 + 3. 


It follows from the theorem that the competitive ratio of DG can be made
arbitrarily close to 1 with an appropriate increase in speed.

5 An Extension

The model that we considered so far for Wgp assumes that a node can only
cause interference at nodes that are adjacent to it in the network. In practice,
the interference caused by the radio signal can go beyond the transmission radius
[22]. This can be modeled by an integer dI ≥ 1 that specifies the distance
82 V. Bonifaci et al.

(expressed in number of hops) up to which the signal can cause interference: two
calls (u, v) and (u , v  ) are now compatible if d(u, v  ) ≤ dI and d(u , v) ≤ dI (we
still require that u is adjacent to v, and u to v  ).
Algorithm DG can be extended to this setting by assigning to a node in layer
d the label d mod dI + 2 and then using superphases consisting of dI + 2 phases
each. In this way one can avoid interference between nodes from different layers
of the tree. It is easy to see that Theorem 1 can be extended to this setting.
Using this fact, we can extend our analysis in the previous section to prove
the following result.
Theorem 3. Let  > 0 and σ = Θ(d2I · log Δ · ln(δ/)). Then σ-speed DG is in
expectation (1 + )-competitive when minimizing the average flow time.
We notice that one dI factor is due to the longer superphases, and another one
is due to Decay having to cope with larger neighborhoods (of size ΔdI ).

6 Conclusion and Open Problems

We considered the wireless gathering problem with the objective of minimizing


the average flow time of data packets when nodes are restricted in their com-
putational and communication capabilities. We showed that a simple on-line
algorithm has favorable behavior when the objective function is minimizing the
average flow: although the problem is extremely hard to approximate in gen-
eral, augmenting the transmission rate allows to remain within a small factor of
the cost of an optimal solution for the problem without augmentation. We also
showed for max flow a lower bound on the competitive ratio of any (possibly
non polynomial time) algorithm, which depends on the number of packets.
The proposed algorithm is simple; however it assumes the existence of a com-
mon clock that is used to reduce interferences. It would be interesting to extend
the results by removing such an assumption. It is interesting for future research
to study other objective functions and to allow other routing than through a
tree, in which case it will be challenge to design and analyze congestion avoiding
algorithms with better ratios than those developed for trees.

References
1. Akyildiz, I.F., Su, W., Sankarasubramaniam, Y., Cayirci, E.: Wireless sensor net-
works: a survey. Computer Networks 38(4), 393–422 (2002)
2. Andrews, M., Awerbuch, B., Fernández, A., Leighton, F.T., Liu, Z., Kleinberg,
J.M.: Universal-stability results and performance bounds for greedy contention
resolution protocols. Journal of the ACM 48(1), 39–69 (2001)
3. Bar-Yehuda, R., Goldreich, O., Itai, A.: On the time-complexity of broadcast in
multihop radio networks: an exponential gap between determinism and random-
ization. Journal of Computer and System Sciences 45(1), 104–126 (1992)
4. Bar-Yehuda, R., Israeli, A., Itai, A.: Multiple communication in multihop radio
networks. SIAM Journal on Computing 22(4), 875–887 (1993)
The Distributed Wireless Gathering Problem 83

5. Bermond, J., Galtier, J., Klasing, R., Morales, N., Pérennes, S.: Hardness and ap-
proximation of gathering in static radio networks. Parallel Processing Letters 16(2),
165–183 (2006)
6. Bonifaci, V., Korteweg, P., Marchetti-Spaccamela, A., Stougie, L.: An approxima-
tion algorithm for the wireless gathering problem. In: Proc. of the 10th Scandina-
vian Workshop on Algorithms and Theory, pp. 328–338 (2006)
7. Bonifaci, V., Korteweg, P., Marchetti-Spaccamela, A., Stougie, L.: Minimzing flow
time in the wireless gathering problem. In: Proc. of the 25th Int. Symp. on Theo-
retical Aspects of Computer Science (2008)
8. Borodin, A., Kleinberg, J.M., Raghavan, P., Sudan, M., Williamson, D.P.: Adver-
sarial queuing theory. Journal of the ACM 48(1), 13–38 (2001)
9. Florens, F.C., McEliece, R.M.: Lower bounds on data collection time in sensory
networks. IEEE J. on Selected Areas in Communications 22, 1110 (2004)
10. Chekuri, C., Goel, A., Khanna, S., Kumar, A.: Multi-processor scheduling to min-
imize flow time with epsilon resource augmentation. In: Proc. of the ACM Symp.
on the Theory of Computing, pp. 363–372 (2004)
11. Håstad, J., Leighton, F.T., Rogoff, B.: Analysis of backoff protocols for multiple
access channels. SIAM Journal on Computing 25(4) (1996)
12. Kalyanasundaram, B., Pruhs, K.: Speed is as powerful as clairvoyance. Journal of
the ACM 47(4), 617–643 (2000)
13. Kar, K., Kodialam, M.S., Lakshman, T.V., Tassiulas, L.: Routing for network
capacity maximization in energy-constrained ad-hoc networks. In: Proc. IEEE IN-
FOCOM (2003)
14. Kodialam, M.S., Nandagopal, T.: Characterizing achievable rates in multi-hop
wireless networks: the joint routing and scheduling problem. In: Proc. MOBICOM,
pp. 42–54 (2003)
15. Kumar, V.S.A., Marathe, M.V., Parthasarathy, S., Srinivasan, A.: End-to-end
packet-scheduling in wireless ad-hoc networks. In: Proc. of the ACM-SIAM Symp.
on Discrete Algorithms, pp. 1021–1030 (2004)
16. Kumar, V.S.A., Marathe, M.V., Parthasarathy, S., Srinivasan, A.: Provable algo-
rithms for joint optimization of transport, routing and MAC layers in wireless ad
hoc networks. In: Proc. Dial-M/POMC (2007)
17. Lu, G., Krishnamachari, B., Raghavendra, C.S.: An adaptive energy-efficient and
low-latency mac for data gathering in wireless sensor networks. In: Proc. IEEE
IPDPS (2004)
18. Moscibroda, T., Wattenhofer, R.: The complexity of connectivity in wireless net-
works. In: Proc. IEEE INFOCOM (2006)
19. Pahlavan, K., Levesque, A.H.: Wireless information networks. Wiley, Chichester
(1995)
20. Perkins, C.E.: Ad hoc networking. Addison-Wesley, Reading (2001)
21. Polastre, J., Hill, J.L., Culler, D.E.: Versatile low power media access for wireless
sensor networks. In: Proc. SenSys., pp. 95–107 (2004)
22. Schmid, S., Wattenhofer, R.: Algorithmic models for sensor networks. In: Proc.
IEEE IPDPS (2006)
23. Xiao, L., Johansson, M., Boyd, S.P.: Simultaneous routing and resource allocation
via dual decomposition. IEEE Transactions on Communications 52(7), 1136–1144
(2004)
Approximating Maximum Edge 2-Coloring in
Simple Graphs Via Local Improvement

Zhi-Zhong Chen and Ruka Tanahashi

Department of Mathematical Sciences, Tokyo Denki University,


Hatoyama, Saitama 350-0394, Japan

Abstract. We present a polynomial-time approximation algorithm for


legally coloring as many edges of a given simple graph as possible using
two colors. It achieves an approximation ratio of 24
29
= 0.827586 . . .. This
improves on the previous best ratio of 468
575
= 0.813913 . . ..

1 Introduction
Given a graph G and a natural number t, the maximum edge t-coloring problem
(called Max Edge t-Coloring for short) is to find a maximum set F of edges
in G such that F can be partitioned into at most t matchings of G. Motivated
by call admittance issues in satellite based telecommunication networks, Feige et
al. [2] introduced the problem and proved its APX-hardness. They also observed
that Max Edge t-Coloring is obviously a special case of the well-known
maximum coverage problem (see [4]). Since the maximum coverage problem
can be approximated by a greedy algorithm within a ratio of 1 − (1 − 1t )t [4], so
can Max Edge t-Coloring. In particular, the greedy algorithm achieves an
approximation ratio of 34 for Max Edge 2-Coloring which is the special case
of Max Edge t-Coloring where the input number t is fixed to 2. Feige et al.
13 ≈ 0.769 by an LP approach.
[2] has improved the trivial ratio 34 = 0.75 to 10
The APX-hardness proof for Max Edge t-Coloring given by Feige et al. [2]
indeed shows that the problem remains APX-hard even if we restrict the input
graph to a simple graph and fix the input integer t to 2. We call this restriction
(special case) of the problem Max Simple Edge 2-Coloring. Feige et al. [2]
also pointed out that for Max Simple Edge 2-Coloring, an approximation
ratio of 45 can be achieved by the following simple algorithm: Given a simple
graph G, first compute a maximum subgraph H of G such that the degree of
each vertex in H is at most 2 and there is no 3-cycle in H, and then remove one
arbitrary edge from each odd cycle of H.
In [1], the authors have improved the ratio to 468
575 . Essentially, the algorithm
in [1] differs from the simple algorithm only in the handling of 5-cycles where
instead of removing one arbitrary edge from each 5-cycle of H, we remove a
random edge from each 5-cycle of H. The intuition behind the algorithm is as
follows: If we delete a random edge from each 5-cycle of H, then for each edge
{u, v} in the optimal solution such that u and v belong to different 5-cycles, both
u and v become of degree 1 in H (after handling the 5-cycles) with a probability
4
of 25 and so can be added into H without losing the edge 2-colorability of H.

R. Fleischer and J. Xu (Eds.): AAIM 2008, LNCS 5034, pp. 84–96, 2008.

c Springer-Verlag Berlin Heidelberg 2008
Approximating Maximum Edge 2-Coloring in Simple Graphs 85

In this paper, we further improve the ratio to 24 29 . The basic idea behind our
algorithm is as follows: Instead of removing a random edge from each 5-cycle of H
and removing an arbitrary edge from each other odd cycle of H, we remove one
edge from each odd cycle of H with more care in the hope that after the removal, a
lot of edges {u, v} (in the optimal solution) with u and v belonging to different odd
cycles of H can be added to H. More specifically, we define a number of operations
that modify each odd cycle of H together with its neighborhood carefully without
decreasing the number of edges in H by two or more; our algorithm just performs
these operations on H until none of them is applicable. The nonapplicability of
these operations guarantees that H is edge 2-colorable and its number of edges is
close to optimal; the analysis is quite challenging.
Kosowski et al. [7] also considered Max Simple Edge 2-Coloring. They
presented an approximation algorithm that achieves a ratio of 28Δ−1235Δ−21 , where Δ
is the maximum degree of a vertex in the input simple graph. This ratio can be
arbitrarily close to the trivial ratio 45 because Δ can be very large. In particular,
this ratio is smaller than 2429 when Δ ≥ 6.
Kosowski et al. [7] showed that approximation algorithms for Max Simple
Edge 2-Coloring can be used to obtain approximation algorithms for cer-
tain packing problems and fault-tolerant guarding problems. Combining their
reductions and our improved approximation algorithm for Max Simple Edge
2-Coloring, we can obtain improved approximation algorithms for their pack-
ing problems and fault-tolerant guarding problems immediately.

2 Basic Definitions

A graph always means a simple undirected graph. A graph G has a vertex set
V (G) and an edge set E(G). For each v ∈ V (G), NG (v) denotes the set of all
vertices adjacent to v in G and dG (v) = |NG (v)| is the degree of v in G. If
dG (v) = 0, then v is an isolated vertex of G. For each U ⊆ V (G), G[U ] denotes
the subgraph of G induced by U .
A path in G is a connected subgraph of G in which exactly two vertices are of
degree 1 and the others are of degree 2. Each path has two endpoints and zero
or more inner vertices. An edge {u, v} of a path P is an inner edge of P if both
u and v are inner vertices of P . The length of a cycle or path C is the number
of edges in C. A cycle of odd (respectively, even) length is an odd (respectively,
even) cycle. A k-cycle is a cycle of length k. Similarly, a k + -cycle is a cycle
of length at least k. A path component (respectively, cycle component) of G is
a connected component of G that is a path (respectively, cycle). A path-cycle
cover of G is a subgraph H of G such that V (H) = V (G) and dH (v) ≤ 2 for
every v ∈ V (H). A cycle cover of G is a path-cycle cover of G in which each
connected component is a cycle. A path-cycle cover C of G is triangle-free if C
does not contain a 3-cycle.
G is edge-2-colorable if each connected component of G is an isolated vertex,
a path, or an even cycle. Note that Max Simple Edge 2-Coloring is the
problem of finding a maximum edge-2-colorable subgraph in a given graph.
86 Z.-Z. Chen and R. Tanahashi

3 The Algorithm

Throughout this section, fix a graph G and a maximum edge-2-colorable sub-


graph Opt of G. For convenience, for each path-cycle cover K of G, we define
two numbers as follows:

– n0 (K) is the number of isolated vertices in K.


– p(K) is the number of path components in K.

Like the simple algorithm described in Section 1, our algorithm starts by per-
forming the following step:

1. Compute a maximum triangle-free path-cycle cover H of G.

Since |E(H)| ≥ |E(Opt)|, it suffices to modify H into an edge-2-colorable


subgraph of G without significantly decreasing the number of edges in H. The
simple algorithm achieves an approximation ratio of 45 because it simply removes
an arbitrary edge from each odd cycle in H. In order to improve this ratio,
we have to treat 5-cycles (and other short odd cycles) in H more carefully. In
more details, when removing edges from odd cycles in H, we also want to add
some edges of E(G) − E(H) to H. For this purpose, we will define a number of
operations on H that always decrease the number of cycles in H but may decrease
the number of edges in H or not. To tighten the analysis of the approximation
ratio achieved by our algorithm, we set up a charging scheme that charges the
net loss of edges from H (due to the operations) to some edges still remaining
in H. Whenever we do this, we will always maintain the following invariants:

I1. Every edge of H is charged a real number smaller than or equal to 19 .


I2. The total charge on the edges of H equals the total number of operations
performed on H that decrease the number of edges in H.
I3. No cycle component of H contains a charged edge.
I4. If a path component P of H contains a charged edge, then the length of P
is at least 6.

Initially, every edge of H is charged nothing. However, as we modify H by


performing operations (to be defined below), some edges of H will be charged.
We first define those operations on H that decrease the number of odd cycles
in H but do not decrease the number of edges in H. In order to do this, the
following three concepts are necessary:
A quadruple (x, y, P, u, v) is a 5-opener for an odd cycle C of H if the following
hold:

– dH (x) ≤ 1 and y ∈ V (C).


– P is a path component of H, both u and v are inner vertices of P , and x is
not a vertex of P .
– Both {u, x} and {v, y} are contained in E(G) − E(H).
Approximating Maximum Edge 2-Coloring in Simple Graphs 87

A sextuple (x, y, Q, P, u, v) is a 6-opener for an odd cycle C of H if the following


hold:
– x ∈ V (C) and y ∈ V (C). Moreover, if x = y, then Q is a cycle cover of
G[V (C) − {x}] in which each connected component is an even cycle; other-
wise, Q is a path-cycle cover of G[V (C)] in which one connected component
is a path from x to y and each other connected component is an even cycle.
– P is a path component of H and both u and v are inner vertices of P .
– Both {u, x} and {v, y} are contained in E(G) − E(H).
An operation (to be performed) on H is robust if the following holds:
– If G has no edge {u, v} before the operation such that u is an isolated vertex
in H and either v is an isolated vertex in H or v appears in a cycle component
of H, then neither does it after the operation.
Based on the above concepts, we are now ready to define six robust operations
on H that decrease the number of odd cycles in H but do not decrease the
number of edges in H.

Type 1: Suppose that {u, v} is an edge in E(G) − E(H) such that dH (u) ≤ 1
and v is a vertex of some cycle C of H. Then, a Type-1 operation on H using
{u, v} modifies H by deleting one (arbitrary) edge of C incident to v and adding
edge {u, v}. Obviously, this operation is robust and does not change |E(H)|.
(Comment: If dH (u) = 0 before a Type-1 operation, then n0 (H) decreases by 1
and p(H) increases by 1 after the operation. Similarly, if dH (u) = 1 before a
Type-1 operation, then neither n0 (H) nor p(H) changes after the operation.)

Type 2: Suppose that some odd cycle C of H has a 5-opener (x, y, P, u, v) with
{u, v} ∈ E(H) (see Figure 1). Then, a Type-2 operation on H using (x, y, P, u, v)
modifies H by deleting edge {u, v}, deleting one (arbitrary) edge of C incident
to y, and adding edges {u, x} and {v, y}. Obviously, this operation is robust
and does not change the number of edges in H. However, edge {u, v} may have
been charged before this operation. If that is the case, we move its charge to
{u, x}. Moreover, if the path component Q of H containing edge {u, x} after
this operation is of length at most 5, then we move the charges on the edges of
Q to edge {v, y} and the edges of C still remaining in H. (Comment: A Type-
2 operation on H maintains Invariants I1 through I4. Moreover, if dH (x) = 0
before a Type-2 operation, then n0 (H) decreases by 1 and p(H) increases by 1
after the operation. Similarly, if dH (x) = 1 before a Type-2 operation, then
neither n0 (H) nor p(H) changes after the operation.)

Type 3: Suppose that some odd cycle C of H has a 5-opener (x, y, P, u, v) such
that E(G) − E(H) contains the edge {w, s}, where w is the neighbor of v in the
subpath of P between u and v and s is the endpoint of P with distP (s, u) <
distP (s, v) (see Figure 2 in the appendix). Then, a Type-3 operation on H using
(x, y, P, u, v) modifies H by deleting edge {v, w}, deleting one (arbitrary) edge
eu of P incident to u, deleting one (arbitrary) edge of C incident to y, and
88 Z.-Z. Chen and R. Tanahashi

u v P u v P
x y x y

C C

Fig. 1. A Type-2 operation, where bold edges are in H

s u w v P s u w v P

x y x y

C C

Fig. 2. A Type-3 operation, where bold edges are in H

adding edges {u, x}, {v, y}, and {s, w}. Obviously, this operation is robust and
does not change the number of edges in H. Note that {v, w} or eu may have
been charged before this operation. If that is the case, we move their charges to
edges {u, x} and {s, w}, respectively. Moreover, if the path component Q of H
containing edge {u, x} after this operation is of length at most 5, then we move
the charges on the edges of Q to edge {v, y} and the edges of C still remaining
in H. (Comment: A Type-3 operation on H maintains Invariants I1 through I4.
Moreover, if dH (x) = 0 before a Type-3 operation, then n0 (H) decreases by 1
and p(H) increases by 1 after the operation. Similarly, if dH (x) = 1 before a
Type-3 operation, then neither n0 (H) nor p(H) changes after the operation.)

Type 4: Suppose that there is a quadruple (x, P, u, v) satisfying the following


conditions (see Figure 3 in the appendix):

– x is a vertex of a cycle component C of H.


– P is a path component of H and {u, v} is an inner edge of P .
– E(G) − E(H) contains both {u, x} and {s, v}, where s is the endpoint of P
with distP (s, u) < distP (s, v).

Then, a Type-4 operation on H using (x, P, u, v) modifies H by deleting edge


{u, v}, deleting one (arbitrary) edge of C incident to x, and adding edges {u, x}
and {s, v}. Obviously, this operation is robust and does not change the number
of edges in H. However, {u, v} may have been charged before this operation. If
that is the case, we move its charge to {u, x}. (Comment: A Type-4 operation
on H maintains Invariants I1 through I4, and changes neither n0 (H) nor p(H).)

Type 5: Suppose that there is a quintuple (x, P, u, v, w) satisfying the following


conditions (see Figure 4 in the appendix):

– x is a vertex of a cycle component C of H.


– P is a path component of H, u is an inner vertex of P , {v, w} is an inner
edge of P , and distP (u, v) < distP (u, w).
Approximating Maximum Edge 2-Coloring in Simple Graphs 89

s u v P s u v P
x x
C C

Fig. 3. A Type-4 operation, where bold edges are in H

s u v w t P s u v w t P

x x
C C

Fig. 4. A Type-5 operation, where bold edges are in H

– E(G) − E(H) contains {u, x}, {s, w}, and {t, v}, where s is the endpoint of
P with distP (s, u) < distP (s, v) and t is the other endpoint of P .

Then, a Type-5 operation on H using (x, P, u, v, w) modifies H by deleting edge


{v, w}, deleting one (arbitrary) edge eu of P incident to u, deleting one (arbi-
trary) edge of C incident to x, and adding {s, w}, {t, v}, and {u, x}. Obviously,
this operation is robust and does not change the number of edges in H. However,
{v, w} and eu may have been charged before this operation. If that is the case,
we move their charges to {u, x} and {s, w}, respectively. (Comment: A Type-5
operation on H maintains Invariants I1 through I4, and changes neither n0 (H)
nor p(H).)

Type 6: Suppose that some odd cycle C of H with length at most 9 has a 6-
opener (x, y, Q, P, u, v) such that {u, v} ∈ E(H) (see Figure 5 in the appendix).
Then, a Type-6 operation on H using (x, y, Q, P, u, v) modifies H by deleting
edge {u, v}, deleting all edges of C, adding edges {u, x} and {v, y}, and adding
all edges of Q. Obviously, this operation does not change the number of edges in
H, and is robust because (1) it does not create a new isolated vertex in H and
(2) if it creates one or more new cycles in H then V (C  ) ⊆ V (C) for each new
cycle C  . However, {u, v} may have been charged before this operation. If that
is the case, we move its charge to {u, x}. (Comment: A Type-6 operation on H
maintains Invariants I1 through I4, and changes neither n0 (H) nor p(H).)

Using the above operations, our algorithm then proceeds to modifying H by


performing the following step:

2. Repeat performing a Type-i operation on H with 1 ≤ i ≤ 6, until


none is applicable.

Obviously, H remains a triangle-free path-cycle cover of G. Moreover, the


following fact holds:
90 Z.-Z. Chen and R. Tanahashi

u v P u v P u v P u v P

x x x x
y y
C C C C

Fig. 5. A Type-6 operation, where bold edges are in H

Lemma 1. After Step 2, G has no edge {u, v} such that u is an isolated vertex in
H and either v is an isolated vertex in H or v appears in a cycle component of H.
Unfortunately, H may still have odd cycles after Step 2. So, we need to perform
new types of operations on H that always decrease the number of odd cycles
in H but may also decrease the number of edges in H. Before defining the new
operations on H, we define two concepts as follows. Two cycles C1 and C2 of H
are pairable if at least one of them is odd and their total length is at least 10.
A quintuple (x, y, P, u, v) is an opener for two pairable cycles C1 and C2 of H if
the following hold:
– x is a vertex of C1 and y is a vertex of C2 .
– P is either a path component of H or a 4-cycle of H other than C1 and C2 .
– u and v are distinct vertices of P with dH (u) = dH (v) = 2.
– Both {u, x} and {v, y} are in E(G) − E(H).
Now, we are ready to define the new types of robust operations on H as follows:

Type 7: Suppose that C is an odd cycle of H with length at least 11. Then,
a Type-7 operation on H using C modifies H by deleting one (arbitrary) edge
from C. Clearly, the net loss in the number of edges in H is 1. We charge this
loss evenly to the edges of C still remaining in H. In more details, if C was a
1
k-cycle before the operation, then a charge of k−1 is charged to each edge of
C still remaining in H after the operation. Since k ≥ 11, the charge assigned
1
to one edge here is at most 10 . Obviously, this operation is robust. (Comment:
A Type-7 operation on H maintains Invariants I1 through I4, does not change
n0 (H), and increases p(H) by 1.)

Type 8: Suppose that C1 and C2 are two pairable cycles of H such that there is
an edge {u, v} ∈ E(G) with u ∈ V (C1 ) and v ∈ V (C2 ). Then, a Type-8 operation
on H using {u, v} modifies H by deleting one (arbitrary) edge of C1 incident to
u, deleting one (arbitrary) edge of C2 incident to v, and adding edge {u, v}. Note
that this operation decreases the number of edges in H by 1. So, the net loss in
the number of edges in H is 1. We charge this loss evenly to edge {u, v} and the
edges of C1 and C2 still remaining in H. In more details, if C1 was a k-cycle and
1
C2 was an -cycle in H before the operation, then a charge of k+−1 is assigned to
{u, v} and each edge of C1 and C2 still remaining in H after the operation. Since
k ≥ 5 and  ≥ 5, the charge assigned to one edge here is at most 19 . Obviously, this
operation is robust. (Comment: A Type-8 operation on H maintains Invariants I1
through I4, does not change n0 (H), and increases p(H) by 1.)
Approximating Maximum Edge 2-Coloring in Simple Graphs 91

u v P u v P
x y x y

C1 C2 C1 C2

Fig. 6. A Type-9 operation, where bold edges are in H

Type 9: Suppose that two odd cycles C1 and C2 of H have an opener


(x, y, P, u, v) with {u, v} ∈ E(H) (see Figure 6 in the appendix). Then, a Type-9
operation on H using (x, y, P, u, v) modifies H by deleting edge {u, v}, deleting
one (arbitrary) edge of C1 incident to x, deleting one (arbitrary) edge of C2 in-
cident to y, and adding edges {u, x} and {v, y}. Note that edge {u, v} may have
been charged before this operation. If that is the case, we move its charge to
edge {u, x}. Moreover, the operation decreases the number of edges in H by 1.
So, the net loss in the number of edges in H is 1. We charge this loss evenly
to edge {v, y} and the edges of C1 and C2 still remaining in H. Obviously, the
charge assigned to one edge here is at most 19 . It is also clear that this oper-
ation is robust. (Comment: A Type-9 operation on H maintains Invariants I1
through I4, does not change n0 (H), and increases p(H) by 1.)

Type 10: Suppose that two odd cycles C1 and C2 of H have an opener
(x, y, P, u, v) such that E(G) − E(H) contains the edge {w, s}, where w is the
neighbor of v in the subpath of P between u and v and s is the endpoint of P
with distP (s, u) < distP (s, v) (see Figure 7 in the appendix). Then, a Type-10
operation on H using (x, y, P, u, v) modifies H by deleting edge {v, w}, deleting
one (arbitrary) edge eu of P incident to u, deleting one (arbitrary) edge of C1
incident to x, deleting one (arbitrary) edge of C2 incident to y, and adding edges
{u, x}, {v, y}, and {s, w}. Note that {v, w} or eu may have been charged before
this operation. If that is the case, we move their charges to edges {u, x} and
{v, y}, respectively. Moreover, the operation decreases the number of edges in H
by 1. So, the net loss in the number of edges in H is 1. We charge this loss evenly
to edge {s, w} and the edges of C1 and C2 still remaining in H. Obviously, the
charge assigned to one edge here is at most 19 . It is also clear that this opera-
tion is robust. (Comment: A Type-10 operation on H maintains Invariants I1
through I4, does not change n0 (H), and increases p(H) by 1.)

After Step 2, no matter how many times we perform Type-i operations on H


with 1 ≤ i ≤ 10, G cannot have an edge {u, v} such that u is an isolated vertex

s u w v P s u w v P

x y x y

C1 C2 C1 C2

Fig. 7. A Type-10 operation, where bold edges are in H


92 Z.-Z. Chen and R. Tanahashi

in H and either v is an isolated vertex in H or v appears in a cycle component


of H. This follows from Lemma 1 and the fact that every Type-i operation on
H with 1 ≤ i ≤ 10 is robust. However, after performing a Type-i operation on
H with 7 ≤ i ≤ 10, the following new type of robust operations on H may be
applicable:

Type 11: Suppose that {u, v} is an edge in E(G) − E(H) such that dH (u) = 1,
dH (v) ≤ 1, and no connected component of H contains both u and v. Then,
a Type-11 operation on H using {u, v} modifies H by adding edge {u, v}. Ob-
viously, this operation is robust and increases the number of edges in H by 1.
(Comment: If dH (v) = 0 before a Type-11 operation, then p(H) does not change
and n0 (H) decreases by 1 after the operation. Similarly, if dH (v) = 1 before a
Type-11 operation, then n0 (H) does not change and p(H) decreases by 1 after
the operation.)
Using the above operations, our algorithm then proceeds to modifying H by
performing the following steps:

3. Repeat using a Type-i operation to modify H with 1 ≤ i ≤ 11, until


none is applicable.
4. For each odd cycle C of H, remove one (arbitrary) edge from C.
(Comment: Each odd cycle modified in this step is a 5-, 7-, or 9-
cycle.)
5. Output H.

4 Performance Analysis
For 1 ≤ i ≤ 4, let Hi be the triangle-free path-cycle cover H of G immedi-
ately after Step i of our algorithm. In order to analyze the approximation ratio
achieved by our algorithm, we need to define several notations as follows:

– Let n, m, nis , and npc be the numbers of vertices, edges, isolated vertices,
and path components in H2 , respectively. (Comment: m ≥ |E(Opt)|.)
– Let m− be the number of Type-i operations with 7 ≤ i ≤ 10 performed in
Step 3.
– Let m+,−1 be the number of Type-11 operations performed Step 3 that
decrease the number of isolated vertices in H by 1.
– Let m+,0 be the number of Type-11 operations performed Step 3 that do
not change the number of isolated vertices in H.
– Let n0,−1 be the number of Type-i operations with 1 ≤ i ≤ 3 performed in
Step 3 that decrease the number of isolated vertices in H by 1.
– For each i ∈ {5, 7, 9}, let ci be the number of i-cycles in H3 .
– Let mc and muc be the numbers of charged edges and uncharged edges in
H3 , respectively.)
Approximating Maximum Edge 2-Coloring in Simple Graphs 93

Lemma 2. The following statements hold:


1. m− ≤ 101
(m + m+,0 + m+,−1 − muc ).
2. |E(H4 )| = m − m− + m+,0 + m+,−1 − c5 − c7 − c9 .
3. |E(H4 )| ≥ 10
9
(m + m+,0 + m+,−1 ) − ( 12 c5 + 10
3 1
c7 + 10 c9 ).

Proof. By the algorithm, |E(H3 )| = m−m− +m+,0 +m+,−1 . On the other hand,
|E(H3 )| = mc + muc by definition. So, mc = m − m− + m+,0 + m+,−1 − muc . We
also have m− ≤ 19 mc by Invariant I2. Thus, m− ≤ 10 1
(m + m+,0 + m+,−1 − muc ).
By Step 3, |E(H4 )| = |E(H3 )| − c5 − c7 − c9 . So, by the first equality in the
last paragraph, |E(H4 )| = m − m− + m+,0 + m+,−1 − c5 − c7 − c9 .
By Statements 1 and 2, |E(H4 )| ≥ 10
9
(m+m+,0 +m+,−1 )+ 10 1
muc −c5 −c7 −c9 .
We also have muc ≥ 5c5 + 7c7 + 9c9 , because each edge in a cycle component of
H3 is uncharged according to Invariant I3. Combining these two inequalities, we
have Statement 3. 2

Lemma 3. The following statements hold:


1. n − n0 (H3 ) − 2p(H3 ) = m − npc − 2m− + 2m+,0 + m+,−1 − n0,−1 .
2. p(H3 ) = npc + m− − m+,0 + n0,−1 .

Proof. Immediately before Step 3, n−n0 (H)−2p(H) = m−npc because p(H) =


npc and the number of vertices on a path is 1 plus the number of edges on the
path. Now, to prove the lemma, it suffices to see how the values of n − n0 (H) −
2p(H) and p(H) change when performing an operation in Step 3. The comment
on the definition of each type of operations helps. 2

In order to analyze the algorithm, we need more definitions:


– For i ∈ {0, 1}, let Ti be the set of all vertices v in H3 with dH3 (v) = i.
– Let T2 be the set of all vertices v in H3 such that v appears in an odd cycle
of H3 .
– Let T = T0 ∪ T1 ∪ T2 .
– For i ∈ {0, 1, 2}, let Ti be the set of vertices u ∈ V (G) − T such that
the number of edges {u, v} ∈ E(Opt) with v ∈ T is exactly i. (Comment:
V (G) − T = T0 ∪ T1 ∪ T2 .)
T
– Let Eopt be the set of all edges {u, v} in Opt such that both u and v are
vertices of T .
– Let C−2 be the set of all odd cycles in H3 such that Opt contains at most
|V (C)| − 2 edges {u, v} with {u, v} ⊆ V (C).

Lemma 4. |Eopt T
| ≤ p(H3 ) + 4c5 + 6c7 + 8c9 − |C−2 | ≤ npc + m− − m+,0 + n0,−1 +
4c5 + 6c7 + 8c9 − |C−2 |.

Proof. First, we claim that each vertex u ∈ T0 is an isolated vertex in G[T ]. To


see this, consider an arbitrary u ∈ T0 . Because of Lemma 1 and the fact that
all Type-i operations with 1 ≤ i ≤ 11 are robust, there is no vertex v ∈ T0 ∪ T2
with {u, v} ∈ E(G). Moreover, since no Type-11 operation can be applied to
H3 , there is no vertex v ∈ T1 with {u, v} ∈ E(G). So, the claim holds.
94 Z.-Z. Chen and R. Tanahashi

Next, we claim that there is no edge {u, v} ∈ E(G) with u ∈ T1 and v ∈ T2 .


This follows from the fact that no Type-1 operation can be applied to H3 .
T
By the above two claims, each edge in Eopt is either in G[T1 ] or in G[T2 ].
Since no Type-11 operation can be applied to H3 , there is no edge {u, v} ∈ E(G)
with {u, v} ⊆ T1 such that u and v belong to different connected components
of H3 . So, there are at most p(H3 ) edges in G[T1 ]. Consequently, to show the
T
first inequality in the lemma, it remains to show that Eopt contains at most
4c5 + 6c7 + 8c9 − |C−2 | edges {u, v} with {u, v} ⊆ T2 .
Suppose that {u, v} is an edge in EoptT
with {u, v} ⊆ T2 . Since no Type-8
operation can be applied to H3 , x and y belong to the same cycle component of
T
H3 [T2 ]. On the other hand, since each cycle C in H3 [T2 ] is an odd cycle, Eopt
can contain at most |E(C)| − 1 edges {u, v} with {u, v} ⊆ V (C). In particular,
for each cycle C ∈ C−2 , Eopt
T
can contain at most |E(C)| − 2 edges {u, v} with
{u, v} ⊆ V (C). Hence, Eopt contains at most 4c5 + 6c7 + 8c9 − |C−2 | edges {u, v}
T

with {u, v} ⊆ T2 . This completes the proof of the first inequality in the lemma.
The second follows from the first and Statement 2 in Lemma 3. 2

Lemma 5. |Eopt T
| ≥ |E(Opt)| − 2m + 2npc + 4m− − 4m+,0 − 2m+,−1 + 2n0,−1 +
10c5 + 14c7 + 18c9 + |T0 | + 12 |T1 |.

Proof. The idea behind the proof is to obtain an upper bound on |E(Opt)−Eopt T
|.
A trivial upper bound is 2(n − |T |), because each edge in E(Opt) − Eopt must be
T

incident to a vertex in V (G) − T and each vertex in V (G) − T can be adjacent


to at most two edges in Opt. This bound is not good enough because each edge
{u, v} ∈ E(Opt) with {u, v} ⊆ V (G) − T is counted twice.
To get a better bound, we set up a savings account for each vertex in V (G)−T .
Initially, we deposit two credits to the account of each vertex. The total credits
amount to 2(n − |T |) (namely, the trivial upper bound). Next, for each edge
{u, v} ∈ E(Opt) with {u, v} ⊆ V (G) − T , we pay a half credit from the account
of u and another half credit from the account of v. After this, for each edge
{u, v} ∈ E(Opt) with u ∈ V (G) − T and v ∈ T , we pay one credit from the
account of u. Obviously, we paid a total of |E(Opt) − Eopt T
| credits. We want to
estimate the number of credits that are still left in the accounts of the vertices
in V (G) − T . First, for each vertex u ∈ T0 , we paid at most one credit, because
u is incident to at most two edges in E(Opt) − Eopt T
and each of them has both
of its endpoints in V (G) − T . So, the total number of credits still left in the
accounts of the vertices in T0 is at least |T0 |. Second, for each vertex u ∈ T1 ,
we paid at most one and a half credits, because u is incident to at most two
edges in E(Opt) − Eopt T
and one of them has an endpoint in T . Thus, the total
number of credits still left in the accounts of the vertices in T1 is at least 12 |T1 |.
In summary, we have shown that |E(Opt) − Eopt T
| ≤ 2(n − |T |) − |T0 | − 12 |T1 |.
Obviously, |T | = n0 (H3 ) + 2p(H3 ) + 5c5 + 7c7 + 9c9 . So, by Statement 1 in
Lemma 3, |T | = n − (m − npc − 2m− + 2m+,0 + m+,−1 − n0,−1 ) + 5c5 + 7c7 + 9c9 .
In other words, n − |T | = m − npc − 2m− + 2m+,0 + m+,−1 − n0,−1 − 5c5 −
7c7 − 9c9 . Hence, by the last inequality in the last paragraph, |E(Opt) − Eopt T
|≤
Approximating Maximum Edge 2-Coloring in Simple Graphs 95

2m − 2npc − 4m− + 4m+,0 + 2m+,−1 − 2n0,−1 − 10c5 − 14c7 − 18c9 − |T0 | − 12 |T1 |.
So, the lemma holds. 2

Lemma 6. |E(H4 )| ≥ 45 |E(Opt)|.


37

Proof. Combining Lemmas 4 and 5, we have |E(Opt)| ≤ 2m − npc − 3m− +


3m+,0 + 2m+,−1 − n0,−1 − 6c5 − 8c7 − 10c9 . So, by Statement 2 in Lemma 2,
3|E(H4 )|−|E(Opt)| ≥ m+m+,−1 +npc +n0,−1 +3c5 +5c7 +7c9 . Thus, 3c5 +5c7 +
7c9 ≤ 3|E(H4 )| − |E(Opt)| − m. Hence, 12 c5 + 10 3 1
c7 + 10 c9 ≤ 16 (3c5 + 5c7 + 7c9 ) ≤
2 |E(H4 )| − 6 |E(Opt)| − 6 m. Therefore, by Statement 3 in Lemma 2, we have
1 1 1

|E(H4 )| ≥ 10
9
m − ( 12 |E(H4 )| − 16 |E(Opt)| − 16 m). Rearranging this inequality and
using the fact that m ≥ |E(Opt)|, we finally obtain |E(H4 )| ≥ 37 45 |E(Opt)|. 2

Note that 3745 = 0.8222 . . . which is better than the previously best ratio. To show
that our algorithm indeed achieves an even better ratio, our idea is to show that
|C−2 | + |T0 | + 12 |T1 | is large. This holds basically because no Type-i operation
with i ∈ {1, . . . , 11} can be applied to H3 . The proof is very complicated and will
appear in the full version of this paper. In summary, we have our main result:

Theorem 1. There is an O(n2 m2 )-time approximation algorithm for Max Sim-


ple Edge 2-Coloring achieving a ratio of 24 29 , where n (respectively, m) is the
number of vertices (respectively, edges) in the input graph.

5 An Application

Let G be a graph. An edge cover of G is a set F of edges of G such that


each vertex of G is incident to at least one edge of F . For a natural number
k, a [1,Δ]-factor k-packing of G is a collection of k disjoint edge covers of G.
The size of a [1,Δ]-factor k-packing {F1 , . . . , Fk } of G is |F1 | + · · · + |Fk |. The
problem of deciding whether a given graph has a [1,Δ]-factor k-packing was
considered in [5,6]. In [7], Kosowski et al. defined the minimum [1,Δ]-factor k-
packing problem (Min-k-FP) as follows: Given a graph G, find a [1,Δ]-factor
k-packing of G of minimum size or decide that G has no [1,Δ]-factor k-packing
at all.
According to [7], Min-2-FP is of special interest because it can be used to
solve a fault tolerant variant of the guards problem in grids (which is one of the
art gallery problems [8,9]). Min-2-FP is NP-hard [7].

Lemma 7. [7] If Max Simple Edge 2-Coloring admits an approximation


algorithm A achieving a ratio of α, then Min-2-FP admits an approximation
algorithm B achieving a ratio of 2 − α. Moreover, if the time complexity of A is
T (n), then the time complexity of B is O(T (n)).

Theorem 2. There is an O(n2 m2 )-time approximation algorithm for Min-2-


FP achieving a ratio of 34 29 , where n (respectively, m) is the number of vertices
(respectively, edges) in the input graph.
96 Z.-Z. Chen and R. Tanahashi

Theorem 2 follows from Theorem 1 and Lemma 7 immediately. Previously, the


best ratio achieved by a polynomial-time approximation algorithm for Min-2-
FP was 682
575 [1], although Min-2-FP admits a polynomial-time approximation
algorithm achieving a ratio of 42Δ−30
35Δ−21 , where Δ is the maximum degree of a
vertex in the input graph [7].

References
1. Chen, Z.-Z., Tanahashi, R., Wang, L.: An Improved Approximation Algorithm for
Maximum Edge 2-Coloring in Simple Graphs. Journal of Discrete Algorithms (to
appear)
2. Feige, U., Ofek, E., Wieder, U.: Approximating Maximum Edge Coloring in Multi-
graphs. In: Jansen, K., Leonardi, S., Vazirani, V.V. (eds.) APPROX 2002. LNCS,
vol. 2462, pp. 108–121. Springer, Heidelberg (2002)
3. Hartvigsen, D.: Extensions of Matching Theory. Ph.D. Thesis, Carnegie-Mellon Uni-
versity (1984)
4. Hochbaum, D.: Approximation Algorithms for NP-Hard Problems. PWS Publishing
Company, Boston (1997)
5. Jacobs, D.P., Jamison, R.E.: Complexity of Recognizing Equal Unions in Families
of Sets. Journal of Algorithms 37, 495–504 (2000)
6. Kawarabayashi, K., Matsuda, H., Oda, Y., Ota, K.: Path Factors in Cubic Graphs.
Journal of Graph Theory 39, 188–193 (2002)
7. Kosowski, A., Malafiejski, M., Zylinski, P.: Packing Edge Covers in Graphs of Small
Degree (manuscript, 2006)
8. O’Rourke, J.: Art Gallery Theorems and Algorithms. Oxford University Press, Ox-
ford (1987)
9. Urrutia, J.: Art Gallery and Illumination Problems. In: Handbook on Computational
Geometry, Elsevier Science, Amsterdam (2000)
An Improved Randomized Approximation
Algorithm for Maximum Triangle Packing

Zhi-Zhong Chen1 , Ruka Tanahashi1 , and Lusheng Wang2


1
Department of Mathematical Sciences, Tokyo Denki University,
Hatoyama, Saitama 350-0394, Japan
2
Department of Computer Science, City University of Hong Kong,
Tat Chee Avenue, Kowloon, Hong Kong

Abstract. This paper deals with the maximum triangle packing prob-
lem. For this problem, Hassin and Rubinstein gave a randomized
polynomial-time approximation algorithm and claimed that it achieves
an expected ratio of 16989
(1 − ) for any constant  > 0. However, their
analysis was flawed. We present a new randomized polynomial-time ap-
proximation algorithm for the problem which achieves an expected ratio
very close to their claimed expected ratio.

1 Introduction

In the maximum triangle packing problem (MTP for short), we are given an
edge-weighted complete graph G = (V, E) such that the edge weights are non-
negative and |V | is a multiple of 3. The objective is to find a partition of V
into 13 |V | disjoint subsets each of size exactly 3 such that the total weight of
edges whose endpoints belong to the same subset is maximized. MTP is a clas-
sic NP-hard problem; indeed, it is contained in Garey and Johnson’s famous
book on the theory of NP-completeness [2]. MTP is not only NP-hard but also
MAX SNP-hard [5], implying that it does not admit a polynomial-time approxi-
mation scheme unless P = N P . A stronger hardness result has been obtained by
Chlebı́k and Chlebı́ková [1]: No polynomial-time approximation algorithm can
approximate MTP within a ratio of 0.9929 unless P = N P .
On the positive side, Hassin and Rubinstein [3] have presented a randomized
polynomial-time approximation algorithm for MTP. In [3], they claimed that
their algorithm achieves an expected ratio of 169 89
(1 − ) for any constant  > 0.
However, the first author of this paper pointed out a flaw in their analysis to
them and they [4] have corrected the expected ratio to 43 83 (1 − ).
In this paper, we obtain a new randomized polynomial-time approximation
algorithm for MTP by substantially modifying the algorithm due to Hassin and
Rubinstein. Like their algorithm, our algorithm starts by computing a maximum
cycle cover C in the input graph G, then processes C to obtain three triangle
packings of G, and finally outputs the maximum weighted packing among the
three packings. Unlike their algorithm, our algorithm processes triangles in C in
a different way than the other cycles in C, and tries to connect the cycles in C by

R. Fleischer and J. Xu (Eds.): AAIM 2008, LNCS 5034, pp. 97–108, 2008.

c Springer-Verlag Berlin Heidelberg 2008
98 Z.-Z. Chen, R. Tanahashi, and L. Wang

using some edges in a maximum-weight b-matching (rather than a maximum-


weight matching) between the cycles. Although our algorithm may look similar
to the one in [3], our algorithm needs a deeper analysis of various probabilities.
By carefully analyzing the new algorithm, we show that it achieves an expected
169 (1 − ) for any constant  > 0. Although the new ratio (namely,
ratio of 88.85
169 (1 − )) may seem to be only slightly better than the old ratio (namely,
88.85

83 (1 − )), it is of interest for the following two reasons: First, the new ratio
43
89
is very close to 169 (1 − ) which is the expected ratio wrongly claimed in [3];
hence our new algorithm and its analysis can be viewed as an almost complete
correction of the flaw committed in [3]. Second, the improvement (achieved by
our new algorithm) from 43 83 (1 − ) to 169 (1 − ) is almost half the improvement
88.85

(achieved by the algorithm in [3]) from the trivial ratio 12 to 43 83 (1 − ).


Our randomized algorithm is too sophisticated to derandomize. However, we
can modify it to obtain another randomized algorithm which achieves a slightly
smaller expected ratio but can be derandomized using the pessimistic estima-
tor method [6]; the resulting deterministic polynomial-time approximation algo-
rithm for MTP still achieves a better ratio (namely, 43.1 83 (1−)) than the expected
ratio achieved by Hassin and Rubinstein’s randomized algorithm [4]. We omit
the details here.

2 Basic Definitions

Throughout the remainder of this paper, a graph means an undirected graph


without parallel edges or self-loops whose edges each have a nonnegative weight.
A graph G has a vertex set V (G) and an edge set E(G). We denote the weight
of a subgraph H of G by w(H). For a function b mapping each vertex v of G to
a nonnegative integer, a b-matching of G is a subset F of E(G) such that each
vertex v of G is incident to at most b(v) edges in F . A path component of G is
a connected component of G that is a path.
For a random event A, Pr[A] denotes the probability that A occurs. For a
random event A and one or more random events B1 , . . . , Bh , Pr[A | B1 , . . . , Bh ]
denotes the probability that A occurs given the occurrences of B1 , . . . , Bh . For a
random variable X, E[X] denotes the expected value of X. For a random variable
X and one or more random events B1 , . . . , Bh , E[X | B1 , . . . , Bh ] denotes the
expected value of X given the occurrences of B1 , . . . , Bh .

3 Sketch of Hassin and Rubinstein’s Algorithm

Throughout this section, fix an instance G of MTP and an arbitrary constant


 > 0. Moreover, fix a maximum-weight triangle packing Opt of G.
To compute a triangle packing of large weight, Hassin and Rubinstein’s al-
gorithm [3] (H&R-algorithm for short) starts by computing a maximum-weight
cycle cover C of G. It then breaks each cycle C ∈ C with |C| > 1 into cy-
cles of length at most 1 . This is done by removing a set F of edges in C with
An Improved Randomized Approximation Algorithm for MTP 99

w(F ) ≤  · w(C) and then adding one edge between the endpoints of each result-
ing path. In this way, the length of each cycle in C becomes short, namely, is at
most 1 . H&R-algorithm then uses C to compute three triangle packings P1 , P2 ,
and P3 of G, and further outputs the packing whose weight is maximum among
the three.
Computing P1 and P2 from C in H&R-algorithm is easy:

Lemma 1. [3] Let α · w(C) be the total weight of edges in triangles in C. Then,
w(P1 ) ≥ 1+α
2 · w(C) ≥ 2 (1 − ) · w(Opt).
1+α

Lemma 2. [3] Let β · w(Opt) be the total weight of those edges {u, v} such that
some triangle in Opt contains both u and v and some cycle in C contains both
u and v. Then, w(P2 ) ≥ β · w(Opt).

Unlike P1 and P2 , the computation of P3 from C in H&R-algorithm is done by


a complicated randomized subroutine which can be sketched as follows: Because
of P2 , we only need to consider how to find a triangle packing of large weight
when Opt contains a heavy set of edges between cycles in C. So, assume that Opt
contains a heavy set of edges between cycles in C. Then, G must contain a heavy
matching M consisting of edges whose endpoints belong to different cycles in C.
Thus, we want P3 to contain not only as many edges of C but also as many edges
of M as possible. Towards this goal, one way is to mark each edge of C with a
probability 0 < q < 1 such that adjacent edges in C and edges in different cycles
in C are marked independently at random and each cycle in C has at least one
edge marked. Let R be the set of marked edges. We say that an edge e of M
survives the marking process if both endpoints of e become of degree at most 1
in graph C − R. Note that each edge of M survives the marking process with
probability (2q − q 2 )2 . Let C  be the graph obtained from C − R by adding the
edges of M . Then, the expected weight of C  is (1 − q)w(C) + (2q − q 2 )2 w(M ).
Moreover, each connected component of C  is either a path, or a cycle containing
at least two edges of M . So, after removing one edge of M from each cycle
in C  , we obtain a collection of paths whose expected total weight is at least
(1 − q)w(C) + 12 (2q − q 2 )2 w(M ). These paths are then patched together into a
Hamiltonian cycle of G which is then cut into paths of length 2 by removing
one third of its edges. The resulting paths of length 2 lead to a triangle packing
whose expected weight is at least 23 (1 − q)w(C)+ 13 (2q − q 2 )2 w(M ), which is large
if w(M ) is large.

4 New Computation of P3
This section details our new computation of P3 , which is basically a significant
refinement of the computation of P3 in H&R-algorithm. We inherit the notations
in the last section.
There are two main ideas in our new computation of P3 . First, the weight of
the matching M computed in H&R-algorithm (outlined above) may be as small
as 13 w(Opt). In our new computation, we instead compute a maximum-weight
100 Z.-Z. Chen, R. Tanahashi, and L. Wang

b-matching M1 consisting of edges whose endpoints belong to different cycles in


C, where b(v) = 2 for every vertex v. Note that w(M1 ) is close to w(Opt) when
Opt contains a heavy set of edges between cycles in C. If we are lucky enough
that M1 contains no cycle of odd length, then we can partition M1 into two
matchings among which the heavier one has weight close to 12 w(Opt) and we
can use it as M . Suppose that C is a cycle of odd length in M1 . The crucial
point is that with a significantly high probability, at least one edge of C will not
survive the marking process. Thus, with a significantly high probability, we can
partition the survived edges of M1 into two matchings among which the heavier
one can be used as M .
Second, it is unnecessary to require that each triangle C in C have at least
one edge marked because if C has no edge marked then C can be included in P3
as it is. That is, we may distinguish the triangles in C from the other cycles and
mark the edges in triangles in C with a smaller probability (so that the edges in
triangles have a larger probability to remain in P3 ).
Next, we detail our new computation of P3 from C. The first step is as follows:

1. Compute a maximum-weight b-matching M1 in a graph G1 , where


– V (G1 ) = V (G),
– E(G1 ) consists of those {u, v} ∈ E(G) such that u and v belong to
different cycles in C, and
– b(v) = 2 for each v ∈ V (G1 ). (Comment: Note that b(v) is an upper
bound on the degree of v in G1 and hence is not necessarily the degree
of v in G1 .)

Note that w(M1 ) is close to w(Opt) when Opt contains a heavy set of edges
between cycles in C. So, we want to add the edges of M1 to C. However, adding
the edges of M1 to C yields a graph which may have a lot of vertices of degree 3
or 4 and is hence far from a triangle packing of G. To remedy this situation, we
want to compute a set R of edges in C and a subset M of M1 such that adding
the edges of M to C − R yields a graph in which each connected component is
a cycle or path.
The next two steps of our algorithm are for computing the set R. Before
describing the details, we need to define several notations. Let C1 , . . . , Cr be
the cycles in C. Moreover, throughout the remainder of this section, let p be the
20 p − 10 p ≥ 320 ; the reason why
smallest real number satisfying the inequality 27 2 9 3 27

we select p in this way will become clear in Lemma 11. Note that 0.276 < p <
80 p − 80 p ≥ 320 . Now, we are ready to describe
0.277; hence (1 − p)2 > 12 and 27 9 2 27

Steps 2 and 3 of our algorithm.

2. In parallel, for each cycle Ci in C, process Ci by performing the following


steps:
(a) Initialize Ri to be the empty set.
(b) If |Ci | = 3, then for each edge e of Ci , add e to Ri with probability p.
(c) If |Ci | ≥ 4, then perform the following steps:
i. Choose one edge e1 from Ci uniformly at random.
An Improved Randomized Approximation Algorithm for MTP 101

ii. Starting at e1 and going clockwise around Ci , label the other edges
of Ci as e2 , . . . , ec , where c is the number of edges in Ci .
iii. Add the edges ej with j ≡ 1 (mod 4) and j ≤ c− 3 to Ri . (Comment:
Ri is a matching of Ci and |Ri | =  |C4i | .)
iv. If c ≡ 1 (mod 4), then add ec−1 to Ri with probability 14 . (Comment:
Ri remains to be a matching of Ci . Moreover, E[|Ri |] = |Ci4|−1 +1· 41 =
|Ci |
4 .)
v. If c ≡ 2 (mod 4), then add ec−1 to Ri with probability 12 . (Comment:
Ri remains to be a matching of Ci . Moreover, E[|Ri |] = |Ci4|−2 +1· 21 =
|Ci |
4 .)
vi. If c ≡ 3 (mod 4), then add ec−2 to Ri with probability 34 . (Comment:
Ri remains to be a matching of Ci . Moreover, E[|Ri |] = |Ci4|−3 +1· 43 =
|Ci |
4 .)
3. Let R = R1 ∪ · · · ∪ Rr .

The next lemma is obvious from Step 2b:

Lemma 3. For every triangle Ci in C and for every vertex v of Ci , the following
hold:
1. v is incident to no edge of R with probability (1 − p)2 .
2. v is incident to exactly one edge of R with probability 2p(1 − p).
3. v is incident to exactly two edges of R with probability p2 .

Note that our algorithm processes those cycles Ci of C with |Ci | ≥ 4 as in the
H&R-algorithm. So, we have the following lemma:

Lemma 4. For every cycle Ci of C with |Ci | ≥ 4, the following hold:


1. For every edge e of Ci , Pr[e ∈ R] = 14 .
2. For every vertex v of Ci , v is incident to at least one edge of R with proba-
bility 12 .
Proof. We include the proof for completeness. Consider an arbitrary cycle Ci of C
with |Ci | ≥ 4. By the comments on Steps 2(c)iv through 2(c)vi, we have E[|Ri |] =
|Ci |
4 . Moreover, each edge of Ci is added to Ri with the same probability. Thus,
Pr[e ∈ Ri ] = 14 for every edge e of Ci , and hence each vertex of Ci is incident to
at least one edge of R with probability 12 . 2

We next turn to the computation of the subset M of M1 . Steps 4 through 9 of


our algorithm are for this purpose.

4. Let M2 be the set of all edges {u, v} ∈ M1 such that both u and v are of
degree 0 or 1 in graph C − R. Let G2 be the graph (V (G), M2 ).
5. For each odd cycle C of G2 , select one edge uniformly at random and delete
it from G2 .
6. Partition the edge set of G2 into two matchings N1 and N2 .
102 Z.-Z. Chen, R. Tanahashi, and L. Wang

7. For each edge e of G2 which alone forms a connected component of G2 , add


e to the matching Ni (i ∈ {1, 2}) which does not contain e.
8. Select M from N1 and N2 uniformly at random. (Comment: M ⊆ M1 is a
matching of G.)
9. Let C  be the graph obtained from graph C − R by adding the edges in M .

The next lemma is clear from the above construction of C  :

Lemma 5. The following hold:


1. Each connected component of C  is a cycle or path.
2. Every triangle in C  is also a triangle in C.
3. Every cycle C in C  with |C| ≥ 4 contains at least two edges in M .

The next lemma will be used to show that for each edge e ∈ M1 , e is included
in the output triangle packing by our algorithm with high probability.

Lemma 6. For each e ∈ M1 , Pr[e ∈ M | e ∈ M2 ] ≥ 9


20 .

Proof. Assume that the event e = {u, v} ∈ M2 occurs. Let K be the connected
component of G2 that contains e. If K is not an odd cycle, then clearly e is in
M with probability at least 12 ≥ 20 9
. So, assume that K is an odd cycle. We
distinguish two cases as follows:
Case 1: K is an odd cycle of length at least 5. In this case, K must contain a
vertex z ∈ {u, v} such that the cycle in C containing z contains neither u nor v.
Let Bz be the event that the degree of z in the graph C − R is 2. By Statement 1
of Lemma 3 and Statement 2 of Lemma 4, Bz occurs with probability (1 − p)2 or
2 independently of the event e ∈ M2 . Obviously, when Bz occurs, e is contained
1

in M with probability at least 12 . On the other hand, when Bz does not occur,
e is contained in M with probability at least |K|−1 |K| · 2 ≥ 5 . So, the probability
1 2

that e is in M is at least 12 · 12 + 12 · 25 = 20
9
.
Case 2: K is a triangle. In this case, let z be the vertex in K other than u
and v. Note that u, v, and z belong to different cycles in C. Let Bz be the event
that the degree of z in the graph C − R is 2. By Statement 1 of Lemma 3 and
Statement 2 of Lemma 4, Bz occurs with probability (1 − p)2 or 12 independently
of the event e ∈ M2 . Obviously, when Bz occurs, e is definitely contained in M
because of Step 7. On the other hand, when Bz does not occur, e is contained
in M with probability at least 13 . So, the probability that e is in M is at least
2 · 1 + 2 · 3 = 3 > 20 . 2
1 1 1 2 9

By Lemma 5, C  is a collection of disjoint paths and cycles. Our plan is to


transfrom C  into a triangle packing of G as follows:
– First, break each nontriangle cycle in C  by removing one edge.
– Next, patch the path components of C  together into a single path Y .
– Finally, cut Y into paths of length 2 by removing one third of its edges.
(Comment: Each path of length 2 can be trivially transformed into a triangle
by adding the edge between its endpoints.)
An Improved Randomized Approximation Algorithm for MTP 103

The nontriangle cycles in C  should be broken carefully. Steps 10 through 11


of our algorithm are for this purpose.

10. Classify the cycles C of C  into three types: superb, good, or ordinary. Here,
C is superb if |C| = 3; C is good if |C| = 6, |E(C) ∩ M | = 2, and there are
triangles Ci and Cj in C such that |E(Ci )∩E(C)| = 2 and |E(Cj )∩E(C)| = 2;
C is ordinary if it is neither good nor superb.)
11. For each ordinary cycle C in C  , choose one edge in E(C) ∩ M uniformly at
random and delete it from C  .
12. For each good cycle C in C  , change C back to two triangles in C as follows:
Delete the two edges of M ∩ E(C) from C to obtain two paths Q1 and Q2
of length 2, add the edge between the endpoints of Q1 , and add the edge
between the endpoints of Q2 . (Comment: Because of the maximality of C,
this step does not decrease w(C  ). Moreover, after this step, each cycle of C 
is a triangle.)

We next show that each edge of M1 remains in C  after Step 11 with high
probability.

Lemma 7. For each edge e ∈ M such that at least one endpoint of e appears in
a non-triangle in C, e survives the deletion in Step 11 with probability at least 34 .
Proof. Without loss of generality, we may assume that C1 is not a triangle and
contains one endpoint v of e. Because the cycles in C are processed independently
in Step 2, we may assume that C1 is processed after the other cycles in C have
been processed.
Consider the time point t at which our algorithm has just finished processing
all the cycles in C other than C1 . Let S t be the set of all matchings N in the
graph (V (G), M1 ) such that each connected component of the graph obtained
from C − (E(C1 ) ∪ R2 ∪ · · · ∪ Rr ) by adding the edges of N is a path or cycle.
For each matching N ∈ S t , let pt (N ) be the probability that the matching M
constructed in Step 8 equals N . Note that pt (N ) only depends on the random
choices made by our algorithm when processing C1 and later in Steps 5 and 8.
Further let Bet be the event that e is contained in C  immediately after Step 11.
Let Set be the set of all matchings N ∈ S t with e ∈ N and pt (N ) > 0. We
claim that for each matching N ∈ Set , Pr[Bet | M = N ] ≥ 34 . If this claim indeed
holds, then
 pt (N ) 3
Pr[Bet | e ∈ M ] = Pr[Bet | M = N ] ·  t 

N ∈Set N  ∈Set p (N ) 4

which implies the lemma immediately. So, it remains to prove the claim.
To prove the claim, consider an arbitrary matching N ∈ Set . Assume that the
event M = N occurs. Let K be the graph obtained from C−(E(C1 )∪R2 ∪· · ·∪Rr )
by adding the edges of N . Let Q be the connected component of K in which v
appears. Note that Q is a path and v is an endpoint of Q. Let u be the endpoint
of Q other than v. If u does not appear in C1 , then Bet occurs with probability 1.
104 Z.-Z. Chen, R. Tanahashi, and L. Wang

So, assume that u appears in C1 . Then, because |C1 | ≥ 4 and our new algorithm
processes each non-triangle Ci in C in the same way as H&R-algorithm does,
Lemma 2 in [3] guarantees that Bet occurs with probability at least 34 . This
completes the proof of the claim and hence that of the lemma. 2

Lemma 8. For each e ∈ M1 such that neither endpoint of e appears in a triangle


in C, e is contained in C  immediately after Step 11 with probability at least 320
27
.
Proof. Consider an edge e = {u, v} in M1 such that neither u nor v appears in
a triangle in C. Let Bu (respectively, Bv ) be the event that u (respectively, v) is
incident to one edge in R. Note that when both Bu and Bv occur, e is contained in
M2 . So, by Lemma 6, Pr[e ∈ M | Eu and Ev ] ≥ 20 9
. Moreover, by the comment on
Step 3, Pr[Eu and Ev ] = 14 . Hence, Pr[e ∈ M ] ≥ 809
. Consequently, by Lemma 7,
the probability that e is contained in C  immediately after Step 11 is at least
80 · 4 = 320 . 2
9 3 27

Lemma 9. For each e ∈ M1 such that exactly one endpoint of e appear in a


triangle in C, e is contained in C  immediately after Step 11 with probability at
27
least 320 .
Proof. Consider an edge e = {u, v} in M1 such that u appears in a triangle in
C but v does not. Let B1 be the event that u is incident to exactly one edge
in R and so does v. Similarly, let B2 be the event that u is incident to exactly
two edges in R and v is incident to exactly one edge in R. Note that when B1
or B2 occurs, e is contained in M2 . So, by Lemma 6, Pr[e ∈ M | E1 ] ≥ 20 9
and
Pr[e ∈ M | E2 ] ≥ 20 . Moreover, by Statement 2 of Lemma 3 and Statement 2
9

of Lemma 4, Pr[E1 ] = 2p(1 − p) · 12 = p(1 − p) and Pr[E2 ] = p2 · 12 = 12 p2 . Hence,


Pr[e ∈ M and E1 ] ≥ 20 9
p(1 − p) and Pr[e ∈ M and E2 ] ≥ 409 2
p .
Obviously, when B1 occurs and e ∈ M , e survives the deletion in Step 11 with
probability at least 34 by Lemma 7. The crucial point is that when B2 occurs
and e ∈ M , e survives the deletion in Step 11 with probability 1. Therefore,
the probability that e is contained in C  immediately after Step 11 is at least
20 p(1 − p) · 4 + 40 p · 1 ≥ 320 . 2
9 3 9 2 27

Lemma 10. Suppose that e = {u1 , v1 } is an edge in M such that both u1 and
v1 appear in triangles in C and both u1 and v1 are incident to exactly one edge
in R. Then, the probability that e is contained in C  immediately after Step 11
is at least 34 .
Proof. Without loss of generality, we may assume that C1 (respectively, C2 ) is
the cycle in C to which u1 (respectively, v1 ) belongs. Because the cycles in C are
processed independently in Step 2, we may assume that C1 and C2 are processed
after the other cycles in C have been processed.
Consider the time point t at which our algorithm has just finished processing
all the cycles in C other than C1 and C2 . Let S t be the set of all matchings
N in the graph (V (G), M1 ) such that each connected component of the graph
obtained from C − (E(C1 ) ∪ E(C2 ) ∪ R3 ∪ · · · ∪ Rr ) by adding the edges of N
is a path or cycle. For each matching N ∈ S t , let pt (N ) be the probability that
An Improved Randomized Approximation Algorithm for MTP 105

the matching M constructed in Step 8 equals N . Note that pt (N ) only depends


on the random choices made by our algorithm when processing C1 and C2 and
t
later in Steps 5 and 8. Further let B1,1 be the event that both u1 and v1 are
incident to exactly one edge in R, and let Bet be the event that e is contained in
C  immediately after Step 11.
Let Set be the set of all matchings N ∈ S t with e ∈ N and pt (N ) > 0. We
claim that for each matching N ∈ Set , Pr[Bet | M = N and B1,1 t
] ≥ 34 . If this
claim indeed holds, then
 pt (N ) 3
Pr[Bet | e ∈ M and B1,1
t
]= Pr[Bet | M = N and B1,1
t
]·  t 

N ∈Set N  ∈Set p (N ) 4

which implies the lemma immediately. So, it remains to prove the claim.
To prove the claim, consider an arbitrary matching N ∈ Set . Assume that
the events M = N and B1,1 t
occur. Then, Bet occurs with probability at least 12
because each cycle C in the graph C  constructed in Step 9 with E(C) ∩ M1 = ∅
contains at least two edges of N . Our goal is to show that Bet occurs with
probability at least 34 . First, we need several definitions:
– Let u2 and u3 be the vertices of C1 other than u1 .
– Let v2 and v3 be the vertices of C2 other than v1 .
– Let H t be the graph obtained from C − (E(C1 ) ∪ E(C2 ) ∪ R3 ∪ · · · ∪ Rr ) by
adding the edges of N . (Comment: The degree of each vertex of V (C1 ) ∪
V (C2 ) in H t is 0 or 1.)
Since N is a matching, there are at most two paths Q in H t such that one
endpoint of Q is in {u2 , u3 } and the other is in {v2 , v3 }. We distinguish three
cases as follows:
Case 1: There is no path Q in H t such that one endpoint of Q is in {u2 , u3 }
and the other is in {v2 , v3 }. In this case, it is easy to see that Bet occurs with
probability 1.
Case 2: There are two paths Q in H t such that one endpoint of Q is in {u2 , u3 }
and the other is in {v2 , v3 }. Without loss of generality, we may assume that H t
contains a path between u2 and v2 and contains another path between u3 and
v3 . Note that each vertex in V (C1 ) ∩ V (C2 ) is incident to an edge in N . So,
exactly one of the following four events occurs:
– R ∩ (E(C1 ) ∪ E(C2 )) = {{u1 , u2 }, {v1 , v3 }, {u2 , u3 }, {v2 , v3 }}.
– R ∩ (E(C1 ) ∪ E(C2 )) = {{u1 , u3 }, {v1 , v2 }, {u2 , u3 }, {v2 , v3 }}.
– R ∩ (E(C1 ) ∪ E(C2 )) = {{u1 , u2 }, {v1 , v2 }, {u2 , u3 }, {v2 , v3 }}.
– R ∩ (E(C1 ) ∪ E(C2 )) = {{u1 , u3 }, {v1 , v3 }, {u2 , u3 }, {v2 , v3 }}.
Obviously, when either of the first two events occurs, e does not appear in a cycle
in the graph C  constructed in Step 9 and hence Bet occurs with probability 1.
Moreover, if we concentrate on the random choices made when processing C1
and C2 , the four events occur with the same probability (namely, (1 − p)2 p4 ).
2 4
2(1−p)2 p4 1
Thus, Bet occurs with probability at least 2(1−p) p
4(1−p)2 p4 · 1 + 4(1−p)2 p4 · 2 = 4 .
3
106 Z.-Z. Chen, R. Tanahashi, and L. Wang

Case 3: There is exactly one path Q in H t such that one endpoint of Q is in


{u2 , u3 } and the other is in {v2 , v3 }. Without loss of generality, we may assume
that H t contains a path between u2 and v2 . If N contains an edge incident to
u3 and another edge incident to v3 , then the same discussion in Case 2 applies.
So, it suffices to consider the following two subcases:
Case 3.1: Exactly one of u3 and v3 is incident to an edge in N . Without loss
of generality, we may assume that u3 is incident to an edge in N but v3 is not.
Then, each vertex in V (C1 ) ∩ V (C2 ) other than v3 is incident to an edge in N .
So, exactly one of the following six events occurs:
– R ∩ (E(C1 ) ∪ E(C2 )) = {{u1 , u2 }, {v1 , v2 }, {u2 , u3 }}.
– R ∩ (E(C1 ) ∪ E(C2 )) = {{u1 , u2 }, {v1 , v2 }, {u2 , u3 }, {v2 , v3 }}.
– R ∩ (E(C1 ) ∪ E(C2 )) = {{u1 , u2 }, {v1 , v3 }, {u2 , u3 }, {v2 , v3 }}.
– R ∩ (E(C1 ) ∪ E(C2 )) = {{u1 , u3 }, {v1 , v2 }, {u2 , u3 }, {v2 , v3 }}.
– R ∩ (E(C1 ) ∪ E(C2 )) = {{u1 , u3 }, {v1 , v2 }, {u2 , u3 }}.
– R ∩ (E(C1 ) ∪ E(C2 )) = {{u1 , u3 }, {v1 , v3 }, {u2 , u3 }, {v2 , v3 }}.
Obviously, when either of the first four events occurs, e does not appear in a cycle
in the graph C  constructed in Step 9 and hence Bet occurs with probability 1.
Moreover, if we concentrate on the random choices made when processing C1 and
C2 , then the first and the fifth events occur with the same probability (namely,
(1 − p)3 p3 ), while the other events occur with the same probability (namely,
(1−p)3 p3 +3(1−p)2 p4
(1 − p)2 p4 ). Thus, Bet occurs with probability at least 2(1−p) 3 p3 +4(1−p)2 p4 · 1 +

(1−p)3 p3 +(1−p)2 p4
2(1−p)3 p3 +4(1−p)2 p4 · 1
2 ≥ 34 .
Case 3.2: Neither u3 nor v3 is incident to an edge in N . In this case, each
vertex in V (C1 ) ∩ V (C2 ) other than u3 and v3 is incident to an edge in N . So,
exactly one of the following nine events occurs:
– R ∩ (E(C1 ) ∪ E(C2 )) = {{u1 , u2 }, {v1 , v2 }, {v2 , v3 }}.
– R ∩ (E(C1 ) ∪ E(C2 )) = {{u1 , u2 }, {v1 , v2 }, {u2 , u3 }}.
– R ∩ (E(C1 ) ∪ E(C2 )) = {{u1 , u2 }, {v1 , v2 }, {u2 , u3 }, {v2 , v3 }}.
– R ∩ (E(C1 ) ∪ E(C2 )) = {{u1 , u2 }, {v1 , v3 }, {u2 , u3 }, {v2 , v3 }}.
– R ∩ (E(C1 ) ∪ E(C2 )) = {{u1 , u3 }, {v1 , v2 }, {u2 , u3 }, {v2 , v3 }}.
– R ∩ (E(C1 ) ∪ E(C2 )) = {{u1 , u2 }, {v1 , v2 }}.
– R ∩ (E(C1 ) ∪ E(C2 )) = {{u1 , u2 }, {v1 , v3 }, {v2 , v3 }}.
– R ∩ (E(C1 ) ∪ E(C2 )) = {{u1 , u3 }, {v1 , v2 }, {u2 , u3 }}.
– R ∩ (E(C1 ) ∪ E(C2 )) = {{u1 , u3 }, {v1 , v3 }, {u2 , u3 }, {v2 , v3 }}.
Obviously, when one of the first five events occurs, e does not appear in a cycle
in the graph C  constructed in Step 9 and hence Bet occurs with probability 1.
As for the last four events, we can say the following:
– Suppose that |E(Q)| = 1. Then, when the sixth event occurs, e appears in
a good cycle in the graph C  constructed in Step 9 and hence Bet occurs
with probability 1. Of course, when the ith event with i ∈ {7, 8, 9} occurs, e
appears in an ordinary cycle K in the graph C  constructed in Step 9 with
|E(K) ∩ N | ≥ 2 and hence Bet occurs with probability 12 .
An Improved Randomized Approximation Algorithm for MTP 107

– Suppose that |E(Q)| ≥ 2. Then, Q contains at least two edges of N . So,


when the ith event with i ∈ {6, . . . , 9} occurs, e appears in an ordinary cycle
K with |E(K) ∩ N | ≥ 3 in the graph C  constructed in Step 9 and hence Bet
occurs with probability at least 23 .

Furthermore, if we concentrate on the random choices made when processing C1


and C2 , the first, the second, the seventh, and the eighth events occur with the
same probability (namely, p3 (1 − p)3 ), the third, the fourth, the fifth, and the
ninth events occur with the same probability (namely, p4 (1 − p)2 ), and the sixth
event occurs with probability p2 (1−p)4 . Thus, if |E(Q)| = 1, then Bet occurs with
3
(1−p)3 +3p4 (1−p)2 +p2 (1−p)4 2p3 (1−p)3 +p4 (1−p)2
probability at least 2p
4p3 (1−p)3 +4p4 (1−p)2 +p2 (1−p)4 ·1+ 4p3 (1−p)3 +4p4 (1−p)2 +p2 (1−p)4 ·

2 ≥ 4 . On the other hand, if |E(Q)| ≥ 2, then Be occurs with probability at


1 3 t
3 3 4 2 2 4 3 3 4 2
2p (1−p) +3p (1−p) p (1−p) +2p (1−p) +p (1−p)
3 +4p4 (1−p)2 +p2 (1−p)4 · 1 + 4p3 (1−p)3 +4p4 (1−p)2 +p2 (1−p)4 · ≥ 34 . This
2
least 4p3 (1−p) 3
completes the proof of the claim and hence that of the lemma. 2

Lemma 11. For each e ∈ M1 such that both endpoints of e appear in triangles
in C, e is contained in C  immediately after Step 11 with probability at least 320
27
.
Proof. Consider an edge e = {u, v} in M1 such that both u and v appear in a
triangle in C. Let B0 be the event that both u and v are incident to exactly one
edge in R, and let B1 be the event that both u and v are incident to at least one
edge in R and at least one of them is incident to exactly two edges in R.
Note that when B0 or B1 occurs, e is contained in M2 . So, by Lemma 6,
Pr[e ∈ M | E0 ] ≥ 20 9
and Pr[e ∈ M | E1 ] ≥ 20 9
. Moreover, by Statements 2
and 3 of Lemma 3 Pr[E0 ] = 2p(1 − p) · 2p(1 − p) = 4p2 (1 − p)2 and Pr[E1 ] =
p2 ·2p(1−p)+2p(1−p)·p2+p4 = 4p3 −3p4 . Hence, Pr[e ∈ M and E0 ] ≥ 95 p2 (1−p)2
and Pr[e ∈ M and E1 ] ≥ 20 9
(4p3 − 3p4 ).
By Lemma 10, when B0 occurs and e ∈ M , e survives the deletion in Step 11
with probability at least 34 . The crucial point is that when B1 occurs and e ∈ M ,
e survives the deletion in Step 11 with probability 1. Therefore, the probability
that e is contained in C  immediately after Step 11 is at least 95 p2 (1 − p)2 · 34 +
20 (4p − 3p ) · 1 = 20 p − 10 p ≥ 320 . 2
9 3 4 27 2 9 3 27

By the comment on Step 12, each connected component of C  after Step 12 is


a triangle or path. So, it is now almost trivial to transform C  into a triangle
packing. Step 12 of our algorithm is for this purpose.

12. If C  has at least one path component, then perform the following steps:
(a) Connect the path components of C  into a single cycle Y by adding some
edges of G.
(b) Break Y into paths each of length 2 by removing a set F of edges from
Y with w(F ) ≤ 13 · w(Y ).
(c) For each path Q of length 2 obtained in Step 12b, add the edge between
the endpoints of Q.
(Comment: After this step, C  is a triangle packing of G.)
13. Let P3 = C  .
108 Z.-Z. Chen, R. Tanahashi, and L. Wang

5 Analysis of the Approximation Ratio


By the comment on Step 3, the expected total weight of edges of C remain-

 3 in C immediately
ing  after
3 Step 11 is at least (1 − p)α + 34 (1 − α) w(C) =
4 − (p − 4 )α w(C) ≥ 4 − (p − 4 )α (1 − )w(Opt). Moreover, by Lemmas 8,
1 1

9, and 11, the expected total weight of edges of M1 remaining in C  immediately


27
after Step 11 is at least 320 w(M1 ). Furthermore, by the construction of M1 ,
w(M1 ) is larger than or equal to the total weight of those edges {u, v} such that
some triangle in Opt contains both u and v but no cycle in C contains both u
and v. So, w(M1 ) ≥ (1 − β)w(Opt). Now, since w(P3 ) is at least two-thirds of
the total weight of edges in C  immediately after Step 11, we have
 
2 3 1 2 27
E[w(P3 )] ≥ − (p − )α (1 − )w(Opt) + · (1 − β)w(Opt) (1)
3 4 4 3 320
 
89 1 2 1 9
= −  − (p − )(1 − )α − β w(Opt). (2)
160 2 3 4 160
So, by Lemmas 1 and 2, we have
4 1 9 187 + 320p − (320p + 160)
(p − )w(P1 ) + w(P2 ) + w(P3 ) ≥ · w(Opt).
3 4 160 480
Therefore, the weight of the best packing among P1 , P2 , and P3 is at least
187 + 320p − (320p + 160) 187 + 320p
· w(Opt) ≥ · (1 − )w(Opt).
640p + 347 347 + 640p
In summary, we have proven the following theorem:
Theorem 1. For any constant  > 0, there is a polynomial-time randomized
347+640p ·
approximation algorithm for MTP that achieves an expected ratio of 187+320p
(1 − ) > 88.85
169 · (1 − ).

References
1. Chlebı́k, M., Chlebı́ková, J.: Approximating Hardness for Small Occurrence In-
stances of NP-Hard Problems. In: Petreschi, R., Persiano, G., Silvestri, R. (eds.)
CIAC 2003. LNCS, vol. 2653, pp. 152–164. Springer, Heidelberg (2003)
2. Garey, M.R., Johnson, D.S.: Computers and Intractability: A Guide to the Theory
of NP-Completeness. Freeman, New York (1979)
3. Hassin, R., Rubinstein, S.: An Approximation Algorithm for Maximum Triangle
Packing. Discrete Applied Mathematics 154, 971–979 (2006)
4. Hassin, R., Rubinstein, S.: Erratum to gAn approximation algorithm for maximum
triangle packingh: [Discrete Applied Mathematics 154 (2006) 971-979]. Discrete Ap-
plied Mathematics 154, 2620–2620 (2006)
5. Kann, V.: Maximum Bounded 3-Dimensional Matching Is MAX SNP-Complete.
Information Processing Letters 37, 27–35 (1991)
6. Raghavan, P.: Probabilistic Construction of Deterministic Algorithms: Approximat-
ing Packing Integer Programs. Journal of Computer and System Sciences 38, 683–
707 (1994)
Line Facility Location in Weighted Regions

Yam Ki Cheung and Ovidiu Daescu

Department of Computer Science,


University of Texas at Dallas,
Richardson , TX 75080, USA
{samykcheung,daescu}@utdallas.edu

Abstract. In this paper, we present approximation algorithms for the


line facility location problem in weighted regions: Given l fixed points in
a 2-dimensional weighted subdivision of the plane, with n vertices, find a
line L such that the sum of the weighted distances from the fixed points
to L is minimized. The weighted region setup is a more realistic model
for many facility location problems that arise in practical applications.
Our algorithms exploit an interesting property of the problem, that could
possibly be used for solving other problems in weighted regions.

1 Introduction

Let R = {R1 , R2 , . . . , Rn } be a subdivision of the plane with n vertices, with


each region Ri ∈ R having associated an integer weight wi ∈ {1, 2, 3, . . .}. With-
out loss of generality, we assume all regions of R are triangulated. The distance
between two points s and t within the same region Ri ∈ R is defined as the
product of the weight wi of the region Ri and the Euclidean length of the line
segment st [8].
In this paper we study the following problem that we call the line facility
location in weighted regions: Given a set of l fixed points P = {s1 , s2 , . . . , sl } ∈
R, find a line L such that the sum S(L) of the weighted distances from the
points in P to L is minimized (see Fig. 1 for an example). More formally, S(L)
is defined as follows. Let Li be the orthogonal link from a point si ∈ P to
L. The cost (weighted length, weighted distance) of the link Li is defined as
S(L, si ) = Li ∩Rj =∅ wj ∗ dj (Li ), where dj (Li ) is the length of Li within region
l
Rj . Then S(L) = i=1 S(L, si ) is the overall cost of all orthogonal links from
P to L.
The facility location problem is a well-studied problem in the operations re-
search and computer science literature. The problem has many formulations,
resulting in various definitions for the objective function. For example, in one
formulation, there is a predefined cost for opening a facility and also for con-
necting a customer to a facility, and the goal is to minimize the total cost. For
the proposed problem, one may imagine that the line L is an oil pipeline and
the points in P are oil wells. The oil field is divided into weighted regions based

This research was partially supported by NSF grant CCF-0635013.

R. Fleischer and J. Xu (Eds.): AAIM 2008, LNCS 5034, pp. 109–119, 2008.

c Springer-Verlag Berlin Heidelberg 2008
110 Y.K. Cheung and O. Daescu

R2
s2
s1
R3
R1 L1 L2
L

L3
s3
R4

Fig. 1. A line L and the orthogonal links from P = s1 , s2 , s3 to L

on its characteristics (cost of digging, ownership rights, etc.) From each well, a
spur pipeline is to be connected directly to L, in straight line. Given the x- and
y-coordinates of the wells, the goal is to find the optimal location for the main
pipeline that minimizes the total weighted length of the spurs.
The unweighted case of the problem was studied and solved by Megiddo and
Tamir more than two decades ago [7]. In this case, the goal is to find a line that
minimizes the sum of the Euclidean distances from the points in P to the line.
Megiddo and Tamir showed that, for the unweighted case, the optimal line could
be found in O(n2 log n) time by proving that it must pass through at least two
of the points in P . However, to the best of our knowledge, there is no previous
work for the weighted version discussed in this paper.
The proposed problem is also closely related to the optimal weighted link
problem [2], where the goal is to minimize the weighted length of a line segment
st connecting two given regions, Rs and Rt , of  R. In [2], it has been proven
that the problem to minimize the cost S(st) = st∩Rj =∅ wi ∗ di (st) of st can
be reduced to a number of (O(n2 ) in worst case) global optimization problems,
each of which asks to minimize a 2-variable function over a convex domain.
In [4, 5], it has been shown that to minimize the objective function S(st), st
must pass through a vertex of R. By considering each candidate vertex, they
reduced the problem to solving O(n) optimization problems at each vertex. The
√ k ai
objective function can also be expressed in the form 1 + m2 (d0 + i=1 m+b i
),
where d0 , ai and bi are constants, k = O(n), m is the slope of st, and Dm is a
slope interval for the line passing through the vertex. Hence, each subproblem
contains one variable only and can be solved by computing the roots of a poly-
nomial of degree O(n) over the given domain Dm . Unfortunately, this approach
is only practical when the number of fractional terms in S(st) is small. In [5],
a faster approach is suggested, which aims to compute an approximate solution
by bisecting the slope interval and pruning out subproblems that cannot lead to
an optimal solution. Some of the results in [2] were later on generalized in [3]
Line Facility Location in Weighted Regions 111

to more difficult problems, where the line is replaced by a parallel or cone like
beam.
In this paper we first study a special case, in which the slope of L is fixed, and
show that an optimal solution can be found at one of O(ln) well defined locations
called event points. Hence, the optimal line can be computed in O(ln log ln)
time by a simple sweeping line algorithm. For the general case, we show that
the objective function S(L) can be expressed in the form of a summation of a
number of fractional terms, that resembles those in [2, 3]. Similarly to the work
in [2], the problem can be reduced to a number of (O(l2 n2 ) in worst case) 1-
variable optimization problems, which can be solved by either computing the
exact roots of polynomials or by approximation algorithms. Using point-line
duality transforms [9], the feasible domain for each subproblem is an arc or a
line segment on the dual plane.

2 A Special Case
We start with a special case of the proposed problem, where the slope of L
is fixed. Without loss of generality, we assume that L is horizontal. Let ymax
and ymin be the maximum and minimum y-coordinates of the points in P ,
respectively.
Lemma 1. The y-coordinate yL of the optimal line L (L : y = yL ) satisfies
yL ∈ [ymin , ymax ]. In other words, if all points in P are strictly to one side of
L, S(L) cannot be the sought minimum.
Proof. If yL ∈ [ymin , ymax ], we can always find a new line L , such that S(L ) <
S(L). First we translate L towards P until any point in P is reached. Let the
new line be L . Since all points are strictly to one side of L, all orthogonal
links decrease in length, that is, S(L , si ) ≤ S(L, si ), for i = 1, 2, . . . , l, i.e.
S(L ) < S(L). 2

R5 s2

E3
R2 R3 L2
E2
R4
E1
L
R1 L1
s1

Fig. 2. A simple scenario with two points, s1 and s2


112 Y.K. Cheung and O. Daescu

Lemma 2. Let Q be the set of intersections between the vertical lines passing
through the points in P and the edges of R. Then there is at least one optimal
solution L for S(L) such that L ∩ (P ∪ Q) = ∅, that is, L passes trough at least
one point in P or Q.
Proof. By Lemma. 1, yL ∈ [ymin , ymax ]. Consider the case that we sweep the
line L upwards from ymin to ymax . We call points in P ∪ Q event points, since
these are the points where we need to update the sweeping process. Let function

f (x) = S(L : y = ymin + x)

be the function of total cost of the orthogonal links from P to L, where x is the
distance swept by L. Now sweep L a small distance δ upwards such that L does
not pass trough any event point. 
We have f (x + δ) = f (x) + δ ∗ i=1...l,Li ∩L∩Rj =∅ (wj ∗ N (Li ∩ L)), where

1 if si is below L
N (Li ∩ L) =
−1 otherwise

Hence the first derivative f  (x) = i=1...l,Li ∩L∩Rj =∅ (wj ∗N (Li ∩L)) is a constant
between two consecutive event points. This implies that f (x) is piecewise linear
and its slope only changes when L passes though an event point, i.e. local extreme
values can only be found at event points. 2
For example, in Fig. 2, P contains two points, s1 and s2 . Let w1 > w4 > w2 >
w3 > w5 . If we sweep L by a small distance δ, the change of f (x) is (w1 − w4 ) ∗ δ.
Then f (x) is linearly increasing with rate w1 − w4 until L reaches the next event
point E1. Similarly, between event points E1 and E2 , f (x) is linearly decreasing
with rate w2 − w4 , and between E2 and E3 , f (x) is linearly increasing again
with rate w2 − w3 . Between E3 and p2 , f (x) is increasing but with a smaller rate
w2 − w5 . Fig. 3 shows a plot of f (x) for the scenario described above.

f(x)
E3 s2
E1 (w2-w5)

(w2-w4)
(w2-w3)
(w1-w4)
E2

s1
x
Fig. 3. A plot of f (x) for the scenario shown in Fig. 2
Line Facility Location in Weighted Regions 113

Lemma 3. The line L that minimizes S(L) can be computed in O(ln log(ln)) time.

Proof. The optimal solution can be computed by a line sweeping algorithm: (1)
Find out all event points and sort them by the y-coordinate. (2) Compute the
value of f (x) at one event point by brute force. (3) By the piecewise linearity of
f (x), the value of f (x) at successive event points can be calculated in constant
time. There are O(ln) event points. The overall cost is O(ln log(ln)), since sorting
is the dominant step. 2

3 The General Case


In this section, we consider the general problem: Given a triangulated weighted
planar subdivision R with n vertices and a set P of l fixed points in R, find a
line L (of arbitrary slope) such that S(L) is minimized.
By Lemma 2, if we fix the slope of L and sweep L across the subdivision,
S(L) is minimized when L passes through some fixed point in P or it intersects
some orthogonal link from a point in P to L, at some edge of R.
Case 1 : L with slope m passes through some fixed point sr ∈ P . Reset the
coordinate system such that sr is the origin. Then we have L : y = mx. Similar
to [3], we define Seq(Li , L) as the sequence of edges or lines intersected by the
orthogonal link Li , i.e. the set of edges intersected by Li sorted in ascending
order by the distance between their intersection points with Li and the point si .
We say that two sequences are equal, e.g. Seq(Li , L) = Seq(Lj , L), if and only
if the two sequences consists of the same set of intersected edges, in the same
order. For a point si ∈ P , let Seq(Li , L) = {e1 , e2 , e3 , . . . , ek }, where ek = L. Let
(xj , yj ) be the coordinates of the intersection between Li and ej , j = 1, 2, . . . , k.
 
Then S(Li ) = 1 + m2o k−1 j=1 wj |xj+1 −xj |, where wj is the weight of the region
bounded by edges ej and ej+1 , and mo = −1/m is the slope of the orthogonal
links (see Fig. 4). Let (ai , bi ) be the coordinates of si . Since the intersection point

si

e1

Li e2 L
sr

e3

Fig. 4. An orthogonal link Li that intersects with four edges


114 Y.K. Cheung and O. Daescu

sr

si
Lj
e1
e2 L
Li
e

e3

Fig. 5. An example for case 2

(xj , yj ) lies on both Li and ej , we have Li : y = mo x+pi , where pi = (bi −mo ai ),


p −p
yj = mo xj + pi , ej : y = mj x + pj , yj = mj xj + pj , xj = moj −mij , and thus
  k−1 p −pi pj −pi
S(Li ) = 1 + m2o j=1 wi | moj+1 −mj+1 − mo −mj | =
  k−2 p −pi pj −pi −pi pk−1 −pi
1 + m2o ( j=1 wi | moj+1 −mj+1 − mo −mj | + wk−1 | mo −m − mo −mk−1 |) (∗)

Substituting
 pi = (bi − mo ai ) and m = −1/mo into (*), we have
k−1 cj
S(Li ) = 1 + m2o ( j=1 mo −m mo +ai
+ck bim 2 +1 +C), where cj and C are constants.
l 
j o
M cj l
Hence, S(L) = i=1 S(Li ) = 1 + m2o ( j=1 mo −m j
+ i=1 di bimmo +ai
2 +1 + C),
o
where M = O(n), and cj , di , and C are constants.
Case 2 : If L with slope m does not pass through a fixed point in P , then
L must intersect some orthogonal link Lr , originating at sr ∈ P , on some edge
e : y = me x + pe of R. Again, reset the coordinate system such that sr is the
origin. Let L be y = mx + p (see Fig. 5).
Similarto case 1,we have
k−2 p −pi pj −pi pk−1 −pi
S(Li ) = 1 + m2o ( j=1 wi | moj+1 −mj+1 − mo −mj |+wk−1 | mo −m − mo −mk−1 |) (**).
p−pi

Lr : y = mo x intersects e : y = me x + pe at v = ( mop−m
e
, mo pe ). So we have:
e mo −me

mo p e 1 pe
L:y− =− (x − )
mo − me mo mo − me
1 pe mo p e
y=− x+( + ), and
mo mo (mo − me ) mo − me
Li : y − bi = mo (x − ai )
y = mo x + (bi − mo ai )
Line Facility Location in Weighted Regions 115

Substituting m = − m1o , p = pe
mo (mo −me ) + mo pe
mo −me , and pi = bi − mo ai into
(**), we have:
  pj+1 −pi pj −pi pk−1 −pi
S(Li ) = 1 + m2o ( k−2
j=1 wi | mo −mj+1 − mo −mj | + wk−1 | mp−p i
o −m
− mo −mk−1 |)
 k−2 p −(bi −mo ai ) pj −(bi −mo ai )
= 1 + m2o ( j=1 wi | j+1mo −m j+1
− mo −mj |+
pe
+ mm o pe −(bi −mo ai ) pk−1 −(bi −mo ai )
wk−1 | mo (mo −me ) o −me
mo + m1o
− mo −mk−1 |)
 k−1 cj
= 1 + m2o ( j=1 mo −m + ck ( mop−m
e
− bim
mo +ai
2 +1 ) + C), and thus
  j  M
e
cj
o
l
S(L) = S(Li ) = 1 + mo ( j=1 mo −mj + i=1 di bim
2 mo +ai
2 +1 + C) (***),
o
where M = O(n) is upper bounded by the number of edges of the subdivision,
and cj , di , and C are all constants.
Thus, both cases have the same mathematical expression for S(L). Obviously,
when we change the slope of L, an orthogonal link may pass through a different
set of edges, and the constants in (***) will change accordingly.
Next, we consider the problem in the dual plane. We use the duality transform
which maps a line L : y = mx + p on the plane onto a point L∗ : (m, p) on the
dual plane and maps a point (a, b) onto the line y = −ax + b on the dual
plane. We will show how to partition the dual plane into cells so that each cell
corresponds to a set of lines L such that (1) L penetrates a fixed sequence of
edges, and (2) all orthogonal links Li from each point si to L have the same
sequence of intersected edges. That is, if L∗ and L∗ belong to the same cell,
Seq(Li , L) = Seq(Li , L ) for all i, where L∗ and L∗ are the duals of L and L .
First, we transform all vertices of R onto the dual plane. The arrangement of
the n dual lines gives us O(n2 ) convex cells on the dual plane. Let Av denote this
arrangement. It is known that for every point L∗ of a given cell, the corresponding
line L in the primal plane intersects the same set of edges (see [2, 3] for details).
To guarantee the second property, consider a special case in which a line L
intersects some orthogonal link Li exactly at some edge e. Let point L∗ be the

si
edge

vj

Li edge

edge

Fig. 6. Moving the intersection point between L and orthogonal link Li along an edge
116 Y.K. Cheung and O. Daescu

mapping of L on the dual plane. Let point L∗a be a point on the dual plane
slightly vertically above L∗ . The line La corresponding to L∗a on the primal
plane has the same slope as L and is slightly above L. That is, with La replacing
L, Li does not intersect with e. Similarly, let L∗b be a point slightly vertically
below L∗ . On the primal plane, when Lb replaces L, Li intersects with e. Hence,
if we transform all lines intersecting with some orthogonal link at some edge
onto the dual plane, the dual plane will be divided into cells such that if L∗ and
L∗ belong to the same cell, the last edge in Seq(Li , L) is the same as the last
edge in Seq(Li , L ) for all i, i.e. in a given cell, Li intersects with L in the same
region, for all i (see Fig. 6).
Let line L : y = mx + p intersect some orthogonal link Li from some fixed
point si : (ai , bi ) at some edge e : y = me x + pe . We have
1
Li : (y − bi ) = − (x − ai )
m
1 ai
y=− x+ + bi
m m

L : y = mx + p
Find the intersection point of L and Li :
1 ai
− x+ + bi = mx + p
m m
bi m − pm + ai
x=
m2 + 1
2
L and Li intersect at v : ( bi m−pm+a
m2 +1
i bi m +ai m+p
, m2 +1 ). Since v ∈ Le , we have

b i m2 + ai m + p bi m − pm + ai
= me + pe
m2 + 1 m2 + 1
bi m2 + ai m + p = me (bi m − pm + ai ) + pe (m2 + 1)
(bi − pe )m2 + (ai + me p − me bi )m + (p − me ai − pe ) = 0
(bi − pe )m2 + (ai − me bi )m − me ai − pe
p=−
me m + 1
Considering all possible combinations of a fixed point si and an edge e ∈ R,
we have an arrangement of O(ln) such curves on the dual plane. Let Ac denote
this arrangement. To find all intersection points between two curves, we need
to solve a cubic equation, which has at most three real roots. Hence, two such
curves can intersect at most 3 times.
However, this is not enough. While the last edge intersected by each orthog-
onal link does not change within a cell of the arrangement Ac defined above,
given a cell of Ac it is still possible for some orthogonal link Li to sweep through
some vertex vj , which would change Seq(Li , L) within the cell (see Fig. 6). This
Line Facility Location in Weighted Regions 117

Fig. 7. Partition of the dual space

can be prevented by forbidding the line to rotate through a set of slopes. For
example, in Fig. 6, Li would sweep trough vj . Then, we should not allow L to
rotate through slope −1/mij , where mij is the slope of the line passing though si
and vj . There are ln such slopes. On the dual plane, this is equivalent to adding
ln vertical lines. Let Ar denote this arrangement.
The overall partition to enforce both criteria is the overlapping of Av , Ac and
Ar (see Fig. 7), which is an arrangement of O(ln) curves and O(ln) lines. Notice
that all curves in this partition have constant number of pairwise intersections.
Using the algorithm in [1], the arrangement can be computed in O(ln log(ln)+k)
time and O(ln + k) space, where k is the number cells, which is O(l2 n2 ) in worst
case.

Lemma 4. The global minimum of S(L) can be found on the boundary of the
cells of Av and Ac .

Proof. Consider a sweeping process with a fixed slope m. We have already shown
that the optimal line L, which minimize S(L), must pass through an event point.
On the dual plane, this corresponds to checking all intersections between the
corresponding vertical line x∗ = m and the boundary of the cells of Av and Ac
(the lines and curves of Av and Ac , respectively). If we set m as a variable, a
global minimum should appear on the boundary of the cells of Av and Ac . The
proof follows. 2

We already showed that on the boundaries of Av and Ac , S(L) can be expressed


as a function of only the slope of L. By the preceding lemma, the problem is
reduced to a one variable optimization problem. From the definition of the par-
tition, on the boundaries of Av and Ac , the objective function S(L) changes
when L∗ crosses some intersection point of the lines and curves defining Av and
Ac , i.e. when the sequence of intersected edges of some orthogonal link changes.
Then the problem of finding the optimal L can be divided into O(k) one variable
118 Y.K. Cheung and O. Daescu

subproblems, where k is the complexity of the arrangement. The corresponding


objective functions can be obtained using the algorithm below:

1. On the partition Av ∪ Ac ∪ Ar , for every curve in Ac and every line in Av ,


start from the left end point L∗ = (m, p), and find S(L) as a function of m
by brute force, in O(ln) time. Denote the current curve or line by h.
2. Walk on h by increasing m, (all curves in Ac and all lines in Av are x-
monotone) until it intersects with another curve or line at L∗ = (m , p ).
Then find the minimum of S(L) over [m,m’).
– If h intersects with a curve in Ac , walking through such intersection point
corresponds to same orthogonal link entering or leaving a region of R.
We can update S(L) in constant time.
– If h intersects with a dual line in Av , walking trough such intersection
point corresponds to L passing trough some fixed point si and we can
update S(L) in constant time as well.
– If l intersects with a vertical line in Ar , some orthogonal link Li may
sweep through some vertex vj , and it takes O(deg(vj )) to update S(L).
3. Start from L∗ , continue the walk by repeating step 2.

Theorem 1. It takes O(l2 n2 ) time to generate all objective functions.

We have shown that finding the optimal L can be reduced to a number of 1-


dimensional optimization subproblems. The domain of each subproblem is a line
segment or an arc of the arrangement constructed on the dual plane. Since each
subproblem can have a large number of fractional terms, it seems unpractical to
solve it by finding roots of polynomial.
Instead, following a similar idea proposed in [5], we design a prune-and-search
approximation algorithm combined with the subdivision approach. The general
outline is:
(1) Find upper and lower bounds for each subproblem of interest.
(2) Maintain a priority queue of subproblems based on their lower bounds.
(3) Update S min , which is the minimum of upper bounds of all subproblems in
the queue.
(4) For each subproblem Pi in the queue, if the lower bound of Pi is greater than
S min , prune Pi . (5) Get the first candidate Pi from the priority queue and find
a coarse approximation by placing Steiner points and sampling.
(6) A solution L is accepted for candidate Pi , if S(L) ≤ (1 + )Simin , where 
is a parameter defining the quality of the approximation and Simin is the lower
bound of pi .
(7) Find the upper bound and lower bound of all new subproblems and add them
back to the priority queue. Go to step (3).
Next, we give more details of the prune-and-search algorithm. For a given sub-
problem Pi , by definition, for each orthogonal link Lj , the sequence of intersected
edges Seq(Lj , L) does not change, i.e. Lj intersects with the same regions of R
over the feasible domain. Let this set of regions be {Rj1 , Rj2 , . . . , Rjk }. Hence,
k
we can set the lower bound, Lmin j , of the weighted sum of Lj , as q=1 wjq ∗
Line Facility Location in Weighted Regions 119

min(Lj ∩ Rjq ), over the given feasible domain (the value of min(Lj ∩ Rjq ) can
k
be computed in O(1) time). The lower bound, Simin , of Pi is j=1 Lminj . The
upper bound of Pi could be any sample value of the objective function in the
given domain. If the domain is bounded, we can sample at both endpoints and
choose the smaller value as the lower bound.
Lemma 5. The prune process is safe.
Proof. Consider a subproblem Pi . If the lower bound Simin ≥ S min , then the
subproblem that produces S min can give us a solution at least as good as the
best possible solution given by Pi . Hence, there is no need to consider Pi for
optimization.

4 Conclusion
In this paper, we discussed a facility location problem in weighted regions. We
proved that if the slope of the line L is fixed, we can compute the optimal solution
in O(ln log ln) time, where n is the number vertices of the weighted subdivision
and l is the number of fixed input points. For the general case, in which the
slope of L is not fixed, we showed that the problem can be reduced to O(l2 n2 )
1-dimensional global optimization problems, and proposed a prune-and-search
scheme to effectively deal with those problems.

References
1. Amato, N.M., Goodrich, M.T., Ramos, E.A.: Computing the arrangement of curve
segments: Divide-and-conquer algorithms via sampling. In: Proc. 11th Annual CAM-
SIAM Symposium on Discrete Algorithms, 2000, pp. 705–706 (2000)
2. Chen, D.Z., Daescu, O., Hu, X., Wu, X., Xu, J.: Determining an optimal penetration
among weighted regions in two and three dimensions. J. combinat. Optim. 5(1), 59–
79 (2001)
3. Chen, D.Z., Hu, X., Xu, J.: Computing Beams in Two and Three Dimensions.
Journal of Combinatorial Optimization 7, 111–136 (2003)
4. Daescu, O.: Improved optimal weighted links algorithms. In: Proceedings of ICCS,
2nd International Workshop on Computational Geometry and Applications, pp.
227–233 (2002)
5. Daescu, O., Palmer, J.: Minimum Separation in Weighted Subdivisions. The Inter-
national J. Computat. Geom. & Appl. (Submitted, 2003) (Manuscript)
6. Michel, X.: Cooperative facility location games. In: Proceedings of the eleventh
annual ACM-SIAM symposium on Discrete algorithms SODA 2000(2000)
7. Megiddo, N., Tamir, A.: Finding Least-Distance Lines. SIAM J. ALG. DISC.
MATH. 4(2) (1983)
8. Mitchell, J.S.B., Papdimitriou, C.H.: The weighted region problem: Finding shortest
paths through a weighted planer subdivision. Journal of the ACM 38(1), 18–73
(1991)
9. Preparata, F.P., Shamos, M.I.: Computational Geometry: An Introduction.
Springer, New York (1985)
Algorithms for Temperature-Aware Task
Scheduling in Microprocessor Systems

Marek Chrobak1 , Christoph Dürr2 , Mathilde Hurand2 ,


and Julien Robert3
1
Department of Computer Science, University of California,
Riverside, CA 92521
Supported by NSF grants OISE-0340752 and CCF-0729071
2
CNRS, LIX UMR 7161, Ecole Polytechnique, France
Supported by ANR Alpage
3
Laboratoire de l’Informatique du Parallélisme,
ENS Lyon, France

Abstract. We study scheduling problems motivated by recently devel-


oped techniques for microprocessor thermal management at the operat-
ing systems level. The general scenario can be described as follows. The
microprocessor temperature is controlled by the hardware thermal man-
agement system that continuously senses the chip temperature and auto-
matically reduces the processor’s speed as soon as the thermal threshold
is exceeded. Some tasks are more CPU-intensive than other and thus
generate more heat during execution. The cooling system operates non-
stop, reducing (at an exponential rate) the deviation of the processor’s
temperature from the ambient temperature. As a result, the processor’s
temperature, and thus the performance as well, depends on the order
of the task execution. Given a variety of possible underlying architec-
tures, models for cooling and for hardware thermal management, as well
as types of tasks, this gives rise to a plethora of interesting and never
studied scheduling problems.
We focus on scheduling real-time jobs in a simplified model for cooling
and thermal management. A collection of unit-length jobs is given, each
job specified by its release time, deadline and heat contribution. If, at
some time step, the temperature of the system is t and the processor
executes a job with heat contribution h, then the temperature at the
next step is (t + h)/2. The temperature cannot exceed the given thermal
threshold τ . The objective is to maximize the throughput, that is, the
number of tasks that meet their deadlines. We prove that in the offline
case computing the optimum schedule is NP-hard, even if all jobs are
released at the same time. In the online case, we show a 2-competitive
deterministic algorithm and a matching lower bound.

1 Introduction

Background. The problem of managing the temperature of processor systems is


not new; in fact, the system builders had to deal with this challenge since the

R. Fleischer and J. Xu (Eds.): AAIM 2008, LNCS 5034, pp. 120–130, 2008.

c Springer-Verlag Berlin Heidelberg 2008
Algorithms for Temperature-Aware Task Scheduling 121

inception of computers. Since early 1990s, the introduction of battery-operated


laptop computers and sensor systems highlighted the related issue of controlling
the energy consumption.
Most of the initial work on these problems was hardware and systems ori-
ented, and only during the last decade substantial progress has been achieved
on developing models and algorithmic techniques for microprocessor tempera-
ture and energy management. This work proceeded in several directions. One
direction is based on the fact that the energy consumption is a fast growing
function of the processor speed (or frequency). Thus we can save energy by sim-
ply slowing down the processor. Here, algorithmic research focussed on speed
scaling – namely dynamically adjusting the processor speed over time to opti-
mize the energy consumption while ensuring that the system meets the desired
performance requirements. Another technique (applicable to the whole system,
not just the microprocessor) involves power-down strategies, where the system
is powered-down or even completely turned off when some of its components
are idle. Since changing the power level of a system introduces some overhead,
scheduling the work to minimize the overall energy usage in this model becomes
a challenging optimization problem.
Models have also been developed for the processor’s thermal behavior. Here,
the main objective is to ensure that the system’s temperature does not exceed the
so-called thermal threshold, above which the processor cannot operate correctly,
or may even be damaged. In this direction, techniques and algorithms have been
proposed for using speed-scaling to optimize the system’s performance while
maintaining the temperature below the threshold.
We refer the reader to the survey by Irani and Pruhs [4], and references
therein, for more in-depth information on the models and algorithms for thermal
and energy management.

Temperature-aware Scheduling. The above models address energy and thermal


management at the micro-architecture level. In contrast, the problem we study
in this paper addresses the issue of thermal management at the operating sys-
tems level. Most of the previous work in this direction focussed on multi-core
systems, where one can move tasks between the processors to minimize the
maximum temperature [8,1,2,5,6,7,3,9]. However, as it has been recently discov-
ered, even in single-core systems one can exploit variations in heat contributions
among different tasks to reduce the processor’s temperature through appropri-
ate task scheduling [1,3,5,6,10]. In this scenario, the microprocessor temperature
is controlled by the hardware dynamic thermal management (DTM) systems
that continuously senses the chip temperature and automatically reduces the
processor’s speed as soon as the thermal threshold (maximum safe operating
temperature) is exceeded. Typically, the frequency is reduced by half, although
it can be further reduced to one fourth or even one eighth, if needed. Once the
chip cools down to below the threshold, the frequency is increased again. In
addition, the cooling system operates non-stop, reducing the deviation of the
processor’s temperature from the ambient temperature at an exponential rate.
The general accepted model stipulates that there is a constant time T , such that
122 M. Chrobak et al.

after T time units, the cooling system divided by 2 the difference between the
processor’s temperature and the ambient temperature. In this work we assume
that this constant is exactly the length of a unit length job. The general case
will be considered in the full version of this paper.
Different tasks use different microprocessor units in different ways; in partic-
ular, some tasks are more CPU-intensive than other. As a result, the processor’s
thermal behavior – and thus the performance as well – depends on the order of
the task execution. In particular, Yang et al. [10] point out that the accepted
model for the microprocessor thermal behavior implies that, given two jobs,
scheduling the “hotter” job before the “cooler” one, results in a lower final tem-
perature. They take advantage of this phenomenon to improve the performance
of the OS scheduler.
With multitudes of possible underlying architectures (for example, single- vs.
multi-core systems), models for cooling and hardware thermal management, as
well as types of jobs (real-time, batch, etc.), this gives rise to a plethora of
interesting and never yet studied scheduling problems.

Our Model. We focus on scheduling real-time jobs in a somewhat simplified


model for cooling and thermal management. The time is divided into unit time
slots and each job has unit length. These jobs represent unit slices of the processes
present in the OS scheduler’s queue. We assume that the heat contributions
of these jobs are known. This is counterintuitive, but reasonably realistic, for,
as discussed in [10], these values can be well approximated using appropriate
prediction methods.
In our thermal model we assume, without loss of generality, that the ambient
temperature is 0 and that the heat contributions are expressed in the units of
temperature (that is, by how much they would increase the chip temperature in
the absence of cooling). Suppose that at a certain time the processor temperature
is t and we are about to execute a job with heat contribution h in the next
time slot. In reality [10], during the execution of this job, its heat contribution
is spread over the whole slot and so is the effect of cooling; thus, the final
temperature can be expressed using an integral function. In this paper, we use
a simplified model where we first take into account the job’s heat contribution,
and then apply the cooling, where the cooling simply reduces the temperature
by half.
Finally, we assume that only one processor frequency is available. Conse-
quently, if there is no job whose execution does not cause a thermal violation,
the processor must stay idle through the next time slot.

Our Results. Summarizing, our scheduling problem can be now formalized as


follows. A collection of unit-length jobs is given, each job j with a release time
rj , deadline dj and heat contribution hj . If, at some time step, the temperature
of the system is t and the processor executes a job j, then the temperature at
the next step is (t + hj )/2. The temperature cannot exceed the given thermal
threshold τ . The objective is to compute a schedule which maximizes the number
of tasks that meet their deadlines.
Algorithms for Temperature-Aware Task Scheduling 123

We prove that in the offline case computing the optimum schedule is NP-
hard, even if all jobs are released at the same time. In the online case, we show
a 2-competitive deterministic algorithm and a matching lower bound.

2 Terminology and Notation


The input consists of n unit-length jobs that we number 1, 2, ..., n. Each job j
is specified by a triple (rj , dj , hj ), where rj is its release time, dj is the deadline
and hj is its heat contribution. The time is divided into unit-length slots and
each job can be executed in any time slot in the interval [rj , dj ]. The system
temperature is initially 0 and it changes according to the following rules: if the
temperature of the system at a time u is t and the processor executes j then
the temperature at time u + 1 is (t + hj )/2. The temperature cannot exceed the
given thermal threshold τ that we assume to be 1. Thus if (t + hj )/2 > 1 then j
cannot be executed at time u. Idle slots are treated as executing a job with heat
contribution 0, that is, after an idle slot the temperature decreases by half.
Given an instance, as above, the objective is to compute a schedule with
maximum throughput, where throughput is defined as the number of completed
jobs. Extending the standard notation for scheduling problems, we denote the
offline version of this problem by 1|ri , hi | Ui . 
In the online version, denoted 1|online-ri , hi | Ui , jobs are available to the
algorithm at their release time. Scheduling decisions of the algorithm cannot
depend on the jobs that have not yet been released.

3 The NP-Completeness Proof



The special case of the problem 1|ri , hi | Ui , when all jobs have the same release
time and the same deadline is denoted as 1|hi |Cmax : The objective value Cmax
stands for minimizing the maximum completion time of the jobs when there are
no deadlines to respect, and the decision version of this optimization problem is
exactly deciding if there is a feasible schedule where all jobs complete before a
given common deadline.
We can show that this problem is NP-complete. Why is it interesting? In
fact, one common approach in designing on-line algorithms for scheduling is to
compute the optimal schedule for the pending jobs, and use this schedule to
make the decision as to what execute next. The set of pending jobs forms an
instance where all jobs have the same release time. This does not necessarily
mean that the above method cannot work (assuming that we do not care about
the running time of the online algorithm), but it makes this approach much less
appealing, since reasoning about the properties of the pending jobs is likely to
be very difficult.
Theorem 1. The offline problem 1|hi |Cmax is NP-hard.
Proof. The reduction is from Numerical 3 Dimensional Matching. In the
later problem we are given 3 sequences A, B, C of n non-negative integers each
124 M. Chrobak et al.

and an integer m. A 3-dimensional matching is a set of n triplets (a, b, c) ∈


A × B × C such that each number is matched exactly once. The problem consists
in deciding if there is a 3-dimensional matching, such that all matches (a, b, c)
satisfy a + b + c = m.
Without loss of generality, we can assume (A1) that every x ∈ A ∪ B ∪ C
satisfies x ≤ m and (A2) that x∈A∪B∪C x = mn.
In this reduction we need two constants. Let be α = 1/13 and  = (1/8 −
3α)/m > 0. We also define the function f : x → α + x.
We construct an instance to the heating problem. In total there will be 4n + 1
jobs, and all are released at time 0 and have deadline 4n + 1. These jobs will be
of two types:
1. First we have 3n jobs that correspond to the instance of Numerical 3
Dimensional Matching.
– For every a ∈ A, there is a job of heat contribution 8f (a).
– For every b ∈ B, there is a job of heat contribution 4f (b).
– For every c ∈ C, there is a job of heat contribution 2f (c).
We call these respectively A-, B- and C-jobs.
2. Next, we have n + 1 “gadget” jobs. The first of these jobs has heat con-
tribution 2, and the remaining ones 1.75. We call these respectively 2- and
1.75-jobs.
The idea of the construction is that the gadget jobs are so hot, that they
need to be scheduled every 4-th time unit, separating the time into n blocks of
3 consecutive time slots each. Now every remaining job has a heat contribution
that consists in two parts. A constant part and a tiny part depending on the
instance of the matching problem. The constant part is so large that in every
block there is a single A-, B- and C-job and they are scheduled in that order.
This defines a 3-dimensional matching. Now the gadget jobs are so hot, that they
force every matching (a, b, c) to satisfy a + b + c ≤ m. Let’s make this argument
formal.
Suppose there is a solution to the matching problem. We show that there
is a solution to the heating problem. Schedule the job 2 at time 0, and all
other gadget jobs every 4th time slot. Now the remaining slots are grouped into
blocks consisting of 3 consecutive time slots. Each i-th triplet (a, b, c) from the
matching is associated to the i-th block, and the corresponding A-,B- and C-jobs
are executed in there in the order A, B, C, see figure 1. By construction every
job meets its deadline, it remains to show that at no point the temperature
exceeds 1. The non-gadget jobs have all heat contribution smaller than 1, by
assumption (A1), so every execution of a non-gadget job would preserve that
the temperature is not more than 1. Now we show by induction that right after

2 A B C 1.75 A B C 1.75 A B C 1.75 A B C 1.75

Fig. 1. The structure of the solution of the scheduling problem


Algorithms for Temperature-Aware Task Scheduling 125

the execution of a gadget job, the temperature is exactly 1. This is clearly the
case after execution of the first job, since its heat contribution is 2. Now let u
be the time when a 1.75-job is scheduled, and suppose that at time u − 3 the
temperature was 1. Let (a, b, c) be the matching associated to the slots between
u − 3 and u. Then at time u the temperature is

1 8f (a) 4f (b) 2f (c) 1 1 1


+ + + = + 3α + (a + b + c) = + 3α + m = .
8 8 4 2 8 8 4
This shows that at time u + 1 the temperature is again 1. We conclude that the
schedule is feasible.
Now we show the remaining direction in the NP-hardness proof, namely that if
there is a solution to the scheduling problem, then there is a solution to the match-
ing problem. To that purpose, suppose that there is a solution to the scheduling
problem. We first show that it has the form of figure 1. Since all 4n + 1 jobs have
deadline 4n + 1, all jobs must be scheduled without any idle time between time 0
and 4n + 1. This means that the gadget job of heat contribution 2 must be sched-
uled at time 0, because that is the only moment of temperature 0.
Now we claim that all 1.75-jobs have to be scheduled every 4-th time unit. For
a proof by contradiction assume that at some times u and u + 3 two gadget jobs
are scheduled. The lightest job that can be scheduled at times u + 1, u + 2 would
be a C-job of heat contribution 2f (0) = 2α. The temperature at time u + 1 is
at least 1.75/2 = 7/8. Therefore the temperature at time u + 3 is at least

7 3 7 3
+ α= + > 1/4.
32 2 32 26
This contradicts that a 1.75-job is scheduled at time u + 3, since the temperature
would exceed 1 at u + 4. So we can conclude that the 1.75-jobs are scheduled
every 4-th time unit. This partitions the remaining time slots into blocks of 3
time slots each.
We show now that every block contains exactly one A-job, one B-job and
one C-job, in that order. For a proof by contradiction assume that some A-job
is scheduled at the 2nd position of some block. Its heat contribution is at least
8f (0). The coolest jobs scheduled at position 1 and 3 have heat contribution
2f (0) = 2α at least. Then the temperature at the end of the block is at least

7 α 7 13 7 1
+ + 2α + α = + α= + > 1/4.
64 4 32 4 32 4
This would be too hot for the following 1.75-job. The same argument shows
that A-jobs cannot be scheduled at position 3 in a block, and therefore the 1st
position of a block is always occupied by an A-job. Now we show that a B-job
cannot be scheduled at the 3rd position of some block. This is because otherwise
the temperature at the end of the block would be again at least

7 α 7 7
+ α + + 2α = + α > 1/4.
64 2 32 2
126 M. Chrobak et al.

We showed that every block contains jobs that correspond to some matching
(a, b, c) ∈ A×B×C. It remains to show that each matching satisfies a+b+c = m.
Let (ai , bi , ci ) be the matching corresponding to the i-th block, for 1 ≤ i ≤ n.
Let be ti = (3α − (ai + bi + ci ))/2 + 7/8. Also let be t0 = 1. Then for 1 ≤ k ≤ n
the temperature at the end of time 4k + 1 is

k  k−i
1
ti ≤ 1, (1)
i=1
16

For convenience we write pi = 15/16 − ti. Assumption (A2) said that the average
of ai + bi + ci over 1 ≤ i ≤ n is m. Therefore the average of ti (excluding t0 ) is
15/16, and therefore we have
n
pi = 0. (2)
i=1

Furthermore from (1) we have


k
∀1≤k ≤n: 16i pi ≤ 0. (3)
i=1

We will show now that for every i, pi = 0. This would imply that ai + bi +
ci = m, and imply that the matching problem has a solution. For a proof by
contradiction suppose that (pi ) is not all zero. Let  be the smallest index such
that p > 0 and
p1 + . . . + p ≥ 0. (4)

By minimality of  we have for every 2 ≤ k ≤  − 1

p1 + . . . + pk−1 ≤ 0 and pk + . . . + p ≥ 0

So we can increase the coefficients of the variables pk , . . . , p by some same


amount and preserve (4), obtain

16p1 + 162 p2 + . . . 162 p−1 + 162 p ≥ 0

and finally
16p1 + 162 p2 + . . . 16−1 p−1 + 16−1 p ≥ 0.

Now using p > 0, we obtain

16p1 + 162 p2 + . . . 16−1 p−1 + 16 p > 0,

which contradicts (4). This completes the proof.


Algorithms for Temperature-Aware Task Scheduling 127

4 An Online Competitive Algorithm


In this section we show that there is a 2-competitive algorithm. We will show,
in fact, that a large class of deterministic algorithms is 2-competitive.
Given a schedule, we will say that a job j is pending at time u if j is released,
not expired (that is, rj ≤ u < dj ) and j has not been scheduled before u. If the
temperature at time u is t and u is pending, then we call j available if t + hj ≤ 2,
that is, j is not too hot to be executed.
We say that job j dominates job k if j is both cooler and has the same or
smaller deadline than k, that is hj ≤ hk and dj ≤ dk . Also we say that j domi-
nates strictly job k if at least one of the inequalities is strict. An online algorithm
is called reasonable if at each step (i) it schedules a job whenever if is available
(the non-waiting property), and (ii) it schedules a pending job that is not strictly
dominated by another pending job. The class of reasonable algorithms contains,
for example, the algorithm which schedules the coolest available job, and the
algorithm which schedules the earliest deadline available job.

Theorem 2. Any reasonable alg. for 1|online-ri , hi | Ui is 2-competitive.
Proof. We define a charging scheme that maps jobs executed by the adversary
to jobs executed by the algorithm in such a way that no job in the algorithm’s
schedule gets more than two charges.

type 1 charge adv. k type 3 charges


alg. j
adv. j −
alg. j

adv. k j −

type 2 charge alg. k j


cooler
adv. − adv. k j k’ −
alg. j alg. k’ k j

Fig. 2. the different types of charges

Fix an instance, and consider both the schedule produced by the algorithm
and some arbitrary schedule, say produced by some adversary. Suppose that the
adversary schedules j at time v. There will be three types of charges.
Type 1 Charges: If the algorithm schedules a job k at time v, charge j to k.
Otherwise, we are idle, and we have two cases.
Type-2 Charges: Suppose that the algorithm is hotter than the adversary at
time v and cooler at v + 1. In this case we charge j to the previous heating step,
by which we mean a time u < v, where either the algorithm schedules a job
which is strictly hotter than the one scheduled by the adversary, or where only
the algorithm schedules something and the adversary is idle.
128 M. Chrobak et al.

Type-3 Charges: Suppose now that the algorithm is hotter than the adversary
at v + 1 or cooler at v (and therefore also at v + 1). Now we argue that j has
been scheduled by the algorithm at some earlier time u: In the case where the
algorithm was cooler at v, j would have been available and we assumed the
algorithm is non-waiting. Now consider the case where the algorithm was hotter
than the adversary at time v + 1. Its temperature is at most 1/2 at that time, so
the temperature of j can be at most 1. So again it would have been executable
at time v. This observation is also true for any job cooler than j, and this will
be useful later.
So let u < v be the execution time of j by the algorithm. To find a job that we
can charge j to, we perform pointer chasing of sorts: If, at time u, the adversary
is idle or schedules an equal or hotter job, then we charge j to itself (its “copy”
in the algorithm’s schedule). Otherwise, let k be the strictly cooler job scheduled
by the adversary at u. Now we claim that the algorithm schedules k at some
time before v. Indeed, if it were still pending at u, since the algorithm never
schedules a dominated job, its deadline is not before the one of j, in particular it
is after v. By our earlier observation it would have been executable at v, so at v
job k is not pending anymore. We iterate to the time the algorithm executes k.
This iteration will end at some point, since we deal with cooler and cooler jobs.
Now we show that any job scheduled by the algorithm will get at most two
charges. Obviously, each job in the algorithm’s schedule gets at most one type-
1 charge. Every chain defining a type-3 charge is uniquely defined by the first
considered job, and therefore type-3 charges are assigned to distinct jobs. This
also holds for type-2 charges, since between any two time steps that satisfy the
condition of the type-2 charge there must be a heating step, so the type-2 charges
are assigned to distinct heating steps.
Now let k be a job scheduled by the algorithm at some time v. By the previous
paragraph, k can get at most one charge of each type. If the adversary is idle
at v, k cannot get a type-1 charge. If the adversary schedules a job j at time
v whose heat contribution is equal or smaller than k’s then k cannot get the
type-2 charge. If it schedules something hotter it cannot get the type-3 charge.
So in total every job scheduled by the adversary is charged to some job sched-
uled by the algorithm, and every job scheduled by the algorithm receives no
more than 2 charges, therefore the competitive ratio is not more than 2.

5 A Lower Bound on the Competitive Ratio



Theorem 3. Every deterministic online algorithm for 1|online-ri , hi | Ui has
competitive ratio at least 2.
Proof. We (the adversary) release a job j → (rj , dj , hj ) = (0, 3, 1). If the online
algorithm schedules it at time 0, we release a tight job k → (1, 2, 1.7) and
schedule it followed by j. If the algorithm does not schedule j at time 0, then
we do schedule it at 0 and release (and schedule) a tight job k  → (2, 3, 1.7) at
time 2. In both cases we scheduled two jobs, while the algorithm scheduled only
one, completing the proof.
Algorithms for Temperature-Aware Task Scheduling 129

6 Final Comments

Many open problems remain. Perhaps the most intriguing one is to determine
the randomized competitive ratio for the problem we studied. The proof of The-
orem 3 can easily be adapted to prove the lower bound of 1.5, but we have not
been able to improve the upper bound of 2; this is, in fact, the main focus of our
current work on this scheduling problem.
Extensions of the cooling model can be considered, where the temperature
after executing j is (t + hj )/R, for some R > 1. Even this formula, however, is
only a discrete approximation for the true model (see, for example, [10]), and it
would be interesting to see if the ideas behind our 2-competitive algorithm can
be adapted to these more realistic cases.
In reality, thermal violations do not cause the system to idle, but only to
reduce the frequency. With frequency reduced to half, a unit job will execute for
two time slots. Several frequency levels may be available.
We assumed that the heat contributions are known. This is counterintuitive,
but not unrealistic, since the ”jobs” in our model are unit slices of longer jobs.
Prediction methods are available that can quite accurately predict the heat con-
tribution of each slice based on the heat contributions of the previous slices.
Nevertheless, it may be interesting to study a model where exact heat contribu-
tions are not known.
Other types of jobs may be studied. For real-time jobs, one can consider the
case when not all jobs are equally important, which can be modeled by assigning
weights to jobs and maximizing the weighted throughput. For batch jobs, other
objective functions can be optimized, for example the flow time.
One more realistic scenario would be to represent the whole processes as jobs,
rather then their slices. This naturally leads to scheduling problems with preemp-
tion and with jobs of arbitrary processing times. When the thermal threshold is
reached, the execution of a job is slowed down by a factor of 2. Here, a schedul-
ing algorithm may decide to preempt a job when another one is released or, say,
when the processor gets too hot.
Finally, in multi-core systems one can explore the migrations (say, moving
jobs from hotter to cooler cores) to keep the temperature under control. This
leads to even more scheduling problems that may be worth to study.

References
1. Bellosa, F., Weissel, A., Waitz, M., Kellner, S.: Event-driven energy accounting for
dynamic thermal management. In: Workshop on Compilers and Operating Systems
for Low Power (2003)
2. Choi, J., Cher, C.-Y., Franke, H., Hamann, H., Weger, A., Bose, P.: Thermal-aware
task scheduling at the system software level. In: International Symposium on Low
Power Electronics and Design, pp. 213–218 (2007)
3. Gomaa, M., Powell, M.D., Vijaykumar, T.N.: Heat-and-run: leveraging smt
and cmp to manage power density through the operating system. SIGPLAN
Not. 39(11), 260–270 (2004)
130 M. Chrobak et al.

4. Irani, S., Pruhs, K.R.: Algorithmic problems in power management. SIGACT


News 36(2), 63–76 (2005)
5. Martonosi, M., Donald, J.: Techniques for multicore thermal management: Classi-
fication and new exploration. In: Proceedings of the International Symposium on
Computer Architecture, pp. 78–88 (2006)
6. Kumar, A., Shang, L., Peh, L.-S., Jha, N.K.: HybDTM: a coordinated hardware-
software approach for dynamic thermal management. In: DAC 2006: Proceedings
of the 43rd Annual Conference on Design Automation, pp. 548–553 (2006)
7. Kursun, E., Cher, C.-Y., Buyuktosunoglu, A., Bose, P.: Investigating the effects of
task scheduling on thermal behavior. In: The 3rd Workshop on Temperature-Aware
Computer Systems (2006)
8. Merkel, A., Bellosa, F.: Balancing power consumption in multiprocessor systems.
SIGOPS Oper. Syst. Rev. 40(4), 403–414 (2006)
9. Moore, J., Chase, J., Ranganathan, P., Sharma, R.: Making scheduling ”cool”:
temperature-aware workload placement in data centers. In: ATEC 2005: Proceed-
ings of the USENIX Annual Technical Conference 2005 on USENIX Annual Tech-
nical Conference, pp. 5–5 (2005)
10. Yang, J., Zhou, X., Chrobak, M., Zhang, Y.: Dynamic thermal management
through task scheduling. In: IEEE International Symposium on Performance Anal-
ysis of Systems and Software (to appear, 2008)
Engineering Comparators for Graph Clusterings

Daniel Delling, Marco Gaertler, Robert Görke, and Dorothea Wagner

Faculty of Informatics, Universität Karlsruhe (TH)


{delling,gaertler,rgoerke,wagner}@informatik.uni-karlsruhe.de

Abstract. A promising approach to compare two graph clusterings is


based on using measurements for calculating the distance between them.
Existing measures either use the structure of clusterings or quality-based
aspects with respect to some index evaluating both clusterings. Each
approach suffers from conceptional drawbacks. We introduce a new ap-
proach combining both aspects and leading to better results for compar-
ing graph clusterings. An experimental evaluation of existing and new
measures shows that the significant drawbacks of existing techniques are
not only theoretical in nature but manifest frequently on different types
of graphs. The evaluation also proves that the results of our new measures
are highly coherent with intuition, while avoiding the former weaknesses.

1 Introduction

Finding groups of similar elements in datasets, a technique known as cluster-


ing, is an important problem in the analysis and exploration of data. There are
numerous applications such as data mining [8], network analysis [1], and bio-
chemistry [16]. While recent research [2,3] focused on measuring the quality of
a given clustering of an underlying graph, the problem of comparing two graph
clusterings becomes more and more important.
There exists a mutual relation between the two concepts quality and distance:
One could use a quality index to obtain a distance measure as shown later, while
measuring the distance of a given clustering to an “optimal” clustering could
yield the quality of the clustering. Current techniques for the comparison of
clusterings use only qualitative aspects or transfer existing measures from the
field of data mining. Both approaches have certain drawbacks: When comparing
clusterings by using qualitative aspects the results are highly dependent on the
used quality measure and completely different clusterings may yield the same
quality value and are thus indicated as equal. Measures originating from data
mining only consider the partition of nodes and ignore the structure of graphs.
Due to these conceptional disadvantages, investigated below, the introduction
of new measures seems inevitable, using structural and qualitative properties of
the clusterings to calculate an appropriate distance. We present a new approach
combining structural properties and qualitative aspects. In order to achieve this,

This work was partially supported by the DFG under grant WA 654/14-3 and EU
under grant DELIS (contract no. 001907).

R. Fleischer and J. Xu (Eds.): AAIM 2008, LNCS 5034, pp. 131–142, 2008.

c Springer-Verlag Berlin Heidelberg 2008
132 D. Delling et al.

we extend data mining measures by adding qualitative features and introduce


a new promising measure having its origin in quality measurement. Due to the
high complexity of comparing clusterings we focus on the case of static com-
parison, i.e., the graph is unchanged, but give an outlook on the dynamic case.
An experimental evaluation is presented, showing that the drawbacks of data
mining measures are not only theoretical in nature but manifest often.
This paper is organized as follows. Section 2 introduces preliminaries and
existing measures for comparing (data-)clusterings, including their drawbacks.
Two approaches for constructing new measures are presented in Section 3. An
evaluation based on artificial data of all presented measures is given in Section 4,
while Section 5 shows the applicability of our approach in a real-world scenario.
Section 6 concludes this paper.

2 Preliminaries
We assume that G = (V, E) is an undirected, unweighted and connected graph.
Let n := |V |, m := |E|, and C := {C1 , . . . , Cp } a partitioning of V . We call C
a clustering and the Ci clusters of the graph. The set of all possible clusterings
is A(V ). Let E(C) := {{u, v} ∈ E | u, v ∈ Ci } be the set of intra-cluster edges
of C and E(C) := {{u, v} ∈ E | u ∈ Ci , v ∈ Cj , i = j} the set of inter-cluster
edges of C. The cardinalities are indicated by m(C) := |E(C)| and m(C) := |E(C)|.
We call a graph with disjoint cliques a clustergraph and FC , the set of edges to
be added or deleted in order to transform a given graph and clustering C into an
according clustergraph, the cluster editing set of C. When comparing two cluster-
ings we use C and C  , with k := |C|, l := |C  |. With deg(Ci ) := v∈Ci deg(v) we
indicate the sum of all degrees of nodes within a cluster. All presented measures
are given in a distance version, normalized to the interval [0, 1]. In the following,
we give a short overview of existing comparison techniques. Among them are
measures based on quality and on comparing the partitions of node-sets, the
latter are also called node-structural.

Quality-Based Distance. Quality-based measurements can be constructed by


comparing the scores of the two clusterings with respect to an arbitrary quality
index such as coverage, performance or modularity [1,3]. Note, that a distance
measured in such a way is highly dependent on the used index. Furthermore,
completely different clusterings can yield the same value. Thus, we neglect purely
quality-based distances in the following and focus on measuring the distance
based on the structure of the clusterings.

Counting Pairs. In [17] some techniques based on counting pairs are pre-
sented. Summarizing, every pair of nodes is categorized based on whether they
are in the same (or different) cluster with respect to both clusterings. Four sets
are defined: S11 (S00 ) is the set of unordered pairs that are in the same (differ-
ent) clusters under both clusterings, whereas S01 (S10 ) contains all pairs that are
Engineering Comparators for Graph Clusterings 133

in the same cluster under C (C  ) and in different under C  (C). In the following
we present two representatives for this class: Rand and adjusted Rand measure.
Rand introduced the distance function R given in Equation 1 in [12], it suffers
from several drawbacks. For example, it is highly dependent on the number of
clusters. One attempt to remedy some of these drawbacks, which is known as
adjusted Rand AR and given in Equation 1, is to subtract the expected value
for clusterings with a hypergeometric distribution of nodes, see [11].

2(n11 + n00 ) n11 − t3


R(C, C  ) := 1 − , AR(C, C  ) := 1 − 1 , (1)
n(n − 1) 2 1 + t2 ) − t3
(t

where t1 := n11 + n10 , t2 := n11 + n01 , and t3 := (2t1 t2 )/(n(n − 1)) and t1 (t2 )
is the cardinality of all pairs of nodes that are in the same cluster under C (C  ).

Overlaps. Another counting approach is based on the k × l confusion matrix


CM := (mij ) whose ij-entry indicates how many elements are in Cluster Ci and
Cj , formally mij := |Ci ∩ Cj |, for 1 ≤ i ≤ k and 1 ≤ j ≤ l. Several measures
are based on the confusion matrix. We restrict ourselves to the measure N VD,
introduced by van Dongen in [15], given in Equation 2. Other measures suffer
from the obvious disadvantage of asymmetries, thus we exclude them. We use a
normalized version to keep the measure to the interval [0, 1].

1  1 
k l
N VD(C, C  ) := 1 − max mij − max mij (2)
2n i=1 j 2n j=1 i

One major drawback of N VD is that the distance between the two trivial clus-
terings, i. e.,k = 1, l = n, only yields a value of about 0.5. In addition, this
measure suffers from the drawback that only the maximum overlaps contribute,
resulting counter-intuitive examples are given in [10].

Information Theory. More promising approaches are based on information


theory [4]. Informally, the entropy H(C) of a clustering is the uncertainty of a
randomly picked node belonging to a certain cluster. An entropy of a clustering
is always positive and is bounded by log2 (n), see [13]. An extension of entropy is
the mutual information I(C, C  ). The mutual information of two clusterings is the
loss of uncertainty of one clustering if the other is given. With P (i) := |Ci |/n
and P (i, j) := (|Ci ∩ Cj |)/n, entropy and mutual information are defined as
follows.

k 
k 
l
P (i, j)
H(C) := − P (i) log2 P (i) , I(C, C  ) := P (i, j) log2 (3)
i=1 i=1 j=1
P (i)P (j)

Note that mutual information is positive and bounded by min{H(C), H(C  )} ≤


log2 (n). In the following we present two representatives in this class, namely
134 D. Delling et al.

one introduced by Fred & Jain [6] and Variation of Information, introduced by
Meila [9].

2I(C,C  )
 1− H(C)+H(C  ) , if H(C) + H(C  ) = 0
F J (C, C ) := (4)
0 , otherwise
VI(C, C  ) := H(C) + H(C  ) − 2I(C, C  ) (5)

The first measure F J , given in Equation 4, is a normalized version of the mutual


information and stated as a distance function. The case differentiation is used
to deal with the degenerated case of two trivial clusterings, i. e.,k = l = 1.
The second measure VI is motivated by an axiomatic approach and given in
Equation 5. In [10], it is shown that VI is the only measure fulfilling several ax-
ioms. However, these axioms seem to be inadequate in the special case of graph
clustering. According to these axioms, the movement of a node v from one clus-
ter Ci to another cluster Cj must be equivalent to first splitting v off from Ci and
then merging it with Cj . Figure 1 shows an example regarding this axiom: intu-
itively d(C, C  ) should be greater than d(C, C  )+d(C  , C  ) of which both terms rep-
resent minor changes, but according to the axiom d(C, C  ) = d(C, C  ) + d(C  , C  )
must hold. This measure is not normalized and the two possible normalization
factors, which are 1/ log2 (n) and 1/ log2 (max{k, l}), mapping to the intervals
[0, x], x ≤ 1 and [0, 1] respectively, have significant drawbacks. Nevertheless, we
use the log2 (n) normalized version for comparability with the other measures.

Drawbacks of the Data Mining Approach. All node-structural measures


suffer from the same drawback that they neglect the structure of the graph. The
examples in Figure 2 clarify this circumstance. The figure shows four clusterings
C1 , C1 , C2 and C2 on two graphs G1 and G2 . A measure d not considering the
structure of the graphs fulfills d(C1 , C1 ) = d(C2 , C2 ). Intuitively, the distance
d(C1 , C1 ) has to be greater than d(C2 , C2 ) since the quality of C1 is almost equal
to that of C2 , but C1 has far lower quality than C2 . This drawback can become
arbitrarily grave when the edge set of the graph is allowed to change.

C C C  C1 C1 C2 C2

Fig. 1. The sum of two minor Fig. 2. Two static comparisons of graph cluster-
changes result in a major one ings
Engineering Comparators for Graph Clusterings 135

3 Engineering Graph-Structural Comparison Measures


In order to remedy some of the disadvantages of node-structural measures, we
introduce the concept of graph-structural measures. Since they are also based
on the underlying graph structure, they can include qualitative aspects for mea-
suring the distance of two clusterings. In the first part, Section 3.1, we extend
node-structural measures, while a novel measure is introduced in the second
part, Section 3.2.

3.1 Extension of Node-Structural Measures


For consistency, all extended measures should meet the following requirement:
If the underlying graph is complete, then both the graph- and node-structural
version should yield the same value, since then the graph structure does not
provide additional information. A second objective is to adjust the three found-
ing principles—counting pairs, overlaps and information theory—of the existing
measures themselves, instead of adjusting each implementation separately.

Counting Local Pairs. Instead of categorizing every pair we only consider


those pairs, that are connected by an edge. For a, b ∈ {0, 1} we define Eab :=
Sab ∩ E and eab := |Eab |. It is obvious that Sab = Eab holds for complete graphs.
Thus, we obtain the graph-based versions Rg and ARg of the Rand and adjusted
Rand measure given in Equation 6:
e11 + e00 e11 − t3
Rg (C, C  ) := 1 − , ARg (C, C  ) := 1 − 1 , (6)
m 2 (m(C) + m(C  )) − t3

where t3 := (m(C)m(C  ))/m. Note, that m(C) = e11 + e10 and m(C  ) = e11 + e01 ,
respectively, hold.

Degree-Based Overlaps. Measures based on overlaps can be transformed


into graph-structural measures by a slight modification in the definition of the
confusion matrix as follows. The ij-th entry of the degree-based confusion matrix
CM d := (mdij ) indicates the sum of the degrees of the nodes that are both in Ci
and C  , formally mdij := deg(Ci ∩ Cj ). Note, that if G is d-regular graph, then
the equality CM = CM d /d holds. In certain cases, this may lead to different
normalization factors. The extension of N VD is given in Equation 7.

1  1 
k l
N VDg (C, C  ) := 1 − max mdij − max mdij (7)
4m i=1 j 4m j=1 i

The equivalence of the node- and the graph-structural variant of the normalized
van Dongen measure for regular graphs follows from m = dn/2 and mij = mdij /d.

Edge Entropy. The entropy defined in Section 2 solely depends on the node-
set, thus we extend it to the edge-set using the following paradigm: Instead of
136 D. Delling et al.

randomly picking a node from the graph for measuring the uncertainty, we pick
the end of an edge randomly. As a consequence, a node with high degree has a
greater impact on the distance. The formal definition of edge entropy HE and
edge mutual information IE is given in Equation 8 and 9.


k
HE (C) := − PE (i) log2 PE (i) , (8)
i=1

k 
l
PE (i, j)
IE (C, C  ) := PE (i, j) log2 , (9)
i=1 j=1
PE (i)PE (j)

where PE (i) := deg(Ci )/2m and PE (i, j) := deg(Ci ∩ Cj )/2m. Note that for
regular graphs, the entropy and the edge entropy coincide. The extensions of
F J and VI are given in Equation 10 and 11.
 

 1 − HE2I E (C,C )
 , if HE (C) + HE (C  ) = 0
F J g (C, C ) := (C)+H E (C )
(10)
0 , otherwise
VI g (C, C  ) := HE (C) + HE (C  ) − 2IE (C, C  ) (11)

The equivalence of the node- and the graph-structural variant for regular graphs
results from the equality of entropy and edge entropy for complete graphs. Meila
showed in [10] that VI ≤ log2 (n) also holds for weighted clusterings. Since the
degree of a node can be interpreted as node-weight our log2 (n)-normalization
maps to the interval of [0, 1].

3.2 A Novel Approach for Measuring Graph-Structural Distance

Although the extensions introduced in the previous section incorporate the un-
derlying graph structure, they are not suitable for comparing clusterings on
different graphs. As a first step to solve this task, we consider the restriction to
graphs with the same node-set, but potentially different edge-sets. Motivated by
the cluster editing set, we introduce the editing set difference defined in Equa-
tion 12.
|FC ∪ FC  | − |FC ∩ FC  | |FC ∩ FC  |
ESD(C, C  ) = =1− (12)
|FC ∪ FC  | |FC ∪ FC  |
Small cluster editing sets correspond to significant clusterings. By comparing
the two clusterings with a geometric difference, we obtain an indicator for the
structural difference of the two clusterings. It easy to see, that in the case of
static comparison, ESD is a metric.

4 Experiments and Evaluation

We evaluate the introduced measures on two setups. The first focuses on struc-
tural properties of clusterings, the second concentrates on qualitative aspects:
Engineering Comparators for Graph Clusterings 137

Initial and Random Clusterings. The tests consist of two comparisons, each
including clusterings with the same expected intrinsic structure of the par-
titions, i. e.,the expected number of clusters and the size of clusters. The
first comparison uses one significant clustering and one uniformly random
clustering, while the second one uses two uniformly random clusterings.
Local Minimization. The setup consists of two parts, each comparing a ref-
erence clustering with a clustering of less significance. The two parts differ
in the significance of the reference clustering.
The intuition of the first test is to clarify the drawbacks of the node-structural
measures, while the second setup verifies the obtained results. We use the attrac-
tor generator introduced in [5] which uses geometric properties based on Voronoi
Diagrams to generate initial clusterings. The Voronoi cells represent clusters and
the maximum Euclidean distance of two nodes being connected is determined by
a perturbation parameter. All tests use n = 1000 nodes and are repeated until
the maximal length of the 0.95-confidence intervals is not larger than 0.1.

4.1 Initial- and Random Clusterings


The generated clustering is used as a significant clustering.√For the random clus-
tering we first pick k uniformly at random between 2 and 3 n for the number of
clusters and assign each node uniformly at random to the k clusters. Figures 3.1
and 3.2 show the measured quality by the indices coverage, performance and
modularity [1,3]. The tests consists of two cases. On the one hand, the compari-
son of the generated and a random clustering (GvR) and on the other hand, the
comparison of two random clusterings (RvR). A measure for comparing graph
clusterings should differ in the two cases. For GvR, a suitable measure should
indicate a decreasing distance with the loss of significance of the reference, while
for RvR two interpretations are possible. On the one hand, one could claim that
the distance between two random clusterings should be independent of the un-
derlying graphs. On the other hand, the distance should decrease with the loss
of significance because two random clusterings on an almost complete graph are
closer to each other than on a graph with an existing significant clustering. An-
other interpretation seems acceptable as well: The distance of a given clustering
to a random clustering should always be somehow maximal.
Figure 3 shows the results for the node- and graph-structural measures. By
comparing Figure 3.3 and 3.4 it is evident that node-structural measures do not
distinguish the two cases. Only Fred & Jain and adjusted Rand reflect the inter-
pretation that the distance to a random clustering is always maximal. However,
the situation changes for the graph-structural distance (Figures 3.5 and 3.6).
Only Rand and ESD capture the difference, while the remaining measures show
nearly the same behavior as their node-structural counterparts. For GvR, the
distance measured by Rand is decreasing with increasing density while for RvR
the distance is invariant under the density. Furthermore, the measured distance
equals the node-structural measurement for RvR. ESD has the same behavior
for GvR as Rand, whereas RvR reflects the intuition that two random cluster-
ings become more similar with loss of significance. Under the assumption that
138 D. Delling et al.

1.0
1.0
● ● ● ● ● x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
x x x x x ● ● x● ● x
+++++++ ● x x x x x x x x x x

0.2 0.4 0.6 0.8


0.2 0.4 0.6 0.8 ● x x x x x
++ ● x

measured quality
++ ● ● x
measured quality

+ ● x x x x

++
+ ● ●
++ ● ●
++ ● ● ● coverage
x performance
+ ●
++ ● ● + modularity
++ ● ● ●
++ ● ●
+++
+
● coverage ● ●
● ● ● ● ● ● ● ● ●
● ● ● ● ● ● ● ● ● ●
● ●
● ●
x performance ● ● ● ● ●

0.0
+
0.0

modularity ++++++++++++++++++++++++++++++
0.0 0.5 1.0 1.5 2.0 2.5 3.0 0.0 0.5 1.0 1.5 2.0 2.5 3.0
ρ ρ

3.1: Quality of initial clustering 3.2: Quality of random clustering

1.0
1.0

x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x

++++++++++++++++++++++++++++++

0.2 0.4 0.6 0.8


++++++++++++++++++++++++++++++
0.2 0.4 0.6 0.8

measured distance
measured distance

● Rand Fred & Jain ● Rand Fred & Jain


x adj. Rand norm. var. inf. x adj. Rand norm. var. inf.
+ van Dongen + van Dongen

● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ●

0.0
0.0

0.0 0.5 1.0 1.5 2.0 2.5 3.0 0.0 0.5 1.0 1.5 2.0 2.5 3.0
ρ ρ

3.3: GvR nodes-structural 3.4: RvR nodes-structural


1.0
1.0

x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x

● ● ● ● ● ●
++++++++++++++++++++++++
0.2 0.4 0.6 0.8

+++
● ●
++++++++++++++++++++++++
0.2 0.4 0.6 0.8

measured distance
measured distance

+++
● ●

● +
+ ●
● +
+ ●



+
+ ●




● Rand (g) Fred & Jain (g) ● ● ● Rand (g) Fred & Jain (g)

x adj. Rand (g) norm. var. inf. (g) ● ● x adj. Rand (g) norm. var. inf. (g)
● ●
+ van Dongen (g) ESD + van Dongen (g) ESD

● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ●
0.0
0.0

0.0 0.5 1.0 1.5 2.0 2.5 3.0 0.0 0.5 1.0 1.5 2.0 2.5 3.0
ρ ρ

3.5: GvR graph-structural 3.6: RvR graph-structural

Fig. 3. Results of the initial- and random clustering setup

a comparison to a random clustering should always be interpreted as maximal,


adjusted Rand and Fred & Jain can be accepted. Nevertheless, the equivalence
of the node- and the graph-structural versions of van Dongen and the normalized
Variation of Information is counterintuitive. This partly originates from the fact,
that attractors produce graphs that are close to regular for  > 0.5. Further-
more, the clusters are equal in size. The strange behavior of Fred & Jain, van
Dongen and the variation of Information for very small  stems from the fact
that for small  attractors are nearly stargraphs with k centers.

4.2 Local Minimization


Since there are several possible interpretations of graph-structural distance and
the structural similarity of the clusterings in Section 4.1 a second test is executed
having a precise intuition for graph-structural distance. Again, as a reference
Engineering Comparators for Graph Clusterings 139

1.0

1.0
x●x●x●x●x●x●x●x●xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxx xx xxx
● xxx x xx xxxx xxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxx xxxxxx
0.2 0.4 0.6 0.8 ++++++ ●●●●●●●●● x xx x xxxx x xxxxxxxxxxxxxxxxxx xx

0.2 0.4 0.6 0.8


++++ ●●● xxx xxxxxxxxxxxxxxxxxxxxxxxx xxx xx xxxx
+++++ ●●●●●●●●●●
measured quality

xxx xxxxxxxx xxxxx

measured quality
+++++ ●
++++ ++ ●●●●●●●●●●●
++ +++ ●●●●
●●● ●
+++++ ● ●●●●
++++++ ●●●●● ●
● ●●● ●
++++++ ● ●●●● ●
++++++++ ●● ●●
●●●●●●●●
++++++++++++ ●●● ●
● ●●●●● ●
● ●●●● ●● ●
● ●●●●●●●
+ ++++++++++ ●●●●●●
●●●●
+ +++ + +++++++++ ●●●●●●●● ●● ●
++++++++++ ++++++++++
● ● ●●●●●
●●●●●●● ● ● ●
+++++++ +++++++++++ ● ●● ● ●●●●●●●●
●●●●●●●●●● ●
++++++++++ + ●●●● ●●●●●●●● ● ●●●●
● coverage ● coverage +++++++++++ + ● ● ●●●●●●●●●●
+++++++++++++++ +
x performance x performance +++++++++++++++
+
+++++++++++++++++
0.0

+ modularity

0.0
modularity

0 100 200 300 400 500 0 100 200 300 400 500
moved nodes moved nodes

4.1: type 1 quality 4.2: type 2 quality


1.0

1.0
● Rand ● Rand
x adj. Rand x adj. Rand
xx
0.2 0.4 0.6 0.8

0.2 0.4 0.6 0.8


xxxxxxx
measured distance

+
xxxxxxxx
van Dongen

measured distance
+ van Dongen
xxxxxx xxxxxxx
Fred & Jain
xxxxxxx
Fred & Jain xxxxxx
xxxxxx xxxxxx
xxxxx
norm. var. inf. norm. var. inf.
xxxxx xxx
xxxxx xxxxx
xxxxxxx xxxxx
xxxxx xxxx
xxxx +++++ xxxx +++++++
xxxxx ++++++++ xxxx +++++++
xxxx ++++++++ xxxxxx +++++++
xxxx +++++++ xxxx
xx +++++++
xxx +++++++ xxxx +++++++
xxxxxxx ++++
+ ++++++++ xxx +
+ ++++++++++
+++++ xxx ++++++ +
xxxx +++++++ xxxx +++++++
xxxx +++++++ xxx +++++++
xxxx +++++++ ● ●●
●●●●●●●●●●● ●● xxx +++++++ ●● ●●●●●●●●●●●●●●●●●●●
●●
xxxx+++++++++++++
xx+ ●●●●●●●●●●●●
●●●●●●●●●●●●●●
xxx +++++++++++++ ●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●● ●
xx x+
x+ + + + ●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
++ xx xx+
x++ ++
+ +●●●●●●●●●●●●●●●●●●
+
0.0

x +
0.0
x●+
+ ●+
●+
x●+ ●●●●●●●●●●●●●● x
x●+
x●+
+ ●+
●+●●●●●●●●●●

0 100 200 300 400 500 0 100 200 300 400 500
moved nodes moved nodes

4.3: type 1 node-structural 4.4: type 2 node-structural


1.0

1.0

xxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxx
xxxxxxxxx
xxxxxxx
xxxxx
0.2 0.4 0.6 0.8

0.2 0.4 0.6 0.8


measured distance

measured distance

xxxx
xxx xxxx
xxx xxxxxxx
xx xxxxxxx
xx xxxxxx
xx ●●●●●●●
●●●●
xxxxxxxxxx
●●●●●●● x
x ●●●●●
++++++++ xxxxx ++
x ●●●●●
●●●●●
++++++++ xxxxx +++++++
●●●●●
●●●●●
++++++++ xxxxx +++++++
x ●●●●● +++++++ xxxxx +++++++
x ●●●● ++++++ xxxxx +++++++
+++++++

● ++ xxxxx
+++++++
●●●●
●●●● + ●
x x +
+ + ●●●●●●●●●
●●●● +++++++ x ++
x + ●●●●●
+++++++●●●●●●●●●●●●●●●●●●●●●●●●
x ●●●●
●●●●
●●●●
++++++ xxxxx ++++++
x ●●● +++++++ xxxx +++++++ ●●●●●●●●

●●●
●●●
++++++ xxxx +++++++
xxxx +++++
++ ●●●●●●
x ●●● +
●●● + ++
+ ++++++ ● Rand (g) Fred & Jain (g)
xxx
x +++
+
+●●●●●●●●●
●●●●●●● ● Rand (g) Fred & Jain (g)
+++++ ●+
● ●
●+


●●● + x adj. Rand (g) norm. var. inf. (g) xx+
x+ ++ ●●●●● x adj. Rand (g) norm. var. inf. (g)
●+
●+ +++++
●●+
+ van Dongen (g) x●+ x●+
x●+ x●+
x●+ ●●+ ●+
●●+●●●●●
+ van Dongen (g)
0.0

0.0

x●+
+ ●+
●+ ESD x●+
x●+
x●+
+ ESD

0 100 200 300 400 500 0 100 200 300 400 500
moved nodes moved nodes

4.5: type 1 graph-structural 4.6: type 2 graph-structural

Fig. 4. Results of the local minimization setup

clustering we use the generated clustering of an attractor graph. The second


clustering of less significance is obtained from the reference clustering by locally
moving nodes from one cluster to another. Such a shift is executed, if it max-
imally decreases a given index among all possible shifts. This is done until no
decrease of quality can be achieved or the number of moved nodes has reached
a maximum value of Mmax .
In this setup, we use modularity as the index, the density is set to the values
 = 0.5 (type 1) and  = 2.5 (type 2), and Mmax increases from 0 to 500 using
steps of 5. Figures 4.1 and 4.2 show the measured quality of the locally decreased
clusterings on increasing number of moved nodes. Note, that for Mmax = 0 the
reference and the locally decreased clustering coincide. A suitable distance mea-
sure should first of all distinguish the two cases. In addition, with increasing
Mmax the measured distance in type 2 should be smaller than in type 1, since
the intuition is that in type 1 a very significant clustering is destroyed while on
140 D. Delling et al.

type 2 the loss of significance is lower. Figure 4 shows the results for all measures
on this specific setup. As shown in Figures 4.3 and 4.4, all node-structural mea-
sures hardly distinguish the two cases. This reveals additional disadvantages.
Evaluating the graph-structural measures (Figures 4.5 and 4.6), the intuitive
behavior of Rand is verified. Furthermore, adjusted Rand and ESD distinguish
both cases very well. The remaining graph-structural measures show the same
behavior as their node-structural counterparts. Thus, the failure of van Dongen
and the Variation of Information is confirmed. Unlike in Section 4.1 Fred & Jain
fails on this setup. The unexpected behavior of the overlap and entropy based
measures may be due to—as mentioned in Section 4.1—the fact that for  = 0.5
and  = 2.5 attractor graphs have a fairly regular structure. As shown in Section
2 the graph-structural versions of overlap- and entropy-based measures equal the
node-structural variants for regular graphs.

5 Real-World Scenario

In this section, we discuss a real-world instance in order to illustrate the ad-


vantages of graph-structural measures over node-structural ones. As input, we
use the e-mail graph (Figure 5) of the Karlsruhe faculty of computer science,
introduced in [7]. As a reference clustering, we group by departments. We ad-
ditionally compute two clusterings by using the greedy modularity approach [3]
and the MCL algorithm, introduced in [14]. Table 1 depicts the scores achieved
by the quality measures coverage, performance and modularity. With respect to
all three quality measures, MCL outperforms the greedy approach and achieves
a score close to the reference. Table 2 gives an overview of the measured dis-
tances between the abovementioned clusterings. We observe that the MCL-
clustering is not as close to the reference than one could expect from the figures in

Fig. 5. Karlsruhe e-mail graph. Groups refer to the reference clustering, colors to the
clustering obtained by the greedy modularity algorithm.
Engineering Comparators for Graph Clusterings 141

Table 1. Quality scores achieved by the reference clustering and those computed by
the greedy approach and by MCL. The input is the Karlsruhe e-mail graph.

reference greedy MCL


coverage 0.8173 0.8634 0.8182
performance 0.9387 0.8286 0.9238
modularity 0.7423 0.6725 0.7282

Table 2. Measured distances between reference and two computed clusterings. One
clustering is obtained by MCL, the other one by the greedy modularity algorithm. The
input is the Karlsruhe e-mail graph (cf. Figure 5).

reference reference greedy


measure type measure vs. greedy vs. MCL vs. MCL
quality modularity difference 0.0697 0.0140 0.0557
Rand 0.1233 0.0463 0.1466
adj. Rand 0.5765 0.3555 0.6549
node-structural van Dongen 0.2676 0.1834 0.3465
Fred & Jain 0.3137 0.1794 0.3876
variation of information 0.2425 0.1658 0.2904
Rand 0.1963 0.1305 0.2452
adj. Rand 0.4689 0.2820 0.5730
van Dongen 0.2435 0.1714 0.3215
graph-structural
Fred & Jain 0.2828 0.1623 0.3581
variation of information 0.2107 0.1427 0.2549
ESD 0.7325 0.5382 0.7796

Table 1. All graph-structural distance measures indicate a difference of more than


0.1. More interestingly, ESD yields a lower score than graph-structural adjusted
Rand. For artificial data, the contrary is true (cf. Section 4). Most of our graph-
structural measures indicate a lower distance between all clusterings than their
node-structural versions. As all clusterings score similar quality values, and thus
have quite a low distance with respect to quality, the graph-structural measures
really incorporate qualitative aspects. Hence, they harmonize better with intu-
ition than the purely node-structural versions. As discussed in Section 2, the
node-structural Rand measure yields a very small value due to the high num-
ber of small cluster. However, this drawback appears to be remedied by the
graph-structural version.

6 Conclusion

The experimental evaluation confirms the drawbacks of node-structural mea-


sures while some graph-structural measures, i. e.,ESD, adjusted Rand, and Rand
perform more consistently with intuition. Furthermore, this is an indicator for
the feasibility of the graph-structural distance in applications such as dynamic
graph clustering. More precisely, since graph-structural measures incorporate
142 D. Delling et al.

both structural and qualitative aspects, they can be used as a foundation for clus-
tering in dynamic scenarios. Summarizing, extensions of node-structural mea-
sures are not trivial and need not lead to intuitive results. Furthermore, our
presented extensions are only suitable for comparing clusterings on the same
graph. In contrast, the editing set distance only requires the same node-set.
Thus, this improves the foundation for dynamic graph clusterings. Concluding,
this work is a first step towards a unifying comparison framework.

References
1. Brandes, U., Erlebach, T. (eds.): Network Analysis. LNCS, vol. 3418. Springer,
Heidelberg (2005)
2. Brandes, U., Gaertler, M., Wagner, D.: Experiments on Graph Clustering Algo-
rithms. In: Di Battista, G., Zwick, U. (eds.) ESA 2003. LNCS, vol. 2832, pp. 568–
579. Springer, Heidelberg (2003)
3. Clauset, A., Newman, M., Moore, C.: Finding community structure in very large
networks. Physical Review E 70(066111) (2004)
4. Cover, T., Thomas, J.: Elements of Information Theory. John Wiley & Sons, Inc.,
Chichester (1991)
5. Delling, D., Gaertler, M., Wagner, D.: Generating Significant Graph Clusterings.
In: European Conference of Complex Systems (ECCS 2006) (2006)
6. Fred, A., Jain, A.: Robust Data Clustering. In: IEEE Computer Society Conference
on Computer Vision and Pattern Recognition, CVPR, pp. 128–136 (2003)
7. Gaertler, M., Görke, R., Wagner, D.: Significance-Driven Graph Clustering. In:
Kao, M.-Y., Li, X.-Y. (eds.) AAIM 2007. LNCS, vol. 4508, pp. 11–26. Springer,
Heidelberg (2007)
8. Jain, A., Dubes, R.: Algorithms for Clustering Data. Prentice Hall, Englewood
Cliffs (1988)
9. Meila, M.: Comparing Clusterings by the Variation of Information. In: 16th Annual
Conference of Computational Learning Theory (COLT), pp. 173–187 (2003)
10. Meila, M.: Comparing Clusterings - An Axiomatic View. In: 22nd International
Conference on Machine Learning, Bonn, Germany, pp. 577–584 (2005)
11. Morey, R., Agresti, A.: The Measurement of Classification Agreement: An Adjust-
ment to the RAND Statistic for Chance Agreement. Educational and Psychological
Measurement 44, 33–37 (1984)
12. Rand, W.: Objective criteria for the evaluation of clustering methods. Journal of
the American Statistical Association 66, 846–850 (1971)
13. Strehl, A., Ghosh, J.: Cluster ensembles – a knowledge reuse framework for com-
bining multiple partitions. J. Mach. Learn. Res. 3, 583–617 (2003)
14. van Dongen, S.: A cluster algorithm for graphs. Tech. Report INS-R0010 (2000)
15. van Dongen, S.: Performance criteria for graph clustering and markov cluster exper-
iments. Technical Report INS-R0012, National Research Institute for Mathematics
and Computer Science in the Netherlands, Amsterdam (May 2000)
16. Vidal, M.: Interactome modeling. FEBS Lett. 579, 1834–1838 (2005)
17. Wagner, S., Wagner, D.: Comparing Clusterings – An Overview. Technical Report
2006-4, Faculty of Informatics, Universität Karlsruhe (TH) (2006)
On the Fast Searching Problem

Danny Dyer1 , Boting Yang2 , and Öznur Yaşar1


1
Department of Mathematics and Statistics,
Memorial University of Newfoundland
{dyer,oznur}@math.mun.ca
2
Department of Computer Science, University of Regina
[email protected]

Abstract. Edge searching is a graph problem that corresponds to clean-


ing a contaminated graph using the minimum number of searchers. We
define fast searching as a variant of this widely studied problem. Fast
searching corresponds to an internal monotone search in which every
edge is traversed exactly once and searchers are not allowed to jump.
We present a linear time algorithm to compute the fast search number
of trees. We investigate the fast search number of bipartite graphs. We
also propose a general cost function for evaluating search strategies that
utilizes both edge searching and fast searching.

1 Introduction
Assume that we want to secure a system of tunnels from a hidden intruder. We
can model this system as a graph where junctions correspond to vertices and
tunnels correspond to edges. We will launch a group of searchers into the system
in order to catch the intruder. Let G = (V, E) denote a graph where V is its
vertex set and E is its edge set. In this paper, we only consider finite connected
simple graphs. Definitions omitted here can be found in [13]. We assume that
every edge of G is contaminated initially and our aim is to clean the whole graph
by a sequence of steps. First we place a given set of k searchers on a subset of
V (allowing multiple searchers to be placed on any vertex). Each step of an
edge search strategy consists of either: removing a searcher from one vertex and
placing it on another vertex (a “jump”), or sliding a searcher from a vertex along
an edge to an adjacent vertex.
An edge search strategy is a combination of the moves defined above so that
the state of all edges being simultaneously clean is achieved, in which case we
say that the graph is cleaned. The problem becomes cleaning the graph using the
fewest searchers. The least number of searchers needed to clean the graph is the
edge search number of the graph and is denoted s(G). All models of searching
in this paper are variations of edge searching, so we will normally omit the term
“edge”.
If we are not allowed to remove a searcher from the graph, then we have an
internal search strategy, in which each move is to slide a searcher from a vertex
along an edge, to an adjacent vertex.

R. Fleischer and J. Xu (Eds.): AAIM 2008, LNCS 5034, pp. 143–154, 2008.

c Springer-Verlag Berlin Heidelberg 2008
144 D. Dyer, B. Yang, and Ö. Yaşar

If a searcher slides along an edge e = uv from u to v, then e is cleaned if either


(i) another searcher is stationed at u, or (ii) all other edges incident to u are al-
ready clean. If a searcher is stationed at a vertex v, then we say that v is guarded.
If a path does not contain any guarded vertex, then it is called an unguarded
path. If there is an unguarded path that contains one endpoint of a contaminated
edge and one endpoint of a cleaned edge e, then e gets recontaminated.
If we insist that once an edge becomes clean it must be kept clean until the
end of the searching strategy, then such a strategy will be called monotonic. If,
on the other hand, the set of clean edges induces a connected subgraph of G
after each step of the strategy, then the strategy will be a connected one.
One definition of an efficient way to clear a graph would be to do so in the
least number of steps. In particular, each edge would be traversed exactly once.
We define this new version of edge searching to be fast searching. A fast search
strategy for a graph G = (V, E) is a sequence of |E| moves that clear G. The
fast search number of G is the least number of searchers for which a fast search
strategy exists, and is denoted sf (G). Consequently, this must be an internal
monotone search where no edge is traversed more than once.
The edge searching problem is an extensively studied graph theoretical prob-
lem. Its origins date back to the late 1960s in works of Parsons [12] and Breisch
[5]. It was first faced by a group of spelunkers who were trying to find a person
lost in a system of caves. They were interested in the minimum number of people
they needed in the searching team.
It has been shown [4,10] that forcing a search to be monotonic does not change
the search number, hence we can always assume that edge search strategies are
monotonic. The relationships between the different strategies mentioned above is
examined in [3]. For a recent survey on graph searching and its variants, see [8].
The problem and its variants are related to many applications such as network
security [2]. It has strong connections with the cutwidth of a graph which arises
in VLSI design [6]. Because of its closeness with the layout problems, it is related
to graph parameters such as pathwidth [9].
This paper is organized as follows. In Section 2 we compare fast searching
with other searching models. In Section 3 we show that the fast search number
of trees can be found in linear time. In Section 4 we investigate the fast search
number of bipartite graphs. We give a motivation for fast searching in Section 5
involving a more generalized cost function. We conclude with some related open
problems in Section 6.

2 Properties

For any graph G, it is immediate from the definitions that s(G) ≤ sf (G). The gap
sf (G) − s(G) is zero for some graphs. For Kn , the complete graph on n vertices,
it is straightforward to show that sf (Kn ) = s(Kn ) = n if n ≥ 4. Furthermore,
it is known that the edge search number is critical for complete graphs, that is,
deleting a single edge from Kn will reduce the search number by one. We can
show that this also holds for the fast search number.
On the Fast Searching Problem 145

Proposition 1. For any e ∈ E(Kn ), sf (Kn − e) = n − 1.


On the other hand, sf (G) − s(G) can be arbitrarily large for some graphs. Con-
sider K1,n , the complete bipartite graph
 with bipartitions of size 1 and n. Then
s(K1,n ) = 2 whereas sf (K1,n ) = n2 .
Furthermore, there are graphs for which the connected fast search number

may be much larger than the fast search number.  n Construct G by subdividing
 
every edge of K1,n . Then s(G ) = 2, sf (G ) = 2 whereas the connected fast
search number is n − 1. Notice that this graph has a much smaller order than
the one in [14].
Let S denote a fast search strategy for G. Assume that λ denotes one of the
searchers used in S. We say that v is the start vertex for λ, if λ is initially placed
on v according to the strategy S. We say that u is the end vertex for λ, if λ
stops at u (and never moves again).
Let Vo be the set of vertices in G with odd degree. Observe that for each
vertex v ∈ Vo , there exists a searcher for which v is either a start or end vertex.
Otherwise one of the edges incident to v would be traversed at least twice. Since
it is possible that a searcher starts at a vertex in Vo and stops at another vertex
in Vo , we have the following:
Lemma 1. If Vo is the set of odd degree vertices in a graph G, then sf (G) ≥
|Vo |/2.
The theory built on graph minors plays an important role in edge searching.
Most variants of edge searching are minor closed. However this is not true for
fast searching. Figure 1 shows an example where G has a smaller fast search
number than its subgraph H. Hence fast searching is not even subgraph closed.
Notice that H has more odd vertices than G and due to Lemma 1 this result
is easy to achieve. On the other hand, the following example shows an instance
where the subgraph has much more even vertices than the original graph, but
has a much higher fast search number.
Example 1. Let Kn be a complete graph on n vertices where n is odd and
n ≥ 5. Let G = Kn 2K2 be the cartesian product of Kn and K2 . Let H be the
graph obtained from G by deleting n − 1 edges between the two maximal cliques
in G. Thus, all vertices in G have odd degree n, and in H, two vertices have odd
degree n and all other 2n − 2 vertices have even degree n − 1. We can show that

11
00 1
0 1
0 1
0
00
11 0
1 0
1 0
1
00
11 0
1 0
1 0
1

1
0 11
00 11
00 1
0
0
1 00
11 00
11 0
1
11
00 1
0 1
0 1
0
00
11 0
1 0
1 0
1
00
11 0
1 0
1 0
1
Fig. 1. The graph G on the left and its subgraph H on the right where sf (G) = 3 and
sf (H) = 5
146 D. Dyer, B. Yang, and Ö. Yaşar

n ≤ sf (G) ≤ n + 2 and sf (H) = 2n − 1. Thus, the difference sf (H) − sf (G)


can be arbitrarily large. Even more interesting, let G = Kn 2Pm , where Pm is a
path on m ≥ 2 vertices, and H be the graph that is a path of m copies of Kn
where any two consecutive Kn are connected by single edge. Then we can show
that sf (G) ≤ n + m and sf (H) = nm − m + 1. Hence, the ratio sf (H)/sf (G)
can be arbitrarily large.

3 Trees

For any graph G = (V, E), since v∈V deg(v) = 2|E|, we know that the number
of odd degree vertices in G must be even. For a tree T , the following algorithm
TP(T ) partitions T into edge disjoint paths such that the two end vertices of
each path have odd degree in T .
Algorithm TP(T )
1. Initially i = 1.
2. Arbitrarily select a leaf u in T . Let uv ∈ E(T ) be the edge incident on u.
Mark uv with color i and set T ← T − uv.
3. If v is an isolated vertex in T , then go to Step 4; otherwise, let vw ∈ E(T )
be an edge incident on v. Mark vw with color i, T ← T − vw, v ← w, and
go to Step 3.
4. If there is no leaf in T , then stop; otherwise, set i ← i + 1 and go to Step 2.

Lemma 2. The Algorithm TP(T ) defines a valid coloring for T and the edges
with the same color form a path such that the two end vertices of this path have
odd degree.

Proof. From Step 2, after an edge is colored, then it is deleted from the graph.
Thus every edge is colored at most once. Since the algorithm keeps running as
long as there is a leaf, every edge must be colored. Hence every edge is colored
exactly once. Let Pi be the graph formed by all the edges with color i. From
Step 3, we know that Pi is a path. From Steps 2 and 3, we know that both end
vertices of P1 have degree 1. Note that after we delete each edge of P1 from T ,
the odd-even degree state of each vertex in T does not change except for the end
vertices of P1 . Thus, a leaf vertex chosen by the algorithm as a start vertex for
P2 corresponds to either a leaf in the original T or a vertex with odd degree in T ,
and similarly, the other end vertex of P2 found by the algorithm also corresponds
to either a leaf in the original T or a vertex with odd degree in T . This holds for
every Pi , i ≥ 2. Hence both end vertices of every path have odd degree in T .  

Using the decomposition of Algorithm TP, we can compute a fast search strategy
as follows.
Algorithm FS(T )
1. Call TP(T ). Let k be the number of colors used by TP(T ) and Pi , 1 ≤ i ≤ k,
be the path formed by all edges with color i.
On the Fast Searching Problem 147

2. For each Pi , 1 ≤ i ≤ k, place searcher λi on one end of Pi .


3. Arbitrarily select a searcher, say λi , on a leaf, and slide it along Pi until it
stops at a vertex v whose degree is 1 in T , or whose degree is more than 2
in T and which contains only the searcher λi .
4. Update T by deleting from T all edges cleared by λi in Step 3 after λi slides
along these edges of Pi . If T contains no edges, then stop; otherwise, go to
Step 3.
We now prove the correctness of Algorithm FS.
Lemma 3. In Algorithm FS(T ), if T has at least one edge in Step 4, then when
the procedure goes back to Step 3, there must exist a path Pi such that the searcher
λi on a vertex u ∈ V (Pi ) can clear an edge of Pi incident on u by sliding along
this edge.
Proof. Suppose that there is one moment at which T has at least one edge and
every searcher is located on an isolated vertex or a vertex of degree more than 2
which is occupied by only one searcher. For any searcher λi , 1 ≤ i ≤ k, located
on an isolated vertex, we know that all the edges of Pi has been cleared and
deleted. Let F be the forest obtained from T by deleting all isolated vertices.
Note that each searcher on F must be located on a vertex that is occupied by
only one searcher and is incident with at least two different colored edges. Since
every connected component in F contains at least one searcher, we know that
each pair of leaves in F are incident on different colored edges. Thus, the number
of different colors in F is greater than or equal to the number of leaves in F .
Since the degree of every occupied vertex is more than 2, we know that the
number of leaves in F is greater than the number of searchers on F . Hence, the
number of different colors in F is greater than the number of searchers on F .
This contradicts the fact that each path of edges with the same color in F must
have one searcher. 

From the above two algorithms, we can show the fast search number of a tree.
Theorem 1. If T is a tree and Vo is the set of vertices in T with odd degree,
then sf (T ) = |Vo |/2.
Proof. Let k be the number of colors used by TP(T ). It follows from Lemma 2
that TP(T ) decomposes T into k edge disjoint paths Pi , 1 ≤ i ≤ k, such that the
two end vertices of each path have odd degree in T . From Lemma 3, we can use
k searchers to clear T in such a way that each path Pi is cleared by one searcher
sliding from one end of the path to the other end. Thus, sf (T ) ≤ k ≤ |Vo |/2.
On the other hand, it follows from Lemma 1 that sf (T ) ≥ |Vo |/2. Therefore,
sf (T ) = |Vo |/2. 

Theorem 2. Both Algorithm TP(T ) and Algorithm FS(T ) can be implemented
with linear time.
Proof. By modifying the depth-first-search algorithm, we know that Algorithm
TP(T ) can be implemented with linear time. For Algorithm FS(T ), Steps 1 and 2
148 D. Dyer, B. Yang, and Ö. Yaşar

take linear time. In Step 3, after a searcher slides along an edge, we can delete this
edge immediately. Since each edge is deleted exactly once, we know that Steps 3
and 4 take linear time. 


We can construct an infinite family of trees for which the gap between the search
number and the fast search number is big.
Example 2. Let T1 = K1,3 . Take three copies of T1 and choose a vertex of
degree one from each copy. Identify these three vertices to construct T2 . Continue
in an inductive fashion. Thus Tk is constructed from three copies of Tk−1 by
identifying a vertex of degree one from each copy.
By Parson’s lemma in [12], we can show that s(Tk ) = k + 1. Also, each vertex
in Tk are of degree 1 or 3. Thus V (Tk ) = Vo (Tk ). Since |V (Tk )| = 3k + 1, by
k
Theorem 1 we have sf (Tk ) = 3 2+1 .

4 Bipartite Graphs

In this section we consider complete bipartite graphs Km,n , m ≤ n and charac-


terize their fast search number. We start with the following initial cases where
m ≤ 2 or m = 4.

Lemma 4. If 1 ≤ m ≤ n, then
⎧n

⎪ 2 , m = 1,

2, m = n = 2,
sf (Km,n ) =

⎪ 3, m = 2, n ≥ 3,

6, m = 4, n ≥ 4.

Theorem 3. [1] If 3 ≤ m ≤ n, then s(Km,n ) = m + 2.

The next lemma gives an upper bound for even m where m ≥ 6.

Lemma 5. If 6 ≤ m ≤ n and m is even, then sf (Km,n ) ≤ m + 3.

Proof. Let Km,n have bipartition V1= {v1 , v2 , . . . , vm } and V2 = {u1 , u2 , . . . , un }.


We construct a fast search strategy that uses m + 3 searchers.
Denote the searchers as λ1 , λ2 , . . . , λm+3 . We clean the vertices in the order
u1 , u2 , . . . , un−1 , v1 , v2 , . . . , vm , un when n is even, and u1 , u2 , . . . , un−2 , v4 , v5 ,
. . . , vm , un−1 , v2 , v1 , un , v3 when n is odd.
First, place λ1 on v1 , λ2 on v2 and λ3 on v3 . Then place λ4 , λ5 , . . . , λm+3 on
u1 and then clean u1 by these searchers so that λ4 will be on v1 , λ5 will be on
v2 , . . . , and λm+3 will be on vm . We keep λ4 , λ5 , . . . , λm+3 on their respective
vertices until just before the end of the strategy. We clean u2 , u3 , . . . , un−1 by
moving λ1 , λ2 and λ3 .
Slide λ1 along the edge e = v1 u2 , λ2 along the edge e = v2 u2 and λ3 along the
edge e = v3 u3 . Keeping λ2 on u2 and λ3 on u3 , we clean all the edges between
{v4 , v5 , . . . , vm } and {u2 , u3 } by λ1 . Hence λ1 visits the following vertices in the
On the Fast Searching Problem 149

given order: u2 , v4 , u3 , v5 , u2 , v6 , u3 , . . . , vm−1 , u2 , vm , u3 . After this λ1 will end


up on u3 since the graph induced by {v4 , v5 , . . . , vm } and {u2 , u3 } contains an
Eulerian path and |{v4 , v5 , . . . , vm }| is odd. Next, λ1 will slide along u3 v1 . The
only dirty edge incident to u2 is u2 v3 , hence λ2 may slide along u2 v3 and clean
u2 . Similarly λ3 may slide along u3 v2 and clean u3 . Hence u2 and u3 are cleaned.
Next we clean u4 and u5 similarly. Slide λ1 along the edge e = v1 u4 , λ2 along
e = v3 u4 and λ3 along the edge e = v2 u5 . Keeping λ2 on u4 and λ3 on u5 , we
clean all the edges between {v4 , v5 , . . . , vm } and {u4 , u5 } by λ1 . Then, λ1 slides
along u5 v1 , λ2 slides along u4 v2 and λ3 slides along u5 v3 .
In the same way we clean u6 and u7 , u8 and u9 , and so on. If n is even, after
cleaning un−2 and un−1 we let λi slide along e = vi−3 un cleaning vi−3 for all
i = 4, 5, . . . , m + 3. In this way we finish cleaning un . When n is odd, we follow
a similar strategy. 

The next theorem shows that the bound in Lemma 5 is best possible.
Theorem 4. If 6 ≤ m ≤ n and m is even, then sf (Km,n ) = m + 3.
Proof. Lemma 5 states that sf (Km,n ) ≤ m + 3. From Theorem 3 we know that
m + 2 = s(Km,n ) ≤ sf (Km,n ), we only need to show that m + 2 searchers do
not suffice to fast search Km,n . We will use proof by contradiction. Suppose that
there exists a fast search strategy to clear Km,n that uses m + 2 searchers. Let
Km,n have bipartition V1 and V2 with |V1 | = m and |V2 | = n. Let u1 be the first
cleared vertex and t be the step at which u1 is cleared. We now consider the case
that u1 ∈ V2 . The case when u1 ∈ V1 can be proved similarly.
Since at t, only u1 is cleared and all vertices in V1 are dirty, each vertex of
V1 must be occupied by at least one searcher. Let us denote these searchers
as λ3 , λ4 , . . . , λm+2 . This accounts for m searchers. We show that no strategy
can clean the graph using m + 2 searchers by considering each placement of the
searchers λ1 and λ2 .
Case 1. Both of λ1 and λ2 are on V1 .
Case 1.1: Suppose that λ1 and λ2 are on the same vertex, say v1 . Since
fast searching is a monotone search and none of the searchers are located on
u2 , u3 , · · · , un , we see that all edges incident to these vertices are contaminated.
Since there are no parallel edges, we can slide λ1 and λ2 only to different vertices
in V2 , say u2 and u3 . After this step it is not possible to move any of the searchers
since they are all on vertices that have more than one contaminated edge incident
to them.
Case 1.2: Suppose that λ1 and λ2 are on different vertices, say v1 and v2
respectively. First assume that λ1 and λ2 slide to the same vertex, say u2 , at
steps t + 1 and t + 2 respectively. Then λ2 may leave u2 and slide to any vertex
other then v1 or v2 in V1 , say v3 at step t + 3. After this step λ1 is stuck on u2 .
At step t + 4, λ2 may slide to any vertex other then u1 , u2 in V2 and it is stuck
at that vertex.
Otherwise, let λ1 and λ2 slide to different vertices, say u2 and u3 . But since
u2 and u3 have at least two contaminated edges incident to them, neither λ1 nor
λ2 can move. Therefore all searchers are stuck at step t + 2.
150 D. Dyer, B. Yang, and Ö. Yaşar

Case 2. Both of λ1 and λ2 are on V2 .


Case 2.1: Suppose that λ1 and λ2 are both on u1 . None of the searchers can
move since u1 is clean and no edge is traversed twice.
Case 2.2: Suppose that λ1 and λ2 are on the same vertex u2 = u1 . If u2 has
more than two contaminated edges incident to it, then all searchers are stuck
after at most two steps since only one of the searchers, say λ1 can leave u2 ,
λ2 is stuck after this step and λ1 is stuck at step t + 2. If u2 has exactly two
contaminated edges incident to it, then u2 can be cleaned in the next two steps.
At the end of step t + 2, λ1 and λ2 are located on different vertices, say v1 and
v2 in V1 . If both of λ1 and λ2 move to different vertices in V2 , then they are both
stuck. Hence assume that λ1 slides along v1 u3 and λ2 slides along v2 u3 . Since
all edges incident to u3 were contaminated before step t + 4, only one searcher
can leave u3 at step t + 5. Hence at most six steps later all searchers are stuck. If
u2 has exactly one contaminated edge incident to it, only one searcher, say λ1 ,
can leave u2 and the other searcher is stuck. Similar to the previous cases, λ1 is
also stuck after two steps.
Case 2.3: Suppose that λ1 and λ2 are on different vertices, say u2 and u3
respectively, where u2 and u3 are both different from u1 . The searcher λ1 (resp.
λ2 ) can leave the vertex u2 (resp. u3 ) if and only if u2 (resp. u3 ) has exactly one
contaminated edge incident to it. When λ1 and λ2 move to the same vertex in
V1 , this subcase reduces to Subcase 1.1, and all searchers are stuck after at most
4 steps. Similarly when λ1 and λ2 move to different vertices in V1 , it reduces to
Subcase 1.2. and all searchers are stuck after at most 6 steps.
Case 2.4: Suppose that λ1 is on u1 and λ2 is on u2 , where u2 is different from
u1 . Now λ1 can not move since all edges incident to u1 are clean. If there is more
than one contaminated edge incident to u2 , then λ2 can not move. Otherwise, λ2
can slide along the only contaminated edge incident to it, say e = u2 v1 , at step
t + 1. At the next step, either λ2 or λ3 , say λ2 , can slide along any contaminated
edge incident to v1 , say v1 u3 . But none of the searchers can move after this step.
Case 3. The searcher λ1 is on v1 ∈ V1 and λ2 is on a vertex in V2 .
Case 3.1: Suppose that λ2 is on u1 . Then λ2 is stuck on u1 and λ1 can make
at most two moves.
Case 3.2: Suppose that λ2 is on u2 = u1 . If u2 has only one contaminated
edge incident to it, then there are two cases to consider. If that contaminated
edge is v1 u2 and it is cleaned next, then the problem reduces to Subcase 1.1 if λ2
slides to v1 or it reduces to Subcase 2.2 if λ1 slides to u2 . If v1 u2 is not cleaned
in the next step, then the only searcher that can move is λ1 and all the searchers
are stuck after this step. Otherwise if the contaminated edge is v2 u2 , then λ2
may slide along that edge and all searchers have the same positions as in Subcase
1.2. If u2 has exactly two contaminated edges incident to it, then the searchers
are stuck after at most one step in the case that none of these contaminated
edges are incident to v1 (only λ1 can move once). Otherwise, λ2 and λ1 are both
stuck at step t + 3. If there are three contaminated edges incident to u2 , then
the problem reduces to Subcase 1.2. 

On the Fast Searching Problem 151

Now we consider the complete bipartite graphs Km,n where 3 ≤ m ≤ n and m


is odd. Let us first give the following upper bound which can be obtained using
the same strategy used in Lemma 5.
Lemma 6. If 3 ≤ m ≤ n where m is odd and n is even, then sf (Km,n ) ≤ n + 3.
During the strategy given in Lemma 5, we cleaned the graph by decomposing it
into K2,m−3 ’s and the parity of m − 3 allowed us to use the same searcher in the
next K2,m−3 . However in this case when m is even, the parity of m − 3 forces
us to use a different searcher for all K2,m−3 to fast search the graph if the same
strategy is used.
We know that m + 2 = s(Km,n ) ≤ sf (Km,n ). On the other hand, when m is
odd, it follows from Lemma 1 that sf (Km,n ) is bounded below by m+n 2 when n
is odd and by n2 when n is even. This gives us another lower bound for sf (Km,n ).
Next we give another upper bound which improves Lemma 6 for some m and n.
Lemma 7. If 3 ≤ m ≤ n where m is odd, then
n
sf (Km,n ) ≤ m + .
2
Proof. Let Km,n have bipartition V1= {v1 , v2 , . . . , vm } and V2 = {u1 , u2 , . . . , un }.
Case 1: n = 4k + 1. Place m searchers on u1 and denote them as
λ2 , λ3 , . . . , λm+1 . Place a searcher, say λ1 , on v1 and a searcher on each of u2
and u3 , denoted as λm+2 and λm+3 respectively. Place a searcher on each of
u4l+2 and u4l+3 for l = 1, . . . , k − 1. In this way we use 2 new searchers for every
4 vertices in V2 \u1 . In total we use m + 1 + n−1 2 searchers.
First clean u1 so that each vertex in V1 contains a searcher, except for v1
which contains two searchers. Let λ1 traverse all edges of the Eulerian graph
induced by {v1 , v2 , . . . , vm−1 } and {u2 , u3 } and hence clean it. Now λm+2 may
slide along u2 vm and λm+3 may slide along u3 vm and clean u2 and u3 .
Next let λm+2 slide along vm u4 and λm+3 slide along vm u5 . Again, let λ1
clean all edges of the Eulerian graph induced by {v1 , v2 , . . . , vm−1 } and {u4 , u5 }.
This also cleans u4 and u5 .
We clean the graph by repeating this procedure for all of u4l+2 and u4l+3 where
l = 1, . . . , k −1. First clean the Eulerian graph induced by {v1 , v2 , . . . , vm−1 } and
{u4l+2 , u4l+3 } with λ1 . Move the searcher on u4l+2 along u4l+2 vm , vm u4l+4 and
the searcher on u4l+3 along u4l+3 vm , vm u4l+5 . Then clean the Eulerian graph
induced by {v1 , v2 , . . . , vm−1 } and {u4l+4 , u4l+5 } with λ1 .
Case 2: n = 4k+2. Place the searchers as in Case 1 hence m+1+ n−2 2 = m+ 2
n

searchers are placed on the graph. Clean all vertices in V2 except for un with
the same strategy used in Case 1. Observe that the only contaminated edges are
the ones incident to un and there is a searcher located on each vertex in V1 . We
let λ2 slide along v1 un and clean v1 . Then let λ3 slide along v2 un and clean v2 .
Similarly we clean all vertices in V1 and finally clean un .
Case 3: n = 4k + 3. Once again place the searchers as in Case 1. Place
another searcher on vm . Hence we used m + 1 + n−3 n+1
2 + 1 = m + 2 searchers.
Use the same strategy as in Case 1 to clean every vertex in V2 except for un−1
152 D. Dyer, B. Yang, and Ö. Yaşar

and un . Now there is a searcher on every vertex in V1 except for v1 and vm on


which there are two searchers. Then we let the two searchers on vm slide along
the only contaminated edges incident to vm which are vm un−1 and vm un , hence
cleaning vm . Finally, λ1 cleans the Eulerian graph induced by {v1 , v2 , . . . , vm−1 }
and {un−1 , un }. In this way the graph is cleaned totally.
Case 4: n = 4k. Place a searcher on every vertex in {v1 , v2 , . . ., vm−1 , u1 ,
u2 , . . ., u2k } and place a second searcher, say λ1 , on v1 . Hence we use m + n2
searchers. We let λ1 clean the Eulerian graph induced by {v1 , v2 , . . . , vm−1 } and
{u1 , u2 , . . ., u2k }. Then let each searcher λm+i located on ui ∈ {u1 , u2 , . . . , u2k }
slide along ui vm and clean {u1 , u2 , . . . , u2k }. Next let each λm+i slide along
vm u2k+i and clean vm . Now each vertex in {u2k+1 , u2k+2 , . . . , un } contains a
searcher. Then we let λ1 clean the Eulerian graph induced by {v1 , v2 , . . . , vm−1 }
and {u2k+1 , u2k+2 , . . . , un }. This cleans every vertex in Km,n . 


5 Cost Function
Given a graph G = (V, E), let s be the number of searchers used in a search
strategy to clean G. Certainly, s(G) ≤ s. For each value of s, there is a strategy
that clears G in the minimum number of steps; that is, the minimum time. We
define the minimum number of steps for each s to be t(s). Certainly, |E| ≤ t(s).
In some real-life scenarios, the cost of a searcher may be relatively low in
comparison to the cost of allowing an intruder to be free for a long period of
time. Thus, it may be beneficial to use more searchers than s(G). Since the
minimum number of steps to clear a graph is |E| (each edge must be cleared),
it will never be necessary to use more searchers than the minimum needed to
clear the graph in |E| steps. So we can bound the number of searchers above by
sf (G), giving s ≤ sf (G).
When we construct a cost function for searching we may consider the following
parameters: α, cost per searcher; β, cost per searcher per step; and γ, cost per
step. Several combinations of these parameters above can be considered. Fomin
and Golovach [7] introduced a cost function in the node searching problem, which
is the sum of the number of searchers in every step of the node search process.
For a fixed graph G, we choose to consider the following cost function in the
edge searching problem:

CG (s, t) = αs + βst + γt, (1)

where s(G) ≤ s ≤ sf (G) and t = t(s) ≥ |E|. Instead of trying to minimize s,


which corresponds to (edge) searching, or to minimize t, which corresponds to
fast searching, we may attempt to minimize CG . However, in order to formulate
these problems (and bound s) it is necessary to know both the search number
and the fast search number.
Consider the n-star, K1,n , where n ≥ 3. We recall that s(K1,n ) = 2, and that
sf (K1,n ) = n2 . It is not difficult to see that if 2 ≤ s ≤ n2 , then the minimum
number of steps for such a strategy is t(s) = 2n − 2s. (The s searchers would
begin at distinct leaves of the graph, and then traverse the edges to the central
On the Fast Searching Problem 153

vertex, using s moves. They would then use 2 moves, moving out from and then
back towards the central vertex, for each of n − 2s pendant edges. Finally, each
searcher would move out from the central vertex along one of the s remaining
pendant edges.)
Substituting into (1), we obtain
CK1,n (s) = αs + βs(2n − 2s) + γ(2n − 2s) = −2βs2 + (α + 2nβ − 2γ)s + 2nγ. (2)
But this is clearly a quadratic function in s, which has a maximum value at its
critical point. We obtain its minimum value at the minimum or maximum value
for s, that is when either s = 2 or s = n2 . (Both are possible depending on
choice of α, β, and γ.)
More informally, the cost of cleaning the n-stars is minimized by either treat-
ing it as an edge searching problem, when searchers are expensive and time is
cheap, or by treating it as a fast searching problem when searchers are cheap
and time is expensive.

6 Conclusion and Open Problems


In this paper we introduced fast searching as a variant of edge searching and
proposed a cost function that generalizes the searching problem. We show that
the fast search number of trees can be computed in linear time.
We have proven several results on the fast search number of complete bipartite
graphs. When m is even and 6 ≤ m ≤ n, we have sf (Km,n ) = m + 3. When m
is odd, n is even and 3 ≤ m ≤ n, we have
n n
max m + 2, ≤ sf (Km,n ) ≤ min n + 3, m + (3)
2 2
When m and n are odd and 3 ≤ m ≤ n, we have

m+n n+1
max m + 2, ≤ sf (Km,n ) ≤ m + (4)
2 2
The gaps in Equations 3 and 4 may be large depending on m and n. It remains
open to reduce these gaps to a small constant which does not depend on m and n.
It will also be interesting to investigate the fast search number of other classes
of graphs, such as grids and cartesian products. Besides the fact that much is
known about the search number of these graphs, knowing the fast search number
will allow us to examine cost functions as well.
Given a graph G and an integer k, the problem of deciding whether s(G) is
at most k is NP-complete [4,10,11]. We conjecture that the problem of deciding
whether sf (G) is at most k is also NP-complete.

References
1. Alspach, B., Dyer, D., Hanson, D., Yang, B.: Lower bounds on edge searching. In:
Chen, B., Paterson, M., Zhang, G. (eds.) ESCAPE 2007. LNCS, vol. 4614, pp.
516–527. Springer, Heidelberg (2007)
154 D. Dyer, B. Yang, and Ö. Yaşar

2. Barrière, L., Flocchini, P., Fraigniaud, P., Santoro, N.: Capture of an intruder by
mobile agents. In: Proceedings of the 14th annual ACM symposium on Parallel
algorithms and architectures (SPAA 2002), pp. 200–209 (2002)
3. Barrière, L., Fraigniaud, P., Santoro, N., Thilikos, D.: Searching is not Jumping. In:
Bodlaender, H.L. (ed.) WG 2003. LNCS, vol. 2880, pp. 34–45. Springer, Heidelberg
(2003)
4. Bienstock, D., Seymour, P.: Monotonicity in Graph Searching. Journal of Algo-
rithms 12, 239–245 (1991)
5. Breisch, R.L.: An intuitive approach to speleotopology. Southwestern Cavers 6,
72–78 (1967)
6. Chung, F.: On the cutwidth and the topological bandwidth of a tree. SIAM J.
Algebraic Discrete Methods 6, 268–277 (1985)
7. Fomin, F.V., Golovach, P.A.: Interval completion and graph searching. SIAM Jour-
nal on Discrete Mathematics 13, 454–464 (2000)
8. Fomin, F.V., Thilikos, D.M.: An annotated bibliography on guaranteed graph
searching. Theoretical Computer Science, Special Issue on Graph Searching (sub-
mitted on November 2007)
9. Kinnersley, N.G.: The Vertex Separation Number of a graph equals its path-width.
Information Processing Letters 42, 345–350 (1992)
10. LaPaugh, A.S.: Recontamination does not help to search a graph. Journal of
ACM 40, 224–245 (1993)
11. Megiddo, N., Hakimi, S.L., Garey, M.R., Johnson, D.S., Papadimitriou, C.H.: The
Complexity of Searching a Graph. Journal of ACM 35, 18–44 (1988)
12. Parsons, T.: Pursuit-evasion in a graph. In: Theory and Applications of Graphs.
Lecture Notes in Mathematics, pp. 426–441. Springer, Heidelberg (1976)
13. West, D.B.: Introduction to Graph Theory. Prentice Hall, Englewood Cliffs (1996)
14. Yang, B., Dyer, D., Alspach, B.: Sweeping graphs with large clique number. In:
Fleischer, R., Trippen, G. (eds.) ISAAC 2004. LNCS, vol. 3341, pp. 908–920.
Springer, Heidelberg (2004)
Confidently Cutting a Cake into
Approximately Fair Pieces

Jeff Edmonds1 , Kirk Pruhs2, , and Jaisingh Solanki1


1
Department of Computer Science and Engineering
York University
[email protected]
2
Computer Science Department
University of Pittsburgh
[email protected]

Abstract. We give a randomized protocol for the classic cake cutting


problem that guarantees approximate proportional fairness, and with
high probability uses a linear number of cuts.

1 Introduction
The classic cake cutting problems originated in the 1940’s in the Polish mathe-
matics community and involves fairly apportioning valuable resources (the cake)
when there is not an agreed upon value of the resources. The analogy of cake
was used because of the well known phenomenon of people valuing frosting and
cake differently. Cake cutting is widely studied within the social sciences because
of the obvious importance of fairly dividing resources, and is widely studied in
the mathematical sciences because of the elegance of the problems. There are
several books written on cake cutting, and related fair allocation problems (See,
for example, [3,12]). Because of the inherent interest of cake cutting problems to
a wide audience, cake cutting is often taught in discrete mathematics courses,
and often appears in the media in shows that try to popularize mathematics.
For example, in the “One Hour” episode of the TV show Numb3rs, the lead FBI
agent uses his understanding of cake cutting algorithms to deduce the portion
of the ransom received by the head of a kidnapping conspiracy. 1
The setting for the cake cutting problem involves a continuous resource mod-
eled by the unit interval, n players, a value function Vp for each player p, and
a referee protocol. The value function for each player specifies how much that
player values each subinterval of the cake. A piece is a union of disjoint subin-
tervals, and the value function is additive, so that the value of a piece is the sum
of the values of the underlying subintervals. The value functions are initially
unknown to the referee. The standard operation is a cut query, in which the

Supported in part by NSF grants CNS-0325353, CCF-0514058 and IIS-0534531.
1
Although, as is often the case in this show, the application of mathematics is designed
to aid the plot development, and is not necessarily designed to satisfy mathemati-
cian’s sensibilities.

R. Fleischer and J. Xu (Eds.): AAIM 2008, LNCS 5034, pp. 155–164, 2008.

c Springer-Verlag Berlin Heidelberg 2008
156 J. Edmonds, K. Pruhs, and J. Solanki

referee asks the player to identify the shortest subinterval with a fixed value and
a fixed left endpoint. We assume here that the players answer queries honestly
(for more discussion of this issue, see section 2). After the cut queries, the referee
partitions the resulting subintervals among the players. The referee’s goal is to
fairly apportion the cake among the players. There are several notions of fairness
in the literature, but the original, and most basic, notion is that of proportional
fairness. An apportionment is proportionally fair, or simply proportional if each
player believes that his piece is worth at least 1/n of the total value of the cake,
according to that player’s value function. In this paper, we consider the notion
of approximate fairness. We will say that an apportionment is c-fair fair if each
player believes that his piece is worth at least 1/(cn) of the total value of the
cake, according to that player’s value function. We will say that a referee protocol
is approximately fair if there exists some constant c ≥ 1 such that the protocol
guarantees a c-fair apportionment. We are interested in the query complexity of
a referee protocol, which is the worst-case number of queries required to achieve
a fair allocation for each player.
A deterministic proportional protocol with query complexity Θ(n2 ) was given
in 1948 by Steinhaus in [14]. In 1984, Even and Paz [6] gave a deterministic
divide and conquer proportional protocol that has query complexity Θ(n log n).
Recently, there has been several papers [7,13,4] that give lower bounds on the
query complexity for proportional cake cutting. Sgall and Woeginger [13] showed
that every proportional protocol (deterministic or randomized) has query com-
plexity Ω(n log n) if each player must receive a contiguous piece of the cake.
Edmonds and Pruhs [4] show that the query complexity of every deterministic
approximately-fair protocol is Ω(n log n).
This left open the question of whether approximate-fairness was achievable
by a randomized protocol with query complexity O(n). In the subsequent paper
[5], Edmonds and Pruhs was settled this question in the affirmative by giving a
randomized approximately-fair protocol with expected query complexity O(n).
This protocol was based on the following theorem:
Lemma 1 (Balanced Allocation Lemma [5]). Let α ≥ 17 be some suffi-
ciently large constant. Assume each of the n players conceptually partitions the
unit interval into αn disjoint candidate subintervals/pieces of equal value. Then
assume that each player independently picks d = 2d = 4 of her candidate pieces
uniformly at random, with replacement. Then there is an efficient apportionment
method that, with probability Ω(1), assigns each player one final piece of her d
candidate pieces, so that every point on the cake is covered by at most 2 players.
Once overlap of O(1) is achieved for every point of the cake, one can achieve
approximate fairness with linearly more queries by using any proportional al-
gorithm to apportion the portions of cake where there is contention among the
final pieces. By applying the Edmonds and Pruhs Balanced Allocation Theorem
until a successful apportionment is possible, one get expected query complexity
of O(n). This is because each application of the Balanced Allocation Theorem
has complexity O(n), and the number of applications until a success is a geo-
metrically distributed random variable with probability of success Ω(1).
Confidently Cutting a Cake into Approximately Fair Pieces 157

However, several referees of [5] complained that in order to have high con-
fidence of success one would have to apply the Balanced Allocation Theorem
Ω(log n) times, and thus if one accepts the requirement that a randomized al-
gorithm should succeed with high probability, then this randomized algorithm
would have no better query complexity than the Evan and Paz deterministic
algorithm. In the context of this paper, high probability of success means that
the probability of failure, as a function of n, should approach zero as n increases.
In this paper, we answer the referees of [5] by showing the following high
confidence version of the Balanced Allocation Lemma in [5].

Lemma 2 (High Confidence Balanced Allocation Lemma). Let α ≥ 17


be some sufficiently large constant. Assume each of the n players conceptually
partitions the unit interval into αn disjoint candidate subintervals of equal value.
Each player independently picks d = k × 2 × 2d = 8k of her pieces uniformly at
random, with replacement. Then there is an efficient method that, with probability
(1 − O( n1k )), picks one of the d subintervals for each player, so that every point
on the cake is covered by at most 4 players.

The rest of the paper is organized as follows. In section 2 we discuss some


other related results, and explain how the standard balls and bins model is a
special case of cake cutting. In section 3 we briefly explain how [5] obtained a
(low confidence) proof of the Balanced Allocation Lemma for cake. In section
4 we give a protocol, which turns out to be a rather simple modification of
the protocol in [5], that establishes the High Confidence Balanced Allocation
Lemma. We discovered the simple protocol in section 4 after much effort on
another approach. We briefly discuss this other approach in section 5 because
we believe that it poses some interesting open questions.

2 Other Related Work

The lower bound proofs in [13,4] also allow the referee to make evaluation queries,
which ask a player to state their value for a particular piece. Edmonds and
Pruhs [4] also showed that every randomized approximately-fair protocol has
query complexity Ω(n log n) if answers to the queries asked by protocol are
approximations to actual answers. Approximately fair protocols were introduced
by Robertson and Webb [11]. There is deterministic protocol [11,10,15] that
achieves approximate-fairness with Θ(n) cuts and Θ(n2 ) evaluations. There are
several other notions of fairness studied in the cake cutting setting, most notably
envy-free fairness. There are known finite complexity protocols for envy-free
divisions, but no bounded complexity protocols are known (See, for example, [3]
for details). The cake cutting problem is often defined so that the players do
not need to answer the queries truthfully. For deterministic protocols, lying is
generally a non-issue since it is easy to catch any form of lying that would mess
up the standard protocols (See [3] for details). But for randomized protocols, it
seems much more difficult to catch cheaters.
158 J. Edmonds, K. Pruhs, and J. Solanki

In the multiple-choice balls and bins model, d of αn discrete bins are selected
for each ball uniformly at random. Then we select one bin out of d bins such
that maximum number of balls in any bin is minimized. There is an efficient
procedure, essentially a matching algorithm for a bipartite graph, that picks one
of the d bins for each player so that maximum number of balls in any bin is O(1),
1
with probability (1−O( poly(n) )). [2]. The balls and bins model is equivalent to the
special case of the cake model in which all the players value the cake uniformly.
Analysis of the balls and bins model has found wide applications in areas such
as load balancing [8]. In these situations, a ball represents a job that can be
assigned to various bins/machines/servers. Roughly speaking, load balancing of
identical machines is to balls and bins, as load balancing on unrelated machines
is to cake cutting. In the unrelated machine model, the speed that a machine
runs a job depends on the job. So the jobs may not agree on the values of the
various machines. Unrelated machines is one of the standard models in the load
balancing literature [1].
In the balls and bins model, the maximum number of balls in any bin is
θ( logloglogn n ) with probability (1 − O( poly(n)
1
)) [9]. Assume n balls are thrown se-
quentially into n bins, each ball is placed in the least full bin at the time of the
placement, among d bins, d ≥ 2, chosen independently and uniformly at random.
Then after all the balls are placed, the maximum number of balls in any bin is
θ( logloglogd n ) with probability Ω(1 − poly(n)
1
). [2].

3 The Original Balanced Allocation Lemma for Cake

We now outline the protocol and analysis that establishes the Balanced Alloca-
tion Lemma in [5]. Note this protocol uses two graphs, the implication graph,
and the same-player-vee graph, and some graph theoretic definitions, that we
will define after the protocol.
Edmonds-Pruhs Protocol:
– Step 1: Independently, for each player p ∈ [1, n] and each r ∈ [0, 1], ran-
domly choose d = 2 of the candidate pieces cp,i to be in the quarterfinal
bracket Ap,r . Thus each player has two quarterfinals brackets, each con-
taining two intervals.
– Step 2: In each quarterfinal bracket Ap,r , pick as the semifinal piece ap,r ,
the piece that intersects the fewest other candidate pieces cq,j . Thus each
player is left with two semifinal intervals.
– Step 3: Form the implication graph and same-player-vee graph for the semi-
final pieces
– Step 4: If implication graph contains a pair path of length greater than or
equal to 3, then admit failure.
– Step 5: If same-player-vee graph is not w = 2 colorable, then admit failure.
– Step 6: Let Sh be the subgraph of the implication graph containing only
those players colored h, in the same-player-vee graph. This ensures that
implication graph restricted to Sh contains no pair paths of length 2.
Confidently Cutting a Cake into Approximately Fair Pieces 159

– Step 7: For each Sh , pick the final piece for each player involved in Sh by
applying the Final Piece Selection Algorithm to Sh .
We now turn to the graph theoretic notions used in this protocol. The vertices
of the implication graph IG are the 2n pieces ap,r , 1 ≤ p ≤ n and 0 ≤ r ≤ 1,
and if piece ap,r intersects piece aq,s , then there is a directed edge from piece
ap,r to piece aq,1−s , and similarly from aq,s to ap,1−r . The intuition behind
the this definition is that if a player p gets ap,r as her final piece, then player
q must get piece aq,1−s if p’s and q’s pieces are not to overlap. Similarly if
q gets aq,s , then p must get ap,1−r . As an example, Figure 1 gives a subset
of the semifinal pieces selected from the candidate pieces. The corresponding
implication graph is also given in Figure 1. A pair path in an implication graph
is a directed path between two pieces for one player.

a <4,0> a<4,1>
a <3,0> a<3,1>

a <2,1> a <2,0>

a <1,0> a <1,1>

a <1,0> a <2,0> a <3,0> a <4,0>

a <1,1> a <2,1> a <3,1> a <4,1>

Fig. 1. Players’ two selected pieces and corresponding implication graph

In Figure 1, there are two pair paths of length three from the first player’s left
semifinal piece to her right and two pair paths of length two from the fourth player’s
left semifinal piece to her right. Pair paths are problematic because they effectively
imply that if the first player gets her left semifinal piece as his final piece then she
must get her right piece too. Edmonds and Pruhs [5] prove that if the implication
graph IG does not contain pair paths then the following algorithm selects a final
piece for each player in such a way that these final pieces are disjoint.

Final Piece Selection Algorithm: We repeatedly pick an arbitrary player p


that has not selected a final piece. We pick the piece ap,0 as the final piece for
p. Further, we pick as final pieces all those pieces in IG that are reachable from
ap,0 in IG.
If edges in the implication graph were independent, then we could bound the
probability of a pair path as in the balls and bins case:

n   z
n 1 1
Prob[IG contain pair paths] ≈ ≈ .
z=2
z αn α(α − 1)
160 J. Edmonds, K. Pruhs, and J. Solanki

Unfortunately, edges in the implication graph are not statistically independent.


For example, if all of player B and player C’s pieces are contained in one can-
didate piece P for player A, then the existence of an edge involving A and B
would mean that player A picked candidate piece P , and thus thus there must
be an edge involving player A and player C. Nevertheless, [5] show that, in spite
of the statistical dependencies of edges, the above calculation of the probability
of a pair path does give approximately the right answer.
First, [5] observed the vital difference between pair paths of length two and
pair paths of length three or more. Note that a pair path occurs when there
is a vee among the semifinal pieces. [5] defined a vee to consist of a triple of
pieces, one center piece and two base pieces, with the property that the center
piece intersects both of the base two pieces. [5] proved the following lemma that
bounds the expected number of vees in the implication graph.

Lemma 3. If each player only chooses 2 semifinal pieces then the expected num-
ber of vees in IG can be as high as Θ(n2 ), which would be disastrous. However,
if two brackets of d = 2 pieces are chosen and these are narrowed down to two
3
semifinal piece then the expected number of vees in IG is at most 16d
α2 n.

Using Lemma 3 [5] proved the following lemma that bounds the probability of
implication graph having pair paths of length three or more.

Lemma 4. The probability that the implication graph IG contains a pair path
32d5
of length at least three is at most α2 (α−4d 2) .

A pair path of length two occurs if and only if the implication graph con-
tains a same-player-vee. A same-player-vee is a vee where both of the base
pieces belong to the same player. That is, there is a center piece ap,r and
two bases aq,0 and aq,1 . For example, see pieces a4,0 , a2,0 and a2,1 in
Figure 1. To get around the problem of same-player-vees, they introduced the
same-player-vee graph. The vertices of the same-player-vee graph SG are the
n players p, 1 ≤ p ≤ n, and if player p and player q are involved in same-
player-vee with player p in the center then there is a directed edge from p
to q. [5] show how to partition the players into two groups such that there
is no same-player-vee involving two players in the same partition. [5] proved
Lemma 5 by bounding the probability of same-player-vee graph having a path of
length two.

Lemma 5. The probability that the same-player-vee graph is not w = 2 colorable


3
8d2
is at most 16d
α3 + α2 .

Finally, because the implication graph on Sh contains no pair paths of any length,
the Edmonds-Pruhs protocol ensures that the final piece of at most one player
from Sh covers this point. We can then conclude that for any point in the cake,
the final pieces of at most w = 2 players cover this point.
Confidently Cutting a Cake into Approximately Fair Pieces 161

4 The High Confidence Balanced Allocation Lemma

In this section we give a modification of the Edmonds-Pruhs protocol that will


establish the High Confidence Balanced Allocation Lemma for cake. A key con-
cept in the proof of correctness of the Edmonds-Pruhs protocol is the concept
of a bad player. A player p is bad if a pair path of length three or more starting
with p exists in the implication graph, or a path of length two or more starting
with p exists in the same-player-vee graph. Edmonds and Pruhs [5] proved that
for some constant c, larger than 1, the probability that a particular player is bad
1
is at most cn . We modify the Edmonds-Pruhs protocol in [5] in the following
ways:
Modified Edmonds-Pruhs Protocol:
– We make two independent runs of the protocol.
– In each run, after the formation of the implication graph and the same-
player-vee graph, we remove all bad players. Because of this modification,
some players (the ones that are bad in both runs) may not be assigned a
candidate piece.
After these two separate runs, some players may be assigned two final pieces,
one from each run. In this case, the player need only keep the final piece from
the first run. But the key fact is that no point of the cake is covered by more
than four candidate pieces, since each run guarantees contention at most two. As
before we can then use any proportionally fair protocol to divided the portions
of the cake where the final pieces overlap. A flow chart of this protocol is given
in Figure 2.
We can then simply calculate the probability that one iteration of this modi-
fied protocol fails to assign a final piece to every player:

Prob[M odif ied Edmonds P ruhs protocol f ails]


≤ Prob[there exists a player p that is bad in both runs]
≤ n × Prob[player p is bad in both runs]
≤ n × (Prob[player p is bad in one run])2
≤ n × O( n1 )2
= O( n1 )

Thus the probability that the Modified-Edmonds-Pruhs protocol does not suc-
ceed after k applications is at most O( n1k ).

5 Initial Unsuccessful Approach

To us, the most obvious way to modify the Edmonds-Pruhs protocol to obtain
a high confidence result was to show that the same-player-vee graph is O(1)-
colorable with high probability, and to show that the implication graph does not
have a pair-path with high probability. We were able to accomplish the former
in Lemma 6 by slightly modifying the protocol. But the latter is unfortunately
false, there can be pair-paths with high probability.
162 J. Edmonds, K. Pruhs, and J. Solanki

Protocol

........
Execution 1

E E
X X
E E
Run 1 Run 2
C C
U U
Bracket 1: Each player randomly Bracket 2: Each player randomly Bracket 1: Each player randomly Bracket 2: Each player randomly T T
select a bracket of d pieces of select a bracket of d pieces of select a bracket of d pieces of select a bracket of d pieces of I I
value α1n value α1n value α1n value α1n O
O
N N
2 k
Select one semifinal Select one semifinal Select one semifinal Select one semifinal
piece from Bracket 1 piece from Bracket 2 piece from Bracket 1 piece from Bracket 2

From 2n semfinal pieces, build implication From 2n semfinal pieces, build implication
graph IG and same−player−vee graph SG graph IG and same−player−vee graph SG

Remove bad players from IG and SG Interaction Remove bad players from IG and SG

........
If some player is bad in
both the runs then HALT

If some player is good in both the


runs then remove it her from Run 1

Updated IG and SG from Run 1 Updated IG and SG from Run 1

Colour SG with red and blue colours Colour SG with red and blue colours

IG for red players IG for blue players IG for red players IG for blue players

Select final piece for each of these


players without any overlap
Select final piece for each of these
players without any overlap
Select final piece for each of these
players without any overlap
Select final piece for each of these
players without any overlap
........

Merge answer for 4 types of players. Each player has


a piece of value 1 Maximum overlap is 4.
αn

Probability of HALT < 0( 1n )

Select the first successful Execution

Remove conflicts. Each player has a portion


of value 1 . Portions are disjoint
4α n

Probability of failure < O( 1 k )


n

Fig. 2. Flowchart of Our Protocol

Lemma 6. Let α ≥ 10 be some sufficiently large constant. Assume that each


player conceptually partitions the unit interval into αn disjoint candidate subinter-
vals/pieces of equal value. Each player then independently picks d = 3d = 6 of her
pieces uniformly at random, with replacement. There is then an efficient method
that, with probability at least (1 − O( n1 )), chooses three of the d pieces for each
player, and then narrows down two pieces for each player, so that same-player-vee
graph build from these chosen pieces can be colored by at most two colors.
Confidently Cutting a Cake into Approximately Fair Pieces 163

After some reflection, it is clear that a pair path in the implication graph, in and
of itself, is not a problem. A pair path from ap,r to ap,1−r just implies that we
should select ap,1−r for player p. However, a directed path in both directions,
from ap,0 to ap,1 and from ap,1 to ap,0 is problematic since the selection
of either piece requires the selection of the other. This leads us to the following
definition.

Pair Cycle:A pair cycle in the implication graph is a directed cycle containing
both semifinal pieces ap,0 and ap,1 for some player p.
It is not to difficult to see that if the implication graph IG does not contain
pair cycle then one can modify the Final Piece Selection Algorithm so that
it can select a disjoint final piece for each player. Further, if the edges in the
implication graph were independent, using our standard calculations, we find
that the probability of a pair-cycle would be O( n1 ):

n    z  
n 1 1
Prob[IG contain a pair cycle] ≈ ≈Θ
z=2
z − 1 αn n

The reason that this calculation gives Θ(1) for a pair-path and Θ( n1 ) for a
pair-cycle is that a pair-cycle has one more edge relative to the number of ver-
tices than does a pair-path. While we know that the edges are not independent,
this calculation did give approximately the right probability for a pair-path,
and we the saw no reason why this calculation shouldn’t also give approxi-
mately the right calculation for a pair-cycle. This led us to the following natural
conjecture:

Conjecture 1. The probability that for some player p, we have pair paths of
length at least three from ap,0 to ap,1 and from ap,1 to ap,0 in the implica-
tion graph IG is at most O( n1 ).

Recall that pair cycle requires that at least one player’s both semifinal pieces
have to be present in it. In Lemma 7, we were able to prove Conjecture 1 in
the case where exactly one player’s both semifinal pieces are present in the pair
cycle.

Lemma 7. The probability that for some player p we have pair paths of length
at least three from ap,0 to ap,1 and from ap,1 to ap,0 in the implication
graph IG and except player p there is no common player involved in both the
pair paths, is at most O( n1 ).

Our intuition is that the probability of having more than one player repeating
in a pair cycle is not so high. But we are unable to prove this. More generally,
we wonder whether the selection of the semifinal pieces from the quarterfinal
pieces (by throwing out pieces that overlap the most other pieces) leave with
a collection of pieces that essentially have the same graph properties as in the
balls and bins model.
164 J. Edmonds, K. Pruhs, and J. Solanki

References
1. Azar, Y.: On-line Load Balancing. In: Online Algorithms - The State of the Art,
pp. 178–195. Springer, Heidelberg (1998)
2. Azar, Y., Broder, A., Karlin, A., Upfal, E.: Balanced Allocations. SIAM Journal
of Computing 29, 180–200 (2000)
3. Brams, S.J., Taylor, A.D.: Fair Division – From cake cutting to dispute resolution.
Cambridge University Press, Cambridge (1996)
4. Edmonds, J., Pruhs, K.: Cake cutting really isn’t a piece of cake. In: Proceedings
of the 17th Annual ACM-SIAM Symposium on Discrete Algorithms (SODA 2006)
(2006)
5. Edmonds, J., Pruhs, K.: Balanced Allocations of Cake. In: Proceedings of the 47th
Annual IEEE Symposium on Foundations of Computer Science (FOCS 2006), pp.
623–634 (2006)
6. Even, S., Paz, A.: A note on cake cutting. Discrete Applied Mathematics 7, 285–296
(1984)
7. Magdon-Ismail, M., Busch, C., Krishnamoorthy, M.S.: Cake cutting is not a piece
of cake. In: Alt, H., Habib, M. (eds.) STACS 2003. LNCS, vol. 2607, pp. 596–607.
Springer, Heidelberg (2003)
8. Mitzenmacher, M., Richa, A., Sitaraman, R.: The power of two random choices: A
survey of the techniques and results. In: Pardalos, P., Rajasekaran, S., Rolim, J.
(eds.) Handbook of Randomized Computing, Kluwer, Dordrecht (2000)
9. Johnson, N., Kotz, S.: Urn Models and Their Application. John Wiley and Sons,
Chichester (1977)
10. Krumke, S.O., Lipmann, M., de Paepe, W., Poensgen, D., Rambau, J., Stougie,
L., Woeginger, G.J.: How to cut a cake almost fairly. In: Proceedings of the 13th
Annual ACM-SIAM Symposium on Discrete Algorithms (SODA 2002), pp. 263–
264 (2002)
11. Robertson, J.M., Webb, W.A.: Approximating fair division with a limited number
of cuts. Journal of Combinatorial Theory, Series A 72, 340–344 (1995)
12. Robertson, J.M., Webb, W.A.: Cake-cutting algorithms: Be fair if you can. A.K.
Peters Ltd. (1998)
13. Sgall, J., Woeginger, G.J.: A Lower Bound for Cake Cutting. In: Di Battista, G.,
Zwick, U. (eds.) ESA 2003. LNCS, vol. 2832, pp. 459–469. Springer, Heidelberg
(2003)
14. Steinhaus, H.: The problem of fair division. Econometrica 16, 101–104 (1948)
15. Woeginger, G.J.: An approximation scheme for cake division with a linear number
of cuts. In: Möhring, R.H., Raman, R. (eds.) ESA 2002. LNCS, vol. 2461, pp.
896–901. Springer, Heidelberg (2002)
Copeland Voting Fully Resists
Constructive Control

Piotr Faliszewski1 , Edith Hemaspaandra2,


Lane A. Hemaspaandra1, and Jörg Rothe3
1
Dept. of Computer Science, University of Rochester, Rochester, NY 14627, USA
2
Dept. of Computer Science, RIT, Rochester, NY 14623, USA
3
Inst. für Informatik, Universität Düsseldorf, 40225 Düsseldorf, Germany

Abstract. Control and bribery are settings in which an external agent


seeks to influence the outcome of an election. Faliszewski et al. [9] proved
that Llull voting (which is here denoted by Copeland1 ) and a variant
(here denoted by Copeland0 ) of Copeland voting are computationally
resistant to many, yet not all, types of constructive control and that
they also provide broad resistance to bribery. We study a parameterized
version of Copeland voting, denoted by Copelandα , where the parameter
α is a rational number between 0 and 1 that specifies how ties are valued
in the pairwise comparisons of candidates in Copeland elections. For each
rational α, 0 < α < 1, and each previously studied control scenario, we
either prove that Copelandα is computationally vulnerable to control in
that scenario (i.e., we give a P-time algorithm that determines whether
control is possible, and if so, determines exactly how to exert the control)
or we prove that Copelandα is computationally resistant to control in
that scenario (i.e., we prove that control problem to be NP-hard). In
particular, we prove that Copeland0.5 , the system commonly referred to
as “Copeland voting,” provides full resistance to constructive control.
Among systems with a polynomial-time winner problem, this is the first
natural election system proven to have full resistance to constructive
control. Looking at rational α, 0 < α < 1, we give a broad set of results
on bribery and on the fixed-parameter tractability of bounded-case
control for Copelandα (previously only Copeland0 and Copeland1 had
been studied), and we introduce and obtain fixed-parameter tractability
results even in a new, more flexible model of control (that we dub
“extended control”).

Keywords: Computational social choice theory; preference aggregation;


multiagent systems.

Supported in part by DFG grants RO-1202/9-3 and RO-1202/11-1, NSF
grants CCR-0311021, CCF-0426761, and IIS-0713061, the Alexander von Hum-
boldt Foundation’s TransCoop program, and two Friedrich Wilhelm Bessel Re-
search Awards. URLs: www.cs.rochester.edu/u/{pfali, lane} (Piotr Faliszewski
and Lane A. Hemaspaandra), www.cs.rit.edu/∼ eh (Edith Hemaspaandra), and
ccc.cs.uni-duesseldorf.de/∼ rothe (Jörg Rothe). Corresponding author: Jörg
Rothe.

R. Fleischer and J. Xu (Eds.): AAIM 2008, LNCS 5034, pp. 165–176, 2008.

c Springer-Verlag Berlin Heidelberg 2008
166 P. Faliszewski et al.

1 Introduction

Preference aggregation by voting procedures has been the focus of much atten-
tion within the field of multiagent systems. Agents (called voters in the context of
voting) may have different, often conflicting individual preferences over the given
alternatives (or candidates). Voting rules (or, synonymously, election systems)
provide a useful method for them to come to a “reasonable” decision on which
alternative to choose. One key issue here is that there might be attempts to
influence the outcome of elections. Settings in which such influence on elections
can be implemented include manipulation [3,17], electoral control [2,9,10,11,17],
and bribery [7,9].
Bribery and control are settings in which an external actor seeks to influ-
ence the outcome of an election. In bribery, the briber tries to reach his or her
goal via bribing some of the voters to change their preferences (i.e., via bribing
them to cast their votes as the briber says). In control scenarios, the external
actor—often referred to as “the chair”—attempts to influence the outcome of
elections by modifying their structure, via such actions as adding, deleting, or
partitioning either candidates or voters. In contrast, there is no external actor in
manipulation; rather, a group of voters, the manipulators, attempt to cast their
votes insincerely in order to achieve their desired goal.
Although reasonable election systems typically are susceptible to these kinds
of influence (for manipulation this is, essentially, universally true, via the
Gibbard–Satterthwaite and Duggan–Schwartz Theorems), computational com-
plexity can be used to provide some protection in each such setting. We study
the extent to which the Copeland election system [4] (see also [18,15]; a similar
system was also studied by Zermelo [19]) resists, computationally, control and
bribery attempts.
An election is specified by a finite set C of candidates and a finite collection
V of voters, where each voter has preferences over the candidates. We consider
both rational and irrational voters. The preferences of a rational voter are ex-
pressed by a preference list of the form a > b > c (assuming C = {a, b, c}),
where the underlying relation > is a strict linear order that is transitive. The
preferences of an irrational voter are expressed by a preference table that for
any two distinct candidates specifies which of them is preferred to the other
by this voter. An election system is a rule that determines the winner(s) of
each given election (C, V ). In this paper we consider a parameterized version of
Copeland’s election system [4], denoted Copelandα , where the parameter α is
a rational number between 0 and 1 that specifies how ties are rewarded in the
head-to-head majority-rule contests between any two distinct candidates. This
parametrized version of Copeland’s system is due to Faliszewski et al. [9].

Definition 1 ([9]). Let α, 0 ≤ α ≤ 1, be a fixed rational number. In a


Copelandα election the voters indicate which among any two distinct candidates
they prefer. For each such head-to-head contest, if some candidate is preferred
by a strict majority of voters then he or she obtains one point and the other
candidate obtains zero points, and if a tie occurs then both candidates obtain α
Copeland Voting Fully Resists Constructive Control 167

points. Let E = (C, V ) be an election. For each c ∈ C, score α E (c) is the sum of
c’s Copelandα points in E. Every candidate c with maximum score α E (c) wins.
Let Copelandα Irrational denote the same election system but with voters allowed
to be irrational.

In the context of the above definition, the system widely referred to in the lit-
erature as “Copeland elections” is Copeland0.5 , where tied candidates receive
half a point each (see, e.g., Merlin and Saari [18,15]; the definition used by
Conitzer et al. [3] can be scaled to be equivalent to Copeland0.5 ). Copeland0 ,
where tied candidates come away empty-handed, has sometimes also been re-
ferred to as “Copeland elections” (see, e.g., [16,9]). An election system proposed
by the Catalan philosopher and theologian Ramon Llull in the 13th century (see,
e.g., the references in [9]) is in this notation nothing other than Copeland1 , where
tied candidates are awarded one point each, just like winners of head-to-head
contests.
Bartholdi, Tovey, and Trick [2] were the first to study the computational as-
pects of control: How hard is it, computationally, for the chair to exert control?
In their seminal paper they introduced a number of fundamental control sce-
narios involving (what is now called) constructive control, i.e., scenarios where
the chair’s goal is to make some designated candidate win. Other papers study-
ing control include [10,17,11,9], which in addition to constructive control also
consider destructive control, where the chair tries to preclude some designated
candidate from winning. The notion of bribery in elections was introduced by
Faliszewski et al. [7] and was also studied in [9]. Faliszewski et al. [9] studied
the systems Copeland0 and Copeland1 with respect to their (computational)
resistance and vulnerability to bribery and procedural control.
At first glance one might be tempted to think that the definitional perturba-
tion due to the parameter α in Copelandα elections is negligible. However, as
noted in [9], “. . . it can make the dynamics of Llull’s system quite different from
those of [Copeland0 ]. Proofs of results for Llull differ considerably from those for
[Copeland0 ].” This statement notwithstanding, we show that in most cases it is
possible to obtain a unified—though sometimes rather involved—construction
that works for both systems, and even for Copelandα with respect to every ra-
tional α, 0 ≤ α ≤ 1. In particular, we establish resistance or vulnerability results
for Copeland0.5 (which is the system commonly referred to as “Copeland”) in
every previously studied control scenario.1 In doing so, we provide an example of
a control problem where the complexity of Copeland0.5 differs from that of both
Copeland0 and Copeland1 : While the latter two systems are vulnerable to con-
structive control by adding (an unlimited number of) candidates, Copeland0.5 is
resistant to this control type (see Theorem 3).
Thus Copeland (i.e., Copeland0.5 ) is the first natural election system with a
polynomial-time winner problem that is proven to be resistant to every type of
constructive control that has been proposed in the literature to date. Closing
1
Also, our new results apply, e.g., to events such as the group stage of FIFA world-cup
finals, which is, in essence, a series of Copelandα tournaments with α = 1/3.
168 P. Faliszewski et al.

a 15-year-long quest, this result resolves a question that has been open since
Bartholdi, Tovey, and Trick’s 1992 paper [2].
This paper is in the worst-case model. It will be interesting to see what holds
in the average or typical case. (However, most of the papers that look at average-
case or typical-case complexity regarding election problems are limited to specific
distributions or make strong assumptions, so the state-of-the-art in that impor-
tant direction is not as advanced as many believe (see the discussion of this
in [12, Section 1] and [6]).)
Due to space, we omit most of our proofs. A representative proof is given in
Section 2.3 and all proofs, and additional discussion and results, can be found
in the in-preparation full version of the paper [8].

2 Control
2.1 Definition of Control Problems
We now define the control problems we consider, in both the constructive and
the destructive version. Let E be an election system. In our case, E will be either
Copelandα or Copelandα Irrational , where α, 0 ≤ α ≤ 1, is a fixed rational number.
The types of control we consider here are well-known from the literature (see,
e.g., [2,9,10]) and we will content ourselves with the definition of those problems
whose proofs we give in the main body of the paper.
We define control via adding candidates. Note that there are two versions of
this control type. The unlimited version (which, for the constructive case, was
introduced by Bartholdi, Tovey, and Trick [2]) asks whether the election chair
can add (any number of) candidates from a given pool of spoiler candidates
in order to either make his or her favorite candidate win the election (in the
constructive case), or prevent his or her despised candidate from winning (in the
destructive case):

Name: E-CCACu and E-DCACu .


Given: Disjoint candidate sets C and D, a collection V of voters represented
via their preference lists (or preference tables in the irrational case) over the
candidates in C ∪ D, and a distinguished candidate p ∈ C.
Constructive Question (E-CCACu ): Does there exist a subset D of D such
that p is a winner of the E election with candidates C ∪ D and voters V ?
Destructive Question (E-DCACu ): Does there exist a subset D of D such
that p isn’t a winner of the E election with candidates C ∪ D and voters V ?

The only difference in the limited version of constructive and destructive con-
trol via adding candidates (E-CCAC and E-DCAC, for short) is that the chair
needs to achieve his or her goal by adding at most k candidates from the given
set of spoiler candidates. This version of control by adding candidates was pro-
posed in [9] to synchronize the definition of control by adding candidates with
the definitions of control by deleting candidates, adding voters, and deleting
voters.
Copeland Voting Fully Resists Constructive Control 169

As seen in the above definition example, we use the following naming con-
ventions for control problems. The name of a control problem starts with the
election system used (when clear from context, it may be dropped), followed
by CC for “constructive control” or by DC for “destructive control,” followed
by the acronym of the type of control: AC for “adding (a limited number of)
candidates,” ACu for “adding (an unlimited number of) candidates,” DC for
“deleting candidates,” PC for “partition of candidates,” RPC for “run-off parti-
tion of candidates,” AV for “adding voters,” DV for “deleting voters,” and PV
for “partition of voters,” and all the partitioning cases (PC, RPC, and PV) are
followed by the acronym of the tie-handling rule used in subelections, namely
TP for “ties promote” (i.e., all winners of a given subelection are promoted to
the final round of the election) and TE for “ties eliminate” (i.e., if there is more
than one winner in a given subelection then none of this subelection’s winners
is promoted to the final round of the election).
Note that our definitions focus on a winner, i.e., they are in the nonunique-
winner model. The unique-winner analogs of these problems can be defined by
requiring the distinguished candidate p to be the unique winner (or to not be a
unique winner in the destructive case).
Let E be an election system and let Φ be a control type. We say E is immune to
Φ-control if the chair can never reach his or her goal (of making a given candidate
win in the constructive case, and of blocking a given candidate from winning in
the destructive case) via asserting Φ-control. E is said to be susceptible to Φ-
control if E is not immune to Φ-control. E is said to be vulnerable to Φ-control if
it is susceptible to Φ-control and there is a polynomial-time algorithm for solving
the control problem associated with Φ. E is said to be resistant to Φ-control if it
is susceptible to Φ-control and the control problem associated with Φ is NP-hard.
The above notions were introduced by Bartholdi, Tovey, and Trick [2] (see also,
e.g., [10,17,11,9]).

2.2 Overview of Results on Control


Our main result regarding control is Theorem 1 below.
Theorem 1. For each rational α, 0 ≤ α ≤ 1, Copelandα elections are resistant
and vulnerable to control as shown in Table 1, both for rational and irrational
voters and in both the nonunique-winner model and the unique-winner model.
Boldface results in Table 1 are new to this paper and nonboldface results are due
to Faliszewski et al. [9]. Note that the notion widely referred to in the literature
simply as “Copeland elections,” which we here for clarity call Copeland0.5 , pos-
sesses all ten of our basic types of constructive resistance and, in addition, even
has constructive ACu resistance. These resistances should be compared with the
results known for the other notion that in the literature is occasionally referred
to as “Copeland elections,” namely Copeland0 , and with the results known for
Llull elections, which are here denoted by Copeland1 , see [9]. While Copeland0
and Copeland1 possess all ten of our basic types of constructive resistance, they
both are vulnerable to this eleventh type of constructive control, the incongruous
170 P. Faliszewski et al.

Table 1. Resistance (R) and vulnerability (V) of Copelandα elections

Copelandα
α=0 0<α<1 α=1
Control type CC DC CC DC CC DC
ACu V V R V V V
AC R V R V R V
DC R V R V R V
RPC-{TP,TE} R V R V R V
PC-{TP,TE} R V R V R V
PV-{TP,TE} R R R R R R
AV R R R R R R
DV R R R R R R

but historically resonant notion of constructive control by adding an unlimited


number of candidates (i.e., CCACu ).
The next section discusses two particularly interesting subcases of Theorem 1,
namely those regarding constructive control via adding candidates. Afterward,
we turn to the issue of fixed-parameter tractability of our control problems.

2.3 Two Subcases of Theorem 1: Constructive Control Via Adding


Candidates

Let us now focus on the problem of constructive control via adding candidates.
In the now standard version of this problem (i.e., in the constructive control via
adding a limited number of candidates problem) we obtain the following result
(a special case of Theorem 1).

Theorem 2. For each rational number α such that 0 ≤ α ≤ 1, Copelandα is


resistant to constructive control via adding candidates (CCAC).

This result generalizes and strengthens the result of [9] in a natural way. However,
if we consider the unlimited version of the problem (CCACu ), the complexity of
the problem changes dramatically depending on the parameter α. In particular,
Faliszewski et al. [9] showed that for α ∈ {0, 1} this problem is in P, whereas we
show that for all rational values of α strictly between 0 and 1 it is NP-hard.

Theorem 3. For each rational number α, 0 < α < 1, Copelandα is resistant to


constructive control via adding an unlimited number of candidates (CCACu ).

The proof of this theorem follows via a reduction from the vertex cover problem:
Given an undirected graph G = (V (G), E(G)) and a nonnegative integer k,
does there exist a set W such that W ⊆ V (G), W  ≤ k, and for every edge
e = {u, v}, e ∈ E(G), it holds that e ∩ W = ∅? However, before we proceed
with the reduction we need the following two lemmas that simplify constructing
complicated instances of Copelandα elections.
Copeland Voting Fully Resists Constructive Control 171

Lemma 1. Let α be a rational number such that 0 ≤ α ≤ 1. For each positive


integer n, there is an election Padn = (C, V ) such that C = 2n + 1 and, for
each candidate c ∈ C, it holds that score α
Padn (c) = n.

Lemma 2. Let E = (C, V ) be an election where C = {c1 , . . . , cn }, and let α


be a rational number such that 0 ≤ α ≤ 1. For each candidate ci , we denote
the number of head-to-head ties of ci in E by ti . Let k1 , . . . , kn be a sequence of
n nonnegative integers such that for each ki we have 0 ≤ ki ≤ n. There is an
election E  = (C  , V  ) such that: (a) C  = C ∪ D, where D = {d1 , . . . , d2n2 };
(b) for each i, 1 ≤ i ≤ n, score αE  (ci ) = 2n −ki +αti ; (c) for each i, 1 ≤ i ≤ 2n ,
2 2

score E  (di ) ≤ n + 1.
α 2

Given these two results we can prove Theorem 3.


Proof of Theorem 3. We give a reduction from the vertex cover problem. Let
(G, k) be an instance of the vertex cover problem, where G is an undirected graph
and k is the bound on the size of the vertex cover that we seek. Let {e1 , . . . , em }
be the set of G’s edges and let {1, . . . , n} be the set of G’s vertices. We assume
that both n and m are nonzero and that k ≤ min(n, m) as otherwise clearly G
has a vertex cover of size k and our reduction could output a fixed instance of
CCACu with a positive answer.
Let t1 and t2 be two positive integers such that α = tt12 and such that their
greatest common divisor is 1. Clearly, two such numbers exist because α is
rational and greater than 0. We set ε to be t12 . By elementary number-theoretic
arguments, there are two positive integer constants, k1 and k2 , such that k1 α =
k2 − ε.
Using Lemma 2 we build an election E  = (C, V  ) such that: (a) C =
2 + , where  ≥ 2n + 2m and  is polynomially bounded in max(n, m);
2

(b) {p, r, e1 , . . . , em } ⊆ C (the remaining candidates are used for padding); (c)
score αE  (p) = 2 − 1; (d) score E  (r) = 2 − 1 − k + kα in the nonunique-
2 α 2

winner case (score α E (r) = 2 2


− 1 − k + kα − ε in the unique-winner case2 );
(e) for each ei ∈ C, score α (e
E i ) = 2 2
− 1 + α in the nonunique-winner case
(score α E i(e ) = 2 2
− 1 in the unique-winner case); (f) the scores of all candidates
in C other than p, r, e1 , . . . , em are at most 22 − n − 2.
We form election E = (C ∪ D, V ) via combining E  with candidates D =
{1, . . . , n} and appropriate voters such that the results of the head-to-head con-
tests are:

1. p ties with all candidates in D;


2. for each ej , if ej is incident with some i ∈ D then candidate i defeats
candidate ej , and otherwise they tie;
3. all other candidates in C defeat each of the candidates in D.

We will now show that G contains a vertex cover of size at most k if and only
if there is a set D ⊆ D such that p is a winner (the unique winner) of Copelandα
2
Note that via the second paragraph of the proof it is easy to build an election where
r has a score of this form.
172 P. Faliszewski et al.

election (C ∪ D , V ). It is easy to see that if D corresponds to a vertex cover


of size at most k then p is a winner (the unique winner) of Copelandα election
(C ∪ D , V ). The reason is that adding each member of D increases p’s score by
α, increases r’s score by one, and for each ej , adding i ∈ D increases ej ’s score
by α if and only if ej is not incident with i. Thus, via a simple calculation of the
scores of the candidates, it is easy to see that p is a winner (the unique winner)
of this election.
On the other hand, assume that p can become a winner (the unique winner)
of Copelandα election (C ∪ D , V ) via adding some subset D of candidates
from D. First, note that D  ≤ k, since otherwise r would end up with
more points than (at least as many points as) p and so p would not be a
winner (would not be the unique winner). We claim that D corresponds
to a vertex cover of G. For the sake of contradiction, assume that there
is some edge ej incident to vertices u and v such that neither u nor v is
in D . However, if this was the case then candidate ej would have more
points than (at least as many points as) p and so p would not be a winner
(would not be the unique winner). Thus, D must form a vertex cover of size at
most k. ❑ Theorem 3

2.4 FPT Algorithm Schemes for Bounded-Case Control


The study of fixed-parameter complexity (see, e.g., [5]) has been expanding ex-
plosively since it was parented as a field by Downey, Fellows, and others in the
late 1980s and the 1990s. Although the area has built a rich variety of complexity
classes regarding parameterized problems, for the purpose of the current paper
we need focus only on one very important class, namely, the class FPT. Briefly
put, a problem parameterized by some value j is said to be fixed-parameter
tractable (equivalently, to belong to the class FPT) if there is an algorithm for
the problem whose running time is f (j)nO(1) .
Notation. In our context, we consider two parameterizations: bounding the
number of candidates and bounding the number of voters. We use the same
notations used throughout this paper to describe problems, except we postpend
a “-BVj ” to a problem name to state that the number of voters may be at most
j, and we postpend a “-BCj ” to a problem name to state that the number of
candidates may be at most j. In each case, the bound applies to the full number
of such items involved in the problem. For example, in the case of control by
adding voters, the j must bound the total of the number of voters in the election
added together with the number of voters in the pool of voters available for
adding.
Fixed–Parameter Tractability Results. In their seminal paper on NP-hard
winner-determination problems, Bartholdi, Tovey, and Trick [1] suggested con-
sidering hard election problems for the cases of a bounded number of candidates
or a bounded number of voters, and they obtained efficient-algorithm results for
such cases. Within the study of elections, this same approach—seeking efficient
fixed-parameter algorithms—has also been used, for example, within the study
Copeland Voting Fully Resists Constructive Control 173

of bribery [7]. Faliszewski et al. [9] showed that the 16 resistance results for
constructive and destructive voter control within Copeland0 and Copeland1 (see
Table 1) are in FPT (i.e., they each are fixed-parameter tractable) if the number
of candidates is bounded, and also if the number of voters is bounded. They also
showed that these results hold even when the multiplicities of preference lists in
a given election are represented succinctly (by a binary number).
We generalize these results in Theorems 4 and 5 below. To state those the-
orems concisely, we borrow a notational approach from transformational gram-
mar, and use square  brackets
 as an “independent choice” notation. So, for
It  
runs
example, the claim She walks is a shorthand for six assertions: It runs; She
He
runs; He runs; It walks; She walks; and He walks. A special case is the symbol
“∅” which, when it appears in such a bracket, means
 that when unwound it
should be viewed as no text at all. For example, “ Succinct
∅ Copeland is fun”
asserts both “Succinct Copeland is fun” and “Copeland is fun.”
Theorem 4. For each rational α, 0 ≤ α ≤ 1, and each choice from the inde-
pendent choice brackets below, the specified parameterized (as j varies over N)
problem is in FPT:
⎡ ⎤
      AV  
succinct Copelandα C ⎢ DV ⎥ BVj
- - ⎢
C⎣ ⎥ - .
∅ CopelandαIrrational D PV-TE⎦ BCj
PV-TP
Theorem 5. For each rational α, 0 ≤ α ≤ 1, and each choice from the inde-
pendent choice brackets below, the specified parameterized (as j varies over N)
problem is in FPT:
⎡ ⎤
ACu
⎢ AC ⎥
⎢ ⎥
      ⎢ DC ⎥
succinct Copelandα C ⎢ ⎥
- - C⎢ ⎥
⎢ PC-TE ⎥ -BCj .
∅ Copelandα
Irrational D ⎢ PC-TP ⎥
⎢ ⎥
⎣RPC-TE⎦
RPC-TP
The proofs of Theorems 4 and 5, which in particular employ Lenstra’s [14] algo-
rithm for bounded-variable-cardinality integer programming, are omitted here.
FPT and Extended Control. We now introduce and look at extended control.
By that we do not mean changing the basic control notions of adding/dele-
ting/partitioning candidates/voters. Rather, we mean generalizing past merely
looking at the constructive (make a distinguished candidate a winner) and the
destructive (prevent a distinguished candidate from being a winner) cases. In
particular, we are interested in control where the goal can be far more flexibly
specified, for example (though in the partition cases we will be even more flexible
than this), we will allow as our goal region any (reasonable—there are some time-
related conditions) subcollection of “Copeland output tables” (specifications of
who won/lost/tied each head-to-head contest).
174 P. Faliszewski et al.

Since from a Copeland output table, in concert with the current α, one
can read off the Copelandα Irrational scores of the candidates, this allows us a
tremendous range of descriptive flexibility in specifying our control goals, e.g.,
we can specify a linear order desired for the candidates with respect to their
Copelandα Irrational scores, we can specify a linear-order-with-ties desired for the
candidates with respect to their Copelandα Irrational scores, we can specify the
exact desired Copelandα Irrational scores for one or more candidates, we can spec-
ify that we want to ensure that no candidate from a certain subgroup has a
Copelandα α
Irrational score that ties or beats the CopelandIrrational score of any can-
didate from a certain other subgroup, etc.
All the FPT algorithms given in Theorems 4 and 5 regard, on their surface, the
standard control problem, which tests whether a given candidate can be made a
winner (constructive case) or can be precluded from being a winner (destructive
case). We note that the general approaches used to prove those results in fact
yield FPT schemes even for the far more flexible notions of control that we just
mentioned.
Resistance Results. In contrast with the FPT results in [9] for Copeland0 and
Copeland1 , Faliszewski et al. [9] showed that, for α ∈ {0, 1}, Copelandα Irrational
remains resistant to all types of candidate control even for two voters. We gen-
eralize these results by showing that even for each rational α, 0 ≤ α ≤ 1, for
Copelandα Irrational all 19 candidate-control cases that we showed earlier in this
paper (i.e., without bounds on the number of voters) to be resistant remain re-
sistant even for the case of bounded voters (nonsuccinct). This resistance holds
even when the input is not in succinct format, and so it certainly also holds
when the input is in succinct format.
It remains open whether Table 1’s resistant, rational-voter, candidate-control
cases remain resistant for the bounded-voter case.

3 Bribery
We now turn to the issue of bribery (see [7]), where the briber seeks to reach his
or her goal via bribing certain voters to make them change their preferences.
Name: E-bribery.
Given: A set C of candidates, a collection V of voters represented via their
preference lists (or preference tables in the irrational case) over C, a distin-
guished candidate p ∈ C, and a nonnegative integer k.
Question: Does there exist a voter collection V  over C, where V  results from
V by modifying at most k voters, such that p wins the E election (C, V  )?
For E-destructive-bribery, the destructive bribery problem for E, we require p
to be not a winner. We say E is vulnerable to constructive (destructive) bribery
if E-bribery (E-destructive-bribery) is in P. We say E is resistant to constructive
(destructive) bribery if E-bribery (E-destructive-bribery) is NP-hard. Theorem 6
carries to the case of all rationals α, 0 ≤ α ≤ 1, a result for Copeland0 and
Copeland1 of [9].
Copeland Voting Fully Resists Constructive Control 175

Theorem 6. For each rational α, 0 ≤ α ≤ 1, Copelandα is resistant to both


constructive and destructive bribery in both the rational-voters case and the
irrational-voters case.

We also can show that for all rationals α, 0 ≤ α ≤ 1, Copelandα Irrational is


vulnerable to destructive microbribery. Informally put, microbribery [9] means
that the briber pays separately for each preference-table entry flip of irrational
voters.

4 Conclusions

We studied Copelandα elections with respect to their resistance and vulnerabil-


ity to control and bribery. Among the election systems whose winners can be
determined in polynomial time, we identified the first natural election system,
Copeland (i.e., Copeland0.5 ), that provides full resistance to constructive control.
In addition, we proved results for bribery and for fixed-parameter tractability of
bounded-case control for Copelandα for each rational α, 0 < α < 1.

References
1. Bartholdi III, J., Tovey, C., Trick, M.: Voting schemes for which it can be difficult
to tell who won the election. Social Choice and Welfare 6(2), 157–165 (1989)
2. Bartholdi III, J., Tovey, C., Trick, M.: How hard is it to control an election?
Mathematical and Computer Modeling 16(8/9), 27–40 (1992)
3. Conitzer, V., Sandholm, T., Lang, J.: When are elections with few candidates hard
to manipulate? Journal of the ACM 54(3) Article 14(2007)
4. Copeland, A.: A “reasonable” social welfare function. Mimeographed notes from
a Seminar on Applications of Mathematics to the Social Sciences, University of
Michigan (1951)
5. Downey, R., Fellows, M.: Parameterized Complexity. Springer, Heidelberg (1999)
6. Erdélyi, G., Hemaspaandra, L., Rothe, J., Spakowski, H.: Frequency of correct-
ness versus average polynomial time and generalized juntas (manuscript, December
2007)
7. Faliszewski, P., Hemaspaandra, E., Hemaspaandra, L.: The complexity of bribery
in elections. In: Proc. AAAI 2006, pp. 641–646. AAAI Press, Menlo Park (2006)
8. Faliszewski, P., Hemaspaandra, E., Hemaspaandra, L., Rothe, J.: Llull and
Copeland voting computationally resist bribery and control. Technical report, De-
partment of Computer Science, University of Rochester, Rochester, NY (in prepa-
ration)
9. Faliszewski, P., Hemaspaandra, E., Hemaspaandra, L., Rothe, J.: Llull and
Copeland voting broadly resist bribery and control. In: Proc. AAAI 2007, pp.
724–730. AAAI Press, Menlo Park (2007)
10. Hemaspaandra, E., Hemaspaandra, L., Rothe, J.: Anyone but him: The complexity
of precluding an alternative. Artificial Intelligence 171(5-6), 255–285 (2007)
11. Hemaspaandra, E., Hemaspaandra, L., Rothe, J.: Hybrid elections broaden
complexity-theoretic resistance to control. In: Proc. IJCAI 2007, pp. 1308–1314.
AAAI Press, Menlo Park (2007)
176 P. Faliszewski et al.

12. Homan, C., Hemaspaandra, L.: Guarantees for the success frequency of an algo-
rithm for finding Dodgson-election winners. Journal of Heuristics (to appear). Full
version available as [13]
13. Homan, C., Hemaspaandra, L.: Guarantees for the success frequency of an algo-
rithm for finding Dodgson-election winners. Technical Report TR-881, Department
of Computer Science, University of Rochester, Rochester, NY, September 2005. Re-
vised (June 2007)
14. Lenstra Jr., H.: Integer programming with a fixed number of variables. Mathemat-
ics of Operations Research 8(4), 538–548 (1983)
15. Merlin, V., Saari, D.: Copeland method II: Manipulation, monotonicity, and para-
doxes. Journal of Economic Theory 72(1), 148–172 (1997)
16. Procaccia, A., Rosenschein, J., Kaminka, G.: On the robustness of preference ag-
gregation in noisy environments. In: Proc. AAMAS 2007, pp. 416–422. ACM Press,
New York (2007)
17. Procaccia, A., Rosenschein, J., Zohar, A.: Multi-winner elections: Complexity of
manipulation, control, and winner-determination. In: Proc. IJCAI 2007, pp. 1476–
1481. AAAI Press, Menlo Park (2007)
18. Saari, D., Merlin, V.: The Copeland method I: Relationships and the dictionary.
Economic Theory 8(1), 51–76 (1996)
19. Zermelo, E.: Die Berechnung der Turnier-Ergebnisse als ein Maximumproblem der
Wahrscheinlichkeitsrechnung. Mathematische Zeitschrift 29(1), 436–460 (1929)
The Complexity of Power-Index Comparison

Piotr Faliszewski and Lane A. Hemaspaandra

Department of Computer Science


University of Rochester
Rochester, NY 14627

Abstract. We study the complexity of the following problem: Given


two weighted voting games G and G that each contain a player p,
in which of these games is p’s power index value higher? We study
this problem with respect to both the Shapley-Shubik power index [16]
and the Banzhaf power index [3,6]. Our main result is that for both of
these power indices the problem is complete for probabilistic polynomial
time (i.e., is PP-complete). We apply our results to partially resolve
some recently proposed problems regarding the complexity of weighted
voting games. We also show that, unlike the Banzhaf power index, the
Shapley-Shubik power index is not #P-parsimonious-complete. This
finding sets a hard limit on the possible strengthenings of a result
of Deng and Papadimitriou [5], who showed that the Shapley-Shubik
power index is #P-metric-complete.

Keywords: Weighted voting games; power indices; computational com-


plexity.

1 Introduction

In an abstract, direct democracy, each member in a certain sense has equal


potential for impact on the decisions that the society makes. However, in many
practical decision-making scenarios it is reasonable to give up this noble idea
and consider weighted voting instead. Here are a few motivating examples. In a
country divided into districts it makes sense to give each district voting power
proportional to its population (consider, e.g., the US House of Representatives
or various decision making processes within the European Union). In fact, the
power that various apportionment methods give to the US states in its House of
Representatives has been studied in terms of how well it is proportional to the
sizes of the states [10]. In a business setting, stockholders in a company might
hope to have voting power proportional to the amount of stock they own. Within
computer science, Dwork et al. [7] suggested building a meta search engine for
the web via treating other search engines as voters in an election. It would only

Work done in part while visiting Heinrich-Heine-Universität Düsseldorf, Germany.
Supported in part by grant NSF-CCF-0426761.

Supported in part by grant NSF-CCF-0426761, a TransCoop grant, and a Friedrich
Wilhelm Bessel Research Award.

R. Fleischer and J. Xu (Eds.): AAIM 2008, LNCS 5034, pp. 177–187, 2008.

c Springer-Verlag Berlin Heidelberg 2008
178 P. Faliszewski and L.A. Hemaspaandra

be natural to weigh the participating search engines with their (quantified in


some way) quality. Naturally, one can provide many other examples.
The focus of this paper is on the computational complexity of the following
issue: Given an individual and two weighted voting scenarios (in each of them our
individual might have different weight and each scenario might involve different
sets of voters with different weights), in which one of them is our individual
more influential? (We provide a formal definition of this problem in Section 1.1.)
This problem has a very natural motivation. For example, consider a company
that wishes to join some business consortium and has a choice among several
consortia (e.g., consider an airline deciding which airline alliance to join). It is
natural to assume that within each consortium companies make decisions via
weighted voting, with companies weighted, e.g., via their size or revenue or some
combination thereof. In a political context, members of the European Union
sometimes try to promote new schemes of distributing vote weights among EU
members. It is important for the countries involved to see which scheme is better
for them. One can easily give many other applications of the issue we study.
Formally, we model the above problem via comparing the values of power
index functions—in our case those of Shapley and Shubik [16] and of Banzhaf
([3], see also [6])—of a particular player within two given weighted voting games.
Our main result is that this problem is PP-complete for both the Shapley-Shubik
power index and the Banzhaf power index.
An extended version of this paper, with several different proofs and with
additional results, appears as [8].

1.1 The Power-Index Comparison Problem


We model weighted voting via so-called weighted voting games. An n-player
weighted voting game is a sequence of n nonnegative integer weights, w1 , . . . , wn ,
together with a quota q. We denote it as (w1 , . . . , wn ; q). We refer to the player
with weight wi as the i’th player. Weighted voting games model the following
scenario: The players are given a yes/no question (e.g., should we lower the taxes?
should we buy out our competitors?) and each player either agrees (answers yes)
or disagrees (answers no). If the total weight of the voters who agree is at least
as high as the quota then the result of the game is yes and otherwise it is no.
subset of {1, . . . , n} is a coalition
Let G be a voting game (w1 , . . . , wn ; q). Any
in G. We say that a coalition S is successful if i∈S wi ≥ q. We define succG (S)
to be 1 if S is a successful coalition for G and to be 0 otherwise.
Interestingly, the relation between the effective power of a player within a
voting game and his or her weight is not as simple as one might think. Consider
game G = (8, 7, 2; 9), i.e., a game with quota q = 9 and three players with
weights 8, 7, and 2, respectively. It is easy to see that in this game any coalition
of at least two players is successful. In effect, each of the players can influence the
final result of the game to exactly the same degree, regardless of the fact that
their weights differ significantly. Thus when analyzing weighted voting games
it is standard to measure players’ power using, e.g., the Shapley-Shubik power
index [16] or the Banzhaf power index [3,6].
The Complexity of Power-Index Comparison 179

In essence, these power indices measure the probability that, assuming some
coalition formation model, our designated player is critical for the forming coali-
tion. By critical we mean here that the coalition is successful with our designated
player but is not successful without him or her.
Let G = (w1 , . . . , wn ; q) be a voting game, let i be a player in this game, and
let N = {1, . . . , n} be the set of all players of G. The value of the Banzhaf power

index of i in G is defined as Banzhaf(G, i) = Banzhaf 2n−1
(G,i)
, where Banzhaf ∗ (G, i)
is the raw version of the index,

Banzhaf ∗ (G, i) = (succG (S ∪ {i}) − succG (S)).
S⊆N −{i}

The Shapley-Shubik power index of player i in game G is defined as SS(G, i) =


SS∗ (G,i)
n! , where SS∗ (G, i) is the raw version of the index,

SS∗ (G, i) = S!(n − S − 1)!(succG (S ∪ {i}) − succG (S)).
S⊆N −{i}

Intuitively, Banzhaf(G, i) gives the probability that a randomly chosen coali-


tion of players in N − {i} is not successful but would become successful had
player i joined in. The intuition for the Shapley-Shubik index is that we count
the proportion of permutations for which a given player is pivotal. Given a per-
mutation π of {1, . . . , n}, the π(i)’th player is pivotal if it holds that the coalition
{π(1), π(2), . . . , π(i)} is successful and the coalition {π(1), π(2), . . . , π(i − 1)} is
not. This permutation-based intuition is motivated by the view of the successful-
coalition formation as the process of players joining in in random order. Nat-
urally, the first player that makes the coalition successful is crucial and so the
idea is to measure power via counting how often our player-of-interest is pivotal.
The focus of this paper is on the computational complexity analysis of the
following problem.
Definition 1. Let f be either the Shapley-Shubik or the Banzhaf power index.
By PowerComparef we mean the problem where the input (G , G , i) contains
two weighted voting games, G = (w1 , . . . , wn , q  ) and G = (w1 , . . . , wn , q  ),
and an integer i, 1 ≤ i ≤ n, and where we ask whether f (G , i) > f (G , i).
Note that in the above definition we assume that both games have the same
number of players. At first this might seem to be a weakness but it is easy to
see that given two games with different numbers of players we can easily pad
the smaller one with weight-0 players. On the other hand, the assumption that
both games have the same number of players allows us to solve the problem via
comparing the raw values of the index: The scaling factor for both games is the
same and thus it does not affect the result of the comparison.

1.2 Computational Complexity


We assume that the reader is familiar with the standard notions of computational
complexity theory, as presented, e.g., in the textbooks of Papadimitriou [14] and
180 P. Faliszewski and L.A. Hemaspaandra

Bovet and Crescenzi [4]. Below we review some of them, focusing on the less
frequently known ones.
We fix the alphabet Σ = {0, 1} and we assume that all the problems we
consider are encoded in a natural, efficient manner over Σ. By | · | we mean the
length function. We assume ·, · to be a standard, natural pairing function such
that |x, y| = 2(|x| + |y|) + 2.
The main result of this paper, Theorem 1, says that the power-index com-
parison problem is PP-complete both for the Shapley-Shubik power index and
for the Banzhaf power index. The class PP, probabilistic polynomial time, was
defined by Simon [17] and Gill [9]. A language L ⊆ Σ ∗ belongs to PP if and
only if there exists a polynomial p and a polynomial-time computable relation
R such that
x ∈ L ⇐⇒ {w ∈ Σ p(|x|) | R(x, w) holds} > 2p(|x|)−1 .

PP captures the set of languages having a probabilistic Turing machine that


on precisely the elements of the set has strictly more than 50% probability of
acceptance. Let us mention that PP is a very powerful class. For example, it
is well-known that NP is a subset of PP (as are even various larger classes).
Via Toda’s Theorem [18], we know that PH ⊆ PPP . That is, PP is at least as
powerful as polynomial-time hierarchy, give or take the flexibility of polynomial-
time Turing reductions. Many other properties of PP have been established in
the literature.
Let us now recall the definition of the class #P [19]. For each NP machine N
(i.e., for each nondeterministic polynomial-time machine N ), by #accN (x) we
mean the number of accepting computation paths of N running with input x.
A function f , f : Σ ∗ → N, belongs to #P if and only if there is an NP machine
N such that (∀x ∈ Σ ∗ )[f (x) = #accN (x)]. #P is, in some sense, a functional
counterpart of PP. For example, P#P = PPP [2]. More typically, #P is described
as the counting analogue of NP.
As is usual, we say that a language L is hard for a complexity class C if every
language in C polynomial-time many-one reduces to L. If in addition L belongs
to C then we say that L is C-complete. A language A polynomial-time many-one
reduces to a language B if there exists a polynomial-time computable function f
such that for each string x ∈ Σ ∗ it holds that x ∈ A ⇐⇒ f (x) ∈ B. On the other
hand, there is no one agreed-upon notion of completeness for function classes. For
example, Valiant [19] in his seminal paper used Turing reductions but other people
have preferred notions such as Krentel’s metric reductions [12], Zankó’s many-one
reductions (for functions) [20], and Simon’s [17] parsimonious reductions.
In the context of power index functions, Prasad and Kelly [15] (implicitly)
showed that the (raw) Banzhaf power index is #P-parsimonious-complete and
Deng and Papadimitriou [5] established that the (raw) Shapley-Shubik power
index is #P-metric-complete (regarding the complexity analysis of power indices,
we also mention the paper of Matsui and Matsui [13]). We now review the
parsimonious and metric reductions that yield the parsimonious-completeness
and metric-completeness notions.
The Complexity of Power-Index Comparison 181

Definition 2 ([17,12]). We say that a function f : Σ ∗ → N metric reduces to a


function g : Σ ∗ → N if there exist two polynomial-time computable functions, ϕ
and ψ, such that (∀x ∈ Σ ∗ )[f (x) = ψ(x, g(ϕ(x)))]. We say that f parsimoniously
reduces to g if there is a polynomial-time computable function ϕ such that (∀x ∈
Σ ∗ )[f (x) = g(ϕ(x))].
Note that if f parsimoniously reduces to g, then f metric reduces to g. Given a
function class C, we say that a function f is C-parsimonious-complete if f ∈ C
and each function in C parsimonious reduces to f . C-metric-completeness is
defined analogously. Typically, parsimonious-complete functions are easier to
work with than functions that are only metric-complete. In particular, our proof
of Theorem 4 is more involved than our proof of Theorem 2 because, as we show,
the Shapley-Shubik power index is not parsimoniously complete.

2 Main Results
Our main result, Theorem 1, says that the power index comparison problem is
PP-complete. This section is devoted to building infrastructure for Theorem 1’s
proof and giving that proof.
Theorem 1. Let f be either the Banzhaf or the Shapley-Shubik power index.
The problem PowerComparef is PP-complete.
We start via showing PP-membership of a problem closely related to our
PowerCompareBanzhaf and PowerCompareSS problems. Let f be a #P func-
tion and let Comparef be the language {x, y | x, y ∈ Σ ∗ ∧ f (x) > f (y)}.
(PowerCompareBanzhaf and PowerCompareSS are essentially, up to a minor def-
initional issue, incarnations of Comparef for appropriate functions f .)
Lemma 1. Let f be a #P function. The language Comparef is in PP.
Proof. Let f be an arbitrary #P function and let N be an NP machine such that
f = #accN . Without the loss of generality, we assume that there is a polynomial
q such that for each input x ∈ Σ ∗ all computation paths of N make exactly q(|x|)
binary nondeterministic choices. Thus each computation path of N on input x
can be represented as a string w in Σ q(|x|) .
In order to show that Comparef is in PP we need to provide a polynomial-time
computable relation R and a polynomial p such that for each string z = x, y
it holds that:
z ∈ Comparef ⇐⇒ {w ∈ Σ p(|z|) | R(z, w) holds} > 2p(|z|)−1 .
We now define such R and p. Let us fix two strings, x and y, and let z = x, y and
n = |z|. We define p(n) = q(n) + 1 and, for each string w = w0 w1 . . . wp(n)−1 ∈
Σ p(n) , we define R(z, w) as follows:
Case 1. If w0 = 0 then R(z, w) is true exactly if the string w1 , . . . , wq(|x|) spells
an accepting computation path of N on x and the symbols wq(|x|)+1 through
wp(n)−1 are all 0. R(z, w) is false otherwise.
182 P. Faliszewski and L.A. Hemaspaandra

Case 2. If w0 = 1 then R(z, w) is false exactly if the string w1 , . . . , wq(|y|) spells


an accepting computation path of N on y and the symbols wq(|x|)+1 through
wp(n)−1 are all 0. R(z, w) is true otherwise.
Via analyzing the above two cases it is easy to see that there are exactly f (x) +
(2p(n)−1 − f (y)) = f (x) − f (y) + 2p(n)−1 strings w ∈ Σ p(n) for which R(z, w) is
true. This value is greater than 2p(n)−1 if and only if f (x) > f (y). Thus, the relation
R and the polynomial p jointly witness that Comparef belongs to PP. 
Lemma 1 gives an upper bound on the complexity of Comparef (assuming that
f ∈ #P). We now prove a matching lower bound, PP-completeness, for the case
that f is #P-parsimonious-complete.
Lemma 2. Let f be a #P-parsimonious-complete function. The language
Comparef is PP-complete.
Proof. Let f be a #P-parsimonious-complete function. Via Lemma 1 we know
that Comparef is in PP and thus to show PP-completeness it remains to show
PP-hardness. We do so via reducing an arbitrary PP language L to Comparef .
Let L be an arbitrary PP language. By definition, there exists a polynomial-
time relation R and a polynomial p such that for each string x ∈ Σ ∗ it holds
that x ∈ L ⇐⇒ {y ∈ Σ p(|x|) | R(x, y) holds} > 2p(|x|)−1 . We define two
functions, g1 and g2 , such that g1 (x) = {y ∈ Σ p(|x|) | R(x, y) holds} and
g2 (x) = 2p(|x|)−1. It is easy to see that both g1 and g2 are in #P. g1 can be
computed via a an NP machine that on input x guesses a binary string y of
length p(|x|) and accepts if and only if R(x, y) holds. g2 can be computed via
a machine that on input x guesses a binary string of length 2p(|x|)−1 and then
accepts. Naturally, x ∈ L if and only if g1 (x) > g2 (x).
Since f is #P-parsimonious-complete, both g1 and g2 parsimoniously reduce
to f . Let ϕ1 be the reduction function for g1 and let ϕ2 be the reduction function
for g2 . We have that for each string x it holds that g1 (x) = f (ϕ1 (x)) and g2 (x) =
f (ϕ2 (x)).
Our reduction from L to Comparef works as follows. On input x we output
the string z = ϕ1 (x), ϕ2 (x). Clearly, this can be done in polynomial time. To
show correctness it is enough to recall that x ∈ L if and only if g1 (x) > g2 (x),
which is equivalent to testing whether z is in Comparef . Since L was chosen as
an arbitrary PP language, this proves PP-completeness. 
We are almost ready to show that PowerCompareBanzhaf is PP-complete. How-
ever, in order to do so, we need to justify the claim that the raw version of the
Banzhaf power index is #P-parsimonious-complete. (This was shown implicitly
in the work of Prasad and Kelly [15], but we feel that it is important to explicitly
outline the proof.)
One of our important tools here (and later on) is the function #X3C. The in-
put to the X3C problem is a set B = {b1 , . . . , b3k } and a family S = {S1 , . . . , Sn }
of 3-element subsets of B. The X3C problem asks whether there exists a col-
lection of exactly k sets in S whose union is B. #X3C(B, S) is the number of
solutions of the X3C instance (B, S).
The Complexity of Power-Index Comparison 183

Hunt et al. [11] showed that #X3C is parsimonious complete for #P. This is
very useful for us as the standard reduction from #X3C to #SubsetSum (see,
e.g., [14, Theorem 9.10]; #SubsetSum is the function that accepts as input a
target integer K and a set S of nonnegative integers and returns the number of
subsets of S that sum up to K) is parsimonious and Prasad and Kelly’s reduction
from #SubsetSum to Banzhaf ∗ (the raw version of Banzhaf’s power index) is
parsimonious as well. Since Banzhaf ∗ is in #P, Banzhaf ∗ is #P-parsimonious-
complete. Thus the following theorem is, essentially, a direct consequence of
Lemma 2.
Theorem 2. PowerCompareBanzhaf is PP-complete.
Proof. The raw version of the Banzhaf power index is #P-parsimonious-complete
and so, via Lemma 2, CompareBanzhaf ∗ is PP-complete. Via a slight misuse of no-
tation, we can say that CompareBanzhaf ∗ accepts as input two weighted voting
games, G and G , and two players, p and p , such that p participates in G and p
participates in G and accepts if and only if Banzhaf ∗ (G , p ) > Banzhaf ∗ (G , p ).
We give a reduction from CompareBanzhaf ∗ to PowerCompareBanzhaf .
Let G , p and G , p be our input to the CompareBanzhaf ∗ problem. We can
assume that G and G have the same number of players. If G and G do
not have the same number of players then it is easy to see that the game with
fewer players can be padded with players whose weight is equal to this game’s
quota value. Such a padding leaves the raw Banzhaf power index values of the
game’s original players unchanged. (The reason for this is that any coalition that
includes any of the padding candidates is already winning and so none of the
original players is critical to the success of the coalition, and so the coalition
does not contribute to original players’ power index values.)
We form two games, K  and K  , that are identical to games G and G ,
respectively, except that K  lists player p as first and G lists player p as first.
Our reduction’s output is (K  , K  , 1).
Naturally, Banzhaf(K  , 1) > Banzhaf(K  , 1) if and only if Banzhaf ∗ (G , p ) >
Banzhaf ∗ (G , p ). Also, clearly, K  and K  can be computed in poly-
nomial time. Thus we have successfully reduced CompareBanzhaf ∗ to
PowerCompareBanzhaf . This shows PP-hardness of PowerCompareBanzhaf . PP-
membership of PowerCompareBanzhaf is, essentially, a simple consequence of
Lemma 1. This completes the proof. 
Let us now focus on the computational complexity of the power index comparison
problem for the case of Shapley-Shubik. It would be nice if the raw Shapley-
Shubik power index were #P-parsimonious-complete. Had it been the case, we
could establish PP-completeness of PowerCompareSS in essentially the same way
as we have done for PowerCompareBanzhaf . However, Prasad and Kelly [15] at the
end of their paper, after—in effect—showing #P-parsimonious-completeness of
the raw Banzhaf power index (their Theorem 4) write: “Such a straightforward
approach does not seem possible with the Shapley-Shubik [power index].” We
reinforce their intuition by now proving that the raw Shapley-Shubik power index
in fact is not #P-parsimonious-complete.
184 P. Faliszewski and L.A. Hemaspaandra

Theorem 3. The raw Shapley-Shubik power index, the function SS∗ , is not #P-
parsimonious-complete.
Proof. For the sake of contradiction, let us assume that SS∗ is #P-parsimonious-
complete. Thus for each natural number k there is a weighted voting game G and
a player i within G such that SS∗ (G, i) = k. This is the case because the function
f (x) = x belongs to #P (we assume that the “output x” is an integer obtained
via a standard bijection between Σ ∗ and N) and if SS∗ is #P-parsimonious-
complete then there has to be a parsimonious reduction from f to SS∗ .
Let G be an arbitrary voting game with n ≥ 4 players and let i be a player
in G. By definition, SS∗ (G, i) is a sum of terms of the form k!(n − k − 1)!,
where k is some value in {0, . . . , n − 1}. Since n ≥ 4, each such term is even
and thus SS∗ (G, i) is even. The raw Shapley-Shubik power index of any player
in a game with at most 3 players is at most 3! = 6 and thus there is no input
on which SS∗ yields the value 7. This contradicts the assumption that SS∗ is
#P-parsimonious-complete and completes the proof. 
So the well-known result of Deng and Papadimitriou [5] that the raw Shapley-
Shubik power index is #P-metric-complete cannot be strengthened to #P-
parsimonious-completeness. Theorem 3 prevents us from directly using Lemma 2
to show that PowerCompareSS is PP-complete. Nonetheless, via the following
lemma, we will be able to obtain our result.
Lemma 3. Let f and g be two arbitrary #P functions. There exists a
polynomial-time computable function cmpf,g (x, y) such that
(∀x, y ∈ Σ ∗ )[f (x) > g(y) ⇐⇒ cmpf,g (x, y) ∈ PowerCompareSS ].
Proof. Let f and g be as in the lemma and let x and y be two arbitrary strings.
Since both f and g are in #P and #X3C is #P-parsimonious-complete, there
exist functions φf and φg that compute parsimonious reductions from f to #X3C
and from g to #X3C, respectively.
Let (Bx , Sx ) = φf (x) and (By , Sy ) = φg (y). We can, without the loss of
generality, assume that Sx  = Sy  = r and that Bx  = By  = 3k, where
r and k are two nonnegative integers. If this is not the case, we can use the
following algorithm.
If, say, Bx  is not a multiple of three then we have #X3C(Bx , Sx ) = 0 and we
can add one or two extra elements to Bx without introducing any new solutions
but ensuring that Bx  is a multiple of three. Naturally, the same trick works
for By . If both Bx  and By  are multiples of three and, for example, Bx  <
By  then we can add three new elements, b , b , b to Bx and include the set
{b , b , b } in Sx . This doesn’t change the number of solutions of (Bx , Sx ), but
it increases the cardinality of Bx by three. We can keep repeating this operation
until the cardinalities of the sets Bx and By match. Then, via similar trickery,
without breaking the Bx  = By  equality we can ensure that Sx  = Sy .
We omit the details of this process but the reader can easily recreate them.
Let φs be the standard, parsimonious reduction from #X3C to #SubsetSum
(see, e.g., [14, Theorem 9.10]). φs has the property that given an instance (B, S)
The Complexity of Power-Index Comparison 185

where B = 3m for some nonnegative integer m, φs (B, S) produces an in-


stance (s1 , . . . , sn ; q) of SubsetSum such that n = S and every subset of
{s1 , . . . , sn } that sums up to q has exactly m elements. Based on such an in-
stance of SubsetSum we can build voting game G = (1, s1 , . . . , sn ; q + 1). Deng
and Papadimitriou [5, Theorem 9] observed that the raw Shapley-Shubik power
index of the first player in this game is exactly

(n − m)!m! · #SubsetSum(s1 , . . . , sn ; q).

Since φs is parsimonious, this value is equal to (n − m)!m! · #X3C(B, S).


We now describe our function cmpf,g . Given instance (Bx , Sx ) we build
voting game Gx as follows. We compute SubsetSum instance φs (Bx , Sx ) =
(t1 , . . . , tr ; qx ) and we let Gx = (1, t1 , . . . , tr ; qx + 1). Analogously, based on
instance (By , Sy ), we build voting game Gy . (Note that since Sx  = Sy  = r,
both games have the same number of players.) We define cmpf,g (x, y) to output
(Gx , Gy , 1). Via the discussion above it holds that:

SS∗ (Gx , 1) = (r − k)!k! · #X3C(Bx , Sx ) = (r − k)!k!f (x)


SS∗ (Gy , 1) = (r − k)!k! · #X3C(By , Sy ) = (r − k)!k!g(y).

Thus, f (x) > f (y) if and only if SS(Gx , 1) > SS(Gy , 1) and so it is clear that
function cmpf,g does what the theorem claims. Naturally, cmpf,g can be com-
puted in polynomial time. 

Theorem 4. PowerCompareSS is PP-complete.

Proof. Via Lemma 1 it is easy to see that PowerCompareSS is in PP. Let h


be some #P-parsimonious-complete function. PP-hardness of PowerCompareSS
follows via a reduction from PP-complete problem Compareh (see Lemma 2). As
a reduction we can use, e.g., the function cmph,h from Lemma 3. This completes
the proof. 

3 Conclusions and Open Problems

We have shown that the problem of deciding in which of the two given voting
games our designated player has higher power index value is PP-complete for
both Banzhaf and Shapley-Shubik power indices. For the case of Banzhaf, we
have used the fact that Banzhaf power index is #P-parsimonious-complete. For
the case of Shapley-Shubik, we have shown that Shapley-Shubik power index is
not #P-parsimonious-complete, but using the index’s properties we were able
to show PP-completeness of PowerCompareSS . We believe that these results are
interesting and practically important. Below we mention one particular applica-
tion.
In the context of multiagent systems, the Shapley-Shubik power index is often
used to distribute players’ payoffs, i.e., each player’s payoff is proportional to
his or her power index value. Recently Bachrach and Elkind [1] asked about
186 P. Faliszewski and L.A. Hemaspaandra

the exact complexity of the following problem: Given a weighted voting game
G = (w1 , w2 , . . . , wn ; q), is it profitable for players 1 and 2 to join? That is, if
G = (w1 + w2 , w3 , . . . , wn ; q), is it the case that SS(G , 1) > SS(G, 1) + SS(G, 2).
Using Lemma 3 and the fact that #P is closed under addition we can easily show
that this problem reduces to PowerCompareSS and thus is in PP. We believe that
Bachrach and Elkind’s problem is, in fact, PP-complete and that the techniques
presented in this paper will lead to the proof of this fact. However, at this point
the exact complexity of the problem remains open.

Acknowledgments. We thank Jörg Rothe and Edith Elkind for helpful discussions
on the topic of weighted voting games and Jörg Rothe for hosting a visit during
which this work was done in part.

References
1. Bachrach, Y., Elkind, E.: Divide and conquer: False-name manipulations in
weighted voting games. In: Proceedings of the 7th International Conference on
Autonomous Agents and Multiagent Systems, May 2008 (to appear, 2008)
2. Balcázar, J., Book, R., Schöning, U.: The polynomial-time hierarchy and sparse
oracles. Journal of the ACM 33(3), 603–617 (1986)
3. Banzhaf, J.: Weighted voting doesn’t work: A mathematical analysis. Rutgers Law
Review 19, 317–343 (1965)
4. Bovet, D., Crescenzi, P.: Introduction to the Theory of Complexity. Prentice-Hall,
Englewood Cliffs (1993)
5. Deng, X., Papadimitriou, C.: On the complexity of comparative solution concepts.
Mathematics of Operations Research 19(2), 257–266 (1994)
6. Dubey, P., Shapley, L.: Mathematical properties of the Banzhaf power index. Math-
ematics of Operations Research 4(2), 99–131 (1979)
7. Dwork, C., Kumar, R., Naor, M., Sivakumar, D.: Rank aggregation methods for
the web. In: Proceedings of the 10th International World Wide Web Conference,
pp. 613–622. ACM Press, New York (2001)
8. Faliszewski, P., Hemaspaandra, L.: The complexity of power-index compari-
son. Technical Report TR-929, Department of Computer Science, University of
Rochester, Rochester, NY (January 2008)
9. Gill, J.: Computational complexity of probabilistic Turing machines. SIAM Journal
on Computing 6(4), 675–695 (1977)
10. Hemaspaandra, L., Rajasethupathy, K., Sethupathy, P., Zimand, M.: Power balance
and apportionment algorithms for the United States Congress. ACM Journal of
Experimental Algorithmics 3(1) (1998),
http://www.jea.acm.org/1998/HemaspaandraPower
11. Hunt, H., Marathe, M., Radhakrishnan, V., Stearns, R.: The complexity of planar
counting problems. SIAM Journal on Computing 27(4), 1142–1167 (1998)
12. Krentel, M.: The complexity of optimization problems. Journal of Computer and
System Sciences 36(3), 490–509 (1988)
13. Matsui, Y., Matsui, T.: NP-completeness for calculating power indices of weighted
majority games. Theoretical Computer Science 263(1–2), 305–310 (2001)
14. Papadimitriou, C.: Computational Complexity. Addison-Wesley, Reading (1994)
15. Prasad, K., Kelly, J.: NP-completeness of some problems concerning voting games.
International Journal of Game Theory 19(1), 1–9 (1990)
The Complexity of Power-Index Comparison 187

16. Shapley, L., Shubik, M.: A method of evaluating the distribution of power in a
committee system. American Political Science Review 48, 787–792 (1954)
17. Simon, J.: On Some Central Problems in Computational Complexity. PhD thesis,
Cornell University, Ithaca, N.Y, Available as Cornell Department of Computer
Science Technical Report TR75-224 (January 1975)
18. Toda, S.: PP is as hard as the polynomial-time hierarchy. SIAM Journal on Com-
puting 20(5), 865–877 (1991)
19. Valiant, L.: The complexity of computing the permanent. Theoretical Computer
Science 8(2), 189–201 (1979)
20. Zankó, V.: #P-completeness via many-one reductions. International Journal of
Foundations of Computer Science 2(1), 76–82 (1991)
Facility Location Problems:
A Parameterized View

Michael Fellows1 and Henning Fernau1,2


1
The University of Newcastle
University Drive, Callaghan, NSW 2308, Australia
[email protected]
2
Universität Trier, FB IV—Abteilung Informatik, 54286 Trier, Germany
[email protected]

Abstract. Facility Location can be seen as a whole family of problems


which have many obvious applications in economics. They have been
widely explored in the Operations Research community, from the view-
points of approximation, heuristics, linear programming, etc. We add a
new facet by initiating the study of some of these problems from a para-
metric point of view. Moreover, we exhibit some less obvious applications
of these algorithms in the processing of semistructured documents and
in computational biology.

1 Introduction
The basic task of all variants of facility location problems is the following: a
company wants to open up a number of facilities to serve their customers. Both
the opening of a facility at a specific location and the service of a particular
customer through a facility incurs some cost. The goal is to minimize the overall
cost associated to a specific way of opening up facilities and serving customers.
We will formalize this task in the following more precisely.

Definitions. We study the following problem of Facility Location and vari-


ants thereof:
Given: A bipartite graph B = (F  C, E), consisting of a set F of potential
facility locations, a set C of customers, and an edge relation E, where {f, c} ∈ E
indicates that c can be served from the facility (at) f ; and weight functions
ωF : F → N≥1 and ωE : E → N≥1 (both called ω if no confusion may arise),
k∈N
Question: Is there a set F  ⊆ F of facility locations and a set E  ⊆ E of ways
 
to serve customers such that ((1)

 ∀f ∈ F (f ∈F ⇐⇒ ∃e ∈ E (f ∈ e)), (2)
∀c ∈ C∃e ∈ E (c ∈ e), and (3) f ∈F  ωF (f ) + e∈E  ωE (e) ≤ k?
The first condition links the choice of facility locations with the choice of
customer services, while the second condition expresses the necessity that ev-
ery customer can be served through the choice of facility locations. The third

This research has been supported by the Australian Research Council through the
Australian Centre of Excellence in Bioinformatics.

R. Fleischer and J. Xu (Eds.): AAIM 2008, LNCS 5034, pp. 188–199, 2008.

c Springer-Verlag Berlin Heidelberg 2008
Facility Location Problems: A Parameterized View 189

condition formalizes that the overall costs (weights) of opening up facilities and
serving customers should be bounded by k. In the literature, the problem formu-
lated above is mostly known as uncapacitated discrete facility location
problem, see [3] for a good recent overview. Notice that we subsumed the usu-
ally separated customer demands and service costs (per demand unit) into the
weight function ωE . We will also discuss variants (e.g., allowing real number
costs) in this paper.
Alternatively, and sometimes more convenient, this problem can be formulated
in terms of a “matrix problem:”
Facility Location (matrix formulation)
(n+1)×m
Given: A matrix M ∈ N≥1 , indexed as M [0 . . . n][1 . . . m], k ∈ N
Question: Is there a set  C ⊆ {1, . . . , m}
 of columns and a function
s : {1, . . . , n} → C such that f ∈C (M [0, f ] + c:s(c)=f M [c, f ]) ≤ k?
In the matrix formulation, the columns play the role of the potential facility
locations and the rows represent the customers to be served (except for row
0). Since “missing edges” in the bipartite graph formulation can be expressed as
edges which have “infinite weight” (corresponding in turn to a weight larger than
k in the decision problem formulation), we can assume that the graph is indeed
a complete graph. Then, the matrix M [1 . . . n][1 . . . m] contains the weights of
the edges, while M [0][1 . . . m] stores the weights associated to potential facility
locations.
In the following, we will use terminology from both formulations interchange-
ably, according to convenience.

Fixed Parameter Tractability. N P-hard computational problems are ubiquitous


in economics. One approach to overcoming this difficulty is to devise algorithms
that can solve arbitrary instances of such a problem under the restriction that a
certain entity, called the parameter, is small. This concept is usually formalized
as follows: Problem instances are elements of Σ ∗ ×N, and an instance I = (w, k) is
to be decided in time O(p(|w|)f (k)), where p is a polynomial (whose degree does
not depend on the parameter k) and f is an arbitrary function. Problems that
can be solved within such a time restriction are called fixed parameter tractable,
or in F PT , for short. Equivalently, a problem is in F PT iff there exists a poly-
time computable self-reduction that maps an instance I = (w, k) onto an(other)
instance I  = (w , k  ) of the same problem whose overall size is limited by a
function g(k), i.e., |w | + k  ≤ g(k). Then, I  is also called a problem kernel for I.
There is also a complementing hardness theory in this field, basically reflected by
the so-called W-hierarchy F PT ⊆ W [1] ⊆ W [2] ⊆ . . . , where W[1]-hardness is
the notion that corresponds best to N P-hardness in classical complexity theory.
Further details can be found in the textbook [8].

Our Contribution. Facility location problems have been quite extensively studied
in the literature under many perspectives (hardness, approximation, heuristics,
etc.), and this is of course also thoroughly done within the operations research
and management science communities. Our aim is to initiate systematic research
on these problems from the viewpoint of parameterized complexity. We will show
190 M. Fellows and H. Fernau

parameterized tractability for the described problem formulation and many vari-
ants thereof, but also give some related intractability results. In doing so, we
also provide an introduction of how F PT -results can be obtained in a rather
systmematic fashion. Moreover, we will exhibit connections to many application
areas outside economics, which might stir up research between different commu-
nities on this topic.

Related Work and Variations. It is often useful to relate the costs of serving
customers with an underlying metric space, i.e., ωE (c, f ) can be described by
the distance of c and f times the demand that is incurred by c. This problem
variant is also referred as the (metric) uncapacitated facility location problem. A
more general setting is given in the capacitated facility location problem, where
each facility can only serve up to a given maximum load; then, there are again
two variants considering the possibility that a demand of one specific costumer
might be satisfied from only one facility or possibly split among different facilities
(which is of course more flexible). Good overviews of approximation algorithms
for many variants can be found in [3,13,14].

2 Facility Location Is in FPT


We describe several approaches to the statement of the headline. This can be also
taken as a short introduction to the whole field of parameterized algorithmics in
a nutshell, along with this specific example.
One of the first things that has to be decided is what parameters (as a sec-
ondary measurement of the whole input) are to be considered. In our case,
natural choices could be: (1) the number n of customers, (2) the number m of
potential facility locations, (3) an upperbound k on the cost, or (4) an upper-
bound  on the number of facilities that could be opened.
A trivial brute-force approach immediately yields:
Theorem 1. Facility Location can be solved in time O∗ (2m ).
Parameter m is not particularly interesting, as long as we are mainly interested
in classification results. For the other parameters suggested, the situation is less
clear and will be discussed in the remainder of this paper. We put special empha-
sis on k, since this is the choice of parameter that is usually considered natural
for minimization problems. The O∗ -notation suppresses polynomial factors.

2.1 Finding Reduction Rules


Reduction rules are heuristics that help shrink the search space. Often, a col-
lection of reduction rules define a so-called kernelization, i.e., a poly-time self-
reduction of a problem instance (I, k) to (I  , k  ) such that the size of the new
instance (I  , k  ) is only upperbounded by a function in k. This type of reductions
is crucial for the F PT methodology since it characterizes the class F PT . So,
the quest for finding reduction rules is essential for parameterized algorithmics.
Facility Location Problems: A Parameterized View 191

The following observation is easy but crucial:


(n+1)×m
Reduction Rule 1. If a given instance (M, k) with M ∈ N≥1 obeys n >
k, then return NO.
Lemma 1. Rule 1 is valid.
Proof. Each customer must be served. Since edges have positive integer weights,
each customer thus incurs “serving costs” of at least one unit. Hence, no more
than k customers can be served.
Lemma 2. After having exhaustively applied Rule 1, the reduced instance (M, k)
will have no more than k rows.
Notice that the preceding lemma builds a close link between the parameters k
and n.
A facility location f is described by the vector vf = M [0 . . . n][f ]. These
vectors can be compared componentwisely.
Reduction Rule 2. If for two facility locations f and g, vf ≤ vg , then delete
g; the parameter stays the same.
Lemma 3. Rule 2 is sound.
Proof. Obviously, a solution to the Rule-2-reduced instance is also a solution
to the original instance. If we had a solution S to the originally given instance
which contains a facility g and there is another facility f such that vf ≤ vg , then
a solution S  obtained from S by choosing facility f instead of g (and choosing to
serve any customer served by f in S to be served by g in S  ) will also be a valid
solution which comes at no greater cost. This way, we can gradually transform
S into a solution which is also a valid solution to the Rule-2-reduced instance
and has no larger costs than S.

2.2 Kernelization through Well-Quasi Orderings


Central to the complexity class F PT is the concept of kernelization, since it
characterizes F PT . We first provide a “quick classification” of Facility Loca-
tion in F PT , based on well-quasi orderings.
Theorem 2. Facility Location is fixed-parameter tractable.
Proof. We show that, after having exhaustively applied Rules 1 and 2, we are
left with a problem of size f (k). Let (M, k) be reduced with respect to Rules 1
and 2. By Lemma 2, we know that M contains no more than k rows, since
(M, k) is Rule-1-reduced. Each facility is therefore characterized by a (k + 1)-
dimensional vector. Since (M, k) is Rule-2-reduced, all these vectors are pairwise
uncomparable. According to Dickson’s Lemma they could be only finitely many,
upperbounded by some function g(k). Hence, M is a matrix with no more than
(k + 1)g(k) entries.
The function f (k) derived for the kernel size in the previous theorem is huge,
yet it provides the required classification.
192 M. Fellows and H. Fernau

2.3 Kernelization Refinements


To obtain a better algorithm, observe that a solution can be viewed as a partition
of the set of all customers into groups such that customers within the same
group get served by the same facility. In actual fact, a solution specified by the
selected facilities and selected serving connections can be readily transformed
into this sort of partition. Also the converse is true: given a partition of the
set of customers, we can compute in polynomial time which the cheapest way
to serve this group by a certain facility is, so that an optimal solution (given
the mentioned partition) in the sense of specifying the selected facilities and the
chosen serving connections can be obtained.
This model immediately allows to derive the following result:
(n+1)×m
Lemma 4. On an instance (M, k), where M ∈ N≥1 , Facility Location
can be solved in time O(k k p(g(k)) + nm), where p is some polynomial and g(k)
bounds the number of facilities.
Proof. The kernelization rules 1 and 2 can be applied in time O(nm). Then, we
have to check all partitions; there are actually o(k k ) many of them (more pre-
cisely, this is described by Bell’s number whose asymptotics is due to de Brujn
(1958), see http://mathworld.wolfram.com/BellNumber.html). For each par-
tition, we have to compute its cost incurred by the assumption that each group
in the partition is served by one facility. Hence, per partition p(g(k)) computa-
tions have to be performed.
Still, this algorithm is practically useless due to the huge constants. Let us now
develop a better algorithm. Let us first focus on kernelization.
Reduction Rule 3. Consider an instance ((B, ωE , ωF ), k) of Facility Loca-
tion. The following modifications will not affect the parameter.
Forall facilities f do
(1) If ωF (f ) ≥ k, then delete f .
Forall customers c do
(2) If ωF (f ) + ωE (c, f ) > k + 1, then set ωE (c, f ) := k + 1 − ωF (f ).
The following is obvious.
Lemma 5. Rule 3 is sound.
(n+1)×m
Lemma 6. An instance (M, k), M ∈ N≥1 , of Facility Location obeys
nm ≤ (k + 1)k+2 if it is reduced with respect to Rules 1, 2 and 3.
Proof. Let (M, k) be such a reduced instance. Due to Rule 1, there are at most k
customers. Due to Rule 3, there are at most (k + 1)k+1 different facility vectors.
Du to Rule 2, vectors of different facilities must be different. Hence, there are at
most (k + 1)k+1 facilities. Since each facility vector has at most k + 1 entries, M
has no more than (k + 1)k+2 many entries.
The estimate of the preceding lemma is probably not very sharp, since Rule 2
was used in a very rough way; the number of facilities is rather upperbounded by
the maximum number of antichains in the space of (k + 1)-dimensional vectors
with entries from 1 to k + 1.
Facility Location Problems: A Parameterized View 193

2.4 Improving on Brute Force by Dynamic Programming


The idea of “dynamic programming on subsets” improves the running time.

Algorithm 1. A dynamic programming algorithm for facility location: FLdp


Require: a bipartite graph B = (F  C, E) with weights ωE and ωF
Ensure: an implicit facility location strategy incurring minimum weight
if |C| > k then
return NO;
s(∅) := 0;
for all X ⊆ C do
compute os(X);{in time O(|X| · |F |)}
for i := 1, . . . , |C| do
for all X ⊆ C, |X| = i do
s(X) := min∅Y ⊆X (os(Y ) + s(X \ Y ))
{Every customer belongs either to Y , X \ Y or to C \ X;}
{Convention: min∅ · · · = ∞.}

Theorem 3. Facility Location can be solved in time O(2k m+3k ) on a given


(n+1)×m
instance (M, k) with M ∈ N≥1 .

Proof. We start with Rule 1. In a preprocessing phase, we compute the cost


incurred by a certain set of customers when being served by a single facility,
storing the results in a table “one-serve” (os) with 2k entries. This also includes
the costs for opening up that facility. Then, we can compute the minimal costs of
serving a certain group of customers by some facilities by dynamic programming,
combining two subsets at a time. If we have stored the results of the preprocessing
in table os, each step in the dynamic programming will take only constant time,
so that we arrive at the following formula for dynamic programming:

s(X) := min (os(Y ) + s(X \ Y )) (1)


∅Y ⊆X

This amounts in O(3k ) operations. Namely, there are basically three possilities
for a customer: it either belongs to Y , X \ Y or to C \ X.

Remark 1. Notice that the bound k > n immediately implies an O∗ (3n ) estimate
for Alg. 1. Alternatively, we can first kernelize (with respect to k) and then run
Alg. 1. on the kernel, which would amount in an O∗ ((2k)k ) estimate due to
Lemma 6.

2.5 Further Improvements


In a very recent paper, A. Björklund, T. Husfeldt, P. Kaski and M. Koivisto [1]
described how to further speed up dynamic programming on subsets in just
a situation as encountered with our problem. Their approach is based on fast
194 M. Fellows and H. Fernau

subset convolution, also known as (fast) Möbius transform. More specifically,


the recursion from Eq. (1) can be seen as a subset convolution (in the min-
sum semiring). Let us shortly explain this approach (with n customers and m
facilities). By computing first the ranked Möbius transform (which basically
takes 2n steps), this convolution operation can be performed in the transformed
space with 2n + 1 operations, and the inverse Möbius transform is of similar cost
as the Möbius transform itself.
Corollary 1. If all the integer weights lie between 1 and N for a given in-
stance of Minimum Facility Location, the problem can be solved in time
O(2n n3 (nm)2 log(N )).
The assumption of a bounded range of integer weights is not so unrealistic in
many scenarios; for example, in our parameterized setting, we can assume (by
our reduction rules) that those weights lie between 1 and k + 1.

3 Variants of Facility Location


Median / Means Problem. The k-median problem and the k-means problem
are defined just as the Facility Problem, except for the fact that there are no
costs for opening up facilities (and mostly, it is required that exactly k facilities
should open). Means and median problems only differ in the metric, i.e., the way
point distances are measured (sums of squares of distances vs. sums of distances).
All corresponding problems are N P-hard, even for Euclidean spaces. Obviously,
these problems have quite a geometric flavor. Again, it is not hard to see by a
simple analysis of our results of the preceding section that also the k-median
problem and the k-means problem are in F PT : namely, even the common
generalization of these problems, viewed as variants of Facility Location,
where the opening cost of a facility might be zero, is in F PT .
Many approximation algorithms are known for this problem, see [5]. Notice
that often (also there) it is assumed that we actually deal with a something
like the uncapacitated (metric) facility location problem. This means that the
costs for connecting facilities and customers are distances in a metric space. If in
addition, the facility locations are not explicitly distinguished from the customer
location, but should be rather selected in a first step, this models the problem of
finding a minimum cost clustering in a metric space. Notice that our preceding
arguments also provide F PT -membership in this case.
Rational Weights. In all versions discussed up to now, including the one
introduced in the very beginning, one could also allow rational (or even “real-
number”) weights bigger than or equal to one (modelling actual costs more real-
istically). Apart from numerical considerations, this would not change anything
except for the Section dealing with the fast subset convolution; that approach
would not work here.

Cheap Serves. In view of our discussion it might be also an idea to allow for
(some) services of zero cost. Irrespectively of whether or not zero costs for open-
ing up facilities are allowed, the complexity picture now changes dramatically:
Facility Location Problems: A Parameterized View 195

Theorem 4. Facility Location, parameterized by k, becomes W[2]-complete


when zero weight services are allowed.

Proof. (Sketch) Consider the special case when opening any facility costs one
unit, and all services are for free. Then, the problem corresponds to selecting
(at most) k of the facility to serve all customers. In more graph-theoretic form,
this exactly corresponds to red-blue dominating set, which in turn can be
seen to be equivalent to hitting set [8]. Hence, any hitting set instance can
be seen as a special instance of the variant of Facility Location that we are
considering. Since hitting set is well-known to be W[2]-hard, this property
transfers to our problem at hand.
Conversely, membership in W[2] can be seen, e.g., by showing how to solve our
problem with a short multi-tape nondeterministic Turing machine, see [4].

A quick analysis of the proof of the previous theorem yields:

Theorem 5. Facility Location, parameterized by , is W[2]-complete.

4 Applications: The MDL Principle

Facility location and its variants have numerous applications, even when
only allowing integer costs. We shall now describe some of the less obvious ones
that one way or the other apply the Minimum Description length (MDL) prin-
ciple.

4.1 Automizing the Production of XML Documents


The web standard exchange format XML is (possibly first) described in: Ex-
tensible Markup Language (XML) 1.0, T. Bray, J. Paoli, and C. M. Sperberg-
McQueen, 10 February 1998, available at http://www.w3.org/TR/REC-xml. In
his notes on this standard (see www.xml.com/axml/notes/Any1.html), T. Bray
wrote, commenting on the construction of document type descriptors (DTD), a
kind of context-free grammars used to specify syntactic characteristics of XML
documents:
“Suppose you’re given an existing well-formed XML document and you want to
build a DTD for it. One way to do this is as follows:
1. Make a list of all the element types that actually appear in the document, and build
a simple DTD which declares each and every one of them as ANY. Now you’ve got a
DTD (not a very useful one) and a valid document.
2. Pick one of the elements, and work out how it’s actually used in the document.
Design a rule, and replace the ANY declaration with a . . . content declaration. This, of
course, is the tricky part, particularly in a large document.
3. Repeat step 2, working through the elements one by one, until you have a useful
DTD.”
196 M. Fellows and H. Fernau

Hence, various systems—usually called DTD generators—were designed to


automize the process of designing DTD’s, best from known examples. The main
problem is that of generalization: when given a number of sample documents
which should fit the envisaged DTD, at what “moment” and in which way is
the DTD generator supposed to switch from a mode where it only produces a
trivial DTD (this could be either a very specific one that can only parse the given
samples or a very general one, as attempted by Bray with his ANY declaration
proposal) to a mode where it actually tries to cleverly guess the syntactical
structure in the given documents. Since most DTD generators internally work
from “most specific” to “general,” this process of making “intelligent guesses” is
known as generalization.
Garofalakis et al. proposed for this purpose the system XTRACT [11]. This
DTD generator is based on the Minimum Description Length (MDL) principle,
which can be viewed as a formalization of Occam’s razor. In actual fact, this
principle in connection with grammar induction (DTD generators are a special
case of this field) was discussed earlier by D. Conkley and I. H. Witten in [7].
The length of a description consists of two parts:
1. the length of the theory (in bits) and
2. the length of the data (in bits) when encoded with the help of the theory.
The system XTRACT uses MDL to evaluate regular expression hypotheses.
This yields the combinatorial problem MDL-optimal-coding:
Given: a set R = {r1 , . . . , rn } of regular expressions (over the basic alphabet
Σ) and a set of strings S = {s1 , . . . , sm } ⊂ Σ + , k ∈ N
Question: Is it possible to find a subset R of R such that
 
|c(r)| + |c(s|R )| ≤ k ?
r∈R s∈S

The coding function c is described in detail in [11].


As an example (taken from [11]), consider the strings

S = {ab, abab, ac, ad, bc, bd, bbd}.

As hypotheses “covering” some of these examples, we consider, besides the ele-


ments from S itself, the following regular expressions

{(a|b)∗ , b∗ d, b∗ e, b∗ (d|e), (a|b)(c|d), (ab)∗ }.

Graphically, this covering relation can be depicted as a bipartite dominating set


problem, see Fig. 1. To give an idea how the coding function c works, consider the
three colored expressions. For example, to describe abab by the selected theory,
i.e., by {(ab)∗ , b∗ (d|e), (a|b)(c|d)}, we need to describe that we take the first (out
of the three expressions) and that we use two iterations. Likewise, bbbbe can be
described by the second expression using four iterations.
Supplementing [11], it has been shown:
Theorem 6. (see [10]) MDL-optimal-coding is N P-complete.
Facility Location Problems: A Parameterized View 197

ab
abab
ac
ad ab
bc abab
bd ac
bbd ad
bbbbe bc
(ab)* bd
(a|b)* bbd
b*d bbbbe
b*e
b*(d|e)
(a|b)(c|d)
Fig. 1. How to apply the MDL principle

Garofalakis et al. propose using the related facility location problem, using the
following translation: (a) place facilities (in our case: the selected theory) (b)
into some locations (here: the regular expressions to choose from) (c) in order
to minimize the costs incurred by the facilities (here: the number of bits needed
to encode the theory) and by serving a given set of customers (in this case: the
number of bits for encoding the given strings).
Our results imply that we can solve MDL-optimal-coding as a parameter-
ized problem to optimality. This is particularly important if MDL is actually
used to evaluate hypotheses. Using here algorithms which only provide a loga-
rithmic approximation guarantee will eventually mean that hypotheses will be
rejected or preferred not according to their quality but according to the “quality”
of the evaluation algorithm.
Since the number of bits (the costs) could be seen to be bounded by the input
length itself, and all these numbers are integers, we can infer:
Corollary 2. MDL-optimal-coding can be solved in time O∗ (2n ) (or also
O∗ (2k )), where n denotes the number of input strings to be coded.
Observe that n < m in this particular application, since the input strings themselves
are also always seen as possible regular expressions. So, the time bound derived by
the preceding corollary is always superior to the trivial approach from Thm. 1.
Notice that similar methods are also used for data compression purposes.
There, the “theory part” has sometimes to be explicitly encoded (as side in-
formation) and sometimes it is statically known to the (de)coder, which means
that the “costs” of “opening up a facility” are zero. Hence, we face (again) the
median problem discussed in Sec. 3, so that this problem is also parameterized
tractable, when parameterized by an upper bound on the number of bits used
for the compressed data.

4.2 Computational Biology


Koivisto et al. described in [12] a method of applying ideas originating in the
minimum description length principle to identify so-called haplotype blocks and
198 M. Fellows and H. Fernau

to compare the strength of block boundaries. For our exposition, it is sufficient


to know that intuitively, “a haplotype block can be considered to represent a
sequence of ordered markers such that, for those markers, most of the haplotypes
in the population cluster into a small number of classes. Each class consists of
identical or almost identical haplotypes.” (Quoted from [12].)
They propose a dynamic programming algorithm for the problem of comput-
ing an optimal block structure and then to estimate the probabilities of each
block boundary. This method relies on knowing a certain cost function whose
computation actually is N P-hard. However, this cost function (measuring the
quality of the clusters/blocks) can be modeled with a k-means problem and
hence can be solved by the methods described in this paper. Since the involved
weights grow at most exponential with the input length (as it appears to be
generally true when dealing with weights in facility location problems that are
derived from the MDL scenario), the fast subset convolution method can be used
to further reduce the run times.
Again, there might be a broader connection to data compression; there, good
k-means algorithms are crucial, e.g., in vector compression. The popular Lloyd
algorithm (and variants thereof) may get stuck at local minima, so it might
sometimes be a good idea to look for global maxima. Notice that exact algo-
rithms might be a sensible approach here due to the slow convergence of Lloyd’s
algorithm in practical situations, see [9].

5 Conclusions and Further Research

We have started a systematic study of facility location problems and variants.


However, although this start looks quite promising, many things are still to be
done. We sketch some of these in the following. (1) Even though many problems
appear to be in F PT , the algorithms we provided can be only seen as a starting
point. Are there better algorithms for these important problems? (2) What about
developing exact algorithms, possibly measured in N = n + m. Notice that the
O∗ (2n )- and O∗ (2m )-algorithms shown in this paper can be easily abused in a
√ N
WIN-WIN scenario to derive an O∗ ( 2 )-algorithm. (2) It is not quite clear if
the basic assumption in parameterized algorithmics, namely, that the parameter
is only moderately large, is met in this set of problems. Are there different
parameterizations that are more suitable, at least in some applications? (3) Just
to give two examples of a different, possibly additional parameter: (3a) In [6],
a modified scenario was considered where some “outliers” were permitted, i.e.,
customers that could not be served (at decent costs). This could deliver a natural
small parameter. (3b) In many situation, a company will already have opened a
number of facilities, and the question is how to optimally improve the situation
for the customers (and the company’s budget) by opening up a small number of
new facilities.
Another aspect that has been neglected so far is geometry. Can we exploit
metricity of costs to obtain better parameterized algorithms, as has been done
in the case of approximation algorithms?
Facility Location Problems: A Parameterized View 199

It is quite natural to assume that only (relatively) few facilities are within the
“natural reach” of a single customer (it might be different from the viewpoint of
the facilities, though). This implies a sort of degree-restriction on the side of the
customer (in the underlying bipartite graph) which might yield a better runtime
estimate of the dynamic programming algorithm, see [2].

References
1. Björklund, A., Husfeldt, T., Kaski, P., Koivisto, M.: Fourier meets Möbius: fast
subset convolution. In: Symposium on Theory of Computing STOC, pp. 67–74.
ACM Press, New York (2007)
2. Björklund, A., Husfeldt, T., Kaski, P., Koivisto, M.: Trimmed Möbius inversion
and graphs of bounded degree. In: Symposium on Theoretical Aspects of Computer
Science STACS, IBFI, Schloss Dagstuhl, Germany, pp. 85–96 (2008)
3. Bumb, A.: Approximation algorithms for facility location problems. PhD Thesis,
Univ. Twente, The Netherlands (2002)
4. Cesati, M.: The Turing way to parameterized complexity. Journal of Computer
and System Sciences 67, 654–685 (2003)
5. Charikar, M., Guha, S., Tardos, E., Shmoys, D.S.: A constant-factor approximation
algorithm for the k-median problem. Journal of Computer and System Sciences 65,
129–149 (2002)
6. Charikar, M., Khuller, S., Mount, D.M., Narasimhan, G.: Algorithms for facility
location problems with outliers. In: Symposium on Discrete Algorithms SODA, pp.
642–651. ACM Press, New York (2001)
7. Conklin, D., Witten, I.H.: Complexity-based induction. Machine Learning 16, 203–
225 (1994)
8. Downey, R.G., Fellows, M.R.: Parameterized Complexity. Springer, Heidelberg
(1999)
9. Du, Q., Emelianenko, M., Ju, L.: Convergence of the Lloyd algorithm for computing
centroidal Voronoi tessellations. SIAM Journal on Numerical Analysis 44, 102–119
(2006)
10. Fernau, H.: Extracting minimum length Document Type Definitions in NP-hard.
In: Paliouras, G., Sakakibara, Y. (eds.) ICGI 2004. LNCS (LNAI), vol. 3264, pp.
277–278. Springer, Heidelberg (2004)
11. Garofalakis, M., Gionis, A., Rastogi, R., Seshadri, S., Shim, K.: XTRACT: learn-
ing document type descriptors from XML document collections. Data Mining and
Knowledge Discovery 7, 23–56 (2003)
12. Koivisto, M., Manila, H., Perola, M., Varilo, T., Hennah, W., Ekelund, J., Lukk,
M., Peltonen, L., Ukkonen, E.: An MDL method for finding haplotype blocks and
for estimating the strength of block boundaries. In: Pacific Symposium on Biocom-
puting 2003 (PSB 2003), pp. 502–513 (2002),
http://psb.stanford.edu/psb-online/proceedings/psb03/
13. Shmoys, D.B., Tardos, É., Aardal, K.: Approximation algorithms for facility loca-
tion problems (extended abstract). In: Symposium on Theory of Computing STOC,
pp. 265–274. ACM Press, New York (1997)
14. Young, N.E.: k-medians, facility location, and the Chernoff-Wald bound. In: Sym-
posium on Discrete Algorithms SODA, pp. 86–95. ACM Press, New York (2000)
Shortest Path Queries in Polygonal Domains

Hua Guo, Anil Maheshwari, and Jörg-Rüdiger Sack

School of Computer Science, Carleton University, 1125 Colonel By Drive, Ottawa,


K1S 5B6, Canada
[email protected], {anil,sack}@scs.carleton.ca

Abstract. We consider shortest path queries in a polygonal domain P


having n vertices and h holes. A skeleton graph is a subgraph of a Voronoi
diagram of P . Our novel algorithm utilizes a reduced skeleton graph of P
to compute a tessellation of P . It builds a data structure of size O(n2 ) in
O(n2 log n) time to support distance queries for any pair of query points
in P in O(h log n) time.

1 Introduction
We consider the All Pairs Query (APQ) problem in a polygonal domain P which
is a scene scattered with h polygonal obstacles (holes) with disjoint interiors. P
has totally n obstacle vertices. Paths that avoid the interior of obstacles are
called obstacle-avoiding paths. We focus on finding a shortest obstacle-avoiding
path (i.e., shortest path) and/or distance between two arbitrary query points in
P . The length of the shortest path between the query points is called distance
between them. If one query point is pre-selected, then the APQ problem is
simplified to the Single Source Query (SSQ) problem. To place our work in the
context of the literature, we state some relevant results next.
Solving the SSQ and APQ problem in the presence of multiple obstacles has
proven to be challenging. In a polygonal domain P with h holes having n obstacle
vertices, Hershberger and Suri [1] presented an optimal algorithm for comput-
ing a shortest path map (SPM) from a fixed point to all other points in P in
O(n log n) time and space using the continuous Dijkstra paradigm. The SPM
can be used to answer single-source shortest path queries to any destination in
O(log n) time. Kapoor et al. [2] proposed an algorithm which computes a SPM
for a given source in O(n + h2 log n) time using visibility graphs.
The APQ problem in polygonal domains is considered to be more challeng-
ing than in the case of simple polygons. Only a few results are known for this
problem instance. For any pair of query points a and b in a polygonal domain P ,
Chen et al. [3] have shown that using O(n2 ) space and O(n2 log n) time in pre-
processing, one can answer an APQ query in O(min(Qa , Qb ) log n) time, where
Qa (Qb ) is the number of vertices visible from a (b, respectively). Chiang and
Mitchell [4] proposed an algorithm which uses O(n11 ) space and preprocessing
time to construct a data structure supporting optimal O(log n) time queries. Al-
ternatively, their algorithm requires O(n10 log n) space and preprocessing time

Research supported by NSERC and SUN Microsystems.

R. Fleischer and J. Xu (Eds.): AAIM 2008, LNCS 5034, pp. 200–211, 2008.

c Springer-Verlag Berlin Heidelberg 2008
Shortest Path Queries in Polygonal Domains 201

to support O(log2 n) time queries. They also sketched strategies to make their
algorithms sensitive to h but incur significant preprocessing cost.
Throughout the paper, let P be a polygonal domain having n vertices and h
holes. Let (a, b) be any pair of points in P . Let π(a, b) be a shortest path between
a and b in P and dist(a, b) be the length of π(a, b) (i.e., distance) between them.

New Results: We present a novel algorithm for solving the APQ problem for
P in O(h log n) query time. Our algorithm builds a data structure of size O(n2 )
in O(n2 log n) time. In particular,
1. Using a reduced skeleton graph of P as a tool, we tessellate P into a set
of triangles and simple polygons. The merit of our approach is that (i) the
reduced skeleton graph is static and it captures the topology of P ; (ii) this
tessellation of P is unique.
2. Our algorithm is sensitive to the number, h, of holes.
Our results improve the previous result by Chen et al. [3] in the following
way. Our algorithm is sensitive to the number of holes. In particular, it achieves
an O(log n) query time for simple polygons or polygonal regions with a constant
number of holes. Chen et al.’s algorithm [3] is not sensitive to the number of holes,
but depends on the minimum number of vertices inside the visibility regions of
the two query points. The preprocessing time and space of our algorithm matches
the result in [3].

2 Preliminaries
In this section, we review some notation and theorems used.

Polygonal Domain: A polygonal domain, P , having n vertices and h holes, is a


nonempty, bounded, multiply connected region whose boundary, ∂P , is a union
of n open line segments, called edges, and their endpoints, called vertices (cf. Fig.
2). The boundary ∂P consists of h + 1 closed polygonal cycles. The complement
of the set of holes inside P is the free space. A vertex of the boundary ∂P is
called convex if the internal angle (in the free space) at the vertex is less than π
and is called reflex otherwise.

Funnels: As appeared in, e.g., [5], a funnel represents shortest paths from a
source point s to points on a polygonal edge or diagonal associated with the
funnel. Let l = pi pj be a diagonal in a simple polygon Q (Fig. 1 (a)). The union
f(s, l) = π(s, pi )∪π(s, pj ) is called the funnel associated with the diagonal l in Q.
The shortest path π(s, pi ) may share a subpath with the shortest path π(s, pj ).
At some vertex v, called apex, the two paths part and proceed separately to their
respective destinations. If v is not s, the subpath from s to v is called string of
the funnel. For any point q ∈ l, there is a unique tangent from q to the portion of
the funnel between the apex and an endpoint of l. Let pi pj pk be a triangle in
Q (Fig. 1 (b)). Let l = pi pj , l1 = pi pk and l2 = pk pj . The funnel f(s, l) splits into
two funnels when it reaches the vertex pk , i.e., f(s, l)∪pi pj pk = f(s, l1 )∪f(s, l2 ).
202 H. Guo, A. Maheshwari, and J.-R. Sack

The funnel f(s, l) is closed if no point on l is visible from the source s. Otherwise,
it is open.

Hourglass: Let p and q be any two points in Q. The triangles (assume they
are distict) containing p and q in the underlying triangulation associated with Q
determine the sequence of diagonals crossed by a shortest path π(p, q) between
p and q. These diagonals that each split Q into two parts, one containing p
and the other q, are called separating diagonals for p and q [5]. A shortest path
π(p, q) crosses these separating diagonals exactly once in a particular order.
An hourglass represents all shortest paths between two diagonals of Q [5]. Let
li = pi pi+1 , lj = pj pj+1 be two diagonals in the triangulation of Q, labeled so
that pi , pj , pj+1 , pi+1 is a subsequence of the vertex sequence of Q. The union
of the two shortest paths π(pi , pj ) and π(pi+1 , pj+1 ) is the hourglass, H(li , lj ),
associated to Q for li and lj (cf. Fig. 1 (c)). Let lp and lq be the first and last
diagonals in the sequence of separating diagonals between p and q. Given the
hourglass H(lp , lq ), the shortest path π(p, q) can be computed via tangents to the
hourglass that pass through p and q [5]. Consider p and q as length zero diagonals.
Concatenating the hourglasses H(p, lp ), H(lp , lq ) and H(lq , q) produces a single
closed hourglass which is only a string. The string is the shortest path between
p and q.

pk
Q
pi
Q p i l1 p k Q pj
pi
l2 lj
v l v l li pj+1
s s pi+1
pj pj

(a) (b) (c)

Fig. 1. An illustration of (a) a funnel f(s, l); (b) a funnel f(s, l) splitting into funnels
f(s, l1 ) and f(s, l2 ); (c) an hourglass H(li , lj ) between diagonals li , lj

Conventionally, hourglasses (resp., funnels) as defined in a simple polygon


represent global shortest paths between two diagonals (resp., from a source to a
diagonal) [5]. Next, we define hourglasses (resp., funnels) in a polygonal domain
P . Given a subpolygon Q of P and two diagonals li = pi pi+1 and lj = pj pj+1 in
Q, where Q is a simple polygon, an hourglass represents all local shortest paths
within Q between li and lj . We denote it by H(li , lj ) in Q for li and lj if no
ambiguity arises. A funnel represents local shortest paths within Q from a source
point s to points on a polygonal edge or diagonal associated with the funnel.
Here, the string, i.e. the subpath from the source s to the apex v in Q, is part
of the funnel. An open funnel has an empty string. A funnel with a non-empty
string is a closed funnel.

Voronoi diagram: We define the Voronoi diagram of a polygonal domain P


next (cf. [6]). The vertices and edges of P are the sites of the Voronoi diagram
of P . Let S = {v1 , v2 , . . . , vn ; e1 , e2 , . . . , en } be these sites. The Voronoi cell
Shortest Path Queries in Polygonal Domains 203

corresponding to a site si ∈ S, denoted by V(si ), 1 ≤ i ≤ n, is the set of all points


closer to si than to any other sites in S. It has been shown (cf. [6]) that in this
setting, a Voronoi cell is bounded by a connected subset of lines, half-lines, line
segments and parabolic arcs. A Voronoi vertex is a point equidistant from three
or more sites. A Voronoi edge consists of the loci of all points equidistant from
two sites. Voronoi edges of P are connected line segments and parabolic arcs.
Let dist(p, q) be the Euclidean distance between two points p and q. Formally, a
Voronoi diagram of a polygonal domain P , denoted by Vor(P), is defined as the
subdivision of the free space of P into Voronoi cells, one for each site in S, with
the property that each point p lies within the cell corresponding to a site, si , if
and only if dist(p, si ) < dist(p, sj ) for each site sj ∈ S, sj = si (cf. [6]).

0000000 1111111
1111111 0000000
1111111 1111111
0000000 0000000
00000000000000
11111111111111
0000000
1111111
0000000 1111111
1111111 00000000000000
11111111111111
0000000 0000000
1111111
0000000
1111111 00000000000000
11111111111111
0000000
1111111
00000000000000
11111111111111
0000000
1111111
0000000 1111111
1111111
0000000
1111111 00000000000000
11111111111111
0000000
00000000000000
11111111111111
0000000
1111111 0000000
1111111
00000000000000
11111111111111
0000000
1111111
0000000
1111111 00000000000000
11111111111111
0000000
1111111
0000000 1111111
1111111 00000000000000
11111111111111
0000000
00000000000
11111111111 00000000000000
11111111111111
0000000
1111111
00000000000000
11111111111111
0000000
1111111
000000000001111111
11111111111
00000000000 11111111111111
11111111111
00000000000
11111111111
00000000000000
0000000
00000000000000
11111111111111
00000000000
11111111111 00000000000000
11111111111111
00000000000 11111111111111
11111111111
00000000000
11111111111
00000000000000
00000000000000
11111111111111
00000000000
11111111111 00000000000000
11111111111111
00000000000 11111111111111
11111111111
00000000000
11111111111
00000000000000
00000000000000
11111111111111
00000000000
11111111111 00000000000000
11111111111111
00000000000 11111111111111
11111111111 00000000000000
00000000000000
11111111111111
00000000000
11111111111
00000000000
11111111111 00000000000000
11111111111111
00000000000
11111111111 00000000000000
11111111111111
00000000000
11111111111 00000000000000
11111111111111
00000000000000
11111111111111
00000000000
11111111111 00000000000000
11111111111111
00000000000
11111111111 00000000000000
11111111111111
00000000000
11111111111
00000000000
11111111111 00000000000000
11111111111111
00000000000
11111111111 00000000000000
11111111111111
00000000000000
11111111111111
00000000000
11111111111
00000000000 11111111111111
11111111111 00000000000000
00000000000000
11111111111111
00000000000000
11111111111111

Fig. 2. An illustration of a polygonal domain P , the skeleton graph (thin, solid lines
and parabolic arcs) and the Voronoi diagram of P (thin, dotted and solid lines and
parabolic arcs). Edges of P are solid segments. The shortest path π(a, b) between query
points a and b passes through a sequence of reflex vertices.

Theorem 1. [7] Given a polygonal domain P having n vertices and h holes, the
Voronoi diagram of P consists of at most n + r + 2h − 2 Voronoi vertices and at
most 2(n + r) + 3h − 3 Voronoi edges, where r is the number of reflex vertices of P .

3 A Tessellation of P
In this section, we present a tessellation of P that is required in our algorithm.
Using a so-called reduced skeleton graph of P , we decompose P into a set of
triangles and simple polygons.
A skeleton graph, Gs = (Vs , Es ), of P is a subgraph of the Voronoi diagram
of P , derived by removing all Voronoi edges incident to vertices of P from the
diagram. Nodes and edges of a skeleton graph, called skeleton nodes and skeleton
edges, respectively, are Voronoi vertices and edges. We assume that no four
vertices of P are co-circular. Skeleton nodes are of degrees 1, 2 or 3. Given a
204 H. Guo, A. Maheshwari, and J.-R. Sack

skeleton graph Gs , a path joining a pair of skeleton nodes, (si , sj ), of Gs , is


called a skeleton path between si and sj . We denote it by φ(si , sj ). For any pair
of points, (a, b), in P , let as and bs be the points closest to points a and b,
respectively, on skeleton edges of Gs . A skeleton path φ(a, b) between a pair of
points (a, b) in P is defined by the skeleton path φ(as , bs ) between as and bs in
Gs . There exists a skeleton path for any pair of points in P . The orientation of
φ(a, b) is defined as from a to b along φ(a, b) if a and b are incident to φ(a, b),
or from as to bs otherwise.
We construct a reduced skeleton graph next. In Step 1, repeatedly delete each
degree 1 node of a skeleton graph Gs with its incident edge until there are
no degree 1 nodes left. In Step 2, for each degree 2 node, replace it and its
two incident edges with a single edge inside the free space with respect to the
removed skeleton edges, unless it is the only remaining node of the graph. The
resulting graph is a reduced skeleton graph of P possibly with cycles, which has
h + 1 faces. All nodes remaining in a reduced skeleton graph are of degree 3.
Due to planarity, the reduced skeleton graph has complexity O(h). Details with
respect to this will be provided in the full version of this paper.
For each skeleton node of a reduced skeleton graph Gr , there exists a triangle
whose vertices are from the sites (i.e., points/vertices of holes) associated with
the skeleton node and whose edges (diagonals) do not intersect the edges of P .
Each edge of Gr corresponds to a simple polygon in the free space of P . Using
a reduced skeleton graph Gr as a tool, we decompose the free space of P into
regions, i.e., a set of non-overlapping triangles and simple polygons. Edges of
each triangle are called gates, shared between the triangle and its neighboring
simple polygons. Two gates are neighbors if they are incident to the same region.
We compute a tessellation of P next. Let P  be a tessellation of P . First, for
each node of Gr , construct its corresponding triangle in the free space of P .
Add the triangle to P  . Second, for each edge e = (u, v) of Gr , let u and v
be the triangles corresponding to nodes u and v, respectively; identify a simple
polygon, Pe , corresponding to e such that Pe neither overlaps with u nor with
v . Identify the gates shared between Pe and u and v . Add Pe to P  . We
summarize the above in the next lemma.
Lemma 1. The free space of P can be tessellated into a set of non-overlapping
triangles and simple polygons in O(n) time. The complexity of a tessellation P 
is bounded by O(h).
A skeleton graph of P not only captures the topology of P but also facilitates the
tessellation of P . A different tessellation of P based on the dual graph of a tri-
angulation of P appeared in [2,4]. Our approach constructs a unique tessellation
of P as apposed to the methods described in [2,4].

4 Local Shortest Paths and Critical Sites

Let Gs be a skeleton graph of P . The skeleton graph Gs is a graph possibly


containing cycles. Let i ∈ {a, b}, where a and b are query points. Point i is
Shortest Path Queries in Polygonal Domains 205

contained in a region, denoted by R(i), of the tessellation P  . The region R(i) is


either a triangle or a simple polygon of P  . A shortest path between a and b in
P may not be unique. There could be many local shortest paths between a and
b in P (as defined below) such that each local shortest path intersects a unique
sequence of regions of the tessellation.
We define local shortest paths next. A skeleton path φ(a, b) intersects a se-
quence of diagonals in the underlying triangulation of P . There exists a path
joining a and b in P such that the path intersects these diagonals in sequence.
We call such path with the minimum Euclidean length a local shortest path con-
necting a and b associated with the skeleton path φ(a, b). We denote the path by
πφ (a, b). A region in P with respect to a skeleton path φ is the union of Voronoi
cells associated with the skeleton path φ. Walking along the skeleton path φ,
we encounter these associated Voronoi cells in an order. There exists a unique
order for all left Voronoi cells located to the left of φ and right cells to the right
of φ, respectively. We can define an order for left and right cells associated with
φ. The reflex-vertex sites associated with the cells are called associated vertices
corresponding to the skeleton path. Given an orientation of φ, there exists a
unique order for all associated vertices for φ. Vertices on a local shortest path
πφ (a, b) must be associated vertices for the skeleton path φ(a, b). The sequence
of vertices on a local shortest path, πφ (a, b), with respect to a skeleton path
φ(a, b) is a subsequence of the associated vertices related to the skeleton path
φ(a, b). Any vertex on a local shortest path is visible only to the vertices imme-
diately before and after it. Two vertices on a local shortest path that are not
successively adjacent can not see each other.
For simplicity, let us assume that a pair of points a and b are invisible to
each other. In case that a and b are mutually visible, the straight line segment
ab joining a and b is the (global) shortest path between them. We address this
case in Section 5. Given an orientation of a skeleton path φ(a, b), the last visible
vertex from a, called critical site, divides the sequence of associated vertices
corresponding to φ(a, b) into two ordered sets containing the vertices that are
visible from a and those that are invisible from a. The visible set from a may
contain associated vertices that are invisible from a, e.g., vertices located in a
pocket. Since points a and b are invisible to each other, there must exist one
critical site for a with respect to each skeleton path φ(a, b). Next, we present the
key lemmas of this section.

Lemma 2 (Critical Site). The local shortest path πφ (a, b) must pass through
a critical site for the point a.

Lemma 3. Let fφ (s, l) be a closed funnel from the source s to a polygon edge
or diagonal l, lying in the free space of P with respect to a skeleton path φ. The
first vertex (other than the source s if s is a vertex) on the string of the funnel
fφ (s, l) is the critical site on the local shortest path from s to points on l, with
respect to φ.
206 H. Guo, A. Maheshwari, and J.-R. Sack

5 Our Algorithm
In this section, we present an algorithm which builds a data structure of size
O(n2 ) in O(n2 log n) time to support O(h log n) time shortest path queries be-
tween a pair of points, (a, b), in P . First, we describe the main idea of our
algorithm. Let Ca be the set of critical sites for a and Cb for b. If a and b are
mutually visible, then we compute and report the distance dist(a, b) directly.
Otherwise, our task is reduced to identifying the critical sites Ca and Cb such
that each local shortest path leaves a via a site in Ca , and reaches b via a site in
Cb (Lemma 3). For each critical site c ∈ Ca , we search the shortest path map of c
and compute the distances dist(c, a) and dist(c, b). The sum, dist(c, a)+dist(c, b),
is the length of the shortest path from a to b via c. The distance dist(a, b) is the
minimum of these path lengths for all c ∈ Ca ∪ Cb . We summarize this in the
next lemma.
Lemma 4. The distance dist(a, b) can be computed by minc∈Ca ∪Cb (dist(a, c) +
dist(c, b)).
Let Cmin be the smaller set between Ca and Cb . We can reduce our determination
of dist(a, b) to a smaller size, i.e. |cmin |, as opposed to |Ca | + |Cb |, since it is
sufficient to investigate either all prefixes of local shortest paths leaving a, or all
suffixes of local shortest paths reaching b. We summarize this next.
Corollary 1. The shortest distance dist(a, b) can be correctly computed by
dist(a, b) = minc∈Cmin (dist(a, c) + dist(c, b)).
For the sake of simplicity, let Cmin be Ca . Then, we compute all closed funnels
from a and collect critical sites from the strings of these funnels.
Next, we present our preprocessing algorithm (Table 1) which takes P as
input and outputs a data structure. The data structure, denoted by APQ PD(P ),
consists of (i) a skeleton graph Gs , a reduced skeleton graph Gr and a tessellation
P  ; (ii) for each simple polygon R(l1 , l2 ) of P  with gates l1 and l2 , a hierarchy
of hourglasses, HH(R) and an hourglass H(l1 , l2 ) (iii) a point-location data
structure. The following lemma summarizes the complexity of the preprocessing
algorithm.
Lemma 5. Algorithm APQ PD Preprocessing(P ) builds a data structure of size
O(n2 ) in O(n2 log n) time.
Next, we present the key ideas of our query algorithm. First, we introduce nota-
tion used. Let i ∈ {a, b}. Let R(i) be the region containing i in the tessellation
P  . Let Fo (i) (resp., Fc (i)) be a set of open (resp., closed) funnels from i to
the explored gates in P  . The set Fo (i) is a balanced binary search tree (BST).
Funnels from a to the gates of the region R(a) are called initial funnels from a.
Our query algorithm is a process of funnel propagation. Let R(l1 , l2 ) be a
simple polygon of P  with gates l1 and l2 . Propagating a funnel f(a, l1 ) to its
neighboring region R(l1 , l2 ), i.e., to its neighboring gate l2 , is the concatenation
of f(a, l1 ) with the hourglass H(l1 , l2 ) associated with R(l1 , l2 ). If the neighboring
region of f(a, l1 ) is a triangle, l1 l2 l3 , then propagating f(a, l1 ) to l1 l2 l3 involves
Shortest Path Queries in Polygonal Domains 207

Table 1. The preprocessing algorithm APQ PD Preprocessing(P )

ALGORITHM: APQ PD Preprocessing(P )


Input: A polygonal domain P having n vertices and h holes
Output: Data structure APQ PD(P )
Step 1. For each vertex v of P , compute and store a shortest path map SPM(v) in P
using the algorithm of [1].
Step 2. Compute and store a Voronoi diagram Vor(P) of P using the algorithm of [6].
Derive a skeleton graph Gs from Vor(P) by removing Voronoi edges incident
to vertices of P . Compute a reduced skeleton graph of Gs .
Step 3. Compute a tessellation P  of P (cf. Section 3).
Step 4. For each simple polygon R(l1 , l2 ) in P  with gates l1 and l2 ,
construct and store a hierarchy of hourglasses, HH(R), applying
the algorithm of [5]. Also, store the hourglass H(l1 , l2 ).
Step 5. Using the algorithm of [8], compute a point-location data structure
based on the triangulation computed in Step 4 by using the algorithm of [5].

a funnel-split. The termination condition of the propagation process is that either


a sees b, then dist(a, b) can be computed directly; or, all funnels from a are closed.
We find the set Ca (i.e., Cmin ) from the strings of closed funnels.
Next, we present key observations with respect to open funnels from a. There
exists a portion of a gate l visible from a for each open funnel f(a, l). The portion
is called a visible interval associated with the funnel f(a, l). There is a one-one
mapping between each open funnel and its associated visible interval. Due to
visibility from a, two open funnels from a do not cross each other. All visible
intervals associated with open funnels from a are angularly sorted with respect
to a. Two consecutive open funnels from a, whose visible intervals are consec-
utive in an angularly sorted order with respect to a, account for one hole. We
maintain a binary search tree (BST) for all open funnels from a with keys as the
angularly sorted order of intervals associated with these funnels. For each funnel
propagating to a gate, the gate stores a pointer pointing to a BST node which
knows where the funnel is stored.
We build a DAG, denoted by D, that is the reduced skeleton graph except
each edge becomes a directed edge, to record dependency of visiting order of
gates by funnel propagations from a. Each node of D stores a pointer pointing
to a gate visited by a funnel. A directed edge (u(l1 ), v(l2 )) of D represents the
funnel propagation from the gate l1 to the gate l2 . Two nodes v1 (l1 ) and v2 (l2 )
are siblings with the same parent u(l) if the corresponding gates l, l1 and l2 form
a triangle of P  . A node is marked if its parent and sibling are marked. Marked
nodes, called ready nodes, are put in a ready queue. While the ready queue is
not empty, we remove a node, v(l), from the ready queue and propagate O(1)
funnels associated with the gate l to a neighboring gate of l. Gates stored in the
ready nodes, called ready gates, form a “wavefront” of the propagation process.
Only ready gates are processed. The ready attribute associated with gates with
208 H. Guo, A. Maheshwari, and J.-R. Sack

respect to a and to b are irrelevant. A DAG D(a) with respect to a is irrelevant


to a DAG D(b) with respect to b.
Next, we elaborate on a key idea in propagating O(1) funnels for each gate.
Let f1 (a, lj ), . . . , fk (a, lj ) be a sequence of all open funnels from a to a gate lj such
that their corresponding (visible) intervals associated with the gate lj , denoted
by indices j1 , . . . , jk , are angularly sorted with respect to a. The pair of funnels
corresponding to two extreme intervals, e.g., lj1 and ljk , is called end-funnel
pair, denoted by f (a, lj ). Let l be a ready gate associated with k open funnels.
If k = O(1), all funnels associated with the gate l are computed. Otherwise,
we proceed as follows. Call this gate l as the base gate. We compute, store,
and propagate (1) an end-funnel pair, f (a, l), associated with l to a neighboring
gate of l; (2) a set, Sa (l), of hourglasses, initially consisting of one hourglass
associated with the pair f (a, l). This hourglass starts from the gate l and follows
the propagation trajectory of the pair f (a, l) in the following way. When the
end-funnels of the pair f (a, l) split and propagate to different regions, e.g., both
neighboring a triangle, we need to compute new end-funnels paired with the
survived ones. Meanwhile, the hourglass corresponding to the pair f (a, l) splits
into two, each corresponds to a new pair of end-funnels associated with the
same gate. The set Sa (l) now has two hourglasses. This process continues. An
hourglass in the set Sa (l) starts and ends at base gates. The set Sa (l) records
the propagation trajectory from l to each ending gate of an hourglass in the
set, as a set of non-crossing paths in the reduced skeleton graph. We repeat this
computation for each base gate.
Next, we introduce a pulling operation used in our algorithm. Let l0 be the
previous base gate for the current gate l1 . Let f (a, l1 ) be the end-funnel pair
associated with l1 . Assume that at a triangle l1 l2 l3 , the pair f (a, l1 ) splits and
propagates to different neighboring gates l2 and l3 . Now, each gate l2 and l3 has
one end-funnel. We need to compute a new end-funnel paired with the survived
one for each gate. We search funnels from the previous base l0 and pull them
to the gates l2 and l3 as follows. Either we find a funnel splitting at l1 l2 l3 or
two funnels. Each resulting funnel is a new end-funnel required for gates l2 and
l3 , respectively. We concatenate each funnel with the hourglass associated with
the pair f (a, l1 ), then propagate the resulting one to l2 and l3 , respectively. We
call this operation pulling. A pulling operation takes at most O(log n) time [5].
When one or both of the pair f (a, l1 ) is closed after a propagation, we need to
pull the next consecutive funnel from the previous base as a new end-funnel, and
replace the closed one with the new one. This step is technical and details will
be provided in the full version of this paper.
Next, we present an algorithm called FindMinCriticalSites which is a subroutine
of our query algorithm. Algorithm FindMinCriticalSites (Table 5) takes as input
a query pair (a, b), sets of open and closed funnels from a and from b, i.e.,
Fo (a), Fc (a), Fo (b), Fc (b), DAGs D(a), D(b) and the tessellation P  . It terminates
when either a sees b, or one of the open-funnel sets Fo (a) and Fo (b) is empty.
The output is either the set Cmin or the distance dist(a, b).
Shortest Path Queries in Polygonal Domains 209

l2
R(a) = R(b) lb 2
l1 lb 2 b
b lb l2
b l1
la = l1 lb 1 la1 la
a la a
l2 a

(a) (b) (c)

Fig. 3. An illustration of (a) a diagonal la associated with a funnel f(a, la ) that is


incident to a triangle; or (b) a simple polygon; (c) the case that R(a) = R(b)

The key step (Step 2) of the algorithm loops through the BSTs, Fo (a) and
Fo (b), until one of them is empty. Consider the point a first. In Step 2.1, for each
ready gate la in the ready queue, two cases arise. Case 1: the gate la is incident
to a neighboring triangle la l1 l2 . Case 2: la is incident to a neighboring simple
polygon R with gates l1 and l2 , la = l1 . In Case 1, if la l1 l2 contains b (Fig.
3 (a)), determine if a sees b by computing a tangent from b to the open funnel
associated with la . If yes, compute and return dist(a, b). Pull either a funnel to
split at la l1 l2 from the previous base gate or two neighboring funnels which
are end-funnels, one for each gate, l1 or l2 . In Case 2, if R contains b (Fig. 3 (b)),
identify the hourglass H(la , lb1 ) in R. Propagate the end-funnels of la and the
associated hourglass to lb1 by concatenating them with H(la , lb1 ), respectively.
If there exists an open resulting funnel, determine if a sees b. If yes, compute
and return dist(a, b). Otherwise, propagate the open funnel to b. The resulting
funnel f(a, b) is a string. In Step 2.2, propagate the end-funnels at la and their
associated hourglass to each neighboring gate. Remove each closed funnel from
the BST Fo (a) and add it to the set Fc (a). Update the DAG D(a). Repeat Steps
2.1 and 2.2 for b.
The algorithm reaches Step 3 when a does not see b and one of the sets Fo (a)
and Fo (b) is empty. W.l.o.g., let this set be Fo (a). In Step 3, for each funnel in
Fc (a), collect the first vertex (other than a if a is also a vertex) on the string of
the funnel (Lemma 3). Store it in Cmin . The algorithm outputs Cmin in Step 3.
We summarize the complexity of this algorithm in the next lemma.
Lemma 6. For any query pair (a, b) in P , Algorithm FindMinCriticalSites either
correctly finds the minimum set Cmin of critical sites or detects that a sees b. This
algorithm executes in the worst case in O(h log n) time.

Proof. We prove the correctness of the algorithm first. Let i ∈ {a, b}. Upon
termination, the algorithm either detects that a sees b or the set Fo (i) is empty.
For each funnel in Fc (i), the first vertex (other than the source i) on the string
of the funnel is the critical site in Cmin (Lemma 3 and Corollary 1). Next,
we analyze the complexity of the algorithm. The set of paths (in the reduced
skeleton graph) forming the open funnels from i at any stage of the algorithm
is planar. The total number of funnels encountered is bounded by O(h). Then,
the total number of funnels removed from Fo (i) is bounded O(h). We perform
O(h) concatenations, O(1) for each gate, and O(h) pulling operations. Thus,
210 H. Guo, A. Maheshwari, and J.-R. Sack

Table 2. The algorithm FindMinCriticalSites(a,Fo (a),Fc (a),D(a),b,Fo (b),Fc (b),D(b),P  )

ALGORITHM: FindMinCriticalSites(a, Fo (a), Fc (a), D(a), b, Fo (b), Fc (b), D(b), P  )


Input: A query pair (a, b), sets of open and closed funnels
Fo (a), Fc (a), Fo (b), Fc (b), DAGs D(a), D(b) and a tessellation P  .
Output: A set Cmin of critical sites if a does not see b or dist(a, b) otherwise.
Step 1. Let Cmin be empty.
Step 2. While none of Fo (a) or Fo (b) is empty, do Steps 2.1 - 2.3.
2.1 For any ready gate la with respect to a, two cases arise.
Case 1: The gate la is incident to a neighboring triangle, la l1 l2 .
If la l1 l2 contains b (Fig. 3 (a)), determine if a sees b by computing
a tangent from b to the open funnel associated with la .
If yes, compute and return dist(a, b).
Pull either a funnel to split at la l1 l2 from the previous base gate
or two neighboring funnels which are end-funnels, one for each gate l1 and l2 .
Case 2: The gate la is incident to a simple polygon R with gates l1 , l2 , la = l1 .
If R contains b (Fig. 3 (b)), identify the hourglass H(la , lb1 ) in R.
Propagate the end-funnels of la and the associated hourglass to lb1 by
concatenating them with H(la , lb1 ), respectively. If there exists an
open resulting funnel, determine if a sees b. If yes, compute and
return dist(a, b). Otherwise, propagate the open funnel to b.
2.2 Propagate the end-funnels of la and the associated hourglass (starting from
the previous base gate) to each neighboring gate. Pull a new end-funnel
from the previous base gate if one of the end-funnels is closed. Remove each
closed funnel from Fo (a) and add it to Fc (a). Update the DAG D(a).
2.3 Repeat Steps 2.1 and 2.2 for b.
Step 3: W.l.o.g., let Fo (a) be empty between Fo (a) and Fo (b). For each funnel
in Fc (a), collect the first vertex on its string; store it in Cmin . Return Cmin .

the number of iterations in Step 2 is bounded by O(h), which dominates the


execution of the algorithm. Each iteration of Step 2 takes at most O(log n) time
[5]. The claim follows. 


Finally, we present our query algorithm. The algorithm takes input as a query
pair (a, b) and outputs the distance dist(a, b). Using the point-location data
structure, first find triangles fa and fb containing a and b, respectively. Next,
identify the region R(a) containing a and R(b) containing b in the tessellation P  .
Two cases arise. Case 1: R(a) = R(b); Case 2: R(a) = R(b). We consider Case
1. If R(a) is a triangle, than a sees b. Compute and return dist(a, b). Otherwise,
R(a) is a simple polygon. Let la and lb be the separating diagonals in R(a)
close to a and to b, respectively (Fig. 3 (c)). Construct an hourglass H(la , lb ) for
la and lb using the hierarchy of hourglasses, HH(R(a)), associated with R(a),
applying the algorithm of [5]. Concatenate H(a, la ), H(la , lb ) and H(lb , b). The
resulting hourglass H(a, b) is closed and it is the local shortest path between a
Shortest Path Queries in Polygonal Domains 211

and b in R(a). If there is no other vertices on H(a, b) except a and b, then a


sees b. Compute and return dist(a, b). Otherwise, add H(a, b) to Fc (a). W.l.o.g.,
let l1 be the gate of R(a) that is closer to a and let l2 be the gate closer to b
(Fig. 3 (c)). Construct hourglasses H(la1 , l1 ) and H(lb2 , l2 ) from the hierarchy
HH(R(a)). Compute an initial funnel f(a, l1 ) from a to l1 by finding tangents
from a to the hourglass H(la1 , l1 ). Analogously, compute an initial funnel f(b, l2 )
from b to l2 . We now consider Case 2. For i ∈ {a, b}, if R(i) is a triangle, compute
initial funnels from i to the gates of R(i). Otherwise, R(i) is a simple polygon
with gates l1 and l2 . Construct hourglasses H(li1 , l1 ) and H(li2 , l2 ) from the
hierarchy HH(R(i)). Compute initial funnels f(i, l1 ), f(i, l2 ) from i to l1 and to
l2 in R(i). In both cases, add each resulting funnel to Fo (i) if it is open or to Fc (i)
otherwise. Update the DAG D(i). Finally, propagate open funnels in Fo (a) and
Fo (b) by calling Algorithm FindMinCriticalSites which returns either dist(a, b) if
a seeing b is detected or the set Cmin of critical sites otherwise. Return dist(a, b)
if a seeing b is true. Otherwise, compute dist(a, b) applying Corollary 1. We
summarize the complexity of the query algorithm in the next lemma, followed
by our main theorem.
Lemma 7. The distance dist(a, b) between any pair of query points, (a, b), can
be computed in O(h log n) time.
Theorem 2. Given a polygonal domain P having n vertices and h holes, one
can compute a data structure of size O(n2 ) in O(n2 log n) time and answer short-
est path queries between any pair of points in P in the worst case in O(h log n)
time.

References
1. Hershberger, J., Suri, S.: An optimal algorithm for Euclidean shortest paths in the
plane. SIAM J. Computing 28(6), 2215–2256 (1999)
2. Kapoor, S., Maheshwari, S.N., Mitchell, J.S.B.: An efficient algorithm for Euclidean
shortest paths among polygonal obstacles in the plane. Discete Comput. Geom. 18,
377–383 (1997)
3. Chen, D.Z., Daescu, O., Klenk, K.S.: On geometric path query problems. In:
Rau-Chaplin, A., Dehne, F., Sack, J.-R., Tamassia, R. (eds.) WADS 1997. LNCS,
vol. 1272, pp. 248–257. Springer, Heidelberg (1997)
4. Chiang, Y.J., Mitchell, J.S.B.: Two-point Euclidean shortest path queries in the
plane. In: SODA 1999: Proceedings of the tenth annual ACM-SIAM symposium
on Discrete algorithms, Philadelphia, PA, USA. Society for Industrial and Applied
Mathematics, pp. 215–224 (1999)
5. Guibas, L., Hershberger, J.: Optimal shortest path queries in a simple polygon. J.
Comput. Syst. Sci. (JCSS) 39(2), 126–152 (1989)
6. Srinivasan, V., Nackman, L.R.: Voronoi diagram for multiply-connected polygonal
domains I: algorithm. IBM Journal of Research and Development 31(3), 361–372
(1987)
7. Yang, C.L., Wang, J.Y., Meng, X.X.: Upper bounds on the size of inner Voronoi
diagrams of multiply connected polygons. J. Software 17(7), 1527–1534 (2006)
8. Kirkpatrick, D.G.: Optimal search in planar subdivisions. SIAM J. Comput. 12,
28–35 (1983)
A Fast 2-Approximation Algorithm for the
Minimum Manhattan Network Problem

Zeyu Guo1 , He Sun2 , and Hong Zhu3


1
Department of Computer Science and Engineering
Fudan University, China
2
Shanghai Key Laboratory of Intelligent Information Processing
Fudan University, China
3
Shanghai Key Laboratory of Trustworthy Computing
East China Normal University, China
{gzy,sunhe,hzhu}@fudan.edu.cn

Abstract. Given a set T of n points in IR2 , a Manhattan Network G is


a network with all its edges horizontal or vertical segments, such that for
all p, q ∈ T , in G there exists a path (named a Manhattan path) of the
length exactly the Manhattan distance between p and q. The Minimum
Manhattan Network (MMN) problem is to find a Manhattan network of
the minimum length, i.e., the total length of the segments of the network
is to be minimized. In this paper we present a 2-approximation algorithm
with time complexity O(n2 ), which improves the 2-approximation algo-
rithm with time complexity Ω(n8 ), proposed by Chepoi, Nouioua et al..
To the best of our knowledge, this is the best result on this problem.

1 Introduction

A rectilinear path between two points p, q ∈ IR2 is a path connecting p and q


with all its edges horizontal or vertical segments. Furthermore, a Manhattan
path between p and q is a rectilinear path with its length exactly dist(p, q) :=
|p.x − q.x| + |p.y − q.y|, i.e., the Manhattan distance between p and q.
Given a set T of n points in IR2 , a network G is said to be a Manhattan
network on T , if for all p, q ∈ T there exists a Manhattan path between p and q
with all its segments in G. For the given network G, let the length of G, denoted
by L(G), be the total length of all segments of G. For the given point set T , the
Minimum Manhattan Network (MMN) Problem is to find a Manhattan network
G on T with minimum L(G).
From the problem description, it is easy to show that there is a close relation-
ship between the MMN problem and planar t-spanners. For t ≥ 1, if there exists
a planar graph G such that for all p, q ∈ T , there exists a path in G connecting
p and q of length at most t times the distance between p and q, G is said to be

This work is supported by Shanghai Leading Academic Discipline Project(Project
Number:B412) and National Natural Science Fund (grant #60496321 and
#60703091). Correspondence author: He Sun

R. Fleischer and J. Xu (Eds.): AAIM 2008, LNCS 5034, pp. 212–223, 2008.

c Springer-Verlag Berlin Heidelberg 2008
A Fast 2-Approximation Algorithm 213

a t-spanner of T . The MMN Problem for T is exactly the problem to compute


the 1-spanner of T under the L1 -norm.
Motivation: The spanners and the MMN problem have applications in city
planning, network layout, distributed algorithms and VLSI circuit design. Lam,
Alexandersson et al. [8] showed an approximation algorithm for Manhattan net-
works on alignment graphs that are relevant to sequence alignments in compu-
tational biology.
Related works: The MMN problem was first introduced by Gudmundsson,
Levcopoulos et al. [6], and until now, it is open whether this problem belongs
to the complexity class P. Gudmundsson et al. [6] proposed an O(n3 )-time 4-
approximation algorithm, and an O(n log n)-time 8-approximation algorithm.
Kato, Imai et al. [7] presented an O(n3 )-time 2-approximation algorithm. How-
ever, the proof of their algorithm correctness is incomplete [4]. In spite of that,
their paper still provided a valuable idea, that it suffices for G to be a Man-
hattan network if for each of O(n) certain pairs there exists a Manhattan path
connecting its two points. Thus it is not necessary to enumerate all the pairs in
T ×T . Following this idea, Benkert, Wolff et al. [1,2] proposed an O(n log n)-time
3-approximation algorithm. They also described a mixed-integer programming
(MIP) formulation of the MMN problem. After that, Chepoi, Nouioua et al. [4]
proposed a 2-approximation rounding algorithm by solving the linear program-
ming (LP) relaxation of the MIP. In [9], S. Seibert and W. Unger proposed a
1.5-approximation algorithm. Unfortunately, their proof is incorrect. Therefore
2-approximation is, to our best knowledge, the lowest approximation ratio for
this problem. However, since the algorithm of Chepoi, Nouioua et al. is based on
linear programming, its time complexity, as pointed out in [1], may be as high
as Ω(n8 ).
Outline of our approach: In a high-level overview, our algorithm is as fol-
lows: partition the input into several blocks (ortho-convex regions) that can be
solved independently of each other. For the blocks, some can be trivially solved
optimally, whereas only one type of blocks is difficult to solve. For such a non-
trivial block there are some horizontal and vertical strips which can be solved by
horizontal and vertical nice covers plus switch segments to connect neighboring
points in the same strip. Furthermore, we add some missing connections in re-
gions called staircases. We implement this step using the dynamic programming
technique to guarantee that staircases are locally optimal. Though a similar
method can be found in previous work, we define a new form of staircase, called
revised staircase (RS), and use the speed-up technique of the dynamic program-
ming introduced in [5]. For the approximation analysis, the ratio of 2 follows
simply from the fact that the strips and staircases are solved locally optimally,
and though these regions may overlap, the overlapping segments are counted at
most twice.
Our results: In this paper we present a 2-approximation algorithm with time
complexity O(n2 ). Furthermore, for the given set T , let H and W be the height
and the width of the minimum rectangle covering all points in T with its sides
214 Z. Guo, H. Sun, and H. Zhu

parallel to the axes. Let G be an MMN on T and G be the network constructed


by our algorithm. From the algorithm description, it is proven that L(G) ≤
2L(G ) − H − W .

2 Preliminaries
Basic notations: For p = (p.x, p.y) ∈ IR2 , let Qk (p) denote the k-th closed
quadrant with respect to the origin p, e.g., Q1 (p) := {q ∈ IR2 | p.x ≤ q.x, p.y ≤
q.y}.
Define R(p, q) as a closed rectangle (possibly degenerate) where p, q ∈ IR2 are
its two opposite corners. BV (p, q) is defined as the vertical closed band bounded
by p, q, whereas BH (p, q) denotes the horizontal closed band bounded by p, q.
For the given point set T , let Γ be the union of vertical and horizontal lines
which pass through some point in T . In addition, we use [c, d] to represent the
vertical or horizontal segment with endpoints c and d, as Fig. 1 shows.

a
c d

e
b

Fig. 1. T = {a, b, c, d, e}. The vertical and horizontal lines compose Γ

Pareto envelope: The Pareto envelope, originally proposed by Cheopi et al.


[4], plays an important role in our algorithm and we give a brief introduction.

Given the set of points
  T , a point p is said to be dominated
 by q if ∀t ∈ T :
dist(q, t) ≤ dist(p, t) ∧ ∃t ∈ T : dist(q, t) < dist(p, t) . A point is said to be
an efficient point if it is not dominated by any point in the plane. The Pareto
envelope of T is the set of all efficient points, denoted by  P(T ). Fig. 2 shows
an example of P(T ). It is not hard to prove that P(T ) = u∈T v∈T R(u, v).
Chalmet et al. [3] demonstrated that P(T ) can be built in O(n log n) time. They
also presented some other properties of P(T ). In particular, P(T ) is ortho-convex,
i.e., the intersection of P(T ) with any vertical or horizontal line is continuous,
which is equivalent to the fact that for any two points p, q ∈ P(T ), there exists
a Manhattan path in P(T ) between p and q.
In [4] Chepoi et al. also showed that the Pareto envelope is the union of
some ortho-convex (possibly degenerate) rectilinear polygons (called blocks).
Two blocks can overlap at only one point which is called a cut vertex. We denote
by C the set of cut vertices, and let T + := T ∪ C. A vertical sweeping line 
moving from left to right may intersect two or more blocks only when  ⊆ Γ ,
since only such kind of  passes through the cut vertices where
 blocks overlap.
This fact yields W = B⊆P(T ) WB , and similarly H = B⊆P(T ) HB , where
HB and WB are the height and the width of the minimum rectangle covering
A Fast 2-Approximation Algorithm 215

d
c

a b

(a) (b)

Fig. 2. An example of a Pareto envelope. The black points in (a) are the set T . The
two separate grey regions in (b) are non-degenerate blocks, whereas the black lines are
degenerate blocks. All these blocks form the Pareto envelope P(T ).

the block B. For a block B let TB := T + ∩ B. We say B is trivial if B is a


rectangle (or degenerate to a segment) such that |TB | = 2. It is known that the
two points in TB must be two opposite corners of B when it is trivial. In Fig. 2,
C = {a, b, c, d} and only the block between c and d is non-trivial.
Chepoi et al. [4] proved that an MMN on T + is also an MMN on T , and to
obtain an MMN on T + , it suffices to build an MMN on TB for each B ⊆ P(T ).
The MMN in any trivial block B can be built by simply connecting the two
points in TB using a Manhattan path. So we have reduced the MMN problem
on T to MMN on non-trivial blocks.
For a non-trivial block B denote its border by ∂B and let ΓB := Γ ∩ B. We
call a corner p in ∂B a convex corner if the interior angle at p equals to π2 ,
otherwise p is called a concave corner.

Lemma 1. [4] For any non-trivial block B and any convex corner p in ∂B, it
holds that p ∈ TB .

Lemma 2. [4] For any non-trivial block B, there exists an MMN GB on TB


such that GB ⊆ ΓB . Furthermore, any MMN GB ⊆ ΓB on TB contains ∂B.

Strips and staircases: Informally, for p, q ∈ TB , p.y < q.y, we call R(p, q) a
vertical strip if it does not contain any point in the region BV (p, q) except the
vertical lines {(x, y)|x = p.x, y ≤ p.y} and {(x, y)|x = q.x, y ≥ q.y}. Similarly,
for the points p, q ∈ TB , p.x < q.x, we call R(p, q) a horizontal strip R(p, q) if
it does not contain any point in the region BH (p, q) except the horizontal lines
{(x, y)|x ≤ p.x, y = p.y} and {(x, y)|x ≥ q.x, y = q.y}. Especially, we say a
vertical or horizontal strip R(p, q) is degenerate if p.x = q.x or p.y = q.y. Fig. 3
gives an example of a horizontal strip.
The other notion which plays a critical role in our algorithm is the staircase.
There are four kinds of staircases specified by a parameter k ∈ {1, · · · , 4}, and
without loss of generality we only describe the one with k = 1. Suppose R(p, q)
is a vertical strip and R(p , q  ) is a horizontal strip, such that q ∈ Q1 (p), q  ∈
Q1 (p ), p, q ∈ BV (p , q  ), p , q  ∈ BH (p, q), i.e., they cross in the way as Fig. 4
216 Z. Guo, H. Sun, and H. Zhu

R(p, q) q t
p

Fig. 3. The rectangle is a horizontal strip. Any point in TB within BH (p, q) can only
be placed on the dashed linee, e.g., the point t.

shows. Let o be the topmost and rightmost point in R(p, q) ∩ R(p , q  ). Denote
by Tpp |qq the set of v in TB ∩Q1 (o) such that (Q3 (v)\Q3 (o)) ∩ TB = {v}. If
Tpp |qq = ∅, then let Spp |qq = v∈Tpp |qq R(o, v), which is said to be a staircase
(see Fig. 4). In this figure, no point in TB is located in the dark area and the
light grey regions (i.e., the staircase and the two unbounded half-bands) except
those in Tpp |qq .
As was observed in [1,4], the interiors of two staircases are disjoint, and the
interior of a staircase and a strip are disjoint. For a strip R(p, q), (p, q) is called
a strip pair. For each staircase Spp |qq , let v be any point in Tpp |qq , and (v, p)
(also (v, p )) is called a staircase pair.

Theorem 1. [4] For a network GB , if for any strip pair or staircase pair (p, q),
p, q ∈ TB , there exists a Manhattan path in GB connecting p and q, then GB is
a Manhattan network on TB .

3 Algorithm Description

Following [1] we give the following definitions: a union of vertical segments CV


is said to be a vertical cover if for any horizontal line  and any vertical strip R
that  intersects, it holds that  ∩ R ∩ CV = ∅. A union of horizontal segments
CH is said to be a horizontal cover if for any vertical line  and any horizontal
strip R that  intersects, it holds that  ∩ R ∩ CH = ∅. Furthermore, a minimum
vertical cover (MVC) is the vertical cover of the minimum length, as Fig. 5
shows, whereas a minimum horizontal cover (MHC) is the horizontal cover of
the minimum length. In addition, an MVC/MHC is said to be nice if any of its
segments contains at least one point in TB . A nice cover is the union of a nice
MVC and a nice MHC.
It can be shown that a nice cover, expressed by EC , always exists [1,2]. Benkert
et al. [1,2] proposed an O(n log n)-time algorithm that computes a nice cover EC
for the set of points TB , |TB | = n, such that EC ⊆ Γ . For a non-degenerate strip
R(p, q), we use [p, a] and [q, b] to express the segments of EC covering R(p, q).
Especially, a = p if no such a segment contains p, and b = q if no such a segment
contains q. Note that [p, a] ∪ [q, b] ∪ [a, b] is a Manhattan path. We say [a, b] is
a switch segment. Let ES denote the union of switch segments, and it has been
proven that L(ES ) ≤ HB + WB .

Theorem 2. There exists a procedure CreateNC to construct a nice cover EC


such that EC ⊆ ΓB .
A Fast 2-Approximation Algorithm 217

Tpp |qq

Spp |qq

q
o
p
p

Fig. 4. A staircase consisting of a dark Fig. 5. A nice MVC consisting of black


grey region and its borderline lines

Proof. The procedure CreateNC consists of two steps. In the initial step, we run
the algorithm proposed by Benkert et al. [1,2] to get a nice cover EC .
In the second step, we modify EC to guarantee that EC ⊆ ΓB . Clearly a
segment e of EC which is not entirely laid on B must be used to cover a non-
degenerate strip. Without loss of generality, we use e to cover R(p, q), a vertical
strip with p the lower left corner and q the upper right corner. Assume that e
contains q. From q ∈ B we know ∂B crosses e. From p ∈ B, ∂B turns at some
point p down to p, as Fig. 6 shows. Let q  be the bottom endpoint of e. It turns
out that the Manhattan path between p and q switches at the y-ordinate of q 
which is less than that of p .
We move the switch segment up to the y-ordinate of p (note that switch seg-
ments are not added yet so the movement is just done in concept). Accordingly,
the part of e lying outside of B is moved left onto ∂B. Since no point of TB is
put outside of B, the part that has been moved is not used to cover any other
strip, which shows that EC is still a nice cover after the movement. We repeat
the modification until no such e exists. Then, we have EC ⊆ ΓB . 
Corollary 1. For |TB | = n, the time complexity of CreateNC is O(n log n).
Proof. From [1], the time complexity of creating a nice cover is O(n log n).
Now we analyze the running time of the second step. Since each point of TB
is exactly in one vertical segment and one horizontal segment in EC , there exist
at most 2n segments in EC . Due to the fact that one modification step decreases
one segment that is not entirely on B and the number of segments is O(n), the
time complexity of the second step is O(n).
In summary, the running time of CreateNC is O(n log n). 
Lemma 3. After the procedure CreateNC, ∂B ⊆ EC .
Proof. For p, q ∈ ∂B, let ∂Bpq be the part of ∂B from p to q in the counter-
clockwise direction (p, q excluded). It suffices to prove that ∂Bpq ⊆ EC whenever
p, q ∈ ∂B, TB ∩ ∂Bpq = ∅, i.e., p, q are two neighboring points. This is obviously
218 Z. Guo, H. Sun, and H. Zhu

true if p.x = q.x or p.y = q.y. For the other cases, we know there is no convex
corner in ∂Bpq since if such a convex corner exists, then it is not in TB , which
contradicts Lemma 1. Thus there is a concave corner on ∂Bpq , denoted by t.
Without loss of generality, assume that p, q ∈ Q4 (t), as Fig. 7 shows.
Among the points in TB let p be the leftmost one in Q1 (p) (choose the
bottommost if more than one exist) and q  be the topmost point in Q3 (q) (choose
the rightmost if more than one exist). Note it is possible that p = q or q  = p.
It is clear that R(p, p ) is a vertical strip and R(q, q  ) is a horizontal strip.
From EC ⊆ B we have [p, t] ⊆ EC to cover R(p, p ), and [q, t] ⊆ EC to cover
R(q, q  ). Therefore ∂Bpq ⊆ EC . 

q q ∂B

p ∂B p ∂B p
e t
q
q
q q

p p p

Fig. 6. Modifying the nice cover Fig. 7. A concave corner

Now we add ES to G and complete the procedure constructing the Manhattan


paths of all the strip pairs. Let Mpq denote the Manhattan path constructed
between p and q. Next we deal with the staircase pairs.
Definition 1 (revised staircase). For a staircase Spp |qq , let o be the inter-
section of Mpq and Mp q (if more than one intersectionsexist then choose any
 
one). Let the revised staircase (RS) Spp  |qq  be the part of v∈Tpp |qq R(o , v)\∂B
enclosed by Mpq , Mp q (Mpq , Mp q excluded).
Fig. 8 shows how to compute an RS from a staircase. From the definition, notice
that ∂B does not belong to the revised staircase. It is not hard to prove that no
point of TB falls into the interior of any RS. This fact implies that the interiors

of two RS are disjoint, and the interior of the RS Spp  |qq  does not overlap any
 
strip except R(p, q) and R(p , q ).
Given the staircase Spp |qq , we will describe how to build the Manhattan
paths of all the staircase pairs of Spp |qq . Without loss of generality, assume that
R(p, q) is a vertical strip and R(p , q  ) is a horizontal strip where q, q  ∈ Q1 (o),
as Fig. 4 shows. The other cases are symmetric. Since in the following analysis
we need to deal with each revised staircase, we omit the subscript and write
S := Spp |qq , S  := Spp

 |qq  and TS := Tpp |qq  .

Let m := |TS | + 1, v0 := q, vm := q  . Express the points in TS as v1 , v2 , · · · ,


vm−1 in the order from the topmost and leftmost one to the bottommost and
rightmost one. From Lemma 2 we know there exists a Manhattan path in B
for every two consecutive points vi , vi+1 . These Manhattan paths, together with
A Fast 2-Approximation Algorithm 219

q q

Mpq ∂B
Spp |qq 
Spp  |qq 

q  q
o 
p p o
p Mp q p

Fig. 8. From a staircase to an RS. The black line in the left picture is ∂B.

Mpq and Mp q which are also in B, enclose a closed area covering S  . So we
have S  ⊆ B, which yields that all segments added within S  are also within B.

Theorem 3. There exists a procedure CompOptNet such that for the given RS
S  with the point set Ts , |TS | = n, CompOptNet takes O(n2 ) time and space to
compute an optimal network E such that E ∪ ∂B connects each point in TS to
either Mpq or Mp q .

Proof. We use dynamic programming technique to implement this procedure.


Suppose [xi , vi ] is the vertical segment of S ∩ ∂B connecting vi , and [yi , vi ] is
the horizontal one, i.e., [xi , vi ] and [yi , vi ] are the segments we subtracted from
R(o , vi ) (xi = vi or yi = vi if no such a vertical or horizontal segment exists),
as Fig. 9 shows. Let S(0, m) := S  and we use c(0, m) to express the length of
the optimal network E ⊆ S(0, m), such that E ∪ ∂B connects v1 , v2 , · · · , vm−1
to either the left boundary or bottom boundary of S(0, m).
For the region S(0, m), we need to choose a suitable k, 0 ≤ k < m, and split
S(0, m) into two small areas S(0, k) and S(k + 1, m) according to the value of
k such that the function c(0, m) is minimized. For 0 ≤ i ≤ j ≤ m, the notion
of S(i, j) is defined recursively as described in the following paragraph. Fig. 9
gives an intuitive way to understand this partition method.
For the region S(i, j) and chosen k, i ≤ k < j, we connect yk left using a
horizontal segment, denoted by w(i, k), and express the area above w(i, k) by
S(i, k) if k > i, otherwise S(i, k) = ∅. If k + 1 = j, we connect xk+1 down using
a vertical segment h(k + 1, j) and denote the area on the right side of h(k + 1, j)
by S(k + 1, j). It is not difficult to see that
 
c(i, j) = min c(i, k) + c(k + 1, j) + w(i, k) + h(k + 1, j)
i≤k<j

where c(i, j)is defined recursively and c(i, i) = w(i, i) = h(i, i) = 0.


It is easy to show that w(i, j) and h(i, j) satisfy the quadrangle inequalities,
i.e. w(i, j)+w(i , j  ) ≤ w(i, j  )+w(i , j), and h(i, j)+h(i , j  ) ≤ h(i, j  )+h(i , j),
220 Z. Guo, H. Sun, and H. Zhu

vi

∂B
S(i, k) vk
w(i, k) yk
xk vk+1 (yk+1 )

xk+1

h(k + 1, j)
S(k + 1, j) vj

Fig. 9. The intuition behind the dynamic programming

where i ≤ i ≤ j ≤ j  . Furthermore, by Lemma 6 in the appendix we can


conclude that the function c also satisfies the quadrangle inequality. Relying on
the dynamic programming speed-up technique proposed by [5], all the values of
c can be computed in O(n2 ) time. 

In the following, we give the algorithm description:

Input: T
Algorithm:
1. Compute P(T ).
2. For each trivial block B ⊆ P(T ),
connect the two points in TB with a Manhattan path.
3. For each non-trivial block B ⊆ P(T ) do the following:
3.1. Run CreateNC to get EC satisfying EC ⊆ ΓB .
3.2. Add the union of switch segments ES .

3.3. For each RS Spp  |qq  ,

run CompOptNet to compute the optimal network Epp |qq .


Output: G := EC ∪ ES ∪Spp 
 |qq
Epp |qq .

Theorem 4. For the given point set T of size n, the algorithm above takes
O(n2 ) time and space to compute a Manhattan network G on T .

Proof. As Chalmet et al. [3] described, we can use O(n log n) time to compute
the Pareto envelope P(T ). Step 2 takes O(n) time since at most O(n) blocks
exist. Now we analyze the time complexity of Step 3. By Corollary 1, the time
complexity of Step 3.1 is O(n log n), whereas by Theorem 3, the time complexity
of Step 3.3 is
 
O |Tpp |qq |2 = O(n2 )

Spp  |qq
A Fast 2-Approximation Algorithm 221

Note that at most O(n) switch segments exist, so the running time of Step 3.2
is O(n).
In conclusion, the overall time complexity of the algorithm is O(n2 ). 

4 Approximation Analysis
Let G ⊆ Γ be the optimal Manhattan network on T such that ∂B ⊆ G
whenever B is non-trivial. For any block B ⊆ P(T ) let GB := G ∩ B and
GB := G ∩ B, where G is the network we obtained by the approximation
algorithm. So we need to give the upper bound of L(G) with respect to L(G ).
Given the non-trivial block B, we know Epp |qq is the local optimal network

within a single RS Spp  |qq  . Let ER be the union of these local optimal net-

works. EC , ER and ES are different (perhaps not disjoint) parts of GB . From


our algorithm, we know that
L(GB ) ≤ L(EC ) + L(ER ) + L(ES ) (1)

We use ED to express the set of segments in GB shared by two different RSes.
Fig. 10 shows such a segment.


Fig. 10. A segment shared by two different RSes. These segments form the set ED .

Lemma 4. L(ER ) ≤ L(GB ) + L(ED



) − 2HB − 2WB .
  
Proof. Let Epp |qq  be the part of GB in a single RS Spp |qq  .

L(ER ) ≤ L(Epp |qq )



Spp  |qq

≤ 
L(Epp |qq  )

Spp  |qq

≤ L(GB \∂B) + L(ED


)
= L(GB ) + L(ED ) − 2HB − 2WB
 

The second inequality holds from the optimality of dynamic programming. In


the third inequality, ∂B is subtracted because it does not intersect any RS, and
L(ED
) appears because the segments of ED 
are counted twice. 
222 Z. Guo, H. Sun, and H. Zhu

Lemma 5. L(EC ) ≤ L(GB ) − L(ED



)

Proof. It is easy to prove that segments in ED do not intersect any non-degenerate
strip, and only intersect perpendicular degenerate strips. Therefore GB \ED 
still
has the property that, for any strip pair (p, q), there exists a Manhattan path be-
tween p and q in it. It is known that any network with this property has length at
least L(EC ). This proves the lemma. 

Theorem 5. For any block B, L(GB ) ≤ 2L(GB ) − HB − WB .

Proof. If B is trivial, L(GB ) = L(GB ) = HB + WB = 2L(GB ) − HB − WB


holds. Otherwise, combining the fact L(ES ) ≤ HB + WB with (1), Lemma 4 and
Lemma 5, we obtain L(GB ) ≤ 2L(GB ) − HB − WB . 

Corollary 2. L(G) ≤ 2L(G ) − H − W 

References

1. Benkert, M., Wolff, A., Widmann, F.: The minimum Manhattan network problem:
a fast factor-3 approximation. Technical Report 2004-16, Fakultät für Informatik,
Universität Karlsruhe. In: Proceedings of the 8th Japanese Conference on Discrete
and Computational Geometry, pp. 16–28 (2005) (A sort version appeared)
2. Benkert, M., Shirabe, T., Wolff, A.: The minimum Manhattan network problem:
approximations and exact solution. In: Proceedings of the 20th European Workshop
on Computational Geometry, pp. 209–212 (2004)
3. Chalmet, G., Francis, L., Kolen, A.: Finding efficient solutions for rectilinear distance
location problems efficiently. European Journal of Operations Research 6, 117–124
(1981)
4. Chepoi, V., Nouioua, K., Vaxès, Y.: A rounding algorithm for approximating min-
imum Manhattan networks. Theoretical Computer Science 390, 56–69 (2008) Pre-
liminary version appeared. In: Proceedings of the 8th International Workshop on
Approximation Algorithms for Combinatorial Optimization, pp. 40–51 (2005)
5. Frances Yao, F.: Efficient dynamic programming using quadrangle inequalities. In:
Proceedings of the 12th Annual ACM Symposium on Theory of Computing, pp.
429–435 (1980)
6. Gudmundsson, J., Levcopoulos, C., Narasimhan, G.: Approximating a minimum
Manhattan network. Nordic Journal of Computing 8, 219–232 (2001); Preliminary
version appeared. In: Proceedings of the 2nd International Workshop on Approxi-
mation Algorithms for Combinatorial Optimization, pp. 28–37 (1999)
7. Kato, R., Imai, K., Asano, T.: An improved algorithm for the minimum Manhattan
network problem. In: Proceedings of the 13th International Symposium on Algo-
rithms and Computation, pp. 344–356 (2002)
8. Lam, F., Alexandersson, M., Pachter, L.: Picking alignments from (Steiner) trees.
Journal of Computational Biology 10, 509–520 (2003)
9. Seibert, S., Unger, W.: A 1.5-approximation of the minimal Manhattan network
problem. In: Proceedings of the 16th International Symposium on Algorithms and
Computation, pp. 246–255 (2005)
A Fast 2-Approximation Algorithm 223

A Function c Satisfies the Quadrangle Inequality


Lemma 6. For the dynamic programming procedure, the function
 
c(i, j) = min c(i, k) + c(k + 1, j) + w(i, k) + h(k + 1, j)
i≤k<j

satisfies the quadrangle inequality.

Proof. In order to prove c satisfies the quadrangle inequality, we only need to


show that c(i, j) + c(i , j  ) ≤ c(i, j  ) + c(i , j) for any i ≤ i ≤ j ≤ j  . We prove
this lemma by induction on the length of  := |j  − i|. Obviously, the inequality
holds when  = 0.
Assume the inequality c(i, j) + c(i , j  ) ≤ c(i, j  ) + c(i , j) holds for any i ≤
i ≤ j ≤ j  with parameter . We prove the inequality holds for the parameter


 + 1.
We divide the proof into three cases.
Case 1: i = i or j = j  . Then, obviously c(i, j) + c(i , j  ) = c(i, j  ) + c(i , j).
Case 2: i < i = j < j  . Then, we need to prove c(i, j) + c(i , j  ) ≤ c(i, j  ).
Choose z ∈ [i, j  − 1] such that c(i, j  ) = c(i, z)+ c(z + 1, j )+ w(i, z)+ h(z + 1, j ).
Assume z ∈ [i, j − 1] (The other cases can be proven symmetrically since z ∈
[i , j  − 1]), then we have

c(i, j) + c(i , j  ) ≤ c(i, z) + c(z + 1, j) + w(i, z) + h(z + 1, j) + c(i , j  )


≤ c(i, z) + c(z + 1, j  ) + w(i, z) + h(z + 1, j  )
= c(i, j  )

The second inequality holds because (1) h(z + 1, j) ≤ h(z + 1, j  ) since [z + 1, j] ⊆


[z + 1, j  ], and (2) c(z + 1, j) + c(i , j  ) ≤ c(z + 1, j  ) by induction hypothesis.
Case 3: i < i < j < j  . Choose y ∈ [i, j  − 1] and z ∈ [i , j − 1] such that
c(i, j  ) = c(i, y) + c(y + 1, j  ) + w(i, y) + h(y + 1, j  ), c(i , j) = c(i , z) + c(z +
1, j) + w(i , z) + h(z + 1, j). Without loss of generality, we assume y ≤ z. Due to
the fact that z < j, we obtain y ∈ [i, j − 1] and

c(i, j) + c(i , j  ) ≤ c(i, y) + c(y + 1, j) + w(i, y) + h(y + 1, j)


+ c(i , z) + c(z + 1, j  ) + w(i , z) + h(z + 1, j  )
≤ c(i, y) + c(y + 1, j  ) + w(i, y) + h(y + 1, j  )
+ c(i , z) + c(z + 1, j) + w(i , z) + h(z + 1, j)
= c(i, j  ) + c(i , j)

The second inequality holds since (1) the function h and w satisfy the quadrangle
inequality, and (2) c(y + 1, j) + c(z + 1, j  ) ≤ c(y + 1, j  ) + c(z + 1, j) by induction
hypothesis.
Combining the three cases, we conclude that c the satisfies quadrangle in-
equality. 
Minimum Cost Homomorphism Dichotomy for
Oriented Cycles

Gregory Gutin1 , Arash Rafiey2 , and Anders Yeo1


1
Department of Computer Science
Royal Holloway, University of London
Egham, Surrey TW20 0EX, UK
gutin(anders)@cs.rhul.ac.uk
2
School of Computing Science
Simon Fraser University
Burnaby, B.C., Canada, V5A 1S6
[email protected]

Abstract. For digraphs D and H, a mapping f : V (D)→V (H) is a


homomorphism of D to H if uv ∈ A(D) implies f (u)f (v) ∈ A(H). If,
moreover, each vertex u ∈ V (D) is associatedwith costs ci (u), i ∈ V (H),
then the cost of the homomorphism f is u∈V (D) cf (u) (u). For each
fixed digraph H, we have the minimum cost homomorphism problem for
H (abbreviated MinHOM(H)). In this discrete optimization problem, we
are to decide, for an input graph D with costs ci (u), u ∈ V (D), i ∈ V (H),
whether there exists a homomorphism of D to H and, if one exists, to find
one of minimum cost. We obtain a dichotomy classification for the time
complexity of MinHOM(H) when H is an oriented cycle. We conjecture
a dichotomy classification for all digraphs with possible loops.

1 Introduction
For directed (undirected) graphs G and H, a mapping f : V (G)→V (H) is a
homomorphism of G to H if uv is an arc (edge) implies that f (u)f (v) is an
arc (edge). Let H be a fixed directed or undirected graph. The homomorphism
problem for H asks whether a directed or undirected input graph G admits a
homomorphism to H. The list homomorphism problem for H asks whether a
directed or undirected input graph G with lists (sets) Lu ⊆ V (H), u ∈ V (G)
admits a homomorphism f to H in which f (u) ∈ Lu for each u ∈ V (G).
Suppose G and H are directed (or undirected) graphs, and ci (u), u ∈ V (G),
i ∈V (H) are nonnegative costs. The cost of a homomorphism f of G to H
is u∈V (G) cf (u) (u). If H is fixed, the minimum cost homomorphism problem,
MinHOM(H), for H is the following discrete optimization problem. Given an
input graph G, together with costs ci (u), u ∈ V (G), i ∈ V (H), we wish to find
a minimum cost homomorphism of G to H, or state that none exists.
The minimum cost homomorphism problem was introduced in [9], where it
was motivated by a real-world problem in defence logistics. We believe it offers
a practical and natural model for optimization of weighted homomorphisms.

R. Fleischer and J. Xu (Eds.): AAIM 2008, LNCS 5034, pp. 224–234, 2008.

c Springer-Verlag Berlin Heidelberg 2008
Minimum Cost Homomorphism Dichotomy for Oriented Cycles 225

The problem’s special cases include the homomorphism and list homomorphism
problems [15] and the general optimum cost chromatic partition problem, which
has been intensively studied [12,17].
There is an extensive literature on the minimum cost homomorphism prob-
lem, e.g., see [4,5,6,7,8,9]. These and other papers study the time complexity
of MinHOM(H) for various families of directed and undirected graphs. In par-
ticular, Gutin, Hell, Rafiey and Yeo [5] proved a dichotomy classification for
all undirected graphs (with possible loops): If H is a reflexive proper interval
graph or a proper interval bigraph, then MinHOM(H) is polynomial time solv-
able; otherwise, MinHOM(H) is NP-hard. It is an open problem whether there
is a dichotomy classification for the complexity of MinHOM(H) when H is a
digraph with possible loops. We conjecture that such a classification exists and,
moreover, the following assertion holds:

Conjecture 1. Let H be a digraph with possible loops. Then MinHOM(H) is


polynomial time solvable if H has either a Min-Max ordering or a k-Min-Max
ordering for some k ≥ 2. Otherwise, MinHOM(H) is NP-hard.

For the definitions of a Min-Max and k-Min-Max ordering see Section 3, where
we give theorems (first proved in [9,8]) showing that if H has one of the two or-
derings, then MinHOM(H) is polynomial time solvable. So, it is the NP-hardness
part of Conjecture 1 which is the ‘open’ part of the conjecture.
Very recently Gupta, Hell, Karimi and Rafiey [4] obtained a dichotomy classi-
fication for all reflexive digraphs that confirms this conjecture. They proved that
if a reflexive digraph H has no Min-Max ordering, then MinHom(H) is NP-hard.
Gutin, Rafiey and Yeo [7,8] proved that if a semicomplete multipartite digraph
H has neither Min-Max ordering nor k-Min-Max ordering, then MinHom(H) is
NP-hard.
In this paper, we show that the same result (as for semicomplete multipartite
digraphs) holds for oriented cycles. This provides a further support for Con-
jecture 1. In fact, we prove a graph-theoretical dichotomy for the complexity
of MinHom(H) when H is an oriented cycle. The fact that Conjecture 1 holds
for oriented cycles follows from the proof of the graph-theoretical dichotomy.
In the proof, we use a new concept of a (k, l)-Min-Max ordering introduced in
Section 3. Our motivation for Conjecture 1 partially stems from the fact that
we initially proved polynomial time solvability of MinHOM(H) when V (H) has
a (k, l)-Min-Max ordering by reducing it to the minimum cut problem. How-
ever, we later proved that (k, l)-Min-Max orderings can simply be reduced to
p-Min-Max orderings for p ≥ 1 (see Section 3).
Homomorphisms to oriented cycles have been investigated in a number of
papers. Partial results for the homomorphism problem to oriented cycles were
obtained in [10] and [16]. A full dichotomy was proved by Feder [2]. Feder,
Hell and Rafiey [3] obtained a dichotomy for the list homomorphism problem
for oriented cycles. Notice that our dichotomy is different from the ones in [2]
and [3].
226 G. Gutin, A. Rafiey, and A. Yeo

2 Levels of Vertices in Oriented Paths and Cycles


In this paper [p] denotes the set {1, 2, . . . , p}. Let D be a digraph. We will use
V (D) (A(D)) to denote the vertex (arc) set of D. We say that xy (x, y ∈ V (D))
is an edge of D if either xy or yx is an arc of D. A sequence b1 b2 . . . bp of distinct
vertices of D is an oriented path if bi bi+1 is an edge for every i ∈ [p − 1]. If
b1 b2 . . . bp is an oriented path, we call C = b1 b2 . . . bp b1 an oriented cycle if bp b1
is an edge. An edge bi bi+1 (here bp bp+1 = bp b1 ) of an oriented path P or cycle
C is called forward (backward) if bi bi+1 ∈ A(D) (bi+1 bi ∈ A(D)).
Let P = b1 b2 . . . bp be an oriented path. We assign levels to the vertices of P
as follows: we set levelP (b1 ) = 0, and levelP (bt+1 ) = levelP (bt ) + 1, if bt bt+1 is
forward and and levelP (bt+1 ) = levelP (bt ) − 1, if bt bt+1 is backward. We say that
P is of type r if r = max{levelP (bi ) : i ∈ [p]} = levelP (bp ) and 0 ≤ levelP (bt ) ≤ r
for each t ∈ [p].
An oriented cycle C is balanced if the number of forward edges equals the
number of backward edges; if C is not balanced, it is called unbalanced. Note
that the fact whether C is balanced or unbalanced does not depend on the choice
of the vertex b1 or the direction of C.
Let C = b1 b2 . . . bp b1 be an oriented cycle. It has two directions: b1 b2 . . . bp b1
and b1 bp bp−1 . . . b1 . In what follows, we will always consider the direction in
which the number of forward arcs is no smaller than the number of backward
arcs. We can assign levels to the vertices of C as follows: level(b1 ) = k, where
k is a non-negative integer, and level(bt+1 ) = level(bt ) + 1, if bt bt+1 is forward
and and level(bt+1 ) = level(bt ) − 1, if bt bt+1 is backward. Clearly, the value of
each level(bi ), i ∈ [p], depends on both k and the choose of the initial vertex b1 .
Feder [2] proved the following useful result.
Proposition 1. The integer k and initial vertex b1 in an oriented cycle C can
be chosen such that level(b1 ) = 0 and level(bi ) ≥ 0 for every i ∈ [p]. If C is
unbalanced, then k and b1 can be chosen such that level(b1 ) = 0 and level(bi ) > 0
for every i ∈ [p] \ {1}.
Since the proposition was proved in [2], we will not give its complete proof.
Instead, we will outline a procedure for finding appropriate k and b1 and remark
on how the procedure can be used in showing the proposition.
Let C = b1 b2 . . . bp b1 be an oriented cycle. We may assume that b1 is chosen
in such a way that if C has a backward edge, then bp b1 is a backward edge.
Compute mi , the number of the forward arcs minus the number of backward
arcs in the oriented path b1 b2 . . . bi , for each i ∈ [p]. Set k = | min{mi : i ∈ [p]}|.
Assign the level to each vertex of C using the level definition and starting from
assigning level k to b1 . By the definition of k, the level of each vertex bj is
non-negative and there are vertices bi of level zero. Choose such a vertex bi
with maximum index i and reassign the levels to the vertices of C as follows.
Consider C  = bi bi+1 . . . bp b1 b2 . . . bi and set level(bi ) = 0 and the rest of the
levels according to the order of vertices given in C  .
This procedure can be turned into a proof of the proposition by observing
that if C  is unbalanced, then the level of b1 in C  will be greater than the level
Minimum Cost Homomorphism Dichotomy for Oriented Cycles 227

b 10 b 12

b7 b9
b 13
b 11

b2 b4 b6 b8
b 14

b1 b3 b5

Fig. 1. A level diagram of oriented cycle Z = b1 b2 . . . b14 b1 , where b1 b2 , b3 b2 , b3 b4 , b5 b4 ,


b5 b6 , b6 b7 , b8 b7 b8 b9 , b9 b10 , b11 b10 , b11 b12 , b13 b12 , b14 b13 , b1 b14 are arcs

of b1 in C. Thus, the levels of all vertices vj , j ∈ [i − 1] will be greater than their


levels in C, implying that the only level zero vertex in C  is bi .
Thus, in the rest of the paper, we may assume that the ‘first’ vertex of b1 of
an oriented cycle C = b1 b2 . . . bp b1 is chosen in such a way that the levels of all
vertices of C satisfy Proposition 1.
We will extensively use the following notation:
V L(C) = {bt : level(bt ) = 0, t ∈ [p]}, h(C) = max{level(bj ) : j ∈ [p]}, and
V H(C) = {bt : level(bt ) = h(C), t ∈ [p]}. Note that for unbalanced cycles C we
have |V L(C)| = 1.
The concepts of this section are illustrated on Figure 1. In particular, Z is
balanced with forward edges b1 b2 , b3 b4 , . . . and backward edges b2 b3 , b4 b5 , . . ..
We have level(b1 ) = level(b3 ) = level(b5 ) = 0, level(b2 ) = level(b4 ) = level(b6 ) =
level(b8 ) = level(b14 ) = 1, level(b7 ) = level(b9 ) = level(b11 ) = level(b13 ) = 2 and
level(b10 ) = level(b12 ) = 3. Thus, h(Z) = 3, V L(Z) = {b1 , b3 , b5 }, V H(Z) =
{b10 , b12 }.

3 k-Min-Max and (k, l)-Min-Max Orderings


All known polynomial cases of MinHOM(H) can be formulated in terms of cer-
tain vertex orderings. In fact, all known polynomial cases can be partitioned
into two classes: digraphs H admitting a Min-Max ordering of their vertices and
digraphs H having a k-Min-Max ordering of their vertices (k ≥ 2). Both types
of orderings are defined in this section, where we also introduce a new type of
ordering, a (k, l)-Min-Max ordering. It may be surprising, but we prove that the
new type of ordering can be reduced to the two known orderings.
Let H be a digraph and let (v1 , v2 , . . . , vp ) be an ordering of the vertices of
H. Let e = vi vr and f = vj vs be two arcs in H. The pair vmin{i,j} vmin{s,r}
(vmax{i,j} vmax{s,r} ) is called the minimum (maximum) of the pair e, f . (The
228 G. Gutin, A. Rafiey, and A. Yeo

minimum (maximum) of two arcs is not necessarily an arc.) An ordering (v1 , v2 ,


. . . , vp ) is a Min-Max ordering of V (H) if both minimum and maximum of ev-
ery two arcs in H are in A(H). Two arcs e, f ∈ A(H) are called a crossing pair
if {e, f } = {g  , g  }, where g  (g  ) is the minimum (maximum) of e, f. Clearly,
to check that an ordering is Min-Max, it suffices to verify that the minimum and
maximum of every crossing pair of arcs are arcs, too. The concept of Min-Max
ordering is of interest due to the following:

Theorem 1. [9] If a digraph H has a Min-Max ordering of V (H), then


MinHOM(H) is polynomial-time solvable.

We will sometimes call a Min-Max ordering also a 1-Min-Max ordering. The


reason for this will become apparent in the rest of this section.
A collection V1 , V2 , . . . Vk of subsets of a set V is called a k-partition of V if
V = V1 ∪ V2 ∪ · · · ∪ Vk , Vi ∩ Vj = ∅ provided i = j.
Let H = (V, A) be a digraph and let k ≥ 2 be an integer. We say that H
has a k-Min-Max ordering of V (H) if there is a k-partition of V into subsets
V1 , V2 , . . . Vk and there is an ordering V i = (v1i , v2i , . . . , v(i)
i
) of Vi for each i such
that

(i) Every arc of H is an arc from Vi to Vi+1 for some i ∈ [k] and
(ii) (V i , V i+1 ) = (v1i , v2i , . . . , v(i)
i
v1i+1 v2i+1 , . . . , v(i+1)
i+1
) is a Min-Max ordering
of the subdigraph of H induced by Vi ∪ Vi+1 for each i ∈ [k]. (All indices are
taken modulo k.)

In such a case, (V 1 , V 2 , . . . , V k ) is a k-Min-Max ordering of V (H); k-Min-Max


orderings are of interest due to the following:

Theorem 2. [8] If a digraph H has a k-Min-Max ordering of V (H), then


MinHOM(H) is polynomial-time solvable.

Our study of MinHOM(H) for oriented cycles H has led us to the following new
concept.

Definition 1. Let H = (V, A) be a digraph and let k ≥ 2 and l be integers.


For l < k we say that H has a (k, l)-Min-Max ordering if there is a (k + l − 2)-
partition of V into subsets V1 , V2 , . . . , Vk , U2 , U3 , . . . , Ul−1 (set U1 = V1 , Ul = Vk )
and there is an ordering V i = (v1i , v2i , . . . , viv (i) ) of Vi for each 1 ≤ i ≤ k and
there is an ordering U i = (ui1 , ui2 , . . . , uiu (i) ) of Ui for each 1 ≤ i ≤ l such that

(i) Every arc of H is an arc from Vi to Vi+1 ) for some i ∈ [k − 1], or is an arc
from Uj to Uj+1 for some j ∈ [l − 1].
(ii) (V i , V i+1 ) is a Min-Max ordering of the subdigraph H[Vi ∪ Vi+1 ] for all
i ∈ [k − 1].
(iii) (U i , U i+1 ) is a Min-Max ordering of the subdigraph H[Ui ∪ Ui+1 ] for all
i ∈ [l − 1].
(iv) (V 1 , V 2 , U 2 ) is a Min-Max ordering of the subdigraph H[V1 ∪ V2 ∪ U2 ].
Minimum Cost Homomorphism Dichotomy for Oriented Cycles 229

(v) (U l−1 , V k−1 , V k ) is a Min-Max ordering of the subdigraph H[Vk−1 ∪ Ul−1 ∪


Vk ].

It turns out that (k, l)-Min-Max orderings can be reduced to p-Min-Max order-
ings as follows from the next assertion:
Theorem 3. If a digraph H has a (k, l)-Min-Max ordering, then MinHOM(H)
is polynomial-time solvable.
Proof. Let H have a (k, l)-Min-Max ordering as described in Definition 1. Let
d = k−l. We will show that H has a d-Min-Max ordering, which will be sufficient
because of Theorems 1 and 2. (Recall that a 1-Min-Max ordering is simply a
Min-Max ordering.) Let us consider two cases.
Case 1: d = 1. It is not difficult to show that the ordering

(V 1 , V 2 , U 2 , V 3 , U 3 , . . . , V k−2 , U k−2 , V k−1 , V k )

is a Min-Max ordering. Indeed, all crossing pairs of arcs are only in the subgraphs
given in (ii)-(v) of Definition 1. According to the definition, the maximum and
minimum of every crossing pair is in H.
Case 2: d ≥ 2. Let si = max{p : i + pd ≤ l} for each i ∈ [d]. Consider the
following orderings for each 2 ≤ i ≤ d

Wi = (V i , U i , V i+d , U i+d , V i+2d , U i+2d , . . . , V i+si d , U i+si d , V i+(si +1)d )

and the ordering

W1 = (V 1 , V 1+d , U 1+d , V 1+2d , U 1+2d , . . . , V 1+s1 d , U 1+s1 d , V 1+(s1 +1)d ).

Observe that W1 , W2 , . . . , Wd form a partition of V (H) and that every arc is


from Wi to Wi+1 for some i ∈ [d], where Wd+1 = W1 . As in Case 1, it is not
difficult to see that (W 1 , W 2 , . . . , W d ) is a d-Min-Max ordering of H.
Remark 1. Notice that not always a p-Min-Max ordering can be reduced to a
(k, l)-Min-Max ordering. As an example, consider the directed cycle C 5 .

4 Balanced Oriented Cycles


We say that a balanced oriented cycle C = b1 b2 . . . bp b1 is of the form (l+ h+ )q
with q ≥ 1 if P = C − bp b1 can be written as
P = P1 R1 P2 R2 . . . Pq Rq , where

V (Pi ) ∩ V L(C) = ∅, V (Pi ) ∩ V H(C) = ∅,


V (Ri ) ∩ V L(C) = ∅, V (Ri ) ∩ V H(C) = ∅

for each i ∈ [q]. We write l+ h+ instead of (l+ h+ )1 . For example, the cycle in
Figure 1 is of the form l+ h+ . Balanced oriented cycles C of the form l+ h+ are
considered in the following:
230 G. Gutin, A. Rafiey, and A. Yeo

Theorem 4. Let C = b1 b2 . . . bp b1 be a balanced oriented cycle of the form l+ h+ .


Then MinHOM(C) is polynomial time solvable.

Proof. Let q = min{j : bj ∈ V H(C)}, let m = h(C) and let V = V (C).


Consider the following ordering V = (bp , bp−1 , . . . , bq+1 , b1 , b2 . . . , bq ) of V . We
can define the following natural (m + 1)-partition of V : V1 , V2 , . . . Vm+1 , where
Vj = {bs ∈ V (C) : level(bs ) = j − 1}. Note that every arc of C is an arc from
Vj to Vj+1 for some j ∈ [m].
Let V j be the ordering of Vj obtained from V by deleting all vertices not in
Vj and let V j = (sj1 , sj2 , . . . , sjb(j) ). Observe that the digraph C[Vj ∪ Vj+1 ] has no
crossing pair of arcs for any j ∈ [m] since, for every pair sjα sj+1 j j+1
β , sγ sδ of arcs in
the digraph, we have that either α ≤ γ and β ≤ δ, or α ≥ γ and β ≥ δ. Thus, C
has an (m + 1)-Min-Max ordering of vertices and, by Theorem 2, MinHOM(C)
is polynomial-time solvable.

The following lemma was first proved in [11]; see also [2,18] and Lemma 2.36 in
[15].

Lemma 1. Let P1 and P2 be two oriented paths of type r. Then there is an


oriented path P of type r that maps homomorphically to P1 and P2 such that
the initial vertex of P maps to the initial vertices of P1 and P2 and the terminal
vertex of P maps to the terminal vertices of P1 and P2 . The length of P is
polynomial in the lengths of P1 and P2 .

We need a modified version of Lemma 1, Lemma 2. We say that an oriented


path b1 b2 . . . bp of type r is of the form (l+ h+ )k if the balanced oriented cycle

b1 b2 . . . bp ar−1 ar−2 . . . a2 a1 b1

is of the form (l+ h+ )k , where b1 a1 a2 . . . ar−2 ar−1 bp is a directed path.

Lemma 2. Let P1 and P2 be two oriented paths of type r. Let P1 be of the form
h+ l+ and let P2 be of the form (l+ h+ )k , k ≥ 1. Then there is an oriented path P
of type r that maps homomorphically to P1 and P2 such that the initial vertex of
P maps to the initial vertices of P1 and P2 and the terminal vertex of P maps to
the terminal vertices of P1 and P2 . The length of P is polynomial in the lengths
of P1 and P2 , and P is of the form (l+ h+ )k .

Proof. We will show that our construction implies that |V (P )| ≤ |V (P1 )| ·


|V (P2 )|.
We first prove the lemma for the case when k = 1. The proof is by induction on
r ≥ 0. If 0 ≤ r ≤ 1, the claim is trivial. Assume that r ≥ 2. Let P1 = a1 a2 . . . ap ,
let P2 = b1 b2 . . . bq , let s1 = min{i : levelP1 (ai ) = r} and let s2 = min{i :
levelP2 (bi ) = r}. Let β1 = min{levelP1 (ai ) : s1 ≤ i} and β2 = min{levelP2 (bi ) :
s2 ≤ i}. Without loss of generality assume that β1 ≤ β2 and let t1 = min{i :
levelP1 (ai ) = β1 and i ≥ s1 } and let s2 = max{i : levelP2 (bi ) = β1 and i ≤ s2 }.
Note that β1 > 1 as P1 is of form h+ l+ .
Minimum Cost Homomorphism Dichotomy for Oriented Cycles 231

By the induction hypothesis, there is an appropriate oriented path P  that can


be mapped homomorphically to a1 a2 . . . as1 −1 and b1 b2 . . . bs2 −1 . There is also
an oriented path P  that can be mapped homomorphically to as1 as1 +1 . . . at1
and bs2 bs2 −1 . . . bt2 (by reversing the two paths and then reversing the path we
get by the induction hypothesis). Furthermore there is an oriented path P 
that can be mapped homomorphically to at1 +1 at1 +2 . . . ap and bt2 +1 bt2 +2 . . . bp .
Let P = P  P  P  (where the arc between the last vertex of P  to the first
vertex of P  is oriented from P  to P  and similarly the arc between P  and
P  is oriented in that direction). Note that P is of type r and form h+ l+ and
maps homomorphically to P1 and P2 such that the initial vertex of P maps
to the initial vertices of P1 and P2 and the terminal vertex of P maps to the
terminal vertices of P1 and P2 . Furthermore |V (P )| ≤ (s1 − 1)(s2 − 1) + (t1 −
s1 + 1)(s2 − t2 + 1) + (p − s1 )(q − t2 ). As (s1 − 1) + (t1 − s1 + 1) + (p − s1 ) = p
and (s2 − 1), (s2 − t2 + 1), (q − t2 ) ≤ q we have |V (P )| ≤ pq ≤ |V (P1 )| × |V (P2 )|.
Now we proceed by induction on k ≥ 1. The base case has already been
proved. Assume that k ≥ 2 and let P1 = a1 a2 . . . ap and P2 = b1 b2 . . . bq . Let
t = max{i : levelP2 (bi ) = 0} and let s = max{i : i < t, levelP2 (bi ) = r}.
By the induction hypothesis, there is an appropriate oriented path P  that can
be mapped homomorphically to P1 and b1 b2 . . . bs . Also, there is an appropriate
oriented path P  (P  ) that can be mapped homomorphically to ap ap−1 . . . a1
and bs bs+1 . . . bt (P1 and bt bt+1 . . . bq ). Now obtain a new oriented path P by
identifying the terminal vertex of P  with the initial vertex of P  and the ter-
minal vertex of P  with the initial vertex of P  . Observe that P satisfies the
required properties.
Consider the oriented cycle C40 = 12341 with arcs 12, 32, 14, 34. Observe that
1, 2, 3, 4 is a Min-Max ordering of V (C40 ) and, thus,
MinHOM(C40 ) is polynomial-time solvable.
Theorem 5. Let C = b1 b2 . . . bp b1 be a balanced oriented cycle of the form
(l+ h+ )k , k ≥ 2, and let C = C40 . Then MinHOM(C) is NP-hard.
Proof. Let C = C40 . Let s = min{j : bj ∈ V H(C)}, q = min{j : j > s, bj ∈
V L(C)}, t = min{j : j > q, bj ∈ V H(C)} and m = h(C). Let P1 = b1 b2 . . . bs ,
P2 = bq bq−1 . . . bs , P3 = bq bq+1 . . . bt and P4 = b1 bp bp−1 . . . bt . Note that each
Pj is of type m. By Lemma 2 there is a path Q1 of type m which is mapped
homomorphically to P4 , P2 and P3 . There is also a path Q2 of type m and which
is mapped homomorphically to P1 and P3 . Since C = C40 and the end-vertices
vertices of Q1 are mapped to the end-vertices vertices of P4 , the path Q1 contains
more than two vertices. Furthermore, by Lemma 2 we may assume that Q1 is of
the form (l+ h+ )k−1 and Q2 is of the form l+ h+ .
Let x (y) be the terminal vertex of Q1 (Q2 ). Form a new oriented path Q =
q1 q2 . . . ql by identifying x with y and let 1 ≤ r ≤ l be defined such that Q1 =
q1 q2 . . . qr and Q2 = ql ql−1 . . . qr . As Q1 contains more than two vertices we have
that r ≥ 3.
Let D be an arbitrary digraph. We will now reduce the problem of find-
ing a maximum independent set in D (i.e. in the underlying graph of D) to
232 G. Gutin, A. Rafiey, and A. Yeo

MinHOM(C). Replace every arc ab of D by a copy of Q identifying q1 with a


and ql with b, and denote the obtained digraph by D . For every path Q in D
which we added in the construction of D we define the cost function c as follows,
where M is a number greater than |V (D)|:

(i) cb1 (q1 ) = cb1 (ql ) = 0 and cbq (q1 ) = cbq (ql ) = 1;
(ii) cbs (qr ) = cbt (qr ) = 0 and cb (qr ) = M for all b ∈ V (C) − {bs , bt };
(iii) cb2 (q) = M for all q ∈ {q2 , q3 , . . . , qr−1 } (= ∅, as r ≥ 3);
(iv) if s = 2 then cb1 (qr−1 ) = M ;
(v) all other costs of mapping vertices of D to H are zero.

Consider a mapping g from V (Q) to V (C), where g(q1 ) = bq , g(ql ) = bq , and


Q1 and Q2 are both homomorphically mapped to P3 (i.e., g(qr ) = bt ). Observe
that g is a homomorphism from Q to C of cost 2. This implies, in particular, that
there is a homomorphism from D to H of cost less than M . We now consider
three other homomorphisms from Q to C:
(a) f (q1 ) = b1 and f (ql ) = bq , and Q1 is mapped to P4 and Q2 is mapped to
P3 homomorphically (i.e., f (qr ) = bt ). The cost of f is 1.
(b) f  (q1 ) = bq and f  (ql ) = b1 , and f  maps Q1 to P2 and Q2 to P1 homo-
morphically (i.e., f  (qr ) = bs ). The cost of f  is 1.
(c) f  (q1 ) = b1 and f  (ql ) = b1 . We will show that the cost of f  is at
least M . If this is not the case then f  (qr ) ∈ {bs , bt } by (ii). First assume that
f  (qr ) = bs . By (iii) no vertex of V (Q1 ) − {qr } is mapped to b2 and if s = 2
then by (iv) qr−1 is not mapped to b1 . However as Q1 is of the form (l+ h+ )k−1
and the path b1 bp bp−1 . . . bs is of the form (l+ h+ )k we get a contradiction to
f  mapping Q1 to C and f  (q1 ) = b1 and f  (qr ) = bs . So now assume that
f  (qr ) = bt . However Q2 is of the form (l+ h+ ) and there is no path in C from
b1 to bt of the form (l+ h+ ), a contradiction. Therefore the cost of f  is at
least M .
By the above a minimum cost homomorphism h : D → C maps all vertices
from a maximum independent set in D to b1 and all other vertices from D to
bq . As finding a maximum independent set in a digraph is NP-hard we see that
MinHOM(C) is NP-hard.

5 Dichotomy and Unbalanced Oriented Cycles

We are ready to prove the following main result:

Theorem 6. Let C be an oriented cycle. If C is unbalanced or C is balanced


of the form l+ h+ or C = C40 , then MinHOM(C) is polynomial-time solvable.
Otherwise, MinHOM(C) is NP-hard.

By Theorems 4 and 5, to show Theorem 6 it suffices to prove the following:

Theorem 7. Let C = b1 b2 . . . bp b1 be an unbalanced oriented cycle. Then


MinHOM(C) is polynomial-time solvable.
Minimum Cost Homomorphism Dichotomy for Oriented Cycles 233

Proof. It is well-known that the minimum cost homomorphism problem to a


directed cycle is polynomial-time solvable (see, e.g., [6]). Thus, we may assume
that C is not a directed cycle. By Proposition 1, we may assume that level(b1 ) = 0
and level(bi ) > 0 for all i ∈ [p] \ {1}. Let q = max{j : bj ∈ V H(C)}.
Consider the oriented path P = b1 b2 . . . bq . Let Vi+1 = {bj ∈ V (P ) : level(bj )
= i} for all i ∈ [k] ∪ {0}, where k = level(bq ). Now consider the oriented path
Q = b1 bp bp−1 . . . bq . Assign levels to the vertices of Q stating from levelQ (b1 ) = 0
and continuing as described in Section 1. Observe that all vertices of Q get non-
negative levels. Let Ui+1 = {bj ∈ V (Q) : levelQ (bj ) = i}, i ∈ [l] ∪ {0}, where
l = levelQ (bq ). Clearly, V1 = U1 = {b1 }; set Ul+1 = Vk+1 .
Consider the ordering U = (b1 , bp , bp−1 , . . . , bq ) of the vertices of Q. For i ∈
[l + 1], the ordering U i is obtained from U by deleting all vertices not in Ui .
Consider the ordering V = (b1 , b2 , . . . , bq ) of the vertices of P . For i ∈ [k + 1],
the ordering V i is obtained from V by deleting all vertices not in Vi . Observe
that the ordering (V 1 , V 2 , U 2 ) of the vertices of C[V1 ∪ V2 ∪ U2 ] has no crossing
arcs. Similarly, the ordering (U l , V k , V k+1 ) of the vertices of C[Ul ∪ Vk ∪ Vk+1 ]
has no crossing arcs, and orderings (V i , V i+1 ) and (U j , U j+1 ) (i ∈ [k], j ∈ [l])
have no crossing arcs. Thus, C has a (k + 1, l + 1)-ordering of vertices. Now we
are done by Theorem 3.

References
1. Bang-Jensen, J., Gutin, G.: Digraphs: Theory, Algorithms and Applications.
Springer, London (2000)
2. Feder, T.: Homomorphisms to oriented cycles and k-partite satisfiability. SIAM J.
Discrete Math. 14, 471–480 (2001)
3. Feder, T., Hell, P., Rafiey, A.: List homomorphism to balanced digraphs (submit-
ted)
4. Gupta, A., Hell, P., Karimi, M., Rafiey, A.: Minimum cost homomorphisms to
reflexive digraphs. In: LATIN 2008 (to appear, 2008)
5. Gutin, G., Hell, P., Rafiey, A., Yeo, A.: Minimum Cost Homomorphisms to Proper
Interval Graphs and Bigraphs. Europ. J. Combin. (to appear)
6. Gutin, G., Rafiey, A., Yeo, A.: Minimum Cost and List Homomorphisms to Semi-
complete Digraphs. Discrete Appl. Math. 154, 890–897 (2006)
7. Gutin, G., Rafiey, A., Yeo, A.: Minimum Cost Homomorphisms to Semicomplete
Multipartite Digraphs. Discrete Applied Math. (to apear)
8. Gutin, G., Rafiey, A., Yeo, A.: Minimum Cost Homomorphisms to Semicomplete
Bipartite Digraphs (submitted)
9. Gutin, G., Rafiey, A., Yeo, A., Tso, M.: Level of repair analysis and minimum cost
homomorphisms of graphs. Discrete Appl. Math. 154, 881–889 (2006); Preliminary
version appeared. In: Megiddo, N., Xu, Y., Zhu, B. (eds.): AAIM 2005. LNCS,
vol. 3521, pp. 427–439. Springer, Heidelberg (2005)
10. Gutjahr, W.: Graph Colourings, PhD thesis, Free University, Berlin (1991)
11. Häggkvist, R., Hell, P., Miller, D.J., Neumann-Lara, V.: On multiplicative graphs
and the product conjecture. Combinatorica 8, 63–74 (1988)
234 G. Gutin, A. Rafiey, and A. Yeo

12. Halldorsson, M.M., Kortsarz, G., Shachnai, H.: Minimizing average completion
of dedicated tasks and interval graphs. In: Goemans, M.X., Jansen, K., Rolim,
J.D.P., Trevisan, L. (eds.) RANDOM 2001 and APPROX 2001. LNCS, vol. 2129,
pp. 114–126. Springer, Heidelberg (2001)
13. Feder, T., Hell, P., Huang, J.: List homomorphisms and circular arc graphs. Com-
binatorica 19, 487–505 (1999)
14. Hell, P., Nešetřil, J.: On the complexity of H-colouring. J. Combin. Theory B 48,
92–110 (1990)
15. Hell, P., Nešetřil, J.: Graphs and Homomorphisms. Oxford University Press, Oxford
(2004)
16. Hell, P., Zhu, X.: The existence of homomorphisms to oriented cycles. SIAM J.
Discrete Math. 8, 208–222 (1995)
17. Jansen, K.: Approximation results for the optimum cost chromatic partition prob-
lem. J. Algorithms 34, 54–89 (2000)
18. Zhu, X.: A simple proof of the multipilicatively of directed cycles of prime power
length. Discrete Appl. Math. 36, 333–345 (1992)
Minimum Leaf Out-Branching Problems

Gregory Gutin1 , Igor Razgon2 , and Eun Jung Kim1


1
Department of Computer Science
Royal Holloway, University of London
Egham, Surrey TW20 0EX, UK
gutin(eunjung)@cs.rhul.ac.uk
2
Department of Computer Science
University College Cork, Ireland
[email protected]

Abstract. Given a digraph D, the Minimum Leaf Out-Branching prob-


lem (MinLOB) is the problem of finding in D an out-branching with the
minimum possible number of leaves, i.e., vertices of out-degree 0. We
prove that MinLOB is polynomial-time solvable for acyclic digraphs. In
general, MinLOB is NP-hard and we consider three parameterizations of
MinLOB. We prove that two of them are NP-complete for every value
of the parameter, but the third one is fixed-parameter tractable (FPT).
The FPT parametrization is as follows: given a digraph D of order n
and a positive integral parameter k, check whether D contains an out-
branching with at most n − k leaves (and find such an out-branching if
it exists). We find a problem kernel of order O(k · 2k ) and construct an
algorithm of running time O(2O(k log k) + n3 ), which is an ‘additive’ FPT
algorithm.

1 Introduction

We say that a subgraph T of a digraph D is an out-tree if T is an oriented tree


with only one vertex s of in-degree zero (called the root). The vertices of T of
out-degree zero are called leaves. If T is a spanning out-tree, i.e. V (T ) = V (D),
then T is called an out-branching of D. Given a digraph D, the Minimum Leaf
Out-Branching problem (MinLOB) is the problem of finding an out-branching
with the minimum possible number of leaves in D. Denote this minimum by
min (D). When D has no out-branching, we write min (D) = 0. Notice that not
every digraph D has an out-branching. It is not difficult to see that D has an
out-branching (i.e., min (D) > 0) if and only if D has just one strongly connected
component without incomming arcs [5]. Since the last condition can be checked
in linear time [5], we may often assume that min (D) > 0.
We first study MinLOB restricted to acyclic digraphs (abbreviated MinLOB-
DAG). MinLOB-DAG was considered in US patent [10], where its application to
the area of database systems was described. Demers and Downing [10] also sug-
gested a heuristic approach to MinLOB-DAG. However no argument or assertion
has been made to provide the validity of their approach and to investigate its

R. Fleischer and J. Xu (Eds.): AAIM 2008, LNCS 5034, pp. 235–246, 2008.

c Springer-Verlag Berlin Heidelberg 2008
236 G. Gutin, I. Razgon, and E.J. Kim

computational complexity. Using another approach, we give a simple proof in


Section 2 that MinLOB-DAG can be solved in polynomial time.
Since MinLOB generalizes the hamiltonian directed path problem, MinLOB
is NP-hard. In this paper, we consider three parameterizations of MinLOB and
show that two of them are NP-complete for every value of the parameter, but the
third one is fixed-parameter tractable. The parameterized problems and related
results are given in Sections 3 and 4. Further research is discussed in Section 5.
We recall some basic notions of parameterized complexity here, for a more
in-depth treatment of the topic we refer the reader to [9,13,21].
A parameterized problem Π can be considered as a set of pairs (I, k) where I
is the problem instance and k (usually an integer) is the parameter. Π is called
fixed-parameter tractable (FPT) if membership of (I, k) in Π can be decided in
time O(f (k)|I|c ), where |I| is the size of I, f (k) is a computable function, and c is
a constant independent from k and I. Let Π and Π  be parameterized problems
with parameters k and k  , respectively. An fpt-reduction R from Π to Π  is a
many-to-one transformation from Π to Π  , such that (i) (I, k) ∈ Π if and only
if (I  , k  ) ∈ Π  with |I  | ≤ g(k) for a fixed computable function g and (ii) R is of
complexity O(f (k)|I|c ). A reduction to problem kernel (or kernelization) is an
fpt-reduction R from a parameterized problem Π to itself. In kernelization, an
instance (I, k) is reduced to another instance (I  , k  ), which is called the problem
kernel ; |I  | is the size of the kernel.
It is easy to see that a decidable parameterized problem is FPT if and only if
it admits a kernelization (cf. [13,21]); however, the problem kernels obtained by
this general result have impractically large size. Therefore, one tries to develop
kernelizations that yield problem kernels of smaller size. The survey of Guo and
Niedermeier [14] on kernelization lists some problem for which polynomial size
kernels and exponential size kernels were obtained. Notice that if a kernelization
can be done in time O(nO(1) + f (k)), then we can obtain so-called an addi-
tive FPT algorithms, i.e., an algorithm of running time O(nO(1) + g(k)), where
f (k) and g(k) are independent of n, which is often significantly faster than its
‘multiplicative’ counterpart.
All digraphs in this paper are finite with no loops or parallel arcs. We use
terminology and notation of [5]; in particular, for a digraph D, V (D) and A(D)
denote its vertex and arc sets. The symbols n and m will denote the number of
vertices and arcs in the digraph under consideration.

2 MinLOB-DAG

Let D be an acyclic digraph. We may assume that D has a unique vertex r of


in-degree 0 as otherwise D has no out-branchings. Let V = V (D) and V  = {v  :
v ∈ V }. Let us define a bipartite graph B of D with partite sets X and X  as
follows: X = V , X  = V  \ {r } and E(B) = {xy  : x ∈ X, y  ∈ X  , xy ∈ A(D)}.
Consider the following algorithm for finding a minimum leaf out-branching T
in an input acyclic digraph D. The algorithm outputs T if it exists and ‘NO’,
otherwise.
Minimum Leaf Out-Branching Problems 237

MINLEAF

1. if the number of vertices with in-degree 0 equals 1 then


r ← the vertex of in-degree 0 else return ‘NO’
2. construct the bipartite graph B of D
3. find a maximum matching M in B
4. M ∗ ← M
5. for all y  ∈ X  not covered by M do
M ∗ ← M ∗ ∪ {an arbitrary edge incident with y  }
6. A(T ) ← ∅
7. for all xy  ∈ M ∗ do A(T ) ← A(T ) ∪ {xy}
8. return T

Theorem 1. Let D be an acyclic digraph. Then MINLEAF returns a mini-


mumleaf out-branching if one exists, or returns ‘NO’ otherwise in time O(m +
n1.5 m/ log n).

Proof. We start with proving the validity of the algorithm. Observe that an
acyclic digraph has an out-branching if and only if there exists only one vertex
of in-degree zero. Hence Step 1 returns ‘NO’ precisely when min (D) = 0.
Let M be the maximum matching obtained in Step 2, let V (M ) be the set of
vertices of B covered by M , and let Z = X \ V (M ) and Z  = X  \ V (M ).
First we claim that Z is the set of the leaves of T , the out-branching of D
obtained in the end of Step 7. Consider the edge set M ∗ obtained at the end of
Step 5. First observe that for each vertex y  ∈ Z  , there exists an edge of E(B)
which is incident with y  since r is the only vertex of in-degree zero and thus
no vertex of Z  is isolated. Moreover, all neighbors of y  are covered by M due
to the maximality of M . It follows that M ∗ ⊇ M covers all vertices of X  and
leaves Z uncovered. Notice that r is covered by M . Indeed there exists a vertex
u such that r is the only in-neighbor of u in D. Hence if r was not covered by
M then u would not be covered by M either, which means we could extend M
by ru , a contradiction.
Consider T which has been obtained in the end of Step 7. Clearly d− T (v) = 1
for all v ∈ V (D) \ {r} due to the construction of M ∗ . Moreover D does not have
a cycle, which means that T is connected and thus is an out-branching. Finally
no vertex of Z has an out-neighbor in T while all the other vertices have an
out-neighbor. Now the claim holds.
Conversely, whenever there exists a minimum leaf out-branching T of D with
the leaf set Z, we can build a matching in B which covers exactly X\Z among the
vertices of X. Indeed, simply reverse the process of building an out-branching T
from M ∗ described at Step 7. If some vertex x ∈ X has more than one neighbor
in X  , eliminate all but one edge incident with x.
Secondly we claim that T obtained in MINLEAF(D) is of minimum number
of leaves. Suppose to the contrary that the the attained out-branching T is not
a minimum leaf out-branching of D. Then a minimum leaf out-branching can
be used to produce a matching of B that covers more vertices of X than M
238 G. Gutin, I. Razgon, and E.J. Kim

does using the argument in the preceding paragraph, a contradiction. Hence


MINLEAF(D) returns a min leaf out-branching T at Step 8.
Finally we analyze the computational complexity of MINLEAF(D). Each step
of MINLEAF(D) takes at most O(m) time except for Step 3. The computation
time required to perform Step 3 is the same as that of solving the maximum car-
dinality matching problem
 on a bipartite graph. The last problem can be solved
in time O(|V (B)|1.5
|E(B)|/ log |V (B)|) [4]. Hence, the algorithm requires at
most O(m + n1.5 m/ log n) time. 

3 Parameterizations of MinLOB
The following is a natural way to parameterize MinLOB.
MinLOB Parameterized Naturally (MinLOB-PN)
Instance: A digraph D.
Parameter: A positive integer k.
Question: Is min (D) ≤ k ?
Clearly, this problem is NP-complete already for k = 1 as for k = 1 MinLOB-
PN is equivalent to the hamiltonian directed path problem. Let v be an arbi-
trary vertex of D. Transform D into a new digraph Dk by adding k vertices
v1 , v2 , . . . , vk together with the arcs vv1 , vv2 , . . . , vvk . Observe that D has a
hamiltonian directed path terminating at v if and only if min(Dk ) ≤ k. Since
the problem is NP-complete of checking whether a digraph has a hamiltonian
directed path terminating at a prescribed vertex, we conclude that MinLOB-PN
is NP-complete for every fixed k.
Clearly, min (D) ≤ n − 1 for every digraph D of order n > 1. Consider a
different parameterizations of MinLOB.
MinLOB Parameterized Below Guaranteed Value (MinLOB-
PBGV)
Instance: A digraph D of order n with min (D) > 0.
Parameter: A positive integer k.
Question: Is min (D) ≤ n − k ?
Solution: An out-branching B of D with at most n − k leaves or the
answer ‘NO’ to the above question.
Note that we consider MinLOB-PBGV as a search problem, not just as a de-
cision problem. In the next section we will prove that MinLOB-PBGV is fixed-
parameter tractable. We will find a problem kernel of order O(k · 2k ) and con-
struct an additive FPT algorithm of running time O(2O(k log k) + n3 ). To obtain
our results we use notions and properties of vertex cover and tree decomposition
of underlying graphs and Las Vergnas’ theorem on digraphs.
The parametrization MinLOB-PBGV is of the type below a guaranteed value.
Parameterizations above/below a guaranteed value were first considered by Ma-
hajan and Raman [20] for the problems Max-SAT and Max-Cut; such parameter-
izations have lately gained much attention, cf. [11,15,16,17,21] (it worth noting
Minimum Leaf Out-Branching Problems 239

that Heggernes, Paul, Telle, and Villanger [17] recently solved the longstanding
minimum interval completion problem, which is a parametrization above guar-
anteed value). For directed graphs there have been only a couple of results on
problems parameterized above/below a guaranteed value, see [6,12].
Let us denote by K 1,p−1 the star digraph of order p, i.e., the digraph with
vertices 1, 2, . . . , p and arcs 12, 13, . . . , 1p. Our success with MinLOB-PBGV may
lead us to considering the following stronger (than MinLOB-PBGV) parameter-
izations of MinLOB.

MinLOB Parameterized Strongly Below Guaranteed Value


(MinLOB-PSBGV)
Instance: A digraph D of order n with min (D) > 0.
Parameter: An integer k ≥ 2.
Question: Is min (D) ≤ n/k ?

Unfortunately, MinLOB-PSBGV is NP-complete for every fixed k ≥ 2. To


prove this consider a digraph D of order n and a digraph H obtained from D
by adding to it the star digraph K 1,p−1 on p = n/(k − 1) vertices (V (D) ∩
V (K 1,p−1 ) = ∅) and appending an arc from vertex 1 of K 1,p−1 to an arbitrary
vertex y of D. Observe that min(H) = p − 1 + min (D, y), where min (D, y) is
the minimum possible number of leaves in an out-branching rooted at y, and
that k1 |V (H)| = p + , where 0 ≤  < 1. Thus, min(H) ≤ k1 |V (H)| if and only if
min (D, y) = 1. Hence, the hamiltonian directed path problem with fixed initial
vertex (vertex y in D) can be reduced to MinLOB-PSBGV for every fixed k ≥ 2
and, therefore, MinLOB-PSBGV is NP-complete for every k ≥ 2.

4 Solving MinLOB-PBGV
The underlying graph U G(D) of a digraph D is obtained from D by omitting all
orientation of arcs and by deleting one edge from each resulting pair of parallel
edges. For a digraph D, let α(D) denote the independence number of U G(D).

Theorem 2 (Las Vergnas[19]). If a digraph D has an out-branching, then


min (D) ≤ α(D).

For an out-branching B of D, let L(B) denote the set of leaves of B. We will


prove the following claim which implies the theorem:
Claim 1. Let B be an out-branching of D with more than α(D) leaves. Then D
contains an out-branching B  such that L(B  ) is a proper subset of L(B).

Proof. We will prove this claim by induction on the number n of vertices in D.


For n ≤ 2 the result holds; thus, we may assume that n ≥ 3 and consider an
out-branching B of D with |L(B)| > α(D). Clearly, D has an arc xy such that
x, y are leaves of B. If the in-neighbor p of y in B is of out-degree at least 2, then
L(B  ) ⊂ L(B), where B  = B + xy − py. So, we may assume that d+ B (p) = 1.
Observe α(D − y) ≤ α(D) < |L(B)| = |L(B − y)|. Hence by the induction
240 G. Gutin, I. Razgon, and E.J. Kim

hypothesis, D − y has an out-branching B  such that L(B  ) ⊂ L(B − y). Notice


that L(B − y) = L(B) ∪ {p} \ {y}. If p ∈ L(B  ), then observe that L(B  + py) ⊂
L(B). Otherwise, L(B  + xy) ⊆ L(B) \ {x} ⊂ L(B). 

A vertex cover of D is a vertex cover of U G(D).

Lemma 1. Let D be a digraph of order n with min (D) > 0. In time O(1.28k +
n3 ), we can find either an out-branching of D with at most n − k leaves or a
vertex cover of D of size less than k.

Proof. It is well-known that α(D) + β(D) = n, where β(D) is the minimum


size of a vertex cover of D. First we can use the vertex cover algorithm of [8]
to find a vertex cover of size less than k in time O(1.2745k k 4 + kn). If no such
vertex cover exists, we have α(D) ≤ n − k and by Theorem 2, D contains an
out-branching B such that |L(B)| ≤ n − k. To find such an out-branching we
can use the procedure LEAFRED described below, which is just an algorithmic
version of the proof of Claim 1.
The procedure LEAFRED(D, B) takes as an input a digraph D with β(D) ≥ k
and an out-branching B of D and finds a new out-branching with leaves at most
α(D). We may assume that the input out-branching B is a DFS tree. We denote
by p(y) the parent of a leaf vertex y in the given out-branching. The correctness
of LEAFRED(D, B) follows from the proof of Claim 1 and it is not hard to see
that its time complexity is O(n3 ).

LEAFRED(D, B)
improve ← true
while improve = true do {
while there is an arc xy such that x and y are leaves and d+ (p(y)) ≥ 2
do B ← B + xy − p(y)y
if there is an arc xy such that x and y are leaves of B then {
B  ← LEAFRED(D − y, B − y)
if p(y) ∈ L(B  ) then B  ← B  + p(y)y
else B  ← B  + xy }
else B  ← B
if |L(B  )| < |L(B)| then B ← B  else improve ← false }
return B 

It follows from Lemma 1 that there is an FPT algorithm that given an instance
(D, k) of the MinLOB-PBGV problem either returns a solution or specifies a
vertex cover of D of size less than k. We are going to show that, in the latter
case, there is a possibility of kernelization. Let U be a vertex cover of D. Let
S ⊆ U , u ∈ U (we allow S = ∅). We denote by V (S, u) a subset of vertices w
of V (D) \ U such that (u, w) ∈ A(D) and N + (w) = S. Let N List be the set of
all non-empty items V (S, u). Now we create a set V  according to the following
algorithm called KERNEL.
Minimum Leaf Out-Branching Problems 241

1. V  ← ∅
2. let all the elements of N List be unmarked
3. while N List has at least one unmarked item V (S, u) do
if |V (S, u) \ V  | ≤ 2|U | then
V  ← V  ∪ V (S, u) else
V  ← V  ∪W , where W is an arbitrary subset of 2|U | vertices of V (S, u)\
V
endif
mark V (S, u)
endwhile
4. V  ← V  ∪ U
5. if D has a vertex v ∗ with in-degree 0 then V  ← V  ∪ {v ∗ }
6. return V 

Let D be the subgraph of D induced by V  . The following lemma claims that



D can serve as a kernel of D with respect to the MinLOB-PBGV problem.
Lemma 2. (D, k) is a ‘YES’ instance of the MinLOB-PBGV problem if and
only if (D , k) is.
Proof. In order to prove this lemma it is more convenient to think of the MinLOB-
PBGV problem as a problem of constructing an out-branching with at least k
non-leaf vertices rather than at most n − k leaf vertices.
Assume that (D , k) is a ‘YES’ instance of the MinLOB-PBGV problem and
let B  be an out-branching of D having at least k non-leaf vertices. By definition
of V  , every vertex w of V (D)\V  has at least one in-neighbor p(w) which belongs
to U ⊆ V  . Add each such vertex w to B  together with arc (p(w), w). Clearly,
the resulting graph B is an out-branching of D whose set of non-leaf-vertices
is a superset of the set of non-leaf vertices of B  . Thus, B has at least k non-
leaf vertices which shows that (D, k) is a ‘YES’ instance of the MinLOB-PBGV
problem.
Assume now that (D, k) is a ‘YES’ instance of the MinLOB-PBGV problem
and let B be an out-branching of D having at least k non-leaf vertices. Let B ∗
be the subgraph of B induced by a set of vertices V ∗ defined as follows.
1. V ∗ contains all vertices of U and all the non-leaf vertices of B.
2. Let u be a non-leaf vertex such that the set X(u) of children of u which are
leaf vertices of B and belong to V (D) \ U is non-empty. Then V ∗ contains
exactly one vertex of X(u).
Since all the non-leaf vertices of B belong to V ∗ , B ∗ is an out-tree. In addition,
observe that every non-leaf vertex of B remains a non-leaf vertex in B ∗ . Indeed,
consider an arbitrary non-leaf vertex u. If at least one child v of u is a non-leaf
vertex itself or v ∈ U then v is included in V ∗ according to the first item of
definition of V ∗ . Otherwise, all the children of u are leaf vertices which belong
to V (D) \ U . According to the second item of the definition of V ∗ at least one
such child belongs to V ∗ . It follows that B ∗ is an out-tree with at least k non-leaf
vertices.
242 G. Gutin, I. Razgon, and E.J. Kim

Let v1 , . . . , vt be the vertices of V ∗ enumerated in some arbitrary order. Fol-


lowing this order, we associate with each vi a vertex ui ∈ V  according to the
following procedure. If vi ∈ V  then ui = vi . Otherwise observe that the in-degree
of vi is at least one. Associate with vi a vertex w such that w is the parent of vi
in B ∗ if vi is a non-root and an arbitrary in-neighbor of vi in D otherwise. Let
ui be an arbitrary vertex of V (N + (vi ), w) ∩ V  which is not equal to uj for any
j < i.
Statement 1. The procedure of construction of u1 , . . . , ut is sound in the sense
/ V  , the procedure always finds an available vertex for ui .
that if vi ∈
Proof of Statement 1. Observe that for vi ∈ / V  , we have |V (N + (vi ), w) ∩ V  | ≥
2|U | by the description of the kernelization algorithm. Since ui is chosen among
vertices in V (N + (vi ), w) ∩ V  for each vi ∈ / V  , it suffices to show that the
number of vertices of V (D) \ U among u1 , . . . , ut does not exceed 2|U |. Indeed,
by construction of u1 , . . . , ut , we have vi ∈ U if and only if ui ∈ U . Therefore,
we may equivalently show that |(V (D) \ U ) ∩ V ∗ | ≤ 2|U |.
The vertices of V (D) \ U in V ∗ can be either non-leaf or leaf vertices. Each
of the non-leaf vertices has a child in U and, of course, no two vertices share a
child. Therefore the number of these vertices is at most U . On the other hand,
by construction of V ∗ , each non-leaf vertex of B ∗ has at most one child which
is a leaf vertex of V (D) \ U . Taking into account that the parent of a vertex
of V (D) \ U may be only a vertex of U , it follows that the number of vertices
of the second category is also at most |U | and the overall number of vertices of
V (D) \ U in B ∗ is at most 2|U | as required. 
Statement 2. Let (vi , vj ) be an arc of B ∗ . Then (ui , uj ) ∈ A(D ).
Proof of Statement 2. The statement is clearly true if vi = ui and vj = uj . If
vi = ui but vj = uj , the statement follows because by selection of ui , ui has the
same out-neighborhood as vi . If vi = ui but vj = uj then the statement follows
because by selection of uj , the parent of vj in B ∗ is an in-neighbor of uj in D
and hence in D . Finally the case where vi = ui and vj = uj cannot happen
because, by definition of a vertex cover, there is no arc between two vertices of
V (D) \ U . 
It follows from the combination of statements that graph D has a subgraph B1
whose set of vertices is u1 , . . . , ut and which is isomorphic to B ∗ . Observe that
any vertex of V  \ V (B1 ) has an in-neighbor among the vertices of B1 . Indeed,
any vertex w of V  \ V (B1 ) belongs to V (D) \ U . Hence all the in-neighbors
of w in D belong to U and thus to V (B1 ). Consequently, if w does not have
in-neighbors in V (B1 ), the in-degree of w in D is 0. It follows that w is the
root vertex of B and hence the root vertex of B ∗ . By construction of u1 , . . . , ut ,
we have w is necessarily one of ui -s, a contradiction. Therefore for each vertex
w of V  \ V (B1 ), we can select an in-neighbor p(w) ∈ V (B1 ) of w in D . Add
vertex w and arc (p(w), w) to B1 for each w ∈ V  \ V (B1 ), and let B2 be the
resulting digraph. It is not hard to see that B2 is an out-branching of D with
Minimum Leaf Out-Branching Problems 243

at least k non-leaf vertices, which shows that (D , k) is a ‘YES’ instance of the
MinLOB-PBGV problem. 

Combining Lemmas 1 and 2 we obtain the following theorem.

Theorem 3. The MinLOB-PBGV problem is FPT. In particular, there is an


O(1.28k + n3 ) time algorithm which given an instance (D, k) of the MinLOB-
PBGV problem, either produces a solution or reduces the instance (D, k) to an
instance (D , k) where |V (D )| = O(k · 2k ).

Proof. It follows from Lemma 1 that there is an O(1.28k + n3 ) algorithm which


finds either vertex cover U of D of size at most k − 1 or produces an out-
branching with at most n − k leaves. Assume that the algorithm has found a
vertex cover U such that |U | < k. Consider the transformation from (D, k) to
(D , k) performed by the algorithm KERNEL given the vertex cover U . Lemma
2 proves that (D, k) is a ‘YES’ instance if and only if (D , k) is. We will show
that this transformation takes O(n3 ) time and |V (D )| = O(k · 2k ) and that will
complete the proof.
For S ⊆ U , let VS = {x ∈ V (D) \ U : N + (x) = S}. Going through all vertices
of D one by one and comparing their out-neighborhoods, we can find all sets VS
in time O(n3 ). Now for each fixed u ∈ U we can construct all non-empty sets
V (S, u) in time O(n2 ). Thus, all non-empty sets V (S, u) can be found in time
O(n3 ). Given the whole list N List, the construction of V  requires O(n3 ).
Let us now compute the number of vertices of D . In terms of |U |, the number
of elements of sets V (S, u) which belong to V  is at most 2|U |·2|U| . In addition at
most |U | + 1 vertices are added to V  at the end of KERNEL. Thus the number
of vertices of V  is O(|U | · 2|U| ) = O(k · 2k ) since |U | < k. 

Thus we have shown that the MinLOB-PBGV problem has a kernel of order
proportional to k · 2k . Now we are going to clarify how we explore this kernel
in order to get the desired out-branching. A straightforward exploration of all
possible out-branchings (using, e.g., the main algorithm of [18]) is not a good
choice because the number of different out-branchings may be up to pp−1 , where
p = |V (D )| = (k · 2k ). Indeed, by the famous Kelly’s formula the number
of spanning trees in the complete graph Kp on p vertices equals pp−2 . In the
complete digraph on p vertices, one can get p out-branchings from each spanning
tree of Kp by assigning a vertex to be the root.
In order to achieve a better running time we provide an alternative way of
showing the fixed-parameter tractability of the MinLOB-PBGV problem based
on the notion of tree decomposition.
A tree decomposition of an (undirected) graph G is a pair (X, U ) where U is
a tree whose vertices we will call nodes and X = {Xi : i ∈ V (U )} is a collection
of subsets of V (G) (called bags) such that

1. i∈V (U) Xi = V (G),
2. for each edge {v, w} ∈ E(G), there is an i ∈ V (U ) such that v, w ∈ Xi , and
3. for each v ∈ V (G) the set of nodes {i : v ∈ Xi } form a subtree of U .
244 G. Gutin, I. Razgon, and E.J. Kim

The width of a tree decomposition ({Xi : i ∈ V (U )}, U ) equals maxi∈V (U) {|Xi |−
1}. The treewidth of a graph G is the minimum width over all tree decompositions
of G. We use the notation tw(G) to denote the treewidth of a graph G.
By a tree decomposition of a digraph D we will mean a tree decomposition of
the underlying graph U G(D). Also, tw(D) = tw(U G(D)).

Theorem 4. There is an algorithm that, given an instance (D, k) of the MinLOB-


PBGV problem, either finds a solution or establishes a tree decomposition of D of
width at most k.

Proof. By Lemma 1, there is an algorithm which either finds a solution or specifies


a vertex cover C of D of size at most k. Let I = {v1 , . . . , vs } = V (D)\C. Consider
a star U with nodes x0 , x1 , . . . , xs and edges x0 x1 , x0 x2 , . . . , x0 xs . Let X0 = C
and Xi = X0 ∪ {vi } for i = 1, 2, . . . , s and let Xj be the bag corresponding
to xj for every j = 0, 1, . . . , s. Observe that ({X0 , X1 , . . . , Xs }, U ) is a tree
decomposition of D and its width is at most k. 

Theorem 4 shows that an instance (D, k) of the MinLOB-PBGV problem can


be reduced to another instance with treewidth O(k). Using standard dynamic
programming techniques we can solve this instance in time 2O(k log k) nO(1) . On
the first glance it seems that this running time makes the above kernelization
redundant. However, although the O(k · 2k ) kernel is not polynomial, it is much
smaller than 2O(k log k) . Therefore if we first find the kernel and then establish the
tree decomposition, the resulting dynamic programming algorithm will run in
time 2O(k log k) + nO(1) without changing the constant at k log k. More precisely,
Theorem 3 and Theorem 4 imply the following corollary.

Corollary 1. Let D a digraph of order n. Suppose that a tree-decomposition


of D of width k is specified. Suppose also that given this tree-decomposition the
MinLOB-PBGV problem can be solved in time 2ck log k nO(1) . Then for any in-
stance (D, k), the MinLOB-PBGV problem can be solved in time O(2ck log k+dk +
1.28k + n3 ), where d is a constant.

Proof. The additional dk at the exponent follows from replacing nO(1) by


(k2k )O(1) . To obtain a vertex cover of size at most k, if one exists, takes O(1.28k +
kn) time. The kernelization can be done in O(n3 ) time by Theorem 3. 

The above results imply the following:

Theorem 5. The MinLOB-PBGV problem can be solved by an additive FPT


algorithm of running time O(2O(k log k) + n3 ).

5 Discussion and Further Research

We have proved that MinLOB-PBGV is FPT. It would be interesting to check


whether MinLOB-PBGV admits significantly more efficient FPT algorithms, i.e.,
Minimum Leaf Out-Branching Problems 245

algorithms of complexity O(ck nO(1) ), where c is a constant. The same question is


of interest for the following related problem, which is the natural parametrization
of the Maximum Leaf Out-Branching problem.

MaxLOB Parameterized Naturally (MaxLOB-PN)


Instance: A digraph D.
Parameter: A positive integer k.
Question: Does D have an out-branching with at least k leaves?

Alon et al. [1,2] proved that this problem is FPT for several special classes of
digraphs such as strongly connected digraphs and acyclic digraphs, and Bonsma
and Dorn [7] proved that the problem is FPT. Note that in the three papers,
O(1)
MaxLOB-PN algorithms are of running time O(2k(log k) · nO(1) ).
Interestingly, MaxLOB-PN remains NP-complete even when the given digraph
D is acyclic [3], which is in a clear contrast with MinLOB-PBGV unless P=NP.

Acknowledgements. Research of Gutin and Kim was supported in part by an


EPSRC grant. Part of the paper was written when Razgon was vising Depart-
ment of Computer Science, Royal Holloway, University of London. The research
of Razgon at the Department of Computer Science, University College Cork was
supported by Science Foundation Ireland Grant 05/IN/I886.

References
1. Alon, N., Fomin, F., Gutin, G., Krivelevich, M., Saurabh, S.: Parameterized Algo-
rithms for Directed Maximum Leaf Problems. In: Arge, L., Cachin, C., Jurdziński,
T., Tarlecki, A. (eds.) ICALP 2007. LNCS, vol. 4596, pp. 352–362. Springer, Hei-
delberg (2007)
2. Alon, N., Fomin, F., Gutin, G., Krivelevich, M., Saurabh, S.: Better Algorithms
and Bounds for Directed Maximum Leaf Problems. In: Arvind, V., Prasad, S. (eds.)
FSTTCS 2007. LNCS, vol. 4855, Springer, Heidelberg (2007)
3. Alon, N., Fomin, F.V., Gutin, G., Krivelevich, M., Saurabh, S.: Spanning directed
trees with many leaves. Report arXiv: 0803.0701 (2008)
4. Alt, H., Blum, N., Melhorn, K., Paul, M.: Computing
 of maximum cardinality
matching in a bipartite graph in time O(n1.5 m/ log n). Inf. Proc. Letters 37,
237–240 (1991)
5. Bang-Jensen, J., Gutin, G.: Digraphs: Theory, Algorithms and Applications.
Springer, Heidelberg (2000), www.cs.rhul.ac.uk/books/dbook/
6. Bang-Jensen, J., Yeo, A.: The minimum spanning strong subdigraph problem is
fixed parameter tractable. Discrete Applied Math. (to appear)
7. Bonsma, P.S., Dorn, F.: An FPT Algorithm for Directed Spanning k-Leaf. Preprint
046-2007, Combinatorial Optimization & Graph Algorithms Group, TU Berlin
(November 2007) (preprint 046-2007)
8. Chandran, L.S., Grandoni, F.: Refined memorization for vertex cover. Inform. Proc.
Letters 93, 125–131 (2005)
9. Downey, R.G., Fellows, M.R.: Parameterized Complexity. Springer, Heidelberg
(1999)
246 G. Gutin, I. Razgon, and E.J. Kim

10. Demers, A., Downing, A.: Minimum leaf spanning tree. US Patent no. 6,105,018
(August 2000)
11. Fernau, H.: Parameterized Algorithmics: A Graph-theoretic Approach. Habilita-
tion thesis, U. Tübingen (2005)
12. Fernau, H.: Parameterized Algorithmics for Linear Arrangement Prob-
lems(manscript, July 2005)
13. Flum, J., Grohe, M.: Parameterized Complexity Theory. Springer, Heidelberg
(2006)
14. Guo, J., Niedermeier, R.: Invitation to Data Reduction and Problem Kernelization.
ACM SIGACT News 38, 31–45 (2007)
15. Gutin, G., Rafiey, A., Szeider, S., Yeo, A.: The Linear Arrangement Problem Pa-
rameterized Above Guaranteed Value. Theory of Computing Systems 41, 521–538
(2007)
16. Gutin, G., Szeider, S., Yeo, A.: Fixed-Parameter Complexity of Minimum Profile
Problems. Algorithmica (to appear)
17. Heggernes, P., Paul, C., Telle, J.A., Villanger, Y.: Interval completion with few
edges. In: Proc. STOC 2007 - 39th ACM Symposium on Theory of Computing,
pp. 374–381 (2007)
18. Kapoor, S., Ramesh, H.: An Algorithm for Enumerating All Spanning Trees of a
Directed Graph. Algorithmica 27, 120–130 (2000)
19. Las Vergnas, M.: Sur les arborescences dans un graphe orienté. Discrete Math. 15,
27–29 (1976)
20. Mahajan, M., Raman, V.: Parameterizing above guaranteed values: MaxSat and
MaxCut. J. Algorithms 31, 335–354 (1999)
21. Niedermeier, R.: Invitation to Fixed-Parameter Algorithms. Oxford University
Press, Oxford (2006)
Graphs and Path Equilibria

Stéphane Le Roux

École normale supérieure de Lyon, Université de Lyon, LIP, CNRS, INRIA, UCBL

Abstract. The quest for optimal/stable paths in graphs concerns a few


practical or theoretical areas. Taking part in the quest, this paper adopts an
abstract, general, equilibrium-oriented approach: it uses (quasi-arbitrary)
arc-labelled digraphs, and assumes little about the structure of the sought
paths and the definition of equilibrium, i.e. optimality/stability. The paper
gives both a sufficient condition and a necessary condition for equilibrium
existence for every ”graph”, pinpoints the difference between these condi-
tions, and shows coincidence when optimality relates to a total order. These
results are applied to network routing.

Keywords: Labelled directed graph, path, preference, equilibrium, op-


timisation, strict weak order, sufficient condition, necessary condition,
induction.

1 Introduction
This paper summarises a 40-page document [4] that presents detailed proofs and
more examples. This paper provides an abstract formalism that enables generic
proofs, yet accurate results, about path equilibria in graphs. Other approaches
to optimisation in graphs may be found in [3], for instance.
This paper introduces dalographs, i.e. finite, arc-labelled, directed graphs with
non-zero outdegree wlog (without loss of generality). In this paper, paths are infi-
nite wlog. Note that the outdegree constraint ensures existence of infinite paths,
starting from any node. This uniformity facilitates an ”algebraic” approach.
Also, paths are non-self-crossing: their shapes resemble 6 or 0 but not 8 or A.
This is often desirable, but may yield a loss of generality in some areas.
In this formalism, a path induces an ultimately periodic sequence of labels
(of arcs that are involved in the path). An arbitrary binary relation over such
sequences is assumed and named preference. Using the preference to compare the
sequences induced by two paths starting from the same node, one can compare
these paths. If a path has no successor wrt the new relation/preference, it is
deemed maximal. A strategy is an object built on a dalograph. It amounts to
every node’s choosing an outgoing arc. Hence from any node, a strategy induces
a path. Finally, an equilibrium is a strategy inducing maximal paths at any node.
This paper gives a sufficient condition on the preference for equilibrium ex-
istence in any dalograph, and examples of relations complying with it: lexico-
graphic and Pareto ordering. The condition involves strict weak orders, which

http://perso.ens-lyon.fr/stephane.le.roux/. Now working at INRIA-Microsoft Re-
search. I thank Pierre Lescanne for his comments on the draft of this paper.

R. Fleischer and J. Xu (Eds.): AAIM 2008, LNCS 5034, pp. 247–258, 2008.

c Springer-Verlag Berlin Heidelberg 2008
248 S. Le Roux

are discussed e.g. in [1]. To prove sufficiency, design the seeking-forward function
that expects a node and returns a path starting from the node: Informally, pick
a (candidate) path that is preference-wise maximal at the given node; follow it
until its current suffix, which is also a path, is not maximal among the suffixes
that form a path when appended to the current prefix; pick a suffix that is max-
imal among these possible suffixes, and append it to the current prefix to form
a new candidate path, and so on till there is only one possible suffix. This pro-
cess terminates due to the non-self-crossing constraint, and it yields a hereditary
maximal path: a path that is maximal at all of its nodes. Equilibrium existence
is proved by induction on the number of arcs in the dalograph, as follows:
– Compute a hereditary maximal path in the dalograph.
– Remove the arcs of the dalograph that the path ignored while visiting adja-
cent nodes. This yields a smaller dalograph.
– Compute an equilibrium on this smaller dalograph and add the ignored arcs
back. This yields an equilibrium for the original dalograph.
Conversely, this paper gives a necessary condition on the preference for equi-
librium existence in every dalograph. The condition involves binary relation clo-
sures that are actually related to the sufficient condition: e.g. sufficiency involves
preference’s transitivity, and necessity involves the preference’s transitive closure.
These closures preserve equilibrium existence: if a preference ensures equilibrium
existence, so do its closures. By the notion of simple closure, the combination of
the above-mentioned closures also preserves equilibrium existence, which gives a
non-trivial necessary condition. This paper also provides an example of a relation
that does not meet the requirements of this condition.
An example shows that the necessary condition is not sufficient in general,
although it is sufficient when preference is a total order. However, it is unclear
whether or not the sufficient condition is necessary, and what a practical nec-
essary and sufficient condition would be. As an application to networking, one
derives a sufficient condition on routing policies for stable routing to exist. This
condition is also necessary when the policy is a total order, as suggested above.
Section 2 defines dalographs and their equilibria; section 3 discusses strict
weak orders; section 4 proves a sufficient condition for equilibrium existence and
gives examples and an application to network routing; section 5 defines simple
closures, proves a necessary condition for equilibrium existence, and gives an
example; section 6 compares the sufficient condition and the necessary condition,
and presents a further application to network routing in the total order case.
Unless said otherwise, universal quantifiers are usually omitted in front of
formal statements: e.g. a claim of the form P (x, y) should be read ∀x, y, P (x, y).
Δ
Also, the notation P (x) = Q(x) means that P is defined as coinciding with Q.

2 Dalographs and Equilibria


This section defines dalographs, walks, paths, and derives a notion of equilibrium
from a notion of maximality for these paths. The more general will be those
dalographs and paths, the more general will be the derived notion of equilibrium.
Graphs and Path Equilibria 249

Definition 1 (Dalograph). A dalograph is a finite directed graph whose arcs


are labelled and whose nodes have non-zero outdegree.
In the definition above, both labelling arcs instead of nodes and demanding that
all nodes have non-zero outdegree do not yield a loss of generality, as justified
in [4]. The dalograph below has four (squared) nodes and five labels.
a5
a3 a1
a2
a4

Definition 2 (Walks and paths). Walks in a digraph are defined as follows.


– The empty word is a walk, and o is a walk for any node o of the digraph.
– If o0 . . . on is a walk, if o does not occur in o0 , . . . , on−1 , and if oo0 is an arc
of the digraph, then oo0 . . . on is also a walk.
Note that if a node occurs twice in a walk, it occurs only twice and it occurs
at the end of the walk which is said to be looping. A looping walk uovo (u and
v are walks, o is a node) induces a path, i.e. the ultimately periodic sequence
u(ov)ω . Given a walk x and a path Γ such that xΓ is also a path, Γ is said to
be a continuation of x. Note that every walk in a dalograph has a continuation,
and that a looping walk uovo has a unique continuation (vo)ω .
In the definition above, paths being infinite does not yield a loss of generality, as
justified in [4]. A non-looping walk u may be represented by the left-hand picture
below; a looping walk uovo may be represented by the right-hand picture.

u uovo

The usual induction principle for walks goes from the empty walk to bigger
walks, along the inductive definition of walks. Here, walks are bounded since
dalographs are finite. This enables an alternative induction principle for walks.
Lemma 3 (Nibbling induction principle for walks). Let P be a predicate
on walks in a dalograph g. Assume that for every walk x, ”P (xo) for all walks
xo” implies ”P (x)” (where o is a node). Then P (x) for every walk x.
A strategy is an object built on a dalograph by choosing an outgoing arc at each
node. In the strategy below, the choices are represented by double lines.
o1 a1 o2 a2

a4 a5 o3 a3
a6 a7
o4 o5
a8
Definition 4 (Strategy). Given a dalograph g, a strategy s on g is a pair (g, c),
where c is a function from the nodes of g to themselves, and such that for all
nodes o, the pair (o, c(o)) is an arc of g.
250 S. Le Roux

Let o be a node of some strategy s = (g, c). Following the choices of s starting
Δ
from c(o) defines (co-inductively) the path p(s, o) = c(o) · p(s, c(o)). For instance
in the picture above, p(s, o4 ) = o1 o2 oω
3 . In turn, any path Γ induces a (ultimately
periodic) sequence of labels seq(Γ ). For instance above, seq(o5 o2 oω ω
3 ) = a6 a2 a3 .
These sequences may be compared through a preference binary relation ≺. More-
over, if paths Γ1 and Γ2 start from the same node and induce sequences γ1 and
γ2 with γ1 ≺ γ2 , one writes Γ1 ≺ Γ2 by abuse of notation.
The following definition captures the notion of maximality (with respect to
a preference) of a path among the continuations of a given walk. In addition,
this paper needs to discuss paths all of whose subpaths are maximal from their
starting points. The notion of hereditary maximality captures this idea.

Definition 5 (Maximal continuation and hereditary maximal path). If


xoΓ is a path in a dalograph g, and if oΓ ≺ oΓ  for all paths xoΓ  in g, one writes
mg,≺ (xo, Γ ). Let Γ be a path. If mg,≺ (o, Γ  ) for any decomposition Γ = xoΓ 
where xo is non-looping, one writes hmg,≺ (Γ ). One forgets the index (g, ≺) when
there is no ambiguity.

A strategy on a dalograph is a local equilibrium at a node if it induces a heredi-


tary maximal path at this node. A global equilibrium is intended to be a strategy
inducing a maximal path at every node, so it can be defined as a strategy that
is a local equilibrium at every node.

Definition 6 (Local and global equilibrium)


Δ Δ
LEq≺ (s, o) = mg,≺ (o, p(s, o)) and GEq≺ (s) = ∀o ∈ g, LEq≺ (s, o).

In the rest of this paper, ”equilibrium” may mean ”global equilibrium”. In the
strategy below, arcs are labelled with natural numbers and ≺ is the lexicographic
extension of the usual order to infinite sequences of natural numbers. So, the
strategy is a local equilibrium for node o but not for node o. Then, lemma 7
says that subpreference preserves (local) equilibrium.

o 2 3

0 0
1 1 1
o
0

Lemma 7 (Equilibrium for subpreference)


≺⊆≺ ⇒ (LEq≺ (s, o) ⇒ LEq≺ (s, o) ∧ GEq≺ (s, o) ⇒ GEq≺ (s, o)).

3 Binary Relations

This section rephrases the notion of strict weak order (studied in [1]) and in-
troduces a few predicates on binary relations over sequences. It also proves a
Graphs and Path Equilibria 251

few properties. As usual, a binary relation ≺ is irreflexive if it complies with the


formula α ≺ α. More generally, it is asymmetric if α ≺ β ⇒ β ≺ α. In addition,
Δ
the corresponding incomparability relation is defined by αβ = α ≺ β ∧ β ≺ α.
Definition 8 (Strict weak order). A strict weak order is an asymmetric re-
lation whose negation is transitive.
The following definition and lemma characterise strict weak orders.
Definition 9 (Imitation). Let ≺ be an asymmetric relation. In this case, the
following two formulas are equivalent. If they hold, ≺ is said to be imitating.
(αβ ∧ γ ≺ α) ⇒ γ ≺ β and (αβ ∧ α ≺ γ) ⇒ β ≺ γ.
Lemma 10. Let ≺ be a binary relation, and let  be the corresponding non-
comparability relation. The following three propositions are equivalent.
1. ≺ is a strict weak order.
2. ≺ is transitive and  is an equivalence relation.
3. ≺ is imitating and has no cycle of length 2 or 3.
The picture below is meant to give an intuition of what a strict weak order
is. The circles represent equivalence classes of . Here we have γ ≺ α, β, δ and
γ, α, β ≺ δ and αβ. Informally, a strict weak order looks like a knotted rope.

≺ ≺ ≺ ≺
γ α β δ

Let ≺ be a binary relation over infinite sequences. Let W be a non-empty


finite set of non-empty finite sequences, with at most one sequence of length 1.
If for all u in W there is v in W such that uα ≺ vβ, one writes W α ≺ W β. Five
predicates on ≺ are defined below. First, E-prefix means preservation by pre-
fix elimination. Second, Gen-E-prefix generalises E-prefix. Third, A-transitivity
generalises transitivity. Fourth, assume that ≺ is transitive and preserved by
prefix addition. If α ≺ uα then uα ≺ u2 α and α ≺ uα ≺ · · · ≺ un α ≺ . . . , and
one might see uω as a possible upper bound for this chain. Subcontinuity cap-
tures this informal thought. Fifth, alt-subcontinuity gives an alternative (slightly
more complex) definition for subcontinuity. A lemma follows.
Definition 11. A relation ≺ over sequences is described with the left-hand words
when complying with the right-hand formulas, where sequences are non-empty.
E − pref ix uα ≺ uβ ⇒ α ≺ β
Gen − E − pref ix Wα ≺ Wβ ⇒ α ≺ β
A − transitive (α ≺ β ∧ uβ ≺ γ) ⇒ uα ≺ γ
Subcontinuous α ≺ uα ⇒ uω ≺ α
Alt − subcontinuous α ≺ tβ ⇒ (vα ≺ β ∨ α ≺ (tv)ω )
Lemma 12. A E-prefix strict weak order is A-transitive, and a E-prefix subcon-
tinuous strict weak order is alt-subcontinuous.
252 S. Le Roux

4 Equilibrium Existence, Examples, and Application

This section proves a sufficient condition for equilibrium existence in any dalo-
graph, it gives examples of relations meeting the requirements of the sufficient
condition, and it applies the result to network routing.
The notion of semi-hereditary maximality lies and makes the connection be-
tween maximality and and hereditary maximality. A lemma follows its definition.

Definition 13 (Semi-hereditary maximal path). Let x be a non-empty walk


of continuation Γ . If m(xy, Γ  ) for all decompositions Γ = yΓ  where xy is a
walk, one writes shm(x, Γ ).

Lemma 14. shm(x, Γ ) ⇒ m(x, Γ ) and m(x, oΓ ) ⇒ shm(xo, Γ ) ⇒ shm(x, oΓ ).

Given a non-empty walk, the function below expects and returns a continuation
of the walk. Informally: If the walk is looping, return its sole continuation. Oth-
erwise, follow the given continuation until its current suffix is not a maximal
continuation of the new walk composed of the given walk and the current prefix
of the given continuation. At that point, feed the function with the new walk
and any of its maximal continuation. Given u a non-empty finite sequence, uf
(resp. ul ) represents the first (resp. last) element of u.

Definition 15 (Seeking-forward function). Let ≺ be an acyclic preference


and g a dalograph. The function F expects a non-empty walk in g and a continua-
tion of this walk. More specifically, F (x, Γ ) is defined recursively along lemma 3.
Δ
– If x is a looping walk of (unique) continuation Γ , let F (x, Γ ) = Γ .
– If x is not a looping walk then case split as follows.
Δ
1. If m(x, Γ ) then F (x, Γ ) = oF (xo, Γ  ), where Γ = oΓ  .
Δ
2. If ¬m(x, Γ ) then F (x, Γ ) = oF (xo, Γ  ) for some oΓ  such that m(x, oΓ  )
and xl Γ ≺ xl oΓ  .

The properties of lemma 16 were proved in the same order they are stated. Their
combination helps prove lemma 17 on sufficiency for equilibrium existence.

Lemma 16. Let g be a dalograph, ≺ an irreflexive and A-transitive preference,


u a non-empty suffix of x, and xo a walk. The following formulas hold.

uF (x, Γ ) ≺ uf Δ ⇒ uΓ ≺ uf Δ
F (x, F (x, Γ )) = F (x, Γ )
F (x, oΓ ) = oΓ ⇒ F (xo, Γ ) = Γ

Moreover, if ≺ is E-prefix, then F (x, Γ ) = Γ ⇒ shm(x, Γ ). If in addition ≺ is


alt-subcontinuous, then shm(o, Γ ) ⇒ hm(oΓ ).

Theorem 17. If a preference is included in a subcontinuous E-prefix strict weak


order, then any dalograph has a global equilibrium with respect to the preference.
Graphs and Path Equilibria 253

Proof. By lemma 7, assume wlog that the preference ≺ is a subcontinuous E-


prefix strict weak order. If all outdegrees equal 1, we are done by irreflexivity
since there is only one possible strategy. Now assume that there is a node o with
at least two outgoing arcs, and proceed by induction on the number of arcs in the
dalograph. If it has one arc only, we are done by the previous case. Now assume
that the claim holds for dalographs with n or less arcs, and consider g with n + 1
arcs. By lemma 12 and assumption, ≺ is irreflexive, A-transitive, E-prefix, and
alt-subcontinuous. By lemma 16 there is a hereditary maximal path Γ starting
from the node o. Let u(av)ω be the induced sequences of labels, depicted below
where u and v are finite (possibly empty) sequences of labels and a is a label.
a
o u
v
Build g  from g by removing the arcs dismissed by the choices along Γ . There
is at least one such arc since Γ starts at o. Below, g is to the left; g  to the right.
a a
o u o u
v v

g  has n or less arcs, so by induction hypothesis, it has an equilibrium s , which


is depicted below. Double lines represent the choices (one per node).
a
o u
v
By construction of g  from g, there is only one possible path from o in g  ,
namely Γ , so s induces Γ at o. Build a new strategy s (related to g) from s ,
by adding back the arcs that were removed when defining g  , as shown below.
a
o u
v
The rest of the proof shows that s is an equilibrium. Since Γ is hereditary
maximal, s is a local equilibrium for any node on Γ . Let o be a node outside Γ ,
and let Γ  be the path induced by s (and s ) from o . Let a path Γ 3 start from
o . If Γ 3 does not involve any arc dismissed by Γ , then Γ 3 is also valid in g  , so
it is not greater than Γ  since s is an equilibrium. If Γ 3 involves such an arc,
then the situation looks like the picture below, where Γ = vΓ  and Γ 3 = uΔ.

o o
Γ u v
Γ  Δ

By hereditary maximality, Γ  ≺ Δ, so uΓ  ≺ uΔ by E-prefix. The path uΓ  is


also valid in g  , so Γ  ≺ uΓ  since s is an equilibrium. So Γ  ≺ uΔ by transitivity
of the negation. So Γ  is also maximal in g, and s is an equilibrium. 

Below, two examples of relations that are (included in) subcontinuous E-prefix
strict weak orders. Other examples involving limit sets are detailed in [4].
254 S. Le Roux

Definition 18 (Lexicographic extension). Let (A, ≺) be a strict weak order.


The lexicographic extension of ≺ is defined for infinite sequences over A.

a≺b α ≺lex β ab


aα ≺ lex
bβ aα ≺lex bβ

For instance 0 · 1ω <lex 1 · 0ω and (0 · 3)ω <lex 1ω <lex (3 · 0)ω , where < is the
usual order over the naturals. The Pareto extension (smaller than lexicographic)
also allows comparing infinite vectors. A vector is greater than another one if it
is not smaller for all components and if it is greater for some component.

Definition 19 (Pareto extension). Let (A, ≺) be a strict weak order. The


Pareto extension of ≺ is defined for infinite sequences of elements of A.
Δ
α ≺P β = ∀n ∈ N, β(n) ≺ α(n) ∧ ∃n ∈ N, α(n) ≺ β(n)

For instance 0 · 1ω <P 1 · 0ω but (0 · 1)ω <P 1ω <P (1 · 3)ω .

Theorem 20. (By theorem 17) A dalograph over elements of a strict weak order
has a global equilibrium with respect to the lexicographic/Pareto extension.

The following defines routing problems and states a condition for every routing
problem to have a routing equilibrium. The condition is decidable for routing
problems with decidable policy, which ought to be the case in the real world.
This approach is different from [2] but may complement it nicely.

Definition 21 (Routing problem). A routing policy is a binary relation over


finite words over labels. A routing problem is a finite digraph whose arcs are
labelled with the labels. In addition, only one node, the target, has outdegree
zero. The target is reachable from any node via some walk. A routing strategy
maps every node (but the target) to one of its outgoing arcs. A strategy is a
routing equilibrium if at any node, the induced path leads to the target, and if
for any node, no strategy induces better (wrt the routing policy) such path.

Lemma 22. If a routing policy is (included in) a E-prefix strict weak order ≺r
such that v ≺r uv for all v and u, every routing problem has an equilibrium.

Proof. A routing problem is translated into a dalograph: add a dummy node


dn, add arcs from the target and dn to dn, and add dummy labels dl on both
arcs. Call L the labels but the dummy label, and define the following preference.

u ≺r v α ∈ Lω u ∈ L∗
udlω ≺ vdlω α ≺ udlω
Like ≺r , ≺ is E-prefix. By v ≺r uv assumption, ≺ is subcontinuous. By theo-
rem 17, the dalograph has an equilibrium, which yields a routing equilibrium. 
Graphs and Path Equilibria 255

5 Preservation of Equilibrium Existence


This section defines the notion of simple closure, states a few properties (all of
which are detailed in [4]), and shows that the combination of the A-transitive
and gen-E-prefix closures preserves equilibrium existence. An example follows.

Lemma 23. Let f0 to fn be functions of type A → A. Let Q be a predicate


on A. Assume that each fk preserves Q. Then for all x in A and all w words on
the fk , we have Q(x) ⇒ Q(w(x)).

In the next definition and lemma, relations have arity r and X is a vector
(X1 , . . . , Xr ) of dimension r. Below, a class of closures (on relations) is defined
together with a union operation. A preservation property follows.

Definition 24 (Simple closure). Let f be an operator on relations. If f is


inductively defined with the first inference rule below and some rules having the
same form as the second inference rule below, then f is a simple closure.

R(X) K(X, {X i }i∈C ) ∧i∈C f (R)(X i )


f (R)(X) f (R)(X)

Let f (resp. g) be a simple closure that is defined by the induction rules F1 to


Fn (resp. G1 to Gm ). Then f + g, the rule union of f and g, is defined by the
Fi and the Gj , and it is also a simple closure.

Lemma 25. Let Q be a predicate on relations that is preserved by the simple


closures f0 to fn and subrelation, i.e. R ⊂ R ⇒ Q(R ) ⇒ Q(R). Then for all
relations R of finite subdomain S, Q(R) implies Q(Σk fk (R) |S ).

The A-transitive (resp. gen-E-prefix) closure of a binary relation is its small-


est A-transitive (resp. gen-E-prefix) superrelation. Lemma 27 is proved by rule
induction and graph merging. (Gen-E-prefix closure enjoys a similar property.)

Definition 26 (A-transitive closure and gen-E-prefix closure)

α≺β α ≺st β uβ ≺st γ α≺β W α ≺sep W β


α ≺st β uα ≺st γ α ≺sep β α ≺sep β

Lemma 27. Let ≺ be a preference, and let α and β be such that α ≺st β. There
exists a dalograph g with the following properties.

– The dalograph g has the following shape (dashed lines represent and delimit
the rest of the dalograph).
β
α

– The path inducing β is not branching after the top node.


– Any equilibrium for g involves the path inducing β.
256 S. Le Roux

The following lemma states that under some conditions (similar to the conclu-
sions of lemma 27), superrelation preserves equilibrium existence.

Lemma 28. Let ≺ and ≺ be two preferences. Assume that ≺ is included in ≺


and that for any α ≺ β, there exists a dalograph g with the following properties.

– The dalograph below is a subgraph of the dalograph g.


o β
α

– The path inducing β is not branching after the top node o.


– Any ≺-equilibrium for g involves the path inducing β.

In this case, if all dalographs have ≺-equilibria, then they have ≺ -equilibria.

The combination closure of a binary relation is its smallest superrelation that is


A-transitive and gen-E-prefix. The sought property follows.

Definition 29 (Combination closure)

α≺β α ≺c β uβ ≺c γ W α ≺c W β
α ≺c β uα ≺c γ α ≺c β

Theorem 30. If all dalographs have ≺-equilibria, then they have ≺c -equilibria.

The relation that is defined below does not guarantee equilibrium existence.

Definition 31. Let (E, ≺) be a strict weak order. A total order on the -equi-
Δ
valence classes is defined as follows: A ≺ B  = ∃x ∈ A , ∃y ∈ B  , x ≺ y.
The max (resp. min) of a finite subset A of E is the maximal (resp. minimal)
-class intersecting A. The max-min order is defined on finite subsets of E.
Δ
A ≺Mm B = max(A) ≺ max(B) ∨ (max(A) = max(B) ∧ min(A) ≺ min(B))

For instance {1, 2, 3} <Mm {0, 4} and {0, 2, 3} <Mm {1, 3}. The max-min set
order is defined below and proved not to guarantee equilibrium existence.

Definition 32 (Max-min set order). Let (E, ≺) be a strict weak order. For
α an infinite sequence over E, let Sα be the set of all elements occurring in α.
Δ
α ≺Mms β = Sα ≺Mm Sβ

Lemma 33. There exists a natural-labelled dalograph with no <Mms -equilibrium.

Proof. 2(02)ω <Mms 21ω and 1ω <Mms (02)ω . Therefore any E-prefix and tran-
sitive relation including <Mms is not irreflexive. Conclude by theorem 30. 
Graphs and Path Equilibria 257

6 Sufficient Condition and Necessary Condition


Theorem 34 gathers the main results of the paper, and rewrites them to enable
comparison between the sufficient and the necessary conditions. These coincide
when the preference is a strict total order, as stated by corollary 35.

Theorem 34
The preference ≺ is included in some ≺ .
The preference ≺ is a E-prefix and subcontinuous strict weak order.

The preference ≺ is included in some ≺ .


The preference ≺ is E-prefix, subcontinuous, transitive, and irreflexive.
The non comparability relation  is transitive.

Every dalograph has a ≺-equilibrium.

The preference ≺ is included in some ≺ .
The preference ≺ is (gen-) E-prefix, (A-) transitive, and irreflexive.

Corollary 35. Let a preference be a strict total order. All dalographs have equi-
libria iff the preference is E-prefix and subcontinuous.

In general, the necessary condition is not a sufficient condition, as shown by the


following example. (More examples in [4].) Let ≺ be defined as followed.

u 1 y 1 β2 ≺ v1 x1 α1 u 2 y 2 β1 ≺ v2 x2 α2
v1 x2 α2 ≺ u1 α1 v2 x1 α1 ≺ u2 α2
v1 x1 y1 β2 ≺ u1 α1 v2 x2 y2 β1 ≺ u2 α2
v1 x2 y2 β2 ≺ u1 α1 v2 x1 y1 β1 ≺ u2 α2

The preference ≺ complies with the necessary condition but the dalograph
below has no ≺-equilibrium. Indeed, the node o1 ”wants” to follow a path leading
to α1 or β1 , while the node o2 ”wants” to follow a path leading to α2 or β2 .
o1 v1 v2 o2
u1 x1 x2 u2
y1 y2
α1 α2
β1 β2

In the total order case, the condition for equilibrium in dalographs yields a
necessary and sufficient condition for routing equilibrium existence in routing
problems. Necessity invokes constructive arguments that are similar to the ones
used for the necessary condition in dalographs. However, the proof is simple
enough so that just doing it is simpler than invoking a big theorem.

Theorem 36. Let ≺r be a total order routing policy. Every routing problem has
an equilibrium iff ≺r is E-prefix and uv ≺r v for all v and non-empty u.
258 S. Le Roux

Proof. Right-to-left: by lemma 22. Left-to-right: by contraposition, assume that


either ≺r is not E-prefix or there exists u and v such that v ≺r uv. First case,
≺r is not E-prefix. So there exists u, v and w such that uv ≺r uw and w ≺r v.
So the left-hand routing problem below has no routing equilibrium.
v u v
u T arget T arget
w u v
Second case, there exists u and v such that v ≺r uv. The right-hand routing
problem above has no routing equilibrium. 

7 Conclusion and Open Questions


This paper defines dalographs, an abstract and general formalism for path equi-
libria in graph-like systems. It shows a sufficient condition on preferences for
equilibrium existence in all dalographs. The proof defines a function recursively
along the nibbling principle (from big walks to small walks), and uses an induc-
tion on the number of arcs in a dalograph. A necessary condition on preferences
is also given via equilibrium-preservation properties proved by rule induction on
simple closures and by a few cut-and-paste on dalographs. The necessary condi-
tion is not sufficient in general, but these conditions coincide when the preference
is a strict total order (this corollary has a direct proof given in [4]). However,
whether or not the sufficient condition is also necessary is an open question. A
few examples show the usefulness of the two conditions in general, and the the-
oretical results are applied to a network routing problem that is also addressed
in [2]. How the two approaches complement each other is still unclear.
This paper is also useful to another respect: many other formalisms that are
different from dalographs also use a notion of preference. In some of those, pref-
erences may be seen as total orders without serious loss of generality: any pref-
erence guaranteeing equilibrium existence is included in some total order with
the same guarantee that is preserved by subrelation. In this case, considering
only total orders somehow accounts for all preferences. However in dalographs,
there might be a guaranteeing preference each of whose linear extension gives no
guarantee. In this case, assuming total ordering may yield a (non-recoverable)
loss of generality. This discussion is continued yet left open in [4].

References
1. Fishburn, P.: Intransitive indifference in preference theory: A survey. Operations
Research 18, 207–228 (1970)
2. Griffin, T., Sobrinho, J.: Metarouting. In: SIGCOMM 2005: Proceedings of the 2005
conference on Applications, technologies, architectures, and protocols for computer
communications, pp. 1–12. ACM Press, New York (2005)
3. Lawler, E.: Combinatorial Optimization: Networks and Matroids. Dover (2001)
4. Le Roux, S.: Graphs and path equilibria. Research report, INRIA (2007),
http://hal.inria.fr/inria-00195379/fr/
No l Grid-Points in Spaces of Small Dimension

Hanno Lefmann

Fakultät für Informatik, TU Chemnitz, D-09107 Chemnitz, Germany


[email protected]

Abstract. Motivated by a question raised by Pór and Wood in connec-


tion with compact embeddings of graphs in Zd , we investigate general-
izations of the no-three-in-line-problem. For several pairs (k, l) we give
algorithmic lower, and upper bounds on the largest sizes of subsets S
of grid-points from the d-dimensional T × · · · × T -grid, where no l dis-
tinct grid-points of S are contained in a k-dimensional affine or linear
subspace.

1 Introduction
The No-Three-in-Line problem, which has been raised originally by Dudeney
[7], asks for the maximum number of grid-points, which can be chosen from the
T × T -grid in Z2 , i.e., from the set {0, . . . , T − 1} × {0, . . . , T − 1}, such that no
three distinct points are on a line, see [5,16]. It has been proved by Erdös [10]
that this maximum number is Θ(T ). The lower bound follows by considering
for primes T the grid-points (x, x2 mod T ), x = 0, . . . , T − 1. For the upper
bound observe that each horizontal line may contain at most two grid-points.
For constructons of (near-)optimal solutions for small values of T see [11,12].
Cohen, Eades, Lin and Ruskey [6] investigated embeddings of graphs into Z3
such that distinct edges (represented by segments) do not cross each other in a
point distinct from the endpoints. One is interested in compact representations
of graphs, in particular, in the minimum volume of an axis-aligned bounding box
in Z3 , which contains the drawing. The endpoints of crossing edges in a drawing
of a graph are coplanar. In connection with this, it has been proved in [6] that
there is a set of Ω(T ) grid-points in the T × T × T -grid, which does not contain
four distinct coplanar grid-points, and up to a constant factor this lower bound
is best possible. Thus, the minimum volume of an axis-aligned bounding box for
a crossing-free drawing of the complete graph Kn on n vertices in Z3 is Θ(n3 ),
see [6] and compare [17].
Pór and Wood [18] considered embeddings of graphs in Z3 , where the line
segments, which represent the edges, do not cross any vertex distinct from its
endpoints. Then n grid-points in Z3 yield a crossing-free drawing of Kn , if no
three of the n grid-points are on a line. Pór and Wood proved in [18] that there
are Ω(T 2 ) grid-points in the T × T × T -grid with no three collinear points, by
considering the set of all triples (x, y, (x2 + y 2 ) mod T ), x, y ∈ {0, . . . , T − 1},
for T a prime with T ≡ 3 mod 4. This gives the upper bound O(n3/2 ) on the
minimum volume of a bounding box of a drawing of Kn in Z3 .

R. Fleischer and J. Xu (Eds.): AAIM 2008, LNCS 5034, pp. 259–270, 2008.

c Springer-Verlag Berlin Heidelberg 2008
260 H. Lefmann

For higher dimensions, Pór and Wood [18] raised the question of determin-
ing vol (n, d, k), which is defined as the minimum volume of an axis-aligned
bounding box for embeddings of n points in Zd , such that no (k + 2) points are
contained in a k-dimensional affine space. By a partition of such a bounding
box into vol (n, d, k)(d−k)/d many affine k-dimensional subspaces they obtained
vol (n, d, k) ≥ (n/(k + 1))d/(d−k) . Known from [6] is that vol (n, 3, 2) = Θ(n3 ),
and in general vol (n, d, d − 1) = Θ(nd ).
A closely related problem – finding in the d-dimensional T × · · · × T -grid
large sets of grid-points with distinct slopes (or distances) – has been considered
in [9,15] and has applications to the problem of measuring distances by using
radar or sonar signals, see [14], compare also [20] for avoiding collinear triples in
connection with perturbation techniques.
Motivated by the question of Pór and Wood, we consider here for fixed in-
tegers d, k, l ≥ 1 lower and upper bounds on the function fd (l, k, T ), which is
defined as the maximum number of grid-points in the d-dimensional T × · · · × T -
grid, such that no l distinct grid-points are contained in a k-dimensional affine
subspace. A lower bound of fd (k + 2, k, T ) = Ω(T β ) yields immediately the
upper bound vol (n, d, k) = O(nd/β ) on the minimum volume of a bounding
box. In the following the focus is on the investigation of the growth of the
function fd (l, k, T ) rather than on vol (n, d, l). In Section 2 we investigate con-
structive lower bounds for fd (l, T ) := fd (l, 1, T ), i.e., no l distinct points are
on a line. We obtain fd (l, T ) = Θ(l · T d−1 ) for l ≥ d + 1. For l ≤ d we prove
fd (l, T ) = Ω(T d(l−2)/(l−1) · poly(log T )). We also give a simple but useful con-
struction for obtaining lower bounds on fD (l, T ) from lower bounds on fd (l, T ),
d < D. In Section 3 we give new upper bounds on fd (k + 2, k, T ) for integers
k ≥ 1, in particular fd (k + 2, k, T ) = O(T 2d/(k+2) ) for k even. We also consider
distributions of grid-points, where no l points are contained in a k-dimensional
linear subspace and disprove a suggested order of the corresponding function
fdlin (l, k, T ), see [4,5]. Moreover, in connection with a question of Füredi [13]
we show for any finite set S ⊂ R2 , which does not contain l collinear points, a
lower bound on the largest size of a subset S  ⊆ S, where S  does not contain
k collinear points, 3 ≤ k < l. All of our arguments for proving lower bounds
are of a probabilistic nature, however, they easily can be made constructive in
polynomial time by using derandomization arguments. In Section 4 we finish
with some concluding remarks.

2 No l Collinear Points
For integers d, l, T with d ≥ 2 and 3 ≤ l ≤ T let fd (l, T ) denote the largest size
of a subset S of grid-points in the d-dimensional T × · · · × T -grid, such that no l
distinct points of S are collinear. By monotonicity we have fd (l+1, T ) ≥ fd (l, T ).
Well-known is the following upper bound on fd (l, T ):
Proposition 1. For integers d, l, T with d ≥ 2 and 3 ≤ l ≤ T it is
fd (l, T ) ≤ (l − 1) · T d−1. (1)
No l Grid-Points in Spaces of Small Dimension 261

Proof. Let S be a subset of grid-points in the d-dimensional T × · · · × T -grid,


such that no l distinct points of S are collinear. Partition the set of grid-
points in the T × · · · × T -grid into T d−1 lines, where each line has the form
(a1 , . . . , ai , x, ai+2 , . . . , ad ) for fixed a1 , . . . , ai , ai+2 , . . . , ad ∈ {0, . . . , T −1}. Each
line contains at most (l − 1) grid-points from S, hence |S| ≤ (l − 1) · T d−1 . 
Next we give lower bounds on fd (l, T ) for arbitrary integers l ≥ 3.
Theorem 1. For fixed integers d ≥ 2 there exists a constant c > 0 such that for
all integers l, T with 3 ≤ l ≤ T it is

⎨c · l · T if l ≥ d + 1
d−1

fd (l, T ) ≥
⎩ l−2
c · T d l−1 if l ≤ d.

The lower bound on fd (d + 1, T ) in Theorem 1 is by Brass and Knauer [4]. They


observed for primes T and integers q that the set of all grid-points (x1 , . . . , xd )
with x1 + x22 + · · · + xdd ≡ q mod T in the d-dimensional T × · · · × T -grid contains
at most d collinear points, thus fd (d + 1, T ) = Ω(T d−1 ). Hence, by Proposition 1
we have fd (d + 1, T ) = Θ(T d−1 ).
As mentioned in the introduction, Pór and Wood [18] obtained f3 (3, T ) =
Ω(T 2 ), which is bigger than the lower bound in Theorem 1, compare also the
remarks following Lemma 1. However, Theorem 1 holds for all pairs (d, l) for
fixed d, and the lower bounds match up to constant factors the upper bounds
(1) for every l ≥ d + 1.
Before proving Theorem 1, we introduce some notation.
For integers a1 , . . . , ad , which are not all equal to 0, let gcd (a1 , . . . , ad ) > 0
denote the greatest common divisor of a1 , . . . , ad .
Let P = (p1 , . . . , pd ) and Q = (q1 , . . . , qd ) be distinct grid-points in the d-
dimensional T ×· · ·×T -grid. Let P Q denote the segment between the grid-points
P and Q, including the endpoints P and Q. The segment P Q contains exactly
(gcd (p1 − q1 , . . . , pd − qd ) + 1) grid-points.
A hypergraph G is given by a pair (V, E), where V is its vertex-set and E ⊆
P(V ) is its edge-set. A subset I ⊆ V of the vertex-set V is called independent, if
I does not contain any edges from E, i.e., E ⊆ I for each edge E ∈ E. The largest
size of an independent set in G is the independence number α(G). A 2-cycle in
G = (V, E) is a pair {E, E  } of distinct edges E, E  ∈ E with |E ∩ E  | ≥ 2. A
2-cycle {E, E  } is called (2, j)-cycle if |E ∩ E  | = j. A hypergraph G without
any 2-cycles is called linear. A hypergraph G = (V, E) is called l-uniform, if each
edge E ∈ E contains exactly l vertices.
In our arguments we use Túran’s theorem for hypergraphs, see [19]:
Theorem 2. Let G = (V, El ) be an l-uniform hypergraph on |V | = N vertices
with average-degree tl−1 := l · |El |/N ≥ 1.
Then, the independence number α(G) of G fulfills:
l−1 N
α(G) ≥ · . (2)
l t
262 H. Lefmann

An independent set I ⊆ V with |I| ≥ ((l − 1)/l) · (N/t) can be found in time
O(N + |El |).

Next we prove Theorem 1:

Proof. We only have to consider the case l = d+1. Form an l-uniform hypergraph
G = (V, El ) with vertex-set V , which consists of all T d grid-points in the d-
dimensional T ×· · ·×T -grid. For distinct grid-points P1 , . . . , Pl let {P1 , . . . , Pl } ∈
El be an edge iff P1 , . . . , Pl are collinear. We want to find a large independent set
I ⊆ V in G, as I yields a subset of grid-points, where no l distinct grid-points
are on a line.
We give an upper bound on the size |El | of the edge-set. Let P1 , . . . , Pl be
distinct, collinear grid-points in the T × · · · × T -grid, where w.o.l.g. P2 , . . . , Pl−1
are contained in the segment P1 Pl . There are T d choices for the grid-point P1 =
(p1,1 , . . . , p1,d ). Any d-tuple (s1 , . . . , sd ) ∈ {−T + 1, −T + 2, . . . , T − 1}d fixes at
most one grid-point Pl = (p1,1 + s1 , . . . , p1,d + sd ) in the T × · · · × T -grid. By
symmetry, which we take into account by a factor of 2d , we may assume that
s1 , . . . , sd ≥ 0. Given the grid-points P1 and Pl with Pl − P1 = (s1 , . . . , sd ) =
 
(0, . . . , 0), on the segment P1 Pl there are less than gcd(sl−2 1 ,...,sd )
choices for the
N 
grid-points P2 , . . . , Pl−1 . With the inequality k ≤ ((e · N )/k)k we obtain


T −1 
T −1 
gcd(s1 , . . . , sd )
|El | ≤ 2d · T d · ···
s1 =0 sd =0
l−2

T −1 
T −1  l−2
e · gcd(s1 , . . . , sd )
≤ 2d · T d · ··· . (3)
s1 =0 sd =0
l−2

For a given divisor g ∈ {1, . . . , T − 1} there are T /g ≤ 2 · T /g integers


x ∈ {0, . . . , T − 1} which are divisible by g, hence (3) becomes
T 
 d  l−2  l−2 
T
2·T e·g 9
|El | ≤ (2 · T ) ·
d
· ≤ (2 · T ) 2d
· · g l−d−2(. 4)
g=1
g l−2 l g=1

T
The sum g=1 g l−d−2 is O(T l−d−1 /l) for l ≥ d + 2, and O(log T ) for l = d + 1,
and O(1) for l ≤ d. Thus, by (4) for fixed d ≥ 2 for a constant c > 0 we infer
⎧ l+d−1
⎨ c · 9l−1 · T ll−1 if l ≥ d + 2
|El | ≤

c · T 2d if l ≤ d.

Hence, the average-degree tl−1 = l · |El |/T d of G fulfills for a constant c > 0:
⎧ 
⎨c · l ≥ d+2
T
l if
t≤
⎩ d
c · T l−1 if l ≤ d.
No l Grid-Points in Spaces of Small Dimension 263

By Theorem 2 we can find in time O(T d + |El |) an independent set I ⊆ V


with
⎧ 1
⎨ 2·c · l · T if l ≥ d + 2
d−1

|I| ≥
⎩ 1 d l−2
2·c · T if l ≤ d.
l−1

The grid-points, which correspond to the vertices of the independent set I satisfy,
that no l distinct points are collinear. 
To improve the results from Theorem 1 for fixed l ≤ d by a logarithmic factor,
we use the following result of Ajtai, Komlos, Pintz, Spencer and Szemeredi [1]
in a version arising from work in [3] and [8].
Theorem 3. Let l ≥ 3 be a fixed integer. Let G = (V, El ) be an l-uniform, linear
hypergraph on |V | = N vertices with average-degree tl−1 = l · |El |/N .
Then the independence number α(G) of G satisfies for a constant Cl > 0:
N 1
α(G) ≥ Cl · · (log t) l−1 . (5)
t
An independent set I ⊆ V with |I| = Ω((N/t) · (log t)1/(l−1) ) can be found in
polynomial time.
Theorem 4. Let d, l ≥ 2 be fixed integers with l ≤ d. Then there exists a
constant c > 0 such that for all integers T ≥ 1:
l−2 1
fd (l, T ) ≥ c · T d l−1 · (log T ) l−1 . (6)
Proof. We form a non-uniform hypergraph G = (V, El ∪ El+1 ). The vertex-set
consists of all T d grid-point from the d-dimensional T × · · · × T -grid and for m =
l, l + 1 and distinct grid-points P1 , . . . , Pm it is {P1 , . . . , Pm } ∈ Em iff P1 , . . . , Pm
are collinear. By the proof of Theorem 1 (see remarks following inequality (4))
for l ≤ d we have for constants c1 , c2 > 0 that
|El | ≤ c1 · T 2d and |El+1 | ≤ c2 · T 2d · log T. (7)
2 ε d/(l−1)
For ε := d/l we select with probability p := T /T uniformly at random
and independently of each other grid-points from the d-dimensional T × · · · × T -
grid. Let V ∗ be the random set of chosen grid-points, let Em∗
:= Em ∩ [V ∗ ]m , and
∗ ∗
let E(|V |), E(|Em |), m = l, l + 1, be their expected sizes. We infer with (7):
E(|V ∗ |) = p · T d = T ε+d(l−2)/(l−1)
E(|El∗ |) = pl · |El | ≤ pl · c1 · T 2d ≤ c1 · T εl+d(l−2)/(l−1)

E(|El+1 |) = pl+1 · |El+1 | ≤ pl+1 · c2 · T 2d · log T ≤ c2 · T ε(l+1)+d(l−3)/(l−1) · log T.
By Markov’s and Chernoff’s inequalities (this argument can be easily deran-
domized in time polynomial in T by using the method of conditional probabili-
ties) there exists a subset V ∗ ⊆ V of grid-points such that
|V ∗ | = (1 − o(1)) · T ε+d(l−2)/(l−1) (8)
|El∗ | ≤ 3 · c1 · T εl+d(l−2)/(l−1)
(9)

|El+1 | ≤ 3 · c2 · T ε(l+1)+d(l−3)/(l−1)
· log T. (10)
264 H. Lefmann

By (8) and (10) it is T ε(l+1)+d(l−3)/(l−1) · log T = o(T ε+d(l−2)/(l−1) ) for ε =


d/l2 , thus

|El+1 | = o(|V ∗ |). (11)

Let G ∗ = (V ∗ , El∗ ∪El+1



) be the induced subhypergraph of G on V ∗ . We delete one

vertex from each edge E ∈ El+1 . For distinct edges E, E  ∈ E with |E ∩ E  | ≥ 2,
all grid-points in E ∪ E  are collinear, as two distinct grid-points determine a
unique line. Thus, we have destroyed all 2-cycles in G ∗ . Let V ∗∗ be the set of
remaining vertices, where |V ∗∗ | = (1−o(1))·|V ∗ | ≥ |V ∗ |/2 by (11). The induced,
uniform subhypergraph G ∗∗ = (V ∗∗ , El∗∗ ) of G on V ∗∗ with El∗∗ := El∗∗ ∩ [V ∗∗ ]l
is linear. We infer with (8) and (9):

|V ∗∗ | ≥ (1/2) · T ε+d(l−2)/(l−1) and |El∗∗ | ≤ 3 · c1 · T εl+d(l−2)/(l−1) , (12)

hence the average-degree tl−1 of G ∗∗ satisfies:

l · |El∗∗ |
tl−1 = ≤ 6 · c1 · l · T ε(l−1) := tl−1
0 . (13)
|V ∗∗ |

Since G ∗∗ is linear, we can apply Thereom 3 and we infer with (12) and (13) for
the independence number α(G) for constants Cl , Cl > 0:

|V ∗∗ | |V ∗∗ |
α(G) ≥ α(G ∗∗ ) ≥ Cl · · (log t)1/(l−1) ≥ Cl · · (log t0 )1/(l−1) ≥
t t0
(1/2) · T ε+d(l−2)/(l−1) 1/(l−1)
≥ Cl · · log (6 · c1 · l)1/(l−1) · T ε
(6 · c1 · l)1/(l−1) · T ε
≥ Cl · T d(l−2)/(l−1) · (log T )1/(l−1) ,

and by Theorem 3 such an independent set can be constructed in time polynomial


in T . This shows fd (l, T ) = Ω(T d(l−2)/(l−1) · (log T )1/(l−1) ). 

Some of the few known lower bounds on fd (l, T ) have been shown for small
dimension d ≥ 2. Having a good construction for small d might also give a good
construction for higher dimensions as the following observation shows.

Lemma 1. For integers d, g, h, l ≥ 2 it is

fg+h (l, T ) ≥ fg (l, T ) · fh (l, T ).

By Lemma 1 we infer by induction that fgd (l, T ) ≥ (fd (l, T ))g for integers g ≥ 1.

Proof. Let S and S  be subsets of a g- and h-dimensional T × · · · × T -grid with


|S| = fg (l, T ) and |S  | = fh (l, T ), respectively, where S and S  do not contain
any l distinct points on a line. Let S ∗ := S × S  be the Cartesian product of S
and S  in the (g + h)-dimensional T × · · · × T -grid, i.e., |S ∗ | = fg (l, T ) · fh (l, T ).
Assume for contradiction, that the set S ∗ contains l distinct collinear grid-points,
say si = s + λi · v, i = 1, . . . , l, with pairwise distinct λ1 , . . . , λl , where addition
No l Grid-Points in Spaces of Small Dimension 265

is component-wise. Restricting to the first g coordinates, i.e., to the points si (≤


g) = s(≤ g) + λi · v(≤ g) ∈ S in dimension g, by choice of the set S these points
cannot be all distinct, and for some i = j we have si (≤ g) = sj (≤ g), thus
(λi − λj ) · v(≤ g) = (0, . . . , 0), and hence v(≤ g) = (0, . . . , 0). Restricting to the
last h coordinates, i.e., to the points si (≥ g +1) = s(≥ g +1)+λi ·v(≥ g +1) ∈ S 
in dimension h yields v(≥ g + 1) = (0, . . . , 0), hence v = v(≤ g) × v(≥ g + 1) =
(0, . . . , 0), which is a contradiction. 
By using f3 (3, T ) = Ω(T 2 ) from [18], and f2 (3, T ) = Ω(T ) we infer with
Lemma 1 that that fd (3, T ) = Ω(T (2d−2)/3 ), which is bigger than the lower
bound fd (3, T ) = Ω(T d/2 ) from Theorem 1. By Lemma 1 we infer with Theo-
rem 1 for l = d + 1 that fgd (d + 1, T ) = Ω(T g(d−1) ), which yields asymptotically
the same lower bound as in Theorem 1.
However, for l ≤ d Theorem 4 and Lemma 1 gives fgd (l, T ) = Ω(T gd(l−2)/(l−1) ·
(log T )g/(l−1) ), which is better than the direct application of Theorem 4, and in
general we have:
Corollary 1. For fixed integers d, l ≥ 3 with l ≤ d and any integers T ≥ 1 it is

fd (l, T ) = Ω(T d(l−2)/(l−1) · (log T )d/l/(l−1) ).

3 No (k + 2) Points in Affine k-Space or Linear


(k + 1)-Space
Here we consider higher dimensional versions of Theorem 1. For l ≥ k + 2, let
fd (l, k, T ) denote the maximum number of grid-points in the d-dimensional T ×
· · · × T -grid, such that no l distinct grid-points are contained in a k-dimensional
affine subspace of Rd . We have by monotonicity fd (l + 1, k, T ) ≥ fd (l, k, T ).
The d-dimensional T × · · · × T -grid can be partitioned into T d−k many k-
dimensional affine spaces, namely for fixed a1 , . . . , ad−k ∈ {0, . . . , T − 1}, into
the k-dimensional affine spaces given by all points (a1 , . . . , ad−k , xd−k+1 , . . . , xd ),
hence it follows

fd (l, k, T ) ≤ (l − 1) · T d−k . (14)

For k = d − 1 and fixed l ≥ d + 1 the upper bound (14) is asymptotically


sharp, namely for primes T the set of points (x mod T, x2 mod T, . . . , xd mod T ),
x = 0, . . . , T − 1, on the modular moment-curve meets every (d − 1)-dimensional
affine space in at most d points, compare [5,20], thus

fd (l, d − 1, T ) = Θ(T ). (15)

We can improve on the upper bound (14) for certain pairs (l, k) as follows.
Lemma 2. Let d, k ≥ 1 with k ≤ d−1 be fixed integers. Then, for some constant
c > 0 it is:
d
fd (k + 2, k, T ) ≤ c · T (k+1)/2 (16)
266 H. Lefmann

For even k ≥ 2, the upper bound (16) on fd (k + 2, k, T ) is smaller than (14) for
k < d − 2, and the exponents of T are equal for k = d − 2 in both bounds, and
(14) is smaller than (16) only for k = d − 1. For odd k ≥ 1, (16) is smaller than
(14) for (d − 1)/2 − (d − 1)2 /4 − d ≤ k ≤ (d − 1)/2 + (d − 1)2 /4 − d.

Proof. Let k ≥ 2 be even and set g := k/2. Let S be a subset of the d-dimensional
T × · · · × T -grid, where no (k + 2) distinct points in S are contained in a k-
dimensional affine subspace, w.l.o.g. |S| ≥ k + 2. Consider the set Sg+1 of all
(g + 1)-term sums of distinct elements from S with addition component-wise:

Sg+1 := {s1 + · · · + sg+1 | s1 , . . . , sg+1 ∈ S are pairwise distinct}.

We claim that for distinct grid-points s1 , . . . , sg+1 ∈ S and distinct t1 , . . . , tg+1 ∈


S with {s1 , . . . , sg+1 } = {t1 , . . . , tg+1 } it is

s1 + · · · + sg+1 = t1 + · · · + tg+1 . (17)

Otherwise, we have s1 + · · · + sg+1 = t1 + · · · + tg+1 for some distinct grid-points


s1 , . . . , sg+1 ∈ S and distinct t1 , . . . , tg+1 ∈ S. Assume that for some integer
j ≥ 1 it is si = ti , i = 0, . . . , j − 1, and that sj , . . . , sg+1 , tj , . . . , tg+1 are pairwise
distinct grid-points. Then, it is sj + · · · + sg+1 = tj + · · · + tg+1 , hence we have
found 2 · (g + 2 − j) = k + 4 − 2 · j distinct grid-points in S, which are contained in
a (k + 2 − 2 · j)-dimensional affine space. Adding 2 · j further distinct grid-points
from S to sj , . . . , sg+1 , tj , . . . , tg+1 yields (k + 2) grid-points in the set S, which
are contained in a k-dimensional  |S|affine
 space, a contradiction.
By (17) we infer |Sg+1 | = g+1 , and all points in Sg+1 are contained in a
((g + 1) · T ) × · · · × ((g + 1) · T )-grid, thus we obtain

|S|
= |Sg+1 | ≤ ((g + 1) · T )d ,
g+1

and with k = 2 · g for a constant c > 0 we have |Sg+1 | ≤ c · T 2d/(k+2) , hence


fd (k + 2, k, T ) ≤ c · T 2d/(k+2) .
Let k ≥ 1 be odd. If a subset S of the d-dimensional T × · · · × T -grid does
not contain (k + 2) distinct grid-points, which are contained in a k-dimensional
affine subspace, then S also does not contain (k + 1) distinct points, which are
contained in a (k − 1)-dimensional affine subspace. With the already proved
upper bound for even values we infer for k ≥ 1 odd for a constant c > 0 that
fd (k + 2, k, T ) ≤ fd (k + 1, k − 1, T ) ≤ c · T 2d/(k+1) . 

Concerning lower bounds, Brass and Knauer proved in [4] for fixed integers
d, k, l ≥ 2 by a random selection of grid-points from the T × · · · × T -grid that

fd (l, k, T ) = Ω(T d−k−(d(k+1)/(l−1)) ). (18)

Then (18) guarantees only fd (l, k, T ) = Ω(T ) for l − 1 ≥ d(k + 1)/(d − k − 1) for
k ≤ d − 2. One can improve (18) a little by using a (slightly) different argument:
No l Grid-Points in Spaces of Small Dimension 267

Lemma 3. For fixed integers d, k, l ≥ 1 with k ≤ d−1 and l ≥ k+2 and integers
T ≥ 1 it is:

fd (l, k, T ) = Ω(T d−k−(k(d+1)/(l−1)) ). (19)

Notice that (19) is bigger than (18) for k < d.


Proof. Form a l-uniform hypergraph G = (V, El ) with vertex-set V consist-
ing of all T d grid-points from the d-dimensional T × · · · × T -grid. For grid-
points P1 , . . . , Pl ∈ V let {P1 , . . . , Pl } ∈ El iff P1 , . . . , Pl are contained in a
k-dimensional affine subspace. We want to get a large independent set in G.
Each k-dimensional affine subspace contains at most T k grid-points from the
d-dimensional T × · · · × T -grid. The number of k-dimensional affine subspaces,
which intersect the d-dimensional T × · · · × T -grid in at least (k + 1) grid-points,
 Td 
is at most k+1 . We infer for a constant c > 0
 k 
T Td
|E| ≤ · ≤ c · T kl+d(k+1) ,
l k+1

hence the average-degree tl−1 of G fulfills for some constant c > 0:

l · |El | l · c · T kl+d(k+1)
tl−1 = ≤ ≤ c · T k(d+l) . (20)
|V | Td
By Theorem 2 and (20) we can find in time polynomial in T an independent set
I ⊆ V in G, such that for a constant c > 0 it is

l−1 Td
|I| ≥ · 1/(l−1) ≥ c ·T d−k−(k(d+1)/(l−1)) . 
l c · T k(d+l)/(l−1)
Some more appropiate representations of low-dimensional subspaces would pos-
sibly give a better counting of the bad objects than that in the proof of Lemma 3,
if one wants to apply a random selection process as given above.
Next we consider linear subspaces. Let fdlin (l, k, T ) denote the maximum num-
ber of grid-points in the d-dimensional T ×· · ·×T -grid, such that no l grid-points
are contained in a k-dimensional linear subspace. From number theory it is
known [5] that for fixed d ≥ 2 it is fdlin (2, 1, T ) = Θ(T d ). Bárány, Harcos, Pach
and Tardos proved in [2] that fdlin (d, d − 1, T ) = Θ(T d/(d−1) ) for fixed d ≥ 2.
Based on this, Brass and Krauer [4] conjectured (stated as a problem in [5]) that
(d−k)d
fdlin (k + 1, k, T ) = Θ(T d−1 ). (?) (21)

However, one can show the following:


Lemma 4. For fixed integers d, k with 1 ≤ k ≤ d − 1 there exists a constant
c > 0, such that for every integer T ≥ 1 it is

d
fdlin (k + 1, k, T ) ≤ c · T k/2 . (22)
268 H. Lefmann

For odd k the upper bound (22) is asymptotically smaller than the conjectured
growth of fdlin (k + 1, k, T ) in (21) for 1 < k < d − 2 with equality for k =
d − 2. Similarly, for even k the upper bound (22) is smaller than in (21) for
d/2 − d2 /4 − 2d + 2 < k < d/2 + d2 /4 − 2d + 2. Hence, (21) does not hold
for several values of k, d.

Proof. The proof is similar to that of Lemma 2, therefore we only sketch it.
Let k ≥ 1 be an odd integer and set g := (k + 1)/2. Let S be a subset of the
d-dimensional T × · · · × T -grid, where no (k + 1) distinct points from S are
contained in a k-dimensional linear subspace, w.l.o.g. |S| ≥ k + 1. Let

Sg := {s1 + · · · + sg | s1 , . . . , sg ∈ S are pairwise distinct}.

As in the proof of Lemma 2, for distinct grid-points s1 , . . . , sg ∈ S and distinct


t1 , . . . , tg ∈ S with {s1 , . . . , sg } = {t1 , . . . , tg } it is s1 + · · · + sg = t1 + · · · + tg , as
otherwise we can find (k + 1) distinct grid-points in S, which are contained in
 
a k-dimensional linear subspace, a contradiction, hence |Sg | = |S| g ≤ (g · T )d ,
lin
and we have fd (k + 1, k, T ) = O(T 2d/(k+1)
) for odd k ≥ 1.
For even k ≥ 2 we infer as in the proof of Lemma 2 that for a constant c > 0
it is fdlin (k + 1, k, T ) ≤ fdlin (k, k − 1, T ) ≤ c · T 2d/k . 

Related here is a problem, which has been investigated by Füredi in [13]. He


considered finite sets S ⊂ R2 of points, which for fixed l ≥ 3 do not contain
l collinear points. He asks for the largest size αk (S) of a subset of S, which
does not contain any k points on a line, where k < l. He proved in [13] that
αk (S) = Ω(|S|(k−2)/(k−1) ). As asked for in [13], this lower bound on αk (S) can
be improved to αk (S) = Ω(|S|(k−2)/(k−1) ·(log |S|)1/(k−1) ) as the following shows.

Theorem 5. Let d, k, l ≥ 2 be fixed integers with 3 ≤ k < l. Let S ⊂ Rd be a


finite set with |S| = N , where S does not contain l collinear points.
Then, one can find in time polynomial in N a subset S  ⊆ S, such that S 
does not contain k collinear points, and
k−2
|S  | = Ω(N k−1 · (log N ) k−1 ).
1
(23)

Proof. We construct a hypergraph G = (S, Ek ) with vertex-set S. For any k


distinct points P1 , . . . , Pk ∈ S let {P1 , . . . , Pk } ∈ Ek iff P1 , . . . , Pk are collinear.
We wanttofind a large independent set in G. The set S with |S| = N generates
at most N2 lines, as two distinct points determine uniquely a line. Each line
contains at most (l − 1) points from S, hence  on each line the number of k-
element sets of collinear points is at most l−1 k , and we infer for a constant
c > 0:
 
N l−1
|Ek | ≤ · ≤ c · N 2. (24)
2 k

Next we give upper bounds on the numbers s2,j (G) of (2, j)-cycles in G, j =
2, . . . , k − 1. For a (2, j)-cycle {E, E  } in G all points in E ∪ E  are collinear.
No l Grid-Points in Spaces of Small Dimension 269

Thus we have s2,j (G) = 0 for j ≤ 2 ·k − l, as the set S does not contain l collinear
points. For j > 2 · k − l we obtain as in (24) for some constant c > 0:
 
N l−1
s2,j (G) ≤ · ≤ c · N 2 . (25)
2 2·k−j
For ε := 1/k 2 , we select uniformly at random and independently of each other
points from S with probability p := N ε /N 1/(k−1) . Let S ∗ ⊆ S be the random
set of chosen points and let G ∗ = (S ∗ , Ek∗ ) with Ek∗ := Ek ∩ [S ∗ ]k be the induced
subhypergraph of G on S ∗ . The expected numbers satisfy E[|S ∗ |] = p · |S| =
p · N , and E[|Ek∗ |] = pk · |Ek | and E[s2,j (G ∗ )] = p2k−j · s2,j (G), j = 2, . . . , k − 1.
By Markov’s and Chernoff’s inequality and with (24) and (25) there exists an
induced subhypergraph G ∗ = (S ∗ , Ek∗ ) of G such that
k−2
|S ∗ | ≥ p · N/2 = N k−1 +ε /2 (26)
k−2
|Ek∗ | ≤ 3 · pk · |Ek | ≤ 3 · c · N k−1 +εk (27)
j−2
∗ 
s2,j (G ) ≤ 3 · p 2k−j
· s2,j (G) ≤ 3 · c · N k−1 +ε(2k−j) . (28)
j−2 k−2
By (26) and (28) it is N k−1 +ε(2k−j) = o(N k−1 +ε ), j = 2, . . . , k − 1, for
ε ≤ 1/(2 · k 2 ), thus
s2,j (G ∗ ) = o(|S ∗ |). (29)
Discard one vertex from each (2, j)-cycle in G ∗ , j = 2, . . . , k − 1. By (29) we
obtain a subset S ∗∗ ⊆ S ∗ with |S ∗∗ | = (1 − o(1)) · |S ∗ | ≥ |S ∗ |/2. The induced
subhypergraph G ∗∗ = (S ∗∗ , Ek∗∗ ) of G ∗ on S ∗∗ with Ek∗∗ := Ek∗ ∩ [S ∗∗ ]k is linear.
With |Ek∗∗ | ≤ |Ek∗ | and (27) we infer for the average-degree (t∗∗ )k−1 of G ∗∗ :
k−2
∗∗ k−1 k · |Ek∗∗ | N k−1 +εk
(t ) := ≤ 6 · k · c · = 6 · k · c · N ε(k−1) =: (t∗∗
0 )
k−1
.(30)
|V ∗∗ | k−2
N k−1 +ε
By Theorem 3 with (30) one can find in time polynomial in N an independent
set I ⊆ S ∗∗ , such that, as ε > 0 is fixed, for constants Ck , Ck > 0 we have
|S ∗∗ | |S ∗∗ |
· (log t∗∗ ) k−1 ≥ Ck · ∗∗ · (log t∗∗
1 1
|I| ≥ Ck · ∗∗ 0 )
k−1 ≥
t t0
k−2
(1/2) · N k−1 +ε 1
1
k−1
≥ Ck 1 · log (6 · k · c) k−1 · N ε
(6 · k · c) k−1 · N ε
k−2
≥ Ck · N k−1 · (log N ) k−1 .
1

The set I does not contain k distinct collinear points. 

4 Concluding Remarks
We have considered extensions of the no-three-in-line-problem, motivated by
questions on the embeddings of graphs in Zd . Very desirable would be construc-
tive lower, and upper bounds on the function fd (l, k, T ), as already for the case
270 H. Lefmann

k = 2 and arbitrary fixed d the known lower bounds are quite weak. Towards
this, a better counting of the incidences of given sets of grid-points and affine or
linear subspaces seems to be necessary.

References
1. Ajtai, M., Komlós, J., Pintz, J., Spencer, J., Szemerédi, E.: Extremal Uncrowded
Hypergraphs. J. Comb. Theory Ser. A 32, 321–335 (1982)
2. Bárány, I., Harcos, G., Pach, J., Tardos, G.: Covering Lattice Points by Subspaces.
Per. Math. Hung. 43, 93–103 (2001)
3. Bertram–Kretzberg, C., Lefmann, H.: The Algorithmic Aspects of Uncrowded Hy-
pergraphs. SIAM J. on Comput. 29, 201–230 (1999)
4. Brass, P., Knauer, C.: On Counting Point-Hyperplane Incidences. Comp. Geo. 25,
13–20 (2003)
5. Brass, P., Moser, W., Pach, J.: Research Problems in Discrete Geometry, pp. 417–
421. Springer, Heidelberg (2005)
6. Cohen, R.-F., Eades, P., Lin, T., Ruskey, F.: Three-Dimensional Graph Drawing.
Algorithmica 17, 199–208 (1996)
7. Dudeney, H.E.: Amusements in Mathematics, Nelson, London, pp. 94–222 (1917)
8. Duke, R.A., Lefmann, H., Rödl, V.: On Uncrowded Hypergraphs. Rand. Struct. &
Algorithms 6, 209–212 (1995)
9. Erdős, P., Graham, R.L., Rusza, I.,, H.: Bounds for Arrays of Dots with Distinct
Slopes or Lengths. Combinatorica 12, 39–44 (1992)
10. Erdös, P., Roth, K.-F.: On a Problem of Heilbronn. J. London Math. Soc. 26,
198–204 (1951)
11. Flammenkamp, A.: Progress in the No-three-in-a-Line-Problem. J. Comb. Theory,
Ser. A 60, 305–311 (1992)
12. Flammenkamp, A.: Progress in the No-three-in-a-Line-Problem. II. J. Comb. The-
ory, Ser. A 81, 108–113 (1998)
13. Füredi, Z.: Maximal Independent Subsets in Steiner Systems and in Planar Sets.
SIAM J. Disc. Math. 4, 196–199 (1991)
14. Golomb, S.W.: Construction of Signals with Favourable Correlation Properties.
Surveys in Combinatorics, London Mathematical Society LNS 166, 1–39 (1991)
15. Golomb, S.W., Taylor, H.: Two-dimensional Synchronization Patterns for Mini-
mum Ambiguity. IEEE Transactions Information Theory IT-28, 600–604 (1982)
16. Guy, R.: Unsolved Problems in Number Theory, 2nd edn. Springer, Heidelberg
(1994)
17. Pach, J., Thiele, T., Tóth, G.: Three Dimensional Grid Drawings of Graphs. In:
Chazelle, B., Goodman, J.E., Pollack, R. (eds.) Advances in Discrete and Compu-
tational Geometry. Contemporary Math. 223, pp. 251–255. AMS (1999)
18. Pór, A., Wood, D.W.: No-Three-in-Line-in-3D. Algorithmica 47, 481–488 (2007)
19. Spencer, J.: Turán’s Theorem for k-Graphs. Disc. Math. 2, 183–186 (1972)
20. Thiele, T.: Geometric Selection Problems and Hypergraphs, PhD thesis, FU Berlin
(1995)
The Secret Santa Problem

Leo Liberti1 and Franco Raimondi2


1
LIX, École Polytechnique, F-91128 Palaiseau, France
[email protected]
2
Dept. of Computer Science, University College London, UK
[email protected]

Abstract. Consider a digraph where the vertices represent people and


an arc (i, j) represents the possibility of i giving a gift to j. The basic
question we pose is whether there is an anonymity-preserving “gift as-
signment” such that each person makes and receives exactly one gift, and
such that no person i can infer the remaining gift assignments from the
fact that i is assigned to give a gift to j. We formalize this problem as
a graph property involving vertex disjoint circuit covers, give a polyno-
mial algorithm to decide this property for any given graph and provide
a computational validation of the algorithm.

1 Introduction

The problem we deal with is well described by the following Wikipedia [14] entry:

Secret Santa is a Christmas ritual involving a group of people exchang-


ing anonymous gifts. Participants names are placed in a hat and each
person draws a name for whom they are to buy a gift. Presents are then
exchanged anonymously. There is usually a gift giving occasion, where
all the presents are placed on a table, with the name of the receiver, but
not the giver.

We assume that additional constraints may exist in the definition of the problem.
For instance, it may be required that self-gifts and gifts between certain pairs of
participants should be avoided. These constraints are enforced on a graph model:
participants are represented by vertices and the possibility of a participant giving
a gift to another participant is represented by an arc between the corresponding
vertices.
Previous academic work on the Secret Santa problem is scarce. A secure pro-
tocol for the distributed solution of the Secret Santa problem is proposed in [11],
with the corresponding implementation being described in [12]. Some published
works in social sciences exist [3]. A scholarly discussion ensued in 1999-2001 in
the Mathematical Gazette [7,9,1] focussing on the probability of picking a gift
assignment without mutual gifts. This is extended in [8] to deal with more con-
straints on pairs of people that cannot exchange gifts, and in [13] to include at
least a cyclic assignment of given length.

R. Fleischer and J. Xu (Eds.): AAIM 2008, LNCS 5034, pp. 271–279, 2008.

c Springer-Verlag Berlin Heidelberg 2008
272 L. Liberti and F. Raimondi

We use a digraph to model arbitrary constraints on the possibility of people


exchanging gifts and propose a formalization of the Secret Santa problem as a
decision problem on digraphs. Our main result is that the problem of determining
whether anonymous gift assignments are possible on a given graph is in P.
An investigation of anonymous communication channels along the lines of [2]
provides further application-driven motivation for studying the Secret Santa
problem.
An instance of the Secret Santa Problem is a connected digraph G = (V, A)
where V is the set of the participants, and (i, j) ∈ A if participant i is allowed
to make a gift to participant j. If symmetry is assumed (i.e., if we assume that
if i can buy a gift for j then j can do the same for i) then A contains pairs
of opposing arcs (i, j) and (j, i). In what follows, given a vertex i ∈ V , we let
δ + (i) = {j ∈ V | (i, j) ∈ A} and δ − (i) = {j ∈ V | (j, i) ∈ A}. An istance of the
Secret Santa problem has a solution if for each person i ∈ V there exists another
assigned person j ∈ V such that (i, j) ∈ A such that i makes a gift to j (e.g. if
V | = {1, 2} and A = {(1, 2)} there is no solution, for 2 has no assigned person).
We model solutions as follows.

Definition 1.1. A Vertex Disjoint Circuit Cover (VDCC) for G = (V, A) is a


subset S ⊆ A of arcs of G such that: (a) for each v ∈ V there is a unique u ∈ V ,
called the predecessor of v and denoted by πS (v), such that (u, v) ∈ S; (b) for
each v ∈ V there is a unique u ∈ V , called the successor of v and denoted by
σS (v), such that (v, u) ∈ S. We denote by C the set of all VDCCs in G.

Let xij ≥ 0 be real non-negative continuous variables for all (i, j) ∈ A, and
consider the equations:

∀i ∈ V xij = 1 (1)
j∈δ + (i)

∀i ∈ V xji = 1. (2)
j∈δ − (i)

The support of any mapping x∗ : A → R+ satisfying (1)-(2) defines a VDCC (this


follows by total unimodularity of the constraint matrix of (1)-(2)). Assuming G
admits at least a VDCC, it is easy to see that x∗ defines a permutation on
{1, . . . , |V |} and therefore an assignment of maximum size on the undirected
(bipartite) graph subjacent to the bipartite digraph B = (U1 , U2 , A ) where
U1 = U2 = V and A are the same arcs as in A such that their heads are in
U1 and their tails in U2 . The best method for finding such an assignment is
1
reported in [10] (Thm. 16.5) as O(ν(B) 2 |A|), where ν(B) is the maximum size
of a matching in B. Since in our case ν(G) = |V |, we obtain a total (polynomial)
1
worst-case complexity of O(|V | 2 |E|) for solving the VDCC.
Since gifts must be exchanged anonymously, not all VDCCs are acceptable:
e.g. when V = {1, 2} and A = {(1, 2), (2, 1)}, there is a unique VDCC given by
(x12 , x21 ) = (1, 1), so each person knows that the other person will make them
a gift. Informally, we define a graph G as a Secret Santa graph if it admits at
The Secret Santa Problem 273

least a VDCC ensuring gift anonymity; i.e., if knowing a (donor,receiver) pair


in the VDCC does not uniquely identify any other (donor,receiver) pair. Such a
VDCC is an “acceptable” solution (precise definitions are given in Defn. 2.1).
The rest of the paper is organised as follows: in Section 2 we formalize the
Secret Santa problem and discuss a few basic properties. In Section 3 we give
a polynomial-time algorithm for deciding whether a given graph has the Se-
cret Santa property or not. In Section 4 we discuss some computational results.
Section 5 concludes the paper.

2 Characterisation of Anonymity and Basic Results


Given a connected digraph G = (V, A), let n = |V | and m = |A|. We aim to char-
acterize the set S ⊆ C of “acceptable” solutions (i.e. anonymity-preserving VD-
CCs) formally: Secret Santa graphs are those for which |S| > 0. The anonymity
requirement on VDCCs reflects the notion of ignorance in epistemic logic [4],
and is translated in graph-theoretical terms in the following definition.
Definition 2.1. A graph G is a Secret Santa graph (SESAN) if there exists a
VDCC S for G such that for each pair of distinct arcs a, b ∈ S ∩ A, there is
another VDCC T for G with a ∈ T and b ∈ T . The set

V(S) = {S} ∪ {Tab ∈ C | a ∈ S ∩ Tab ∧ b ∈ S  Tab } (3)

is a verification family for G, and S is a witness. Elements of a verification


family are called acceptable solutions.
By the definition of SESAN, even if a participant knows his/her own gift as-
signment a, he/she does not gain any knowledge with respect to any other gift
assignment b. We define S as the union of all verification families for G.

Proposition 2.2. If the graph G = (V, A) contains a vertex v such that |δ − (v)|
= 1 or |δ + (v)| = 1 then G is not SESAN.

Proof. Let δ − (v) = {(u)} (the proof for δ + (v) is the same). All VDCCs S will
necessarily contain (u, v), thereby contradicting Defn. 2.1.

The converse to Prop. 2.2 is of course false: the complete digraph over three
vertices is an example of a graph where |δ − (i)| = |δ + (i)| = 2 for each i ∈ {1, 2, 3},
but since there are only two possible VDCCs, G is not SESAN.

Lemma 2.3. A verification family for G = (V, A) contains at most τ (V ) =


|V |(|V | − 1) + 1 VDCCs.

Proof. This follows trivially from Eq. (3), as apart from S there is at most one
VDCC for each pair of distinct arcs in S (the fact that |S| = |V | follows trivially
from (1)-(2)).

We formally define the Secret Santa problem as follows.


274 L. Liberti and F. Raimondi

Definition 2.4. Secret Santa Problem (SESANP). Given a graph G =


(V, A), decide whether it is SESAN.
Notice that the SESANP asks for the existence of particular subgraphs (the
VDCCs) whose added condition (anonymity) requires checking against O(m2 )
similar subgraphs. A naive approach of finding an arbitrary VDCC and then
checking over all pairs of arcs whether it is acceptable might yield the answer
NO without proving that the graph is not SESAN, for a different initial choice
might have yielded a different answer. In order to make this approach work,
one would need a complete enumeration of an exponentially large set (that of
all VDCCs), suggesting that SESANP might be NP-complete. It turns out,
however, that SESANP is in P (see Sect. 3).

2.1 Some Examples

Consider the directed graph obtained from K4 (in Fig. 1, left) by replacing edge
edge with two antiparallel arcs. The second graph on from the left of Fig 1 is
a possible witness; a verification family is displayed on the right, therefore the
graph is SESAN.

Fig. 1. K4 , a witness and its verification family

Consider now the graph in Figure 2. This graph is SESAN: it is sufficient


to take two equal solutions for K4 , as in Figure 1, to guarantee an acceptable
solution. However, not all VDCCs for this graph are acceptable solutions. Indeed,
on the right hand side of Figure 2, the arc (i, j) does not guarantee anonymity
for the arc (j, i), because there is no other VDCC in which (i, j) appears, and
(j, i) does not. In this case the set S is a proper subset of C.

i j

Fig. 2. An instance with two copies of K4 and a non-anonymous VDCC


The Secret Santa Problem 275

3 A Polynomial Time Algorithm

Algorithm 1 is a polynomial time algorithm for deciding whether a given graph is


SESAN. The algorithm is based on the following observation: let T be a VDCC
that does not guarantee anonymity. This implies that there exists an arc a ∈ T
such that, for some arc b ∈ T , all the VDCCs of G containing a also contain b.
The key observation here is that all VDCCs of G containing a cannot satisfy the
anonymity requirement (because of the necessary presence of b). The algorithm
incrementally builds a set α of arcs that are not permitted and uses this set as
additional constraints when looking for possible VDCCs. If no VDCC can be
found satisfying the additional constraints given by α the graph is not SESAN.
Let P be the constraint satisfaction problem (1)-(2) such that x ≥ 0. For
α ⊆ A define P α as P with the added constraints xij = 0 for each (i, j) ∈
α. For given (i, j), (k, l) ∈ A define Pijkl α
as P α with the added constraints
xij = 1 and xkl = 0. Recall C is the set of all VDCCs and S is the set of all
acceptable solutions. Let C α (resp. S α ) be the set of all VDCCs (resp. acceptable
solutions) not containing the arcs in α and let Cijkl α
(resp. Sijkl
α
) be the subset
of C (resp. S ) containing (i, j) but not (k, l).
α α

Lemma 3.1. For any α ⊆ A and distinct (i, j), (k, l) ∈ A, if Pijkl
α
is infeasible
then no acceptable solution in S contains the arc (i, j).
α

α
Proof. Since Pijkl is infeasible, ∀T ∈ C α ((i, j) ∈ T → (k, l) ∈ T ), hence ∀T ∈
C ((i, j) ∈ T → T ∈ S α ). This implies that ∀S ∈ S α ((i, j) ∈ S).
α

Theorem 3.2. Alg. 1 correctly solves the SESANP.

Proof. By Lemma 3.1 and Line 13 in Alg. 1, no arc in α is contained in an


acceptable solution. First assume G is SESAN and suppose Alg. 1 fails. This
happens either when P α is infeasible at Line 3 or when |α| > |A| − |V | at
Line 2. The former case implies that C α = ∅ and hence S α = ∅, which means
that all the acceptable solution must have an arc in α, a contradiction with
the construction of α in Lines 11-12. The latter case would imply an acceptable
solution with fewer than |V | arcs, again a contradiction as |T | = |V | for all
T ∈ C. Therefore the algorithm terminates with an acceptable solution. Assume
now that G is not SESAN. Then for each α ⊆ A (and hence also the sets α
generated during the algorithm run) there exist distinct (i, j), (k, l) ∈ A such
α
that Pijkl is infeasible, i.e. Cijkl
α
= ∅. By Lines 11-12 and 3, the only possibility
for |α| not to increase monotonically at each outer iteration is for P α to be
infeasible. Since |α| is bounded above by |A| − |V |, in either case the algorithm
terminates with IsSesan = False.

Note that P, P α and Pijkl


α
are simply instances of the VDCC problem (i.e. the
problem of determining whether a given graph has a VDCC) on graphs that are
modifications of the original digraph G given by the forced absence of the arcs in
α and (k, l) and by the forced presence of the arc (i, j): when these instances are
infeasible, the maximum matching mentioned in Sect. 1 has size strictly smaller
276 L. Liberti and F. Raimondi

Algorithm 1. Polynomial algorithm for solving the SESANP.


Require: G = (V, A).
Ensure: Whether G is SESAN or not.
1: Let α = ∅, ExitLoop = False, IsSesan = False
2: while |α| ≤ |A| − |V | and ExitLoop = False do
3: if P α is feasible then
4: Let S be a solution to P α
5: Let ExitLoop = True
6: else
7: Let IsSesan = False
8: exit While loop
9: end if
10: for all (i, j), (k, l) ∈ S : (i, j) = (k, l) do
α
11: if Pijkl is infeasible then
12: Let α ← α ∪ {(i, j)}
13: Let ExitLoop = False
14: exit For loop
15: end if
16: end for
17: if ExitLoop = True then
18: Let IsSesan = True
19: end if
20: end while
21: if IsSesan = True then
22: G is SESAN
23: else
24: G is not SESAN
25: end if

than |V |. Solving P, P α , Pijkl


α
has the same worst-case polynomial complexity as
1
finding a VDCC in G, namely O(n 2 m).
5
Lemma 3.3. Alg. 1 has worst case O(n 2 m2 ) time complexity.

Proof. An n2 term arises because of the internal loop on the distinct arcs in S
(Line 10), as |S| = |V |. An m term arises because of the external loop (Line 2),
and because |α| increases at each outer iteration (Line 13) unless the algorithm
1
α
terminates. The remaining n 2 m term refers to the solution of each Pijkl problem
in Line 11.

Corollary 3.4 SESANP is in P.

4 Computational Results
We tested Alg. 1 on a class of randomly generated graph instances. As the main
target application of the SESANP is in communication protocols, communication
The Secret Santa Problem 277

20
|V|=10
|V|=20
|V|=30
|V|=40
|V|=50

15
number of SESAN graphs over 20

10

0
0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4
edge generation probability

Fig. 3. Proportion of SESAN random graphs with p ranging in [0.05, 0.4]

20
|V|=10
|V|=15
|V|=20
|V|=25
|V|=30
|V|=35
|V|=40
15
number of SESAN graphs over 20

10

0
0.04 0.06 0.08 0.1 0.12 0.14 0.16 0.18 0.2 0.22 0.24
edge generation probability

Fig. 4. Proportion of SESAN random graphs with p ranging in [0.04, 0.24]


278 L. Liberti and F. Raimondi

between any two agents (gifts between participants) is assumed to be bidirec-


tional. Thus, we generated groups of 20 undirected random graphs with vertex
set V and edge generation probability p for various values of |V | and p, and then
replaced each edge with two antiparallel directed arcs. Alg. 1 was implemented
in AMPL [5] and the ILOG CPLEX 10.1 solver [6] was deployed on the VDCC
sub-problems P α , Pijkl
α
. This yields a practical algorithm that is nonpolynomial
in the worst case but efficient on the average case, as we solved each sub-problem
using the simplex method. Using CPLEX’s barrier method yields a polynomial
algorithm but is practically less efficient.
The plot in Fig. 3 refers to |V | ∈ {10i | 1 ≤ i ≤ 5} and p ∈ {0.05i | 1 ≤ i ≤ 8}.
The plot in Fig. 4 refers to |V | ∈ {10 + 5i | 0 ≤ i ≤ 6} and p ∈ {0.04 + 0.02i | 0 ≤
i ≤ 10}. It took around 4h of user CPU time to solve the 2340 instances on an
Intel Core Duo 1.2GHz and 1.5GB RAM running Linux. The plots suggest that
the SESAN property is correlated to graph density and graph size.

5 Conclusion

We formalized the Secret Santa problem as a decision problem related to finding


subgraphs of a given graph with a particular structure (vertex-disjoint circuit
covers) subject to an anonymity condition, and proved that it is in P. We pro-
5
vided an O(|V | 2 |A|2 ) polynomial algorithm and a limited computational study
thereof.
Future work will focus on a generalized decision problem: given a graph, a
particular graph structure and a particular anonymity property, are there fami-
lies of subgraphs with the given structure that are anonymous according to the
given property? A practical interest is attached, for example, to path-structured
subgraphs in the study of networks providing anonymity of the source and/or
intermediate vertices.

References

1. Boyd, A.V., Ridley, J.N.: The return of Secret Santa. Mathematical


Gazette 85(503), 307–311 (2001)
2. Chaum, D.: The dining cryptographers problem: unconditional sender and recipient
untraceability. Journal of Cryptology 1(1), 65–75 (1988)
3. Duncan, B.: Secret Santa reveals the secret side of giving. Technical Report 0601,
University of Colorado at Denver (2006)
4. Fagin, R., Halpern, J.Y., Moses, Y., Vardi, M.Y.: Reasoning about Knowledge.
MIT Press, Cambridge (1995)
5. Fourer, R., Gay, D.: The AMPL Book. Duxbury Press, Pacific Grove (2002)
6. ILOG. ILOG CPLEX 10.1 User’s Manual. ILOG S.A., Gentilly, France (2006)
7. McGuire, K.M., Mackiw, G., Morrell, C.H.: The Secret Santa problem. Mathemat-
ical Gazette 83(498), 467–472 (1999)
8. Penrice, S.: Derangements, permanents and christmas presents. American Mathe-
matical Monthly 98(7), 617–620 (1991)
The Secret Santa Problem 279

9. Pinkham, R.: The Secret Santa problem revisited. Mathematical Gazette 85(502),
96–97 (2001)
10. Schrijver, A.: Combinatorial Optimization: Polyhedra and Efficiency. Springer,
Berlin (2003)
11. Tel, G.: Cryptografie, Beveiliging van de digitale maatschappij. Addison-Wesley,
Reading (2002)
12. Verelst, J.: Secure computing and distributed solutions to the Secret Santa problem.
Master’s thesis, Computer Science Dept., University of Utrecht (2003)
13. White, M.: The Secret Santa problem. Rose-Hulman Institute of Technology Un-
dergraduate Math Journal 7(1) (paper 5) (2006)
14. Secret Santa. Wikipedia (2006), http://en.wikipedia.org/wiki/Secret Santa
Finding Optimal Refueling Policies in
Transportation Networks

Shieu-Hong Lin

Biola University, La Mirada CA 90639, USA


[email protected]

Abstract. We study the combinatorial properties of optimal refueling


policies, which specify the transportation paths and the refueling opera-
tions along the paths to minimize the total transportation costs between
vertices. The insight into the structure of optimal refueling policies leads
to an elegant reduction of the problem of finding optimal refueling poli-
cies into the classical shortest path problem, which ends in simple and
more efficient algorithms for finding optimal refueling policies.

1 Introduction

A vehicle refueling policy is a path in a transportation network together with


the series of refueling operations when passing through the vertices on the path
to reach a destination vertex from a starting vertex in the network while always
maintaining the fuel level between a lower limit L and an upper limit U through-
out the entire process. An optimal refueling policy minimizes the total fuel cost
to reach the destination vertex given an initial fuel level and a required mini-
mal final fuel level. Different from the shortest path problem, fuel prices at the
vertices must be considered in addition to the distances between vertices, and
there are situations in which optimal refueling policies involve non-simple paths.
Optimal refueling polices can be determined by solving mixed integer programs
[6]. Lin et al. [4] gives a linear-time algorithm for determining an optimal refu-
eling policy given a fixed path and relate the problem to the bounded-inventory
economic lot-sizing problems [1] [5]. Given a general transportation network of
n vertices and the all-pairs shortest-distance information, Khuller et al. [3] pro-
vides algorithms for (i) finding all-pairs optimal refueling policies given the initial
fuel levels at the vertices in O(n4 ) time in general or in O(n3 k ∗ min(k, log n))
time if the vehicle is constrained to use at most k refueling stops respectively
and (ii) finding an optimal refueling policy for a given pair of vertices and an
initial fuel level in O(n3 ) time in general or in O(n2 k log n) time with the k-stop
constraint. Both of Lin and Khuller et al. assume the required minimal final fuel
level reaching the destination to be the same as the lower fuel limit L.
In this paper, we first analyze the combinatorial structure of optimal [L, L]
refueling policies, which are refueling policies required to begin with a fuel level
at the lower limit L and ending with a fuel level at least at the lower limit L. We
prove that finding optimal [L, L] vehicle refueling policies in a transportation

R. Fleischer and J. Xu (Eds.): AAIM 2008, LNCS 5034, pp. 280–291, 2008.

c Springer-Verlag Berlin Heidelberg 2008
Finding Optimal Refueling Policies in Transportation Networks 281

network G is equivalent to finding shortest paths in an optimal transition graph


derived from G, which is essentially a finite automaton modelling all possible
optimal transitions between the upper and the lower limits of fuel level between
vertices together with a distance measure representing the optimal transition
costs. This leads to simple algorithms that can determine optimal [L, L] refueling
policies for all pairs of vertices in a network of n vertices in O(n3 ) time or
in O(n3 log k) time with the additional k-stop constraint. With the all-pairs
optimal (k-stop-bounded) [L, L] vehicle refueling policies determined, we can
then (i) determine all-pairs optimal (k-stop-bounded) refueling policies given
various initial fuel levels at the vertices and ending with a fuel level at least at
the lower limit L in O(n3 ) time, and (ii) determine an optimal refueling policy
given a pair of vertices, an initial fuel level, and a required minimal final fuel
level in O(n2 ) time.

2 The Optimal Refueling Policy Problems

Consider a vehicle with a fixed fuel tank capacity operates in a transportation


network delivering commodities between pairs of locations in the network. The
vehicle needs to refuel at fuel stations to maintain a minimum level of fuel in the
fuel tank all the time. Given a pair of locations s and t together with an initial
fuel level starting at s and a required fuel level when arriving at t, we would like
to determine an optimal refueling policy specifying a path from s to t, the fuel
stations on the path to stop for refueling, and the amounts of fuel to add in the
fuel stations to minimizes the total refueling cost.
Definition 1. (Vehicle-network instances). An vehicle-network instance is
a six-tuple L, U, V, A, X, P  where

– L, U ∈ Z+ ∪ {0}, 0 ≤ L < U , L is the minimum fuel level the vehicle needs


to maintain all the time while the minimum fuel level U is simply the full
tank capacity of the vehicle,
– V and A together form a directed graph G = (V, A) modelling a transporta-
tion network where V is the set of vertices representing points of interest
in the network including locations of suppliers, customers, cities, and fuel
stations in the transportation network, while A is the set of directed edges
with each directed edge (u, v) in A representing a transportation link from
vertex u to vertex v that requires no more than U − L amount of fuel,
– X : V × V → [0, U − L] ∪ {∞} is the fuel consumption function where
X(u, v) equals the amount of fuel consumed to reach vertex v from vertex
u for (u, v) ∈ A, X(u, u) = 0 for u ∈ V , and X(u, v) = ∞ for (u, v) ∈ / A
when u = v, and in the following of the paper we use X̂(u, v) to denote the
shortest distance from u to v with X as the underlying distance measure
over the directed graph G = (V, A), and
– P : V → Z+ ∪ {0, ∞} is the fuel price function where P (u) denotes the unit
fuel price charged in vertex u and P (u) = ∞ if u does not have a fuel station.
282 S.-H. Lin

Definition 2. (Vehicle refueling policies). Given a vehicle-network instance


I = L, U, V, A, X, P , a [ls , lt ] refueling policy from vertex s to vertex t is a
ls ,lt
sequence of vertex-and-refueling-amount pairs πs→t = (v0 , f0 ), . . . , (vm , fm )
where m ≥ 0, ∀i ∈ [0, m] vi ∈ V , v0 = s, vm = t, fi , ls and lt are integers,
L ≤ ls , lt ≤ U , and 0 ≤ fi ≤ U − L such that

– ∀i ∈ [0, m − 1] (vi , vi+1 ) ∈ A and v0 , . . . , vm  is a path from s to t,


– ∀i ∈ 
[0, m], F Eπ (vi) =
ls + 1≤j<i fj − 1≤j<i X(vj , vj+1 ) ≥ L,
– ∀i ∈ 
[0, m], F Lπ (vi) =
ls + 1≤j≤i fj − 1≤j<i X(vj , vj+1 ) ≤ U , and
– F Lπ 
(vm ) = 
ls + 1≤j≤m fj − 1≤j<m X(vj , vj+1 ) ≥ lt

where ls and lt are the initial fuel level and the required minimal final fuel level
at vertices s and t respectively, fi is the amount of fuel to purchase at vertex
vi , F Eπ (vi ) denotes the fuel level when entering the ith vertex vi on the path,
and F Lπ (vi ) denotes the fuel level when leaving vi or when finally ending at vm
when i = m.

Remark : A [ls , lt ] refueling policy from vertex s to vertex t represents a feasible


refueling solution along an operational path v0 , . . . , vm  of length m, allowing
the vehicle to progressively move from vertex vi to vertex vi+1 for 0 ≤ i < m,
starting with an initial fuel level ls at the starting vertex s = v0 , stopping at
vertex vi to purchase fi units of fuel if fi is not zero, ending in the destination
vertex t = vm with a final fuel level of lt or more in the end. The refueling policy
ensures in the process it never reaches a fuel level lower than the lower limit L
or higher than upper limit U by keeping F Eπ (vi ), the fuel level when entering
the ith vertex vi on the operation path, to at least L and keeping F Lπ (vi ), the
fuel level when leaving vi (or when settling down at vm when i = m) to at most
U . Note that v0 , . . . , vm  is not necessarily a simple path since the vehicle may
repeatedly leave a vertex vi to refuel at other vertices with lower fuel prices and
come back to vi later with a higher fuel level needed to proceed with remainder
of the path. A graphical example is shown in the appendix.

Definition 3. (Operational costs, refueling stops, and policy sets). For


ls ,lt
a [ls , lt ] refueling policy πs→t = (v0 , f0 ), . . . , (vm , fm ) from vertex s to vertex
ls ,lt 
t, we define the operational cost of the policy as Cost(πs→t ) = 1≤i≤m P (vi ) ∗
ls ,lt
fi . We say vi is a refueling vertex in πs→t if and only if fi > 0 and de-
note the set of refueling vertices from which the vehicle must stop to pur-
ls,lt
chase fuel as Ref uelings(πs→t ) = {fi |fi > 0}. For a vehicle-network instance
I = L, U, V, A, X, P , we denote the set of all [ls , lt ] refueling policies from ver-
ls ,lt
tex s to vertex t as s→t , and denote the set of all [ls , lt ] refueling policies

from vertex s to vertex t using at most k refueling stops as (k)ls→t s ,lt
= {π|π ∈
ls ,lt
s→t , |Ref uelings(π)| ≤ k}.
Finding Optimal Refueling Policies in Transportation Networks 283

Definition 4. (The optimal refueling policy problems) Given a vehicle-


ls ,lt
network instance I = L, U, V, A, X, P , a [ls , lt ] refueling policy πs→t from vertex
s to vertex t is an optimal [ls , lt ] (k-stop-bounded) refueling policy from vertex
ls ,lt ls ,lt
s to vertex t if and only if Cost(πs→t ) ≤ Cost(π) for every π in s→t (for every
 ls ,lt
π in (k)s→t ). (i) The computational task of the single-pair [ls , lt ] optimal (k-
stop-bounded) refueling policy problem is to determine an optimal [ls , lt ] (k-stop-
ls ,lt
bounded) refueling policy πs→t from vertex s to vertex t given a pair of vertices s
and t in V and the fuel levels ls , lt ∈ [L, U ]. (ii) Given the initial fuel levels at the
vertices, the computational task of the all-pairs [∗, L] optimal (k-stop-bounded)
refueling policy problem is to determine the optimal (k-stop-bounded) refueling
ls ,L
policies πs→t where ls is the given initial fuel level at vertex s for all pairs of
vertices s and t (s = t) in V (iii) The computational task of the all-pairs [L, L]
optimal (k-stop-bounded) refueling policy problem is to determine the optimal
L,L
[L, L] (k-stop-bounded) refueling policies πs→t for all pairs of vertices s and t
(s = t) in V .
Remark: Later in the paper, we show that solutions to the optimal [L, L] (k-stop-
bounded) refueling policy problem can be used to efficiently determine solutions
to the other optimal refueling policy problems. The k-stop-bounded versions of
the problems arise in practice since each refueling stop takes time and at times
the number of stops must be bounded above to ensure timely arrival. The all-
pairs [∗, L] optimal (k-stop-bounded) refueling policy problem is the one studied
by Khuller et al. [3].

3 Combinatorial Properties of Optimal [L, L] Refueling


Policies

In this section, we explore the combinatorial properties of optimal [L, L] refu-


eling policies and define the related terminology. In the next section, based on
these combinatorial properties we develop polynomial-time algorithms for solv-
ing optimal refueling policy problems. Note that the definitions in the following
all implicitly assume a vehicle-network instance I = L, U, V, A, X, P  in the con-
text and we use X̂(u, v) to denote the shortest distance from u to v with X as
the underlying distance measure over the directed graph G = (V, A) modelling
the transportation network.
Definition 5. (Stop sequences and ρ(π)). The stop sequence Stops(π) of a
refueling policy π = (v0 , f0 ), . . . , (vm , fm ) where m ≥ 1 is the maximal subse-
quence of the operational path v0 , . . . , vm  that contains the starting vertex s =
v0 , the destination vertex t = vm , and all the refueling vertices in between. We de-
fine ρ(π) = |Ref uelings(π)−{s, t}| and denote the stop sequence of the refueling
policy π as Stops(π) = vi0 , vi1 , . . . , viρ(π) , viρ(π)+1  where i0 = 0, vi0 = v0 = s,
iρ(π)+1 = m, viρ(π)+1 = vm = t, and {vi1 , . . . , viρ (π) } = Ref uelings(π) − {s, t}
with 0 = i0 < i1 < . . . < iρ(π) < iρ(π)+1 = m when ρ(π) > 0.
284 S.-H. Lin

Definition 6. (The shortest-subpath property). Given a path v0 , . . . , vm ,


we refer to vj , . . . , vj   where 0 ≤ j < j  ≤ m as the subpath from vj to
vj  within the path. Given a refueling policy π = (v0 , f0 ), . . . , (vm , fm ) with
the stop sequence Stops(π) = vi0 , vi1 , . . . , viρ(π) , viρ(π)+1  for a vehicle-network
instance I = L, U, V, A, X, P , we say π satisfies the shortest-subpath property
if and only if for every k in [0, ρ(π)], the subpath vik , vik +1 , . . . , vik+1  from vik
to vik+1 within the operational path v0 , . . . , vm  is a shortest path from vertex
vik to vik+1 in the directed graph G = (V, A) with the fuel consumption fuction
X regarded as the distance measure.
Lemma 1. (The shortest-subpath property and optimality). Given a
L,L L,L
[L, L] refueling policy πs→t where s = t, if πs→t does not satisfy the shortest-
L,L
s→t
subpath property, then there exists a [L, L] refueling policy π satisfying the
L,L L,L L,L
shortest-subpath property such that Cost( πs→t ) ≤ Cost(πs→t ) and πs→t has
L,L L,L
the same stop sequences Stops(πs→t ) = Stops(πs→t ).
Proof Sketch. Since no fuel is purchased between two refueling stops, the fuel
prices at the vertices visited in between do not affect the total cost the refueling
policy and it will always reduce cost by following a shortest path to reach from
one refueling stop to the next refueling stop.
Definition 7. (The LU adjacency property). Given a refueling policy π with
the stop sequence Stops(π) = vi0 , vi1 , . . . , viρ(π) , viρ(π)+1 , we say the refueling
policy π satisfies the LU adjacency property if and only if for every k in [0, ρ(π)],
either F Lπ (vik ) = U or F Eπ (vik+1 ) = L, i.e. either the tank is full when leaving
vik or the tank is at the minimum fuel level required when arriving at the next
refueling stop vik+1 .
Lemma 2. (The LU adjacency property and optimality). Given a [L, L]
L,L L,L
refueling policy πs→t where s = t, if πs→t does not satisfy the LU adjacency
L,L
s→t
property, then there exists a [L, L] refueling policy π satisfying the LU adja-
L,L L,L L,L
cency property such that Cost( πs→t ) ≤ Cost(πs→t ), π s→t has no more refueling
L,L L,L L,L
vertices than πs→t , and Stops(πs→t ) is a subsequence of Stops(πs→t ).
Proof Sketch. Consider two adjacent refueling stops vik and vik+1 .
If F Lπ (vik ) = U and F Eπ (vik+1 ) = L, we can keep increasing the fuel pur-
chased at the stop with the lower fuel price and decreasing the fuel purchased
at the other stop without affecting the refueling decisions at other stops until
either F Lπ (vik ) = U or F Eπ (vik+1 ) = L or one of the two refueling stops can
be eliminated from the stop sequence to reach a new reduced case with fewer
refueling stops. Lemma 2 then follows by induction on the number of stops in
the stop sequences.
Theorem 1. (Properties of optimal [L, L] refueling policies). Every opti-
mal [L, L] (k-stop-bounded) refueling policy satisfies the shortest-subpath prop-
erty and the LU adjacency property.
Finding Optimal Refueling Policies in Transportation Networks 285

Proof sketch. It follows from Lemma 1 and Lemma 2.


Definition 8. (LU states, LU successors, LU transitions, and transition
L,L
costs). Given a [L, L] refueling policy π = πs→t = (v0 , f0 ), . . . , (vm , fm ) satis-
fying the LU adjacency property and s = t with the stop sequence Stops(π) =
vi0 , vi1 , . . . , viρ(π) , viρ(π)+1 , we say (vik , L) is an L state of π if F Eπ (vik ) = L
and (vik , U ) is a U state of π if F Lπ (vik ) = U . We refer to the L states and U
states in π together as the LU states of π. We define a LU successor relation
and four types of state transitions and their costs among LU states of π and
refer to the transitions as the LU transitions of π as follows.
(i) Given an L state(vik , L), (vik , U ) is an LU successor of (vik , L) and
(vik , L), (vik , U ) is an [L, U ] transition in π with the cost T Cπ ((vik , L), (vik , U ))
= fik ∗ P (vik ) if and only if F Eπ (vik ) = L and F Lπ (vik ) = U .
(ii) Given an L state(vik , L), (vik+1 , L) is an LU successor of (vik , L) and
(vik , L), (vik+1 , L) is a [L, L] transition in π with the cost T Cπ ((vik , L),
(vik+1 , L)) = fik ∗ P (vik ) if and only if F Eπ (vik ) = L and F Eπ (vik+1 ) = L.
(iii) Given a U state (vik , U ), (vik+1 , U ) is an LU successor of (vik , U ) and
(vik , U ), (vik+1 , U ) is a [U, U ] transition in π with the cost T Cπ ((vik , U ),
(vik+1 , U )) = fik+1 ∗ P (vik+1 ) if and only if F Lπ (vik ) = U and F Lπ (vik+1 ) = U .
(iv) Given a U state (vik , U ), (vik+2 , L) is an LU successor of (vik , U ) and
(vik , U ), (vik+2 , L) is a [U, L] transition in π with the cost T Cπ ((vik , U ),
(vik+2 , L)) = fik+1 ∗ P (vik+1 ) if and only if F Lπ (vik ) = U , and F Eπ (vik+2 ) = L.
We refer to vertex vik+1 above as the medium vertex of the [U, L] transition.
Definition 9. (LU transition sequences). Given a [L, L] refueling policy π =
L,L
πs→t = (v0 , f0 ), . . . , (vm , fm ) satisfying the LU adjacency property and s = t
with the stop sequence Stops(π) = vi0 , vi1 , . . . , viρ(π) , viρ(π)+1 , an LU state tran-
sition sequence of π is a representation of LU transitions from (s, L) to (t, L) as
a sequence LU π = (vj0 , l0 ), . . . , (vjρ(π)+1 , lρ(π)+1 ) of length ρ(π) + 2 where li ∈
{L, U } for i in [0, ρ(π) + 1], j0 = 0, vj0 = v0 = s, jρ(π)+1 = m, vjρ(π)+1 = vm = t,
l0 = L, lρ(π)+1 = L, (vjk+1 , lk+1 ) is the successor state of (vjk , lk ) for k in [0, ρ(π)],
and 0 = j0 ≤ j1 ≤ . . . ≤ jρ(π) < jρ(π)+1 = m when ρ(π) > 0. We define the
cost of an LU state transition sequence LU π = (vj0 , l0 ), . . . , (vjρ(π)+1 , lρ(π)+1 )
as Cost(LU π ) = 0≤j≤ρ(π) T Cπ ((vjk , lk ), (vjk+1 , lk+1 )), i.e. the summation of
the LU state transition costs between adjacent LU states in LU π .
Lemma 3. (Equality of the total LU transition cost and the total refu-
L,L
eling cost). Given a [L, L] refueling policy π = πs→t = (v0 , f0 ), . . . , (vm , fm )
satisfying the LU adjacency property and s = t, the cost of every LU state
transition sequence LU π of π always equals the cost of the refuelling policy π,
i.e. Cost(LU π ) = Cost(π), and the number of refueling stops in π equals the
length of the transition sequence minus one.
Proof Sketch. Each LU transition involves exactly one refueling operation and
the transition cost is exactly the cost of the refueling operation. Therefore the
number of refueling stops in π equals the length of the transition sequence minus
one. The sum of transition costs of the transition sequence therefore always
equals the sum of the refueling costs, i.e. the total operation cost of the refueling
286 S.-H. Lin

policy. This is true even if in degenerate cases there may be multiple ways of
interpreting π into LU transition sequences.

Definition 10. (Optimal LU transition paths). For the four types of LU


transitions respectively, we define the following four types of optimal LU tran-
sition paths in the directed graph G = (V, A):

– a path p is an optimal transition path for an [L, U ] transition (vi , L), (vi , U )
if and only if p is the self loop vi , vi ,
– a path p is an optimal transition path for an [L, L] transition (vi , L), (vj , L)
where vi = vj if and only if p is a shortest path from vi to vj in G = (V, A),
– a path p is an optimal transition path for an [U, U ] transition (vi , U ), (vj , U )
where vi = vj if and only if p is a shortest path from vi to vj in G = (V, A),
and
– a path p is an optimal transition path for an [U, L] transition (vi , U ), (vj , L)
where vi = vj if and only if p = vi , . . . , vk , . . . vj  where vi = vk = vj , the
subpath vi , . . . , vk  in p is a shortest path from vi to vk in G = (V, A), the
subpath vk , . . . , vj  in p is a shortest path from vk to vj in G = (V, A), and
vk = arg minv (X̂(vi , v) + X̂(v, vj ) − (U − L)) ∗ P (v) over every vertex v in V
where X̂(vi , v) ≤ (U − L)), X̂(v, vj ) ≤ (U − L)), and X̂(vi , v) + X̂(v, vj ) >
(U − L). We refer to vertex vk above as the medium vertex of the optimal
transition path for the [U, L] transition.

Definition 11. (The optimal LU transition property). Given an [L, L]


refueling policy π = (v0 , f0 ), . . . , (vm , fm ), we say π satisfies the optimal LU
transition property if and only if (i) π satisfies both the shortest subpath property
and the LU adjacency property and (ii) for every LU transition sequence LU π =
(vj0 , l0 ), . . . , (vjρ(π)+1 , lρ(π)+1 ) of π and for every k in [0, ρ(π)], the subpath
vjk , v1+jk . . . , vjk+1  from vjk to vjk +1 within the operational path v0 , , . . . , vm )
is an optimal LU transition path in G = (V, A).

Theorem 2. (More on the properties of optimal [L, L] refueling poli-


cies). Every optimal [L, L] (k-stop-bounded) refueling policy satisfies the opti-
mal LU transition property.

Proof Sketch. By Theorem 1, every optimal [L, L] (k-stop-bounded) refueling


policy must satisfy both the shortest subpath property and the LU adjacency
property. It follows then the transition paths (i.e. the sequences of vertices visited
between two adjacent refueling stops) for [L, L] transitions and [U, U ] must be
the shortest paths between the adjacent refueling vertices. By Lemma 3, every
optimal [L, L] (k-stop-bounded) refueling policy must also have the minimal-
cost [U, L] transition between a pair of adjacent U state and an L state in the
policy, which ensures that for an [U, L] transition, the transition path (i.e. the
sequences of vertices visited between two adjacent pairs of adjacent refueling
stops) must have the optimal transition structure required by the optimal LU
transition property.
Finding Optimal Refueling Policies in Transportation Networks 287

Corollary 1. (The optimal LU transition costs). For every optimal [L, L]


(k-stop-bounded) refueling policy π = (v0 , f0 ), . . . , (vm , fm ), the transition
costs of LU transitions in π always have the following optimal-transition-cost
structure:

– if (vi , L), (vi , U ) is a [L, U ] transition in π, then the transition cost is


T Cπ ((vi , L), (vi , U )) = fi ∗ P (vi ) = (U − L) ∗ P (vi ),
– if (vi , L), (vj , L) is a [L, L] transition in π, then the transition cost is
T Cπ ((vi , L), (vj , L)) = fi ∗ P (vi ) = X̂(vi , vj ) ∗ P (vi ),
– if (vi , U ), (vj , U ) is a [U, U ] transition in π, then the transition cost is
T Cπ ((vi , U ), (vj , U )) = fj ∗ P (vj ) = X̂(vi , vj ) ∗ P (vj ), and
– if (vi , U ), (vj , L) is a [U, L] transition in π, then the transition cost is
T Cπ ((vi , U ), (vj , L)) = fk ∗ P (vk ) = (X̂(vi , vk ) + X̂(vk , vj ) − (U − L)) ∗ P (vk )
where vk is the medium vertex of an optimal transition path for the [U, L]
transition (vi , U ), (vj , L).

Proof Sketch. The optimal transition costs above follow from Theorem 2, the
definition of optimal LU transition paths in Definition 10, and the definition of
LU transitions in Definition 8.
Theorem 3. (Reduction of finding optimal [L, L] refueling policies into
finding optimal LU transition sequences). Finding an optimal [L, L] (k-
stop-bounded) refueling policy from vertex s to vertex t is equivalent to finding
a minimum-cost LU transition sequence (of no more than k transitions) from
the LU state (s, L) to the LU state (t, L), in which the LU transition costs have
the optimal-transition-cost structure depicted in Corollary 1.
Proof Sketch. It follows from Lemma 3 and Corollary 2.
Lemma 4. (Compact representation of optimal [L, L] refueling policies).
Given the information of all-pairs shortest paths in the network, for each pair of
vertices s and t we can compactly represent an optimal [L, L] (k-stop-bounded)
L,L
refueling policy π = πs→t = (v0 , f0 ), . . . , (vm , fm ) as the refueling stop se-
quence Stops(π) = vi0 , vi1 , . . . , viρ(π) , viρ(π)+1  together with fi0 , fi1 , . . . , fiρ(π) ,
the sequence of refueling amounts at vik ’s for 0 ≤ k ≤ ρ(π).
Proof Sketch. Since no refueling occurs between two refueling stops, it is re-
dundant to record the refueling information of fi = 0 for every vertex vi that is
not a refueling stop. And because every optimal [L, L] (k-stop-bounded) refuel-
ing policy satisfies the shortest subpath property, it is redundant to record the
vertices between two adjacent refueling stops since we can use any shortest path
between them and still maintain the optimality of the policy.
Theorem 4. (Determining an [L, L] refueling policy from an LU tran-
sition sequence). Given an LU transition sequence LU of length m of an
optimal [L, L] (k-stop-bounded) refueling policy, Algorithm 1 below can deter-
mine in O(m) time the compact representation of an [L, L] refueling policy π
that satisfies the optimal LU transition property and has an LU transition se-
quence LU π = LU . If two different [L, L] refueling policies both satisfy the
288 S.-H. Lin

optimal LU transition property and both have LU as a LU transition sequence,


then they both have the same total refueling cost.
Proof sketch. It takes linear time since it is a linear scan through the transition
sequence and it takes constant time to process each LU transition. The way the
LU transitions are processed from Theorem 2, the definition of optimal LU
transition paths in Definition 10, the optimal LU transition costs described in
Corollary 2, and the definition of LU transitions in Definition 8.

Algorithm 1. Transforming an optimal LU transition sequence into


a compact representation of the corresponding optimal [L, L] refueling policy
as a sequence of refuleing stops and a sequence of refueling amounts.
Input: a vehicle-network instance L, U, V, A, X, P ,
an LU transition sequence LU of an optimal [L, L] (k-stop-bounded)
refueling policy π, and for all pairs of vertices vi and vj , the information
of the shortest distance X̂(vi , vj ) and the medium vertex of an optimal [U, L]
transition path from vi to vj .
Output: the compact representation of the corresponding optimal policy π as
the sequence of refueling stops Stops(π) = vi0 , vi1 , . . . , viρ(π) , viρ(π)+1 , and
the corresponding refueling amount sequence Fπ = fi0 , fi1 , . . . , fiρ(π) .
Steps:
1. Start with empty sequences Stops(π) = , Fπ = 
2. Examine every pair of adjacent LU states in the LU transition sequence LU
from the first pair to the last pair:
{
if the pair is an [L, U ] transition (vi , L), (vi , U ),
append v i into Stops(π) and append the refueling amount U −L into F π;
if the pair is an [L, L] transition (vi , L), (vj , L),
append vi into Stops(π) and
append the refueling amount X̂(vi , vj ) ∗ P (vi ) into Fπ ;
if the pair is an [U, U ] transition (vi , U ), (vj , U ),
append vj into Stops(π) and
append the refueling amount X̂(vi , vj ) ∗ P (vj ) into Fπ ;
if the pair is an [U, L] transition (vi , U ), (vj , L) nd vk is
a a medium vertex of an optimal [U, L] transition path from vi to vj ,
append vk into Stops(π) and append the refueling amount
(X̂(vi , vk ) + X̂(vk , vj ) − (U − L)) ∗ P (vk ) into Fπ .
}

4 Solving the Optimal Refueling Policy Problems


Based on these combinatorial properties explored in the previous section, in
the following we show that finding optimal [L, L] vehicle refueling policies in a
transportation network G is equivalent to finding shortest paths in an optimal
LU transition graph derived from G, which is essentially a finite automaton
Finding Optimal Refueling Policies in Transportation Networks 289

modelling all possible optimal LU transitions between vertices together with


a distance measure representing the optimal LU transition costs. This leads to
simple and efficient polynomial-time algorithms for solving the all-pairs [L, L] (k-
stop-bounded) optimal refueling policy problem. We then show ways to efficiently
solve other optimal refueling policy problems based on the solutions to the all-
pairs optimal (k-stop-bounded) [L, L] vehicle refueling problem.
Definition 12. (The optimal LU transition graphs) The optimal LU tran-
sition graph for a vehicle-network instance I = L, U, V, A, X, P  is a directed
graph GLUI = (VILU , ALU
I ) with a distance measure XI
LU
: VILU × VILU →
Z ∪ {0, ∞} where
+

– the vertex set VILU = {(v, L)|v ∈ V } ∪ {(v, U )|v ∈ V } is the set of all LU
states,
– the set of directed edges ALU I = {(v, L), (v, U )|v ∈ V } ∪
{(v, L), (v  , L)|v, v  ∈ V, X̂(v, v  ) ≤ U − L} ∪
{(v, U ), (v  , U )|v, v  ∈ V, X̂(v, v  ) ≤ U − L} ∪
{(v, U ), (v  , L)|v, v  ∈ V, X̂(v, v  ) > U − L,
∃v  ∈ V, X̂(v, v  ) ≤ U − L, X̂(v  , v  ) ≤ U − L}
is the set of all possible LU transitions between LU states, and
– the distance metric function XILU encodes information of the optimal LU
transition costs described in Corollary 1:
(i) XILU (y, y) = 0 for y ∈ VILU ,
(ii) XILU (y, z) = ∞ for (y, z) ∈ / ALU I when y = z,
(iii) XI ((v, L), (v, U )) = (U − L) ∗ P (v) for
LU

an optimal [L, U ] transition (v, L), (v, U ) ∈ ALU I ,


(iv) XILU ((v, L), (v  , L)) = X̂(v, v  ) ∗ P (v) for
an optimal [L, L] transition (v, L), (v  , L) ∈ ALU I ,
(v)XILU ((v, U ), (v  , U )) = X̂(v, v  ) ∗ P (v) for
an optimal [U, U ] transition (v, U ), (v  , U ) ∈ ALU I , and
(vi) XILU ((v, U ), (v  , L)) = (X̂(v, v  ) + X̂(v  , v  ) − (U − L)) ∗ P (v  ) where
v  ∈ V is the medium vertex in an optimal transition path for the [U, L]
transition (v, U ), (v  , L) ∈ ALU I .

Lemma 5. (Complexity of constructing the optimal LU transition


graphs).Given a vehicle-network instance I = L, U, V, A, X, P , the optimal LU
transition graph GLU
I = (VILU , ALU
I ), the optimal LU transition paths, the medium
vertices on optimal [U, L] transition paths, and the distance measure XILU can all
be determined in O(n3 ) time where n = |V | is the number of vertices in the network.
Proof Sketch. Applying the Floyd-Warshall algorithm for all-pairs shortest
paths, we can determine the shortest distance X̂(u, v) between any pair of ver-
tices in the transporation network G = (V, A) in O(n3 ) time. The optimal LU
transition paths are simply shortest paths in the cases of [L, L], [L, U ], and [U, U ]
transitions. In the case of [U, L] transitions, the optimal LU transition paths
and the medium vertices can be determined by examining all possible concate-
nations of two shortest paths with a common medium vertex as described in
290 S.-H. Lin

Definition 10, which takes O(n3 ) time time all together for the n2 pairs of [U, L]
transitions. The optimal transition costs as the metric XILU can be determined
in O(n3 ) time similarly as described in Corollary 1.
Theorem 5. (Reduction to the all-pairs shortest path problem). Given
L,L
a vehicle-network instance I = L, U, V, A, X, P , π = πs→t is an optimal [L, L]
(k-stop-bounded) refueling policy from s to t if and only if an LU transition
sequence LU π of π is a shortest path from (s, L) to (t, L) (of length k or less) in
the optimal LU transition graph GLU I . Finding all-pairs [L, L] (k-stop-bounded)
optimal refueling policies for a vehicle-network instance I = L, U, V, A, X, P  is
equivalent to finding all-pairs shortest paths (of length up to k) in the optimal
LU transition graph GLU I .

Proof sketch.According to Theorem 2 and the definition of the optimal LU


transition graph, each LU transition sequence LU π of each [L, L] refueling policy
L,L
π = πs→t , s = t that satisfies the optimal LU transition property uniquely rep-
resents a path p = LU π = (s, L), . . . (t, L) from (s, L) to (t, L) in the optimal
LU transition graph GLU I . By Lemma 3, a shortest path from (s, L) to (t, L) (of
length k or less) in the optimal LU transition graph GLU I is also an LU transition
sequence of an optimal [L, L] (k-stop-bounded) refueling policy from s to t.
Corollary 2. (Complexity of the all-pairs optimal [L, L] refueling policy
problem). Algorithm 2 below can solve the all-pairs optimal [L, L] refueling pol-
icy problem in O(n3 ) time and solve the all-pairs [L, L] optimal k-stop-bounded
refueling policy problem in O(n3 log k) time where n is the number of vertices
in the transportation network.
Proof Sketch. It follows from Theorem 5, Lemma 5, and the fact that the
Floyd-Warshall algorithm takes O(n3 ) time while the distance-matrix repeated-
squaring algorithm takes O(n3 log k) time [2].

Algorithm 2. All-pairs [L, L] optimal (k-stop-bounded) refueling policies.


Input: a vehicle-network instance I = L, U, V, A, X, P , and
optionally a bound k on the maximal number of refueling stops allowed.
Output: compact representations of all-pairs optimal [L, L] refueling policies
or all-pairs optimal [L, L] k-stop-bounded refueling policies if k is given
as sequences of refueling stops and the corresponding refueling amounts.
Steps:
1. Determine the optimal LU transition graph GLU I , the medium vertices of
optimal [U, L] transition paths, and the distance measure XILU .
2. If k is not given, determine all-pairs shortest paths in GLU
I
using the Floyd-Warshall algorithm [2],
otherwise determine all-pairs shortest paths of length up to k
using the distance-matrix repeated-squaring algorithm [2].
3. View each path found in step 2 above as an LU transition sequence LU and
apply algorithm 1 to determine the corresponding optimal [L, L]
(k-stop-bounded) refueling policy π.
Finding Optimal Refueling Policies in Transportation Networks 291

Corollary 3. (Reduction of the all-pairs [∗, L] optimal refueling policy


problem). The solution to an instance of the all-pairs [∗, L] optimal refueling
policy problem can be determined in O(n3 ) time given the solution to the all-
pairs [L, L] optimal refueling policy problem on the same instance.
Proof Sketch. To reduce it to the case where all vertices have the same initial
fuel level L, for each vertex s that has an initial fuel level ls > L we add an
additional virtual vertex s that has a unit fuel price of zero, an initial fuel level
of L, and can only directly reach s by consuming U − ls units of fuel. An optimal
[L, L] policy from s then corresponds to an optimal [ls , L] policy from s. For
each vertex s (out of n vertices), it then takes O(n2 ) additional time to update
and LU transition graph to find the [ls , L] policies from s to other vertices.
Corollary 4. (Reduction of the single-pair optimal refueling policy
problem). The solution to an instance of the single-pair optimal [ls , lt ] optimal
refueling policy problem can be determined in O(n2 ) time given the solution to
the all-pairs [L, L] optimal refueling policy problem on the same instance.
Proof Sketch. To reduce it to the case where all vertices have both the initial
fuel level and the final minimum fuel level equal to L, we can add an additional
virtual vertex s for s as described in the proof sketch for Corollary 3, and for
t add an additional virtual vertex t that is only directly reachable from t by
consuming lt units of fuel. An optimal [L, L] policy from s to t then corresponds
to an optimal [ls , lt ] policy from s to t. It then takes O(n2 ) additional time to
update and LU transition graph to find an optimal [ls , lt ] policy from s to t.

References
1. Atamtürk, A., Küçükyavuz, S.: Lot sizing with inventory bounds and fixed costs:
polyhedral study and computation. Operations Research 53, 711–730 (2005)
2. Corman, T.H., Leiserson, C.E.: Introduction to Algorithms, 2nd edn. MIT Press,
Cambridge (2001)
3. Khuller, S., Malekian, A., Mestre, J.: To fill or not to fill: the gas station problem.
In: Proceedings of European Symposia on Algorithms (2007)
4. Lin, S.-H., Gertsch, N., Russell, J.: A linear-time algorithm for finding optimal
refueling policies. Operations Research Letters 35(3), 290–296 (2007)
5. Love, S.F.: Bounded production and inventory models with piecewise concave costs.
Management Science 20, 313–318 (1973)
6. Suzuki, Y.: A generic model for motor-carrier fuel optimization. Working paper,
College of Business, Iowa State University
Scale Free Interval Graphs

Naoto Miyoshi1 , Takeya Shigezumi1 , Ryuhei Uehara2 ,


and Osamu Watanabe1
1
Tokyo Institute of Technology, Tokyo 152-8552, Japan
2
JAIST, Ishikawa 923-1292, Japan

Abstract. Scale free graphs have attracted attention by their non-


uniform structure that can be used as a model for various social and
physical networks. In this paper, we propose a natural and simple ran-
dom model for generating scale free interval graphs. The model generates
a set of intervals randomly, which defines a random interval graph. The
main advantage of the model is its simpleness. The structure/properties
of the generated graphs are analyzable by relatively simple probabilistic
and/or combinatorial arguments, which is different from the most
of the other models for which we need to approximate the processes
by certain differential equations. We indeed show that the distribu-
tion of degrees follows power law, and it achieves large cluster coefficient.

Keywords: scale free graph, small world network, interval graphs.

1 Introduction

Since early works by Watts & Strogatz [8] and Barabási & Albert [2], small world
networks are the focus of recent interest because of their potential as models
for the interaction networks of complex systems in real world [1,7]. There are
three major properties that a small world network and/or a scale free network
has (see, e.g., [4]): (SF) the node connectivities follow a scale free power law
distribution, (CC) two neighbors of a node are also connected by an edge with
high probability, and (SW) any two nodes are connected by a short path through
a very few nodes called hubs.
Up to now, many models have been proposed and their properties have been
investigated. Aside from few deterministic models, most of the randomized mod-
els are based on some dynamic recursive construction of random graphs. Thus,
the analysis of certain properties of the obtained graphs becomes rather compli-
cated, and it is not so easy to see the combinatorial structure of the obtained
graphs. Typically, for example, in order to obtain a formula for the distribution
of degrees (for showing the property (SF) mentioned above), one has to ap-
proximate the process by some differential equations and solve them. Therefore,
although many random graph models have been proposed, we think that it is yet
important to introduce some random graph model that can be easier to analyze
by somewhat standard probabilistic/combinatorial methods. This is important
in particular for designing and analyzing algorithms for scale free networks.

R. Fleischer and J. Xu (Eds.): AAIM 2008, LNCS 5034, pp. 292–303, 2008.

c Springer-Verlag Berlin Heidelberg 2008
Scale Free Interval Graphs 293

In this paper, we propose a simple random model for generating scale free in-
terval graphs. Interval graphs have many applications from scheduling to bioin-
formatics. A graph G = (V, E) is an interval graph if and only if G has an
interval representation I such that each vertex v corresponds to an interval Iv
and two vertices u and v are adjacent in G if and only if corresponding intervals
Iu and Iv share a common interval on I. For defining a random interval graph
model, we introduce a way to randomly generate an interval representation I;
some standard random process is used for choosing intervals’ starting points, and
a power law distribution is used for determining intervals’ lengths. This model
has the following intuitive reasoning: Each interval is regarded as a period of
existence, i.e., life, of some object (or creature), and relationships are created
between these objects who have an overlap of lives. A power law distribution of
a lifespan is derived from the simple rule “longer intervals tend to survive yet
longer” (since experience is the best teacher).
Technically we consider a random model for generating interval representa-
tions. For combinatorial analysis, it is easier to assume that all intervals start
at integer points and their lengths are integers. Thus, we adapt the immigration
and death process for randomly choosing intervals’ starting points as integers;
this model has been studied well in the queuing theory as the infinite server
model. We use a power law distribution on integers for determining lengths of
generated intervals.
Although our interval model is defined as a random process, it is also possible
to consider random interval distributions in a static way. For example (under
the condition that n intervals are generated in a given period) we may assume
that the starting points of these intervals are uniformly distributed in the period.
Thus, the probabilistic/combinatorial structure of the model gets more clear, and
we may be able to use various techniques for analyzing the obtained graphs. In
fact, by relatively standard methods, we show that the obtained random interval
graphs satisfy two properties of the scale free networks, namely, (SF) and (CC).

2 Preliminaries

We first introduce the notions for a (undirected) graph G = (V, E) of which


each edge e = {u, v} in E ⊆ V 2 has no ordering. We only consider simple graphs
without multiedges and self loops. The neighborhood of a vertex v in V is the set
N (v) = {u ∈ V | {u, v} ∈ E}, and the degree of v is |N (v)| denoted by degG (v).
The subscript G can be omitted if no confusion can arise. We sometimes denote
by v ∼ u if u ∈ N (v). A sequence of distinct vertices v1 , v2 , . . . , v is a path,
denoted by (v1 , v2 , . . . , v ), if {vj , vj+1 } ∈ E for each 1 ≤ j < . The length of a
path is the number of edges on the path. For two vertices u and v, the distance
of the vertices, denoted by d(u, v), is the minimum length of the paths joining u
and v. We define d(u, v) = ∞ if u is not reachable to v. The graph G is connected
if d(u, v) < ∞ for each pair of vertices.
A graph (V, E) with V = {v1 , v2 , . . . , vn } is an interval graph if there is a finite
set of intervals I = {Iv1 , Iv2 , . . . , Ivn } on the real line such that {vi , vj } ∈ E if
294 N. Miyoshi et al.

and only if Ivi ∩ Ivj = ∅ for each i and j with 0 < i, j ≤ n. We call the set I of
intervals an interval representation of the graph. For each interval I, we denote
by R(I) and L(I) the right and left endpoints of the interval, respectively (hence
we have L(I) ≤ R(I) and I = [L(I), R(I)]). For any interval representation I
and a point p, ξ[p] denotes the set of intervals that contain the point p. We
denote by Ivi ∼ Ivj if Ivi ∩ Ivj = ∅, which means same as vi ∼ vj for an interval
graph, and denote the length of an interval I by |I|.
In this paper, we focus on a discrete interval model. In this model, each interval
I has two integer endpoints L(I) and R(I), and each interval is closed interval
with minimum length 0. This model seems the most natural and simple one.
However, sometimes, it is (intuitively) better to assume that the minimum length
of an interval is 1. In this case, we may use another (but equivalent) interval
model that consists of open intervals of length at least one. In the following, we
use [i..j] to denote the set of integers {i, i + 1, . . . , j}.

2.1 Scale Free Graph

Many social networks can be modeled as a scale free graph such that the degrees
of the graph follow a scale free power law distribution [4]. More precisely, given
a random distribution on some family of graphs, we consider the following con-
dition for a random graph under this distribution: (SF) the probability that a
vertex v has deg(v) = k is proportional to k −γ for some positive constant γ. We
call such a random graph (more precisely, a random graph distribution) satisfy-
ing this condition scale free. Two other properties are required for the notion of
small world. The first one is about “clustering coefficient”, which characterizes
the probability that two neighbors of a node are adjacent. The second one is
the average (or longest) distance between any pair of vertices in the graph. In
this paper we consider the first property and leave the second one for our future
topic.
We explain a condition for the small world property on the clustering coeffi-
cient. For a vertex v ∈ V , clustering coefficient of v, denoted by CC(v), is defined
by:
|{{u, w} ∈ E | u, w ∈ N (v)}|
deg(v)
2

The clustering coefficient of G = (V, E), denoted by CC(G), is defined by the


arithmetical mean of the clustering coefficient of v in V . By definition, we im-
mediately have the following:
⎛ ⎞
1  1 ⎝  
CC(G) = CC(v) = Pr[u ∼ w | u ∼ v and w ∼ v]⎠.
|V | |V |
v∈V v∈V u,w∈V \{v},u=w

As a desired property of small world graphs, for a given random distribution


on some family of graphs, the following condition has been proposed: (CC) for
some constant c > 0, CC(G) under the distribution is larger than c.
Scale Free Interval Graphs 295

2.2 Probability Distributions


Our random interval graph model is defined based on a random interval genera-
tion model, a way of generating intervals randomly. To determine each interval’s
starting point, we use some random processes studied in the queuing theory; on
the other hand, we use power law distribution for determining the length of each
interval. Here we recall basic distributions and their important properties.
We use the Poisson distribution for specifying the distribution of intervals’
starting points. For specifying the distribution of intervals’ lengths, we use a
power law distribution.
We say that a random variable L on non-negative integers follows a discrete
power law distribution with parameter α (which we denote P(α)) if it satisfies
the following.
1
Pr[L = k] = (k + 1)−α , (k ≥ 0)
ζ(α)

where ζ(α) = i=1 i−α is the Riemann’s zeta function. Here we note the follow-
ing property for this random variable L following P(α).
ζ(α, k + 2)
pk = Pr[L ≥ k + 1 | L ≥ k] = (1)
ζ(α, k + 1)

where ζ(α, n) = i=n i−α is the generalized zeta function. This probability, say
pk , increases as k increasing. This gives the simple rule as mentioned in Section
1; “longer intervals tend to survive yet longer”.

3 New Model of Scale Free Interval Graphs


We here present the random generation model of interval graphs. We use the
immigration and death process [3] to generate an interval representation. The
immigration and death process is one of the waiting queue model such as the cus-
tomers arrive independently of other customers and there exist infinite number
of gates for service.
In our model, we set a clock T = 1, 2, . . . and put intervals on each time using
the Poisson distribution. The algorithm for our model, put-intervals (λ, α, n),
is shown in Algorithm 1. In this algorithm, the variable T is the clock for the
arriving time, tT holds the number of intervals that begin at time T , and the sub-
procedure Poisson(λ) is a random procedure returning an integer according to
Poisson(λ). To decide the length of an interval, we use the conditional probability
pl given in Equation (1), which means that if an interval I has the current length
l, the final length of this interval, L, is longer than l + 1 with probability pl .
We call sometimes pl as the probability of survive at length l. Note that the
distribution of the length of intervals are P(α).
Actually, this is an approximated approach to the model below. Consider a
coin such that lands on heads with probability p. Flip the coin m times at each
time step T and if the coin lands on head, we put an interval starting at time
T . The number of heads on time T follows B(m, p), and we can approximate it
296 N. Miyoshi et al.

Algorithm 1. Put-intervals (λ, α, n)


input : Parameters λ, α, and n.
output: A set of intervals I.
begin
T = 1, i = 1, I = φ;
while i ≤ n do
tT = Poisson(λ);
start tT intervals from T , i.e.,
for j = i to i + tT − 1 do
set L(Ij ) = T ;
let the initial length lj = 0;
end
i = i + tT ;
for each interval Ii exists at T do
decide it will be dead or alive at T + 1 with probability pli ;
if alive then
li = li + 1;
end
else
let the right endpoint of the interval R(Ii ) = T ;
add Ii = [L(Ii ), R(Ii )] = [T − li , T ] to I;
end
end
proceed the clock T to T + 1;
end
output I.
end

with the Poisson distribution, Poisson(λ), if m tends to infinity as the expected


number of heads, pm = λ, remains fixed.
We here consider values of ζ(α) and how it is related intervals’ lifespan for a
typical value of the parameter α.

Example 1. It has been usually claimed that typical scale-free networks satisfy
(SF) with α = 2.1 2.8. Since our later analysis shows that the smaller α
gives the smaller clustering coefficient in our model, we consider α = 2.1 for
our example. Then, since ζ(2.1) 1.560, we have on average n0 0.641n,
n1 0.150n, and n2 0.064n, where ni denotes the number of vertices such
that corresponding interval has length i, and n denotes the number of vertices.

4 Scale Free Property

In this section, we will show that our scale free interval graph has the degree
sequence following a power law distribution.
To consider the degree of a vertex, let us define ξ(T ) for time T and A(I)
for an interval I. ξ(T ) is the number of intervals which exist on time T in our
Scale Free Interval Graphs 297

ξ(L[Iv ])

Iv

N (Iv )

time L[Iv ] time R[Iv ]

Fig. 1. An example of the degree of v: deg(v) = 9. There are 6 intervals on time L[Iv ],
6 intervals are put on time [L[Iv ]..R[Iv ]] and 3 intervals starts at time L[Iv ].

algorithm 1. A(I) represents the number of intervals whose left endpoints are
put on [L[I]..R[I]]. It is easy to see that the degree of a vertex v is the sum of
ξ(L[Iv ]) and A(Iv ) minus tL[Iv ] . (See figure 1). ξ(L[Iv ])−tL[Iv ] means the number
of intervals which exist on time L[Iv ] and started before L[Iv ]. We will analyze
the stationary distribution π(k) of ξ(T ) (i.e., π(k) = limT →∞ Pr[ξ(T ) = k]) and
A(I). First, we will show that ξ(T )−tT follows Poisson(λ ζ(α−1)−1ζ(α) ) in the steady
state. Second, we will show that Pr[A(I) = k] follows a power law distribution for
large k. Third, we conclude with the fact that a power law distribution dominates
the Poisson distribution for large degrees. In the rest of this section, we use the
f (x) ∼ g(x) notation to approximate f (x) by g(x). Precisely, “f (x) ∼ g(x) as
x → ∞” stands for “limx→∞ f (x)/g(x) = 1”.
Consider the time T of the procedure put-intervals. Some intervals exist and
each of them has their current length ≥ 0. Since the length of an interval follows
P(α), the probability of survive depends on the current length of the interval.
Let the pi (for i ≥ 0) be the probability such that an interval whose current
length is i at time T will survive at time T + 1. Since we consider that the length
of an interval follows P(α), pi is derived from equation (1).
Let ρTi be the number of intervals which are alive and have current length i at
time T . As the time T will proceed, ρTi+1 +1
is depends only on ρTi because some
of intervals of ρTi will survive at time T + 1 with probability pi and others ends
at time T . From this observation, we obtain this formula for i ≥ 0:

 m k
Pr[ρTi+1
+1
= k] = p (1 − pi )m−k Pr[ρTi = m]. (2)
k i
m=k
298 N. Miyoshi et al.

k
Since ρT0 is the number of intervals starting at time T , Pr[ρT0 = k] = e−λ λk! . Let
us consider the stationary distribution πi such that πi (k) = limT →∞ Pr[ρTi = k].
For the stationary distribution πi , the equation (2) becomes

 m k
πi+1 (k) = p (1 − pi )m−k πi (m) (3)
k i
m=k

k
and π0 (k) = e−λ λk! .
We will show the following lemma as the solution of the equation (3).
i−1
Lemma 1. Let us denote Pi = j=0 pj for i ≥ 1 and P0 = 1. The stationary
distribution πi follows Poisson(λPi );

(λPi )k
πi (k) = e−λPi .
k!
k
Proof. The proof is done by induction. For i = 0, π0 (k) = e−λP0 (λPk!0 ) . Assume
k
it holds for i ≤ k, i.e., πi (k) = e−λPi (λPk!i ) . The stationary distribution is:

 m
m! (λPi )
πi+1 (k) = pki (1 − pi )m−k e−λPi
(m − k)!k! m!
m=k
∞ 
k
(λpi Pi )  {λPi (1 − pi )}
m k k
−λPi −λPi (λPi+1 ) λPi (1−pi ) (λPi+1 )
=e = e e .
k! 
m ! k! k!
m =0

Note that we used pi Pi = Pi+1 in the above. 

We now can obtain the stationary distribution of ξ(T ), however, what we


want to know is the distribution of ξ(T ) − tT since the degree of a vertex is
ξ(L[I]) − tL[I] + A(I). we conclude the first part of the degree analysis with
the following lemma.
Lemma 2. Let ξ(T ) be the number of intervals which are alive at time T
and tT be the number of intervals starting at time T . Then ξ(T ) − tT follows
Poisson(λ ζ(α−1)−1
ζ(α) ) in the steady state.

Proof. Since πi s are independent and follow Poisson(λPi ), the sum ξ(T ) − π0 =
∞ ∞
i=1 πi also follows the Poisson distribution with parameter i=1 λPi =
λ ζ(α−1)−1
ζ(α) . 

Second, we will show that A(I) follows a power law distribution. Recall that for
any T0 and T ≥ 0, the number of intervals which start on time [T0 ..T0 +T ] follows
the Poisson distribution with parameter λ(T +1). Let us suppose that the interval
I has length l. The number of intervals starting on [L[I]..R[I]](= [L[I]..L[I] + l])
is;
k
{λ(l + 1)}
Pr[A(I) = k | |I| = l] = e−λ(l+1) (4)
k!
Scale Free Interval Graphs 299

Since the length of an interval follows P(α),



 k
{λ(l + 1)}
Pr[A(I) = k] = e−λ(l+1) Pr[|I| = l]
k!
l=0

 ∞ ∞
λk  −λl k−α λk  −λl k−α
k
−λl (λl) 1 −α
= e l = e l = e l
k! ζ(α) ζ(α)k! ζ(α)k!
l=1 l=1 l=0

For the last formula , we show the following lemma.


Lemma 3.

λk  k−α −λl
l e ∼ λα−1 k −α as k → ∞.
k!
l=0

λk ∞ k−α −λl
Proof. Let f (k) = k! l=0 l e and suppose k > α. We then have

λk λα
f (k) ≥ xk−α e−λx dx −
(k − α)k−α e−(k−α) ,
k!0 k!

λk λα
f (k) ≤ xk−α e−λx dx + (k − α)k−α e−(k−α) .
k!0 k!
k ∞ α
Let the integral part g(k) = λk! 0 xk−α e−λx dx and the rest h(k) = λk! (k −
α)k−α e−(k−α) . We show that g(k) ∼ λα−1 k −α as k → ∞ and h(k) = o(k −α ) as
k → ∞. Changing the variable to u = λ x, we have

λα−1 λα−1
g(k) = uk−α e−u du =
Γ (k − α + 1),
0 k! k!
∞
where Γ denotes the Gamma function Γ (s) = 0 us−1 e−u du. We use the fol-
lowing properties of Gamma function;
(i) Γ (s + 1) = s Γ (s),
k! k s
(ii) Γ (s) = lim (s = 0, −1, −2, · · · ).
k→∞ s (s + 1) · · · (s + k)

Then, we have for α = 0, 1, 2, . . .,


(k − α) · · · (1 − α)(−α)
g(k) × k α = λα−1 Γ (−α) → λα−1 as k → ∞.
k! k −α
When α is a nonnegative integer, we have
(k − α)!
g(k) = λα−1 ∼ λα−1 k −α as k → ∞.
k!

Finally, for the term h(k), applying Stirling’s formula k! ∼ 2 π k k+1/2 e−k as
k → ∞, we have
k k e−(k−α)  α k−α λα −1/2
h(k) × k α = λα 1− ∼ √ k → 0 as k → ∞.
k! k 2π

300 N. Miyoshi et al.

Applying Lemma 3 , we obtain


1 α−1 −α
Pr[A(I) = k] ∼ λ k .
ζ(α)

Third, we will show that we can neglect the effect of ξ(L[I]) − tL[I] if the
degree of v is large enough. We present the following lemma.
Lemma 4. Let F̄ and Ḡ be the tail probability of a power law distribution with
parameter α and the Poisson distribution with parameter λμ, respectively. In
∞ ∞ k
precise, using the constant c, F̄ (k) = c i=k i−α and Ḡ(k) = i=k e−λμ (λμ)k! .
Then we have;
Ḡ(k)
→ 0 as k → ∞.
F̄ (k)
 k k
Proof. Let us recall that k! ≥ 3 and if lim f (x) = 0 and lim g(x) = 0, then
x→∞ x→∞
d
g(x) dx g(x)
lim = lim d
.
x→∞ f (x)
dx f (x)
x→∞

 i

Ḡ(k)

e−λμ (λμ)
i
e−λμ i=k 3λμ i
i=k i!
lim = lim ∞ < lim ∞
k→∞ F̄ (k) k→∞ c i=k i−α k→∞ c i=k i−α
 ∞  3λμ x  x
e−λμ k x dx e−λμ
3λμ
x
< lim ∞ = lim =0
k→∞ c k x−α dx c x→∞ x−α

By Lemma 4 with μ = ζ(α−1)−1 ζ(α) , for sufficiently large degree vertices, A(Iv )
dominates ξ[L[Iv ]] − tL[Iv ] on the degree distribution. We now conclude with the
following result.
Theorem 1. A scale free interval graph generated according to our discrete
model has the degree sequence following P(α) for large degrees.

5 Clustering Coefficient
In this section, we will show the constant lower bound of the expected value of
the clustering coefficient. First, we show that there are many short intervals and,
second, the expected value of the clustering coefficient of those short intervals
are large. For given G = (V, E), we partition V into V0 , V1 , . . . such that Vi
contains vertices corresponding to intervals of length i. Let ni be the number of
vertices in Vi , and n the number of vertices in V . Our goal is to show how to
compute a lower bound of the clustering coefficient of a scale free interval graph
since it depends on the distribution of ni . Typically, we have the following lower
bound.
Scale Free Interval Graphs 301

Example 2. By Example 1, we assume that the expected values of n0 , n1 , and


n2 are 0.641n, 0.150n, and 0.064n, respectively. Then the expected value of the
clustering coefficient of G, CC(G), is at least 0.7713.
We have the key lemma is the following, which is independent of the degree
distribution:
Lemma 5. Let Iu , Iv , Iw be any three intervals placed randomly. We assume
that the positions of the intervals are independent, and the universal in-
terval is long enough. Then, Pr[Iu ∼ Iw | Iu ∼ Iv and Iw ∼ Iv ] =
lu lv + lv lw + lw lu + lu + lv + lw + 1
.
(lu + lv + 1)(lw + lv + 1)
Proof. To simplify, we shift the whole intervals and fix L(Iv ) = 0 and R(Iv ) = lv .
Then R(Iu ) takes i in [0..lv + lu ] with conditional probability lu +l1v +1 given
Iu ∼ Iv . Similarly, R(Iw ) takes j in [0..lv + lw ] with conditional probability
lw +lv +1 given Iw ∼ Iv .
1

We first assume that lw ≤ lv ≤ lu . Then, for each i in [0..lv + lu ], we have the


following cases; |Iu ∩ Iv | = i for 0 ≤ i < lv , |Iu ∩ Iv | = lv for lv ≤ i ≤ lu , and
|Iu ∩ Iv | = lu + lv − i for lu < i ≤ lu + lv . That is, we have lv + lu + 1 different
cases that Iu intersects with Iv . Moreover by the useful property of the Poisson
distribution, we can treat each of them occurring with the same probability [6].
Now, we turn to consider the cases that Iw intersects with Iu ∩ Iv . The number
of cases that Iw intersects with Iv is lv + lw + 1. Among them, when 0 ≤ i < lv ,
Iw intersects with Iu ∩ Iv for each j = R(Iw ) with j in [0..i + lw ]. If lv ≤ i ≤ lu ,
Iw always intersects with Iu ∩ Iv = Iv . The case lu < i ≤ lu + lv is symmetric.
Hence, taking average, we have

Pr[Iu ∼ Iw | Iu ∼ Iv and Iw ∼ Iv ]
 l −1 
1 
v
i + lu + 1
= 2 + (lw − lv + 1)
lv + lw + 1 l + lu + 1
i=0 v
lu lv + lv lw + lw lu + lu + lv + lw + 1
= .
(lu + lv + 1)(lw + lv + 1)
In the other two cases (lv < lw , lu , and lw , lu < lv ), we can analyze in a similar
way, and obtain equations which imply the same results. 
Hereafter, we denote by f (lv ; lu , lw ) = lu lv +l v lw +lw lu +lu +lv +lw +1
(lu +lv +1)(lw +lv +1) . It is easy to
check that for any fixed positive integer lv , f (lv ; lu , lw ) is a nondecreasing func-
tion for lu and lw . We also note that f (0; lu , lw ) = 1 for any lu and lw , which
means that any two intervals Iu and Iw intersecting with Iv of length 0, Iu and
Iw share a common interval Iv , which is a point.
Now, we turn to the computation of the lower bound of the expected value
of CC(G). We denote by CC(Vi ) the expected value of the clustering coefficient
of a vertex in Vi . Then we have CC(G) = n1 i=0,1,... ni CC(Vi ). In this section,
our goal is to give a good lower bound of CC(Vi ). In our model, first few Vi s are
influential. Hence we can give a good lower bound by analyzing them.
302 N. Miyoshi et al.

Lemma 6. We have CC(V0 ) = 1, and CC(V1 ) > (63n2 − 9n20 − n21 − 18n0 n −
6n1 n − 6n0 n1 − 183n + 51n0 + 15n1 + 112)/(72(n − 2)(n − 1)).
Proof. Due to the limit of space, we omitted the proof. For the complete proof,
see [5]. 
By the equation of Lemma 6, we have a lower bound of CC(G) for fixed α. For ex-
ample, letting n0 = 0.641n and n1 = 0.150n (see Example 1), we have CC(G) =
1 1 1 46.2647n2 −148.059n+112
n i=0,1,... ni CC(Vi ) > n i=0,1 ni CC(Vi ) = n (n0 + 72(n−1)(n−2) n1 ) =
452n2 −1395n+1008
1
n (0.641n + 648(n−1)(n−2) 0.150n) = 0.737385(n−1.99726)(n−1.02891)
(n−1)(n−2) 0.7374. In
Lemma 6, we only consider three sets V0 , V1 , and V \ (V0 ∪ V1 ). We can repeat
the idea once more, and obtain a better lower bound. The computations in the
proof are straightforward and tediously, and hence omitted.

Lemma 7. We have CC(V1 ) > (1656n2 −324n20 −64n21 −9n22 −432n0 n−192n1 n−
72n2 n − 288n1n0 − 108n2 n0 − 48n2 n1 − 4776n + 1476n0 + 576n1 + 201n2 +
2800)/(1800(n−1)(n−2)) and CC(V2 ) > (500n2 −100n20 −25n21 −4n22 −200n0n−
100n1n − 40n2n − 100n1n0 − 40n2n0 − 20n2n1 − 1460n + 540n0 + 245n1 + 92n2 +
921)/(600(n − 1)(n − 2)).
Using the equations of Lemma 7, we have a better lower bound of
CC(G) for fixed α. For example, letting n0 = 0.641n, n1 = 0.150n, and
n2 = 0.064n, we have CC(G) = n1 i=0,1,... ni CC(Vi ) > n1 i=0,1,2 ni CC(Vi ) =
 
1 1178.5n2 −3730.62n+2800 301.125n2 −1071.22n+921
n n 0 + 1800(n−1)(n−2) n 1 + 600(n−1)(n−2) n 2 =
0.771328(n−1.99648)(n−1.04782)
(n−1)(n−2) 0.7713.

6 Concluding Remarks
In this paper, we have proposed the scale free interval graph model, and analyzed
that it has power law degree distribution and large clustering coefficient. Actu-
ally, we had considered the time-continuous model which is almost the same as
the time-discrete model introduced in Section 3. For the time-continuous model,
we also showed the following results.
Theorem 2. A scale free interval graph generated according to our time-
continuous model has the degree sequence following P(α) for large degrees.
Theorem 3. For α = 2.1 (same as Example 1), A scale free interval graph
generated according to our time-continuous model has the expected clustering
coefficient of G is at least 0.159. Note that it is independent of the size of the
graph.
However, our model seems to not satisfy the third property (SW). The property
(SW) is that any two nodes are joined by short path, which is estimated by
average or longest distance between any two nodes in G. Our experimental results
showed that the average distance and the diameter of the graph are both linear
in n. We leave for future works that proposing scale free interval graph model
that has the property (SW).
Scale Free Interval Graphs 303

Acknowledgment

This research was supported in part by JSPS Global COE program ”Computa-
tionism as a Foundation for the Sciences”.

References
1. Barabási, A.: Linked: The New Science of Networks. Perseus Books Group (2002)
2. Barabási, A., Albert, R.: Emergence of Scaling in Random Networks. Sci-
ence 286(5439), 509–512 (1999)
3. Cox, D.R., Isham, V.: Point Processes. Chapman & Hall, Boca Raton (1980)
4. Newman, M.: The structure and function of complex networks. SIAM Review 45,
167–256 (2003)
5. Miyoshi, N., Shigezumi, T., Uehara, R., Watanabe, O.: Scale Free Interval Graphs.
Dept. of Math. and Comp. Sciences Tokyo Institute of Technology Research Reports
(Series C), series C-255 (2008),
http://www.is.titech.ac.jp/research/research-report/C/C-255.pdf
6. Takács, L.: Introduction to the Theory of Queues. Oxford University Press, Oxford
(1962)
7. Watts, D.J.: Small Worlds: The Dynamics of Networks Between Order and Ran-
domness. Princeton University Press, Princeton (2004)
8. Watts, D.J., Strogatz, D.H.: Collective Dynamics of ’Small-World’ Networks. Na-
ture 393, 440–442 (1998)
9. Wolff, R.W.: Poisson Arrivals See Time Averages. Operations Research 30, 223–231
(1982)
On Representation of Planar Graphs by
Segments

Sadish Sadasivam and Huaming Zhang

Computer Science Department


University of Alabama in Huntsville
Huntsville, AL, 35899, USA
{ssadasiv,hzhang}@cs.uah.edu

Abstract. In this paper, we introduce Vertex-face contact representa-


tion (VFCR for short) for 2-connected plane multigraphs. We present a
simple linear time algorithm for constructing a VFCR for 2-connected
plane graphs. Our algorithm only uses an st-orientation for G and its
corresponding st-orientation for the dual graph of G. We also show that
one kind of vertex-vertex contact representation (VVCR) for 2-connected
bipartite planar graphs introduced by Fraysseix et al. [2,3] can be easily
obtained by applying our algorithm. In general, our algorithm produces
a more compact representation than their algorithm.
Then we investigate st-orientations for 3-connected planar graphs.
We prove that a 3-connected planar graph G with n vertices and f faces,
has an st-orientation with the length of its longest directed path ≤ 2n +
 3
2 n/3 + 5. This implies that such a graph G admits a VFCR in a
grid with non-trivial size bound. This non-trivial size bound also applies
to the vertex-vertex contact representation [2,3] for a large class of 2-
connected bipartite planar graphs.

1 Introduction

Geometric representation of planar graphs has drawn extensive attention from


computer science community. There are many kinds of geometric representations
of planar graphs. In [2,3], Fraysseix et al. introduced vertex-vertex contact repre-
sentation (VVCR for short) for 2-connected bipartite planar graphs. In this rep-
resentation, each vertex is represented by either a vertical or a horizontal segment
so that no two of them have a common interior point, and two segments have a
point in common if and only if the corresponding vertices are adjacent in G.
Consider VVCR for 2-connected bipartite planar graphs. Without loss of gen-
erality, we can assume that the given bipartite planar graph is maximal, i.e., all
its facial cycles are quadrangles. Let G = (V1 ∪ V2 , E) be such a 2-connected
maximal bipartite planar graph, where V1 and V2 are disjoint vertex subsets
and both are independent vertex subsets. In [2,3], Fraysseix et al. presented a
linear time algorithm to construct a VVCR for G in a grid of size W × H, where

This research is supported in part by NSF grant CCF-0728830.

R. Fleischer and J. Xu (Eds.): AAIM 2008, LNCS 5034, pp. 304–315, 2008.

c Springer-Verlag Berlin Heidelberg 2008
On Representation of Planar Graphs by Segments 305

the width W is always (|V1 | − 1), and the height H is always (|V2 | − 1). (Of
course, here the roles played by width and height are symmetric, i.e., they are
interchangeable.)
We introduce the following geometric representation for plane graphs (a plane
graph is a planar graph with a fixed planar embedding):

Definition 1. Let G be a 2-connected plane multigraph. A vertex-face contact


representation (VFCR for short) of G is a representation such that: a) Each
vertex is drawn as a horizontal line segment (called vertex segment), each face
is drawn as a vertical line segment (called face segment). (b) No two segments
have a common interior point. A vertex segment and a face segment have a point
in common if and only if their corresponding vertex and face are adjacent in G.

Let G be a 2-connected plane multigraph. The angular graph of G is obtained


through the following steps: (1) add one vertex for each face (including exterior
face), call it face node; (2) add an edge between each face node and all its
neighboring vertices in G; (3) delete all the original edges in G. The angular
graph of G is denoted by A(G). Obviously, A(G) is a 2-connected maximal
bipartite plane graph. The mapping from G to A(G) can be easily done in linear
time. On the other hand, let G be a 2-connected maximal bipartite plane graph
with n vertices. G is 2-colorable and we color its vertices by black and white.
Each face f of G is adjacent to two black vertices. We connect the two black
vertices in f by an edge within f . The collection of these edges is a multigraph
Gb on black vertices. Gw can be defined similarly on the set of white vertices
of G. Both Gw and Gb are 2-connected plane multigraphs. The transformation
from G to Gb and Gw can also be done in linear time.
Simple observations give the following technical lemma.

Lemma 1. 1. Let G be a 2-connected plane multigraph. A VFCR of G is a


VVCR of A(G).
2. Let G be a 2-connected maximal bipartite plane graph. A VVCR of G is a
VFCR of Gb and Gw . (Subject to a 90-degree rotation if necessary. This
is because we insist that the vertex segments are placed horizontally in a
VFCR.)

Applying above lemma and the existence of VVCR for 2-connected maximal bi-
partite plane graphs, we actually prove that every 2-connected plane multigraph
G = (V, E) has a VFCR and it can be constructed in linear time. The size of
the VFCR for G is always (|F | − 1) × (|V | − 1), where |F | is the number of faces
in G, |V | is the number of vertices of G.
In this paper, we consider the problem the other way around. Namely, we con-
sider the problem from VFCR first. We present a linear time algorithm for con-
structing VFCR for a 2-connected plane multigraph. Our algorithm has the fol-
lowing advantages: (1) The algorithm is simple and it only uses an st-orientation
O of G and its corresponding st-orientation O∗ of the dual graph of G. The co-
ordinates of the segments carry clear combinatorial meanings. The grid size is
length(O∗ )×length(O), where length(O) (length(O∗ ), respectively) is the length
306 S. Sadasivam and H. Zhang

of the longest directed path in O (O∗ , respectively). (2) Although the grid size
bound remains to be the trivial bound (|F |− 1)× (|V |− 1), it in general produces
VFCR (and hence VVCR) in a smaller grid size for 2-connected plane graphs in
practice. Actually, Papamanthou and Tollis [8] introduced a practical algorithm
on controlling the length of the longest directed paths in st-orientations and they
conjectured that for a 2-connected planar graph, there exists an st-orientation
of G such that (length(O) + length(O∗ )) ≤ 2|V |.
For a 3-connected planar graph, all its planar embeddings are derived from its
unique spherical embedding. Therefore, its faces and vertices maintain the same
adjacency relations in all its different planar embeddings. Hence, it is meaningful
to define VFCR for 3-connected planar graphs. Let G be a 3-connected planar
graph with n vertices and f faces. We present a linear time algorithm
 to construct
an st-orientation of G such that either length(O) ≤ 2n + 2 n/3 + 5, or
 3
length(O∗ ) ≤ 2f3 + 2 f /3 + 5. This bound result is of independent interest. In
addition, it guarantees a non-trivial grid size bound for VFCR for 3-connected
planar graphs and hence it guarantees a non-trivial grid size bound for VVCR
for a large class of bipartite planar graphs, i.e., the class of angular graphs of
3-connected planar graphs.

2 Preliminaries

A graph G = (V, E) is a multigraph if G allows more than one edge between its
any two vertices. A graph G is a planar graph if G admits a planar embedding
without edge crossings except possibly at their common end vertices. A plane
graph G is a planar graph with a fixed planar embedding. G is called a directed
graph (digraph for short) if each edge of G is assigned a direction. We abbreviate
the words “counterclockwise” and “clockwise” as ccw and cw respectively.
The dual graph G∗ = (V ∗ , E ∗ ) of a plane graph G is defined as follows: For
each face F of G, G∗ has a node vF . For each edge e in G, G∗ has an edge
e∗ = (vF1 , vF2 ) where F1 and F2 are the two faces of G with e on their common
boundaries. e∗ is called the dual edge of e. For each vertex v ∈ V , the dual face
of v in G∗ is denoted by v ∗ .
An orientation O of a multigraph G is a digraph obtained from G by assigning
a direction to each edge of G. We will use G to denote both the resulting digraph
and the underlying undirected graph unless otherwise specified. (Its meaning
will be clear from the context.) The length of the longest directed path in O is
denoted by length(O).
For a 2-connected plane multigraph G and an exterior edge (s, t), an orienta-
tion of G is called an st-orientation if the resulting digraph is acyclic with s as
the only source and t as the only sink.
Given an st-orientation O of 2-connected plane multigraph G, consider the
dual graph G∗ of G. For each e ∈ G, we direct its dual edge e∗ from the face on
the left of e to the face on the right of e when we walk on e along its direction
in O. We then reverse the direction of (s, t)∗ . It was shown in [9,10] that this
orientation is an st-orientation of G∗ with (s, t)∗ as the distinguished exterior
On Representation of Planar Graphs by Segments 307

t=v 6
4 t=v
6

t *= f6
4
v 3
4
2 v v
f 4 5
4 v5
f 3 f4
2
1 v
* 3 v
s = f1 3
2
0 1 v f1 f2 f f f
2 3 f 3 5 6
5
f v
3 2
2

s=v1 0
s=v
1

(1) (2)

Fig. 1. (1) An st-orientation O of a graph G and its corresponding st-orientation O∗


of G∗ . (2) A VFCR for G.

edge. We will denote this orientation of G∗ by O∗ and call it the corresponding


st-orientation of O. For each vertex v in G, the length of the longest directed
path from s to v in O will be denoted by α(v). Similarly, for each node f in G∗ ,
α(f ) is the length of the longest directed paths from s∗ to f in O∗ . Note that
α(s) = 0, α(s∗ ) = 0, α(t) = length(O), and α(t∗ ) = length(O∗ ). For example,
Figure 1 (a) gives an example of an st-orientation of a 2-connected plane graph
G and its corresponding st-orientation of G∗ . The edges of G are drawn in solid
lines, while the edges of G∗ are drawn in dashed lines. The number inside the
circle for each vertex v is α(v). The number inside the square for each face f is
α(f ). Obviously, length(O) = 4 and length(O∗ ) = 4.

3 VFCR for 2-Connected Plane Graphs

Let G be a 2-connected plane multigraph. Using an st-orientation of G and


its corresponding st-orientation of G∗ , with some modification to the existing
visibility representation algorithm from [9,10], we have the following algorithm
for constructing a VFCR for G.

Algorithm 1. Vertex-face contact representation


Input: A 2-connected plane multigraph G = (V, E).
Output: A VFCR for G.

1. Select an exterior edge (s, t) ∈ E. Compute an st-orientation O for G, where


s is the source, t is the sink.
2. Construct its dual graph G∗ and its dual orientation O∗ .
3. For each vertex v ∈ G and f ∈ G∗ , compute α(v) and α(f ) respectively.
308 S. Sadasivam and H. Zhang

4. Construct the coordinates for vertices of G as follows:


(a) For each vertex, its y coordinate is α(v).
(b) For vertex s, the x coordinates of its left and right end point of the vertex
segment are 0, α(t∗ ) respectively.
(c) For vertex t, the x coordinates of its left and right end point of the vertex
segment are 0, α(t∗ ) respectively.
(d) For any other vertex v, the x coordinates of its left and right end point of
the vertex segment are the smallest and biggest α(f ) from all its incident
faces respectively.
5. Construct the coordinates for faces of G, i.e. nodes of G∗ as follows:
(a) For each face f , its x coordinate is α(f ).
(b) For face s∗ , the y coordinates of its lower and upper end point of the face
segment are 0, α(t) respectively.
(c) For face t∗ , the y coordinates of its lower and upper end point of the face
segment are 0, α(t) respectively.
(d) For any other face f , the y coordinates of its lower and upper end point
of the face segment are the smallest and biggest α(v) from all its incident
vertices respectively.

The grid size of the VFCR constructed by Algorithm 1 is length(O∗ ) ×


length(O). It is bounded by (|F | − 1) × (|V | − 1). For a particular VFCR
constructed by Algorithm 1, its compactness only depends on the choice of
the st-orientation O. For a practical algorithm on controlling length(O) and
length(O∗ ), we refer the readers to [8].
Figure 1 (2) produces a VFCR for G in Figure 1 (1), by using O of G in
Figure 1 (1) in Algorithm 1. The grid size produced by Algorithm 1 for G in
Figure 1 (2) is 4 × 4. Consider the angular graph A(G) for G. It has 6 black
vertices and 6 white vertices. Applying Lemma 1 (1), the VFCR for G is also
a VVCR for A(G). If we had used the algorithm presented in [2,3] to construct
a VVCR for A(G), the grid size would be (6 − 1) × (6 − 1) = 5 × 5. Hence,
in general, Algorithm 1 produces more compact representations. We have the
following theorem for the correctness of Algorithm 1.

Theorem 1. 1. Let G be a 2-connected plane multigraph. Algorithm 1 produces


a VFCR for G in linear time.
2. Let G be a 2-connected maximal bipartite plane graph, then applying Algo-
rithm 1 to either Gw or Gb produces a VVCR for G in linear time.

4 st-Orientations of 3-Connected Planar Graphs and


Their Applications in VFCR
Let G be a 3-connected planar graph. G has a unique embedding in the sphere.
After choosing a particular face in the spherical embedding of G to be the exterior
face, the unique spherical embedding leads to a particular planar embedding
of G. In all its planar embeddings, vertices and faces of G preserve exactly
the same adjacency relations. Therefore, VFCR constructed for any particular
On Representation of Planar Graphs by Segments 309

planar embedding of G (which is a plane graph) can be viewed as a VFCR for


the original planar graph G. Therefore, it is meaningful to define VFCR for
3-connected planar graphs.
In this section, we present an algorithm to construct an st-orientation O for a
proper planar embedding for 3-connected planar graphs such that length(O) is
non-trivially bounded. Note that, this result naturally yields a non-trivial grid
size bound for VFCR for 3-connected planar graphs.
Next we introduce the concept and properties of realizer for 3-connected plane
graphs [1,5,6].

Definition 2. Let G = (V, E) be a 3-connected plane graph. v1 , v2 , vn be three


vertices on its exterior face in ccw order. A realizer of G is a triplet of rooted
directed spanning trees {T1 , T2 , Tn } of G with the following properties:

1. For i ∈ {1, 2, n}, the root of Ti is vi , the edges of G are directed from children
to parent in Ti .
2. Each edge of G is contained in at least one and at most two spanning trees.
If an edge of G is contained in two spanning trees, then it has different
directions in the two trees.
3. For each vertex v of G, when v is not the root of the tree, it has exactly
one edge leaving v in each of T1 , T2 , Tn . The ccw order of the edges incident
to v is: leaving in T1 , entering in Tn , leaving in T2 , entering in T1 , leaving
in Tn , and entering in T2 (Figure 2 shows two examples of edge directions
around a vertex v). Each entering block could be empty. An edge with two
opposite directions is considered twice. The first and the last incoming edges
are possibly coincident with the outgoing edges.
4. For i ∈ {1, 2, n}, all the incoming edges of the root vi belong to Ti .

We color the edges in T1 by blue, T2 by green, and Tn by red. According to the


definition of realizer, each edge of G is assigned one or two colors, and is said to
be 1-colored or 2-colored, respectively.

Tn Tn

T2 T1 T2

v v T1
T1
T1
Tn T2 Tn T2

(1) (2)

Fig. 2. Two examples of edge directions around a vertex v


310 S. Sadasivam and H. Zhang

For each vertex v of G and i ∈ {1, 2, n}, pi (v) denotes the path in Ti from v to
the root vi of Ti . A subpath of pi (v) between the end vertex v and an ancestor u
of v in Ti is denoted by pi (v, u). The subpath of the external face of G with end
vertices v1 and v2 and not containing vn is denoted by ext(v1 , v2 ). The subpaths
ext(v2 , vn ) and ext(vn , v1 ) are defined similarly. The properties of realizer have
been studied extensively in [1,5,6]. We summarize them in the following lemma.
Lemma 2. Let G = (V, E) be a 3-connected plane graph, v1 , v2 , vn be its three
exterior vertices in ccw. Then G admits a realizer R = (T1 , T2 , Tn ), where vertex
vi is the root of Ti for i ∈ {1, 2, n}. The realizer can be constructed in linear
time. It satisfies the following properties:
1. For each vertex v of G, p1 (v), p2 (v) and pn (v) have only the vertex v in
common.
2. For vertices v1 , v2 , vn the following hold: p1 (v2 ) = p2 (v1 ) = ext(v1 , v2 );
p2 (vn ) = pn (v2 ) = ext(v2 , vn ); pn (v1 ) = p1 (vn ) = ext(vn , v1 ).
Figure 3 shows an example of a 3-connected plane graph and one of its realizers.
Simple observation also verifies the following property for 3-connected plane
graph G with a realizer R = (T1 , T2 , Tn ):
Property 1. Let v be a vertex other than v1 , v2 , vn of G.
1. All ancestors of v in T1 (T2 , Tn respectively) constitute a nonempty set and
they appear before v in the ccw postordering of the vertices of G with respect
to Tn (T1 , T2 respectively).
2. All ancestors of v in T2 (Tn , T1 respectively) constitute a nonempty set and
they appear before v in the cw postordering of the vertices of G with respect
to Tn (T1 , T2 respectively).
An ordering O of a set consisting of elements a1 , a2 , . . . , ak is written as O =<
a1 , a2 , . . . , ak >. For two elements ai and aj , if ai appears before aj in O, we
write ai ≺O aj . The concatenation of two ordered lists O1 and O2 is written as
O1 O2 .

vn

e
k
f
h
g d
c
a
b
v1 v2

Fig. 3. A 3-connected plane graph and one of its realizer


On Representation of Planar Graphs by Segments 311

Let T = (V, E) be a rooted tree drawn in the plane. A balanced partition


[11] of T is the partition of V into three ordered subsets A, B, C such that:
Let ai be the ith vertex of T in counterclockwise postordering, and bi be the
ith vertex of T in clockwise postordering. Marking the vertices of T in the
order a1 , b1 , a2 , b2 , . . . , ai , bi , . . ., continue this process as long as the next pair
of the vertices ai+1 , bi+1 have not been marked. This process stops when either
ak+1 = bk+1 or bk+1 is already marked. This vertex is called the merge vertex
of T . When the marking process stops, the un-marked vertices of T form a
single path from the merge vertex ak+1 to the root of T . This path is called the
leftover path of T . Then A =< a1 , a2 , . . . , ak >, B =< b1 , b2 , . . . , bk >, and C is
the leftover path ordered from the merge vertex to the root of T . We have the
following lemma.
Lemma 3. Let G be a 3-connected plane graph with n vertices. G has at most
5 exterior vertices v1 , v2 , · · · , vn in ccw order. (Therefore, the ellipsis here could
mean 0, 1, or 2 vertices.) Let R = {T1 , T2 , Tn } be a realizer of G. Ti is rooted
at vi . For each i ∈ {1, 2, n}, let (Ai , Bi , Ci ) be the balanced partition of Ti . Then
there exists i ∈ {1, 2, n} such that |Ci | ≤ n/3 + 4.
In a balanced partition, the subgraph induced by vertices in Ai ∪ Bi for i ∈
{1, 2, n} defines a ladder graph of order k. Ladder graph is defined as follows
[11]:
Definition 3. A ladder graph of order k is a spanning subgraph of the following
plane graph L = (VL , EL ). The vertex set VL is partitioned into two ordered
lists A =< a1 , a2 , . . . , ak > and B =< b1 , b2 , . . . , bk >. EL = EA ∪ EB ∪ Ecross ,
where: EA = {(ai , ai+1 )|1 ≤ i < k}; EB = {(bi , bi+1 )|1 ≤ i < k}; and Ecross
consists of edges between a vertex ai ∈ A and a vertex bj ∈ B. The edges in
Ecross are called cross edges of L.
An ordering O of the vertices of a ladder graph L = (A ∪ B, EL ) is consistent
with respect to L if for any i < j, ai ≺O aj and bi ≺O bj .
The following lemma was proved in [11]:
Lemma 4. Let L = (A ∪ B, EL ) be a ladder graph √ of order k. Then L has a
consistent ordering O such that length(O) ≤ k +2 k−1. O can be constructed
in linear time.
Next, we show how to use T1 , T2 , Tn to construct an st-orientation O of G such
that length(O) is non-trivially bounded.
Algorithm 2. An st-orientation for 3-connected plane graphs
Input: A 3-connected plane graph G = (V, E) with n vertices and at most 5
exterior vertices. v1 , v2 , · · · , vn be its exterior vertices in ccw order. (The ellipsis
here could mean 0, 1, or 2 vertices.)
Output: An st-orientation O of G.
1. Construct a realizer R = {T1 , T2 , Tn } for G. Ti is rooted at vi for i ∈
{1, 2, n}.
312 S. Sadasivam and H. Zhang

2. Construct the balanced partition {Ai , Bi , Ci } for T1 , T2 , Tn .


3. Select a Ti from i ∈ {1, 2, n} with |Ci | ≤ n/3 + 4, there are three cases:
Case 1: i = n.
(a) Order the set {v1 , v2 } as < v1 , v2 >. Denote it by O1 .
(b) Construct a consistent ordering for the ladder graph induced by the vertex
set (An − {v1 }) ∪ (Bn − {v2 }), where the order of this ladder graph is
(kn − 1) = (|An | − 1). Denote this ordering by O2 .
(c) Order the vertices in Cn from the merge vertex towards vn . Denote this
ordering by O3
(d) Concatenate O1 O2 O3 to be O.
Case 2: i = 2.
(a) Order the set {v1 , vn } as < v1 , vn >. Denote it by O1
(b) Construct a consistent ordering for the ladder graph induced by the vertex
set (A2 − {vn }) ∪ (B2 − {v1 }), where the order of this ladder graph is
(k2 − 1) = (|A2 | − 1). Denote this ordering by O2 .
(c) Order the vertices in C2 from the merge vertex towards v2 . Denote this
ordering by O3
(d) Concatenate O1 O2 O3 to be O.
Case 3: i = 1.
(a) Order the vertices in ext(v2 , vn ) from v2 towards vn . Denote this ordering
by O0 . Note that, it has at most 4 vertices.
(b) Remove the vertices on ext(v2 , vn ) from A1 , B1 . Consider the tree T1  =
T1 − ext(v2 , vn ). T1  has a partition {A1 = A1 − ext(v2 , vn ), B1 = B1 −
ext(v2 , vn ), C1 }. This partition is not necessarily balanced. ext(v2 , vn )
has at most 4 vertices. v2 ∈ A2 , and vn ∈ B2 . Therefore |A1 | differs
from |B1 | by at most 2. Remove at most 2 vertices from the lower ends
from one of A1 and B1 to balance the partition. Denote this partition by
{A1 , B1 , C1 }. Order the removed 1 or 2 vertices consistently with their
orders in A1 or B1 . Denote this ordering by O1 . Note that |A1 | = |B1 |
and they differ from |A1 | = |B1 | by at most 3. Therefore, the new ladder
graph induced by A1 ∪ B1 has order at least (k1 − 3) = (|A1 | − 3). (If
G were a 3-connected plane graph with more exterior vertices, then the
ladder graph induced by A1 ∪ B1 could have smaller order, which could
cause problem for controlling the length of our intended st-orientation.
So we require G to have at most 5 exterior vertices.)
(c) Construct a consistent numbering for the ladder graph induced by A1 ∪
B1 . Denote this ordering by O2 .
(d) Order the vertices in C1 form the merge vertex towards v1 . Denote this
ordering by O3
(e) Concatenate O0 O1 O2 O3 to be O.

Next lemma proves the ordering O produced above by Algorithm 2 is indeed


an st-orientation and its length(O) is non-trivially bounded.
Lemma 5. Let G be a 3-connected plane graph G = (V, E) with n vertices and at
most 5 exterior vertices. Then Oconstructed by Algorithm 2 is an st-orientation
of G with length(O) ≤ 2n 3 + 2 n/3 + 5.
On Representation of Planar Graphs by Segments 313

Proof. According to Algorithm 2, we have three different cases to consider. We


will only prove for the case i = n. The other two cases for i = 1, i = 2 can be
similarly proved. We have the following observations:
1. v1 is the first in O. v2 is the second in O. vn is the last in O.
2. For v = vn , its parent in Tn is a neighbor of v in G and it is after v in O.
3. For v = v2 , its neighbor v1 is before v2 in O.
4. For v ∈/ {v1 , v2 }, if v ∈ An , then according to Property 1 (1), its parent in
T1 is before v in O. Similarly, if v ∈ Bn , then its parent in T2 is before v in
O. If v ∈ Cn , then its parents in both T1 and T2 are before v in O.
Therefore, O is indeed an st-orientation of G. v1 is the single source. vn is the
single sink.
No matter which Ti we use to construct O, there is a sub-ordering O2 using
a ladder graph in O. Denote its order by k. Note that we choose i ∈ {1, 2, n} so
that |Ci | ≤ n/3 + 4. 2|Ai | + |Ci | = n, i ∈ {1, 2, n}, and k ≥ (|Ai | − 3). Therefore,
k ≥ |Ai | − 3 ≥ n−(n/3+4)
2 − 3 ≥ (n/3 − 5).
A ladder graph of order k has 2k vertices. By Lemma√4, a consistent ordering
constructed for the ladder graph can pick at most k + 2 k− 1 + 1 vetices. (The
last +1 term comes from the fact that the number of vertices on a path is one
more than its length.) Therefore, √ O2 constructed
√ for the ladder graph
√ of order
k bypasses at least 2k − (k + 2 k) = k − 2 k vertices. k − 2 k is almost
a monotonically increasing function except that from k = m2 to k = m2 + 1,
it decreases by 1. Then at k = m2 + 2, its value increases by 1 again. Given
 observation and the fact k ≥ n/3
this  − 5, O2 bypasses at least (n/3 − 5) −
2 n/3 − 5 − 1 ≥ (n/3 √ − 5) − 2 n/3 − 1. (The last −1 term is because
that the function k − 2 k might  decrease by 1 at certain places.)
 Therefore
length(O) ≤ n − (n/3 − 5 − 2 n/3 − 1) − 1 = 2n 3 + 2 n/3 + 5. (The
subtraction of last 1 is because that the length of a path is one less than the
number of the vertices on it.)
Symmetrically, we can start from the 3-connected dual graph G∗ and construct
an st-orientation for it and then its dual st-orientation for G. Therefore, we have
the following main theorem. Its proof is obvious and hence omitted.
Theorem 2. Let G be a 3-connected planar graph with n vertices and f faces.

1. G admits a VFCR on a grid with size bounded by (f −1)×( 2n
3 +2 n/3+5),
which is constructable in linear time. 
2. G admits a VFCR on a grid with size bounded by ( 2f
3 +2 f /3+5)×(n−1),
which is constructable in linear time.
Observe that for the above grid size bound, either the width bound is trivial, or
the height bound is trivial. It would be nice if we could have both height and
width bounds to be non-trivial. Next, we present a 3-connected planar graph G
with n vertices and f = n faces, such that for any st-orientation O of G, either
its length(O) = (n − 1), or length(O∗ ) = (f − 1). Therefore, it is not possible
to have both non-trivial grid size bounds at least by using our algorithm. We
conjecture that this is true for all VFCR algorithms.
314 S. Sadasivam and H. Zhang

t H(G)

t*
s y
c*
e*
H(G) s*

u v w

d*

x s y

(1) (2)

Fig. 4. A wheel graph of order n. Dashed lines represent a path with possibly many
vertices on it. (1) H(G) is an interior vertex in the planar embedding, (2) H(G) is an
exterior vertex in the planar embedding.

Definition 4. A wheel graph Wn of order n is a graph containing a cycle of


order (n − 1), and for which every graph vertex in the cycle is connected to one
other graph vertex (which is called the hub of G and denoted by H(G)).
Figure 4 (1) gives a wheel graph with n vertices. Note that, a wheel graph is
3-connected planar. Its dual is isomorphic to itself. Since all the non-hub vertices
are symmetric, wheel graph essentially has two different planar embeddings. See
Figure 4 (1) and (2). In the planar embedding of Figure 4 (1), H(G) is an interior
vertex. On the other hand, in the planar embedding of Figure 4 (2), H(G) is an
exterior vertex.
Theorem 3. Let G be the wheel graph with n vertices. Then for any
st-orientation O for G, either length(O) is (n − 1), or length(O∗ ) is (f − 1).
Proof. We have three different cases to consider.
Case 1: s = H(G) and t = H(G). See Figure 4 (1). According to the property
of st-orientation, the exterior face has two cycles, one is (s, t). The other is the
directed path (s, · · · , x, y, · · · , t). Consider H(G) in O, all its incoming edges are
consecutively around H(G). So do all its outgoing edges. Let (x, H(G)) be the last
incoming edge for H(G) in ccw direction, (y, H(G)) be the first outgoing edges
for H(G) in ccw direction. Then (x, y) is an edge on the path (s, · · · , x, y, · · · , t).
Therefore, the path (s, · · · , x, H(G), y, · · · , t) is a directed path in O and its
length is (n − 1).
Case 2: t = H(G). See Figure 4 (2). The faces of G are indicated by squares.
Consider the face d∗ . Its facial cycle is decomposed into two directed paths. Both
paths start from s. Suppose v is the sink for the face d∗ . Consider the dual st-
orientation O∗ for G∗ , its source is s∗ . Its sink is t∗ . Its longest directed path is
(s∗ , · · · , c∗ , d∗ , e∗ , · · · , t∗ ). It picks up every face of G∗ . Therefore, length(O∗ ) is
(f − 1) = (n − 1).
On Representation of Planar Graphs by Segments 315

Case 3: s = H(G). The proof is similar to Case 2.

5 Conclusion
In this paper, we introduce VFCR for 2-connected plane multigraphs. We present
a linear time algorithm for constructing VFCR for 2-connected plane multi-
graphs. For 3-connected planar graphs, we present a non-trivial bound on the
length of its longest directed path for its st-orientations. This non-trivial bound
yields non-trivial grid size bound for VFCR for 3-connected planar graphs. The
relation between VFCR and VVCR is also presented.

References
1. Di Battista, G., Tamassia, R., Vismara, L.: Output-sensitive Reporting of Disjoint
Paths. Algorithmica 23(4), 302–340 (1999)
2. Fraysseix, H.D., de Mendez, P.O., Pach, J.: Representation of planar graphs by
segments. Intuitive Geometry 63, 109–117 (1991)
3. Fraysseix, H.D., de Mendez, P.O., Pach, J.: A Left-First Search Algorithm for
Planar Graphs. Discrete & Computational Geometry 13, 459–468 (1995)
4. Lempel, A., Even, S., Cederbaum, I.: An algorithm for planarity testing of graphs.
In: Theory of Graphs Proc. of an International Symposium, Rome, July 1966, pp.
215–232 (1966)
5. Felsner, S.: Convex drawings of Planar Graphs and the Order Dimension of 3-
Polytopes. Order 18, 19–37 (2001)
6. Miura, K., Azuma, M., Nishizeki, T.: Canonical decomposition, realizer, Schnyder
Labelling and orderly spanning trees of plane graphs. International Journal of
Foundations of Computer Science 16, 117–141 (2005)
7. Ossona de Mendez, P.: Orientations bipolaires, PhD thesis, Ecole des Hautes
Etudes en Sciences Sociales, Paris (1994)
8. Papamanthou, C., Tollis, I.G.: Applications of parameterized st-orientations in
graph drawings. In: Healy, P., Nikolov, N.S. (eds.) GD 2005. LNCS, vol. 3843, pp.
355–367. Springer, Heidelberg (2006)
9. Rosenstiehl, P., Tarjan, R.E.: Rectilinear planar layouts and bipolar orientations
of planar graphs. Discrete Comput. Geom. 1, 343–353 (1986)
10. Tamassia, R., Tollis, I.G.: An unified approach to visibility representations of planar
graphs. Discrete Comput. Geom. 1, 321–341 (1986)
11. He, X., Zhang, H.: Nearly Optimal Visibility Representations of Plane Graphs.
In: Bugliesi, M., Preneel, B., Sassone, V., Wegener, I. (eds.) ICALP 2006. LNCS,
vol. 4051, pp. 407–418. Springer, Heidelberg (2006)
An Optimal On-Line Algorithm for Preemptive
Scheduling on Two Uniform Machines
in the p Norm

Tianping Shuai1, , Donglei Du2, , and Xiaoyue Jiang3


1
School of Sciences, Beijing University of Posts and Telecommunication
[email protected]
2
Faculty of Business Administration, University of New Brunswick
[email protected]
3
College of Engineering, Louisiana State University
[email protected]

Abstract. One of the basic and fundamental problems in scheduling is


to minimize the machine completion time vector in the p norm (a direct
extension of the l∞ norm: the makespan) on uniform parallel machines.
We concentrate on the on-line and preemptive version of this problem
where jobs arrive one by one over a list and are allowed to be preempted.
We present a best possible deterministic on-line scheduling algorithm
along with a matching lower bound when there are two machines, gen-
eralizing existing results for the identical machines scheduling problem
in the literature. The main difficulty in the design of the algorithm and
the analysis of the resultant competitive ratio as well as the proof of the
lower bound is that the competitive ratio is only known to be the root
of some equation systems, which admits no analytic solution—a distinct
feature from most existing literature on competitive analysis. As a con-
sequence, we develop some new ideas to tackle this difficulty. Specifically
we need to exploit the properties of the equations system that defines
the competitive ratio.

Keywords: On-line algorithm; Scheduling; Preemption; p norm.

1 Introduction

We investigate the problem of scheduling a set of jobs, arriving one by one


over a list, on two uniform parallel machines M1 and M2 with speeds s1 = 1
and s2 = s > 1, respectively. If a job with size pj is assigned to machine Mi ,
then pj /si time units are required to process this job. Machines are available
at time zero. Whenever a job is revealed, it is allocated with one or several
non-overlapping time slots with preemption being allowed, to possibly different

This work was done while the author was visiting the Faculty of Business Adminis-
tration, University of New Brunswick. Supported in part by NSFC grant 10726058.

Supported in part by NSERC grant 283103 and URF, FDF at UNB.

R. Fleischer and J. Xu (Eds.): AAIM 2008, LNCS 5034, pp. 316–327, 2008.

c Springer-Verlag Berlin Heidelberg 2008
An Optimal On-Line Algorithm for Preemptive Scheduling 317

machines. Such an allocation is called a (feasible) schedule. The objective is to


find a schedule
 which minimizes the p norm of the machines’ completion times,
that is, p Lp1 + Lp2 , where L1 and L2 are the completion times of the last job
on M1 and M2 , respectively. We denote this problem as Q2|pmtn, on − line|p .
The off-line version of problem, where the full information (number of jobs and
sizes of jobs) on all the jobs is known in advance, can be denoted as Q2|pmtn|p
using the three-field notation in [12].
The makespan, the most studied objective function in scheduling, is just a
special p norm—that is—the ∞ . Scheduling in the general p norm has also
been widely studied in the literature [1], [2], [3], [4], [5], [6], [7], [8], [10], [11], [13],
[14], [15], and the p norm of the completion time vector is one of the basic and
fundamental objectives investigated in scheduling theory. While the makespan
only characterizes the latest completion time among all machines, the general
p norm is more appropriate when we are interested in the average behavior of
the machine completion times rather than the worst-case scenario. A particular
application of p norm scheduling in disk storage allocation problem is illustrated
in [7].
The main focus of this work is on the competitive analysis of the on-line
scheduling problem introduced in the beginning. We will measure the quality of
an on-line algorithm ON, one for the on-line scheduling problem, by its compet-
itive ratio rON , which is defined to be the superimum of ratio CON /COF F over
all problem instances, where CON and COF F denote respectively the p norm of
machine completion time vector of the on-line schedule constructed by ON and
that of the corresponding (off-line) optimal schedule.
Related Work. Scheduling in the p norm has been investigated from both
on-line (and semi-online) [2], [7], [8], [14], [13], [15] and offline [1], [3], [4], [5], [6],
[10], [11] points of view. But we only review the results related to the on-line case
as it is the main focus of this work. Readers who are interested in the off-line
case are referred to the references listed here and further pointers therein.
The most related paper to the current work is [8], where a best possible on-line
algorithm is devised for P 2|pmtn, on − line|p . The next related result is [14], in
which the non-preemptive problem P 2|on − line|p is investigated. Finally, [16]
(independently [9]) develops best possible on-line algorithms for Q2|pmtn|Cmax ,
the ∞ norm. Moreover, several semi-online models of P 2||p , and Q2||p are
studied (both preemptive and non-preemptive versions) in [7], [13], [15].
Our Results. The main contribution of this work is to generalize the result
of [8] to the uniform machines case. Specifically, we devise a best possible de-
terministic on-line algorithms for Q2|pmtn, on − line|p along with a matching
lower bound. The main difficulty in the design of the algorithm and the analy-
sis of the competitive ratio as well as the proof of the lower bound is that the
competitive ratio is only known to be the root of some equation systems, which
admits no analytic solution. We follow a similar (but more involved) approach
developed in [8] to tackle this difficulty. Specifically we need to exploit the prop-
erties of the equations system that defines the competitive ratio. It is well-known
that machine scheduling problems on two uniform machines are unique as their
318 T. Shuai, D. Du, and X. Jiang

resolutions tend to be complicated and often generate novel ideas that are usually
useful in attacking scheduling problem of more than two machines. Therefore,
the investigation of such problems is of important theoretical significance.
The rest of the paper is organized as follows. After some preliminary results in
Section 2, we present an on-line algorithm algorithm and prove its competition
ratio in Section 3. Then we show a matching lower bound in Section 4.

2 Preliminaries and Notations


We first prepare us with some preliminary results, which are summarized in
the following lemmas. Throughout this paper, for simplicity, increasing always
means nondecreasing, and decreasing always means nonincreasing.
In the problem Q2|pmtn, on − line|p , assume p > 1 and machine M1 has
speed 1 and machine M2 has speed s > 1. Define the following functions and
quantities.
1
ŝ := s p−1 ,
1
t̂ := ,
1 + ŝp
 
(ŝ − 1)p/(p−1) 1
μ1 := 1 +  1/(p−1) ∈ 1, 1 + ŝp ,
ŝp+1 ŝ − t̂p−1
μ − ŝ
t̄(μ) := ,
μ(1 + ŝ) − ŝ
 p−1  p
μ 1−t (1 − t)p
ϕ(μ, t) := 1− + − sp μp−1 , μ = 1
μ−1 ŝ ŝ
φ(μ, t) := (st)p + (1 − t)p − sp (μt̂)p−1 ,
H(μ, t) := ŝϕ(μ, t) − φ(μ, t).
The following properties for t̄, ϕ, φ and H will be useful hereafter.
Lemma 1
1. Function t̄(μ) is increasing for μ > ŝ/(1 + ŝ), implying that t̄(μ) ≤ t̂ for
1 < μ ≤ ŝp /(s − 1).
2. For any fixed μ = 1, function ϕ(μ, t) is decreasing for t ≤ t̄(μ), increasing
for t > t̄(μ), and achieves its minimum value at t̄(μ).
3. For any fixed μ = 1, function φ(μ, t) is decreasing for t ≤ t̂, increasing for
t > t̂, and achieves its minimum value at t = t̂.
4. Function H(μ, t̂) is decreasing for μ > 1.
Proof. (1), (2) and (3) being easy by examining the derivative, we only prove
(4). The following calculation shows that the derivative H  (μ, t̂) ≤ 0 for u > 1,
implying that H(μ, t̂) is decreasing for μ > 1:
 
 ŝ  p  
H (μ, t̂) = (p − 1)μp−2
− (1 + ŝ − s)t̂ − s ŝ − t̂
p p p−1
≤ 0.
(μ − 1)p
An Optimal On-Line Algorithm for Preemptive Scheduling 319

The following lemma is useful in the proof of Lemma 3.


Lemma 2. The following equation has a unique root μ̂ within the interval (1, 1+
1/ŝp ).
H(μ, t̂) = 0.

Proof. The desired result follows if we could show that H(μ, t̂) has opposite
signs on the two boundaries of (1, 1 + 1/ŝp ) because H(μ, t̂) is monotonic by
Lemma 1(4).
First of all, there exists a positive number ε  1, such that the value at the
left boundary of (1, 1 + 1/ŝp ):
 p−1
1+ε  p  
H(1 + ε, t̂) = (1 + ŝp − s)t̂ ŝ − (st̂)p −sp (1 + ε)p−1 ŝ − t̂p−1 > 0.
ε

Second of all, we show that the value H(1 + 1/ŝp , t̂) ≤ 0 at the right boundary
of (1, 1 + 1/ŝp ). Let
H(1 + 1/ŝp , t̂) = ŝt̂W (s),
where
sp t̂p−1
W (s) := (1 + ŝp − s)p + s1/(1−p) + s − (1 + ŝp )p − .

Note that W (s) is decreasing by checking the derivative:

p2
W  (s) = ŝ{(1 + ŝp − s)p−1 − (1 + ŝp )p−1 } + {1 − p(1 + ŝp − s)p−1 }
p−1
p −p p p−1  
+ ŝ (s t̂ − 1) + psp (1 + ŝp )−1 − s−p t̂p−1 ≤ 0.
p−1

So, for s > 1, W (s) ≤ W (1) = 3 − 2p − 21−p ≤ 0 for all p > 1, implying that
H(1 + ŝ−p , t̂) ≤ 0.

Define two intervals T = [0, t̂] and U = [μ1 , μ̂], where μ̂ is the unique root defined
in Lemma 2.

Lemma 3. The following equations system has a unique solution (μ, t) such
that t ∈ T and μ ∈ U . 
ϕ(μ, t) = 0,
φ(μ, t) = 0.

Proof. First, we show that there exists a unique positive solution t(μ) ∈ T for
any given μ ∈ U . Consider the equation H(μ, t) = 0, or equivalently,
 p−1  p
μ 1  
ŝ 1 − (1 − t) − (st)p − sp μp−1 ŝ − t̂p−1 = 0 (1)
μ−1 ŝ

A direct calculation reveals that the derivative Ht (μ, t) ≥ 0 for μ ∈ U and
t ∈ T , implying H(μ, t) is an increasing function of t ∈ T . Consequently, the
desired result follows if we could show that H(μ, t) has opposite signs on the two
320 T. Shuai, D. Du, and X. Jiang

boundaries of (0, t̂). (i) t = 0: Note that H(μ, 0)/μp−1 = (μ − 1)1−p (ŝ − 1)p /s −
sp (ŝ − (1 + ŝp )1−p ) is an decreasing function for μ ≥ 1 and H(μ1 , 0)/μp−1
1 = 0,
implying that H(μ, 0)/μp−1 1 ≤ H(μ1 , 0)/μp−1
1 ≤ 0 for any μ ≥ μ1 . (ii). t = t̂:
H(μ, t̂) ≥ 0 for any μ ≤ μ̂ by Lemma 1(4) and Lemma 2.
Next, we show the important property that t(μ) is an increasing function of
μ ∈ U , which will be needed to prove the existence and uniqueness of solution
μ ∈ U . Implicitly differentiating Equation (1) yields
   p
(p − 1)μp−2 sp ŝ − t̂p−1 + (μ−1)

p 1 − 1−t

  
t (μ) = p−1  
1−t p−1
p μ
μ−1 1 − ŝ −s t
p p−1

The numerator being non-negative is evidential for t ∈ T and μ ∈ U by noting


that 1 > (1 − t)/s. Denote D1 (t) = μ(ŝ − 1 + t) and D2 (t) = ŝp+1 (μ − 1)t. Then
the denominator is given by
p  
D1 (t)p−1 − D2 (t)p−1 .
s(μ − 1)p−1

Note that D(t) := D1 (t)−D2 (t) is a linear function of t for any fixed μ. Moreover,
(i) D(0) = μ(ŝ − 1) > 0. (ii) μ ≤ μ̂ ≤ 1 + 1/ŝp ≤ ŝp /(s − 1) implies that
D(t̂) = (ŝ(μ(1 − s) + ŝp ))/(1 + ŝp ) > 0. Consequently, D(t) > 0 for all t ∈ T ,
implying the denominator is positive. Therefore t (μ) ≥ 0, implying t(μ) is an
increasing function of μ ∈ U .
Finally, we are ready to show that there exists a unique solution u ∈ U . Note
that, for any μ ∈ U , t(μ) being increasing implies that t(μ) ≤ t(μ̂) = t̂ by the
definitions of μ̂ and t̂. Define the following function based on ϕ(μ, t):
 p−1  p
μ 1
ξ(μ) := ŝϕ(μ, t) = ŝ 1 − (1 − t) + (1 − t)p − sp+1/(p−1) μp−1
μ−1 ŝ
t=t(μ)
= (st)p + (1 − t)p − sp (μt̂)p−1 = φ(μ, t)

Lemma 1(3) and t(μ) being increasing implies that (st)p + (1 − t)p is decreasing
for t ∈ T . Consequently ξ(μ) = φ(μ, t(μ)) is decreasing for μ ∈ U . Note that
t(μ1 ) = 0 and t(μ̂) = t̂. Therefore, (i) μ1 ≤ 1 + 1/ŝp implies that ξ(μ1 ) =
1 − (sp μp−1
1 )/((1 + ŝp )p−1 ) > 0. (ii) μ̂ > 1 and t(μ̂) = t̂ imply that
 p  p
s ŝp sp μp−1 sp (1 − μ̂p−1 )
ξ(μ̂) = p
+ p
− p−1 = p−1 < 0.
1 + 1/ŝ 1 + 1/ŝ (1 + 1/ŝp ) (1 + 1/ŝp )

Now we can conclude that there is a unique μ ∈ U since ξ(μ) is non-increasing


for μ ∈ U with opposite signs on the two boundaries.

From now on, denote (μ∗ , t∗ ) to be the unique solution of the system (1)-(2),
and let α = μp−1
∗ . From the proof of Lemma 3, it is clear that μ∗ ≥ μ1 > 1.
The following result is an immediate consequence of Lemmas 1 and 3.
An Optimal On-Line Algorithm for Preemptive Scheduling 321

Lemma 4. Assume t ∈ T .

1. ϕ(μ∗ , t) = 0 if and only if t = t∗ ; ϕ(μ∗ , t) > 0 if and only if t > t∗ ;


ϕ(μ∗ , t) < 0 if and only if t < t∗ ;
2. φ(μ∗ , t) = 0 if and only if t = t∗ ; φ(μ∗ , t) > 0 if and only if t < t∗ ; φ(μ∗ , t) <
0 if and only if t > t∗ .

Proof. (1) We consider two separate cases.


Case 1. If μ∗ < ŝ, then t̄(μ∗ ) < 0. Therefore ϕ(μ∗ , t) is an increasing function
for t ≥ t̄(μ∗ ) by Lemma 1(2). Consequently, the desired result follows as t∗ is
the unique root of ϕ(μ∗ , t) in t ∈ T by Lemma 3.
Case 2. If μ∗ ≥ ŝ, then t̄(μ∗ ) ≥ 0. Note that μ∗ − 1 ≥ ŝ − 1 implies that
 p−1  p
μ∗ 1 1
ϕ(μ∗ , 0) ≤ 1− + − sp μp−1

ŝ − 1 ŝ ŝ
   
1 1 μ∗ p−1
= μp−1
∗ −s +
p
1− < 0.
s ŝ ŝ

Therefore ϕ(μ∗ , t) < 0 for t ∈ [0, t̄(μ∗ )] and it is increasing for t > t̄(μ∗ ) by
Lemma 1(2). Moreover, Lemma 1(1) and μ∗ ≤ μ̂ ≤ 1 + 1/ŝp ≤ ŝp /(s − 1) implies
that t̄(μ∗ ) ≤ t̂ and hence t̄(μ∗ ) ∈ T . Consequently, the desired result follows as
t∗ is the unique root of ϕ(μ∗ , t) in t ∈ T by Lemma 3.
(2) Note that φ(μ∗ , 0) = 1 + sp − sp (μ∗ t̂)p−1 > 0 and φ(μ∗ , t) is decreasing
for t ∈ T by Lemma 1(3). Consequently, the desired result follows as t∗ is the
unique root of ϕ(μ∗ , t) in t ∈ T by Lemma 3.

3 Upper Bound

We devise an on-line algorithm and show its competitive ratio to be p α in this
section. In the next section (Section 4), we shall prove that no√ deterministic
on-line algorithm can achieve a competitive ratio smaller than p α.
For simplicity, we will identify a job with its length whenever there is no
confusion. We introduce some notations first. In any on-line algorithm, after
scheduling some jobs, let Li (i = 1, 2) be the machine load on machine Mi prior
to the new incoming job x. Thus L = L1 + sL2 is the total workload before x,
and the objective value C = p Lp1 + Lp2 . Denote Copt to be the optimal off-line
objective prior to x, then for any job z prior to x,

z p   p
Copt ≥ p
max , ŝt̂L + min L − z, Lt̂
s
Define the following functions and quantities:
   p
1 1 Lp x p
f (x) = (L1 + x) + 1 − L2 + 2 − α + Lp ,
s ŝ ŝ s
322 T. Shuai, D. Du, and X. Jiang
 p
x−y
p
g(x, y) = (L1 + y) + L2 + − α(L + x)p t̂p−1 ,
s
L1 + s(1 − 1/ŝ)L2
x1 = ,
μ∗ − 1
μ∗ L − (1 + ŝp )L1
x2 = ,
1 + ŝp − μ∗
μ∗ ŝL − L2 (1 − 1/ŝp )(1 + ŝp )p−1
x3 = .
(1 + ŝp )p−1 /s − μ∗ ŝ

The following simple facts will be used shortly.

Lemma 5

1. Function f (x) is increasing within the interval x ∈ [0, x1 ], and decreasing


within the interval x ∈ [x1 , +∞]. Therefore f achieves its maximum at x =
x1 ,
2. Function g(x, x) = (L1 + x)p + Lp2 − α(L + x)p t̂p−1 is decreasing within
the interval x ∈ [0, x2 ], and increasing within the interval x ∈ [x2 , +∞].
Therefore g(x, x) achieves its minimum at x = x2 ,
3. Function g(x, L2 /ŝ−L1 ) = Lp2 /ŝp +(L2 +(x+L1 −L2 /ŝ)/s)p −α(L+x)p t̂p−1
is decreasing within the interval x ∈ [0, x3 ], and increasing within the interval
x ∈ [x3 , +∞]. Therefore g(x, L2 /ŝ − L1 ) achieves its minimum at x = x3 ,
4. Function g(ŝp L, L2 /ŝ − L1 ) = f (ŝp L).
5. x2 ≥ L2 /ŝ − L1 .

Proof. (1), (2) and (3) being easy to prove by checking the derivative and (4)
being easy to verify. We only prove (5). Note that
   
L2 sμ∗ 1
x2 − − L1 = − L2
ŝ 1 + ŝp − μ∗ ŝ
 
s 1
≥ − L2 = 0,
1 + ŝp − 1 ŝ

where the first inequality follows because the first term therein sμ/(1 + ŝp − μ)
is an increasing function of μ and μ∗ ≥ 1.

The main algorithm is presented below.

Algorithm H: When a new job x arrives, do the following:


Step 1. Solve the following mathematical program with a single variable y:

max y
p−1     p (L2 +(x−y)/s)p
μ∗
μ∗ −1
L1 +y
s + 1 − 1ŝ L2 + x−y
s + ŝ ≤ α(x + L)p (2)
0≤y≤x (3)
0≤y≤ 1
ŝ L2 − L1 (4)
An Optimal On-Line Algorithm for Preemptive Scheduling 323

Step 2. Let y ∗ be an optimal solution. Assign y ∗ and x − y ∗ to M1 and M2


respectively.
Evidently, algorithm H maintains the following invariant at any state:
 p−1    p
μ∗ L1 1 Lp
+ 1− L2 + 2 ≤ αLp .
μ∗ − 1 s ŝ ŝ
Moreover, note that the mathematical program with the single variable y in
Step 1 of the algorithm H is a convex program, which can be solved efficiently,
implying the running time of Algorithm H is solvable in polynomial time. How-
ever, we will not address more on time complexity, since the primary focus in
competitive analysis is the identification of competitive ratio.

Theorem 1. The competitive ratio of Algorithm H is no more than p α.
Proof. First, we show that the feasible region defined by (2)-(4) is non-empty,
implying the correctness of the algorithm. When there is no job initially, y = 0
is obviously a feasible solution. Inductively, assume 0 were a feasible solution
at some state of the algorithm after scheduling a certain number of jobs. Let
the current machine load be Li (i = 1, 2) on Mi . Consider the next incoming
job x ≥ 0. Then 0 obviously satisfies constraint (3) and also satisfies (2) by
the inductive hypothesis. Moreover, y = 0 satisfies constraint (4) because the
machine load on M2 is L2 + x/s and the load on M1 did not change. Therefore
(L2 + x/s)/ŝ − L1 ≥ L2 /ŝ − L1 ≥ 0, where the last inequality follows from the
inductive hypothesis. √
Next, we show that our algorithm is p α−competitive. This will be done by in-
duction on the number√ of jobs. It is trivial when there is no job scheduled. Suppose
the algorithm H is p α−competitive after scheduling
√ some jobs. Let x be the next
job and we show that the algorithm H is still p α−competitive after scheduling x.
The rest of the argument will be based on the following idea. We are done if
we can show either (i) f (x) ≤ 0 when x ≥ ŝp L, as p (x/s)p + Lp is obviously
a lower bound of the optimal off-line value in this case; or (ii), g(x, y ∗ ) ≤ 0 as
(L + x)p t̂p−1 is always a lower bound for the optimal off-line value. We consider
two separate cases.
Case 1. Equation (2) is tight, i.e., satisfied as equality, in the optimal solution
y ∗ . Obviously we can assume that L + x > 0 to exclude the trivial case. Let
λ = (L1 + y ∗ )/(L + x), then λ ≤ t̂ by the constraints (3)-(4). Moreover, the
constraint (2) becomes
 p−1  p 
1 μ∗ 1 1
1 − (1 − λ) + (1 − λ)p = α = μp−1 ∗ ,
sp μ∗ − 1 ŝ ŝ
which is equivalent to ϕ(μ∗ , λ) = 0. By the definition of (μ∗ , t∗ ), and the
proof of Lemma 4, we know λ = t∗ is the only root of ϕ(μ∗ , t) = 0. Therefore
g(x, y∗)
sp = sp λp + (1 − λ)p − αsp t̂p−1 = sp tp∗ + (1 − t∗ )p − μp−1
∗ sp t̂p−1
(L + x)p
= φ(μ∗ , t∗ ) = 0
324 T. Shuai, D. Du, and X. Jiang

Case 2. Equation (2) is not tight in y ∗ . Then we have either y ∗ = x ≤ L2 /ŝ−L1


or y ∗ = L2 /ŝ − L1 ≤ x due to the optimality of y ∗ , which leads to two
subcases.
Case 2.1. y ∗ = x ≤ L2 /ŝ − L1 .
Consider g(x, y ∗ ) = g(x, x) = (L1 + x)p + Lp2 − α(L + x)p /(1 + ŝp )p−1 . By
Lemma 5(2), g(x, x) achieves its minimum at x = x2 , and it is decreasing
within the interval x ∈ [0, x2 ]. Moreover, x2 ≥ L2 /ŝ−L1 by Lemma 5(5).
Therefore g(x, x) can only achieve its maximum value at the left bound-
ary 0. Hence g(x, x) ≤ max0≤x≤L2 /ŝ−L1 g(x, x) = g(0, 0) ≤ 0, where the
last inequality follows from the induction hypothesis.
Case 2.2. y ∗ = L2 /ŝ − L1 ≤ x.
1. If x ≥ ŝp L, consider f (x) = (L1 /s + (1 − 1/ŝ)L2 + x/s)p + Lp2 /ŝ −
α((x/s)p + Lp ). By Lemma 5(1), f (x) achieves its maximum at x =
x1 . So
f (x) ≤ max f (x) = f (x1 )
x≥0
 p    p
μ∗ 1 1 Lp
= L1 + 1 − L2 + 2
μ∗ − 1 s ŝ ŝ
  p 
p−1
μ∗ L1 + s(1 − ŝ )L2
1
− + αL p
(μ∗ − 1)p s
 p−1    p
μ∗ 1 1 Lp
= L1 + 1 − L2 + 2 − αLp ≤ 0
μ∗ − 1 s ŝ ŝ
where the last inequality follows from the induction hypothesis.
2. If x ≤ ŝp L, consider
 
∗ L2
g(x, y ) = g x, − L1

 p
1 x + L1 − 1ŝ L2
= p Lp2 + L2 + − α(L + x)p t̂p−1
ŝ s
By Lemma 5(3), g(x, L2 /ŝ−L1 ) achieves its minimum at x = x3 , and
it is decreasing within the interval x ∈ [0, x3 ]. Therefore g(x, L2 /ŝ −
L1 ) can only achieve its maximum value at the boundaries.
   
L2 L2
g x, − L1 ≤ max g x, − L1
ŝ L2 /ŝ−L1 ≤x≤ŝp L ŝ
    
L2 L2 L2
= max g − L1 , − L1 , g ŝ L,
p
− L1
ŝ ŝ ŝ
Note that the first term in the last quantity g(L2 /ŝ − L1 , L2 /ŝ −
L1 ) ≤ g(0, 0) ≤ 0 by Lemma 5(2) and the second term g(ŝp L, L2 /ŝ −
L1 ) = f (ŝp L) ≤ maxx≥0 f (x) = f (x1 ) ≤ 0 by Lemma 5(4) and
Lemma 5(1). Therefore g(x, y ∗ ) ≤ 0.
This completes the proof of the theorem.
An Optimal On-Line Algorithm for Preemptive Scheduling 325

4 Lower Bound
We show that the upper bound proved in the previous section is actually best
possible.
Theorem
√ 2. No deterministic on-line algorithm has a competitive ratio smaller
than p α.
Proof. Consider the sequence of jobs with size 1, ŝp , w, where w will be specified
shortly. We only need to consider those schedules with no simultaneous idle time.
Suppose there exists an on-line algorithm A with competitive ratio less than

p
α. Without loss of generality, algorithm A schedules the first job on M2 . Let
0 ≤ x ≤ 1 be the amount assigned to M1 after the second job. The optimal
off-line objective value now is 1 + ŝp . Note that xp + (ŝ + (1 − x)/s)p < α(1 + ŝp )
implies
 p
(1 + ŝp )p 1−x
p
φ(μ∗ , xt̂) = x + ŝ + − α(1 + ŝp ) < 0,
sp s

which again implies that xt̂ > t∗ . We shall now prove a contradictory claim that
xt̂ ≤ t∗ and hence completes the proof.
Let
1 + ŝp − ŝ − (1 − x)/s
w= .
μ∗ − 1
First, we show that w ≥ ŝp (1 + ŝp ). Let t = s(ŝp (μ∗ − 1) − 1) + 1. If t∗ ≥ t ,
then xt̂ > t∗ implies that
 
1 + ŝp − ŝ − 1−x (1 + ŝp ) 1 − 1−t∗

w= s
≥ s
μ∗ − 1 μ∗ − 1
(1 + ŝ )(1 − s + (s(ŝ (μ∗ − 1) − 1) + 1)/s
p 1 p
≥ = ŝp (1 + ŝp ).
μ∗ − 1
So, we only need to prove t∗ ≥ t . Clearly, this is true when t ≤ 0. Therefore,
we assume that t ≥ 0. Note that
 p−1 p
μ∗ s p (s(1 − ŝp (μ∗ − 1)))
ϕ(μ∗ , t ) = 1 + (ŝp (μ∗ − 1) − 1) + − αsp
μ∗ − 1 ŝ ŝ
  p−1
1 1 p ŝp−2 − 1
p p−1
= s μ∗ + (ŝ (μ∗ − 1) − 1) s−
s ŝ s(μ∗ − 1)
p 
(1 − ŝ (μ∗ − 1))
p
+ −1
ŝμp−1

  
1 1 p (1 − ŝp (μ∗ − 1))
≤ sp μp−1
∗ + (ŝ (μ∗ − 1) − 1) + ×
s ŝ ŝ
 p−1  p−1  
ŝp−2 − 1 (1 − ŝp (μ∗ − 1))
max s− , −1
s(μ∗ − 1) μ∗
326 T. Shuai, D. Du, and X. Jiang

  p−1  p−1  
1 ŝp−2 − 1 (1 − ŝp (μ∗ − 1))
= sp μp−1
∗ max s− , − 1 ≤ 0.
s s(μ∗ − 1) μ∗

The last inequality is true since t ≥ 0 and μ∗ ≤ 1 + 1/ŝp . By lemma 4, we


have t∗ ≥ t .
 Next, w ≥ ŝp (1 + ŝp ) implies that the optimal off-line value is
p
(w/s)p + (1 + ŝp )p , while the best objective value that the on-line algorithm
A can get, by put ŝ + (1 − x)/s − x of w on M1 and the rest on M2 , is
  p
1 + w − ŝ − (1 − x)/s
p
(ŝ + (1 − x)/s)p + ŝ + .
s

Then
  p
1 + w − ŝ − (1 − x)/s 
p
(ŝ + (1 − x)/s)p + ŝ + < p α((w/s)p + (1 + ŝp )p ),
s

or equivalently
 p−1 p
μ∗ ŝp + 1 − ŝ − (1 − x)/s
(ŝ + (1 − x)/s) + p
−μp−1
∗ (1 + ŝp )p < 0.
μ∗ − 1 s
So

ϕ(μ∗ , xt̂)
 
 p p−1
p−1 p+1
+ŝ−1−ŝp +x p
= (st̂)p 1ŝ ŝ+ 1−x
s −μ ∗ (1+ ŝ p p
) + μ∗
μ∗ −1

ŝp
 
 p p−1
p−1 p
ŝ +1−ŝ−(1−x)/s
p
< (st̂)p ŝ + 1−x
s −μ ∗ (1+ ŝ p p
) + μ∗
μ∗ −1 s < 0.

Hence ϕ(μ∗ , xt̂) < 0. This implies that xt̂ < t∗ by lemma 4, which is an
obvious contradiction to the previous claim that xt̂ > t∗ .

References
1. Alon, N., Azar, Y., Woeginger, G.J., Yadid, T.: Approximation schemes for schedul-
ing. In: SODA, pp. 493–500 (1997)
2. Avidor, A., Azar, Y., Sgall, J.: Ancient and new algorithms for load balancing in
the p norm. Algorithmica 29, 422–441 (2001)
3. Azar, Y., Epstein, A.: Convex programming for scheduling unrelated parallel ma-
chines. In: STOC, pp. 331–337 (2005)
4. Azar, Y., Epstein, A., Epstein, L.: Load balancing of temporary tasks in the p
norm. Theoretical Computer Science 361(2-3), 314–328 (2006)
5. Azar, Y., Epstein, L., Richter, Y., Woeginger, G.J.: All-norm approximation algo-
rithms. In: Penttonen, M., Schmidt, E.M. (eds.) SWAT 2002. LNCS, vol. 2368, pp.
288–297. Springer, Heidelberg (2002)
An Optimal On-Line Algorithm for Preemptive Scheduling 327

6. Azar, Y., Taub, S.: All-Norm Approximation for Scheduling on Identical Machines.
In: Hagerup, T., Katajainen, J. (eds.) SWAT 2004. LNCS, vol. 3111, pp. 298–310.
Springer, Heidelberg (2004)
7. Chandra, A.K., Wong, C.K.: Worst-case analysis of a placement algorithm related
to storage allocation. SIAM Journal on Computing 1, 249–263 (1975)
8. Du, D.-L., Jiang, X., Zhang, G.: Optimal preemptive online scheduling to minimize
lp norm on two processors. Journal of Manufacturing and Management Optimiza-
tion 1(3), 345–351 (2005)
9. Epstein, L., Noga, J., Seiden, S., Sgall, J., Woeginger, G.J.: Randomized online
scheduling on two uniform machines. Journal of Scheduling 4(2), 71–92 (2001)
10. Epstein, L., Tassa, T.: Optimal Preemptive Scheduling for General Target Func-
tions. Journal of Computer and System Sciences 72(1), 132–162 (2006)
11. Kumar, V.S.A., Marathe, M.V., Parthasarathy, S., Srinivasan, A.: Approximation
Algorithms for Scheduling on Multiple Machines. In: FOCS, pp. 254–263 (2005)
12. Lawler, E.L., Lenstra, J.K., Rinnooy Kan, A.H.G., Shmoys, D.B.: Sequencing and
scheduling: Algorithms and complexity. In: Graves, S.C., Rinnooy Kan, A.H.G.,
Zipkin, P.H. (eds.) Logistics of Production and Inventory, pp. 445–522. North-
Holland, Amsterdam (1993)
13. Lin, L.: Semi-online scheduling algorithm under the p norm on two identical ma-
chines. Journal of Zhejiang University (Science Edition) 34(2), 148–151 (2007) (in
chinese)
14. Lin, L., Tan, Z.Y., He, Y.: Deterministic and randomized scheduling problems
under the p norm on two identical machines. Journal of Zhejiang University Sci-
ence 6(1), 20–26 (2005)
15. Tan, Z., He, Y., Epstein, L.: Optimal On-line Algorithms for the Uniform Machine
Scheduling Problem with Ordinal Data. Information and Computation 196(1), 57–
70 (2005)
16. Wen, J., Du, D.-L.: Preemptive on-line scheduling for two uniform processors.
Operations Research Letters 23, 113–116 (1998)
An Optimal Strategy for Online Non-uniform
Length Order Scheduling

Feifeng Zheng1,∗ , E. Zhang2 , Yinfeng Xu1,3 , and Xiaoping Wu1


1
School of Management, Xi’an JiaoTong University,
Xi’an, Shaanxi, 710049, China
2
School of Information Management and Engineering,
Shanghai University of Finance and Economics,
Shanghai, 200433, China
3
The State Key Lab for Manufacturing Systems Engineering,
Xi’an, Shaanxi, 710049, China
[email protected]

Abstract. This paper will study an online non-uniform length order


scheduling problem. For the case where online strategies have the knowl-
edge of Δ beforehand, which is the ratio between the longest and shortest

length of order, Ting [3] proved an upper bound of ( log Δ
+ O(Δ5/6 )) and
Zheng et al. [2] proved a matching lower bound. This work will consider
the scenario where online strategies do not have the knowledge of Δ
at the beginning. Our main work is a ( log6Δ
Δ
+ O(Δ5/6 ))-competitive op-
timal strategy, extending the result of Ting [3] to a more general scenery.

Keywords: Scheduling, Online Strategy, Competitive Ratio.

1 Introduction

Since there are many dynamic and unpredictable factors in modern manufactur-
ing business, including production order scheduling and processing operations,
many authors adopt online theory to describe and investigate the scenario, and
online scheduling has caught much interest among extensive scheduling litera-
ture in recent decades. In online scheduling, there is a manufacturer who may
accept or decline orders that arrive one by one over time. Each order will stay
in the system to be satisfied after arrival until it expires, i.e., its deadline cannot
be met at the time even started at once. The manufacturer will gain a profit
from each completed order. He may also abort an order on running to start a
new one in favor of larger profit, and the aborted order has to be started again
from the beginning to be satisfied. That is, we consider the preemption-restart
online model to maximize the total profit of completed orders.

Corresponding author. Tel.: +86-29-8266-5034; fax: +86-29-8266-5543. This work
was supported by NSF of China under Grants 70525004, 70702030, 70602031,
70121001 and 60736027, and Doctoral Fund of Ministry of Education of China
20070698053.

R. Fleischer and J. Xu (Eds.): AAIM 2008, LNCS 5034, pp. 328–336, 2008.

c Springer-Verlag Berlin Heidelberg 2008
An Optimal Strategy for Online Non-uniform Length Order Scheduling 329

In most literature, it is usually assumed that the shortest and longest order
is of one unit and Δ units of length respectively. Most literature studied the
case where the knowledge of Δ is known to online strategies at the first begin-
ning. Fung et al. [1] studied an online
√ broadcast problem. Translated into our
terminology, they proved a Δ + 2 Δ + 2-competitive strategy ACE (Another
Completes Earlier). Zheng et al. [2] present a lower bound of Ω(Δ/ ln Δ). Ting
[3] proved a matching upper bound of O(Δ/ log Δ), and left it open whether
there exist O(Δ/ log Δ)-competitive online strategies without the knowledge of
Δ. In the above studies, online strategies make use of Δ. Kim et al. [4] presented
a 5-competitive greedy strategy GD for the case of unit length of order, i.e.,
Δ = 1. GD makes an abortion if a newly arrival order has weight α times that
of the order being processed, otherwise GD continues the current service. Zheng
et al. [5] proved that GD is 4Δ + 1-competitive with α = 2 for the case where
Δ ≥ 1. GD is treated as an online strategy that acts without the knowledge of
Δ and it performs poorly for the case where Δ > 1. For the other case where Δ
is unknown beforehand, it is harder for online strategies to act efficiently, and to
the best of our knowledge there is little result considering to maximize profits.
We believe that it is a reasonable case in real business since the manufacturer
usually can not foresee the exact information of future orders, including order
length. So, the work will focus on the performance of online strategies in the
latter case and give a positive answer to the problem proposed in Ting [3].
We describe our problem formally as follows. There is one manufacturer who
processes orders arriving over time. Each order J has four attributes, namely,
a(J): the arrival time, p(J): the processing time or the length, w(J): the profit
or weight to be obtained only if J is finished and d(J): the deadline by which the
order has to be completed to be satisfied. p(J), w(J) and d(J) become known
on the arrival of J, i.e., at time a(J). 1 ≤ p(J) ≤ Δ where Δ is assumed w.l.o.g.
to be a natural number. The goal is to maximize the total profit of completed
orders within a time period.

1.1 Related Work


One related direction is the scenario where p(J) is unknown to online strate-
gies until order J has been completed. The scenery is called non-clairvoyant
scheduling and was first investigated by Motwani et al [7]. They aimed to min-
imize the total flow time, presenting a lower bound of Ω(n1/3 ) for determinis-
tic non-clairvoyant strategies and of Ω(log n) for randomized ones where n is
the number of orders, respectively. Kalyanasundaram and Pruhs [8] proposed
a O(log n log log n)-competitive randomized strategy RMLF against a adaptive
adversary. Becchetti and Leonardi [9] further showed that the RMLF strategy
is in fact O(log n)-competitive, matching the lower bound.
Another quite related line is the scenario where the length of order is selected
from a finite set of real numbers but not an arbitrary number within [1, Δ].
Lipton and Tomkins [10] studied the scenario to maximize resource utilization.
One of their results is an upper bound of 2 for non-preemption strategies in the
case where p(J) is either 1 or Δ and d(J) = a(J)+p(J). Goldwasser [11] extended
330 F. Zheng et al.

Lipton and Tomkins’s work and investigated the case where orders have slack
time equal to k ≥ 0 times of order length, i.e., d(J) − a(J) = (k + 1)p(J). They
proved a matching upper and lower bound of 2 + Δ−1 Δ when Δ 1
≤ k < 1, and
Δ
a matching bound of 1 + Δ when 1 ≤ k < Δ (please refer to [11] for details).

1.2 Our Results

In this work, we will study the preemption-restart online model to maximize the
total profit of completed orders. An online deterministic strategy that does not
6Δ 5/6
make use of Δ is proposed and proved to be ( log Δ + O(Δ ))-competitive when

20
Δ > 20, and ( √20−1 Δ + 6.8)-competitive when 1 < Δ ≤ 20 respectively. Since
the lower bound of Ω(Δ/ ln Δ) in [2] applies to the case without the knowledge
of Δ, the online strategy is optimal when Δ > 20.
The rest of the paper is organized as follows. Section 2 gives the definition
of competitive ratio, and presents the online deterministic strategy. We propose
several fundamental properties for the strategy in Section 3 and prove its optimal
competitiveness in Section 4. Section 5 concludes the work.

2 Definitions and Online Strategy Description

2.1 Competitive Ratio Definition

To gauge the performance of an on-line strategy A, the competitive ratio analysis


(refer to Borodin and El-yaniv, 1998 [6]) is often used. Denote by ΓA (I) and
Γ ∗ (I) the schedules produced by A and by an optimal offline strategy OPT on
an order input set I respectively, and by |ΓA (I)| and |Γ ∗ (I)| the total profit of
completed orders in ΓA (I) and Γ ∗ (I) respectively. The competitive ratio of A is
|Γ ∗ (I)|
then defined as rA = supI |Γ A (I)|
.

2.2 An Online Strategy

For the model without preemption penalties, Ting [3] proposed the BALANCE
strategy applying the knowledge of Δ. In this section, we will put forward the
Dynamic Preemption Criteria (abbr. DPC) strategy that does not make use
of the knowledge of Δ. Similar to BALANCE, DPC makes two kinds of pre-
emptions: the good-profit preemption that would increase the supposed profit of
processing, and the short-length preemption that would reduce the completion
time but not increase the supposed profit of processing.
Before describing DPC strategy, we give some preliminary definitions. Given
an arbitrary order input list Γ , let σ = (J0 , . . . , Jm ) be a preempting chain
produced by DPC such that Ji is preempted by Ji+1 for 0 ≤ i < m and Jm is
completed by DPC. J0 preempts none, that is, σ cannot be backward extended.
If m = 0, then σ consists of a single order to be completed by DPC. If Ji
preempts Ji−1 by good-profit preemption, Ji is called a gp order, otherwise if
An Optimal Strategy for Online Non-uniform Length Order Scheduling 331

Ji preempts Ji−1 by short-length preemption, it is a sp order. J0 is a gp order


since it preempts none. Suppose that Ji is a gp order, and Jj is a sp order for
j = i + 1, . . . , k, we call Ji the nearest preceding gp order of Jj for j = i, . . . , k.
Note that Ji itself is the nearest preceding gp order of Ji . Let δt be the maximum
(ratio of) length of order among those that have arrived by time t, at which DPC
gets to know δt . Let λt = 3δt / log δt . Denote by s(Ji ) the time at which DPC
starts Ji . DPC is formally described in below.
Strategy DPC. The strategy is triggered either when it completes an order or
when there comes a new one. After completing an order, DPC will start another
one with the largest profit among those having arrived but not been satisfied
yet. Otherwise it keeps idle if there is no such an order. Suppose that during
DPC is processing order J whose nearest preceding gp order is J  , there comes
a new order R at time t ∈ (s(J), s(J) + p(J)). DPC will abort J to start R
immediately if 
one of the following two conditions is satisfied.
C1. w(R) ≥ max{20, δs(J  ) }w(J  ).
C2. The supposed completion time  ofR, tc = a(R)
 + p(R), is strictly ear-

2d(s(J ),tc )
w(J  ), δs(J  ) > 20;
lier than s(J) + p(J), and w(R) ≥ (δt )1/3 where

w(J ), otherwise.


d(s(J ), tc ) =  tcλ−s(J ) .
s(J )
Note that w(R) is compared with w(J  ) but not w(J) in both C1 and C2
conditions. If R preempts J by C1 condition, then R is a gp order, otherwise
if R preempts J by C2 condition, then R is a sp order and a(R) + p(R) <
s(J) + p(J) ≤ s(J  ) + p(J  ).

3 Basic Properties
By construction of DPC, all the orders in σ = (J0 , . . . , Jm ) except J0 are started
by DPC on their arrival. So, s(Ji ) = a(Ji ) holds for 0 < i ≤ m. For J0 , it may
or may not be started by DPC on its arrival.
Property 1. In an arbitrary preempting chain σ = (J0 , . . . , Jm ) produced by
DPC, p(Ji ) ≤ δs(Ji ) ≤ δs(Ji+1 ) for 0 ≤ i ≤ m − 1.
Proof. By the definition of δt , it is a non-decreasing function in time t. First,
δs(Ji ) ≤ δs(Ji+1 ) due to s(Ji ) < s(Ji+1 ). Since Ji shall arrive on or before s(Ji ),
p(Ji ) is a candidate for δs(Ji ) , implying that p(Ji ) ≤ δs(Ji ) . 
Assume that there are n + 1 (n ≥ 0) gp orders in σ = (J0 , . . . , Jm ). We will
divide σ into n + 1 segments σ = (τ0 , . . . , τn ) such that in each segment τi =
(Ri,0 , Ri,1 , . . . , Ri,ki ) (0 ≤ i ≤ n), the first order Ri,0 is a gp order and the other
ki orders are sp orders. If ki = 0, it means that there is no sp orders in τi . For
0 ≤ i < n, the last order in τi will be preempted by Ri+1,0 by C1 condition. For
τn , Rn,kn = Jm .
Property 2. In an arbitrary preempting chain σ = (τ0 , . . . , τn ) produced by DPC,
we have that s(Ri+1,0 ) − s(Ri,0 ) < p(Ri,0 ) for 0 ≤ i < n.
332 F. Zheng et al.

Proof. By the definition of segment τi , Ri,j (1 ≤ j ≤ ki ) is a sp order. So,


s(Ri,ki ) + p(Ri,ki ) < s(Ri,0 ) + p(Ri,0 ). On the other hand, s(Ri+1,0 ) < s(Ri,ki ) +
p(Ri,ki ) since Ri,ki is preempted by Ri+1,0 at time s(Ri+1,0 ). So, s(Ri+1,0 ) −
s(Ri,0 ) < p(Ri,0 ). 
Let |σ| be the total profit obtained by DPC in σ. Let |σ ∗ | and |τi∗ | be the total
profit of orders that are started by OPT during DPC is serving σ and τi respec-
tively. Then, |σ ∗ | = i=0 |τi∗ |. We will first bound |τi∗ | with related to w(Ri,0 ).
n

For notational convenience, denote by ai , wi and pi the arrival time, weight and
processing length of order Ri,0 respectively, and by si the time DPC starts Ri,0 .
For 1 ≤ j ≤ ki , denote by ai,j , wi,j , pi,j and si,j those of Ri,j respectively in the
rest of Section 2. For segment τi (0 ≤ i < n), we have the following lemma.

Lemma 1. For 0 ≤ i < n, if δsi ≤ 20, then



|τi∗ | < (δsi + 20)wi ,

otherwise if δsi > 20, then


6δsi 
|τi∗ | ≤ ( + δsi )wi .
log δsi
Proof. Case 1. δsi ≤ 20. First, τi starts and ends at time si and si+1 respectively,
and si+1 − si < pi by Property 2. Moreover, pi ≤ δsi by Property 1. OPT starts
at most si+1 − si  ≤ pi  ≤ δsi sp√orders with weight less √ than wi followed by
one gp order with weight less than 20wi . So, |τi∗ | < (δsi + 20)wi in this case.
Case 2. δsi > 20. Since the values of δsi and λsi are fixed during DPC is
serving τi , by the same reasoning as in the proof of Lemma 3 in [3], we have that
 
λsi · 2d(si ,si+1 )+1 
|τi∗ | ≤ + δ si wi
(δsi )1/3
p δs
 λsi  λsi
Together with Properties 1 and 2, we have 2d(si ,si+1 ) ≤ 2 i ≤ 2 i ≤
(δsi )1/3 for 0 ≤ i < n. Thus,
6δsi 
|τi∗ | ≤ ( + δsi )wi .
log δsi
The lemma is proved. 
For segment τn , the last order is Rn,kn = Jm to be completed by DPC. OPT
will start its last order in τn strictly earlier than s(Jm ) + p(Jm ) = sn,kn + pn,kn .
|τn | can be upper bounded in below by the same reasoning as in the proof of
Lemma 3 in [3].
 
λsn · 2d(sn ,sn,kn +pn,kn )+1 
|τn∗ | ≤ + δ sn wn .
(δsn )1/3
The following lemma is fundamental in competitive analysis later on.
An Optimal Strategy for Online Non-uniform Length Order Scheduling 333

6 x
Lemma 2. Given an arbitrary i ≥ 0, f (x, i) = (1 + log √1 √1
x )(1 + x + ( x)2 + . . . +
√ √
6 x √ x
x ) x−1 (1 − ( x )
√1 ) = (1 + log √1 i+1 ) is an increase function of x when x > 20.
( x)i
√ √
6 x √ x
Proof. First, f (x, +∞) = (1 + log x ) x−1 increases in x since its first order
derivative to x is positive when x > 20. Moreover, 1 − ( √1x )i+1 increases in x for
i ≥ 0. Hence, f (x, i) increases in x. The lemma follows. 

4 Competitive Analysis

Theorem 1. In online non-uniform length order scheduling, DPC is ( log Δ +

20
O(Δ5/6 ))-competitive when 20 < Δ and ( √20−1 Δ + 6.8)-competitive when 1 <
Δ ≤ 20, respectively.

Proof. Let Γ be the schedule produced by DPC for a given order input list.
Assume w.l.o.g. that DPC completes η (≥ 1) orders in Γ . We can divide Γ
into η preempting chains so that in each preempting chain only the last order
is completed by DPC. Since the total profit of both OPT and DPC in Γ is the
simple summation of their respective total profit in each preempting chain, to
upper bound the ratio between the profit of OPT and that of DPC in Γ , it
suffices to bound the ratio in an arbitrary preempting chain σ = (τ0 , . . . , τn ),
where τi (0 ≤ i ≤ n) are segments defined before. For DPC, |σ| = wm by the
definition of σ. Assume that δsk ≤ 20 and δt > 20 for some t ∈ (sk , sk+1 ], where
0 ≤ k < n. We will discuss two cases
 where 0 ≤ k ≤ n − 1 and where k = n.
Case 1. 0 ≤ k ≤ n − 1. Let ri = max{20, δsi }. Since Ri,0 preempts Ri−1,ki−1
n−1
by C1 condition, wi ≤ wi+1 /ri ≤ . . . ≤ wn / j=i rj .

n−1
|σ ∗ | − |τn∗ | = |τi∗ |
i=0
k
√ n−1
6δsi 
≤ (δsk + 20)wi + ( + δsi )wi
i=0
log δsi
i=k+1

k
(δsk + 20)wn
n−1
6δsi  wn
≤ √ + ( + δsi ) n−1
i=0
( 20)n−i log δsi j=i rj
i=k+1

(δsk + 20)wn
n−1
6δsi  wn
< √ √ + ( + δsi ) n−1
( 20 − 1)( 20) n−k−1
i=k+1
log δsi j=i rj

where√the first inequality holds due to


√ Lemma 1, and the second inequality holds
since 20 ≤ ri and then wi ≤ wn /( 20)n−i for 0 ≤ i ≤ k. For the first

summa-
(δsk + 20)wn
tion item on the righthand side of the above third inequality, √ √
( 20−1)( 20)n−k−1


(20+ 20)wn
√ √
( 20−1)( 20)n−k−1
= O(1)wn for 0 ≤ k ≤ n−1. In below we will bound the second
334 F. Zheng et al.

summation item. Note that ri = δsi for k + 1 ≤ i < n. Combining δsi ≤ δsi+1
with Lemma 2,
n−1
6δsi  wn
( + δsi ) n−1
log δsi j=i rj
i=k+1

6 δsk+1 wn
n−1
6δsi  wn
≤( + 1) n−1 + ( + δsi ) n−1
log δsk+1 j=k+2 rj
log δsi j=i rj
i=k+2

6 δsk+2 1 wn
n−1
6δsi  wn
≤( + 1)(1 +  ) n−1 + ( + δsi ) n−1
log δsk+2 δsk+2 j=k+3 rj
log δsi j=i rj
i=k+3
≤ ...

6 δsn−1 1 1
≤( + 1) 1 +  + ...+  wn
log δsn−1 δsn−1 ( δsn−1 )n−k−2
√ √  
6 Δ Δ 1
≤( + 1) √ 1− √ wn
log Δ Δ−1 ( Δ)n−k−1
where the last inequality holds due to δsn−1 ≤ δsn ≤ Δ and Lemma 2. The above
√ √
Δ + 1) Δ−1 wn if k < n − 1, and otherwise it is equal
6 Δ √ Δ
inequality is less than ( log
to 0 if k = n − 1. Thus,
√ √
∗ ∗ 6 Δ Δ
|σ | − |τn | ≤ ( + 1) √ wn + O(1)wn .
log Δ Δ−1
  
λ ·2d(sn ,sn,kn +pn,kn )+1
We already upper bound |τn∗ | by sn (δsn ) 1/3 + δsn wn . Thus, the
ratio between what OPT and DPC gains in σ can be bounded in two subcases
according to whether τn consists of a single order, i.e., kn = 0.
Case 1.1. kn = 0 and then DPC completes Rn,0 , implying that |σ| = wn .
 
∗ λsn · 2d(sn ,sn +pn )+1 
|τn | ≤ + δsn wn
(δsn )1/3
6δsn 
≤( + δsn )wn
log δsn
6Δ √
≤( + Δ)wn .
log Δ
OPT may still satisfy Rn,0 after DPC does if the order has sufficiently large
deadline, and then OPT gains at most |σ ∗ | + wn in σ. Hence, (|σ ∗ | − |τn∗ |)/|σ| =
√ √
O( log Δ ), and then (|σ ∗ | + wn )/|σ| ≤ log
Δ 6Δ
Δ + O( Δ) in this case.
d(sn ,sn,k +pn,k )
Case 1.2. kn > 0. In this case, |σ| = wn,kn ≥ 2 n
(δsn )1/3
n
wn , which is

larger than (δs )1/3 > Δ1/3 due to d(sn , sn,kn + pn,kn ) > 0. So, (|σ | − |τn |)/|σ| =
wn wn
n
5/6
Δ
O( log Δ ). And
 
λsn · 2d(sn ,sn,kn +pn,kn )+1 
|τn∗ | ≤ + δsn wn .
(δsn )1/3
An Optimal Strategy for Online Non-uniform Length Order Scheduling 335

Similarly, OPT may satisfy Rn,0 with  profit wn,kn 6Δ


after DPC does. With
δsn ≤ Δ, we have that |τn∗ |/|σ| ≤ 2λsn + δsn Δ1/3 ≤ log Δ + O(Δ
5/6
) and then

(|σ | + wn,kn )/|σ| ≤ log Δ + O(Δ ) in this case.
6Δ 5/6

Case 2. k = n and then δsn ≤ 20. In this case, wi ≤ wn /( 20)n−i for 0 ≤
i ≤ n. DPC will complete Rn,kn with weight wn,kn , which is at least wn by
construction of DPC. That is, |σ| ≥ wn . For OPT, |σ ∗ | is bounded in below by
Lemma 1.
√ √ √

n

n
√ n
(δsk + 20) 20(δsk + 20)
|σ | = |τi | ≤ (δsk + 20)wi ≤ √ wn < √ wn .
i=0 i=0 i=0
( 20)n−i ( 20 − 1)

OPT may satisfy Rn,kn after DPC does and thus


√ √ √
20(δsk + 20) 20
(|σ ∗ | + wn,kn )/|σ| ≤ √ +1< √ δsk + 6.8.
( 20 − 1) ( 20 − 1)

If 20 < Δ, (|σ ∗ | + wn,kn )/|σ| < 20 20

( 20−1)
+ 6.8 = o(Δ) by δsk ≤ 20, otherwise

if Δ ≤ 20, then (|σ ∗ | + wn,kn )/|σ| 20
< (√20−1) Δ + 6.8 due to δsk ≤ Δ.
The theorem follows. 

5 Conclusion
This paper discussed an online order scheduling scenery where online strategies

does not have the knowledge of Δ at all beforehand. We mainly present a ( log Δ+
O(Δ5/6 ))-competitive optimal strategy DPC, extending the previous conclusion
in [3] from the case with the knowledge of Δ to the one without the knowledge.
It is interesting that whether randomization can help to break this bound.

References
1. Fung, S.P.Y., Chin, F.Y.L., Poon, C.K.: Laxity helps in broadcast scheduling. In:
Proceedings of 11th Italian Conference on Theoretical Computer Science, Siena,
Italy, pp. 251–264 (2005)
2. Zheng, F.F., Fung, S.P.Y., Chan, W.T., Chin, F.Y.L., Poon, C.K., Wong, P.W.H.:
Improved On-line Broadcast Scheduling with Deadlines. In: Proceedings of the 12th
Annual International Computing and Combinatorics Conference, Taipei, Taiwan,
pp. 320–329 (2006)
3. Ting, H.F.: A near optimal scheduler for on-demand data broadcasts. In: 6th Italian
Conference on Algorithms and Complexity, Rome, Italy, pp. 163–174 (2006)
4. Kim, J.H., Chwa, K.Y.: Scheduling broadcasts with deadlines. In: Proceedings of
9th Italian Conference on Theoretical Computer Science, Big Sky, MT, USA, pp.
415–424 (2003)
5. Zheng, F.F., Dai, W.Q., Xiao, P., Zhao, Y.: Competitive Strategies for On-line Pro-
duction Order Disposal Problem. In: 1st International Conference on Algorithmic
Applications In Management, Xi’an, China, pp. 46–54 (2005)
336 F. Zheng et al.

6. Borodin, A., El-yaniv, R.: Online computation and competitive analysis. Cam-
bridge University Press, England (1998)
7. Motwani, R., Phillips, S., Torng, E.: Nonclairvoyant Scheduling. Theoretical Com-
puter Science 130(1), 17–47 (1994)
8. Kalyanasundaram, B., Pruhs, K.R.: Minimizing flow time nonclairvoyantly. Journal
of the ACM 50(4), 551–567 (2003)
9. Becchetti, L., Leonardi, S.: Nonclairvoyant scheduling to minimize the total flow
time on single and parallel machines. Journal of the ACM 51(4), 517–539 (2004)
10. Lipton, R.J., Tomkins, A.: Online Interval Scheduling. In: Proc. Of the 5th Annual
ACM-SIAM Symposium on Discrete Algorithm (SODA 1994), pp. 302–311. New
York (1994)
11. Goldwasser, M.H.: Patience is a Virtue: The effect of slack on competitiveness for
admission control. Journal of Scheduling 6(2), 183–211 (2003)
Large-Scale Parallel Collaborative Filtering for
the Netflix Prize

Yunhong Zhou, Dennis Wilkinson, Robert Schreiber, and Rong Pan

HP Labs, 1501 Page Mill Rd, Palo Alto, CA, 94304


{yunhong.zhou,dennis.wilkinson,rob.schreiber,rong.pan}@hp.com

Abstract. Many recommendation systems suggest items to users by


utilizing the techniques of collaborative filtering (CF) based on histor-
ical records of items that the users have viewed, purchased, or rated.
Two major problems that most CF approaches have to contend with
are scalability and sparseness of the user profiles. To tackle these issues,
in this paper, we describe a CF algorithm alternating-least-squares with
weighted-λ-regularization (ALS-WR), which is implemented on a parallel
Matlab platform. We show empirically that the performance of ALS-WR
(in terms of root mean squared error (RMSE)) monotonically improves
with both the number of features and the number of ALS iterations. We
applied the ALS-WR algorithm on a large-scale CF problem, the Net-
flix Challenge, with 1000 hidden features and obtained a RMSE score of
0.8985, which is one of the best results based on a pure method. In ad-
dition, combining with the parallel version of other known methods, we
achieved a performance improvement of 5.91% over Netflix’s own Cine-
Match recommendation system. Our method is simple and scales well to
very large datasets.

1 Introduction
Recommendation systems try to recommend items (movies, music, webpages,
products, etc) to interested potential customers, based on the information avail-
able. A successful recommendation system can significantly improve the revenue
of e-commerce companies or facilitate the interaction of users in online commu-
nities. Among recommendation systems, content-based approaches analyze the
content (e.g., texts, meta-data, features) of the items to identify related items,
while collaborative filtering uses the aggregated behavior/taste of a large num-
ber of users to suggest relevant items to specific users. Collaborative filtering is
popular and widely deployed in Internet companies like Amazon [16], Netflix [2],
Google News [7], and others.
The Netflix Prize is a large-scale data mining competition held by Netflix
for the best recommendation system algorithm for predicting user ratings on
movies, based on a training set of more than 100 million ratings given by over
480,000 users to 17,700 movies. Each training data point consists of a quadruple
(user, movie, date, rating) where rating is an integer from 1 to 5. The test
dataset consists of 2.8 million data points with the ratings hidden. The goal is

R. Fleischer and J. Xu (Eds.): AAIM 2008, LNCS 5034, pp. 337–348, 2008.

c Springer-Verlag Berlin Heidelberg 2008
338 Y. Zhou et al.

to minimize the RMSE (root mean squared error) when predicting the ratings
on the test dataset. Netflix’s own recommendation system (CineMatch) scores
0.9514 on the test dataset, and the grand challenge is to improve it by 10%.
The Netflix problem presents a number of practical challenges. (Which is
perhaps why, as yet, the prize has not been won.) First, the size of the dataset
is 100 times larger than previous benchmark datasets, resulting in much longer
model training time and much larger system memory requirements. Second,
only about 1% of the user-movie matrix has been observed, with the majority of
(potential) ratings missing. This is, of course, an essential aspect of collaborative
filetering in general. Third, there is noise in both the training and test dataset,
due to human behavior – we cannot expect people to be completely predictable,
at least where their feelings about ephemera like movies is concerned. Fourth,
the distribution of ratings per user in the training and test datasets are different,
as the training dataset spans many years (1995-2005) while the testing dataset
was drawn from recent ratings (year 2006). In particular, users with few ratings
in the training set are well represented in the test set. Intuitively, it is hard to
predict the ratings of a user who is sparsely represented in the training set.
In this paper, we introduce the problem in detail. Then we describe a paral-
lel algorithm, alternating-least-squares with weighted-λ-regularization. We use
parallel Matlab on a Linux cluster as the experimental platform, and our core
algorithm is parallelized and optimized to scale up well with large, sparse data.
When we apply the proposed method to the Netflix Prize problem, we achieve
a performance improvement of 5.91% over Netflix’s own CineMatch system.
The rest of the paper is organized as follows: in Section 2 we introduce the
problem formulation. In Section 3 we describe our novel parallel Alternative-
Least-Squares algorithm. Section 4 describes experiments that show the effec-
tiveness of our approach. Section 5 discusses related work and Section 6 concludes
with some future directions.

2 Problem Formulation

Let R = {rij }nu ×nm denote the user-movie matrix, where each element rij
represents the rating score of movie j rated by user i with its value either being a
real number or missing, nu designates the number of users, and nm indicates the
number of movies. As in most recommendation systems our task is to estimate
some of the missing values in R based on the known values. (The Netflix dataset
consists of nm = 17770 movies, nu = 488000 users, and nr ≈ 100 million known
ratings.)
We start with a low-rank approximation of the ratings matrix R. This ap-
proach models both users and movies by giving them coordinates in a low di-
mensional feature space. Each user and each movie has a feature vector, and
each rating (known or unknown) of a movie by a user is modeled as the inner
product of the corresponding user and movie feature vectors. More specifically,
let U = [ui ] be the user feature matrix, where ui ∈ Rnf , i = 1 . . . nu , denotes
the ith column of U , and let M = [mj ] be the movie feature matrix, where
Large-Scale Parallel Collaborative Filtering for the Netflix Prize 339

mj ∈ Rnf , j = 1 . . . nm , is the j th column of M . Here nf is the dimension of the


feature space, that is, the number of hidden variables in the model. It is a system
parameter that can be determined by a hold-out dataset or cross-validation. If
user ratings were fully predictable and nf sufficiently large, we could expect that
rij = < ui , mj >, ∀ i, j. In practice, however, we minimize a loss function (of
U and M ) to obtain the matrices U and M . In this paper, we study the mean-
square loss function. The loss due to a single rating is defined as the squared
error:
L2 (r, u, m) = (r− < u, m >)2 . (1)
Then we can define the empirical, total loss (for a given pair U and M ) as
the summation of loss on all the known ratings in Eq. (2).

1  2
Lemp (R, U, M ) = L (rij , ui , mj ), (2)
n
(i,j)∈I

where I is the index set of the known ratings and n is the size of I.
We can formulate the low-rank approximation problem as follows.

(U, M ) = arg min Lemp (R, U, M ). (3)


(U,M)

where U and M are real, have nf rows, but are otherwise unconstrained.
In this problem, (Eq. (3)), there are (nu + nm ) × nf free parameters to be
determined. Our results show that allowing nf to be quite large, 1000 in our tests,
improves the quality of the results. Thus, for Netflix we have over 480, 000, 000
model parameters, more data than there are points in the training set I. For this
reason, problem 3 is underdetermined. Indeed, very few users will have rated nf
movies when nf is greater than a few hundred, yet we must assign each user a
point in an nf dimensional feature space.
Thus, when nf is relatively large, solving the problem Eq. (3) overfits the data.
To avoid overfitting, a common method appends a Tikhonov regularization [22]
term to the empirical risk function:

Lreg
λ (R, U, M ) = L
emp
(R, U, M ) + λ(U ΓU 2 + M ΓM 2 ), (4)

for a certain suitably selected Tikhonov matrices ΓU and ΓM .1 We will discuss


the details in the next section.

3 Our Approaches

In this section, we describe an iterative algorithm, alternating-least-squares with


weighted-λ-regularization (ALS-WR), to solve the low rank approximation prob-
lem. Then we develop a parallel implementation of ALS-WR based on a parallel
Matlab platform.
1
Throughout the paper, X denotes the Frobenius norm of the matrix X.
340 Y. Zhou et al.

3.1 ALS with Weighted-λ-Regularization

As the rating matrix contains both signals and noise, it is important to remove
noise and use the recovered signal to predict missing ratings. Singular Value
Decomposition (SVD) is a natural approach that approximates the original user-
movie rating matrix R by the product of two rank-k matrices R̃ = U T × M . The
solution given by the SVD minimizes the Frobenious norm of R − R̃, which is
equivalent to minimizing the RMSE over all elements of R. However, as there
are many missing elements in the rating matrix R, standard SVD algorithms
cannot find U and M .
In this paper, we use alternating-least-squares (ALS) to solve the low-rank
matrix factorization problem as follows:

Step 1. Initialize matrix M by assigning the average rating for that movie as
the first row, and small random numbers for the remaining entries.
Step 2. Fix M , Solve for U by minimizing the objective function (4);
Step 3. Fix U , solve for M by minimizing the objective function similarly;
Step 4. Repeat Steps 2 and 3 until a stopping criterion is satisfied.

Observe that when the regularization matrices Γ(U,M) are nonsingular, each of
the problems of Steps 2 and 3 of the algorithm has a unique solution, which
we derive below. Note that the sequence of achieved errors Lreg λ (R, U, M ) is
monotone nonincreasing and bounded below, hence this sequence converges.
Rather than going all the way to convergence, we use a stopping criterion
based on the observed RMSE on the probe dataset. The probe dataset is provided
by Netflix, and it has the same distribution as the hidden test dataset. After one
round of updating both U and M , if the change in RMSE on the probe dataset
is less than 1 bps2 , the iteration stops and we use the obtained U, M to make
final predictions on the test dataset.
As we mention in Section 2, there are many free parameters. Without reg-
ularization, ALS might lead to overfitting. A common fix is to use Tikhonov
regularization, which penalizes large parameters. We tried various regulariza-
tion matrices, and eventually found the following weighted-λ-regularization to
work the best, as it never overfits the test data (empirically) when we increase
the number nf of features or the number of ALS iterations.
⎛ ⎞
  
f (U, M ) = (rij − uTi mj )2 + λ ⎝ nui ui 2 + nmj mj 2 ⎠ , (5)
(i,j)∈I i j

where nui and nmj denote the number of ratings of user i and movie j respec-

tively. This corresponds to Tikhonov regularization (4), where ΓU = diag( nui )

and ΓM = diag( nmj ). 3
2
1 bps equals 0.0001.
3
The same objective function was used previously by Salakhutdinov et al. [20] and
solved using gradient descent. We will discuss more on their approach in Section 5.2.
Large-Scale Parallel Collaborative Filtering for the Netflix Prize 341

Now we demonstrate how to find the matrix U when M is given. Let IiU denote
the set of indices of movies that user i rated, so that nui is the cardinality of
IiU ; similarly IjM denotes the set of indices of users who rated movie j, and nmj
is the cardinality of IjM . A given column of U , say ui , is determined by solving
a regularized linear least squares problem involving the known ratings of user i,
and the feature vectors mj of the movies j ∈ IiU that user i has rated.

1 ∂f
= 0, ∀i, k
2 ∂uki

⇒ (uTi mj − rij )mkj + λnui uki = 0, ∀i, k
j∈IiU
 
⇒ mkj mTj ui + λnui uki = mkj rij , ∀i, k
j∈IiU j∈IiU
 
⇒ MIiU MITU + λnui E ui = MIiU RT (i, IiU ), ∀i
i

⇒ ui = A−1
i Vi , ∀i

where Ai = MIiU MITU + λnui E, Vi = MIiU RT (i, IiU ), and E is the nf × nf


i
identity matrix. MIiU denotes the sub-matrix of M where columns j ∈ IiU are
selected, and R(i, IiU ) is the row vector where columns j ∈ IiU of the i-th row of
R are selected.
Similarly, when M is updated, we can compute individual mj ’s via a regular-
ized linear least squares solution, using the feature vectors of users who rated
movie j, and their ratings of it, as follows:

mj = A−1
j Vj , ∀j,

where Aj = UIiM UITM + λnmj E and Vj = UIiM R(IiM , j). UIiM denotes the sub-
i
matrix of U where columns i ∈ IiM are selected, and R(IiM , j) is the column
vector where rows i ∈ IiM of the j-th column of R is taken.
Let nr denote the total number of ratings, then we have nr  nu nm for
a sparse rating matrix. We can easily derive the running time of the above
algorithm based on standard matrix operations:
 
Theorem 1. For ALS-WR, each step of updating U takes O n2f (nr + nf nu )
 
time while each step of updating M takes O n2f (nr + nf nm ) . If ALS-WR takes
 
totally nt rounds to stop, it runs in time O n2f (nr + nf nu + nf nm )nt .

3.2 Parallel ALS with Weighted-λ-Regularization


We parallelize ALS by parallelizing the updates of U and of M . We are using
the latest verstion of Matlab, which allows parallel Matlab computation in which
several separate copies of Matlab, each with its own private workspace, and each
342 Y. Zhou et al.

running on its own hardware platform, collaborate and communicate to solve


problems. Each such running copy of Matlab is referred to as a “lab”, with its
own identifier (labindex) and with a static variable (numlabs) telling how many
labs there are. Matrices can be private (each lab has its own copy, and their values
differ), replicated (private, but with the same value on all labs) or distributed
(there is one matrix, but with rows, or columns, partitioned among the labs).
Distributed matrices are a convenient way to store and use very large datasets,
too large to be stored on one processor and its associated local memory. In our
case, we use two distributed copies of the ratings matrix R, one distributed
by rows (i.e., by users) and the other by columns (i.e., by movies). We will
compute distributed, updated matrices U and M . In computing U we will require
a replicated version of M , and vice versa. Thus, our labs communicate to make
replicated versions of U and of M from the distributed versions that are first
computed. Matlab’s “gather” function performs the inter-lab communication
needed for this.
To update M , we require a replicated copy of U , local to each lab. We use
the ratings data distributed by columns (movies). The distribution is by blocks
of equal numbers of movies. The lab that stores the ratings of movie j will, nat-
urally, be the one that updates the corresponding column of M , which is movie
j’s feature vector. Each lab computes mj for all movies in the corresponding
movie group, in parallel. These values are then “gathered” so that every node
has all of M , in a replicated array. To update U , users are partitioned into equal-
size user groups and each lab just update user vectors in the corresponding user
group, using the ratings data partitioned by rows. The following Matlab snippet
implements the procedure of updating M given U :
function M = updateM(lAcols, U)
lamI = lambda * eye(Nf);
lM = zeros(Nf,Nlm); lM = single(lM);
for m = 1:Nlm
users = find(lAcols(:,m));
Um = U(:, users);
vector = Um * full(lAcols(users, m));
matrix = Um * Um’ + locWtM(m) * lamI;
X = matrix \ vector;
lM(:, m) = X;
end
M = gather(darray(lM));
end
For the above Matlab code, lAcols is the local copy of R distributed by columns
(movies), locWtM is the vector of nmj for all movies in the partitioned movie
group, and Nlm is the number of movies in the movie group. Nf and lambda
correspond to nf and λ, and they are the only tunable parameters of ALS-WR.
The gather operation is the only place where we incur communication cost
due to using a distributed (as opposed to a shared-memory) algorithm. For
our method, it takes less than 5% of the total run time. Therefore, the parallel
Large-Scale Parallel Collaborative Filtering for the Netflix Prize 343

algorithm achieves a nearly linear speedup. As an example, for nf = 100, it


takes about 2.5 hours to update M and U once with a single processor; with 30
processors, it takes about 5 minutes for one iteration, and the converged solution
(with 30 ALS iterations) can be computed in 2.5 hours.

4 Performance for the Netflix Prize Problem


We ran on a 30-processor Linux cluster of HP ProLiant DL380 G4 machines.
All processors are Xeon 2.8GHz and every four processors share 6GB of RAM.
For each fixed nf , we run between 10 to 25 rounds of ALS-WF and stop when
one round of U, M update improves by less than 1 bps the RMSE score on the
probe dataset. The optimal value of λ is determined by trial and error.4 The
test RMSE is obtained by submission to the Netflix prize website5 .
The probe dataset is a subset of the training dataset. It consists of 1,408,395
ratings from the year 2006. In it, users are selected at random with uniform
probability, and at most 9 ratings are included for each selected user. The test
dataset is hidden by Netflix but the distribution of the test dataset is the same as
the distribution of the probe dataset. For model building and parameter tuning,
we exclude the probe dataset from the training dataset (this is how we determine
the set I, above.) We use the probe for convergence criterion in ALS-WR and
for testing.

4.1 Postprocessing
For postprocessing of the prediction results, we first apply a global bias correction
technique to the prediction solution. Given a prediction P , if the mean of P is
not equal to the mean of the test dataset, we can shift all predicted values by a
fixed constant τ = mean(test) − mean(P ), thus improving the RMSE. We also
use convex combinations of several predictors to obtain a better predictor. For
example, given two predictors P0 and P1 , we can obtain a family of predictors
Px = (1 − x)P0 + xP1 , x ∈ [0, 1], and use linear regression to find x∗ minimizing
RMSE(Px ). Therefore we obtain Px∗ which is at least as good as P0 or P1 .

4.2 Experimental Results for ALS


The most important discovery we made is that ALS-WR never overfits the data
if we either increase the number of iterations or the number of hidden features.
As Figure 1 shows, with fixed nf and λ, each iteration improves the RMSE
score of the probe dataset, and it converges after about 20 rounds. Different λ
values give different final score, and we normally need to try a small number of
4
Empirically we found that for fixed nf , the convergence RMSE score is a convex
function of λ, and the optimal value of λ is monotone decreasing with respect to nf .
Based on these observations, we are able to find the best value of λ for each nf with
only 2-3 experiments.
5
See http://www.netflixprize.com/rules for the detailed rules of the competition.
344 Y. Zhou et al.

λ=0.03
λ=0.04
0.965
λ=0.05
λ=0.06
0.96 λ=0.075
λ=0.065

0.955
RMSE

0.95

0.945

0.94

0.935

5 10 15 20 25 30 35 40 45 50
Number of Iterations

Fig. 1. Comparisons of different λ values for ALS-WR with nf = 8. The best performer
with 25 rounds is λ = 0.065. For this fixed λ, after 50 rounds, the RMSE score still
improves but only less than 0.1 bps for each iteration afterwards.

λ 0.03
0.96 λ 0.04
λ 0.05
0.955

0.95
RMSE

0.945

0.94

0.935

0.93

0.925
2 4 6 8 10 12 14 16 18 20
Number of hidden features (n )
f

Fig. 2. Performance of ALS-WR with fixed λ and varying nf

λ values to get a good RMSE score. Figure 2 shows the performance of ALS-WR
with fixed λ value and varying number of hidden features (nf ranges from 2 to
20). For each experiment, ALS-WR iterations continue until the RMSE over the
probe dataset improves less than 1 bps. From the figure we can tell that the
RMSE monotonically decreases with larger nf , even though the improvement
diminishes gradually.
Next we conduct experiments with real submissions using large values of nf .
For ALS with simple λ regularization (Γu = Γm = E), we obtain a RMSE of
0.9184. For ALS with weighted-λ-regularization, we obtained a RMSE of 0.9114
with nf = 50, 0.9066 with nf = 150. With nf = 300 and global bias correc-
tion, we obtain a RMSE of 0.9017; with nf = 400 and global bias correction,
a score of 0.9006 was obtained; with nf = 500 and global bias shift, a score of
0.9000 was obtained. Ultimately, we experimented with nf = 1000 and obtained
Large-Scale Parallel Collaborative Filtering for the Netflix Prize 345

a RMSE score of 0.8985.6 Given that 6 bps improvement is obtained from 400 to
500 features, and assuming diminishing (equal-decrease) return with increasing
number of features, moving from 500 to 1000 features improves approximately
5 + 4 + 3 + 2 + 1 = 15 bps. Therefore, 0.8985 is likely the limit we can achieve
using ALS with Weighted-λ-Regularization. A RMSE score of 0.8985 translates
into a 5.56% improvement over Netflix’s CineMatch, and it represents one of the
top single-method performance according to our knowledge.

4.3 Other Methods and Linear Blending

We also implement parallel versions of two other popular collaborative filter-


ing techniques as described in this section. In each case, the speedup as com-
pared to a single-processor version is roughly a factor of n on a cluster of n
processors.
The Restricted Boltzmann Machine (RBM) is a kind of neural network where
there are visible states and hidden states, and undirected edges connecting each
visible state to each hidden state. There are no connections among visible states
or among hidden states, thus the name “restricted.” RBM was previously demon-
strated to work well for the Netflix challenge [20]. We implemented RBM using
Matlab, and converted it to Pmode. For a model with 100 hidden units, it takes
about 1 hour for one iteration without Pmode; using Pmode with 30 labs, it
takes 3 minutes for one iteration.
The k-nearest neighbor (kNN) method is also popular for prediction. With a
properly defined distance metric, for each data point needed for prediction, the
weighted average of the ratings of its k closest neighbors is used to predict the
rating of this point. Since there are so many user-user pairs for us to handle in
reasonable time and space, we use a simplified approach with only movie-movie
similarities. Again, we parallelize kNN by partitioning users into user groups so
that each lab processes one user group.
For RBM itself, a score of 0.9181 is obtained. For kNN with k = 21 and a
good similarity function, a RMSE of 0.9270 is obtained. Linear blending of ALS
with kNN and RBM yields a RMSE of 0.8952 (ALS + kNN + RBM), and it
represents a 5.91% improvement over Netflix’s CineMatch system.

5 Related Work

There is a lot of academic and industrial work on recommendation systems, low-


rank matrix approximation, and the Netflix prize. In the following we briefly
discuss related work most relevant to ours.
6
The experiment with nf = l000 is technically challenging as U takes 2G memory
with single precision entries for each processor. We managed to run the procedure of
updateM in two batches, while in each batch only two processors for each server are
active and U is only replicated in these processors. This avoids memory thrashing
using the 6G shared memory for each server. And ALS-WR stops in 10 rounds while
each rounds takes 1.5 hours.
346 Y. Zhou et al.

5.1 Recommendation Systems


Recommendation systems can be mainly categorized into content-based and col-
laborative filtering, and are well-studied in both academia and industry [16,2,7].
Content-based recommendation systems analyze the content (e.g., texts, meta-
data, features) of the item to identify related items, with exemplary systems
InfoFinder [12], NewsWeeder [14]. Collaborative Filtering uses aggregated be-
havior/taste of a large number of users to suggest relevant items to specific
users. Recommendations generated by CF are based solely on the user-user
and/or item-item similarities, with exemplary systems GroupLens [19] and Bell-
core Video Recommender [11]. Efforts to combine both content-based approach
and collaborative filtering include the Fab system [3] and unified probabilistic
framework [18].

5.2 The Netflix Prize Approaches


For the Netflix prize, Salakhutdinov et al. [20] used Restricted Boltzmann Ma-
chines (RBM), obtaining an RMSE score of slightly below 0.91. They also pre-
sented a low-rank approximation approach using gradient descent. Their low-
rank approximation obtained an RMSE score slightly above 0.91 using between
20-60 hidden features.7 The objective function of their SVD approach is the same
as our ALS-WR, however we use alternating least squares instead of gradient
descent to solve the optimization problem, and we are able to use a much large
number of features (1000 rather than 40) to obtain significant improvement in
RMSE score.
Among many other approaches to the Netflix problem, Bell et al. [5] proposed
a neighborhood-based technique which combines k-nearest-neighbor (kNN) and
low-rank approximation to obtain significantly better results compared to either
technique alone. Their team won the progress prize in October 2007, obtaining
an RMSE score on the qualifying dataset of 0.8712, improving the CineMatch
score by 8.5%. However, their solution [4] is a linear combination of 107 individ-
ual solutions, while multiple solutions are derived by variants of three classes of
solutions (ALS, RBM, and kNN). For ALS alone, their best result was obtained
using 128 hidden features with an RMSE score above 0.9000. For a compre-
hensive treatment of various approaches for the Netflix prize, see the individual
papers presented in KDD Cup & Workshop 2007 [21,17,15,13,23].

5.3 Low-Rank Approximation


When a fully specified matrix is to be approximated by a low-rank matrix fac-
torization, variants of singular value decomposition are used, for example in
information retrieval (where SVD techniques are known as latent semantic in-
dexing [9]). Other matrix factoring methods, for example nonnegative matrix
factorization and maximum margin matrix factorization have also been proposed
for the Netflix prize [23].
7
We obtained similar results and got 0.9114 with nf = 50.
Large-Scale Parallel Collaborative Filtering for the Netflix Prize 347

For a partially specified matrix, the SVD is not applicable. To minimize the
sum of squared differences between the known elements and the corresponding
elements of the factored low rank matrix, ALS has proven to be an effective
approach. It provides non-orthogonal factors, unlike SVD. The SVD can be
computed one column at a time, whereas for the partially specified case, no such
recursive formulation holds. An advantage of ALS is its easy parallelization. Like
Lanczos for the sparse, fully specified case, ALS preserves the sparse structure
of the known matrix elements and is therefore storage-efficient.

6 Concluding Remarks

We introduced a simple parallel algorithm for large-scale collaborative filtering


which, in the case of the Netflix prize, performed as well as any single method
reported in the literature. Our algorithm is designed to be scalable to very large
datasets. Moderately better scores can be obtained by refining the RBM and
kNN implementation or using more complicated blending schemes. ALS-WR
in particular is able to achieve good results without using date or movie title
information. The fast runtime achieved through parallelization is a competitive
advantage for model building and parameter tuning in general. It will be inter-
esting to develop a theory to explain why ALS-WR never overfits the data.
As the world shifts into Internet computing and web applications, large-scale
data intensive computing becomes pervasive. Traditional single-machine, single-
thread computing is no longer viable, and there is a paradigm shift in computing
models. Parallel and/or distributed computing becomes an essential component
for any computing environment. Google, the leading Internet company, is build-
ing its own proprietary parallel/distributed computing infrastructure, based on
MapReduce [8], Google File System [10], Bigtable [6], etc. Most technology com-
panies do not have the capital and expertise to develop an in-house large-scale
parallel/distributed computing infrastructure, and prefer instead to use readily
available solutions to solve computing infrastructure problems. Hadoop [1] is
an open-source project sponsored by Yahoo!, which tries to replicate the Google
computing infrastructure with open-source development. We have found parallel
Matlab to be flexible and efficient, and very straightforward to program. Thus,
from our experience, it seems to be a strong candidate for widespread, easily
scalable parallel/distributed computing.

References
1. The Hadoop Project, http://lucene.apache.org/hadoop/
2. Netflix CineMatch, http://www.netflix.com
3. Balabanovi, M., Shoham, Y.: Fab: content-based, collaborative recommendation.
Communications of the ACM 40(3), 66–72 (1997)
4. Bell, R., Koren, Y., Volinsky, C.: The bellkor solution to the netflix prize. Netflix
Prize Progress Award (October 2007),
http://www.netflixprize.com/assets/ProgressPrize2007 KorBell.pdf
348 Y. Zhou et al.

5. Bell, R., Koren, Y., Volinsky, C.: Modeling relationships at multiple scales to im-
prove accuracy of large recommender systems. In: Proc. KDD 2007, pp. 95–104
(2007)
6. Chang, F., et al.: Bigtable: A distributed storage system for structured data. In:
Proc. of OSDI 2006, pp. 205–218 (2006)
7. Das, A., Datar, M., Garg, A., Rajaram, S.: Google news personalization: Scalable
online collaborative filtering. In: Proc. of WWW 2007, pp. 271–280 (2007)
8. Dean, J., Ghemawat, S.: Mapreduce: Simplified data processing on large clusters.
In: Proc. OSDI 2004, San Francisco, pp. 137–150 (2004)
9. Deerwester, S., Dumais, S.T., Furnas, G.W., Landauer, T.K., Harshman, R.: In-
dexing by latent semantic analysis. J. Amer. Soc. Info. Sci. 41(6), 391–407 (1999)
10. Ghemawat, S., Gobioff, H., Leung, S.-T.: The Google File System. In: Proc. of
SOSP 2003, pp. 29–43 (2003)
11. Hill, W., Stead, L., Rosenstein, M., Furnas, G.: Recommending and evaluating
choices in a virtual community of use. In: Proc. of CHI 1995, Denver (1995)
12. Krulwich, B., Burkey, C.: Learning user information interests through extraction
of semantically significant phrases. In: Proc. AAAI Spring Symposium on Machine
Learning in Information Access, Stanford, CA (March 1996)
13. Kurucz, M., Benczur, A.A., Csalogany, K.: Methods for large scale SVD with miss-
ing values. In: Proc. KDD Cup and Workshop (2007)
14. Lang, K.: NewsWeeder: Learning to filter Netnews. In: Proc. ICML 1995, pp. 331–
339 (1995)
15. Lim, Y.J., Teh, Y.W.: Variational bayesian approach to movie rating prediction.
In: Proc. KDD Cup and Workshop (2007)
16. Linden, G., Smith, B., York, J.: Amazon.com recommendations: Item-to-item col-
laborative filtering. IEEE Internet Computing 7, 76–80 (2003)
17. Paterek, A.: Improving regularized singular value decomposition for collaborative
filtering. In: Proc. KDD Cup and Workshop (2007)
18. Popescul, A., Ungar, L., Pennock, D., Lawrence, S.: Probabilistic models for unified
collaborative and content-based recommendation in Sparse-Data Environments. In:
Proc. UAI, pp. 437–44 (2001)
19. Resnick, P., Iacovou, N., Suchak, M., Bergstrom, P., Riedl, J.: GroupLens: an open
architecture for collaborative filtering of Netnews. In: Proc. the ACM Conference
on Computer-Supported Cooperative Work, Chapel Hill, NC (1994)
20. Salakhutdinov, R., Mnih, A., Hinton, G.E.: Restricted boltzmann machines for
collaborative filtering. In: Proc. ICML, pp. 791–798 (2007)
21. Takacs, G., Pilaszy, I., Nemeth, B., Tikk, D.: On the gravity recommendation
system. In: Proc. KDD Cup and Workshop (2007)
22. Tikhonov, A.N., Arsenin, V.Y.: Solutions of Ill-posed Problems. John Wiley, New
York (1977)
23. Wu, M.: Collaborative filtering via ensembles of matrix factorizations. In: Proc.
KDD Cup and Workshop (2007)
Author Index

Angel, Eric 3 Konjevod, Goran 27


Korteweg, Peter 72
Bampis, Evripidis 3
Bansal, Nikhil 15 Lefmann, Hanno 259
Barrett, Chris 27 Le Roux, Stéphane 247
Benkoczi, Robert 38 Liberti, Leo 271
Berger, Florian 50 Lin, Shieu-Hong 280
Betzler, Nadja 60
Bhattacharya, Binay 38 Maheshwari, Anil 200
Bisset, Keith 27 Marathe, Madhav 27
Bonifaci, Vincenzo 72 Marchetti-Spaccamela, Alberto 72
Chan, Ho-Leung 15 Miyoshi, Naoto 292
Chen, Zhi-Zhong 84, 97
Cheung, Yam Ki 109 Niedermeier, Rolf 60
Chrobak, Marek 120 Nussbaum, Doron 50

Daescu, Ovidiu 109 Pan, Rong 337


Delling, Daniel 131 Pruhs, Kirk 15, 155
Du, Ding-Zhu 1
Du, Donglei 316 Rafiey, Arash 224
Dürr, Christoph 120 Raimondi, Franco 271
Dyer, Danny 143 Razgon, Igor 235
Robert, Julien 120
Edmonds, Jeff 155 Rosamond, Frances A. 60
Faliszewski, Piotr 165, 177 Rothe, Jörg 165
Fellows, Michael R. 60, 188
Fernau, Henning 188 Sack, Jörg-Rüdiger 50, 200
Sadasivam, Sadish 304
Gaertler, Marco 131 Schreiber, Robert 337
Görke, Robert 131 Shi, Qiaosheng 38
Gourvès, Laurent 3 Shigezumi, Takeya 292
Guo, Hua 200 Shuai, Tianping 316
Guo, Jiong 60 Solanki, Jaisingh 155
Guo, Zeyu 212 Stougie, Leen 72
Gutin, Gregory 224, 235 Sun, He 212

Hemaspaandra, Edith 165 Tanahashi, Ruka 84, 97


Hemaspaandra, Lane A. 165, 177
Holzer, Martin 27 Uehara, Ryuhei 292
Hurand, Mathilde 120

Jiang, Xiaoyue 316 Vazirani, Vijay V. 2

Kim, Eun Jung 235 Wagner, Dorothea 27, 131


Klein, Rolf 50 Wang, Lusheng 97
350 Author Index

Watanabe, Osamu 292 Yeo, Anders 224


Wilkinson, Dennis 337 Yi, Jiehua 50
Wu, Xiaoping 328
Zhang, E. 328
Xu, Yinfeng 328 Zhang, Huaming 304
Zheng, Feifeng 328
Yaşar, Öznur 143 Zhou, Yunhong 337
Yang, Boting 143 Zhu, Hong 212

You might also like