Professional Documents
Culture Documents
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
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
New York University, NY, USA
Doug Tygar
University of California, Berkeley, CA, USA
Moshe Y. Vardi
Rice University, Houston, TX, USA
Gerhard Weikum
Max-Planck Institute of Computer Science, Saarbruecken, Germany
Osvaldo Gervasi Marina L. Gavrilova
Vipin Kumar Antonio Laganà
Heow Pueh Lee Youngsong Mun
David Taniar Chih Jeng Kenneth Tan (Eds.)
Computational
Science and Its
Applications –
ICCSA 2005
International Conference
Singapore, May 9-12, 2005
Proceedings, Part IV
13
Volume Editors
Osvaldo Gervasi
University of Perugia
E-mail: ogervasi@computer.org
Marina L. Gavrilova
University of Calgary
E-mail: marina@cpsc.ucalgary.ca
Vipin Kumar
University of Minnesota
E-mail: kumar@cs.umn.edu
Antonio Laganà
University of Perugia
E-mail: lag@dyn.unipg.it
Youngsong Mun
Soongsil University
E-mail: mun@computing.soongsil.ac.kr
David Taniar
Monash University
E-mail: David.Taniar@infotech.monash.edu.au
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
springeronline.com
© Springer-Verlag Berlin Heidelberg 2005
Printed in Germany
Typesetting: Camera-ready by author, data conversion by Scientific Publishing Services, Chennai, India
Printed on acid-free paper SPIN: 11424925 06/3142 543210
Preface
The four volume set assembled following The 2005 International Conference
on Computational Science and its Applications, ICCSA 2005, held in Suntec
International Convention and Exhibition Centre, Singapore, from 9 May 2005
till 12 May 2005, represents the fine collection of 540 refereed papers selected
from nearly 2,700 submissions.
Computational Science has firmly established itself as a vital part of many
scientific investigations, affecting researchers and practitioners in areas ranging
from applications such as aerospace and automotive, to emerging technologies
such as bioinformatics and nanotechnologies, to core disciplines such as math-
ematics, physics, and chemistry. Due to the shear size of many challenges in
computational science, the use of supercomputing, parallel processing, and so-
phisticated algorithms is inevitable and becomes a part of fundamental the-
oretical research as well as endeavors in emerging fields. Together, these far
reaching scientific areas contribute to shape this Conference in the realms of
state-of-the-art computational science research and applications, encompassing
the facilitating theoretical foundations and the innovative applications of such
results in other areas.
The topics of the refereed papers span all the traditional as well as emerg-
ing Computational Science realms, and are structured according to six main
conference themes:
– Computational Methods and Applications
– High Performance Computing, Networks and Optimisation
– Information Systems and Information Technologies
– Scientific Visualisation, Graphics and Image Processing
– Computational Science Education
– Advanced and Emerging Applications
their diligent work, and the Institute of High Performance Computing, Singapore
for their generous assistance in hosting the event.
We also thank our sponsors for their continuous support without which this
Conference would not be possible.
Finally, we thank all authors for their submissions and all Invited Speakers
and Conference attendants for making the ICCSA Conference truly one of the
premium events in the scientific community, facilitating exchange of ideas, fos-
tering new collaborations, and shaping the future of the Computational Science.
Conference Chairs
Vipin Kumar (Army High Performance Computing Center and University of
Minnesota, USA), Honorary Chair
Marina L. Gavrilova (University of Calgary, Canada), Conference co-Chair,
Scientific
Osvaldo Gervasi (University of Perugia, Italy), Conference co-Chair, Program
Jerry Lim (Institute of High Performance Computing, Singapore), Conference
co-Chair, Organizational
Workshop Organizers
Approaches or Methods of Security Engineering
Haeng Kon Kim (Catholic University of Daegu, Korea)
Tai-hoon Kim (Korea Information Security Agency, Korea)
Mobile Communications
Hyunseung Choo (Sungkyunkwan University, Korea )
Program Committee
Jemal Abawajy (Deakin University, Australia)
Kenny Adamson (EZ-DSP, UK)
Srinivas Aluru (Iowa State University, USA)
Frank Baetke (Hewlett Packard, USA)
Mark Baker (Portsmouth University, UK)
Young-Cheol Bang (Korea Polytech University, Korea)
David Bell (The Queen’s University of Belfast, UK)
Stefania Bertazzon (University of Calgary, Canada)
Sergei Bespamyatnikh (Duke University, USA)
J. A. Rod Blais (University of Calgary, Canada)
Alexander V. Bogdanov (Institute for High Performance Computing and
Information Systems, Russia)
Richard P. Brent(University of Oxford, UK)
Peter Brezany (University of Vienna, Austria)
Herve Bronnimann (Polytechnic University, NY, USA)
John Brooke (The University of Manchester, UK)
Martin Buecker (Aachen University, Germany)
Rajkumar Buyya (University of Melbourne, Australia)
YoungSik Choi (University of Missouri, USA)
Hyunseung Choo (Sungkyunkwan University, Korea)
Organization XI
Sponsoring Organizations
University of Perugia, Perugia, Italy
University of Calgary, Calgary, Canada
University of Minnesota, Minneapolis, USA
The Queen’s University of Belfast, UK
Society for Industrial and Applied Mathematics, USA
The Institution of Electrical Engineers, UK
OptimaNumerics Ltd, UK
MASTER-UP, Italy
The Institute of High Performance Computing, Singapore
Table of Contents – Part IV
General
Tracks
DNA-Based Algorithm for 0-1 Planning Problem
Lei Wang, Zhiping P. Chen, Xinhua H. Jiang . . . . . . . . . . . . . . . . . . . . 733
XXII Table of Contents – Part IV
Core Technology Analysis and Development for the Virus and Hacking
Prevention
Seung-Jae Yoo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 870
On URL Normalization
Sang Ho Lee, Sung Jin Kim, Seok Hoo Hong . . . . . . . . . . . . . . . . . . . . . 1076
Table of Contents – Part II LI
Optimal Wavelets
Nikolay Strelkov, Vladimir Dol’nikov . . . . . . . . . . . . . . . . . . . . . . . . . . . . 628
Constructing Detailed Solid and Smooth Surfaces from Voxel Data for
Neurosurgical Simulation
Mayumi Shimizu, Yasuaki Nakamura . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1013
1 Introduction
The newly established course of ACM/IEEE-CS for computer science and technology
(CC2001[1]) build a knowledge GV(Graphics and Visual Computing). And they divide
GV curriculum into two kernel modules and nine additional modules. The former in-
cludes basic graphics technology and graphics system, the latter is composed of graph-
ics communication, geometry modeling, basic rending, custom rending, advanced tech-
nology, computer animation, virtual reality and compute vision. Results from CC1991
and CC2001 show that great changes have taken place in GV field since 1990’s.
In fact, high development of computer hardware technology requires a much more
harmonious interactive environment. Computer graphic application users show great
interest in friend and convenient interface. Real time render system is becoming the
main trend of in graphic area. Thus, computer graphics and relative graphical tech-
nologies become one of the most activist branches. Technology improvements requir-
ing teaching methods on computer courses in high education part change the tradi-
tional way. Actually, many universities and colleges in China [11,12,13,14,15] have recog-
nized the urgent situation and started computer graphics course and other related
courses. However, content of GV is very complex. Present courses are hard to cover
all ranges. And traditional teaching method have been outdated: bald content in text-
books, conflicts between few available teaching time and expanded teaching material,
theory and practice, research developments and application usability become much
deeper and harder. We believe new GV course system based on constructivist learn-
ing theory meet the common demands. And updating teaching material and innovat-
ing teaching methods are effective ways to reflect the newest achievement in GV
field.
Discussion on computer pedagogy guided by CC2001 is still hot, but seldom appli-
cations in constructivist learning theory have been taken into practice. This paper
presents some detailed pedagogical contents and pedagogical methods executed in our
system which is running on local department at present. This paper is organized as
follows: first part is the concept and teaching method of constructivism. Second part
provides the design principle of GV course. CVCS1.1 and GraphVCF1.0, two effi-
cient virtual platforms will be introduced in the third part. At the third part, we will
present teaching control methods. Finally, the conclusion is drawn.
From constructivism learning theory, there exists several ripe teaching methods, such
as the scaffolding instruction, anchored instruction, random access instruction etc.
Scaffolding is a process that requires direct teaching and monitoring. To be successful
with this teaching strategy, the teacher must provide all information that a student
needs to complete a given task. Detailed advice, direction of the student’s attention,
and alerts to the student of the sequence of activities are essential to a student’s ability
to perform within the scaffolded teaching environment. From this way, Children are
able to direct their own attention, plan, and control their activities. Scaffolding is
often compared to the scaffolding of a building. The scaffolding of a building is
gradually moved until the structure is able to support its own weight. The support that
is given in educational scaffolding comes in the form of modeling, giving students
cues, prompts, hints, and partial solutions. If students have trouble to learn, teachers
need model a new learning process. However, this also gives student another oppor-
tunity to observe the thinking and behavior. Those students who are not having diffi-
culty are receiving reinforcement. Five different instructional scaffolding techniques
can be divided:
4) Verifying and clarifying student understanding. When the students gain experi-
ence with new material, it is important for the instructor to continuously assess
their understanding and offer feedback. Verifying and clarifying student under-
standing is essentially offering affirmative feedback to reasonable understand-
ings, corrective feedback to unreasonable understandings.
5) Inviting students to contribute clues. Teachers should encourage students to
contribute information just as learning in a real classroom. The imagination of
students will be extended in this phase. By and by, they can get the rule of the
new material.
Corre-
Course sponding Timing Teaching Evalua-
Layer Teaching content
name to Hour pattern tion
CC2001
First layer: CV Simple color model; GV1 2nd semester Cathedra: Evalua-
Conception applica- Graphics system and GV2 Short from the tion:
construc- tion input & output equip- semester technology Picture
ele- ment; light source; GV5 application,
tion skills (12) process;
ments material; environment GV8 gives the
(Photoshop; AutoCAD; conception Engineer-
3Dmax; Solid Edged) framework ing draw;
3D model;
Second Basic Summarize of graphics; GV4 6th Semes- Lesson: Exercises;
layer: basic com- Graphics interface and GV5 ter build the Group
graphics puter interaction technology (54) concept of discussion;
skills graphics with computer; The GV10 framework; Appraisal
& generation of the 2D
OpenGL graphics; The genera-
tion of 3D graphics and
its transformation.
Third CV Vivid graphics generat- GV3 7th semes- Finish a
layer: algo- ing technology (Sim- GV4GV5 ter Lesson middle-
High rithm ple light model; GV6GV7 (54) large
graphics and its shadow generating; GV8GV9 exercise (a
skills system light tracing algorithm; practical
texture mapping tech- system or
nology); Vis- optimize
ual(Conception;3D an algo-
interaction technol- rithm)
ogy);Introduction of
computer animation;
Virtual reality
Fourth The Newly technology GV10 The8th Cathedra The
layer: applica- development GV11 semester articles of
Advanced tion of new
graphical Graph- technology
skill ics and
its
newly
devel-
opment
select different courses. By using this system, students gain rich electrical media
documents, such as course outline, course progress, course target and task arrange-
ment. Material on the net will be added and updated by teachers at anytime. CVCS1.1
is also a shared resource database where teachers and students can communicate with
each other. Other functions are also supported, such as online examination etc.
5 Conclusion
Constructivist learning theory has shown prosperous since its first introduction on
1990 to China. Years of teaching experience in computer science[3], especially in
computer graphics proves that constructivist view of teaching and learning theory
meets the requirement of expanded teaching and learning group. Three advantages
can be outlined briefly to support this opinion. Firstly, it can improve student’s learn-
ing interest. There are plenty of algorithm and programming in GV teaching course,
with the support of new teaching method, the students can easily get the idea of ab-
stract concept, which will boost their learning passion and enthusiasm. Secondly, this
teaching method improves the efficiency of algorithm what they are learning, for this
new teaching method not only the relationship between teachers and students, but also
the convenient way of knowledge acquirements for students can be gained. Thus, it
gives the students the changes of consider the problem much more freely and deeply.
Finally, by using network and virtual reality technology, students communicate with
teachers and other students more frequently without regional limitation. This teaching
method also provides students with chances of join in the scientific research and pro-
ject, which can improve their research ability.
Acknowledgment
This project is under support of Scientific Research Fund of Zhejiang Provincial Edu-
cation and co-supported by Department&Kuancheng Wang Education Fund. The
authors would also like to give thanks to Zhaohui Zhu, Jiejie Zhu who help us to build
the entire architecture of synthetic characters.
References
1. The Computer Society of the Institute for Electrical and Electronic Engineers (IEEE-CS)
and the Association for Computing Machinery (ACM). Computing Curricula Final Draft–
December15,2001.2001-12-15,
http:// www.acm.org / sigcse / cc2001 [Z].
2. El-Hindi A., Donald J. “Beyond classroom boundaries: constructivist teaching with the
Internet” Reading Teacher (1998) p.694-701
3. Kekang H. “Constructivism – The basic theory of innovate traditional teaching” Subject
education (1998) (In Chinese)
4. Tang Z.S., Zhou J.Y, Li X.Y. “Computer graphics basis” TingHua publishing company
(2000) (In Chinese)
5. Shi J.Y, Cai W.L. “Algorithm of visualization” Scientific publishing company (1996) (In
Chinese)
6. Peng Q.S., Bao H.J, Jin X.G. “The basic algorithm of computer realistic graphics” Sci-
ence publishing company. (1999) (In Chinese)
7. Zhang W.H, Zhou Y. “Computer Graphics in education” Computer Science (2003) 30 (6)
p.104-105 (In Chinese)
8. Zhao Y.M. “The exploration of several questions in computer engineer education” Jour-
nal of NingBo University, (2003) 25(5) (In Chinese)
Exploring Constructivist Learning Theory and Course Visualization 9
1 Introduction
Today, program developers and students who study a program language can easily
find and use examples of a desired program due to many books on programming and
the development of the Internet as a medium. The development of these media helps
many users who learn programming, on the other hand there are negative effects in
that the study of programming is neglected and homework is easily done using shared
programs. These similar assignments which students hand in make it difficult for the
marker to accurately compare and evaluate the assignments with one another. Espe-
cially, assignments with slightly modified code and assignments with a changed style
are very difficult to evaluate, and the results of evaluation can differ according to the
marker [1, 2, 3]. This research introduces a system which evaluates similarity among
different programs using the AST (Abstract Syntax Tree) of the programs submitted.
The system evaluates similarity between two programs using AST produced in the
process of parsing. If a similarity is found using AST, this system can check whether
or not it is structurally similar or not structurally without regard to modification of the
program’s source code, and can perform a syntax error check. The main object of this
research is to overcome difficulties of evaluating a program’s source code that stu-
dents submitted.
Plagiarism of a program becomes more varied as time goes by. An item which at-
tracts public attention goes into newspapers and some students spend their time edit-
ing program’s source rather than doing their homework by themselves. It is important
to be able to evaluate whether a program’s source code is similar or not to another’s.
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 10 – 19, 2005.
© Springer-Verlag Berlin Heidelberg 2005
A Program Plagiarism Evaluation System 11
Especially, there is a keen need for a system that automatically evaluates whether two
programs are similar or not. Fig. 1 shows a program similarity evaluation system
model. In Fig. 1, the AST pool is a collection of AST generated in the process of
parsing. The program similarity evaluation engine, a similarity table, and a similarity
grouping are later described in Section 3.
2 Related Research
Researches related to program similarity have been ongoing for the last 20 ~ 30 years
ago. Researches related to similarity of documents were performed in the early stage
of our research, with the aim of performing program similarity evaluation with these
researches as a basis.
In writing, plagiarism of documents means to borrow from original research and use it
as one's own opinion without identifying the source [6]. Through documents have a
linear structure, similarity is evaluated using statistical features rather than structural
features because the length of the linear structure varies according to the document.
Applying a statistical structure to the criteria for evaluating the similarity of docu-
12 Y.-C. Kim and J. Choi
ments is termed fingerprint [7]. Fingerprint is a method which examines the similarity
between two documents for a selected word, and compares the frequency of the se-
lected word. The similarity method for the initial program evaluates program similar-
ity using a fingerprint. Namely, similarity is evaluated between two programs using
the statistical parts of the program. The initial system is based on fingerprint using
Halsted matrix [8]. Ottenstein [9], Donaldson [10], Berghel [11], among others made
the system by using or extending the matrix which Halstead suggested.
Donaldson suggests a plagiarism method which is worth noticing. It mixes the pro-
gram structure like the number of loop statements and procedure statements and uses
it with the Halstead matrix. Recently evaluation systems were developed which evalu-
ate program similarity using “token” generated in the process of lexical analysis. By
using a program “token,” these systems become insensitive to elements regardless of
the syntax of a program such as the program style, statement, indentation, and so on
being different from existing systems. The systems which evaluate a similarity pro-
gram token include YAP3 [12], MOSS [13], Jplag [14], Sim [15], SID [16]. There is
research using bioinformatics which is one way of using token string. That is, it is a
method which uses sequence analysis in order to search for similar parts by compar-
ing genomic sequences. Research in genomic sequence analysis searches for similar
parts by comparing DNA sequences or protein sequences, and this is done in order to
analyze the function of homogeneous or heterogeneous genomic sequence. It is based
on the assumption that genes of identical sequences have the same function.
YAP3 [12] which was developed by M.J. Wise is a similarity evaluation system using
the structural matrix method. YAP3 resets programs in order to evaluate their similar-
ity. Namely, removing statements and string constants, changing letters from capital
to lower case, changing from a source program to the same or similar synonym, rear-
ranging an order of function call and so forth is performed. Similarity evaluation in
YAP is evaluated as follows:
( same − diff ) max file − min file (1)
Match = −
min file max file
In (1), “max file” and “min file” represent the larger and the smaller of the two files
respectively. Also, “same” means the number of tokens which is found in both of the
files and “diff” means the number of other lines that are inside the block. Sim [15] also
uses the value of a real number in a range from 0 to 1 in order to evaluate the similarity
between two token strings. Sim uses the formula of similarity evaluation below:
score( s, t ) (2)
S = 2*
score( s, s) + score(t , t )
In (2), “score(s, t)” indicates whether the tokens(s and t) of two programs are equal
or not. Namely, because of using the gene acids sequence technique, the weight of
this sequence expresses a score in SIM, too. SID [16] is based on Kolmogorov com-
plexity. SID expresses the value of similarity in a range from 0 to 1 like Sim, and
similarity is evaluated as shown in the following (3):
A Program Plagiarism Evaluation System 13
K ( s) − K ( s | t ) (3)
R ( s, t ) =
K ( st )
In (3), “K(s|t)” expresses the Kolmogorov complexity, and if “t” is empty, the
Kolmogorov complexity becomes “K(s)”. Also, “K(s)-K(s|t)” is mutual information
that expresses the difference between “K(s)” and “K(t)”. On the contrary, “K(st)”
expresses common information. D. Baxter [18] and others use a dummy code frag-
ment to search between two programs. The dummy code is called “clone” in this
research, and similarity was represented through a dummy code. Their research uses
the numerical formula of similarity evaluation as follows:
S (4)
Similarity = 2 *
2*S + L + R
In (4), “S” is the amount of shared node, “L” is the amount of node which doesn't
exist in the target source but is present among trees in the original source.
in 1989 to check for plagiarism. Also, the JLex [4] and JavaCUP [5] utility is used in this
system in order to execute syntax analysis and lexical analysis of C language.
Testing 1. Similarity Evaluation of Two Programs. Let us suppose that there are
two programs which find the least common multiple (L.C.M.) like in the following
Table 1 and 2 for testing. In table 2 the style is changed from that of Table 1. It is
changed into a similar control statement.
#include <stdio.h>
void main(void) {
long result; int index=0;
int n1, n2, m1, m2, divs[100], lnum, i, flag;
printf(“Input 2 numbers for calculating GCM...\n”);
scanf(“%d %d”, &n1, &n2); m1= n1; m2 = n2;
while(1) { lnum = (m1>=m2?m1:m2); flag = 0;
for(i=2; i<=lnum; i++) { if(m1%i==0 && m2%i==0) {
m1/=i; m2/=i; divs[index++]=i; flag=1; break; } }
if(flag==0) break; }
result = m1 * m2;
for(i=0; i<index; i++) result *= divs[i];
printf(“LCM of %d and %d is %ld.\n”, n1, n2, result); }
#include <stdio.h>
void main(void) { /* Style Change */
long result; int index=0; /* Statement Position Change */
int n1, n2, m1, m2, divs[100], lnum, i, flag;
printf(“Input 2 numbers for calculating GCM...\n”);
scanf(“%d %d”, &n1, &n2); m1= n1; m2 = n2;
for(;;) { /* Control Structure Change : while ==> for */
flag = 0; lnum = (m1>=m2?m1:m2); /* Statement Position Change */
for(i=2; i<=lnum; i++) { /* Style Change */
if(m1%i==0 && m2%i==0) {
m1/=i; m2/=i; divs[index++]=i; flag=1; break; }} if(flag==0) break; }
result = m2 * m1; /* Operand Change */ result = m2 * m1; /* Dummy Code Addition */
result = m2 * m1; result = m2 * m1; /* Dummy Code Addition */
result = m2 * m1; /* Dummy Code Addition */ for(i=0; i<index; i++) result *= divs[i];
printf(“LCM of %d and %d is %ld.\n”, n1, n2, result); }
The result of comparison of the two programs is shown in Fig. 2. In Fig. 2, the
value of similarity of the two programs is 92.98934. In testing, the value of similarity
is decreased in spite of them being the same program, because many dummy codes
are inserted as shown in Table 2. Hence, if there are many dummy codes, in this sys-
tem, the value of similarity will decrease remarkably.
16 Y.-C. Kim and J. Choi
The following Fig. 3 shows the AST of comparing source.c with sim.c. A positive
number in the figure means a node of AST. Fig. 3 shows the different parts of the two
A Program Plagiarism Evaluation System 17
programs clearly. A match code is represented by a red mark ( ) between two pro-
grams, and no match code is represented by a white mark ( ). Therefore, this system
shows that the more dummy codes that are inserted, the more the value of similarity is
decreased.
File
129.c 035.c 039.c 078.c 180.c 469.c 486.c 123.c 456.c
Name
160.c 0.6669 0.85556 0.92987 0.89830 0.75231 0.82222 -1 0.84886 0.87282
129.c 0.78691 0.70613 0.66399 0.52589 0.80889 -1 0.60466 0.64314
035.c 0.89058 0.84 0.69112 0.91719 -1 0.76459 0.81351
039.c 0.90946 0.76179 0.82220 -1 0.83590 0.86497
078.c 0.81253 0.79964 -1 0.89170 0.90638
180.c 0.65712 -1 0.85480 0.84421
469.c -1 0.73117 0.77869
486.c -1 -1
123.c 0.91350
Table 3 shows the results. It represents a similarity table which compares all of
the programs. A value of -1 value in the table means that a comparison was not
performed yet; the other values represent a value of similarity. Therefore, because
“486.c” file has syntax errors, it was excluded from the other programs. As you
can see from Table 3, all programs have a similarity value within a range of 0.5 to
1. There was no full plagiarism among these programs, but a strong similarity
appeared among many. If an evaluation similarity was performed on these pro-
grams using the clustering discussed before, the results would be similar to Testing
3 below. The following Table 4 is the results of a grouping test which fixes the
similarity value at 0.9.
Table 4. The results of performing a grouping with global similarity set at 0.9 (Group0 : 160.c,
039.c, Group1 : 129.c, Group2 : 035.c, 469.c, Group3 : 078.c, 456.c, Group4 : 180.c, Group5:
486.c, Group6 : 123.c)
Group
Group1 Group2 Group3 Group4 Group5 Group6
Name
Group0 0.66690 0.85556 0.89830 0.75231 -1 0.84886
Group1 0.78691 0.66399 0.52589 -1 0.60466
Group2 0.84 0.69112 -1 0.76459
Group3 0.81253 -1 0.89170
Group4 -1 0.85480
Group5 -1
5 Conclusion
This paper introduced a system to evaluate the similarity between two different pro-
grams, and showed how to implement it. And, it performed a clustering in order to
reduce the number of comparisons of all programs. Evaluating the similarity of all
programs was done with regard to the number of n programs. This showed that the
number of comparisons can be reduced from the existing “n(n-1)/2” times to the
minimum “n-1” times. In the testing and evaluation part of this system, program simi-
larity evaluation and clustering are tested using AST. This system revealed problems
with dummy code such as an unnecessary variables and statements and so on. There-
fore, these problems can be solved by executing code optimization and using the
dummy code checker which has been researched within the software engineering
field. However, further research is needed regarding the execution rate. From the
results of testing, this system showed the execution rate decreases, considerably with
regard to a program which has about 500 lines or less. Therefore, study must be done
to improve the execution rate of algorithms. In addition, similarity evaluation of an
XML document, a similarity check using code generation and optimization and the
use of a web-based program plagiarism check system are also needed. Various pro-
gram plagiarism and documents plagiarism checks can be carried out using the algo-
rithm which is used in this research.
Acknowledgements
This work was supported by Korea Research Foundation Grant. (KRF-2004-005-D00172)
References
1. Joy, M., Luck, M.: Plagiarism in Programming Assignments, IEEE Transaction in Educa-
tion, Vol. 42 (1999) 129-133
2. Cunningham, P., Mikpyan, A. N.: Using CBR Techniques to Detect Plagiarism in Pro-
gramming Assignments, available at Department of Computer Science, Trinity College,
Dublin (1993)
A Program Plagiarism Evaluation System 19
3. Faidhi, J. A., Robinson, S. k.: An Empirical Approach for Detecting Program Similarity
within a University Programming Environment, Computers and Education, Vol. 11 (1987)
11-19
4. Lin, J.: JLex Tutorial, available at http://bmrc.berkeley.edu/courseware/cs164/spring98/
proj/jlex/tutorial.html
5. Hudson, S. E.: CUP Parser Generator for Java, available at http://www.cs.princeton.edy/
~appel/modern/java/CUP/
6. Edlun, J. R.: What is “Plagiarism” and why do people do it?, available at
http://www.calstatela.edu/centers/write_cn/plagiarism.htm, University Writing Centre Di-
rector, California State University, LA (1998)
7. Johnson, J. H.: Identifying Redundancy in Source Code using Fingerprints, In Proc. of
CASCON 93 (1993) 171-183
8. Howard, M., Halstead: Elements of Software Science, Elsevier (1977)
9. Ottenstein, K. J.: an Algorithmic Approach to the Detection and Prevention of Plagiarism,
ACM SIGSCE Bulletin, Vol. 8 (1976) 30-41
10. Donaldson, J. L., Lancaster, A. M.: A Plagiarism Detection System, ASM SIGSCE Bulle-
tin (Proc. of 12th SIGSCE Technical Symp.), Vol. 13 (1981) 21-25
11. Berghel, H. L., Sallach, D. L.: Measurements of Program Similarity in Identical Task En-
vironments, ACM SIGPLAN Notices, Vol. 19 (1984) 65-76
12. Wise, M. J.: Detection of Similarities in Student Programs: YAP'ing may be Preferable to
Plague'ing, ACM SIGSCE Bulletin (Proc. of 23rd SIGCSE Technical Symp.), Vol. 24
(1992) 268-271
13. Aiken, A.: MOSS (Measure of Software Similarity) Plagiarism detection system, available
at http://www.cs.berkeley.edu/~moss/, University of Berkeley, CA (2000)
14. Prechelt, L., Malpohl, G., Philppsen, M.: JPlag: Finding Plagiarism Among a Set of Pro-
grams, available at http://wwwipd.ira.uka.de/EIR/ D-76128 Karlsruhe, Germany, Techni-
cal Report 2000-1 (2000)
15. Gitchell, D., Tran, N.: Sim: A Utility For Detecting Similarity in Computer Programs,
available at ftp://ftp.cs.vu.nl/pub/dick/similarity_tester/, In Proc. of 30th SCGCSE Tech-
nical Symp., New Orleans, USA (1998) 266-270
16. Chen, X., Li, M., Mckinnon, B., Seker, A.: A Theory of Uncheatable Program Plagiarism
Detection and Its Practical Implementation, University of California, Santa Barbara (2002)
17. Chen, X., Kwong, S., Li, M.: A Compression Algorithm for DNA Sequence and its Ap-
plications in Genome Comparison, In Proc. of the 20th Workshop on Genome Information
(1999) 52-61
18. Baxter, I., D., Yahin, A., Moura, L., Sant'Anna, M., Bier, L.: Clone Detection using Ab-
stract Syntax Trees, In Proc. of the International Conference on Software Maintenance,
Bethesda, Maryland (1998) 368-378
Integrated Development Environment for Digital Image
Computing and Configuration Management
1 Introduction
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 20 – 29, 2005.
© Springer-Verlag Berlin Heidelberg 2005
Integrated Development Environment for Digital Image Computing 21
algorithms and reuses them for other applications. An integrated environment is also
necessary for training application developers with practical sense. In the integrated
environment, students can analyze various existing solutions, which allows for a more
simplified implementation and testing of their ideas. The integrated environment is an
ideal environment for promoting related technology transfers.
Much research has been done to create an environment for easy algorithm and
application development. In the 70’s, researchers tried to standardize image data and
created few basic image processing algorithm libraries [1][2]. In the 80’s, many
image processing packages were developed. The image processing packages consist
of a basic image processing library and a simple test or programming environment. In
the late 80’s, some researchers developed special purpose programming languages to
generate reusable image processing algorithms. These special languages were not
widely accepted because ordinary developers did not want to learn new special
purpose languages [3][4][6][7]. In the 90’s, several integrated development
environments including Khoros [8] and Wit [9] were introduced. Khoros has a visual
programming environment, which maintains all algorithms in an executable file
format and transfers data between algorithms through a file. It provides a good
environment for idea verification in research. Wit is a commercial system with a
better user interface and visual programming tool which allow it to be faster and
better suited for algorithm development than Khoros. From the late 90s, JAVA based
development environments have been developed by targeting machine vision industry
[10]. Unfortunately, these systems have some drawbacks. They do not provide a true
object-oriented class hierarchy although they support similar concepts including
abstract data types. They do not support online information management to supply
information for online help and a parameter check in visual programming. Those
systems require users to use platform dependent utility functions to create user-
defined function.
In this paper, we propose an integrated development environment called “ Hello-
Vision ”. Hello-Vision is the result of our long efforts to develop user-friendly
integrated systems for both researchers and application developers. We have two
goals in this research. The first goal is to crate an ideal image processing educational
environment where students learn theories in the effective multimedia environment
and apply them to solve real problems as they learn to build practical sense. The
second goal is to develop an expert system with which any field engineer with a little
knowledge about computer vision can generate his own application system. As a part
of the effort, we have completed an integrated environment called “ Hello-Vision ”.
Hello-Vision is equipped with an online algorithm or function information manager.
The algorithm information manager (AIM) manages registered user-defined functions
and related knowledge and provides necessary information for various operations
such as; function selection, visual programming, and automatic user interface
generation.
With the help of the AIM, Hello-Vision’s visual programming environment
recognizes user-defined functions as soon as they are registered and checks the
parameter compatibility among icons representing the functions before execution to
reduce the number of runtime errors. By separating the user interface for parameter
22 J. Lee et al.
Plug-In Files
Image Standalone
(RM) Application
Standard Data Type Plug-In
Resource Generator
& Kernel
Manager
Class Library
Kernel
Algorithm Execution Environment Library
(MS Visual C++)
Commercial Visual
Compiler Programming Menu
Tool
Interface & Design
Generator
Registering (AIM)
Developed Algorithm Information Education
Algorithm Manager Manager
Developer PC 1 Developer PC n
Network
User Connect Local PC (TCP/IP, FTP)
Manager Repositary
SCM Server
Visual
User Manager
Workspace
File Converter
Delta Engine
SCM RDBMS
depending on the operating system and hardware are grouped into a separate module.
This is one of the important features of Hello-Vision.
Fig. 2 shows the layout of the Hello-Vision DT screen. The Hello-Vision DT
screen consists of object window, function window, trace window and visual
programming window. The object window shows the list of the data classes supported
by the Hello-Vision DT and objects allocated during function execution as shown in
Fig. 2. A User can display an allocated object on the output window by double-
clicking the object.
of the function on the compiler can be reloaded by using the right button popup menu.
The modification is effective as soon as the source code is compiled.
The visual program command window displays the list of basic commands and I/O
commands for visual programming as shown in Fig. 2. The visual programming
window is the workspace that allows users to create image processing applications by
connecting visual command icons and user-defined function icons in the function
window. Unlike most existing visual programming environments, which troubleshoot
parameter compatibility in run time, the proposed system troubleshoots the parameter
compatibility while connecting icons for programming. This allows less chance of
error in run time. Fig. 5 shows the highlighted input nodes compatible for the output
node to be connected.
The trace window tracks the command executions as shown in Fig. 2. The user can
see the current status and the past record of the program execution from this window.
The property window displays information for the selected icon or data object. After
moving the mouse on an allocated object in the object window, a single mouse click
will display property of the object. The property of a function icon in the visual
workspace is displayed in the same manner.
Fig. 6 shows some of the tools provided by Hello-Vision DT for image analysis. They
are grayscale-value display, histogram display for a gray level image, 2D and 3D color
Integrated Development Environment for Digital Image Computing 27
image histogram, and 3D display of a 2D image. New image analysis functions can be
added as plug-in functions by inserting the functions in designated plug-in directories.
The educational environment of Hello-Vision DT supports the lecture, interactive
analysis of existing solutions, and new algorithm programming and testing. Each lecture
28 J. Lee et al.
set consists of lecture notes or viewable graphs in a different format, visual program that
shows examples related to the lecture, and template source code for the algorithm to be
implemented as an exercise. Fig. 7 shows a lecture screen displaying a viewgraph in
Power Point file format. The buttons on the bottom right of the screen initiate
experiments related to the lecture. When the ‘example’ button is pressed, a related visual
program will be loaded and activated. Students can compare various related solutions
registered in Hello-Vision by executing this visual program. The ‘practice’ button will
load the template C source file for the algorithm to be implemented and a visual program
for testing the algorithm on Hello-Vision DT. Students can implement the algorithm
defined in the lecture screen by simply inserting proper code in the template file, which is
similar to Fig. 5 but contains more detailed information. The algorithm can be tested by
executing the test program loaded on the system. Fig. 7 shows an example visual
program for test. This educational environment will help students to understand new
image processing theory which will help to build up their knowledge about how to make
use of existing solutions related to the theory and how to create new algorithm to solve
their problems. Hello-Vision CM supports the software configuration management
(SCM) method for a Hello-Vision DT’s configuration data and for the properties in the
visual programming environment. And Hello-Vision CM provides SCM method that
based on visual workspace. For the project manager, Hello-Vision CM makes it easy to
assign tasks across distributed teams and remote developers, regardless of Hello-Vision
DT. Version Manager’s quick implementation and ease use out of the box enable project
teams to rapidly implement secure version management processes. Managers provide
assurance and control over every stage of the development process by setting permissions
of their choosing to control access to any file, project or sub-project. Common, unifying
SCM practices can be established across distributed teams, resulting in higher team
productivity. Automated and consistent branching techniques can be defined to support
parallel development, promotion groups and labeling strategies. These steps help with
Integrated Development Environment for Digital Image Computing 29
reuse of code, which in turn delivers savings of cost in future projects and reduces rework
in ongoing projects. Developers would rather be coding than keeping track of complex
project processes, the status of revisions and what the developer in the next cubicle is
doing that might affect their code. Hello-Vision CM offloads development task
management and revision control, so developers can maintain focus on creativity in their
own programming. Fig. 8 shows the layout of the Hello-Vision CM screen.
4 Conclusions
References
1. Bertrand Zavidovique, Veronique Serfaty, Christian Fortunel, Mechanism to Capture
and Communicate Image-Processing Expertise, in IEEE Software 11, p37-46, 1991
2. Hideyuki Tamura, Shigeyuki Sakane, Fumiaki Tomita, Naokazu Yokoya, Design and
Implementation of SPIDER - A Transportable Image Processing Software Package, in
Computer Vision, Graphics, and Image Processing Proc., Vol.23, No 3, p 273-294, 1982.
3. R. Taniguchi, M. Amamiya, E. Kawaguchi, Knowledge-based Image Processing System :
IPSSENS-II, Proc. Int'l Conf Image Processing and Its Applications, p462-466, 1989.
4. H. Sato, H. Okazaki, T. Kawai, H. Yamamoto, H. Tamura, The VIEW-Station
Environment : Tools and Architecture for a Platform - Independent Image-Processing
Workstation, in Proc. 10th International Conference on Pattern Recognition, p576-583,
1990.
5. IUE Documentation version 4.1, Amerinex A.I., 1999.
6. JeongHun Lee, OkSam Chae, The Integrated Development Environment for the
Management and Reuse of the Computer Vision and Image Processing Algorithm, in
Journal of KISS(The Korea Information Science Society), Vol.24, No.3, 1997.
7. V. Cappellini, A Del Bimbo and P. Nesi, Integrating Object-Oriented Programming
Paradigm Concepts in Designing a Vision and Pattern Recognition System Architecture,
IEEE, p 572-575, 1990.
8. Mark Young, Danielle Argiro, and Steven Kubica, "Cantata: Visual Programming
Environment for the Khoros System", Computer Graphics, Volume 29 No 2, May 1995,
pp 22-24.
9. Wit, http://www.logicalvision.com
10. P.F. Whelan and D. Molloy, Machine Vision Algorithms in Java: Techniques and
Implementation, Springer (London), 1-30, 2000.
E-Learning Environment Based on Intelligent
Synthetic Characters
Lu Ye1, Jiejie Zhu1, Mingmin Zhang1, Ruth Aylett2, Lifeng Ren1, and Guilin Xu1
1
College of Computer Science, Zhejiang University, Hangzhou, 310037, P.R.China
ly@zust.edu.cn
2 School of Maths and Computer Science, Montbatten Building, Heriot-Watt University, UK
ruth@macs.hw.ac.uk
1 Introduction
Virtual Environment (VE) has been explored new development in recent years. Syn-
thetic characters with its significant feature of interactive and intelligent behavior
shows remarkable usage and advantages in VEs[1,2,3,4]. In virtual learning environ-
ment, such characters attract learners’ interest in a great sense. However, in spite of
all technological and artistic advances, synthetic characters lacking of intelligence and
human like behavior are still far from perfect.
E-Learning with Virtual Interactive Synthetic characters (ELVIS) project aims to
explore the potential of synthetic characters’ behavior training in primary school. It
helps create a liaison between associated schools in China, and the members and
associates (including education authorities and schools) of two e-Learning projects in
the EU, who form the direct target groups. Chinese education bodies including
schools in Zhejiang province, Macau and the rest of China form later indirect targets.
Two years project activities will include visits by project participants to schools in
China and the EU, assessment of cultural and social differences, production of open
source software, dissemination and adaptation to Chinese conditions of outputs.
A number of worthy systems and architectures for synthetic character behavior
control have been proposed. Bruce Blumberg[4] etc. believe the ability to learn is a
potentially compelling and important quality for interactive synthetic characters. And
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 30 – 37, 2005.
© Springer-Verlag Berlin Heidelberg 2005
E-Learning Environment Based on Intelligent Synthetic Characters 31
an autonomous animated dog was build that can be trained with a technique used to
train real dogs. Mazin Assanie[5] builds synthetic characters that can accept and enact
direction in real-time from the narrative manager. These characters must adhere to
both the character design as intended by the author, as well as the performance re-
quirements of their autonomous behavior, such as military doctrine or social roles.
John E. Laird[6] etc. develop and evaluate synthetic characters with multiple skill
levels and with human-like behavior. Through empirical and human judgments they
evaluated a bat skill level and humanness of the variations. Their results suggest that
both decision time and aiming skill are critical parameters when attempting to create
human-like behavior. Song-Yee Yoon[7] believes compelling synthetic characters
must behave in ways that reflect their past experience and thus allow for individual
personalization. Rui[8],etc., built BeLife a multi-agent system for up-level behavior
control for synthetic character. This system is a simulation tool with teaching objec-
tives that include educating core concepts behind the management of greenhouses,
fostering the understanding of experimentation in this particular context. Burke[9]
focus on a particular cognitive ability, and found it instructive to build complete sys-
tems that creatures can interact with each other and with human participants.
This paper constructs in a way that first gives an overview of our project,
which aims to apply synthetic characters to behavior training in primary schools. And
in the second part, two researches result will be introduced to illustrate a clear idea of
using synthetic character software to make psychology investigation results and open
source movement program for building a mapping interface for high-level AI model
and low-level animation engine. A possible architecture of entire synthetic character
model is also represented.
2 Project Overview
2.1 Constraints
China has the largest education system in the world and educates 25 percent of the
world's students. Technology is seen there as a key to development and to moving the
country into a leading international position, and applying Information Communica-
tion Technology (ICT) in the classroom is being actively pursued in many regions
under a central government national IT&C education policy [19,20]. Thus there are
schools in some eastern provinces where ICT presentation resources are available in
every classroom and a visualiser display is for interactive teaching & learning. An ‘e-
learning for life’ initiative funded by Coca-Cola is leading to the setting up of e-
learning centers. However there is a danger that this activity will concentrate on
lower-level ICT to the exclusion of new approaches developed in EU programmers
such as the i3 network (‘Classrooms of the Future’), IST programmers in e-learning,
and MINERVA-funded classroom activity. Many of these new approaches are based
on 3D interactive graphics (virtual reality - VR) and the use of synthetic characters
(sometimes known as Intelligent Virtual Agents, Virtual Humans, or, incorrectly,
Avatars).
32 L. Ye et al.
2.2 Tasks
The aim of the project is to produce liaison between organizations in China and
Europe to facilitate and improve contacts with and the participation of Chinese part-
ners in existing European IT&C initiatives. The project will focus particularly on the
European Commission’s Research and Technological Development Program, Frame-
work V Information Society Technologies projects in e-Learning with synthetic char-
acters, in particular the i3 project, NIMIS, VICTEC (Virtual ICT with Empathic
Characters) and with the European Commission’s Education and Training Socrates
Minerva projects in ICT in education, especially ELVES. The specific objectives to
be addressed in order to achieve the liaison and contacts will be:
1. To investigate the potential of Virtual Environments (VEs) in general, and Syn-
thetic Characters in VEs in particular, to enhance the school curriculum in China
2. To transfer synthetic character technology into Open Source form so that it can
easily be taken up in Chinese schools.
3. To identify the strengths and weaknesses of using VR and synthetic character so-
lutions for personal and social education program in Chinese schools with par-
ticular reference to social, organizational and cultural differences.
4. To integrate and transfer Chinese graphics programming skills into e-Learning
with synthetic characters in Europe.
5. To strengthen the world Open Source movement in the 3D graphics area by pro-
viding library support for synthetic characters.
6. To disseminate project outcomes through the Open Source movement, through
the web, and through educational channels in China and Europe.
3 Research Results
3.1 E-Teatrix
E-Teatrix[10] is a tool for designing virtual interactive characters with emotions to help
them study in traditional classroom. It can not only enrich the free time of children,
but also improve the creative ability and design ability of children. In E-Teatrix, every
child controls a character, and each character supports five emotional states. Figure 1
shows the Teatrix architecture.
The character that every user controls are an agent, each agent has some sensors.
When these sensors get information, they turn this information into perception. Hav-
ing filtered useless information, these perceptions are sent to the mind. The mind
accepts those perceptions and analyzes the whole scene.
E-Teatrix helps educational researchers to explore following investigation in
China(see Figure 2):
• Review of Potential Virtual Environments’ application in General
• Analysis of bullying research and results in elementary schools in China
E-Learning Environment Based on Intelligent Synthetic Characters 33
Standards like VRML, OpenSG contains no support for the development of synthetic
characters, leading EU projects such as VICTEC (and others) to interface to proprie-
tary systems such as games engines which do offer such support. Thus to make ICT
using synthetic characters widely accessible in countries like China, some technical
work is required to develop Open Source support for synthetic characters. The sub-
project name titled AgentLib which means linking agent mind to bottom 3D engine.
The graphics expertise in Chinese Universities is such that this work could be carried
out there if a strong graphics group such as that at Zhejiang University was able to
34 L. Ye et al.
work alongside EU program in the area. This work would then feed back into the
Open Source movement in Europe and internationally.
AgentLib Ontology
Figure 3 shows our designed architecture for AgentLib from high level to bottom
render division. The important part is the mapping interface.
Translation Id Position
Orientation Type Rotation
view
Scale Filename Frustum
character Skeleton Speed Include Entity id
Animation
Bounding Box Weight
Movement Starttime scene Config file name
Animation Stoptime
id
name filename Tangent space
stattime movement Path
bone parent id
child id list sound stoptime
translation volume
filename
rotation source skeleton bone number
radius
bone
Mapping Interface
The mapping interface should keep data consistent between abstract world and visu-
alization world. We use observer design pattern[11] to implement it. Abstract world
doesn’t necessary know how to call the basic rendering functions to execute a specific
character action. And the engine doesn’t know which goal is the next target, either.
We provide observer box as a black box to be used to encapsulate all concrete observ-
ers and a subject box is used to encapsulate all concrete subjects. Each concrete sub-
ject is independent to other ones, and they are linked with each concrete observer. For
example, skeleton subject is linked with skeleton observer. If abstract world needs
access skeleton subject, it set up the skeleton observer and the observer will update all
changed data. Figure 6 shows the process of subject and observer working process.
ing mushrooms. Different sizes of mushrooms are designed to be one factor to change
YY picking path. Besides, YY sings specially when finds good mushrooms and she
find mushrooms by “smell”.Figure 7 shows the imaginary scene and implemented
scene. Mushrooms are randomly generated according to YY’s location. Which mush-
room should be picked first was the goal generated by the mind.
Expand considerations including adding a small dog character which represents
the animal character and its behavior. This little dog will change the example a little
bit, since two characters have to communicate with each other, which will cause a
series of complex state change.
4 Conclusion
Computer graphics and VR technology are widely used in Chinese education field[16].
More and more people, especially students, need virtual interactive characters with
emotions to help them study in traditional classroom. This paper investigates the po-
tential of VEs in general and Synthetic Character in particular to enhance the school
curriculum in China and transfers synthetic character technology into open source
form so that it can easily be taken up in Chinese school. E-Teatrix is a tool for solving
this problem. It can not only enrich the free time of children, but also improve the
creative ability and design ability of children. AgentLib supports the creation of 3D
synthetic characters and merge together 3D and agent approaches which providing 3D
representation for agent systems and means for building intelligent behavior for ani-
mated characters. Expected future results include analysis of impact of social and
cultural factors on architecture, release of final version of Open Source library, and a
final workshop will be held to exchange ideas of the related results. Besides, investi-
gate impact on target groups is also an important sum up for further research.
Acknowledgments
This project is under support of 973 project (2002CB312103) and co-supported by
China-EU project (ELVIS). The authors would also like to give thanks to Rui Parad.,
Marco Vala., Steve Ho., and Carlos Delgada., Zhaohui Zhu, who help us to build the
entire architecture of synthetic characters.
References
1. John F., Xiaoyuan T., Demetri T. “Cognitive Modeling: Knowledge, Reasoning and Plan-
ning for Intelligent Characters”. In the Proceedings of SIGGRAPH (1999) p.29-38
2. Martinho, A.P., “Pathematic Agents: Rapid development of Believable Emotional Agents
in Intelligent Virtual Environments”, In the Proceedinsg of Autonomous Agents (1999)
p.1-8
3. Paiva A., Prada R., Machado I. “Heroes, villains, magicians: Dramatis Personae in a vir-
tual story creation environment” In the Proceedings of Intelligent User Interfaces (2001)
E-Learning Environment Based on Intelligent Synthetic Characters 37
4. Bruce B., Marc D., Yuri A. I., etc. “Integrated Learning for Interactive Synthetic Charac-
ters” In the Proceedings of SIGGRAPH (2002) p.417-426
5. Magerko, B., Laird, J.E., Assanie, M., Kerfoot, A., and Stokes, D. “AI Characters and Di-
rectors for Interactive Computer Games” In the Proceedings of 16th Innovative Applica-
tions of Artificial Intelligence Conference (2004) p. 877-883.
6. Laird J.E, Duchi, J.C. “Creating Human-like Synthetic Characters with Multiple Skill
Levels:A Case Study using the Soar Quakebot”. In the Proceedings of the AAAI Fall
Symposium (2000)
7. Song Y.Y., Robert C. B., Bruce B, etc. “Interactive Training for Synthetic Characters In-
teractive training for synthetic characters” In the Proceedings of AAAI (2002) p.249--254
8. Prada R., Otero N., Vala A., Paiva A. “BeLife: Teaching Greenhouse Management Using
an Agent Based Simulator” In the Proceedings of Agent Based Simulation Workshop
(2004)
9. Burke, R., Isla, D., Downie, M., etc. “Creature smarts: The art and architecture of avirtual
brain” In the Proceedings of the Computer Game developers Conference (2001)
10. Pan Z.G., Zhu C.H., Rui P., etc. “Emotion modeling and interaction in intelligent virtual
environment” In the Proceedings of 3IA (2004) p.1-6
11. Erich G., Richard H., Ralph J., etc. “Design Patterns, Elements of Reusable Object-
Oriented Software” Addison Wesley ISBN 0-201-63361-2.
12. Tracy J.M., James R. “The struture of emotion: A nonlinear dynamic systems approach”
In Tracy J. Mayne & George A. Bonanno(Eds.), Emotions: Current Issues and Future
Directions. New York: The Guilford Press (2001) p.1-36
13. Pan Z.G., Xu W.W., Huang J., Zhang M.M., etc. “EasyBowling: A Virtual Bowling Sys-
tem based on Virtual Simulation” Computers&Graphics (2003) 27(2) p.231-238
14. Wu J.H, “The research way to emotion”, In the Proceedings of ACII (2003) p.6-12
15. Roussos M., Johnson A., Leigh J., etc. “Constructing Collaborative Stories Within Virtual
Learning Landscapes”, In the Proceedings of AIED (1996) p.129-135
16. Pan Z.G., Shi J.Y. “Virtual Reality and Application” Computers&Graphics (2003) 27(2)
17. Downie, M. “behavior, animation, music: the music and movement of synthetic charac-
ters” Master.s thesis, The Media Lab, MIT. 2000.
18. Yoon S., Blumburg, B., Schneider, G. “Motivation-driven learning for interactive syn-
thetic characters” In the Proceedings of the Fourth International Conference on Autono-
mous Agents. 2000.
19. Pan Z.G., Shi J.Y. “Virtual Reality Technology Development in China: An Overview”
The International Journal of Virtual Reality (2000) 4(3) p.2-10
20. Shi J.Y., Pan Z.G. “China: Computer Graphics Education Available at Universities, Insti-
tutes and Training Centers” Computer Graphics (1999) 31(3) p.7-9
SCO Control Net for the Process-Driven
SCORM Content Aggregation Model
1
Sharable Content Object Reference Model by the Advance Distributed Learning
(ADL) Initiative that aims to foster the e-Learning specifications and standards.
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 38–47, 2005.
c Springer-Verlag Berlin Heidelberg 2005
SCO Control Net 39
1 Introduction
The e-Learning technology have been enhanced for many years to effectively im-
prove efficiency and reduce costs as well. Particularly, based upon the outcomes
of a lot of empirical studies, it is quite generally acceptable that individually
tailored instruction using information technology sometimes offers ideal learning
outcomes, because, in contrast to classroom learning, information technologies
can adjust the pace, sequence, content and method of instruction to better fit
each student’s learning style, interests and goals [1]. However, that realizing
the promise of improved learning efficiency even though the use of the most cur-
rent and cutting-edge instructional technologies - such as Web-based instruction,
interactive multimedia instruction, Intelligent Tutoring Systems and SCORM-
based e-Learning Management Systems - still depends on the ability of those
technologies to sufficiently and easily tailor quality and appropriate learning
process and experience to the needs of individuals.
Also, the one-on-one individualization capabilities (or tailoring capabilities of
the learning process) of technology-based instruction, in contrast to one-on-many
classroom-based instruction, may approximate and perhaps exceed the effective-
ness of one-on-one tutoring [2]. This adaptability to individual learners and their
needs can be seen in several categories of e-Learning products. The typical stan-
dardized e-Learning product is the ADL2 ’s SCORM that aims to foster creations
of reusable learning contents for computer and web-based learning. Especially,
the SCORM Evolution Book at Version 1.3[3], that has been recently released,
newly announces the sequencing and navigation standards (SN 1.3 Edition) so
as to define a set of the rules and behaviors for the sequencing and ordering of
learning activities. The sequencing rules and presentation strategies for learning
activities are encoded in XML, defined as part of the items of the tree-structured
content organization and finally composed into an activity tree. We would call
the SCORM’s strategy the activity tree-driven content organizing approach, in
which the sequencing information is embedded onto the inside of the activities
(items) represented in the tree-structured content organization.
In this paper, we propose a process-driven content organizing approach, in
which, in contrast to the SCORM’s approach, the sequencing information is
explicitly define in not the tree-structured but the process-structured content
organization. That is, we conceive a learning process model, which is called SCO
control net (SCOCN), and formalize the model. The model aims to represent a
way for composing the process-driven content organization applicable into the
SCORM content aggregation model. So, we don’t need to keep the hierarchical
structure (or the activity tree) anymore in aggregating contents. At the same
time, we are able to easily represent the learning process without any further
restrictions by using not only the sequential-style of learning activity flow control
but also the conjunctive-style (parallel-style) and disjunctive-style (alternative-
2
The Advanced Distributed Learning Initiative launched by the Department of De-
fense and the White House Office of Science and Technology Policy.
40 K.-H. Kim, H.-A. Kim, and C.-M. Kim
nomenclature used in modeling the SCO control net, and formally define the
SCO control net and its implications. After that, we propose a graphical nota-
tion for the SCO control net and also we encode the SCO control net language
(SCOCNL) in XML.
processes. Multiple copies of the same learning process may be in various stages
of execution. Thus, the learning process can be considered as a class (in object
oriented terminology), and each execution, called a learning-case, can be con-
sidered an instance. A learning-case is thus defined as the locus of control for a
particular execution of a learning process. If a learning activity is executed in
automatic or hybrid mode, this means that whole/part of the SCO (or Asset)
resource associated with the activity is automatically launched by an e-Learning
enactment service. Computer programs that automatically perform activities or
provide automated assistance within hybrid activities are called scripts. Finally,
a repository is a set of input and output parameters of a learning activity.
ated with them. We can straightforwardly transform from the graphical notation
of SCOCN to the XSCNL without further modifications.
As an example, let’s consider an e-Learning classroom for the reading and
comprehension lecture of TOEFL. This learning process is presented in Fig. 4. It
consists of five learning activities from the placement test activity to the student
evaluation activity. The detailed learning activities are following:
– Placement Test (α1 ) (Learners take the placement test before joining the
lecture. SCO is a web-based exam sheet.)
– Reading & Comprehension Lecture (α2 ) (Learners being classified into an
expert group take this learning path. SCO is a R/C lecture.)
– Vocabulary Lecture (α3 ) (Learners being classified into a novice group take
a vocabulary lecture prior to the R/C lecture. SCO is a vocabulary lecture.)
– Reading & Comprehension Lecture (α4 ) (After taking the vocabulary lec-
ture, learners take the R/C lecture. SCO is exactly same to the previous
one.)
– Student Evaluation (α5 ) (Learners are evaluated after the R/C lecture. SCO
is a web-based R/C problem sheet.)
4 Conclusions
So far, this paper has presented the sharable content object control net model
for realizing process-driven e-Learning management systems. Particularly, in this
paper we pointed out the limitations of the current SCORM aggregation model
and proposed a solution for the limitations, as well. The solution is just the SCO
control net that eventually gives us higher-level of efficiency in designing and
launching learning activities and processes. That is, we newly formalize a the-
oretical basis for implementing the process-driven SCO aggregation model and
system.The SCO control net will affect to not only the SCORM content aggre-
gation model but also the SCORM runtime environment in order for SCORM
to adapt the process-driven content aggregating approach. Also, the SCORM
sequencing and navigation under SCOCN can support a much more sophisti-
cated and convenient way in defining the intended sequencing and ordering of
SCO Control Net 47
Notes and Comments. The research was supported by the research fund of KOSEF
(Korea Science and Engineering Foundation), No. R05-2002-000-01431-0.
References
1. “SCORM 2004 Overview”, Advanced Distributed Learning, (2004)
2. “SCORM Content Aggregation Model, Version 1.3”, Advanced Distributed Learning,
(2004)
3. “SCORM Run-Time Environment, Version 1.3”, Advanced Distributed Learning,
(2004)
4. Clarence A. Ellis, Gary J. Nutt, ”Office Information Systems and Computer Science”,
ACM Computing Surveys, Vol. 12, No. 1, (1980)
5. Clarence A. Ellis, Gary J. Nutt, ”The Modeling and Analysis of Coordination Sys-
tems”, University of Colorado/Dept. of Computer Science Technical Report, CU-CS-
639-93, (1993)
6. Clarence A. Ellis, ”Formal and Informal Models of Office Activity”, Proceedings of
the 1983 Would Computer Congress, Paris, France, (1983)
7. James H. Bair, ”Contrasting Workflow Models: Getting to the Roots of Three Ven-
dors”, Proceedings of International CSCW Conference, (1990)
8. Kwang-Hoon Kim, ”Practical Experience on Workflow: Hiring Process Automation
by FlowMark”, IBM Internship Report, IBM/ISSC Boulder Colorado, (1996)
9. Kwang-Hoon Kim and Su-Ki Paik, ”Practical Experiences and Requirements on
Workflow”, Lecture Notes Asian ’96 Post-Conference Workshop: Coordination Tech-
nology for Col-laborative Applications, The 2nd Asian Computer Science Conference,
Singapore, (1996)
Design and Implementation of a Web-Based Information
Communication Ethics Education System for the Gifted
Students in Computer
1 Introduction
Recent advances in computer and communication technologies have rapidly changed
our life in various ways. These advances provide new ways for people to
communicate on a global scale and assess vast amounts of information. However,
along with positive effects, side effects such as hacking, reckless use of cyber
communication language, spreading harmful computer virus which might collapse
entire computer system, overflow of lewd materials, copyright violation come to the
front. In fact, more various sorts of those harmful effects are added everyday. In
additions, the harmful effects on students become more serious [3].
In order to reduce the copious reverse effects raised in current information-oriented
society, people used to set up strict rules or develop programs as a part of technical
steps. However, those actions taken have turned out to be effective within a boundary.
Experts are now moving into developing educational countermeasures against such
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 48 – 55, 2005.
© Springer-Verlag Berlin Heidelberg 2005
Design and Implementation of a Web-Based Information 49
harmful effects. They suggest that people can eradicate contrary effects and casualties
by instructing students the essential information communication ethics. Therefore, the
information communication ethics education will be the fundamental way of rooting
up serious side effects [2].
Especially for elementary school students, information communication ethics
education is more important since they usually do not have firm morality and are they’re
about to start learning computer knowledge and skills. Teachers must not to force them to
learn the information communication ethics as a kind of cramming class subject. Instead,
teachers are supposed to arrange their learning circumstances so that elementary school
students can realize the proper code of conduct on the Web, and then internalize it
naturally by themselves. That’s why the information communication ethics education
stresses the learning of one's free will as the groundwork. The information
communication ethics education will let students constitute their own standard of ethics,
hold it inside their mind, then finally translate it into action in real situation.
For gifted students, teaching information communication ethics is more important
since they usually have higher sensibility and bigger knowledge and skills in computer
than ordinary students [4]. Thus, it is necessary to select appropriate contents and teach
those contents at their early stage. In this paper, a Web-based information
communication ethics education system for gifted elementary school students in
computer is introduced. The proposed system has the following characteristics: First,
extensive contents for gifted elementary school students are organized. Second, the
system adopts various types of avatars for delivering hard contents in an interesting
manner. Third, the system supports various types of interactions by providing interactive
environments. Students can exchange their ideas with other students, teachers, as well as
experts in this field.
This paper is organized as follows. In Section 2, the basic concepts and principles of
information communication ethics are presented. In Section 3, definition and
characteristics of gifted students in computer are discussed. In Section 4, the design and
implementation of a Web-based information communication ethics education system is
explained. Finally conclusions and further research issues are provided in Section 5.
From above 4 principles for the information communication ethics, we can realize
that modern society clearly requires for upgraded information communication ethics
than ever before. Four steps for application of above principles suggest good guideline.
Even though those principles and steps can give way in terms of educational context,
still they are lack of illustrating conformity, selecting and organizing details for
instruction. Particularly for elementary school students who never have used computer
before, personal experience must be emphasized on just rather than forcing study.
Area Subject
-Meaning of information communication ethics
Information communication -Ethics code of netizen
ethics -Terminologies of information communication
-Chatting language
-Pros and cons of Internet
-Illegal copy
Pros and cons of cyber -Computer Virus
world -Hacking
-Cyber crime
-Meaning of netiquette
Netiquette -Rules of netiquette
-Observance of netiquette
-Spam mail
-Game addiction
Cyber symptoms -Internet addiction
-Unsound site
-Chatting addiction
Table 7. Subject and study points of Pros and cons of cyber world category
Subjects and their study points of the Information communication ethics, Pros and
cons of cyber world, Netiquette and Cyber symptoms category are defined further as
in Table 6, 7, 8 and 9, respectively.
The proposed system has the following characteristics. First, our system provides
comprehensive areas of information communication ethics issues for gifted elementary
school students in computer. Second, for the sake of active participation and arousing
interests, avatars are used to explain contents and guide students with voice message.
Third, for each subject, there are three steps, Introduction, Development and Discussion
to follow. Students identify ethical issues introduced by Flash video (Introduction
stage), grasp and try to solve problems based video data (Development stage) and
discuss and exchange their ideas for themselves (Discussion stage). Finally, students
are supposed to take a quiz for their study. Fourth, for encouraging active
communication between a teacher and students, various tools such as Q & A, FAQ on
BBS (Bulletin Board System) are supported. Finally, our system supports online
survey to check students’ changes in information communication ethics.
Figure 5 and 6 represent data storage room and BBS, respectively. In data storage
room, various contents containing multimedia data are provided. Also, students can
ask questions or exchange ideas on BBS.
students. Finally, our system supports online survey to check students’ changes in
information communication ethics.
For our research, we need to extend our work as follows. First, evaluating
effectiveness of our system is an immediate research issue. Second, we need to
develop various delivering media to arouse interests.
References
[1] S. L. Edgar, Morality and Machines. Johns and Bartlett, 1997.
[2] http://www.kedi.re.kr/Exec/Pds/Cnt/128-16.htm
[3] Korea Education and Research Information Service, Ministry of Education & Human
Resources Development, “Study on Preventing the Reverse Effects of Information-
oriented Educational Institution”, 2000.
[4] D. Na, “Development of a Curriculum of Education for the Elementary Gifted Children of
Information Science, Elementary Computer Education major, Graduate School, Inchon
National University of Education, 2003.
[5] S. Oh, “Definition and Recognition System for Gifted Students in Computer”, Master
Thesis, Computer Education Major, Graduate School of Education, Sungkyunkwan
University, Korea, 2002.
[6] K. Ryu and J. Lee, “A Study on Information & Communication Ethics Education for the
Gifted Elementary School Students in Information Science”, Proceedings of the 8th
Korean Association of Information Education Summer Conference, pp. 199-206, 2003.
[7] R. J. Severson, The principles of information ethics. ME Sharpe, 1997.
[8] S. Shin, “A Study on Development of a Program for the Identification of Information
Gifted Children based on the Ability of a Discrete Thinking”, Master Thesis, Elementary
Computer Education major, Graduate School, Korea National University of Education,
2004.
[9] K. Yu, “Study on Recognition of Computer Teachers for Gifted Students in Information
Science”, Master Thesis, Graduate School of Education, Hanyang University, 2002.
International Standards Based Information Technology
Courses: A Case Study from Turkey
Abstract. In this study, two programs which are being implemented in Ege
University [13] since 2002 are presented. These programs are based on
international standards. One of the programs is for the students of the
university, the other one is for the people who are unemployed or who want to
be employed in Information Technology (IT) business. The first education
program that covers all university students is based on the standard of
international European Computer Driving License (ECDL). The second
program is IT employment program that is based on the curriculum of
American Computing Association (ACM). The design, implementation and
results of both of these programs are discussed in this study.
1 Introduction
Nowadays, almost every industry, especially finance, is becoming more and more
dependent on information and communication technologies. In developing countries
like Turkey, whatever profession (s)he has, every university graduate must have an
acceptable knowledge level on information and communication technologies.
For this purpose, Ege University has started the “The University of Information
Society Project” since 2003. A total of more than 3100 students enrolled from 11
different faculties (faculty of dentistry, pharmacy, letters, education, science,
communication, economic and administrative sciences, engineering, fisheries,
medicine and agriculture) and 8 different university high schools and vocational
training schools (physical education and sports school, music conservatory, nursing
school, Ataturk health school, Odemis medical school, Bayindir vocational training
school, Tire-Kutsan vocational training school, Ege vocational training school)
(approximately 18% of total number of students) in fall semester of 2003 and more
than 3300 students in fall semester in 2004 (approximately 19% of total number of
students) have taken the two-semester core course “Information Systems”. As a result
of this course, the students who graduate 3 years later will have an acceptable
knowledge level on computers. In order to standardize the contents of the information
systems course, the syllabus has been based on European Computer Driving Licence
(ECDL) syllabus version 4.0 [2].
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 56 – 61, 2005.
© Springer-Verlag Berlin Heidelberg 2005
International Standards Based Information Technology 57
ECDL content consists of seven different modules and covers the required topics
for an acceptable knowledge level on computers [1]. These modules are, concepts of
information technology, using the computer and managing files, word processing,
spreadsheets, database, presentation, information and communication.
Hardware, software, information networks, the use of information technology, in
everyday life, health and safety, environment, security, copyright and the law topics
are covered in concepts of information technology module. In the second module,
using the computer and managing files, basic usage and basic file operations of an
operating system (for example Microsoft Windows 2000/XP or Linux) are introduced.
In word processing, spreadsheets, database ve presentation modules; basic operations
on consecutively Microsoft Word, Excel, Access and Powerpoint (or Linux
compatible) are introduced. In the seventh and the last module, information and
communication module covers surfing on the web, using search engines on the web,
e-mail operations etc.
2 Methodology
Different disciplines are investigated about how the acceptable knowledge level on
computers are introduced and defined before the planning [3, 4, 5, 6, 14]. The first
module, concepts of information technology is introduced theoretically and the other
six modules are presented while every student is using a computer. Information
systems course is a campus-wide core course of 3 credits. The students who possess
an ECDL certificate or succeed in an exam based on ECDL before applying for
university are not obliged to take this course.
3 Evaluation
A commission including representatives from eleven faculties and eight university
high schools make a project planning before the start of academic year for common
examination dates. In order to discover the success levels of teaching staff and
students, the same questions are encouraged to be asked at each department of the
faculties. The same commission makes a meeting at the end of academic year and
evaluate the campus-wide success level of information systems course. The students
can also take examinations in the ECDL test center of the university to achieve an
ECDL certificate.
1. Semester (week 1 to 8)
Introduction to Algorithms, (12 hours/week):
Algorithms, procedural programming concepts, recursion, introduction to
object oriented programming.
Information Systems, (8 hours/week):
Concepts of information technology, using the computer and managing files
(e.g. Microsoft Windows/Linux), word processing (e.g. Microsoft
Word/Wordperfect), spreadsheets (e.g. Microsoft Excel), database (e.g.
Microsoft Access), presentation (e.g. Microsoft Powerpoint), information and
communication (e.g. Microsoft Internet Explorer/Netscape, Outlook) (all of the
ECDL modules).
Before defining the course contents, the “Computing Curricula” [7] developed by
Institute of Electrical & Electronics Engineers (IEEE) and Association for Computing
Machinery (ACM) has been studied in 2001. Considering the international and sector
requirements, the curriculum has been modified for introduction to programming
because the aim of this course is not to educate people as software or computer
engineers. However successful participants can continue their education on software
engineering because the course plan includes the basics of [7].
Recent similar studies are mostly for software engineering education, assisting
software engineering education [9, 10] and web programming education [8]. Each
participant are required to take an exam to be evaluated on analytic and arithmetic
skills. People who pass this exam are invited to take the course. The course itself
consists of 5 semesters where each semester is 2 months. The course is given 5 days
per week and 4 hours per day in because of the intensive training schedule. As a
result, 640 hours of training is given in four semesters. The fifth semester of the
course is project semester. The curriculum of the course is shown in Table-1.
Participants are required to develop a programming project under the supervision
of a teacher at the project semester. The participants are also asked to work in groups
of at least two people and prepare an 8-week project plan. Before starting the project,
the participants are given seminers by professional programmers for 1 week about
program development, software medias being used and software methodologies.
Following the end of seminers and project planning, the projects are expected to be
concluded in 8 weeks. When the projects are completed, they are evaluated by a
commission of 3 teachers and certificates are given to successful participants.
4.2 Evaluation
The yearly information including the age, sex, education level and employment (not
in IT sector) about participants are shown in Table-2.
The information about the participants who successfully completed their education
in 2002 and 2003 and employed in IT field after the course are shown in Table-3.
Table 3. Participants who successfully completed their education in 2002 and 2003 and
employed in IT field after the course
GENDER RATIO
YEAR TOTAL (2)
M F TOTAL(2) / TOTAL(1)
2002 5 3 8 23%
4 9 39%
2003 5
TOTAL 10 7 17
5 Conclusion
Information systems course has been started for creating employment advantage for
graduating students against their counterparts from other universities, making students
successful in business life and incresing the chance of students to be employed in
international fields.
It has also been an important study for companies about increasing employment
efficiency, satisfying the qualified employer requirements and decreasing IT budget
for personnel education.
Starting from the fall semester of 2005, e-citizen [12] program, which has been
introduced by ECDL foundation and bearing small differences from the contents
given in university, is decided to be added to the information systems course. e-
Citizen is a new end-user computer skills certification program developed by ECDL.
It is an improver-level certification specifically developed to cater for those with a
limited knowledge of computers and the Internet. e-Citizen is intended to help
candidates bridge the digital divide by giving them the necessary skills to interact on-
line across a broad range of environments, from dealing with government departments
to communicating on-line with family and friends
In the second course, the programming course, it is aimed to increase the IT
employment and to be used in continuous education. Although, this course has been
open for society for 3 years, most of the participants are people who fail in the central
examination for university and the university graduates who want career on IT field.
It can be seen from the employment results of the course (Table-3) that, although the
total number of participants are decreasing, the IT employment rate in increasing.
References
1. ECDL Standards, available at: http://www.ecdl.com
2. ECDL Syllabus version 4.0, available at: http://ww.ecdl.com/main/syll4.php
3. Logan, JR, Price, SL: Computer science education for medical informaticians,
International Journal of Medical Informatics, 73 (2004), 139-144
4. Sanchez, G, Gardey, M: Computer literacy and undergraduate dental studies, Journal of
Dental Research, 82 (2003), 13
5. Smith, RD: The application of information technology in the teaching of veterinary
epidemiology and public health, Journal of Veterinary Medical Education, 30 (2003), 344-
350
International Standards Based Information Technology 61
Sung-il Kim1 , Sung-Hyun Yun2 , Mi-sun Yoon3 , Yeon-hee So1 , Won-sik Kim1 ,
Myung-jin Lee1 , Dong-seong Choi4 , and Hyung-Woo Lee5
1
Dept. of Education, Korea University, Seoul, Korea
sungkim@korea.ac.kr
2
Div. of Information and Communication Engineering, Cheonan University,
Cheonan, Korea
shyoon@cheonan.ac.kr
3
Dept. of Teacher Education, Jeonju University, Jeonju, Korea
msyoon@jj.ac.kr
4
Div. of Design and Image, Cheonan University, Cheonan, Korea
hcilab@cheonan.ac.kr
5
Dept. of Software, Hanshin University, Osan, Korea
hwlee@hs.ac.kr
1 Introduction
The traditional intelligent tutoring system (ITS) provides the learning materials
and practice drills repetitiously to train the students and the level of student’s
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 62–71, 2005.
c Springer-Verlag Berlin Heidelberg 2005
Design and Implementation of the KORI 63
learning is evaluated by the computer. The ITS has received the criticism that
the iterative nature of learning and the passive role of the learner does not en-
hance the learner’s motivation and cognition[1,2,3]. To overcome this limitation
of ITS, the system should provide the learners with a chance for deep learning
and allow them to play an active role in the process of learning. One way of
providing an active role for the learners is to give them an opportunity to teach.
The researchers in the field of cognitive science and learning science suggest that
the teaching activity induce the elaborative and meaningful learning. A lot of
research findings have shown the beneficial effect of learning by teaching[1,4,5].
This study introduces the design of the new type of intelligent teachable agent
system, called KORI (KORea university Intelligent agent), for maximizing the
motivation to learn and enhancing cognitive ability based on concept of ’learn-
ing by teaching’. For the KORI as a student, it is necessary to use AI (Artificial
Intelligence) algorithm to construct the knowledge-based of the KORI. The con-
cept map is used to teach the learning material and the inference engine is used
to create the new knowledge.
The KORI consists of four independent modules: teach module, Q&A mod-
ule, test module, and resource module. In teach module, the users teach KORI
by drawing a concept map. In Q&A module, both the users and KORI ask ques-
tions and answer each other through an interactive window. To assess KORI’s
knowledge and provide feedback to the users, the test module consists of a set
of predetermined questions that KORI should pass. In the resource module, the
users can refer to the basic concepts to teach or explore the additional expanded
information whenever they want in order to teach, ask questions, and provide
feedbacks.
The KORI’s brain can represent the knowledge based on the concept map
and make new knowledge through the inference engine and it becomes more in-
telligent by the student tutor.
In section 2, the Teachable Agent (TA) and our motivation to implement
KORI are introduced. In section 3, the structure of the KORI’s brain and the
implementation details are discussed. In section 4, the conclusion and the impli-
cations for the future work are described.
2 Teachable Agent
The fact that the active and meaningful learning occurs through the teaching
process is reported consistently in the research area of learning science[1]. [1]
showed that students who studied for the purpose of teaching other students
understood the article better than those who studied for the qualifying exami-
nation. In addition, there are many variations of the instructional methods based
on the concept of ’learning by teaching’, such as reciprocal teaching, peer tu-
toring, or self-explanation[2,3]. TA is a computer program where students teach
the computer agent to maximize their motivation to learn and to enhance the
cognitive ability[5,6]. TA provides the student tutors with an active role so that
they can have a positive attitude toward the subject matter. Teaching activity
64 S.-i. Kim et al.
The following modules are used to design and implement the KORI’s brain.
Concept map - to construct the KORI’s knowledge
Knowledge inference engine - to make inferences and decisions
Search engine - to make, modify and search link paths between objects in the
concept map
The user can put the concepts whatever he/she want and draw arrows be-
tween concepts to indicate their relations. In the main window of the screen,
the user types the name of rock in the box and represents the transformation
between rocks with the arrow. The process of transformation was represented by
mathematical symbol. The plus symbol (+) means the increase of the weathering
factors while the minus symbol (-) means decrease. Below the concept mapping
window, there are four taps, each of which has a different function, including
KORI’s talk to enhance the perceived interactivity, KORI’s interpretation of the
concept or the relation, learning resource, KORI’s quiz score, and automatic
feedback on KORI’s performance by the system. The user can interact with
KORI through these windows.
through dialogue box which supports structured input only. In test module,
KORI is evaluated by built in expert module. The resource module consists of
web site links or documents related to learning.
The KORI is implemented based on JAVA platform. For GUI user inter-
face, JAVA Swing and Jgraph components are used. KORI’s brain consists of
two modules: Concept map class and inference engine class, which are coded to
represent and organize KORI’s knowledge.
(1) Teach Module. Teach module consists of two stages: map selection and
concept map teaching. In the first stage, map selection, depending on the devel-
opmental stage and the level of perceived competence of each user, one of the
following maps is presented.
partial map - parts of the complete map is shown
null map - no map is shown
incorrect map - intentionally modified incorrect map is shown
Figure 6 shows an example of partial map. If students select partial map,
they should update it to make complete map.
Before starting to teach KORI, each user’s level of perceived competence is
measured. [9] found that the partial map is more efficient to enhance their inter-
ests than any other types of concept maps for 4th graders who have high level
of competence whereas the null map enhances the interest only for 5th graders
who are highly competent. Based on the previous findings, the appropriate type
of the concept map is automatically selected and presented, depending on their
level of perceived competence.
68 S.-i. Kim et al.
In the second stage, the concept map teaching, the user can use teaching tool
box to draw the objects and the relations among them into the concept map to
build the KORI’s knowledge base. The rectangle tool is used to draw the objects
and the arrow tool to represent relations between objects. Then the user types
the specific descriptions in the rectangle and above the arrow to represent the
meaning of objects and the relations.
(2) Q&A Module. If the user completes the construction of concept map,
he/she moves to the Q&A module to update the KORI’s knowledge base. Q&A
module consists of various menus such as Dialogue, Ask to KORI, Answer to
KORI, and Ask to tutor. Built-in Ask to tutor module is automatically activated
when KORI reaches decision state during the reasoning process.
Figure 7 shows an example of Q&A interface. The user can answer to the
KORI’s question by choosing Right or False option. When KORI asks a ques-
tion, the corresponding information of the concept map is highlighted with a
red frame so that the user can easily notice the misconception of KORI and up-
date concept map appropriately. The user also can either edit the concept map
directly through the Modify menu or give a command through the structured
input interface if KORI asks a wrong question.
(3) Test & Resource Module. KORI’s knowledge is evaluated through the
test menu in which KORI should answer to the predetermined built-in test ques-
Design and Implementation of the KORI 69
tions, based on what they have been taught. The results of the test are showed
in a separate window. The resource module provides the basic and expanded
knowledge about rocks and their transformation. The user can access to this
module by clicking the icons whenever they want to know more about rocks
while teaching KORI. The resource is made of hypertext that is linked the basic
concepts to the concrete images and examples.
Frame class - keeps objects and relations in the concept map window
ConceptMap class - manages objects, relations, links/paths between objects
InferenceEngine class - inherits inference rules and reasoning process from
the ConceptMap class
In the InferenceEngine class, the following three methods are used to proceed
to generate KORI’s reasoning.
4 Conclusion
In this study, the design and implementation of the teachable agent KORI was
introduced, which is a modified version of traditional intelligent tutoring system
that assigns the user for the tutor role to teach the agent to enhance motivation to
learn and cognition ability. The KORI’s knowledge is constructed and organized
through the concept map and KORI makes new knowledge from it through the
inference engine. The user interface of KORI consists of the teach module, the
Q&A module, the test module, and the resource module. It is expected that
teaching KORI would not only maximize the users’ motivation and cognition,
but also increase their self-efficacy and responsibility through various interactions
and an immediate feedback.
Future research in the field of the intelligent tutoring agent should focus on
the learners’ motivation. The new generation of teachable agent should be able
to reflect the individual differences in cognitive abilities, interest and motivation,
and ongoing changes of the interest level. In addition, the dialog based query
input interface to increase the interactivity and the learner control would make
the teachable agent more interesting and efficient. To enhance the intelligence
of teachable agent, various ways of knowledge construction should be developed
and the collaborative learning system, in which multi-user can teach the agent
by sharing knowledge, should be implemented.
Acknowledgments
This research was supported by Brain informatics Research Program sponsored
by Korean Ministry of Science and Technology.
References
1. Bargh, J. A. & Schul, Y, ”On the cognitive benefits of teaching,” Journal of Edu-
cational Psychology, 72, pp.593-604, 1980.
2. Chi, M. T.H., Siler, S. A., Jeong, H., Yamauchi, T., & Hausmann, R. G, ”Learning
from human tutoring,” Cognitive Science, 25(4), pp.471-533, 2001.
3. Graesser, A. C., Person, N., & Magliano, J, ”Collaborative dialog patterns in natu-
ralistic one-on-one tutoring,” Applied Cognitive Psychologist, 9, pp.359-387, 1995.
Design and Implementation of the KORI 71
4. Biswas, G., Schwartz, D., Bransford, J. & TAG-V, ”Technology support for complex
problem solving: From SAD environments to AI,” In Forbus and Feltovich, (Eds.),
Smart Machines in Education (pp.71-98). Menlo Park, CA: AAAI Press, 2001.
5. Kim. S., Kim, W.S., Yoon, M.S., So, Y.H., Kwon, E.J., Choi, J.S., Kim, M.S. Lee,
M.J., & Park, T.J., ”Understanding and Designing Teachable Agent,” Journal of
Korea Cognitive Science, 14(3), pp.13-21, 2003.
6. Brophy, S., Biswas, G., Kaltzberger, T., Bransford, J.,schwartz,d., ”Teachable agent:
Combining insights from learning Theory and Computer Science,” Vandervielt,
LTC, 1999.
7. Novak, J. D, ”Concept mapping as a tool for improving science teaching and learn-
ing,” In:D. F. Treagust; R, Duit; and B.J.Fraser (Eds), Improving Teachable and
Learning in Sceince and Mathematics (pp. 32-43). London: Teachers College Press,
1996.
8. Stoyanov, S., & Kommers, P, ”Agent-support for problem solving through concept-
mapping,” Journal of Interative Learning Research, 10 (3/4), pp.401-442, 1999.
9. Kim. S., Kwon, E.J., Yoon, M.S., So, Y.H., Kim, W.S., Lee, S., ”The effects of
types of concept map and science self-efficacy on interest and comprehension: A
comparison of 4th and 5th graders”, Korean Journal of Educational Psychology,
18(4), 17-31, 2004.
A Space-Efficient Flash Memory Software for
Mobile Devices
1 Introduction
Flash memory is becoming important as nonvolatile storages for mobile devices
because of its superiority in fast access speeds, low power consumption, shock
resistance, high reliability, small size, and light weight [10, 15, 18, 11, 8, 5]. Be-
cause of these attractive features, and the decreasing of price and the increasing
of capacity, flash memory will be widely used in consumer electronics, embedded
systems, and mobile computers [1, 12]. Though flash memory has many advan-
tages, its special hardware characteristics impose design challenges on storage
systems. First, flash memory cannot be written over existing data unless erased
in advance. Second, erase operations can be performed in a larger unit than the
write operation. For an update of even a single byte, an erase operation of a
large amount of data would be required. Besides it takes an order of magnitude
longer than a write operation. Third, the number of times an erasure unit can
be erased is limited (e.g., 10,000 to 1,000,000 times).
To overcome these problems, an software called a Flash Translation Layer
(FTL) has been employed between host system and flash memory [7, 2, 9, 14,
13, 19, 16]. Figure 1 shows a typical software organization for NAND-type flash
memory. The FTL is the driver that works in conjunction with file system to
make flash memory appear to the system like a disk drive. Applications use
system calls to access files on the flash memory. The file system then issues
This work was supported by grant No. R08-2004-000-10391-0 from Ministry of Sci-
ence and Technology.
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 72–78, 2005.
c Springer-Verlag Berlin Heidelberg 2005
A Space-Efficient Flash Memory Software for Mobile Devices 73
Access time
Media Read Write Erase
DRAM 60ns (2B) 60ns (2B)
2.56μs (1512B) 2.56μs (512B)
NAND Flash 10.2μs (1B) 201μs (1B) 2-3ms (16KB)
35.9μs (512B) 226μs (512B)
Disk avg. 12.4ms (512B) avg. 12.4ms (512B)
read/write commands along with logical block address and the request size to
the FTL. Upon receipt of a command, address, and the size, the FTL translates
them into a sequence of flash memory intrinsic commands (read/write/erase) and
physical addresses. The FTL usually maintains the address translation table in
order to map logical address of I/O requests to physical address in flash memory.
The address translation table is indexed by logical block address (LBA), and each
entry of the table contains the physical address of the corresponding LBA. The
FTL usually uses non-in-place update mechanism to avoid having to erase on
every data update. Under this mechanism, the FTL remaps each update request
to different location (i.e., data updates are written to empty space) and set
obsolete data as garbage, which a software cleaning process later reclaims [5].
Applications
Operating System
File System
FTL
Flash Memory
In this paper, we propose a new FTL scheme which shows better space uti-
lization than legacy schemes. Previous FTL schemes do not consider skewed
access pattern and waste the space of flash memory. Proposed scheme exploits
the hotness of data and increases the space utilization by managing the blocks ac-
cording to their hotness degree. To evaluate the proposed scheme, we developed
a simulator and performed trace-driven simulations. Proposed scheme performs
substantially better than previous schemes with regard to the space utilization.
74 Y. Ryu, T.-s. Chung, and M. Lee
2 Background
A NAND flash memory is organized in terms of blocks, where each block is of
a fixed number of pages [11, 8]. A block is the smallest unit of erase operation,
while reads and writes are handled by pages. The size of page is fixed from 512B
to 2KB and the size of block is somewhere between 4KB and 128KB depending
on the product. There is a spare area appended to every page, where out-of-band
data could be written. The typical size of spare area is 16B or 64B depending on
the product. When the free space on flash memory is written, the space cannot
be updated unless it is erased.
The mapping between the logical address and the physical address can be
maintained either at the page level or at the block level [2, 6, 3, 4]. In the page-
level address mapping, a logical page can be mapped to any physical page in flash
memory. However, this mapping requires a large amount of space to store the
needed mapping table. In the block-level address mapping, the logical address is
divided into a logical block address and a block offset, and only the logical block
address is translated into a physical block address in flash memory. This block
address mapping has a restriction that the block offset in the mapped physical
block be the same as that in the logical block. When there is an update request
to a single page in a block, the physical block that contains the requested page is
remapped to a free physical block, the write operation is performed to the page
in the new physical block with the same block offset, and all the other page in
the same block are copied from the original physical block to the new physical
block.
To eliminate expensive copy operation in the basic block scheme, a technique
called log block scheme was proposed [13]. The log block scheme manages most
of the blocks at the block level, while a small fixed number of blocks are managed
at the page level. The former holds ordinary data and are called data blocks.
The latter are called log blocks. When an update to a page in a data block is
requested, a log block is allocated and the update is performed to the log block
incrementally from the first page. For the log blocks, a page-level mapping table
is maintained. Once a log block is allocated for a data block, update requests to
the data block can be performed in the log block until all the pages in the log
block are consumed.
The problem of the log block scheme is that it does not consider the space
utilization of the log blocks. Ruemmler and Wilkes at Hewlett-Packard collected
disk-level traces of an HP-UX workstation which was used primarily for docu-
ment preparation and electronic mail [17]. They reported that access locations
are highly skewed. Roughly one third of all accesses go to the ten most frequently
A Space-Efficient Flash Memory Software for Mobile Devices 75
accessed blocks. Since usage patterns of mobile computers are likely to be sim-
ilar to the personal computer, we can assume the access patterns to the flash
memory are also likely to be highly skewed. The skewed access pattern implies
that most of the spaces are not often accessed. In the log block scheme, it is
possible that the space of the dedicated log block would be wasted when update
requests in a data block are not frequent.
Because hot blocks are likely to be updated soon and filled up fast, a dedicated
log block is allocated to the hot block. If the hot log block becomes full, it is
reclaimed by the merge operation. The merge operation allocates a free block
and then fills each page with the up-to-date page, either from the log block if the
76 Y. Ryu, T.-s. Chung, and M. Lee
...
(a) Cold blocks share a log block n (b) Split: When a log block n is full
Fig. 3. Operations for cold block
corresponding page is present, or from the data block otherwise. After copying
all the pages, the new block now becomes the data block, and the former data
block and the log block are returned to the pool of free blocks, waiting to be
erased.
On the other hand, cold blocks share the log blocks. When an update to a
cold block is newly requested, the FTL allocates either a log block used by other
cold blocks if it exists, or a new log block from the pool of free blocks otherwise.
By sharing the log block, it avoids wasting the log block space. When the log
block becomes full, it is reclaimed by the split operation. The split operation
checks the number of data blocks that shares the log block. If two or more data
blocks share the log block, the FTL allocates two log blocks from the free blocks
and then distributes the up-to-date pages from the former log block into the new
two log blocks. If the log block is used by only one data block, the FTL allocates
a new log block and copies up-to-data pages from old log block to the new log
block. In either case, the former log block is returned to the free blocks, waiting
to be erased.
4 Simulation Studies
To evaluate the proposed scheme, we developed a simulator for the log block
scheme and the proposed scheme, and performed trace-driven simulations. We
used the traces of a digital camera1 (WL1 in Fig. 4). We also generated synthetic
trace long enough to simulate high locality of update accesses (WL2 in Fig. 4).
The generated traces have very skewed access patterns like disk access patterns
in HP personal workstation [17].
We define the number of extra erase operations as the number of erase op-
erations minus the number of erase operations from an ideal scheme. The ideal
1
We obtained trace data from an author of [13].
A Space-Efficient Flash Memory Software for Mobile Devices 77
600% 4% 70%
scheme is defined as a scheme that performs one erase operation for every n-page
write requests, where n is the number of pages per block. Similarly, the number
of extra write operations is defined as the number of write operations minus the
number of writes requested. Performance metrics are the ratio of the number of
extra erase operations to the number of erase operations from ideal scheme, the
ratio of the number of extra write operations to the number of write requests
and the average space utilization of the log blocks.
In fig. 4, ‘Old’ denotes the log block scheme and ‘New’ denotes the proposed
scheme. The proposed scheme significantly improves the space utilization of the
log blocks. For example, it increases the average space utilization from 10% to
60% in case of WL2. However, since the shared log blocks will be used frequently
like the log blocks for the hot blocks, this incurs more reclamation process and
thus increases the number of erase operations and write(i.e., extra data copy)
operations. In the log block scheme, on the contrary, since a log block is ded-
icated to only one data block and a large portion of it remains unused for a
long time in case of the cold blocks, it wastes the space but needs fewer erase
operations. Simulation results show that there is a tradeoff between the number
of erase/write operations and the space utilization.
5 Concluding Remarks
The primary concern in implementing the flash translation layer has been to
improve the write performance by minimizing the number of erase operations
and data copy operations. Previous log block scheme exhibits good performance
for the write and the erase operations, but does not consider the space usage
of the log blocks. Our approach is to classify data blocks according to their
write access frequencies and to share the log blocks in order to improve the
space utilization. Simulation results show that the proposed scheme improves
the space utilization and there is a tradeoff between the space utilization and
the number of erase/write operations. For the future works, we plan to study
the allocation scheme of the shared log blocks to improve overall performance.
We also plan to implement proposed scheme in the real system.
78 Y. Ryu, T.-s. Chung, and M. Lee
References
1. CompactFlash Association. Information about compactflash.
http://www. compactflash.org.
2. A. Ban. Flash file system. In United States Patent, no. 5,404,485, 1995.
3. L. Chang and T. Kuo. An adaptive striping architecture for flash memory storage
systems of embedded systems. In Proceedings of the 8th IEEE Real-Time and
Embedded Technology and Applications Symposium, 2002.
4. L. Chang and T. Kuo. An efficient management scheme for large-scale flash memory
storage systems. In Proceedings of ACM Symposium on Applied Computing, 2004.
5. M. Chiang and R. Chang. Cleaning policies in mobile computers using flash mem-
ory. Journal of Systems and Software, 48(3):213–231, 1999.
6. M. Chiang, P. Lee, and R. Chang. Using data clustering to improve cleaning
performace for flash memory. Software: Practice and Experience, 29(3):267–290,
1999.
7. T. Chung, D. Park, Y. Ryu, and S. Hong. Lstaff: System software for large block
flash memory. Lecture Notes in Computer Science, 3398:704–710, 2005.
8. Intel Corporation. Intel strataflash memory product overview.
http://www.intel.com.
9. Intel Corporation. Understanding the flash translation layer (ftl) specification.
http://developer.intel.com, December 1998.
10. F. Douglis, R. Caceres, F. Kaashoek, K. Li, B. Marsh, and J. Tauber. Storage al-
ternatives for mobile computers. In Proceedings of the 1st Symposium on Operating
Systems Design and Implementation, 1994.
11. Samsung Electronics. 256m x 8bit / 128m x 16bit nand flash memory.
http://www.samsungelectronics.com.
12. SSFDC Forum. Features and specfications of smartmedia. http://www.ssfdc.or.jp.
13. J. Kim, S. Noh, S. Min, and Y. Cho. A space-efficient flash translation layer
for compactflash systems. IEEE Trans. on Consumer Electronics, 48(2):366–375,
2002.
14. M-Systems. Trueffs. http://www.m-systems.com/.
15. B. Marsh, F. Douglis, and P. Krishnan. Flash memory file caching for mobile
computers. In Proceedings of the 27th Hawaii International Conference on Systems
Sciences, 1994.
16. MTD. Memory technology device (mtd) sub-system for linux. http:// www.linux-
mtd.infradead.org.
17. C. Ruemmler and J. Wilkes. Unix disk access patterns. In Proceedings of 1993
Winter USENIX Conference, pages 405 – 420, 1993.
18. M. Wu and W. Zwanepoel. envy: A non-volatile, main memory storage system.
In Proceedings of the 6th Internation Conference on Architectural Support for Pro-
gramming Languages and Operating Systems, 1994.
19. K. Yim, H. Bahn, and K. Koh. A flash compression layer for smartmedia card
systems. IEEE Trans. on Consumer Electronics, 50(1):192–197, 2004.
Security Threats and Their Countermeasures of Mobile
Portable Computing Devices in Ubiquitous Computing
Environments
Abstract. Security has been more crucial issue as targets of attacker are wide
ranges from personal information to various things in ubiquitous computing en-
vironments. Portable computing devices such as cellular phone, PDA, and smart
phone in such conditions have been exposured under security threats, which
cause attacker to exploit malicious code and modification of storied data. In this
paper we present security threats and their countermeasures in technical, man-
ageable, and physical aspect of mobile portable computing devices. We believe
that this paper will contributes on initiating a research on security issues of mo-
bile portable computing devices and provide users with guidance to keep their
information safe in mobile communication environments.
1 Introduction
Recent advances in hardware and software technologies have created a plethora of
mobile devices with a wide range of communication, computing, and storage capabili-
ties. As wireless communication has especially been advanced, demands of portable
personal computing device has been increased and services of wireless internet like
downloading of a variety of contents, mobile banking, and information searches have
been commercialized rapidly
However, mobile portable computing devices which are important components in
ubiquitous computing environments have been exposured in security threats such as
denial service attack exploiting low information processing capability of low-powered
CPU, malicious code attacks exploiting vulnerabilities of mobile platforms and appli-
cation programs, and exposure of information by unauthorized users. Recently, inci-
dent cases caused by attack exploiting vulnerabilities of mobile portable computing
devices have been occurred all over the world including Sweden, Finland and Japan.
It has been expected that damages of such attacks is serious as Hacking Group like
29A has developed and announced worm and virus exploiting vulnerabilities of mo-
bile portable computing devices, number of users of mobile portable computing de-
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 79 – 85, 2005.
© Springer-Verlag Berlin Heidelberg 2005
80 S.h. Kim and C.S. Leem
vices and services provided by them have been increased .Therefore, study on secu-
rity threats and their countermeasures in of mobile portable computing devices is
needed. From now on, previous works for above subjects have been initial step and
the results are insufficient [1-3].
In this paper, we analyze security threats of mobile portable computing devices
and then we suggest their countermeasures in technical, manageable, and physical
aspects. This paper consists of four sections. In section two, we analyze security
threats of mobile portable computing devices, which include examining well-known
incident cases and vulnerabilities of them. In section three, we present countermea-
sures against security threats, which are the results form experiences of incident han-
dling for worm and virus in PC environment, analyzing security threats we found in
the aspects of technology, management and physical. In Section 4, we end with a
conclusion and suggest future works.
2 Security Threats
Security threats of mobile portable computing devices comprising confidentiality,
integrity and availability are malicious code, vulnerabilities of mobile platform and its
application, attack on communication path from wired network to wireless network,
and data robbery & damages.
Malicious codes include worm, virus and Trojan horses. As examples, there are
‘Cabir’ in June, 2004 and ‘WinCE.Dust.A’ in July, 2004. Various services such as
web search, e-mail and File translation provided by mobile portable computing de-
vices in wireless communication environment have brought high possibilities of mali-
cious code incidents. Figure 1 shows major infection rout of malicious codes.
Table 1 shows known malicious codes for mobile portable computing devices from
now on.
Security Threats and Their Countermeasures of Mobile Portable Computing Devices 81
Malicious code
Date Descriptions of characteristics and damages
name
When illegal copy of Mosquito game was exe-
cuted, great amounts of SMS was produced
and distributed
Mosquito Trojan
2004. 7 It was proven that Ojom, developing company
horses
of Mosquito game, implemented malicious
codes in contents of its products and distrib-
uted.
First Virus to infect files of Windows CE
of Pocket PC
WinCE.Dust A 2004. 7
EXE files more than 4,096 byte were infected
in directory execution of Virus.
Made by ‘29A’, Hacker Group.
It was executed in mobile phone supported by
Symbian Operating System and it made
Cabir 2004. 6 ‘Carbire’ messages to screen.
Propagation through Bluetooth communication
with masquerading to security utility file,
Caribe.sis
Data can be eavesdropped and unauthorized users can access to mobile portable com-
puting devices on wireless communication. As security mechanisms of IEEE 802.11
are not strong to prevent eavesdropping, it is easy for attackers to eavesdrop sensitive
information by using SNIFFER tools. Attacker also can intrude network nodes be-
tween wireless and wired network, and eavesdrop sensitive data, exploiting vulner-
abilities of wireless network which is applied to vulnerabilities and security threats of
wired network as wired and wireless network have been integrated into single net-
work. Therefore, worm and virus can be propagated widely through wired and wire-
less network. These cause to be denial of service, stop services themselves and bring
economic damages in ubiquitous computing environments.
Attached software to mobile portable computing devices which are connected to Person-
nel Computer or annexed software purchased separately can cause to exposure of data to
Security Threats and Their Countermeasures of Mobile Portable Computing Devices 83
attacker. Mobile portable computing devices normally provide logging functions to pre-
vent these kinds of data robbery but these functions can’t solve all of these problems.
Vulnerability
Date Descriptions
name
Anonymous Blue- Users with Bluetooth can access to mobile phone
tooth access vul- 2004. 5 without authentication when Bluetooth of some
nerability mobile phone is executed.
3 Countermeasures
control or vulnerability scan. This is most easy and effective countermeasures for
users to remove security threats. Update of antivirus products reflecting recent attack
information is also important.
Firstly, mobile portable computing devices which are not used should be locked, keep
them in the case to be not identical to unauthorized users and keep exterior memory
devices separately removing from mobile portable computing devices. Secondly,
Sensitive data should be encrypted if the data are stored in exterior memory devices
like memory sticks and USB flash memory. Thirdly, ID should be removed or inacti-
vated immediately if mobile portable computing devices are stolen or lost.
Security Threats and Their Countermeasures of Mobile Portable Computing Devices 85
References
1. Didi Barnes, “ Portable Computing Device Security”, September 2003.
2. Symentec, “Wireless Handheld and Smart phone Security”, 2003.
3. Palm, “Handheld Security for the Mobile Enterprise:, September 2002.
4. Tom Karygiannis et al., NIST, “Wireless Network Security”, September 2002.
5. R.Ramjee et al., “IP-based Access Network Infrastructure for Next-Generation Wireless
Data Networks,” IEEE Personal Communications, Aug, 2000.
6. F.Stajano et al., “The Resurrecting Duckling: Security Issues for Ubiquitous Computing”,
IEEE security and Privacy, 2002.
7. J.M Seigneur, S Farrell et al., “Secure ubiquitous computing based on entity recognition”,
Workshop on Security in ubiquitous computing, 4th International UBICOMP, 2002.
A Business Model (BM) Development Methodology
in Ubiquitous Computing Environments
Choon Seong Leem, Nam Joo Jeon, Jong Hwa Choi, and Hyoun Gyu Shin
1 Introduction
The development of Information Technology has been carried on through the techno-
logical revolution of information and communication. The means for the revolution
are the changes in the computing environment, which consists of four stages [13]: The
first step is a main frame computing revolution, and the second is a personal comput-
ing revolution. The third is a breakup computing revolution and the final is a ubiqui-
tous computing revolution.
The ubiquitous computing revolution, which is considered as an Information Tech-
nology to fuse real space and cyber space, based on the networks among existing things
in the real world, has been conducted over the whole of society. Even more, the future
oriented technology has changed the axis of the paradigm of Information Technology.
Accordingly as the ubiquitous computing technology appears, the importance of a
suitable Business Model (BM) has been increasing more and more in these new In-
formation Technology environments. Nowadays, many studies about suggesting BMs
of ubiquitous computing environments and the implementation of these have been
tried by many researchers. However, most of these researchers focus only on the
technological views of the development of BMs, and its procedure has a short logical
process and systematic design. Besides, it is not easy to measure the BMs' value be-
cause a suitable estimation method for a BM does not exist.
From this point, this research will present a methodology, which can be used for
developing a BM of ubiquitous environments, according to a systematic and logical
approach in a BM field.
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 86 – 95, 2005.
© Springer-Verlag Berlin Heidelberg 2005
A Business Model (BM) Development Methodology 87
This research is composed of five chapters: Chapter two discusses the concept of
ubiquitous computing and a BM, Chapter three discusses a BM development method-
ology which reflects technological and environmental characteristics of ubiquitous
computing, Chapter four is a case which is applied to the methodology, and Chapter
five discusses the conclusions and directions for further research.
2 Previous Research
2.1 Ubiquitous Computing Definitions and Characteristics
Even though there are many common factors about the definition of ubiquitous com-
puting, these vary and are slightly different according to the scholar, time and organi-
zation. Table1 arranges the definitions of ubiquitous computing [4], [11], [12], [19].
Even the researches of each country for ubiquitous computing have slightly differ-
ent strategies, they pursue the three common characters: Smart, Seamless networks,
and Mobility.
The concepts for a BM are different according to the researcher, transaction channel
and so on. Table 3 shows representative concepts of a BM [1], [2], [15], [17].
Scholars Definition
An architecture for the product, service and information flows, including
a description of the various business actors and their roles; and A descrip-
Timmers (1998)
tion of the potential benefits for the various business actors; and A de-
scription of the sources of revenues.
A business model is the method of doing business by which a company
Rappar (1999)
can sustain itself - that is, generate revenue.
Establishment and management strategy of enterprise for revenue model,
Leem (2000)
business operation and cooperation for providing customer services.
The business model depicts the design of transaction content, structure,
Amit & Zott
and governance so as to create value through the exploitation of business
(2001)
opportunities.
searches to define structural forms of a BM and establish a suitable strategy for a BM,
they do not present a specific method to develop a BM.
The demanded for research for developing a BM are the analysis methodology for
a BM based on the BM’s component, the design methodology to define the flow of
goods, services, and values etc., and the measurement methodology for the value of a
BM. Table 4 shows research of existing development methods concerned with a BM
[1], [5], [6], [7], [9], [10], [14], [16].
While the present ubiquitous computing related research is mainly technology ori-
ented, recent research tends to show that the interest of developing a BM is increasing
gradually [3]. However, there is still not enough research to suggest the necessary
processes and specific contents for a BM development, beside some limits in applying
the prior research related to developing for a BM in a ubiquitous computing field are
exist. They are as follows:
− It is difficult to understand the factors such as analysis, design, and evaluation
for a BM configurationally because of the separation of the related research for
each area.
− They do not present a synthetic process and roles for BM development.
− When they come to the evaluation of a BM, they do not deal with all viewpoints
but mainly with the viewpoint of cost and profit.
− Because most of them are the studies based on the limited channel circum-
stances such as e-business and m-business, they need to be modified and cor-
rected so as to adjust for a ubiquitous computing field.
To develop a suitable BM in ubiquitous computing environments, a logical and
systematic development method reflecting the characteristics of ubiquitous computing
is needed. In this research we defined a suitable standard BM development methodol-
ogy, which is based on ubiquitous computing environments, has 4 phases. They are
planning, design, implementation, and management. Each area has its own specific
tasks.
90 C.S. Leem et al.
Activity 1_E
Choosing the promising BM
• Generalization of results
• Choosing the hopeful BM
The BM design phase consists of activities and tasks so as to select a specific sce-
nario, based on the events which might occur in the BM, with the perspective of ma-
jor players such as operator, customer, and partner. This stage suggests a scenario as
an operating plan for the promising BM which was selected in the earlier step, then
uses it as a designing plan.
The BM management phase consists of activities and tasks to propose guidelines for
revenue, competency, and risk management. This step suggests management guides
for commercialization of the BM, according to the results from the analysis of each
BM carried out in the earlier planning phase.
and management phases. Fig. 2 illustrates the overall structure of the ubiquitous
BMFA framework.
The ubiquitous BMFA framework is a filtering system for suitable BMs of ubiqui-
tous computing environments, and is composed of pre BMFA framework and post
BMFA framework; The pre BMFA framework, which consists of technical character-
istics, requirements for uses, and enterprise strategies, is a system to evaluate the
feasibility of execution of BMs, while the post BMFA framework being composed of
competencies of enterprise, return on investment, and risk factors is a system to
measure the feasibility of achievement of the BMs.
Pre business model feasibility analysis framework Post business model feasibility analysis framework
External risk
The procedures of the BMFA are as follows: Extracting the highly executable BMs
through the result of the pre BMFA, evaluating the extracted BMs based upon the
post BMFA framework, and selecting a promising BM of ubiquitous computing envi-
ronments according to the results of the evaluation. In addition, the components of
ubiquitous BMFA framework are systematically related to each other so that the out-
puts of former activities are used as inputs for following activities.
The BMFA framework is much more meaningful in terms of the fact that various
BMs could be evaluated objectively. Closely looking at the relations of the activi-
ties, the outputs of the environment analysis (activity 1_A) and requirement analy-
sis (activity 1_B) are used as inputs for establishing the detailed evaluating indices
of the pre/post BMFA framework. Likewise, the output of BMA (activity 1_C) is
used for the detailed evaluation indices of the BMFA and used as basis inputs for
performing the activity 2_A, activity 2_B, and activity 2_C of phase 2 as well. The
output of BMFA (activity 1_D) is also used as inputs of implementation for plat-
form map (activity 3_C) and phase 4 which comprise of activity 4_A, activity 4_B,
and activity 4_C. In addition, the overall outputs of phase 2 serve as inputs for im-
plementing the process map (activity 2_A) and value map (activity 2_B). Fig. 3
shows the relations between activities consisting of the ubiquitous BM development
explained earlier.
94 C.S. Leem et al.
Activity 2_A
Description for
customer scenario
Activity 1_C
Activity 3_B
Business model analysis
Description for
enterprise scenario
Evaluation
criteria
Activity 4_C
Description for
Activity 1_D
partner scenario
Business model Feasibility analysis
Activity 1_A
Environment analysis
Pre business model feasibility Activity 3_A
Analysis framework Implementation for
value map
Activity 4_A
Revenue management
Activity 4_B
Competency management
Activity 4_C
Risk management
References
1. Amit, R, Zott, C.: Value Creation in E-Business. Strategic Management Journal, vol. 22
(2001) 493-520
2. Choon Seong Leem: e-Business file. Yonjin.com (2000)
3. Fano, A., Gershman, A.: The Future of Business Services in the Age of Ubiquitous Com-
puting. Communications of the ACM, vol.45, no.12 (2002) 83-87
4. Friedemann Mattern: The Vision and Technical Foundations of Ubiquitous Computing.
UPGRADE, vol. II, no. 5 (2001) 3-6
5. Gordijn, J., Akkermans, H., Van Vliet, H.: What’s in an electronic business. Lecture Notes
in Computer Science (2000) 257-273
6. Gulla, A., Brasethvik, T.: On the challenges of business modeling in large-scale reengi-
neering projects, 4th International Conference on Requirements engineering, USA (2000)
17-26
7. Hyo Keun Kim, Yung Ah Lee, Min Seon Kim: A Study on Value Creation Evaluation In-
dices of Internet business model. Spring Semiannual Conferences of The Korea Society of
Management Information Systems, vol. 2003, no. 0 (2003) 449-457
8. Hyoun Gyu Shin, Choon Seong Leem, Hyung Sik Seo: A Taxonomy of Ubiquitous Com-
puting Applications. Fall Semiannual Conferences of The Korea Society of Management
Information Systems, vol. 2003, no. 0 (2003) 243-249
9. In Tae Kang, Yong Ho Lee, Jong Seo Yang, Yong Tae Park: On the framework to design
Multi-layer business model. Spring Semiannual Conferences of Korea Institute of Indus-
trial Engineers/Korea Operations Research and Management Science Society, vol. 0, no.
0. (2002) 70-73
10. Ji Hang An, Sang Hun Choe, Seog Gwon Jang, Yong Ho Kim: Development and Applica-
tion of Business Model Analysis Framework. Information Systems Review, Vol.5, no.1
(2003) 19-14
11. K. Sakamura: The TRON Project. IEEE Micro, vol. 7, no. 2 (1987) 8-14
12. Mark Weiser: Ubiquitous Computing. IEEE Computer (1993)
13. Mark Weiser, John Seely Brown: The Coming Age of Calm Technology. PowerGrid Jour-
nal, vol.1.01 (1996)
14. Michael D. Reilly, Norma L. Millkin: Starting a Small Business: The Feasibility Analysis.
MONTGUIDE (1996)
15. Rappa, M.: Business model on the Web. http://digitalenterprise.org/models/models.html.
(1999)
16. Stuart J. Barnes: The mobile commerce value chain: analysis and future developments. In-
ternational Journal of Information Management, vol. 22 (2002) 91-108.
17. Timmers, P.: Business models for Electronic Markets. Electronic Market, vol. 8, no. 2
(1998)
18. Wan Seok Kim, Jeong Kook Kim, Hyo Kee Kim, Chang Seok Kim, Heung Seo Koo,
Sang Beom Lee, Tae Woong Park, Seong Kook Kim: The Technology, Infrastructure and
Trend of Ubiquitous Computing. Korea Information Processing Society Review, vol. 10,
no. 4 (2003)
19. http://www-306.ibm.com/software/pervasive/module/index.shtml (2004)
Developing Business Models in Ubiquitous Era:
Exploring Contradictions in Demand and Supply
Perspectives
1 Associate
Professor of Information Systems,
Graduate School of Information, Yonsei University,
Sudaemun Gu, Shinchon Dong 134, Seoul, Korea
2 Graduate School of Information, Yonsei University,
Sudaemun Gu, Shinchon Dong 134, Seoul, Korea
{jlee, sunghwan}@yonsei.ac.kr,
1 Introduction
Since Mark Weiser termed ‘ubiquitous’ as a new paradigm for computing in 1988,
efforts have been concerted to develop and advance information technologies towards
‘connecting, invisible calm and silent, and real’ ubiquitous computing [1]. Despite
huge investment and good progresses on the technology side following dream
applications, practitioners are still agonizing over what are appropriate business
models which may provide incredible value as a new ubiquitous business or as
converged with traditional businesses.
Most traditional business models focuses on supply-side view in which business
processes are controlled by suppliers mostly based on predictions derived from
preceding research outcomes. Researches are conducted much earlier than the time of
demand or consumption, and resulting products or services are pushed onto the
market, wishing these to be sold. In ubiquitous environment, this supply side view
would not prevail any more. Paradigm is shifting from supplier-centric to customer-
centric, from cost-reduction to value creation, mostly because information can be
gathered and disseminated at the speed of light.
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 96 – 102, 2005.
© Springer-Verlag Berlin Heidelberg 2005
Developing Business Models in Ubiquitous Era: Exploring Contradictions 97
2 Analysis
In this section, arguments are developed and presented for contradictions in these five
aspects in detail with anecdotal evidence and ethnographic observations.
of public service. For example, mobile environments present many challenges for
ubiquitous computing as it differs from fixed indoor contexts such as offices or
houses in many important ways.
For example, when a person walks on the street, a device on the wall, such as an
advertising board, identifies him/her and presents a notification that he has an
emergency email on the device. It is a very common picture the ubiquitous computing
draws as a future. However, this kind of application presents a challenge to
developers as it contains contradictory requirements. Any body can walk down the
street, but the application should be able to identify a specific person and provide a
personal service among the crowd. Collective treatment has a characteristic of current
broadcasting station where the same contents are provided to multiple audiences at
the same time. Audiences can only choose to accept it or not. Compared to this
broadcasting model, most Internet applications are very personal. People may not
want to read their emails on an advertising board, unless the application converts the
public device into very personal one. Internalized factors such as tasks and goals are
different and externalized factors such s social resources are dynamic and
unpredictable. This kind of contradictions presents a challenge as well as a problem.
upon context in time. Ubiquitous service needs to be not only constantly available but
also adaptable to contextual changes in time. Also, data contained should be updated
in a timely fashion and to be time-stamped so that these can be referenced whenever
needed. TimeSpace research focuses on integrating these perspectives [4].
For this purpose, a range of information appliances, services and media need to be
able to work together in support of increasingly mobile users. Mobile coherence should
include collaborative working space as well as personal space. Also, portability may
100 J. Lee and S. Lee
for context and users. The device should be able to predict the task that the user wants
to engage in, and produce appropriate interface for each context.
The flip side of this coin is whether each individual should carry multiple devices
for different types of interactions or a single device can handle different interfaces
that can handle multiple services. Historically, multi-purpose devices didn’t get much
attention from users. Watches with data processing capability turned out to be a fad
that fascinates a small number of early adopters and multi-purpose remote control
also seems to run down the similar path. However, in ubiquitous environment, it
seems that multi-purpose device is necessary, but may not be sufficient. Developers
of ubiquitous computing needs to take these contradictions into consideration in
designing ubiquitous devices and services [6].
8 Discussion
This study is still in progress. Contradiction underlying the assumptions and belief
may deter killer applications to be developed for future ubiquitous computing. It
seems important to articulate these contradictions and reconcile them as ubiquitous
computing advances. Contradiction dimensions needs further development with
supporting theory as well as practical examples. Case studies and scenario analyses
would be the next step in revealing implications of these contradictions and
interdisciplinary theoretical development should accompany phenomenological
observations and experiments.
References
[1] Mark Weiser. ‘Hot topic: Ubiquitous Computing’, IEEE Computer, pages 71 ~ 72,
October 1993.
[2] Weiser & Brown, ‘Designing Calm Technology’, PowerGrid Journal, v 1.01, July 1996.
[3] Sakari Tamminen, Antti Oulasvirta, Kalle Toiskallio and Anu Kankainen, ‘Understanding
Mobile Context,’ Personal Ubiquitous Computing, 8, pages 135-143, 2004
102 J. Lee and S. Lee
[4] Aparna Krishnan and Steve Jones, ‘TimeSpace: activity-based temporal visualization of
personal information spaces,’ Personal Ubiquitous Computing, 9, pages 45-65, 2005
[5] Kenneth P. Fishkin, ‘A taxonomy for and analysis of tangible interfaces,’ Personal
Ubiquitous Computing, 8, pages 347-358, 2004
[6] Andrew J. May, Tracy Ross, Steven H. Bayer and Mikko J. Tarkiainen, ‘Pedestrian
navigation aids: information requirements and design implications,’ Personal Ubiquitous
Computing, 7, pages 331-338, 2003
Semantic Web Based Intelligent Product and Service
Search Framework for Location-Based Services
qorwkr@nate.com
1 Introduction
We are now entering a ubiquitous era [1] based on mobile and location-based tech-
nology, where customers can search and utilize various products and services more
than at any time and place. One of the state-of-the art technologies leading this ubiq-
uitous era is the “Location-Based Services (LBS) [2].” LBS consists of services
closely connected with real life such as navigation services, logistics shipping infor-
mation services, and telematics. The so-called L-commerce based on location infor-
mation is a combination of LBS and e-commerce, and it is becoming more significant.
Therefore, even though the related researches and developments still remain in the
initial stage, this area has a high potential power because the advantages of mobile
can be applied to full capacity.
Before achieving these location-based services, a few problems of product and ser-
vice searches in mobile environment should be resolved. From the viewpoint of in-
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 103 – 112, 2005.
© Springer-Verlag Berlin Heidelberg 2005
104 W. Kim, S. Lee, and D. Choi
2 Related Works
Recently, LBS has become popular with the development of mobile related technolo-
gies. LBS must often consider various context information such as location informa-
tion, time related events, and schedules into its core mechanism, and such context-
awareness capability is being emphasized more and more. Researches on subjects
such as Cyberguide[6], Tourist guide[7], exhibition guidance[8], Shopper’s eye[9],
and Context-aware Office Assistant[10] that use various context information are al-
ready being done actively. However, because they have focused only on the naviga-
tion problems for users’ preferences and used only simple location-based information,
the researches still have many limitations. They especially cannot easily deal with
contemporaneousness and varieties of information search because they assume that all
the information including the store and product information to be processed is stored
in the mobile device.
There are now some different types of researches such as Impulse[11] and Where-
hoo server[3] that provide location-based information search service which enables
users to search products or services based on users’ current location. However, they
still do not address the issues of not only the syntactic but also semantic interoperabil-
ity among service requestors, service providers, and informediaries. Without an ap-
propriate solution to such interoperability problem, it is almost impossible to access
rich enough location related information, and so it is also unlikely that a practical and
commercial L-commerce business model will be realized.
Semantic Web Based Intelligent Product and Service Search Framework 105
So far, we have discussed the related works and their pros and cons. Now, we pro-
pose a framework to cope with the problems mentioned in section 1 and to achieve
our goals.
Service
ServiceClien
Client t In te lligent tI n
I ntelligen I nfoform
rmaatio
tionnSea
Search
rchAgen
Agent t Service
ServicePPro
roviders
viders
Service
Service Description
Description
Document
Document
Search Intent and Crawler
Web Service Search Intent and Location
Web Service Location Information Location
Module Location Information Processor
Module Selector Processor
Selector OFF-Line
OFF-Line
GPS Receiver Service Provider
GPS Receiver Service Provider
Information Service
Service Description
Description
Ontology Base
Information
Integrator Document
Document
Integrator
Query Generator Crawler
Query Generator
OFF-Line
OFF-Line
Service Provider
Service Provider
GUI Query
GUI
…
Service
Service Description
Description
Query Executor Mapping
Mapping Category
Category
Ontology
Document
Document
Ontology
OntologyBase
Base Ontology Base
Base
Crawler
Word
Word Service
ServiceAttribute
Attribute
Web Service Ontology
OntologyBase
Base Ontology
Ontology Base
Base OFF-Line
Web Service Service Evaluation Agent OFF-Line
Service Provider
Module Service Evaluation Agent Service Provider
Module Transformation
TransformationRule
Rule
First external entity is service client, which is a module for mobile devices and allows
users to describe their search intention. Its primary task is to provide a means for
users to represent their product and service search intention with the provided search
intention representation scheme, which will be discussed later in the paper. The users’
106 W. Kim, S. Lee, and D. Choi
As a second external entity, service providers first describe their products and services
using their own ontologies. Furthermore, they are required to publish the written meta-
data documents on the web. For example, a “Happy Restaurant” which serves Seafood
and Steak cuisines makes a service description document by using the ontology avail-
able in restaurant.com. An example service description document is shown in Fig. 2.
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns="http://www.restaurant.com#" >
…
<Restaurants rdf:ID="Happy_ Restaurant">
<restaurant_name>Happy Trails Restaurant</ restaurant_name >
<cuisine_type>Seafood</cuisine_type>
<cuisine_type>Steak House</cuisine_type>
<address>32498 US 431 Roanoke, AL xxxx</address>
<city>Roanoke</city>
<special_needs>Non Smoking Area</special_needs>
<special_needs>Children’s Menu</special_needs>
…
As a main part of the proposed framework, the intelligent product and service search
agent first harvests service providers’ information using a semantic web robot. Then,
it integrates the collected information written in various ontologies into a unified
product and service ontology and instance repository by rewriting it in its ontology.
Based on this established integrated product and service repository, the search agent
receives service client’s search requests, retrieves relevant service providers, evalu-
ates retrieved results, and recommends the most relevant services to users’ requests.
Semantic Web Based Intelligent Product and Service Search Framework 107
To perform the tasks mentioned above, the intelligent product and service search
agent uses of four major components: information integrator, location processor,
query generator, and product and service evaluation agent.
First, the information integrator collects the category and attribute information
about products and services from various service providers on the Web using a se-
mantic web robot and then transforms it into a unified repository written in its ontol-
ogy. Once a user search request arrives from a service client module, the location
processor decides the range of regions to be searched by capturing the user’s location
included in the request message.
Then, the query generator generates a query to product and service ontology in-
stance base by interpreting the user’s request written in his private ontology and also
considering the regional constraints generated by the location processor. Finally, the
service evaluation agent measures the retrieved results by considering the user’s
search intent and recommends the most relevant products and services to the user.
To develop the whole framework for intelligent product and service search, three
key issues need to be addressed. First, we have to provide a methodology to integrate
product and service information written in different ontologies into a unified reposi-
tory. Second, we have to provide an appropriate representation mechanism for user’s
search intent and also a transformation method to interpret the search request written
in the user’s private ontology to make it available for searching against a unified on-
tology instance repository located in the search agent. Finally, an evaluation mecha-
nism has to be prepared to measure relevancies of products and services while consid-
ering both user’s search intent and user’s location. The following section addresses
our approaches and methodologies for all these issues but briefly due to lack of space.
To establish a product and service ontology instance repository, the information integra-
tor periodically collects service description documents that service providers publish on
the Web and constructs an integrated repository for them based on a given ontology.
To achieve these goals, we first devise an ontology-matching algorithm [12] and cre-
ate an ontology mapping rule base by applying the algorithm to each pair of search
agent’s ontology and service provider’s ontology. Then, the information integrator
transforms collected service description documents from various service providers into
a unified form in search agent’s specific ontology and stores them in the repository. The
reader can refer to [12] regarding the ontology-matching algorithm in more detail.
Now, let us go over how we represent user’s search intent for products and services.
For more accurate search results than keyword based approach, we need to provide a
more elaborate representation scheme for user’s search intent. To do this, we essen-
tially adopt a multi-attributes based representation paradigm. In addition, we also
allow users to describe the search context of the object that they want to find by se-
lecting a category from their own product and service taxonomy. We call this portion
108 W. Kim, S. Lee, and D. Choi
Restaurants
5
Price_High 20 dollar <=
User Preference
The search intent and location information selector first receives a user’s search repre-
sentation and picks only the location information. The extracted location information is
then sent to the location processor and the remaining part is sent directly to the query
generator. The location processor selects geographical blocks that satisfy the user’s
location related preference by comparing them with the user’s current location by GPS
in terms of travel time. For example, as shown in Fig. 4, Blocks 6, 7, 10, 11, 14, and 15
are selected in this case. The location processor then passes them to query generator.
The query generator creates a query to the integrated product and service ontology
instance repository based on not only the user’s search intent but also the location
information obtained from the location processor. In this paper, we adopt RDQL [13]
as a query representation method, and so, the original search request from the user is
transmitted as a form of RDQL. However, we still need to transform the original
query for the search agent to understand it from the agent’s own ontological perspec-
tive. Furthermore, we have to modify it to take into account the information from
location processor such as the selected blocks.
Semantic Web Based Intelligent Product and Service Search Framework 109
SELECT ?u
SELECT ?x
WHERE (?u, rdf:type, user:Restaurant)
WHERE (?x, rdf:type, aaa1:Restaurants)
(?u, user:Restaurant_type, “Pizza”)
(?x, aaa1:type, “Pizza”)
(?u, user:Atmosphere, “fun”)
(?x, aaa1:Atmosphere_Features, “entertainment”)
(?u, user:priceHigh, ?priceHigh)
(?x, aaa1:price_High, ?priceHigh)
(?u, user:distance, ?distance)
(?x, aaa1:address, ?address)
(?u, user:longitude, “126, 56.1583, E”)
AND ?priceHigh<=20 &&
(?u, user:latitude, “37, 33.3384, N”)
(?address=~/Block6/i || ?address=~/Block7/i
(?u, user:velocity, “3 km/h”)
|| ?address=~/Block10/i || ?address=~/Block11/i
AND ?priceHigh<=20 && ?distance<=30
|| ?address=~/Block14/i || ?address=~/Block15/i)
USING aaa1 FOR <http://www.chefmoz.org/ontology#>
USING user FOR <http://www.yahoo.com/ontology#>
Then, the re-generated query is handed to the query executor and the query execu-
tor retrieves the product and service providers that satisfy all conditions represented
110 W. Kim, S. Lee, and D. Choi
on the right side in Fig. 5. For a more efficient filtering, we first filter out the irrele-
vant service providers according to location related constraints. In our example, the
restaurants 1, 2, 3, 4, 5, 7, 11 survive this filtering and they are re-filtered with non-
location related conditions. Finally, the re-filtered results are sent to the service
evaluation agent and, in the end, {2, 3, 5, 7, 11} are passed in the example case.
As a last step of the framework, the service evaluation agent performs three consecu-
tive steps. The first step evaluates relevancies for each attribute. In this step, we com-
pute relevancy based on two aspects, semantic similarity and syntactic similarity.
Syntactic similarity measures how close the words are to each other lexicographically,
while semantic similarity measures structural similarities such as similarity between
the taxonomies depicted on the left side in Fig. 3. The second step computes a unified
measurement by synthesizing those relevancies for each attribute, while considering
their relative importance level represented as weights. Finally, the third step sorts
them by relevancies and recommends the most suitable product or service provider to
the user’s search intent. Detailed evaluation procedure can be found in [12].
1
http://local.yahoo.com/
Semantic Web Based Intelligent Product and Service Search Framework 111
ontology and we also adopted the ontology from chefmoz.org as ontology for intelligent
product and service search agent. Furthermore, we prepared various service providers’
information using two different ontologies from restaurant.com and restaurantrow.com.
Fig. 6 shows a screenshot of the service client recommending the most relevant restau-
rants to the user’s search intent represented in Fig. 3. Currently, we are validating our
work in a real world situation by cooperating with a leading portal in Korea.
5 Conclusions
In this paper, we discussed two major bottlenecks to the proliferation of L-commerce.
First, there is no appropriate product and service search methodology yet for users to
locate the most relevant services in the mobile environment. Second, the product and
service information is still too poor to be ready for service for L-commerce because
most of the existing frameworks for L-commerce are too independent of each other,
which means there are serious interoperability problems.
To cope with these two obstacles, we propose a semantic web based intelligent
product and service search framework for L-commerce. Our proposed framework
allows service providers to easily publish information about their products and ser-
vices independent of informediaries that provide information search services. The
informediaries can also easily construct their own L-commerce ready information
repository by using a real-time ontology mapping mechanism between heterogeneous
ontologies and taxonomies. Moreover, our framework provides advanced semantic
web based search mechanism to improve its precision while recommending the most
relevant products or services by adopting multi-attribute based location aware search
and evaluation methodologies, and therefore, maximizing user satisfaction.
We implemented a prototype system for our framework and are currently validat-
ing it in real world situation. We expect that our proposed framework will contribute
to proliferation of L-commerce in the near future.
References
1. Mark Weiser, The Computer for the Twenty-First Century. Scientific American, Sep., PP.
94-104 (1991)
2. Eija Kaasinen, User Needs for Location-aware Mobile Services, In Personal and ubiqui-
tous Computing, Issue: Volume 7, Number 1/May 2003, published by Springer-Verlag
London Ltd.
3. J. Youll, R. Krikorian. Wherehoo Server: An interactive location service for software
agents and intelligent systems, In Workshop on Infrastructure for Smart Devices. Sept.
2000.
4. Yahoo! Local (http://local.yahoo.com/)
5. SuperPages.com (http://yellowpages.superpages.com/)
6. G. Abowed et al., Cyberguide: a Mobile Context-Aware Tour Guide, ACM Wireless Net-
works 3, pp. 421-433 (1997)
112 W. Kim, S. Lee, and D. Choi
1
Quality & Reliability Lab. DAEWOO Electronics Corp.,
412-2 Cheungcheun2-dong, Bupyeong-gu, Incheon, Korea
phileo21@empas.com
2
Department of Computer and Industrial Engineering, Yonsei University,
134, Shinchondong, Seodaemoongu, Seoul 129-749, Korea
leem@yonsei.ac.kr
1 Introduction
During the last 20 years, the business environment and the new technology embedded
within it have experienced tremendous change. Also, new technologies have provided
opportunities for value creation, which underpins intelligent and proactive strategy.
Companies are in a better position to comprehend how to use new technology such as
ubiquitous computing.
2 Previous Research
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 113 – 121, 2005.
© Springer-Verlag Berlin Heidelberg 2005
114 H.J. Lee and C.S. Leem
recognize the problem context as well as proactively provide the suitable deci-
sion.[25]
Characteristic Definition
Any one Can be connected at any one
Any device Can be connected at any device.
Any where Can be connected at any where
Any application Can be connected at any application
Any time Can be connected at any time
Benefits of Ubiquitous
Definition
Computing
Ubiquitous computing removes location dependency.
This is embodied in the remote control of networked
Anywhere
home appliances and information accessibility of mobile
terminals.
Without Ubiquitous computing technology performs a variety of
conscious effort tasks without the beneficiary’s being aware of it.
Ubiquitous computing does not block access to any in-
With a sense of
formation, and work can done remotely as if doing it on-
super-realism
site.
Ubiquitous computing technology implements functions
From the user’s
from the user’s point of view, rather than from that of the
point of view
information and operations providers.
A Study on Value Chain in a Ubiquitous Computing Environment 115
A company’s business model is management’s model of how the strategies they pur-
sue will allow the company to gain a competitive advantage and achieve superior
profitability.[2]
Business models are usually based on financial projections of the pricing that the
company can attain if it successfully implements its strategies and meets its goals.[3]
The business model provides a coherent framework that takes technological charac-
teristics and potentials as inputs and converts them through customers and markets
into economic outputs. The business model is thus conceived as a focusing device that
mediates between technology development and economic value creation.
The Following is previous research of business models:
which we will explain below, lies in the assumptions made about the state of
knowledge held by the company, its customers and third parties. The business
model construct consciously assumes that this knowledge is cognitively limited,
and biased by the earlier successes of the company.[13]
Fig. 2. The business model mediates between the technical and economic domains
This paper; business process for ubiquitous computing, considering value chain, sug-
gests a new value chain.
This is previous research about the ubiquitous computing business model.
A Study on Value Chain in a Ubiquitous Computing Environment 117
Factor Variable
Freshness
Characteristic Localization
Application Variety
Scalability
Management
Timeliness
Accuracy/ Reliability
Resolution
Technology Utility
Personalization
Useful
Transmission Cost
Cost Device Cost
Application Cost
Trust
Control
Privacy
(Source: Oh, J.I, Service@ Ubiquitous Space, The Electronic Times,2004)
118 H.J. Lee and C.S. Leem
In every business, there are sequences of activities that companies perform to produce
goods and services, deliver them to customers, and make or lose money. This se-
quence of activities is called a business system or value chain.[1] The Value chain of
the business unit is only one part of a larger set of value-adding activities in an indus-
try. The value chain of any company therefore needs to be understood as part of the
larger ‘system’ of related value chains.
Fig. 3. Understanding the information issues in the value chain (Source : after J.F.Rayport and
J.J. Sviokla)
It not only improves the economics of transaction processing but also enables the
whole chain to respond more effectively to real-time supply and demand change,
provided transaction information is shared. It considers the impact of ubiquitous
computing in relation to:
Suppliers– Anyone supplying essential resources. It may be necessary to organized
them either by the nature of what they supply or their strength, or their ability to exert
pressure on you and other customers.
A Study on Value Chain in a Ubiquitous Computing Environment 119
Customers– This could include the consumers as well as direct customers if the latter
are essentially distributors. The customers should be segmented in terms of what they
buy or how much leverage they exert.
Competitors– Obvious competitors who sell very similar products or services should
be supplemented by actual or potential new entrants into the market and ‘threatening’
substitute products and services should be included as competition.
No Main ways
1 It enables a larger scale of operations.
2 It widens the geographic scope of the area company represents
It allows more information to be collected and processed by the service
3
provider
4 It enables a new delivery medium or mechanism
Value creation has a role in lowering the cost structure and increasing the per-
ceived value of products through differentiation. As the first step in examining this
concept, consider the value chain, which is illustrated in Figure 4. The process of
transformation is composed of a number of primary activities and support activities
that add value to the product/service.
Figure 4 is characteristics of value chain. Each stage definition is provided as follows:
Stage Definition
Analyze consumer needs, provide service for consumer
Context
satisfaction.
A company makes information devices for consumer.
They want easy computing and easy data gathering.
Information Device
This service is a way to make a money for an information
device production company.
It is a very important part for wire/wireless network
Network Service connections.
It is a way to make money at network companies.
In ubiquitous computing environment, information device
Service Provider
is operated by system software and application software.
Digital contents are concerned with the creation of a se
rvice. (ex : cyber community)
The role of the service function is to provide digital cont
Digital Contents
ents service and support. This function can create a perc
eption of superior value in the minds of customers by sol
ving customer problems and supporting customers
5 Conclusion
Ubiquitous computing technology enables a large number of new applications to have
an impact on business processes. This paper focused on ubiquitous computing chara
cteristics and the development of value chain for value creation. Our research suggest
s new 5 stage value chain considering ubiquitous computing environment and analyze
d each-stage in the value chain. Further researches will be done on business models ba
sed on company characteristics.
References
1. Allan afuah.: Business Model A strategic management approach, McGraw Hill(2004)
2. Allan Afuah: Business Models, McGraw-Hill(2003)
3. Allan Afuah & Christopher L. Tucci.: Internet Business Models and Strategies, McGraw-
Hill (2001)
4. Alfred Chandler, A.D, Strategy and Structure.: Chapters in the History of American Indus-
trial Enterprise, MIT Press:Cambridge,MA (1962)
A Study on Value Chain in a Ubiquitous Computing Environment 121
Abstract. Robot is not a new field. It has been around for decades. In fact, most
people have robots in their own home, even if they don't recognize the robots as
such. For example, a dishwasher automatically washes and dries your dishes,
then grinds up the rinsed-off food so the organic matter doesn't clog your
drains. A washing machine soaks, soaps, agitates, and rinses your clothes.
Down the street, the car wash-n-wax cleans, brushes, washes, and waxes your
car, all for a few dollars. One of the better known home-oriented robots is robot
vacuum cleaner which has already good cleaner for assistant house keeper. In
this paper, we suggest that home security system using robot vacuum cleaner.
Our robot vacuum cleaner makes an additional security function using camera.
But, these technologies lack in provision of the authentication architecture of
customers for the accountability, confidentiality. This paper presents the archi-
tecture of authentication mechanism to deal with the specific challenges arising
from these applications and to overcome the weakness of traditional architec-
ture for the secured infrastructure of home network environment.
1 Introduction
With the convergence of digital communication networks and the Internet, the usage
of homenetwork applications utilizing digital devices such as cellular phone, robot
vacuum cleaner been increased. Vacuum cleaner robot, is a particular case of house
keeping using the home application considering home network environment. In home
network environment, customer wants to be easy housework and robot help it.
Robot vacuum cleaner that finds its own way around a carpet heralds the beginning
of the end for housework. The robot navigates around corners and large objects using
an acoustic radar system similar to that of a bat and is fitted with a sensitive bumper
to stop it damaging the furniture.
In a network environment, the customer possesses a public and private key pair of
any encryption algorithm using public key mechanism, and maintains a certificate
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 122 – 127, 2005.
© Springer-Verlag Berlin Heidelberg 2005
A Study on Authentication Mechanism Using Robot Vacuum Cleaner 123
Versatilely :
The structural/mechanical potential for performing varied tasks and/or performing the
same task in different ways. This implies a mechanical structure with variable geome-
try. All existing robots have this quality.[1][2]
2.3 Homenetwork
Home Network is the collection of intelligent appliances and the connection of them
in home.
124 H.J. Lee, H.J. Park, and S. Kim
customer is equipped with at least one information device that contains a unique
string of identification called Hardware-ID. Furthermore, customer has a robot vac-
uum cleaner and unique code of customer ID. [7]
In these aspects, the problem of home security using robot must be resolved on the
basis of decentralized authentication mechanism. It is one of the major axioms to
design information security that the system should provide security features in a trans-
parent way so that a minimum amount of customer interaction is required.
Confidentiality:
Persons not involved in an electronic transaction should not be able to gain any in-
formation about home security (observation home); thus, all messages sent in the
protocol must be encrypted.
Authentication:
As contracts must be legally binding, an authentication mechanism for both customers
and home security service providers is required.
Customer Authentication:
To prevent theft of mobile devices, the customer has to authenticate himself or herself
to the device before starting any transaction.
However, the overhead of authentication must be as low as possible; otherwise the
usability of the mobile device might be affected.
Integrity:
Messages sent in the home security protocol using robot vacuum cleaner should not
be altered by any party not involved in the transaction.
Partial Traceability:
In case of the single enforcement of illegal actions, it must be possible to retrieve an
identity of that person.
This is complicated by the partial anonymity requirement, but possible in a similar
fashion such as tracing of email: every party knows “someone” who is closer to
knowing the real identity of a given party ; by following these links, a party with
authoritative information on a customer’s identity will be eventually found.
This paper suggests new authentication mechanism using mobile devices to overcome
the limitation of traditional authentication mechanism using robot vacuum cleaner.
This mechanism improves the level of security of customer authentication. This
model consists of thirteen steps which are described below.
Step 1. The customer connected security service provider using mobile device.
Step 2. The security service provider sends an one time authentication code to cus-
tomer’s mobile device to execute second authentication.
126 H.J. Lee, H.J. Park, and S. Kim
Step 3. The customer inputs an authentication code provided by the security service
provider into robot vacuum cleaner.
Step 4. Vacuum cleaner robot asks a authentication agency with the result of an au-
thentication code.
Step 5. If customer input wrong code, send message to registration customer at secu-
rity service provider.
The mutual relationships and data processes are illustrated in figure 1.
Fig. 1. Authentication mechanism for homenetwork environment using robot vacuum cleaner
4 Conclusion
This paper provides new authentication mechanism using mobile devices to overcome
the limitation of existing mechanism. To protect the risks of breaches of private
information or home security. We suggest an authentication mechanism which has the
characteristics:
First step of authentication is processed using mobile device, Second After the suc-
cessful processing of first step of authentication using mobile device, the authentica-
tion agency issues second authentication code via the mobile device that the customer
already has. The customer inputs an authentication code by himself with mobile de-
vice such as cellular phone. Finally, The security service provider is authenticated by
authentication code. New authentication mechanism suggested in this paper may
protect the security risks that the existing mechanism exposes, but it requires one
more step using mobile device which makes the home security service using robot
vacuum cleaner customer to suffer from difficulties. So, further researches must pro-
vide: The easy of usage of secured authentication, and the protection mechanism.
References
Abstract. This study designed a system that prevents the leakage of informa-
tion flowing through physical communication networks in ubiquitous comput-
ing environment. The information security system was designed from the view-
point of information life cycle based on u-Office' service scenario and, as a re-
sult, security holes were identified including indiscreet information access, ma-
licious information leakage, unauthorized information alteration, illegal infor-
mation retrieval, information leakage using various portable storage devices and
printed-out information leakage. In addition, this study defined and designed
essential security technology required to resolve these security holes.
1 Introduction
Existing business administration has emphasized the specialization of each staff in
performing tasks but the introduction of information technology has changed the
traditional business pattern. That is, information technology brought integrated infor-
mation systems to support information sharing and task performance in companies.
Examples of such systems are intranet, groupware, knowledge management system,
electronic document management system, management information system, etc.
Particularly with the rapid development of relevant technologies, the scope of in-
formation sharing is expanding as ubiquitous computing environment makes it possi-
ble for subminiature computer devices connected to networks to be imbedded in ac-
tual physical spaces and to utilize information while the user does not recognize it.
In such computing environment, anyone, as long as he/she is authenticated as “I”,
can access a specific place within the company and inside information at any time and
in any place. From a different viewpoint, however, the accessibility of all shared in-
formation at any time and in any place means that information can be easily exposed,
altered and leaked out. Thus there are more security holes than before and the safe
management of information becomes more difficult.
The present study designed a system that minimize information leakage, which
may happen in intelligent information environment, using mobile terminals in order to
promote the realization of real ubiquitous services.
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 128 – 137, 2005.
© Springer-Verlag Berlin Heidelberg 2005
Design of Inside Information Leakage Prevention System 129
2 Related Research
information leakage while enabling staffs inside the company to access inside infor-
mation at any time and in any place and supporting high work efficiency.
mobile computers (Tablet PC, PDA, Smart Phone, etc.). In addition, because they
have to use different programs according to the form of inside information crated,
encrypted information cannot be used in other incompatible programs. In these ways,
convenient information flow among various devices and programs, which is the big-
gest characteristic of ubiquitous computing environment, is impeded.
3 Research Methods
The present study purposes to observe and model the flow of users’ behavior in per-
forming tasks in ubiquitous computing environment, in which mobility is emphasized,
and to design a security technology that solves security holes discovered in the flow.
to the shortage of time and information, his computer restores the state at the moment
he stopped the work outside. The web browser and the spreadsheet program, with
which he worked, are shown on the computer as they were, and are downloaded video
clips as well. All the information may be displayed using a wide wall that can be seen
at a glance and all these procedures may be controlled by voice.
Model users’ various task-performing behaviors in ubiquitous computing environ-
ment (Agent-based Modeling) and analyze security holes related to the behaviors
This study designed External AOR Model and Internal AOR Model using AORML
(Agent Object Relationship Modeling Language) suggested by Wagner. Fig. 2 shows
agent diagrams and an interaction frame diagram as parts of External AOR Model,
which were modified based on the scenario presented above.
Analyze security holes along the life cycle of information based on the model of
expected u-Office' service
Information Security
Required security technology
life cycle Confidentiality Integrity Availability
Real-time encryption of user files and folders O O
Creation Encryption of information kept in information system O O
Control over the use of information through
O O
authorization
Just-in-time user authentication O
Use
Limiting the edition of confidential information O O
Addition of watermarking to print-outs O
Control over mobile terminals taken in and out O O
Delivery Control over mobile storage devices O O
Creation of security files for outside transmission O O O
Destruction Automatic destruction of confidential information O
134 H. Chang and K.-K. Kim
Define major security technologies that need to develop and design for implement-
ing the technologies
• Real-time encryption of user files and folders: Information created by users must
be encrypted selectively or compulsorily according to the information security
policy.
If a separate security folder is designated and the access right policy is defined,
all information stored or moved to the security folder must be encrypted automati-
cally according to access right. In addition, information in the subfolders of the se-
curity folder must be encrypted according to access right in the same way. Infor-
mation copied or moved to other folders must be kept in the encrypted state.
• Encryption of information kept in information system: In case a user retrieves
important information stored in a system linked to the company information sys-
tem, the document (including attached files) is encrypted automatically. For com-
patibility with other systems in the linkage of search engines and virus diagnosis,
however, all documents in the information system are stored as plain texts so that
they do not affect existing work flows.
• Control over the use of information through authorization: A malicious inside
user may use important company information at a level exceeding his right. Thus,
rights to use information should be defined specifically by individuals and groups
so that they use information within defined limits (items to define rights: reading,
editing, printing, releasing, taking-out, valid term, automatic destruction, etc.).
• Real-time user authentication: When a user uses confidential information inside
or outside the company, he can use it only when he is allowed to access by real-
time comparison of information on his access right with information on access
right contained in the information.
• Limiting the edition of confidential information: In a joint work, a number of
people share the same information and it is hard to distinguish information editors
from information users. In this case, not only the whole information but also im-
portant data contained in the information must be protected.
• Addition of watermarking to print-outs: When confidential information is printed
out, all forms of print-outs must contain watermarking so that printing actions can
be monitored. When confidential information is printed out, the information and
image of the output are sent to the management server and then information
number, the person who prints, his staff number, his department, the time of
printing, etc. are included in the print-out of the information.
• Control over mobile storage devices: Important information in the company may
be taken out not only through the network by mail and folder sharing but also
through mobile storage devices (floppy disks, hard disks, CD-RW, PDA, etc.). If
the information security policy of the organization requires only selective encryp-
tion of information crated by users, there is no way to prevent information crea-
tors from taking out important information, which is not encrypted, using mobile
storage devices. Thus strict security must be applied to the routes of information
leakage by controlling rights to use mobile storage devices in individuals’ and
groups’ computers.
Design of Inside Information Leakage Prevention System 135
• Creation of security files for outside transmission: It is possible to control the de-
livery of confidential information through setting access rights by document.
When performing a joint task together with external organizations, however, it is
impossible to deliver encrypted information because it cannot be retrieved or
used. On the other hand, if important information is sent in the form of plain text,
it cannot be protected. Thus, user authentication information + access control in-
formation + encrypted information are sent in the form of an executable file so
that only specific designated users can retrieve the content of the information.
The receiver of the file can retrieve and use the information by executing the file
without installing a separate program in his terminal.
• Automatic destruction of confidential information: In case the number of retriev-
als, the number of printings, valid term, etc. have exceeded their limits as set in
access right information, the confidential information is automatically destroyed
and the destroyed information cannot be recovered with general recovery pro-
gram.
The present study designed a system the prevent information leakage out of physi-
cal communication networks in ubiquitous computing environment. In particular, the
information security system was designed from the viewpoint of information life
cycle based on an assumed u-Office' service scenario. As a result, we identified secu-
rity holes such as indiscreet information access, malicious information leakage, unau-
thorized information alteration, illegal information retrieval, information leakage
through various portable storage devices, and print-out information.
In addition, this study defined and designed essential security technologies re-
quired to solve these security holes from the viewpoints of three steps of information
security, which are user authentication, information access control and information
use control. Defined technologies include those for real-time encryption of user files
and folders, encryption of information kept in information system, control over the
use of information through authorization, just-in-time user authentication, limiting the
edition of confidential information, addition of watermarking to print-outs, control
over mobile terminals taken in and out, control over mobile storage devices, creation
of security files for outside transmission and automatic destruction of confidential
information.
This research established policies and systems to protect important information,
which is a valuable asset for the competitiveness of companies, securely even in mo-
bile environment and constructed information system monitoring environment to
track information leakage accidents caused by insiders, which are usually kept in
secrecy. As the information security problem, which is an obstacle to the implementa-
tion of ubiquitous services, has been solved, we expect that the results of this study
may accelerate ubiquitous services and promote the development and standardization
of information security technologies in ubiquitous computing environment, which is
still in the early stage.
Although technologies to be developed can protect general information in a file
through file encryption and access control, however, it is impossible to protect design
and drawing documents and source codes, which include various input files, tempo-
rary files created in each stage, target files, etc., just through the encryption of some
files.
Thus it is necessary in the future to develop a virtual file system that encrypts and
manages information and protects it from any access except that by authenticated
users and application programs in order to cut off the possibility of leakage of infor-
mation on designs and developments while preserving users’ work environment.
References
[1] G. Wagner. “Agent Oriented Analysis and Design of Organizational Information Sys-
tems”. Proc. of Fourth IEEE International Baltic Workshop on Databases and Information
Systems. Vilnius (Lithuania), 2000. 5.
[2] Mark Weiser, “The Computer for the 21st Century,” Scientific American Volume 265,
Number 3, 1991. 9.
[3] Y. Suematsu, K. Takadama, N. Nawa, K. Shimohara, O. Katai, “Analyzing levels of the
microapproach and its implications in the agent-based simulation”, in: Proceedings of the
6th International Conference on Complex Systems, Chuo University, Tokyo, Japan, pp.
44–51, 9–11 2002. 9.
Design of Inside Information Leakage Prevention System 137
[4] G. Wagner. “The Agent Object Relationship metamodel: Towards a uni-fied conceptual
view of state and behavior. Technical report”, Eindhoven Univ. of Technology, Fac. of
Technology Management, Available from http://AOR.rezearch.info, To appear in Infor-
mation Systems, 2002. 5.
[5] F. Bergenti and A. Poggi. “Ubiquitous Information Agents.”, International Journal of Co-
operative Information Systems, 11(3–4):231–244, 2002.
[6] Lalana K, Tim F, Anupam J. “Developing secure agent systems using delegation based
trust management”, In Proceedings of Security of Mobile Multi-Agent Systems Workshop
(AAMAS 2002) 2002;.
Design and Implementation of Home Media Server Using
TV-Anytime for Personalized Broadcasting Service
1 Introduction
Personalized broadcasting service provides contents demanded by individual users at
time when the users want to use. The expansion of digital broadcasting enabled per-
sonalized broadcasting and there are also increasing demands for personalized broad-
casting. Particularly with the popularization of the Internet, users became able to
access broadcasting service servers through return-channel and, as a result, people are
getting more interested in bi-directional personalized broadcasting service.
Users can obtain detailed information about programs such as title, synopsis,
schedule and review, and search specific programs using metadata received in unidi-
rectional broadcasting environment. Metadata expressing such information were stan-
dardized in TV-Anytime Forum [1]. In unidirectional broadcasting environment,
however, the volume of metadata transmitted to users is limited due to limited band-
width allocated to the transmission of metadata and, accordingly, services provided to
individual users are also restricted. Moreover, for the provision of services well-
customized to individual demands, it is necessary to deliver information and requests
of individual users to personalized service providers. If, for the delivery, a communi-
cation function is added to broadcasting HMS through return-channel, bi-directional
personalized service can be provided. Representative examples of bi-directional per-
sonalized service are a person’s retrieval of personalized programs based on the indi-
vidual user’s preference or choice, recommendation of personalized programs based
on individual users’ history of service uses. The standard for metadata communication
between user HMS and metadata servers for bi-directional personalized service was
also established in TV-Anytime Forum [2].
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 138 – 147, 2005.
© Springer-Verlag Berlin Heidelberg 2005
Design and Implementation of Home Media Server Using TV-Anytime 139
As shown in Figure 2 (left), metadata retrieval means a user’s request for specific
metadata service through bi-directional personalized broadcasting HMS and, in re-
sponse to the request, the provision of metadata by the metadata server. For example,
in order to retrieve specific programs, a user requests the metadata server to provide
information about CRID (Content Reference Identifier), title, genre, keyword and
publisher of contents. The request is made through the operation of TV-Anytime
called ‘get_Data’ and the user is provided by the server with information.
For the exchange of XML documents containing metadata between the server and
personalized HMS, there should be network protocol that can be shared by the two
sides. TV-Anytime adopted SOAP (Simple Object Access Protocol) [4] and HTTP [5],
Design and Implementation of Home Media Server Using TV-Anytime 141
3.1 Hardware
3.2 Software
mented in C was used, which runs smoothly with limited CPU and memory resource
in embedded system environment. The process that XML documents are parsed is as
follows. First, a XML file received through the network is stored in hard disk, its
being well-formed is determined, and the validity of the document is checked. In case
there is an abnormality in network environment or in the XML document sent by the
metadata server, HMS requests re-transmission three times and, if transmission is still
abnormal, it display an error message on the screen. Then, the header and tail related
to SOAP are removed from the document and necessary data are extracted. Extracted
data are reconstructed into information for the implementation of personalized service
and provided to the user.
Fig. 4. Structure of Software Layer (left) and Basic Function of PVR (right)
Fig. 6. Snapshot of setting the user preference (left) and Snapshot of metadata service server
response for user preference (right)
Fig. 7. Detailed Information of selected program (left) and snapshot of program list recom-
mended by metadata service server (right)
5 Conclusion
In order to utilize bi-directional personalized broadcasting service, the present study
presented an example of bi-directional personalized service by designing and
implementing bi-directional personalized broadcasting HMS that satisfies TV-
Anytime standard. It showed that broadcasting HMS composed of hardware and
software for bi-directional personalized service can provide bi-directional
personalized broadcasting services effectively in addition to the basic functions of
broadcast receiving and recording under limited resources of the embedded system of
digital broadcasting HMS. The implemented bi-directional personalized broadcasting
HMS sends metadata about individual users’ choice or preference and their
UsageHistory to metadata servers through the return-channel, receives replies from
the servers, and provides personalized services to the users based on the information
from the metadata servers. Bi-directional environment enables services personalized
to each individual’s demand, which are not available in unidirectional environment.
The activation of bi-directional personalized services must be preceded by the
Design and Implementation of Home Media Server Using TV-Anytime 147
References
1. SP003v1.3, TV-Anytime Specification-Metadata, 2003, "http://www. tv-anytime.org"
2. SP006v1.0, TV-Anytime Specification - Metadata Services over a Bi-directional Network,
2003, "http://www.tv-anytime.org"
3. Universal Description Discovery & Integration, Version 3.0, "http://uddi.org/pugs/uddi-
v3.00-published-20020719.htm"
4. Simple Object Access Protocol (SOAP) 1.1, W3C Note, 8 May 2001,
"http://www.w3.org/TR/2000/NOTE-SOAP-20000508"
5. RFC1945- Hypertext Transfer Protocol, HTTP/1.0, "http:// www.ietf.org/rfc/rfc1945.txt"
6. ATSC Standard A/65. Program and System Information Protocol for Terrestrial Broadcast
and Cable, http://www.atsc.org"
7. W3C, Extensible Markup Language (XML) Version 1.0 Recommendation, February
1998, "http://www.w3.org/TR/2004/ REC-xml-20040204"
8. "http://www.xmlsoft.org"
9. “http://www.mysql.com"
10. Lee.j.s. Lee.suk.phil “Design and Implementation of bi-directional TV-Anytime system
for personalized broadcasting service” The Korean Internet Broadcasting / TV Institute
Vol 3, No.1, 2003.
11. Z. Yu and X. Zhou, "TV3P: An Adaptive Assistant for Personalized TV,“ IEEE transac-
tion on Consumer Electronics, Vol. 50, No. 1, Feb. 2004
Optimal Signal Control Using Adaptive
Dynamic Programming
1 Introduction
ITS (Intelligent Transportation Systems) has evolved to address the worsening
traffic problems of congestion, inefficiency, danger, and pollution. One of the
most important issues for successful ITS implementation is to devise a real time,
adaptive signal planning scheme for efficient signal control at an intersection.
In this paper, we address this issue by developing an optimal signal planning
algorithm that gains its efficiency via computational acceleration schemes. Our
objective is to minimize the total delay experienced by the vehicles passing
through an intersection. However, other performance measures can be used by
an appropriate replacement of the cost function.
We can classify traffic control schemes into two major categories. One is com-
posed of fixed cycle schemes and the other consists of adaptive control schemes.
The first method developed based on the fixed cycle scheme is Webster’s Method
[9]. This method and its variants have been widely used. They provide formu-
las for the optimal partition of green time at a fixed cycle intersection. They
also find efficient cycle times. However, fixed cycle signal planning is generally
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 148–160, 2005.
c Springer-Verlag Berlin Heidelberg 2005
Optimal Signal Control Using Adaptive Dynamic Programming 149
From the current state S(t) at time t, we make a decision, x(t), incurring cost
of delay, phases,l vehicles,i Di,l,t (x(t)), and the decision leads to a new state
after the corresponding time, tstep , where
0 if the current phase is maintained as green
x(t) =
1 otherwise
Δ if x(t) = 0
tstep =
tc = tY R + tM G if x(t) = 1
Di,l,t (x(t)) = delay incurred by vehicle i at phase l by the decision x(t) at time t
l i Di,l,t (x(t)) = total delay incurred at an intersection by the decision x(t)
at time t
(t+Δ,p(t+Δ),m(t+Δ),n(t+Δ))
x(t)=0, ΣiΣl Di,l,t (0)
(t,p(t),m(t),n(t))
tc tc
Δ Δ
H-Δ t H H t H+Δ
tc tc
Δ Δ
as in the backward recursion. Let Y (t) be the set of decisions leading to the cur-
rent state, (t, p(t), m(t), n(t)) (refer to Figure 2). Note that Y (t) can have more
than two decisions to the current state by the state aggregation from the decision
tree.
Then the forward functional equation is:
where
Δ if y(t) = 0
ty =
tc if y(t) = 1
Since forward recursion starts from the beginning of the DP network, the
boundary condition is simple: f (0, p(0), m(0), n(0)) = 0. However, because of
the end of horizon effect, the minimum total delay we will obtain at the end of
the recursion is a little complicated, as in the following (refer to Figure 3):
⎧
⎪
⎪ {f (t − ty , p(t − ty ), m(t − ty ), n(t − ty ))+
⎨ minH≤t≤H+Δ {miny(t)=0,1
min l i Dl,i,t−ty (y(t)/H)}}
⎪
⎪ {f (t − ty , p(t − ty ), m(t − ty ), n(t − ty ))+
⎩ minH+Δ<t≤H+tc {miny(t)=0
l i Dl,i,t−ty (y(t)/H)}}
x(t-Δ)
x(t-tc) (t,p(t),m(t),n(t))
x(t-Δ)
we can perform the DP recursion without prior knowledge of all possible states
of the DP network. The next section will discuss an efficient DP algorithm using
reaching with acceleration by dominated state pruning.
Proof. Since the arrival pattern at time t which has led to each state is the same,
and two states are at the same time and the same green phase, (m(t), n(t)) ≤
(m (t), n (t)) means that among the vehicles which have arrived at the inter-
section by time t, the sequence of decisions leading to state, (t, p(t), m(t), n(t)),
has cleared more vehicles out of the intersection. Thus, the vehicles of the state,
(t, p(t), m (t), n (t)) include the vehicles of the state (t, p(t), m(t), n(t)).
From the lemma, we can show that we can eliminate inferior states from
consideration without loss of optimality.
Theorem 1. Consider two states, (t, p(t), m(t), n(t)) and (t, p(t), m (t), n (t)),
with respective value functions f and f . If (m(t), n(t)) ≤ (m (t), n (t)) and
f ≤ f , then the state, (t, p(t), m (t), n (t)), can be eliminated without loss of
optimality.
Proof. The future process from each state only depends on the number of vehicles
on each phase since the two states are on the same green phase at the same time.
From the lemma (m(t), n(t)) ≤ (m (t), n (t)) means that there may be additional
vehicles on each phase of state, (t, p(t), m (t), n (t)). Moreover, since f ≤ f , the
future process from state, (t, p(t), m (t), n (t)), will incur more delay than the
process from state, (t, p(t), m(t), n(t)), for any sequence of decisions.
Now, we are ready to show a reaching algorithm for optimal signal control
with acceleration of state pruning through incumbent and state comparison.
Throughout the algorithm, we will maintain:
P is the set of states whose permanent optimal value functions have been
found, whereas T is the set of states whose optimal value functions are not found
yet. However, temporary states have (temporary) value functions. Also, we will
include the value function in the state for convenience, so the modified state
consists of (t, p(t), m(t), n(t), f ).
ALGORITHM
Step 0: Initialization
– t = 0, Incumb = ∞, P = ∅, T = {(0, p(0), m(0), n(0), 0)}
Step 1: Stopping Criterion
– eliminate any state with f ≥ Incumb from T .
– if T = ∅, stop.
Step 2: State Selection
– select a state from T with smallest t (if tie, smallest value function; if
tie, smallest total number of vehicles).
– call it current state, (t, p(t), m(t), n(t), f ).
156 C.O. Kim, Y. Park, and J.-G. Baek
The algorithm stops when the temporary state set, T , is empty, that is,
when every state in the network is either assigned its optimal value function or
eliminated. Then, the optimal solution can be found by selecting a state from
the set P with the smallest value function at the horizon. Step 3 and Step 5 are
acceleration procedures which eliminate unnecessary states by comparing states
and comparing value functions with the incumbent, respectively. Note that Step
1 also has incumbent comparison to remove some of the temporary states which
were included by the previous (worse) incumbent. Step 6 is the aggregation
process for states from the tree produced by the reaching process of Step 4. It is
this aggregation process which gives the name of dynamic programming to this
algorithm.
Optimal Signal Control Using Adaptive Dynamic Programming 157
4 Experiments
In this section, we will at first solve an example problem using the reaching
algorithm developed in the previous section. The example is taken from [7]. The
arrival pattern during the next 10 unit times is depicted in Figure 4.
0 1 2 3 4 5 6 7 8 9 10
C C B B A,B A A,B B
A,7 (5,A,0,2,2)
B,8
(3,A,0,0.2) (6,B,1,0,2)
C,9
A,5 (6,C,1,3,0) (10,B,0,0,0)
A,12
(6,A,0,3,2)
B,5 B,4
(5,B,0,0,2) B,3
(0,C,0,0,0) (3,B,0,0,2)
C,9
C,0 (6,C,1,3,0)
A,0
(5,A,0,0,2) (8,A,0,2,0)
B,0 A,5
(2,C,0,0,0) (5,B,0,0,0)
C,0
(4,C,0,1,0)
Figure 5 shows a part of the whole decision tree for the example. Note that
by aggregating the two states (6, C, 1, 3, 0) on the decision tree, we can transform
this decision tree into a DP network (Step 6). The optimal solution is imposing
2 unit times of green time to Phase C, 2 unit times of green time to Phase B,
158 C.O. Kim, Y. Park, and J.-G. Baek
2 unit times of green time to Phase A, and 1 unit time of green time to Phase
B with yellow-red times between phase transitions as depicted in Figure 6. The
total delay caused by the sequence of green phases is 8. Note that the last green
phase does not meet the minimum green time requirement, as we assumed.
C C B B A A B
No. of
Planning vehicles Optimal CPU time Aggregation Acceleration
horizon arrived delay RFDP ADPAS
10 16 33 0.05 0.0001 7 15
11 18 43 0.511 0.0003 6 23
12 17 40 0.831 0.0007 12 52
13 20 47 1.722 0.01 24 81
14 20 42 4.086 0.02 34 87
15 21 53 13.61 0.07 72 226
16 23 67 64.362 0.14 112 484
17 25 67 123.376 0.26 158 631
18 26 73 434.535 0.39 243 1004
19 26 69 N/A 0.641 298 1300
20 28 91 N/A 1.352 446 2380
21 30 80 N/A 2.464 509 3617
22 32 100 N/A 3.113 646 4119
23 34 119 N/A 4.786 866 6088
24 36 123 N/A 6.62 1044 7875
25 38 132 N/A 10.114 1261 11392
26 40 141 N/A 14.12 1523 14548
27 41 161 N/A 19.468 1862 17937
Optimal Signal Control Using Adaptive Dynamic Programming 159
5 Conclusion
In this paper, we developed an efficient adaptive dynamic programming algo-
rithm for the optimal signal control of a single intersection to minimize the total
delay incurred by the vehicles passing through the intersection. We called it AD-
PAS (Adaptive Dynamic Programming Algorithm for Signaling). Compared to
other algorithms, including COP which also adopts a DP approach, it is the first
algorithm which gives an exact optimal signal policy to minimize total delay at
an intersection with any phase sequencing. COP’s decision is “how many green
times in each fixed sequence of phase” from each state, whereas ADPAS decides
“which phase to be green” for a predetermined amount of time. ADPAS can
be easily modified to give any of the signal plans under COP’s decision making
policy by selecting an appropriate amount of green time.
ADPAS assumes a fixed horizon for the signal plan by ignoring the effect of
uncleared vehicles at the intersection when the horizon is reached. However, the
end-of-horizon effect should be studied further since the sequence of decisions
leading to vehicle-remaining by the horizon could be penalized by its incom-
pleteness. Finding a reasonably good (not time consuming) starting incumbent
might be a future research topic, since the acceleration can be increased with
this good incumbent. An important future research topic is to develop a coordi-
nated signal control system for a traffic network with an adaptive signal control
scheme at each intersection. Without the coordination of signal plans at each
intersection, even the best signal policy at each intersection could fail to capture
savings possible through system wide coordination.
References
1. E.V. Denardo, Dynamic Programming: Models and Applications, Prentice Hall,
1982.
2. N.H. Gartner, “OPAC: A demand-responsive strategy for traffic signal control,”
Transportation Research Record, vol. 906, pp. 75-81, 1983.
3. J.J. Henry, J.L. Farges, and J. Tuffal, “The PRODYN real time traffic algorithm,”
4th IFAC-IFIP-IFORS Conference on Control in Transportation System, Baden
Baden, Germany, 1983.
4. P.B. Hunt, D.I. Robertson, R.D. Bretherton, and R.I. Winton, “SCOOT - a traf-
fic responsive method for coordinating signals,” Laboratory Report no. LR 1014,
Transportation and Road Research, Crowthorne, Berkshire, England, 1981.
5. V. Mauro and D. DiTaronto, “UTOPIA,” Proceedings of the 6th
IFAC/IFIP/IFORS Symposium on Control Computers and Communication in
Transportation, no. 12, pp. 245-252, 1990.
6. I. Porche and S. Lafortune, “Adaptive look-ahead optimization of traffic signals,”
Technical Report no. CGR 97-11, Department of Electric Engineering and Com-
puter Science, The University of Michigan, 1997.
7. S. Sen and K.L. Head, “Controlled optimization at an intersection,” Transportation
Science, vol. 31, pp. 5-17, 1997.
160 C.O. Kim, Y. Park, and J.-G. Baek
8. A.G. Sims, “The Sydney coordinated adaptive traffic system,” Urban Transport
Division of ASCE Proceedings, Engineering Foundation Conference on Research
Directions in Computer Control of Urban Traffic Systems, New York, NY, pp.
12-27, 1979.
9. F.V. Webster, “Traffic Signal Settings,” Road Research Technical Paper, no. 39,
HMSO, London, 1958.
10. S. Yargar and B. Han, “A procedure for real-time signal control that considers
transit interference and priority,” Transportation Research B, vol. 28, pp. 315-331,
1994.
Inverse Constrained Bottleneck Problems on
Networks
Department of Mathematics,
City University of Hong Kong,
Hong Kong
xcguan@163.com
1 Introduction
Inverse optimization problem has become a favorite topic recently, which was
motivated by its background in traffic planning, and then was developed into
more and more application fields, such as high speed communication, computer-
ized tomography, isotonic regression, conjoint analysis in marketing, etc [4]. In
an inverse optimization problem, a candidate solution is given and the goal is to
modify parameters of the original problem so that the given solution becomes an
optimal one under the new parameters and simultaneously minimize the costs
incurred by the modification of parameters [5]. The modification cost function is
typically a convex function of the magnitude of the deviation, where the norms
l1 , l2 , l∞ are generally used. When the objective function of the original problem
is in the form of min max{ci xi |i ∈ I} (or max min{ci xi |i ∈ I}), for example,
Bottleneck Spanning Tree problem (BST), only few results on the correspond-
ing inverse optimization problems are given, where Cai, Yang and Zhang [3]
proved that the inverse center location problem is strongly NP-hard and Zhang
et al. [8,10] presented polynomial algorithms for some inverse max-min (or min-
max) optimization problems.
Before we introduce the Inverse Constrained Bottleneck Problem (ICBP),
we first present the Constrained Bottleneck Problem (CBP) on a network G =
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 161–171, 2005.
c Springer-Verlag Berlin Heidelberg 2005
162 X. Guan and J. Zhang
(V, E), which is a special case of the problem discussed in [1]. For each edge
e, define two weights w1 (e) and w2 (e). Let F be a set of edges that have some
required properties. We refer to F as a feasible solution and let F be the set of all
feasible solutions. For any F ∈ F, let g(F, w1 ) := maxe∈F w1 (e) be w1 -weight
2 2 2
bottleneck function and f (F, w ) := e∈F w (e) be w -weight sum function.
The problem (CBP) is to find a feasible solution that minimizes the bottleneck
weight subject to a budget constraint on the sum weight, which is mathematically
formulated as follows:
min g(F, w1 )
F ∈F
There are a variety of problems suitable to the model, such as F is the set of all
spanning trees and the set of all paths between a pair of nodes. Now we define the
inverse problem (ICBP) we focus on in this paper. Given a network G = (V, E)
and a feasible solution F ∈ F, we wish to modify the two weight vectors w1
and w2 such that F becomes an optimal solution to the constrained bottleneck
problem under new weight vectors w 1 and w2 . Moreover, let b1+ , b1− , b2+ , b2− ≥ 0
be four bound functions and c1 , c2 > 0 be two cost functions defined on E,
we require that w1 − b1− ≤ w 1 ≤ w1 + b1+ , w2 − b2− ≤ w 2 ≤ w2 + b2+ , and
max{maxe∈E {c1 (e)|w 1 (e)−w1 (e)|}, maxe∈E {c2 (e)|w
2 (e)−w2 (e)|}} is minimum.
We call it the inverse problem under weighted l∞ norm, denoted by (ICBPb ) for
simplicity.
The inverse problem (ICBP) has many potential applications in real world.
An interpretation is given in the context of a transportation network G as follows
[6]: Let w1 (e) be the time for constructing the edge e in G and w2 (e) be its
construction cost. Assume that all edges are constructed simultaneously. Given
a spanning tree T of G, we want to modify the two weight vectors, such that T
can be constructed in the least amount of time satisfying a prescribed budget
B on the construction cost under the new parameters, and the modification is
as small as possible. Obviously, it is just the Inverse Constrained Bottleneck
Spanning Tree Problem (ICBST), in which no restrictions on the modifications
of weights are required.
Note that the inverse constrained bottleneck problem is to modify the pa-
rameters both in the objective function and in the constraints. Most published
literatures on inverse optimization problems have concerned the modification of
coefficients only in the objective function. One of the few except is the inverse
maximal flow problem considered in [9].
The remainder of this paper is organized as follows. When the modifications
of two weight vectors are proportioned, we present a general method to solve
the problem (ICBP) under weighted l∞ norm in Section 2. Conclusion remarks
and further research are given in Section 3.
Inverse Constrained Bottleneck Problem on Networks 163
For the inverse problem (ICBP), we assume that the modifications of weight
vectors w1 and w2 are proportioned throughout the paper in the form of w 2 (e) −
w (e) = Δc(e)(w (e) − w
2 1
(e)), where Δc(e) > 0 is the modification ratio.
1
p (e)
w 2
− w2 (e) = Δc(e)(w1 (e) − w
p1 (e)), ∀e ∈ E,
p1 (e) ≤ β(e), ∀e ∈ E,
α(e) ≤ w
where ρ1 (e) := max{c1 (e), Δc(e)c2 (e)} for any e ∈ E. Denote by C(p) the opti-
mal objective value of problem (ICBPb (p)). Then we will determine the optimal
solution to the inverse problem (ICBPb ) by the properties of function C(p) on
the interval [gl (F), gu (F)].
164 X. Guan and J. Zhang
order and denote the ordered set of costs by R(p) := {r1 , · · · , ri , · · · , rl }, where
l ≤ |F(p)|. For any value x, let Fp (x) := {e ∈ F(p)|ρ2 (e)(w2 (e) − μp (e)) ≤ x}.
Then w p2 (e) ≥ max{μp (e), w2 (e) − ρ2x(e) } = μp (e) for any edge e ∈ Fp (x)
and w p2 (e) ≥ w2 (e) − ρ2x(e) for any edge e ∈ F(p)\Fp (x). Define a function
hp (x) := min e∈F (p) w p2 (e), then
hp (x) = e∈Fp (x) μp (e) + e∈F (p)\Fp (x) (w2 (e) − x/ρ2 (e)).
Inverse Constrained Bottleneck Problem on Networks 165
and
p2 (e) := max{μp (e), w2 (e) − ĉp (F(p))/ρ2 (e)}, ∀e ∈ F(p).
w (3)
Note that the algorithm can find the optimal value ĉp (F(p)) in O(|F | log |F |)
operations. Furthermore, the optimal solution to problem (ICBPb (p)) is
p2 (e) := w
w p2 (e), w
p1 (e) := w1 (e) + 1 2
Δc(e) (w (e) p2 (e)), ∀e ∈ F(p)
−w
(4)
p (e) := wp (e), w
w 2 2
p1 (e) := wp1 (e), otherwise,
We call it the Inverse Bottleneck Problem under weighted l∞ norm with value
p, denoted by (IBPb (p)). Next we solve the problem (IBPb (p)) based on the
following property.
Lemma 2. If the problem (IBPb (p)) is feasible, then there is an optimal solu-
tion w̆p1 to problem (IBPb (p)) such that for any e ∈ E(p),
p, if w̆p1 (e) > w1 (e),
w̆p1 (e) = 1 (6)
w (e), otherwise.
166 X. Guan and J. Zhang
Proof: Let w̄p1 be any optimal solution to problem (IBPb (p)), then we show that
⎧ 1
⎨ w (e), if e ∈ E 1 := {e ∈ E(p)|p > w̄p1 (e) > w1 (e)},
1
w̆p (e) := p, if e ∈ E 2 := {e ∈ E(p)|w̄p1 (e) = p},
⎩ 1
w (e), if e ∈ E 3 := {e ∈ E(p)|w̄p1 (e) = w1 (e)},
is also an optimal solution, which satisfies the condition (6). Obviously, E(p) =
E 1 ∪ E 2 ∪ E 3 . For any F ∈ F(p), we claim that F := F ∩ (E 2 ∪ E 3 ) = ∅.
Otherwise, maxe∈F w̄p1 (e) = maxe∈E 1 w̄p1 (e) < p, which contradicts the feasibility
of w̄p1 . Then maxe∈F w̆p1 (e) = maxe∈F w̆p1 (e) = maxe∈F w̄p1 (e) = p. Note that
w̆p1 (e) ≤ w̄p1 (e) ≤ βp (e) for any e ∈ E(p). Therefore, w̆p1 is a feasible solution. For
the optimality of w̆p1 , it is easy to see that
Next we only consider the optimal solution to problem (IBPb (p)) satisfying
the condition (6). Let E(p) := {e ∈ E(p)|p ≤ β(e)} be the set of edges whose
w1 -weight can be increased to p. In order to solve the problem (IBPb (p)), we
define a capacity vector cp : E(p) → R as follows:
1
ρ (e)(p − w1 (e)), ∀e ∈ E(p),
cp (e) := (7)
+∞, ∀e ∈ E(p)\E(p).
Let K(p) be the optimal solution to problem (BC(p)) and let cp (K(p)) :=
maxe∈K(p) cp (e) be the corresponding objective value. If cp (K(p)) = +∞, then
the instance is infeasible; otherwise we define w̄p1 as follows:
1 p, ∀e ∈ K(p),
w̄p (e) := (9)
w1 (e), ∀e ∈ E(p)\K(p).
(p) w̄p (e) ≤ Bp , then (w 1 , w
2 ) is an optimal solution to problem
2
If e∈F
2 p p
w̄p (e), ∀e ∈ F(p) ∪ K(p)
(ICBPb (p)), where w p2 (e) := and wp1 (e) := w1 (e) +
wp2 (e), f or other edges
w2 (e)−w
p2
(e)
. Furthermore, the modification cost incurred is C(p) := C(p).
Δc(e)
Otherwise, C(p) > C(p), we need to solve an inverse constraint problem
(ICPb (p)) for F (p)\K(p) in the form of problem (2) except for replacing F(p)
with F (p)\K(p) and replacing Bp with Bp := Bp − e∈F (p)∩K(p) w̄p2 (e). Let the
optimal solution obtained by (3) be w2 (e), ∀e ∈ F(p)\K(p), then we define
p
⎧ 1
⎪
⎪ p (e) := p,
w p2 (e) := w2 (e) − Δc(e)(p − w1 (e)), ∀e ∈ K(p),
w
⎪
⎨ 2 w2 (e)−w
p2
∀e ∈ F(p)\K(p),
(e)
p (e) := w
w p2 (e), w
p1 (e) := w1 (e) + ,
Δc(e) (11)
⎪
⎪ p (e) := p,
1
p (e) := w (e) + Δc(e)(w (e) − p), ∀e ∈ F(p),
2 2 1
⎪w
⎩
w
p1 (e) := w1 (e), w
w p2 (e) := w2 (e), f or other edges.
Remark 1. Note that in this case (i.e., C(p) > C(p))
p2 (e) =
w wp2 (e) + wp2 (e) + p2 (e) = B.
w
e∈F (p)
e∈F (p)∩K(p)
e∈F (p)\K(p)
e∈F
b2− (e)
({w1 (e), w1 (e) + b1+ (e), w1 (e) + ∈ E} ∪ {gl (F)}) ∩ [gl (F), gu (F)],
Δc(e) |e
sort these values in a strictly increasing order, say gl (F ) = q1 < q2 < · · · < qt =
gu (F), where t = O(|E|). Next we analyze the properties of the modification
cost C(p) in the subinterval (qk , qk+1 ], then find the optimal solution to problem
(ICBPb ) based on the properties.
Note that the possible value of the modification cost C(p) is in the form of
1
ĉp (F(p)) := ( μp (e) + w2 (e) − Bp )/ ,
ρ2 (e)
p (ri )
e∈F (p)\F
e∈F p (ri ) (p)\F
e∈F p (ri )
and
cp (K(p)) := minK∈K(p) maxe∈K ρ1 (e)(p − w1 (e)),
where K(p) is the collection of feasible cuts of F(p), that is, K ∈ K(p) if and
only if K is a cut of F(p) and β(e) ≥ p for all e ∈ K. It is known from [10]
that if cp (K(p )) < +∞ for some p ∈ (qk , qk+1 ), then cp (K(p)) < +∞ for all p ∈
(qk , qk+1 ]. Moreover K(p) = K(qk+1 ), cp (K(p)) = minK∈K(qk+1 ) maxe∈K ρ1 (e)(p−
w1 (e)) and F(p) = F(qk+1 ), c̃p (F(p)) = maxe∈F (qk+1 ) ρ1 (e)(w1 (e) − p) for all
p ∈ (qk , qk+1 ]. Similarly, F(p) = F(qk+1 ) and Fp (x) = Fq (x). Note that both
k+1
Bp := B − (qk+1 ) [w
e∈F
2
(e) + Δc(e)(w1 (e) − p)]
and
μp (e) := w2 (e) − Δc(e) min{p − w1 (e), b1+ (e), b2− (e)/Δc(e)}
operations [1].
Let F be a system of all assignment solutions, then a minimal cut K of F is
the edge set of a subgraph of G induced by VX ∪ VY with VX ⊆ X, VY ⊆ Y and
|VX | + |VY | = n + 1 [2]. Here a minimal cut K of F means that K is a cut of F,
but K\e is not a cut of F for any edge e ∈ K. Next we present the main idea of
finding a bottleneck cut of F(p) by performing a binary search on the capacities
cp (e) of edges e ∈ E(p). In each iteration, we consider the edge subset Ek including
the edges in E(p) whose capacity is no more than the current considered capacity,
then we are mainly to check if the set Ek is a cut of F(p) or not, which is equivalent
to checking if Ḡk = (V, E(p)\Ek ) contains or not an assignment solution of F(p).
Thus the bottleneck cut can be found in O(n3 log m) operations and accordingly
the complexity of the problem (ICBAPb ) is O(m2 n3 log m). A numerical example is
available, but due to space limitation, please see the complete version of the paper
from the web site http://www6.cityu.edu.hk/ma/people/jason.html.
w2 (e) = Δc(e)(w1 (e) − w 1 (e)), where Δc(e) > 0, we present a general method
to solve the problem (ICBP) under weighted l∞ norm. We can also consider the
problemunder weighted l1 norm, denoted by (ICBPs ), where the objective function
is min e∈E [c1 (e) |w 1 (e) − w1 (e)| + c2 (e)|w
2 (e) − w2 (e)|]. Similar to the case of
l∞ norm, the main problem to consider is the restricted problem (ICBPs (p)) when
E + (p) is not a cut of F, which is equivalent to solving a minimum constrained cut
problem defined as follows:
min (c2 (e) + c1 (e)/Δc(e))(w2 (e) − w
p2 (e))
e∈E(p)
s.t. E(p) := {e ∈ E(p)|w p2 (e) = w2 (e) − Δc(e)(p − w1 (e))} is a cut of F(p),
p2 (e) ≤ Bp ,
w (12)
e∈F (p)
Let K(p) ⊆ E(p) be the minimum cut of F(p) under the capacity function cp , which
is defined as (7) by replacing ρ1 (e) with c1 (e)+Δc(e)c2 (e). Note that when we reduce
the weights w2 (e) on edges e ∈ F(p)\K(p), (F(p) ∪ K(p)) ∩ E(p) may contain other
cuts of F(p) except K(p), thus we may obtain less modification costs to satisfy all the
constraints in (12). This is the main dilemma to solve such a problem. Therefore, it
is difficult to present a general method and we hope to obtain some specific method
based on its combinatorial properties.
Note that another proportioned relationship between the modifications of two
vectorsisw2 (e)−w 2 (e) = Δc(e)(w1 (e)−w 1 (e)),whereΔc(e) > 0,whichmeansthat
if the weightw (e)decreases (increases) by oneunit, then w2 (e) decreases (increases)
1
by Δc(e) units. Now we briefly analysis the difficulties to solve the problem (ICBP)
in this case. Note that when we reduce the weights w1 (e) to wp1 (e) := p for edges in
F(p), the wights w2 (e) decrease correspondingly. Furthermore, to satisfy the budget
constraint on the sum of w2 -weights on F, the weights w2 (e) of all the edges in F,
even of the edges whose wp1 -weights are equal to p, can be reduced. On the other
hand, when we increase the weights w1 (e) to p to obtain a cut of F, the weights w2 (e)
increase, too. Thus, no matter whether E + (p) is a cut of F or not, the inverse problem
can not be transformed into two sub-problems to solve as in Section 2. We have to
consider the modifications of the two weights simultaneously, that is, to satisfy the
bottleneck restriction on w1 -weights and the budget constraint on the sum of w2 -
weights simultaneously. Therefore, the inverse problem under weighted l∞ (or l1 )
norm is hard to solve, and we hope to solve the problem for some specific system F
based on its combinatorial structure.
References
1. Berman, O., Einay, D., Handler, G.: The constrained bottleneck problem in networks.
Oper. Res. 38 (1988) 178–181
2. Burkard, R.E., Lin, Y., Zhang, J.: Weight reduction problems with certain bottleneck
objectives. European J. Oper. Res. 153 (2004) 191–199
Inverse Constrained Bottleneck Problem on Networks 171
3. Cai, M., Yang, X., Zhang, J.: The complexity analysis of the inverse center location
problem. J. Global Optim. 5 (1999) 213–218
4. Heuberger, C.: Inverse optimization, a survey on problems, methods, and results. J.
Comb. Optim. 329 (2004) 329–361
5. Hochbaum, D.S.: Efficient algorithms for the inverse spanning tree problem. Oper.
Res. 51 (2003) 785–797
6. Punnen, A., Nair, K.: An improved algorithm for the constrained bottleneck spanning
tree problem. INFORMS J. Comp. 8 (1996) 41–44
7. Schrijver, A.: Combinatorial Optimization: Polyhedra and Efficiency. Springer-Verlag
Berlin (2003)
8. Yang, C., Zhang, J.: Inverse maximum capacity problems. OR Spektrum. 20 (1998)
97–100
9. Yang, C., Zhang, J., Ma, Z.: Inverse maximum flow and minimum cut problems. Op-
timization. 40 (1997) 147–170
10. Zhang, J., Yang, X., Cai, M.: Some inverse min-max network problems under weighted
l1 and l∞ norms. Techniqual report. (2004)
Dynamic Scheduling Problem of Batch
Processing Machine in Semiconductor
Burn-in Operations
1 Introduction
In the final testing stage of semiconductor manufacturing, burn-in oven is mod-
eled as a batch-processing machine. Different Integrated Circuits (IC) require
different minimum baking time and IC of different jobs (lots) are inserted onto
suitable boards and then transferred to the oven for processing. After a long
processing time of the thermal stress heating process, IC with latent defects due
to infant mortality can be brought out. To ensure the quality of the product,
the processing time of a batch is assigned to the longest processing time among
all jobs in the batch, and once the processing of the batch starts, it cannot be
interrupted and no job can be removed from the oven until the processing of the
batch is complete.
Lee et al. (1992) first introduced the semiconductor burn-in scheduling prob-
lem and they have fully described the production characteristics of the burn-in
operation and provided an efficient algorithm to minimize the number of tardy
jobs and maximum tardiness under 1/B/agr.pi , di , 1/ri , pi = p, B/agr.ri , di
assumptions. Li and Lee (1997) not only extended the above assumption to
1/ri , B/agr.ri , di , pi , that is, jobs can be arranged in such a way that r1 ≤ r2 ≤
· · · ≤ rn , d1 ≤ d2 ≤ · · · ≤ dn and p1 ≤ p2 ≤ · · · ≤ pn , but also proved that those
two problems, including minimizing maximum tardiness and minimizing total
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 172–181, 2005.
c Springer-Verlag Berlin Heidelberg 2005
Dynamic Scheduling Problem of Batch Processing Machine 173
k
qik = si , i = 1, 2, · · · , n (2)
k=1
K
xki = Qi , i = 1, 2, · · · , n (3)
k=1
qik > 0 ⇒ xki = 1
qik = 0 ⇒ xki = 0
C k ≥ Rk + P k k = 1, 2, · · · , K (8)
ci ≥ C k × xki i = 1, 2, · · · , n, k = 1, 2, · · · , K (9)
Rk+1 ≥ C k k = 1, 2, · · · , K − 1 (10)
Constraint (1) defines that the total flow time is equal to the sum of job’s com-
pletion time minus job’s available time. Constraint (1) ensures that the quantity
of each batch does not exceed the capacity of a machine. Constraint (2) ensures
that the sizes (quantity) of each job. Constraint (3) specifies that the total num-
ber of batches that each job is handled. In constraint (4), if job i is processed
in batch B k then xki will be assigned as 1 otherwise xki will be 0. In constraint
(5), the
s processing
quantity of job i in batch B k , i.e., qik , will be equal to M or
mod M i
. (If ski > M , then we will split the job into two sub-lots, i.e., M and
176 P.-C. Chang, Y.-S. Chen, and H.-M. Wang
si
mod M ; otherwise qik = ski .). Constraint (6) defines the available time of the
kth batch. Constraint (7) specifies the processing time of the kth batch. Con-
straint (8) defines the completion time of the kth batch. Constraint (9) defines
the completion time of each job. Constraint (10) ensures that the starting time
of the kth batch is greater than or equal to the previous batch’s completion time.
The solution procedure of constraint programming is by constraint propaga-
tion that will eliminate the solution space from the set of variable’s domain and
infer new constraint from that. Therefore, the software package ILOG OPL is
applied to solve the problem.
k
I k : the idle time before batchB k .
B : the processing quantity in batchB k .
Lk : number of jobs in batchB k .
w : the indicator of batch B k .
wi : the new indicator after assigning job i into batch B k .
t : the ready time of burn-in oven.
3.2 Properties
Property 1: If there exits a job α with rα = min ri and pα = min pi , and there
i i
is a job β with rβ ≥ max (t, rα ) + pα and sα + sβ ≤ M for α, β ∈ σ , then
sequence {σ, (α, β)}is dominated by sequence {σ, α}.
Proof: According to Dessouky and Deogun (1981), sequence {σ , β} is domi-
nated by sequence {σ, α} when rβ ≥ max (t, rα ) + pα . Next, we need to prove
that sequence {σ , α} dominates over sequence {σ, (α, β)}.
Dynamic Scheduling Problem of Batch Processing Machine 177
Given a sequence {σ, α, β} and a set of un-sequenced
jobs σ , the total
flow times (T F )of this schedule, i.e., σ, α, β, σ is equal to T F = F (σ) +
max(t, rα ) + pα + max {max(t, rα ) + pα , rβ } + pβ + F σ
Since rβ ≥ max (t, rα ) + pα , the above formula can be simplified as follows:
T F = F (σ) + max(t, rα ) + pα + rβ + pβ + F σ
For a new sequence {σ(α, β)}and a set of un-sequenced jobs σ , when job α
and job β areprocessed inthe same batch, the total flow times (T F ) of this
schedule, i.e., σ, (α, β), σ is equal to
T F = F (σ) + 2 {max(t, rβ ) + max(pα , pβ )} + F σ
Proof: Intuitively, the flow time of each job is greater than or equal to its
processing time. Therefore, the total flow time of each job to be processed in the
burn-in operation will be greater
sithan
the sum of batch processing time on the
burn-in oven, i.e., LB1 ≥ M × pi . Since LB1 is calculated based on job’s
attributes, we name it as job-based bound.
Property 3: Let LB2 be another lower bound of 1/ri , B, si / Fi , then LB2 ≥
LBBW SP T .
Property 4: Let LB3 is another lower bound of 1/ri , B, si / Fi , then
s
k−1 n
si − mod M i
j
1
LB3 = n I1 + P + (k − j + 1)P + P LP T
+ Pi
j=1 i=1
M
Proof:
1. Assume si ≤ M ∀ i = 1, 2, 3, ..., n and each job is only processed once in one
batch, then
F 1 = L1 × I[1] + P [1]
F 2 = L2 × I[1] + P [1] + I[2] + P [2]
..
.
F k = Lk × I[1] + P [1] + I[2] + P [2] + · · · + I[k] + P [k]
Sum up the above formula in the right hand side and left hand side, then
we can derive the following:
k k k
TF = Fk = Lj Ii + P i
i=1 i=1
j=i
k
j
1
k k
j
i
= L I1 + P + j Ii + P
j=1 i=2 j=i
⎧⎛ ⎞ ⎫
k ⎨ ⎬
k
≥ n I1 + P 1 + ⎝ j j ⎠ Ii + P i
⎩ ⎭
i=2 j=i
⎡ ⎤
k
(since ⎣ Lj ⎦ ≥ n)
j=1
k−1
≥ n I1 + P 1 + (k − j + 1)P j + P LP T
j=1
j
(where P is in SPT order and(k − j + 1) is the weight for job pj ; P LP T is
the largest job among the set of unscheduled jobs.)
In Property 2, by relaxing the dynamic problem into static problem and
applying SPT rule to derive the lower bound, we can arrange all batches
except first batch in SPT order and the corresponding processing time for
each batch is pj . Here, pLP T is the largest batch processing time among all
batches except first batch. And notice that we do not have idle time before
or after each batch.
2. For jobs with si > M , then we can partition the problem into two sub-
problems, one problem is si < M and another problem is si ≥ M . Then
combining LB1 and condition (1), we can obtain the following result.
s
k−1
n
si − mod M i
Property 5: Given a sequence σ, if there are two successive jobs that can be
combined into a new batch to form a new sequence σ . If the completion time of
a new batch is greater than that of the original batch in σ, then the total flow
time T F of σ will be greater than the total flow timeT F of σ.
Proof: Suppose a successive job list contains two jobs i and j and they can be
combined into a single batch since si + sj ≤ M. However, Job j arrives later
than the completion time of Job i, therefore Job i can only be combined with
job j and forms a new batch. Figure 1 shows the difference between the schedule
of σ and σ . Since job 1 is delayed, the increment in flow time is θ1 . As for
job j, the increment in flow time will be θ2 and it is the difference between
batch j processing time and batch (i,j) processing time. θ2 > 0 if job i has a
larger processing time; otherwise θ2 = 0. This result is true for two more jobs in
successive processing orders.
Fig. 1. The effect of the total flow time between sequences σ and σ
According to BWSPT, weights for job i and job j before and after the merge
are as follows:
pi pj
wi = and wj = before the merge
1 1
pi + pj + θ 1 + θ 2
and wij = after the merge.
|B k |
There is only one batch after the merge but w ≥ w since θ1 ≥ pi and θ2 ≥ pj .
Therefore, we will not combine job i and job j into the same batch
4 Conclusion
The problem we considered, i.e., 1/rj , sj , B/ F , where the job sizes can be
greater or smaller than the capacity of oven, distinguishes this paper from
180 P.-C. Chang, Y.-S. Chen, and H.-M. Wang
past work in this area. For small size of problem, we constructed a constraint-
programming model to obtain an optimal solution. In addition, we also provided
some properties, which have been applied in developing the heuristic algorithm,
to further reduce the size of the solution space. Computational results show
that the heuristic is capable of obtaining a good solution with very reasonable
computation times.
There are several directions for future research in our study, such as develop-
ing a tighter lower bound and more efficient heuristics. In addition, extensions
of this study to include other soft-computing approaches such as evolutional
approach, tabu search and simulated annealing, etc., are very applicable in the
future research. Also, different performance measures and parallel batch process-
ing machines can be further considered as an extension of this research.
References
1. Chandru, V., Lee, C.-Y., and Uzsoy, R.: Minimizing total completion time on batch
processing machines. International Journal of Production Research. 31 (1993a)
2097-2121.
2. Chandru, V., Lee, C.-Y., and Uzsoy, R.: Minimizing total completion time on a
batch processing machine with job families. Operations Research letter. 13 (1993b)
61-65.
3. Chang, P.C., Wang, H.M., and Su, L.H.: Scheduling job with burn in board con-
straint on Semiconductor Burn-In operations to minimize the mean flow time,
Proceeding of the 5th Annual Conference on Industrial Engineering-Theory, Ap-
plications, and Practice December 13-15, Hsin-Chu Taiwan, R.O.C. (2000).
4. Chang, P.C. and Wang, H.M.: A Genetic Algorithm to minimize makespan for
dynamic single batch processor scheduling, Proceeding of the 33rd International
Conference on Computers and Industrial Engineering, (2004a) 834-840.
5. Chang, P.C., and Wang, H.M.: A heuristic for a batch processing machine sched-
uled to minimize total completion time with non-identical job sizes. International
Journal of Advanced Manufacturing Technology. 24 (2004b) 615-620.
6. Dessouky, M. I. and J. S. Deogun: Sequencing jobs with unequal ready times to
minimize mean flow time. SIAM Journal of Computing. 10 (1981) 192-202.
7. DuPont, L., and Jolai Ghazvini, F.: A branch and bound algorithm for minimizing
mean flow time on a single batch processing machine. International Journal of
Industrial Engineering. 4 (1997) 197-203.
8. DuPont, L., and Dhaenens-Flipo, C.: Minimizing the makespan on a batch ma-
chine with non-identical job sizes: an exact procedure. Computers & Operations
Research. 29 (2002) 807-819.
9. Kempf, K.G., Uzsoy, R., and Wang, C.-S.: Scheduling a Single Batch Processing
Machine with Secondary Resource Constraints. Journal of Manufacturing Systems.
17 (1998) 37-51.
10. Lee, C.-Y., Uzsoy, R., and Martin-Vega, L.A.: Efficient algorithms for scheduling
semiconductor burn-in operations. Operations Research. 40 (1992) 764-775.
11. Lee C.-Y. and Uzsoy, R.: Minimizing makespan on a single batch processing ma-
chine. International Journal of Production Research. 37 (1999) 219-236.
12. Li, C.-L. and Lee, C.-Y.: Scheduling with agreeable release times and due dates on
a batch processing machine European Journal of Operational Research. 96 (1997)
564-569.
Dynamic Scheduling Problem of Batch Processing Machine 181
13. ILOG, 2001, ILOG OPL Studio 3.5 User’s Manual, ILOG, France.
14. Jolai Ghazvini, F. and Dupont, L.: Minimizing mean flow times criteria on a single
batch processing machine with non-identical jobs sizes, International Journal of
Production Economics. 55 (1998) 273-280.
15. Melouk, S., Damodaran P., and Chang P.Y.: Minimizing makespan for single ma-
chine batch processing with non-identical job sizes using simulated annealing. In-
ternational Journal of Production Economics. 87 (2004) 141-147.
16. Sung, C.S. and Choung, Y.I.: Minimizing makespan on a single burn-in oven in
semiconductor manufacturing. European Journal of Operational Research. 120
(2000) 559-574.
17. Uzsoy, R.: Scheduling a single batch processing machine with non-identical job
sizes. International Journal of Production Research. 32 (199e4) 1615-1635.
18. Uzsoy, R. and Wang, C. S.: A Genetic Algorithm to Minimize Maximum Lateness
on a Batch Processing Machine. Computers and Operations Research. 29 (2002)
1621-1640.
Polynomial Algorithm for Parallel Machine
Mean Flow Time Scheduling Problem
with Release Dates
1 Introduction
The problem considered can be stated as follows. There are n independent jobs
and m identical parallel machines. For each job i = 1, . . . , n we know its process-
ing time pi , and its release time ri . Each machine can process only one job at a
time, and at any moment any job can be processed only by one but arbitrary ma-
chine. Preemptions of processing are allowed, i.e. the processing of any job may
be interrupted at any time and resumed later, possibly on a different machine,
the total time of processing job i being equal to pi . For a schedule s, let Ci (s)
denote the time at which job i completes its processing. If no ambiguity arises,
we drop the reference to schedule s and write Ci . The problem is to schedule
n
all the jobs so as to minimize the optimality criterion i=1 Ci . Following the
well known classification scheme [7] suggested by Graham et al. the described
problem can be denoted as P | ri , pmtn | Ci .
For the problem P | pmtn | wi Ci with the more general objective function
wi Ci and release times ri = 0 for all jobs i McNaughton [12] has shown that
preemption is redundant, i.e. P | pmtn | wi Ci has the same solution value as
the non-preemptive problem P || wi Ci . Thus, P | pi = p, pmtn | wi Ci can
be solved by solving P | pi = p | wi Ci , which can be formulated as a network
flow problem. If we have release timesri = 0 we have a different situation even
for problems with objective function Ci . For P | ri , pi = p | Ci an optimal
schedule can be constructed by scheduling jobs j in an order of nondecreasing
release times at the earliest time t ≥ ri at which somemachine is available.
However, the preemptive version P | ri , pi = p, pmtn | Ci usually provides
a schedule with smaller objective
value than the optimal objective value for an
instance of P | ri , pi = p | Ci , as demonstrated in Figure 1. The main result
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 182–191, 2005.
c Springer-Verlag Berlin Heidelberg 2005
Polynomial Algorithm for Parallel Machine 183
in this paper is a polynomial algorithm for P | ri , pi = p, pmtn | Ci . This
algorithm has two steps. In a first step the job finishing times for an optimal
schedule are calculated by solving a linear program with O(n3 ) variables and
constraints. Using the corresponding finishing times an optimal schedule can
be constructed by solving a maximum flow problem in a second step. We also
0 2 4 5 7 8 10 13 15
1 3 5
2 4
r1 r2 r3 r4 r5
(a) Optimal non-preemptive schedule Ci = 50
0 2 4 5 8 9 13 14
1 2 4
2 3 5
r1 r2 r3 r4 r5
(b) Preemptive schedule with better Ci = 49
Fig. 1. Preemption provides a better schedule for P | ri , pi = p | Ci
show that our result can be applied to obtain a polynomial algorithm for the
open shop problem O | ri , pij = 1 | Ci . Finally, we prove that the problem
P | ri , pmtn | Ci with arbitrary processing times is unary NP-hard.
Previous results which are related to our results are listed below.
P 2 | ri , pi = p, pmtn
| Ci O(n log n) algorithm [8]
Om | ri , pij = 1| Ci O(n2 m3m ) algorithm [15]
P 2 | ri , pmtn | Ci binary NP-hardness [5]
P | ri , pi = p, pmtn | wi Ci unary NP-hardness [10]
We refer the reader desiring to know more about the listed problems to [3], [13].
The paper is organized as follows.In Section 2 we describe a polynomial
algorithm for P | ri , pi = p, pmtn
| Ci . In Section 3 we give a polynomial
algorithm for O | ri , pij = 1 | Ci . Throughout the paper we suppose that all
the jobs are enumerated in such a way that r1 ≤ . . . ≤ rn holds. Furthermore
we assume that r1 = 0.
2 A Polynomial Algorithm for P | ri, pi = p, pmtn | Ci
section we derive a polynomial algorithm for problem P | ri , pi = p,
In this
pmtn | Ci .
Statement 1. For problem P | ri , pi = p, pmtn | Ci an optimal schedule can
be found in the class of schedules, where C1 ≤ . . . ≤ Cn holds.
184 P. Brucker and S.A. Kravchenko
We set rn+1 = rn + p · n, i.e. rn+1 is a time point after which no job will be
processed. Let s∗ be an optimal schedule for P | ri , pi = p, pmtn | Ci with
C1 (s∗ ) ≤ . . . ≤ Cn (s∗ ). We define C0i = ri , Cn+1
i
= ri+1 for all i = 1, . . . , n and
set for job j = 1, . . . , n
⎧
⎨ Cj (s∗ ) if ri < Cj (s∗ ) < ri+1
i
Cj = ri if Cj (s∗ ) ≤ ri
⎩
ri+1 if Cj (s∗ ) ≥ ri+1
define a partition of the interval [ri , ri+1 ]. Note that C0i and Cn+1
i
are added
(i,k)
for technical reasons. Furthermore, we denote by vj the processing time of
i i i
job j in the interval [Ck , Ck+1 ]. Then the values Cj (j = 0, . . . , n + 1; i =
(i,k)
1, . . . , n) and vj (i, j = 1, . . . , n; k = 0, . . . , n) define a feasible solution of the
following linear program which we denote by SLP. SLP has O(n3 ) variables and
constraints, i.e. it can be solved polynomially (see [4] for computational aspects
of linear programming problems).
Minimize
n
((C1i − ri ) + . . . + (Cni − ri )) (2)
i=1
subject to
k
C21 = . . . = Cn1 = r2 ; . . . ; Ck+1 = . . . = Cnk = rk+1 ; . . . ; Cnn−1 = rn ; (3)
(i,k)
vj ≤ Ck+1
i
− Cki , i, j = 1, . . . , n, k = 0, . . . , n; (4)
n
(i,k)
vj ≤ m(Ck+1
i
− Cki ), i = 1, . . . , n, k = 0, . . . , n; (5)
j=1
n
n
(i,k)
vj = p, j = 1, . . . , n; (6)
i=j k=0
(i,j) (i,n)
vj = . . . = vj = 0, i, j = 1, . . . , n; (7)
(i,k)
Cji ≥ 0, i, j = 1, . . . , n; vj ≥ 0, i, j = 1, . . . , n, k = 0, . . . , n. (9)
Clearly restrictions (3) and (8) hold for s∗ . Restrictions (4) and (5) are capac-
ity constraints for m machines in the interval (Cki , Ck+1
i
). (6) must hold because
the job must be totally processed.
Polynomial Algorithm for Parallel Machine 185
Let i(j) be the index such that ri(j) < Cj (s∗ ) = Cj ≤ ri(j)+1 . Restriction
i(j)
holds.
The next theorem shows that conversely any feasible solution of SLP also
provides a feasible schedule.
Theorem 2. Any feasible solution of problem SLP provides a feasible schedule
for the scheduling problem P | ri , pi = p, pmtn | Ci . This schedule can be
constructed in O(n3 ) time and the total number of preemptions is bounded by
O(n3 ).
Note, that Cj is a real completion time of the job j, i.e. there is some δ > 0,
such that job j is processed in (Cj − δ, Cj ), and job j is not processed in the
interval (Cj , ∞). Whereas for Cji it may happen that there is some δ > 0, such
that job j is not processed in (Cji − δ, Cji ). We now study the relationships
n
between the i=1 Ci -value and the optimal solution value of SLP.
Unfortunately, it is possible that for a feasible schedule the values Cji can be
(i,k)
chosen in such a way that together with the corresponding vj -values they are
feasible for SLP and
n
n
((C1i − ri ) + . . . + (Cni − ri )) < Ci (11)
i=1 i=1
r9 , C59 = 19, C69 = C79 = C89 = C99 = 22, C110 = C210 = r10 , C310 = C410 = C510 =
23, C610 = 24, C710 = 26, C810 = C910 = C10 10
= 27 provide a feasible solution for
10
SLP with i=1 ((C1i − ri ) + . . . + (C10
i
− ri )) = 224.
186 P. Brucker and S.A. Kravchenko
0 10 15 18 23 24 26
1 4 6 3 6 8
2 5 4 5 8 9 4 9
3 4 5 3 7 5 7 10
r1 = . . . = r5 r6 = r7 r8 = r9 r10 r11
Fig. 2. Here m = 3, p = 10, r1 = . . . = r5 = 0, r6 = r7 = 11, r8 = r9 = 18, r10 = 22,
r11 = 27 hold
Theorem 4. If s is a schedule such that for any job j with Cj = Cji , we have
n n
Cjq = rq+1 for each q < i, then i=1 Ci = i=1 ((C1i − ri ) + . . . + (Cni − ri ))
holds.
Thus, if the solution of the corresponding problem SLP is such that the
condition of Theorem 4 holds, then we obtain an optimal schedule for the problem
P | ri , pi = p, pmtn | Ci . However, the condition of Theorem 4 does not
necessarily hold for any solution of SLP. Now we show that if the condition of
Theorem 4 does not hold then there is a procedure, such that any solution n of SLP
can be transformed into a new schedule s without increasing the i=1 ((C1i −
ri ) + . . . + (Cni − ri )) - value, and such that the condition of Theorem 4 holds for
s.
In the remainder of this chapter we will prove
Theorem 5. Consider an optimal solution of problem SLP with values Cji for
i, j = 1, . . . , n and let s be a corresponding schedule for P | ri , pi = p, pmtn |
Ci . Then s can be transformed into a schedule s such that
Let s be the solution of problem SLP, such that not for all jobs j with
Cj = Cji , Cjq = rq+1 holds for q < i. Say that job j is incorrect if Cjq = rq+1
does not hold for all q < i, where Cji = Cj .
Let t1 < t2 < . . . < tN be all the preemption points, i.e. all values ti such
that there is a job j and some δ > 0 such that j is processed in (ti − δ, ti ) and j
is not processed in (ti , ti + δ).
An iteration of our transformation can be described in 5 steps as follows:
Step 1. Take the maximal point tp such that at least one incorrect job is com-
pleting at time tp , tp ∈]ri , ri+1 ], see Figure 3. It is possible that there
are several jobs completing at tp and some of them are incorrect. Then
by Lemma 1 we can denote all incorrect jobs completing at tp by j +
1, j + 2, . . . , j + z, and the conditions Cji < Cj+1 i i
= Cj+2 i
= . . . = Cj+z ≤
i
Cj+z+1 hold.
g
Step 2. Take the minimal value of g, g < i, such that Cj+1 = rg+1 holds for
(rg , rg+1 ), see Figure 3. Let y jobs from the set {j + 1, . . . , n} finish
g
at time Cj+1 , i.e. Cjg ≤ Cj+1
g g
= Cj+2 = . . . = Cj+y g g
< Cj+y+1 . By
Lemma 2, y ≤ z holds.
Step 3. Take δ = min{δ1 , δ2 }, where
g g
• δ1 > 0 is the greatest value such that in (Cj+1 , Cj+1 + δ1 ) at most m
jobs are processed;
• δ2 > 0 is the greatest value such that in (Cj+1 i
− δ2 , Cj+1
i
) jobs j +
1, . . . , j + y are processed without interruptions.
g g
Step 4. Take y (possibly empty1 ) jobs from (Cj+1 , Cj+1 + δ), such that they are
not processed in (Cj+1 − δ, Cj+1 ). By Lemma 3 this is always possible.
i i
g g
Step 5. Switch these y jobs taken from (Cj+1 , Cj+1 + δ) with jobs j + 1, . . . , j + y
from (Cj+1 i
− δ, Cj+1
i
). Add to the set t1 , . . . , tN the points Cj+1 i
− δ and
g
Cj+1 + δ, see Figure 3.
n
i=1 ((C1 −
i
By Lemma 4 any iteration of our transformation does not change
ri ) + . . . + (Cni − ri )) value.
We will apply Step 1 - Step 5 to our schedule until all incorrect jobs are
eliminated. In Lemma 4, and 5 we prove that in a finite number of steps we will
obtain an optimal schedule.
1 g
If on a machine no job is scheduled in (Cj+1 , Cj+1
g
+ δ) this defines an empty job.
188 P. Brucker and S.A. Kravchenko
j+1 j+1
.. ..
. .
j+y j+y
.. ..
. .
j+z
δ δ
+,-. +,-. -
rg Cj+1
g
Cj+y+1
g
rg+1 ri Cji tp = Cj+1
i ri+1
hold
0 10 15 18 23 24 26
1 4 6 4 6 8
2 5 4 5 8 9 8 9
3 4 5 3 7 10
r1 = . . . = r5 r6 = r7 r8 = r9 r10 r11
holds.
Lemma 3. In Step 4 we can always choose the necessary number of jobs from
g g
(Cj+1 , Cj+1 i
+ δ) such that they are not processed within (Cj+1 − δ, Cj+1
i
).
value.
We will apply Steps 1-5 to s as long as we find incorrect job. When all jobs
in our schedule are not incorrect, the obtained schedule is an optimal one.
Polynomial Algorithm for Parallel Machine 189
Thus, we see that if the optimal solution of problem SLP has the objective
value
n
((C1i − ri ) + . . . + (Cni − ri )) (14)
i=1
and
hold.
Therefore, to find an optimal schedule we do not need to apply our transfor-
mation. We can solve the following network flow problem, see [11]:
Suppose that all points r1 , . . . , rn , C1 , . . . , Cn are enumerated in increasing
order of their values: t1 < . . . < tk . We construct a network which has the
following vertices:
– a source u and a sink w,
– job vertices {j | j = 1, . . . , n},
– time interval vertices {(ti , ti+1 ) | i = 1, . . . , 2n − 1}.
The arcs in our network are
– for each j, j = 1, . . . , n, there is an arc (u, j) with capacity p, and there is an
arc (j, (ti , ti+1 )) if rj ≤ ti and ti+1 ≤ Cj hold,
– for each vertices (ti , ti+1 ), i = 1, . . . , 2n − 1 there is an arc ((ti , ti+1 ), t) with
capacity m · (ti+1 − ti ).
Any maximal flow will define an optimal schedule for the instance of problem
P | ri , pi = p, pmtn | Ci .
3 A Polynomial Algorithm for O | ri, pij = 1 | Ci
It is known [2] that problem
O | ri , pij = 1 | Ci is equivalent to the problem
P | ri , pi = m, pmtn+ | Ci , where m is the number of machines. The meaning
of pmtn+ is that jobs can preempt at integer points only. Thus, to show that
O | ri , pij = 1 | Ci is polynomially solvable, we have to show
Theorem 6. Any schedule for P | ri , pi = m, pmtn | Ci , where ri and m
are integers, can be transformed in a polynomial time into a new schedule with
preemptions
and finishing times at integer points only, in such a way that the
Ci -value will not increase.
190 P. Brucker and S.A. Kravchenko
4 Concluding Remarks
We want to note that the algorithm for P | ri , pi = p, pmtn | Ci can be
generalized to solve problem P | ri , pmtn | wi Ci with arbitrary processing
times pi if the order of completion times in an optimal schedule is known. This
is the case if the processing times, the due dates, and the release times are
agreeable, i.e. if pi ≤ pj and wi ≥ wj hold for all i, j with ri ≤ rj . Then again an
optimal schedule can be found in the class of schedules where Ci ≤ Cj if ri ≤ rj .
In this generalized algorithm one has to replace p by pj in equation (6) and
((C1i − ri ) + . . . + (Cni − ri )) by wi ((C1i − ri ) + . . . + (Cni − ri )) in (2). To achieve
this general result one has to modify the proof of Theorem 3 slightly. The other
arguments in Section 2 are the same.
Due to the fact that the modified problem SLP provides a feasible schedule for
any ordering of the completion times one may apply local search procedures to
find an optimal ordering of completion time for problem P | ri , pmtn | wi Ci .
The most interesting related open problem is problem P | ri , pi = p | Ui . It
has beenshown in [9] that the corresponding preemptive problem P | ri , pi = p,
pmtn | Ui is unary NP-hard and it is possible that the nonpreemptive version
of this problem is polynomially solvable.
References
1. Baptiste, Ph., Brucker, P.: Scheduling Equal Processing Time Jobs: A Survey. In:
Leung, Y. T.(ed.): Handbook of Scheduling: Algorithms, Models, and Performance
Analysis, CRC Press LLC, Boca Raton, FR, (2004) 78-96
2. Brucker, P., Jurisch, B., Jurisch, M.: Open shop problems with unit time opera-
tions. Z. Oper. Res. 37 (1993) 59-73
3. Brucker, P.: Scheduling Algorithms. 3rd edn. Springer, Berlin (2001)
4. Chvatal, V.: Linear programming. Freeman, New York (1983)
5. Du, J., Leung, J. Y.-T., Young, G.H.: Minimizing mean flow time with release time
constraint. Theoretical Computer Science 75 (1990) 347-355
6. Garey, M. R., Johnson, D.S.: Computers and intractability. A guide to the theory
of NP-completeness. W.H. Freeman and Company, San Francisco, (1979)
7. Graham, R. L., Lawler, E.L., Lenstra, J.K., Rinnooy Kan, A.H.G.: Optimization
and approximation in deterministic sequencing and scheduling: A survey. Ann Dis-
crete Math 5 (1979) 287-326
8. Herrbach, L.A., Leung, J. Y.-T.: Preemptive scheduling of equal length jobs on
two machines to minimize mean flow time. Operations Research 38 (1990) 487-494
9. Kravchenko, S.A.: On the complexity of minimizing the number of late jobs in unit
time open shop. Discrete Applied Mathematics 100 (2000) 127-132
Polynomial Algorithm for Parallel Machine 191
10. Leung, J.Y.-T., Young, G.H.: Preemptive scheduling to minimize mean weighted
flow time. Information Processing Letters 34 (1990) 47-50
11. Lawler, E.L.: Combinatorial Optimization: Networks and Matroids. Holt, Rinehart
and Winston, New York (1976).
12. McNaughton, R.: Scheduling with deadlines and loss functions. Management Sci-
ence 6 (1959/1960) 1-12
13. Mokotoff, E.: Parallel machine scheduling problem: survey. Asia-Pacific Journal of
Operational Research 18 (2001) 193-242
14. Schrijver, A.: Combinatorial Optimization. Springer, Berlin (2003)
15. Tautenhahn, T., Woeginger, G. J.: Minimizing the total completion time in a unit-
time open shop with release times. Operations Research Letters 20 (1997) 207-212
Differential Approximation of min sat, max sat
and Related Problems
(Extended Abstract)
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 192–201, 2005.
c Springer-Verlag Berlin Heidelberg 2005
Differential Approximation of min sat, max sat and Related Problems 193
if it does not satisfy all the clauses) is feasible and represents the worst-value
solution for the problem. The latter problem is similar to the former one, up to
the fact that we wish to minimize the sum of the weights of the variables set
to 1 and that feasible is now considered the assignment setting all the variables
to 1.
A problem Π in NPO is a quadruple (IΠ , SolΠ , mΠ , opt(Π)) where: IΠ
is the set of instances (and can be recognized in polynomial time); given x ∈
IΠ , SolΠ (x) is the set of feasible solutions of x; the size of a feasible solu-
tion of x is polynomial in the size |x| of the instance; moreover, one can de-
termine in polynomial time if a solution is feasible or not; given x ∈ IΠ and
y ∈ SolΠ (x), mΠ (x, y) denotes the value of the solution y of the instance x; mΠ
is called the objective function, and is computable in polynomial time; we sup-
pose here that mΠ (x, y) ∈ N; opt(Π) ∈ {min, max}.
Given an instance x of an optimization problem Π and a feasible solution
y ∈ SolΠ (x), we denote by optΠ (x) the value of an optimal solution of x, and
by ωΠ (x) the value of a worst solution of x. The standard approximation ratio of y
is defined as rΠ (x, y) = mΠ (x, y)/optΠ (x), while the differential approximation
ratio of y is defined as δΠ (x, y) = |mΠ (x, y) − ωΠ (x)|/|optΠ (x) − ωΠ (x)|.
For a function f of |x|, an algorithm is a standard f -approximation algorithm
(resp., differential f -approximation algorithm) for a problem Π if, for any in-
stance x of Π, it returns a solution y such that r(x, y) f (|x|), if opt(Π) = min,
or r(x, y) f (|x|), if opt(Π) = max (resp., δ(x, y) f (|x|)).
With respect to the best approximation ratios known for them, NPO prob-
lems can be classified into approximability classes. One of the most notorious
such classes is the class APX (or DAPX when dealing with the differential
paradigm) including the problems for which there exists a polynomial algorithm
achieving standard or differential approximation ratio f (|x|) where function f is
constant (it does not depend on any parameter of the instance).
We now define a kind of reduction, called affine reduction and denoted by AF,
which, as we will see, is very natural in the differential approximation paradigm.
Definition 1. Let Π and Π be two NPO problems. Then, Π AF-reduces to Π
(Π ≤AF Π ), if there exist two functions f and g such that: (i) for any x ∈ IΠ ,
f (x) ∈ IΠ ; (ii) for any y ∈ SolΠ (x), g(x, y) ∈ SolΠ (x); moreover, SolΠ (x) =
g(x, SolΠ (f (x))); (iii) for any x ∈ IΠ , there exist K ∈ R and k ∈ R (k > 0
if opt(Π) = opt(Π ), k < 0, otherwise) such that, for any y ∈ SolΠ (f (x)),
mΠ (f (x), y) = kmΠ (x, g(x, y)) + K. If Π ≤AF Π and Π ≤AF Π, then Π
and Π are called affine equivalent. This equivalence will be denoted by Π ≡AF Π .
It is easy to see that differential approximation ratio is stable under affine reduc-
tion. Formally, if, for Π, Π ∈ NPO, R = (f, g) is an AF-reduction from Π to Π ,
then for any x ∈ IΠ and for any y ∈ SolΠ (f (x)), δΠ (x, g(x, y)) = δΠ (f (x), y).
Indeed, by Condition (ii) of Definition 1, worst and optimal solutions in x
and f (x) coincide. Since the value of any feasible solution of Π is an affine
transformation of the same solution seen as a solution of Π, the differential
ratios for y and g(x, y) coincide also. Hence, the following holds.
194 B. Escoffier and V.Th. Paschos
We give in this section some affine reductions and equivalences between the
problems dealt in the paper. These results will allow us to focus ourselves only in
the study of max sat, min sat and their restrictions without studying explicitly
max and min dnf. We first recall a result already proved in [7].
Proposition 3. ([7]) max sat ≡AF min dnf and min sat ≡AF max dnf.
The following proposition shows that one can affinely pass from max eksat to
max e(k +1)sat. This, allows us to transfer inapproximability bounds from max
e3sat to max eksat, for any k 4.
Proposition 4. max eksat ≤AF max e(k + 1)sat.
We now show that, for k fixed, problems ksat and kdnf are affine equivalent.
Proposition 5. For any fixed k, max ksat, min ksat, max kdnf, min kdnf,
max eksat, min eksat, max ekdnf and min ekdnf are all affine equivalent.
Proof (Sketch). For affine equivalence between max ksat and min ksat, given n
variables x1 , . . . , xn , denote by Ck the set of clauses of size k and by Ck the set
of clauses of size at most k on the set {x1 , . . . , xn }. Remark that any truth as-
signment verifies the same number vk of clauses on Ck and the same number vk
of clauses on Ck . Note also that, since k is assumed fixed, sets Ck and Ck
are of polynomial size. If φ is an instance of max eksat (resp. min eksat) on
variable-set {x1 , . . . , xn } and on a set C = {C1 , . . . , Cm } of m clauses, consider
for min eksat (resp., max eksat) the instance φ on the clause-set C = Ck \ C.
For the case of max and min ksat, C = Ck \ C
196 B. Escoffier and V.Th. Paschos
3 Positive Results
3.1 Maximum Satisfiability
Consider an instance φ of an optimal satisfiability problem, defined on n vari-
ables x1 , . . . , xn and m clauses C1 , . . . , Cm ; consider also the very classical al-
gorithm RSAT assigning at any variable value 1 with probability 1/2 and, obvi-
ously, value 0 with probability 1/2.Then, denoting by Sol(φ), the set of the 2n
Differential Approximation of min sat, max sat and Related Problems 197
The best standard approximation ratios known for min ksat and min sat are
2(1 − 2−k ) and 2, respectively ([11]). With the ratio just mentioned for min
ksat, the result of Proposition 10 can be simplified as indicated in the following
corollary.
Corollary 3. min ksat is approximable within differential ratio 2k /((2k−1 −
1)m + 2k ).
Proposition 11. min sat is approximable within differential ratio 2/(m + 2).
Also, using Corollary 3 with k = 2 and k = 3, the following corollary holds and
concludes the section.
Corollary 4. min 2sat and min 3sat are approximable within differential ra-
tios 4/(m + 4) and 8/(3m + 8), respectively.
4 Inapproximability
As it is proved in [10], for any p 2 and for any > 0, max e3linp1 cannot
be approximated within standard approximation ratio (1/p) + , even if coef-
ficients in the left-hand sides of the equations are all equal to 1. Note that,
due to Corollary 1, this bound is immediately transferred to the differential
paradigm.
Finally, let us recall the following result of [10], that will be used in this
section.
Proposition 12. ([10]) Given a problem Π ∈ NP and a real δ > 0, there exists
a polynomial transformation g from any instance I of Π into an instance of max
e3lin2 such that: if I is a yes-instance of Π (we use here classical terminology
from [12]), then opt(g(I)) (1 − δ)m, otherwise, opt(g(I)) (1 + δ)m/2.
Proposition 12 shows, in fact, that max e3lin2 is not approximable within
standard ratio 1/2 + , for any > 0.
We prove a result analogous to the one of Proposition 12 from any problem
Π ∈ NP to max e3sat.
Proposition 13. Given a problem Π ∈ NP and a real δ > 0, there exists a
polynomial transformation f from any instance I of Π into an instance of max
e3sat such that:
1
In max e3linp we are given a positive prime p, n variables x1 , . . . , xn in Z/pZ, m
linear equations of type αi xi + αj xj + αk xk = β and our objective is to deter-
mine an assignment on x1 , . . . , xn , in such a way that a maximum number among
the m equations is satisfied.
Differential Approximation of min sat, max sat and Related Problems 199
Proof (Sketch). We first prove that the reduction of Proposition 12 can be trans-
lated into the differential paradigm also. Consider an instance I = g(I) of
max e3lin2 and a feasible solution x = (x1 , x2 , . . . , xn ) for I (we will use
the same notation for both variables and their assignment) verifying k among
the m equations of I . Then, vector x̄ = (1 − x1 , . . . , 1 − xn ), verifies the m − k
equations not verified by x. In other words, opt(I) + ω(I) = m; hence, func-
tion g claimed by Proposition 12 is such that: if I is a yes-instance of Π, then
opt(I ) − ω(I ) (1 − 2δ)m, otherwise opt(I ) − ω(I ) δm.
Consider now an instance I of max e3lin2 on n variables xi , i = 1, . . . , n
and m equations of type xi + xj + xk = β in Z/2Z, i.e., where variables and
second members equal 0, or 1. We transform I into an instance φ = h(I) of
max e3sat in the following way: for any equation xi + xj + xk = 0, we add
in h(I) the following four clauses: (x̄i ∨ xj ∨ xk ), (xi ∨ x̄j ∨ xk ), (xi ∨ xj ∨ x̄k ) and
(x̄i ∨ x̄j ∨ x̄k ); for any equation xi + xj + xk = 1, we add in h(I) the following
four clauses: (xi ∨ xj ∨ xk ), (x̄i ∨ x̄j ∨ xk ), (x̄i ∨ xj ∨ x̄k ) and (xi ∨ x̄j ∨ x̄k ).
Given a solution y for max e3sat on h(I), we construct a solution y for I
by setting xi = 1 if xi = 1 in h(I) also; otherwise, we set xi = 0.
It suffices then to remark that the composition f = h ◦ g (where g is as in
Proposition 12) verifies the statement of the proposition.
However, for the case we deal with, we will take advantage of a combination
of Propositions 5 and 14 in order to achieve the inapproximability bound for
max e3sat given in Proposition 15 that follows.
Proposition 15. Unless P = NP, max e3sat is inapproximable within differ-
ential approximation ratio greater than 1/2.
Corollary 5. For any k 3, max eksat, min eksat, max ksat and min ksat
are differentially inapproximable within ratios better than 1/2.
Proposition 17. For any k 3, neither max eksat, nor min eksat can be
approximately solved within differential ratio greater than 1/p, where p is the
largest positive prime such that 3(p − 1) k.
Finally, max sat being harder to approximate than any max ksat problem, the
following result holds and concludes the section.
Proposition 18. max sat ∈
/ DAPX.
In [3] is defined a logical class of NPO maximization problems called MAX-NP.
A maximization problem Π ∈ NPO belongs to Max-NP if and only if there
exist two finite structures (U, I) and (U, S), a quantifier-free first order formula φ
and two constants k and such that, the optima of Π can be logically expressed
as: maxS∈S |{x ∈ U k : ∃y ∈ U , φ(I, S, x, y)}|. The predicate-set I draws the set
Differential Approximation of min sat, max sat and Related Problems 201
References
1. Ausiello, G., Crescenzi, P., Gambosi, G., Kann, V., Marchetti-Spaccamela, A.,
Protasi, M.: Complexity and approximation. Combinatorial optimization problems
and their approximability properties. Springer, Berlin (1999)
2. Vazirani, V.: Approximation algorithms. Springer, Berlin (2001)
3. Papadimitriou, C.H., Yannakakis, M.: Optimization, approximation and complex-
ity classes. J. Comput. System Sci. 43 (1991) 425–440
4. Crescenzi, P., Kann, V., Silvestri, R., Trevisan, L.: Structure in approximation
classes. SIAM J. Comput. 28 (1999) 1759–1782
5. Hooker, J.N.: Resolution vs. cutting plane solution of inference problems: some
computational experience. Oper. Res. Lett. 7 (1988) 1–7
6. Kamath, A.P., Karmarkar, N.K., Ramakrishnan, K.G., Resende, M.G.: Compu-
tational experience with an interior point algorithm on the satisfiability problem.
Ann. Oper. Res. 25 (1990) 43–58
7. Bazgan, C., Paschos, V.Th.: Differential approximation for optimal satisfiability
and related problems. European J. Oper. Res. 147 (2003) 397–404
8. Monnot, J., Paschos, V. Th., Toulouse, S.: Approximation polynomiale des prob-
lèmes NP-difficiles : optima locaux et rapport différentiel. Hermès, Paris (2003)
9. Escoffier, B., Paschos, V. Th.: Differential approximation of min sat, max sat
and related problems. Cahier du LAMSADE 220, LAMSADE, Université Paris-
Dauphine (2004)
10. Håstad, J.: Some optimal inapproximability results. J. Assoc. Comput. Mach. 48
(2001) 798–859
11. Bertsimas, D., Teo, C.P., Vohra, R.: On dependent randomized rounding algo-
rithms. In: Proc. International Conference on Integer Programming and Combina-
torial Optimization, IPCO. Volume 1084 of Lecture Notes in Computer Science.,
Springer-Verlag (1996) 330–344
12. Garey, M.R., Johnson, D.S.: Computers and intractability. A guide to the theory
of NP-completeness. W. H. Freeman, San Francisco (1979)
Probabilistic Coloring of Bipartite and
Split Graphs
(Extended Abstract)
1 Preliminaries
In minimum coloring problem, the objective is to color the vertex-set V of a
graph G(V, E) with as few colors as possible so that no two adjacent vertices
receive the same color. Since adjacent vertices are forbidden to be colored with
the same color, a feasible coloring can be seen as a partition of V into independent
sets. So, the optimal solution of minimum coloring is a minimum-cardinality
partition into independent sets.
In the probabilistic version of minimum coloring, denoted by probabilis-
tic coloring, we are given: a graph G(V, E) of order n, an n-vector Pr =
(p1 , . . . , pn ) of vertex-probabilities and a modification strategy M, i.e., an algo-
rithm that when receiving a coloring C = (S1 , . . . , Sk ) for V , called a priori so-
lution, and a subgraph G = G[V ] of G induced by a sub-set V ⊆ V as inputs,
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 202–211, 2005.
c Springer-Verlag Berlin Heidelberg 2005
Probabilistic Coloring of Bipartite and Split Graphs 203
at odd levels. We finally focus ourselves on split graphs and show that, in such
graphs, probabilistic coloring is NP-hard, even assuming identical vertex
probabilities.
Let A be a polynomial time approximation algorithm for an NP-hard mini-
mization graph-problem Π, let m(G, S) be the value of the solution S provided
by A on an instance G of Π, and opt(G) be the value of the optimal solution for G
(following our notation for probabilistic coloring, opt(G) = E(G, C ∗ )).
The approximation ratio ρA (G) of the algorithm A on G is defined as ρA (G) =
m(G, S)/opt(G). An approximation algorithm achieving ratio, at most, ρ on any
instance G of Π will be called ρ-approximation algorithm. A polynomial time
approximation schema is a sequence A of polynomial time approximation algo-
rithms which when they run with inputs a graph G (instance of Π) and any
fixed constant > 0, they produce a solution S such that ρA (G) 1 + .
Dealing with approximation issues, we show that the unique 2-coloring (where
all nodes of each set of the initial partition share the same color) achieves approx-
imation ratio 2 in bipartite graphs under any system of vertex-probabilities. Fur-
thermore, we propose a polynomial algorithm achieving approximation ratio 8/7
under identical vertex-probabilities. We also provide a 2-approximation polyno-
mial time algorithm for split graphs under distinct vertex-probabilities and a
polynomial time approximation schema when vertex-probabilities are identical.
Obviously, some of the results presented have several important corollaries.
For instance, since probabilistic coloring is approximable within ratio 2
in general (i.e., under any system of vertex-probabilities) bipartite graphs, it is
so in general trees, paths and even cycles, also. Results here are given without
detailed proofs which can be found in [14].
2 Properties
We give in this section some general properties about probabilistic colorings,
upon which we will be based later in order to achieve our results. In what follows,
given an a priori k-coloring C = (S1 , . . . , Sk ) we will set: f (C) / = E(G, C),
where E(G, C) is given by (1), and, for i = 1, . . . , k, f (Si ) = 1 − vj ∈Si (1 − pj ).
By interchange arguments, it is possible to prove the following properties.
Property 1 has the following very natural particular case which will also be used
in the sequel.
colors of the other vertices unchanged), then the new feasible coloring C verifies
f (C ) f (C).
Proof (Sketch). Consider an optimal solution C ∗ = (S1∗ , S2∗ , . . . Sk∗ ), and assume
that |S1∗ | |S2∗ | . . . |Sk∗ |. Set n = |U ∪D|, n1 = |S| and n2 = n−|S| = n−n1 .
Obviously, n1 n2 .
Based upon Property 4, the worst case for C0 is reached when it is completely
balanced, i.e., when |U | = |D|. In other words, f (C0 ) = f (U )+f (D) 2(1−(1−
p)(n1 +n2 )/2 ). By exactly the same reasoning, f (C1 ) = f (S)+f (U \S)+f (D\S)
1 − (1 − p)n1 + 2(1 − (1 − p)n2 /2 ). Remark also that |S1∗ | |S1 | = n1 . If this
inequality is strict, then, applying Property 4, one, by emptying some colors Sj∗ ,
j > 1, can obtain a (probably unfeasible) coloring C such that f (C ) f (C ∗ )
and the largest color of C is of size n1 ; in other words, f (C ∗ ) f (C )
1 − (1 − p)n1 + 1 − (1 − p)n2 . Setting β = (1 − p)n1 /2 , α = (1 − p)n2 /2 and
using expressions for f (C0 ), f (C1 ) and f (C ∗ ), we get (omitting, for simplicity,
to index ρ by 3-COLOR):
1 1
f (C0 ) f (C1 ) 2(1 − αβ) 3 − β 2 − 2α
ρ(B) = min , min , (2)
f (C ∗ ) f (C ∗ ) 2 − α2 − β 2 2 − α2 − β 2
Then, with some algebra we get that equality of ratios in (2) holds when α =
(1 + β)/2 and, in this case, the ratio is bounded above by 8/7.
Probabilistic Coloring of Bipartite and Split Graphs 207
Consider now two particular classes of trees, denoted by TE and TO , where all
leaves lie exclusively either at even or at odd levels, respectively (root been con-
sidered at level 0). Obviously trees in both classes can be polynomially checked.
The following proposition claims that, under identical vertex-probabilities, pro-
babilistic coloring is polynomial for both TE and TO .
Proposition 7. Consider T ∈ TO (resp. in TE ). Then NO (resp., NE ) is a
maximum independent set of T . Henceforth, under identical vertex-probabilities,
probabilistic coloring is polynomial in TO and TE .
Proposition 8. Under any vertex-probability system 2-coloring is optimal for
stars.
We now deal with cycles with identical vertex-probabilities. In this case, the
following proposition holds.
Proposition 9. probabilistic coloring is polynomial in cycles with identi-
cal vertex-probabilities.
Proof (Sketch). The case of even cycles is immediate by Proposition 6. Consider
an odd cycle C2k+1 = {v1 , . . . , v2k+1 }. One can prove that 3-coloring (S1 , S2 , S3 )
with S1 = {v1 , v3 , . . . , v2k−1 }, S2 = {v2 , v4 , . . . , v2k } and S3 = {v2k+1 } is optimal
for C2k+1 .
5 Split Graphs
We deal now with split graphs. This class of graphs is quite close to bipartite
ones, since any split graph of order n is composed by a clique Kn1 , on n1 ver-
tices, an independent set S of size n2 = n − n1 and some edges linking vertices
Probabilistic Coloring of Bipartite and Split Graphs 209
of V (Kn1 ) to vertices of S. These graphs are, in some sense, on the midway be-
tween bipartite graphs and complements of bipartite graphs. In what follows, we
first show that probabilistic coloring is NP-hard in split graphs even under
identical vertex-probabilities. For this, we prove that the decision counterpart of
probabilistic coloring in split graphs is NP-complete. This counterpart,
denoted by probabilistic coloring (K) is defined as follows: “given a split
graph G(V, E) a system of identical vertex-probabilities for G and a constant
K |V |, does there exist a coloring the functional of which is at most K?”.
Proposition 10. Even assuming identical vertex-probabilities, probabilistic
coloring (K) is NP-complete in split graphs.
Proof (Sketch). The reduction is from 3-exact cover ([15]). Consider a family
S = {S1 , S2 , . . . , Sm } of subsets of a ground set Γ = {γ1 , γ2 , . . . , γn } (∪Si ∈S Si =
Γ ) such that |Si | = 3, i = 1, . . . , m; assume that n is a multiple of 3 and
set q = n/3. The split graph G(V, E) for probabilistic coloring will be
constructed as follows: family S is replaced by a clique Km (i.e., we take a
vertex per set of S); denote by s1 , . . . , sm its vertices; ground set Γ is replaced
by an independent set X = {v1 , . . . , vn }; (si , vj ) ∈ E iff γj ∈ / Si ; p > 1 − (1/q);
K = mp + q(1 − p) − q(1 − p)4 .
One can prove that Γ can be partioned into q subsets of S, if and only
if G admits a coloring C = ({si , vi1 , vi2 , vi3 }i=1,...,q , {sq+1 }, . . . , {sm }), where
Si = {γi1 , γi2 , γi3 } with value f (C) = K.
where the last inequality holds thanks to the unbalancing arguments leading to
∗
Property
/n 2, when we charge color /n S1 with all vertices of S. / Observe also that:
n
1 − i=1 (1 − qi ) 1 − (1 − p1 ) i=1 (1 − qi ) and 1 − (1 − p1 ) i=1 (1 − qi ) p1 .
Combination of all the above leads, after some easy algebra to the claimed
ratio.
Proof (Sketch). Recall that we deal with the case where vertices of S have degree
at most m − 1. One can prove that the number of all the possible m-colorings of
m
the vertices of G satisfying the second part of Lemma 2 is bounded by mm+2 ;
this bound is a constant if m is so. So, one can choose the best among the
m + 1-coloring of Lemma 2 and the m-colorings discussed just above, in order
to produce an optimal solution for probabilistic coloring .
References
1. Murat, C., Paschos, V. Th.: The probabilistic minimum coloring problem. Annales
du LAMSADE 1, LAMSADE, Universit Paris-Dauphine (2003) Available on http:
//l1.lamsade.dauphine.fr/∼paschos/documents/a1pc.pdf.
2. Murat, C., Paschos, V. Th.: The probabilistic minimum coloring problem. In
Bodlaender, H.L., ed.: Proc. 29th International Workshop on Graph Theoretical
Concepts in Computer Science, WG’03. Volume 2880 of Lecture Notes in Computer
Science., Springer-Verlag (2003) 346–357
3. Averbakh, I., Berman, O., Simchi-Levi, D.: Probabilistic a priori routing-location
problems. Naval Res. Logistics 41 (1994) 973–989
4. Bertsimas, D.J.: On probabilistic traveling salesman facility location problems.
Transportation Sci. 3 (1989) 184–191
5. Bertsimas, D.J.: The probabilistic minimum spanning tree problem. Networks 20
(1990) 245–275
6. Bertsimas, D.J., Jaillet, P., Odoni, A.: A priori optimization. Oper. Res. 38 (1990)
1019–1033
7. Jaillet, P.: Probabilistic traveling salesman problem. Technical Report 185, Oper-
ations Research Center, MIT, Cambridge Mass., USA (1985)
8. Jaillet, P.: A priori solution of a traveling salesman problem in which a random
subset of the customers are visited. Oper. Res. 36 (1988) 929–936
9. Jaillet, P.: Shortest path problems with node failures. Networks 22 (1992) 589–605
10. Jaillet, P., Odoni, A.: The probabilistic vehicle routing problem. In Golden, B.L.,
Assad, A.A., eds.: Vehicle routing: methods and studies. North Holland, Amster-
dam (1988)
11. Murat, C., Paschos, V. Th.: The probabilistic minimum vertex-covering problem.
Int. Trans. Opl Res. 9 (2002) 19–32
12. Murat, C., Paschos, V. Th.: The probabilistic longest path problem. Networks 33
(1999) 207–219
13. Murat, C., Paschos, V. Th.: A priori optimization for the probabilistic maximum
independent set problem. Theoret. Comput. Sci. 270 (2002) 561–590
14. Della Croce, F., Escoffier, B., Murat, C., Paschos, V. Th.: Probabilistic coloring
of bipartite and split graphs. Cahier du LAMSADE 218, LAMSADE, Universit
Paris-Dauphine (2004)
15. Garey, M.R., Johnson, D.S.: Computers and intractability. A guide to the theory
of NP-completeness. W. H. Freeman, San Francisco (1979)
Design Optimization Modeling for
Customer-Driven Concurrent Tolerance
Allocation
Young Jin Kim1 , Byung Rae Cho2 , Min Koo Lee3 , and Hyuck Moo Kwon1
1
Department of Systems Management and Engineering,
Pukyong National University, Pusan 608-739, Korea
{youngk, iehmkwon}@pknu.ac.kr
2
Department of Industrial Engineering, Clemson University, Clemson, SC 29634, US
bcho@clemson.edu
3
Department of Information and Statistics,
Chungnam National University, Daejeon 305-764, Korea
sixsigma@cnu.ac.kr
1 Introduction
In engineering design, tolerances are intended to capture variations from an ide-
alized nominal dimension as part of a process of realization in many manufactur-
ing processes. As an integral part of engineering design, tolerance optimization
has become the focus of increased activity as manufacturing industries strive
to increase productivity and improve the quality of their products. The effects
of tolerance optimization are far-reaching. Not only do the tolerances affect the
ability to assemble a final product in terms of functional performance, but they
also affect customer satisfaction, product quality, inspection, and manufacturing
costs of the designed product. Consequently, the importance of the notion of
tolerance has generated a strong demand for enhanced tolerances at a competi-
tive cost by stimulating remarkable changes in the upstream product design and
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 212–221, 2005.
c Springer-Verlag Berlin Heidelberg 2005
Design Optimization Modeling 213
product quality. Thus, there is a need to find the optimum tolerance allocation
scheme minimizing the sum of operating cost and rejection cost while meeting
given design constraints.
Suppose that there are m alternative manufacturing processes for a compo-
nent which have different levels of process precision (or variability). Let uij be
the indicator variable, which takes 1 if the j th process is selected for producing
the component dimension Xi . The operating cost and standard deviation of the
j th process for dimension Xi are denoted by cij and σij , respectively. Denot-
ing the operating costand standard deviationmof dimension Xi by OCi and σi ,
m
respectively, OCi = j=1 cij uij and σi = j=1 σij uij . It is assumed that re-
jection costs are incurred when Xi falls outside the tolerance limits. Letting rUi
and rLi denote the unit rejection costs when Xi falls above the upper tolerance
limit and below the lower tolerance limit, respectively, the expected rejection
cost for component dimension Xi , denoted by E[RCi ], can then be written as
E[RCi ] = P (Xi ≥ μi + ti ) · rUi + P (Xi ≤ μi − ti ) · rLi , (3)
where ti represents the tolerance of component dimension Xi , and the expected
total cost associated with the tolerance allocation, denoted by E[T C], can then
be written as the sum of E[T CASM ], operating costs, and rejection costs as
follows:
n
E[T C] = E[T CASM ] + (OCi + E[RCi ])
i=1
4 τ +T
= k(y − τ )2 fY (y) dy + RU · [1 − FY (τ + T )] + RL · FY (τ − T )
τ −T
n
m
n
+ cij uij + [(1 − Fi (μi + ti )) · rUi + Fi (μi − ti ) · rLi ] , (4)
i=1 j=1 i=1
where FY (·) and Fi (·) denote the cumulative distribution functions of assembly
dimension Y and component dimension Xi , respectively. Note that E[T C] is a
function of process parameters, such as means, variances, and rejection costs, as
well as component tolerances.
3 Optimization Model
To establish an optimization model for tolerance synthesis, one first needs to
consider the stack-up of component tolerances to the assembly dimension. Sup-
pose that components falling outside the tolerance limits are rejected. In this
case, only the fraction of components within the tolerance limits is passed into
the assembly process, which results in a truncated distribution. That is, the com-
ponents are passed into the assembly process only when μi − ti ≤ Xi ≤ μi + ti .
Thus, the corresponding truncated distribution represents the actual population
of components passed into the assembly manufacturing and consequently its as-
sociated parameters, such as mean and variance of the truncated distribution,
Design Optimization Modeling 217
fi (xi )
f˜i (xi ) = 5 μi +ti .
f (x ) dxi
μi −ti i i
Since only the fraction of components within the tolerance limits is passed into
the assembly process (see Fig. 1), the variance of assembly dimension is now
n 2 32
∂f
σ2 = σ̃i2 . (6)
i=1
∂X i
n 2 32 2 32
∂f 2 T
[σ̃i (ti ; σi )] = .
i=1
∂Xi 3Cp
Subject to f (μ1 , μ2 , · · · , μn ) = τ
⎛ ⎞2
n 2 32
⎝ ∂f ⎠ σ̃i2 = T
∂X i 3Cp
i=1 Xi =μi
timin ≤ ti ≤ tmax
i , for i = 1, 2, · · · , n (7)
m
σij uij = σi , for i = 1, 2, · · · , n
j=1
m
uij = 1, for i = 1, 2, · · · , n
j=1
T ≤ T max .
4 A Numerical Example
A glass bead example from Morrison [6] is adapted with some modifications to
demonstrate the proposed model. In the early days of semiconductors, a glass
bead has been used to seal the electrical connections to the transistor. As a major
performance measure of glass beads, the glass volume is perceived to be critical
Design Optimization Modeling 219
to the sealing processes. More detailed descriptions can be found in Morrison [6].
The nominal dimensions of glass bead are set at 1.7mm in diameter (D), 0.6mm
in bore (B), and 1.9mm in length (L). The glass volume, denoted by V , can be
calculated by
π 2
V = D − B 2 L.
4
The variances in individual dimensions contribute to the variations in glass vol-
ume as follows:
2 32 2 32 π
πDL πBL 2 2
2
σV = 2
σD + σB2
+ D2 − B 2 σL ,
2 2 4
where σi2 ’s represent the variances of their respective dimension. Thus, the ob-
jective is to find the optimal precision level and tolerance for each dimension
and the tolerance on the glass volume, while meeting the pre-specified process
capability of glass bead manufacturing process
The process precision levels and their operating cost data are given in Table 1.
Further, the rejections costs associated with each dimension and glass volume
are provided in Table 2. Suppose that the maximum allowable tolerance on the
glass volume is specified at 0.5, i.e., T ≤ T max = 0.5, to meet the functional
requirement. The minimum and maximum tolerances on each dimension are
given by
0.015 = tmin
D ≤ tD ≤ tmax
D = 0.06, 0.045 = tmin
B ≤ tB ≤ tmax
B = 0.18,
Assuming that the manufacturing process for each dimension follows a nor-
mal distribution, one may establish the optimization model for the concurrent
tolerance allocation as shown in equation (7). The proposed optimization model
can be solved by using popular software such as Microsoft Excel and Matlab.
We used the Solver option in Microsoft Excel to solve the optimization model.
Suppose that the process capability of 1.0, i.e., Cp = 1.0, needs to be ensured.
The optimal solutions are then found to be σD = 0.025, σB = 0.062, σL = 0.026,
tD = 0.0552, tB = 0.165, and tL = 0.150 with the expected total cost of $0.953
per bead.
220 Y.J. Kim et al.
5 Concluding Remarks
This article proposes a new method for tolerance allocation in which assem-
bly tolerance and component tolerances are concurrently optimized within an
integrated framework. In the traditional tolerance allocation problem, the com-
ponent tolerances are determined to minimize the manufacturing costs for a
given fixed assembly tolerance. In the proposed model, the assembly tolerance is
viewed as a decision variable to minimize the customer’s quality cost as well as
manufacturing cost while meeting functional requirements. In addition, the pro-
cess precision levels of component dimensions as well as component tolerances
are to be determined in the optimization model. Consequently, the determina-
tion of assembly tolerance and its allocation among component dimensions are
integrated in a single optimization model while incorporating the customer’s
perception on product quality. The proposed method may help a design engi-
neer incorporate the customer’s voice in a quantitative mechanism early at the
design stage, and may provide practitioners with a more visible set of tools in
an assembly manufacturing environment who seek cost effective high quality
products.
References
1. Tang, K., Tang, J.: Design of Screening Procedures: A Review. Journal of Quality
Technology. 26 (1994) 209–226
2. Evans, E.H.: Statistical Tolerancing: The State of The Art. Journal of Quality Tech-
nology. 6 (1974) 188–195
3. Zhang, H., Huq, M.: Tolerance Techniques: The State-of-The-Art. International
Journal of Production Research. 30 (1992) 2111–2135
4. Zhang, H.: Advanced Tolerancing Techniques. John Wiley & Sons Inc. New York
(1997)
5. Vasseur, H., Kurfess, T.R., Cagan, J.: Use of a Quality Loss Function to Select Sta-
tistical Tolerances. Journal of Manufacturing Science and Engineering. 119 (1997)
410–416
6. Morrison, S.J.: Variance Synthesis Revisited. Quality Engineering. 11 (1998) 149–
155
Application of Data Mining for Improving Yield
in Wafer Fabrication System
1 Introduction
Yield is the most important factor in semiconductor industries as is often ex-
pressed ”War on yields.” Yield is defined as the ratio of the number of good
products to the number of input products. As the memory chips become denser,
maintaining the high level of yield becomes more difficult. In addition, yield can
be affected by the lack of maintenances for processes and machines, human errors
and parameter settings for designs and processes. In order to maintain compet-
itiveness in market, it is essential to ramp-up the yield to the satisfactory level
for mass productions.
Traditional semiconductor manufacturing process consists of 4 steps: wafer
fabrication (FAB), probe test, assembly and final test. In case of 64M DRAM,
FAB process consists of 350 individual steps, 500 manufacturing machines and
250 measuring machines. The amount of technical data gathered from FAB
ranges more than 150 giga bytes in average in a month with 500 different types
of parameters. This necessitates the development of more intelligent and effec-
tive decision supporting systems that can handle the mass production data to
improve yield.
One of the most commonly used yield management system is the one that
uses statistical quality control techniques. In statistical quality control, product
qualities and the history of machine failures are managed using x control chart,
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 222–231, 2005.
c Springer-Verlag Berlin Heidelberg 2005
Application of Data Mining for Improving Yield 223
x̄ − R control chart and process capability index. Also, statistical analysis uses
techniques such as correlation analysis, regression and significance analysis. In
case of inspection data, MAP analysis using graph is commonly used. Other
types of yield management activity include 6-sigma and knowledge management
activity which utilizes engineer’s know-how.
In spite of the various activities to improve yields, there are many factors
that cannot be recognized using traditional statistical methods, MAP analysis
or the experimental study of engineers. Main reasons are as follows
1. It is time consuming process to analyze mass data and enormous correlated
parameters
2. There exist many unstable processes that cannot be recognized by engineers
3. Integrated approaches are necessary in order to improve yield
This paper deals with the application of data mining in wafer fabrication
system for yield improvement. Clustering analysis has been proposed to au-
tomatically determine AUF (Area Uniform Failure) in which bad chips occur
frequently in specific location of the wafer when FAB process has been finished.
In addition, we propose a method to determine machines and parameters that
are the causes of low yield using data mining techniques such as sequential pat-
tern analysis, classification analysis. We will introduce Y2R-PLUS (Yield Rapid
Ramp-up, Prediction, analysis & Up Support) system, which implements the
proposed methodology.
This paper consists of following sections. In section 2, we demonstrate data
mining applications in quality control and a semiconductor manufacturing pro-
cess Section 3 explains the problem under consideration, the proposed method-
ology and Y2R-PLUS system. Finally, section 4 concludes the paper.
2 Backgrounds
2.1 Data Mining Applications in Quality Control
Frawley (1991) defined data mining as a process to induce potentially useful
information that is embedded in mass data that has not been recognized be-
fore. Rapid development in information technology has enabled the electronic
gathering and storing of mass data. As a result, the amount of data has been
increased exponentially, i.e., POS data, stock trading data in stock market, pa-
tient data in hospital, transaction data in bank, quality control related data in
manufacturing system. Experts could analyze the data using statistical analysis
and query when data size was not a significant problem. As the amount of data
has been increased exponentially, it has become almost impossible to analyze
mass data manually. Therefore this has initiated the need for the development
of new techniques and intelligent methodologies to analyze mass data in order to
assist decision maker (Fayyad et. al., 1996). Table 1 summarizes the applications
of data mining techniques in the area of quality control.
224 D.-H. Baek, I.-J. Jeong, and C.H. Han
Techniques Applications
Clustering Automatic detection of AUF
-To find fails of specific type in wafers using clustering
Sequential Pattern Search of cause-machine
-To find machines or sequence of machines that are used to process
common fails of wafers.
Classification Search of cause-parameter
-To find parameters which cause the difference between two groups
of wafer using decision tree
Finally, the last step of the algorithm is to determine clusters which satisfy
the density constraint. The density constraint means that the density of AUF
must exceed certain multiple times (e.g., 2 times) of the total density of fail
category. Total density of a fail category is the number of chips containing the
fail category divided by the number of total chips (i.e., net die). The density of
AUF is the number of AUF type chips divided by the number of chips belonging
to the AUF type area. For example, if the number of chips in CLST k is 10 and
the central location of the cluster is in top-left (suppose that the number of chips
in top-left area is 50), then the density of AUF of cluster CLST k is 10/50=0.2
Fig. 4 shows the wafer of R-fail-edge AUF. Dark part of the wafer represents
the chips with R-fail.
Clustering algorithm enables rapid cause analysis of yield degradation by
defining AUF. The cause of yield degradation can be found by tracking the
common process factors of wafers containing the same fail category. In visual
inspection, engineers must determine AUF manually, which is time consuming
process since tens of thousands of wafers are manufactured in industries. In
addition, the performance of inspection is totally dependent on the engineers’
experiences. Reducing time from the detection of AUF to the determination of
the cause of the fail is very important in semiconductor manufacturing since
the manufacturing consists of complicated and time consuming processes. We
could reduce the inspection time from 1∼2 days to 1∼2 hours using the proposed
clustering algorithm, the cause-machine search method and the cause-parameter
search method. These search methods will be explained in the following sections.
As a result, there was a significant improvement in yields.
Application of Data Mining for Improving Yield 229
In this analysis, we consider not only analysis groups but also comparing
groups. Comparing groups are the set of wafers that contains no fails or different
types of fails in the similar production periods. The reason why we introduce
the comparing groups is to prevent from the wrong interpretation of analysis
when we consider only analysis groups. For example, we may wrongly conclude
that the cause of fail of the analysis group in Table 3 is the E-9A-B machine
of 1430 L-ASHER process since 90% of the wafers in the analysis group are
processed on this machine. However 89% of the wafers in the comparing groups
are also processed on the same machine. The reasons may be either the machine
utilization of E-9A-B machine is originally high or many wafers are processed
on this machine inevitably due to the failure of alternative machines. In case of
1415 L-DRY-ET process, 89% of wafers in the analysis group are processed on
E-2B-05B machine. On the contrary, only 25% of wafers in comparing group are
processed on this machine. Therefore we may conclude that the main cause of
the fail of the analysis group is E-2B-05B machine.
parameters are monitored on-line using statistical quality control after each pro-
cess is finished. The problem is that even if the parameters are under control,
the parameters may be the cause of low yields when the specification of param-
eters is wrongly predetermined. This phenomenon frequently occurs especially
in production lines producing new products since the production conditions of
research/development lines are different from production lines. In addition, it is
difficult to find cause-parameters of low yield due to a variety number of FAB
processes and parameters.
The cause-parameter search problem can be classified into a classification
problem. The cause-parameters of analysis group can be found by the comparison
of the corresponding comparing group using decision tree technique. Suppose
that the yield of analysis group is less than 50% and that of comparing group is
more than 90%. Then we can find the process parameters that are the cause of
the difference between two groups.
Input Parameter
Wafer ID CD 3716 CD 4400 Overlay 22 . . . Overlay 23 Target Parameter
MP01 AVG MP02 Max 50 Max X 50 Rotoffy
AVG AVG
PW4144 0.2354 0.4323 0.7863 0.0159 Analysis
PW4298 0.4746 0.5632 0.3243 0.0023 Comparing
PW4436 0.3120 0.4432 0.6545 0.1632 Analysis
Table 4 shows input data for classification problem. Input parameters are
the measured parameters after processes are finished and the target parame-
ter is either the parameter of analysis group or that of comparing group. The
number of input parameters can be reduced if engineers can predict the set of
Application of Data Mining for Improving Yield 231
parameters that are the possible causes of low yields. Fig. 5 shows the result
of the cause-parameter search using the tree classification mining function of
Intelligent miner.
4 Conclusion
This paper deals with the yield management methodology using data mining
techniques for FAB process in semiconductor industries and its implementa-
tion in Y2R-PLUS (Yield Rapid Ramp-up, Prediction, analysis & Up Support)
system for a Korean semiconductor company. In this yield management system,
AUF can be found automatically using clustering techniques instead of visual in-
spection. Also, the cause-machines and cause-parameters of low yield wafers can
be found using continuous pattern analysis and classification technique. Y2R-
PLUS system has significantly improved yield in practice and we are currently
working on the extension of its usage.
References
1. Ahn, J. S., Goh, Y. M., Jang, J. S.: Searching optimal process conditions using data
mining techniques. Journal of the Korean institute of plant engineering, Vol. 4, No.
2 (1999) 129-144,
2. Baek, J. G., Kim, K. H., Kim, S. S., Kim, C. O.: Adaptive decision tree algorithm for
data mining in real-time machine status database. Journal of the Korean institute
of industrial engineers, Vol. 26, No. 2 (June 2000) 171-182.
3. Braha, D., and Shmilovici, A.: Data mining for improving a cleansing process in the
semiconductor industry. IEEE transactions on semiconductor manufacturing, Vol.
15, No. 1 (2002) 91-101.
4. Fayyad, U., Piatetsky-Shapiro, G. and Smyth, P.(ed.): From data mining to knowl-
edge discovery in databases. Advances in knowledge discovery and data mining,
AAAI Press/MIT Press (1996) 1-34.
5. Frawley, W. J., Piatetsky-Shapiro, G., Matheus, C. J. (ed.): Knowledge discovery in
databases: An overview, Knowledge discovery in databases. AAAI Press/MIT Press
(1991) 1-27.
6. Hancock, W. M, Yoon, J. W., and Plont, R.: Use of ridge regression in the improved
control of casting process. Quality engineering, Vol. 8, No. 3 (1996) 395-403.
7. Kusiak, A. and Kurasek, C.: Data mining of printed-circuit board defects. IEEE
transactions on robotics and automation, Vol. 17, No. 2 (2001) 191-196.
8. Lian, J., Lai, X. M., Lin, Z. Q., and Yao, F. S.: Application of data mining and pro-
cess knowledge discovering in sheet metal assembly dimensional variation diagnosis.
Journal of materials processing technology, Vol. 129 (2002) 315-320.
9. Yamashita, Y.: Supervised learning for the analysis of process operational data.
Computer and chemical engineering, Vol. 24, No. 2 (2000) 471-474.
Determination of Optimum Target Values for a
Production Process Based on Two Surrogate
Variables
Min Koo Lee1 , Hyuck Moo Kwon2 , Young Jin Kim2 , and Jongho Bae1
1
Department of Information and Statistics, Chungnam National University,
Daejeon, 305-764, Korea
{sixsigma, bae-jongho}@cnu.ac.kr
2
Department of Systems and Management Engineering,
Pukyong National University, Pusan 608-739, Korea
{iehmkwon, youngk}@pknu.ac.kr
1 Introduction
As a result of advances in automated manufacturing systems, censoring technology
and automatic inspection equipment, complete inspections are increasingly used
to improve the outgoing quality of the product. Every product is inspected to de-
termine whether its quality characteristic satisfies the specification limits. Con-
forming products are sold at regular price, whereas nonconforming products are
scraped, reprocessed or sold at a discounted price. Typical quality characteristics
under consideration are weights, volume, and geometric dimensions. The quality
characteristic may deviate from the target because of variations in raw material, la-
bor and operation conditions. Thus, the process mean may be targeted to a higher
value than necessary to reduce the fraction nonconforming. A higher process mean,
however, may induce a higher production cost. Therefore, the process mean is bet-
ter to be selected considering the tradeoff among production cost, payoff of con-
forming items, and the cost incurred due to nonconforming items.
Several researchers have studied this problem. Bettes [1], Golhar [2], and Golhar
and Pollack [3] consider a filling process in which underfilled or overfilled containers
are reprocessed at a fixed cost. Hunter and Kartha [4], Bisgaard et al. [5], Lee and
Jang [6], and Hong et al. [7] study several sales condition for products in which the
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 232–240, 2005.
c Springer-Verlag Berlin Heidelberg 2005
Determination of Optimum Target Values for a Production Process 233
quality characteristic is smaller than the specification limit. Boucher and Jafari [8],
and Al-Sultan [9] discussed situations in which the items are subjected to lot-by-
lot acceptance sampling rather than complete inspections. Elsayed and Chen [10]
determined optimum levels of process parameters for products with multiple char-
acteristics, and Arcelus and Rahim [11] developed a model for simultaneously se-
lecting optimum target means for both variable and attribute quality characteris-
tics. Chen and Chung [12] considered an economic model for determining the most
profitable target value and the optimum measuring precision level for a produc-
tion process. Hong and Elsayed [13] studied the effects of measurement errors on
process target, Pfeifer [14] showed the use of an electronic spreadsheet program as
a solution method. Most recently, Rahim and Shaibu [15] applied the Taguchi loss
function to determine the optimum process target and variance. Kim et al. [16] pro-
posed a model for determining the optimal process target with the consideration
of variance reduction and process capability. Teeravaraprug and Cho [17] designed
the optimum process target levels for multiple quality characteristics, and Rahim et
al. [18] considered the problem of selecting the most economical target mean and
variance for a continuous production process. Finally, Duffuaa and Siddiqui [19]
considered process targeting with multi-class screening and measurement error.
In all of these studies, inspection is performed on the quality characteristic of
interest (performance variable). In some situations, it is impossible or not economi-
cal to directly inspect the performance variable. In such cases, the use of a surrogate
variable which is highly correlated with performance variable is an attractive alter-
native, especially when inspecting the surrogate variable is relatively less expensive
than inspecting the performance variable. In cement plants, for example, a perfor-
mance measure of interest may be the weight of a cement bag, which is difficult to
measure directly due to the high-speed of the packing line. The mil-ampere (mA)
of the load cell is strongly correlated with the weight of a cement bag and does not
require special effort to measure. Hence, it can be used as the surrogate variable
(Bai and Lee [20]). The idea of selecting the cutoff value on surrogate variable has
been studied by many researchers. Bai and Lee [20], Lee et al. [21] and Tang and
Lo [22] present economic models that determine the process mean and the screen-
ing limit on the surrogate variable when inspection is based on surrogate variable
instead of performance variable. In applications where quality assurance is critical,
the outgoing quality improvement may be more important than the reduction in
the inspection cost. Since a surrogate variable may not perfectly correlated with
performance variable, some conforming items may be rejected and excluded from
shipment while some nonconforming items may be accepted for shipment. These
decision errors are likely to occur when the value of the surrogate variable is close
to the screening limits. Consequently, in this situation, there may be an economic
advantage to reduce the errors by observing the performance variable even though
the inspection may be expensive. Of course, this can only be done when inspection
of the performance variable is nondestructive.
This paper considers the problem of determination of the optimum process mean
and the screening limits of two surrogate variables for a production process under
single screening procedure. Two surrogate variables are observed simultaneously
234 M.K. Lee et al.
in single screening procedure. It is assumed that two surrogate variable are cor-
related with performance variable. A profit model is constructed involves selling
price, production, inspection and penalty costs. Assuming that the performance
and two surrogate variables are normally distributed, a method of finding the opti-
mum process mean and the screening limits of two surrogate variables is presented.
The proposed model is demonstrated with a numerical example and sensitivity an-
alyzes are performed.
2 The Model
Consider a production process where items are produced continuously. Let Y
be a performance variable representing the quality characteristic of interest.
All items are inspected prior to shipment to determine whether they meet the
lower and upper specification limits L and U on Y , respectively. All items are
nonconforming if their y values are smaller than L or larger than U . Suppose
that Y is normally distributed with an unknown process mean μy and known
variance σy2 . The production cost per item is linearly related to Y , that is, b + cy
where b and c are constants. The expected production cost per item is given by
4 ∞
EP C = (b + cy)f (y)dy = b + cμy , (1)
−∞
h(y , x1 , x2 ) = |Σ|−1/2 exp −(y , x1 , x2 )Σ −1 (y , x1 , x2 )T /2 /(2π)3/2 , (3)
where (y , x1 , x2 )T
denotes the transpose of (y , x1 , x2 ), and
⎡ ⎤
1 ρ01 ρ02
Σ = ⎣ ρ01 1 ρ12 ⎦ .
ρ02 ρ12 1
Let δ1 and δ2 denote the screening limits on Z = λ1 X1 + λ2 X2 . An accepted
item with δ1 ≤ Z ≤ δ2 is sold at a fixed price a, the expected revenue per item
is
4 ω2
ER = a φ(z /θ)/θ dz = a (Φ(ω2 /θ) − Φ(ω1 /θ)) , (4)
ω1
where z = + λ1 x1 λ2 x2 ,
ωi = (δi − μz )/σz , i = 1, 2, μz = λ1 μx1 + λ2 μx2 , it
1/2
can be shown that θ = σz = ρy z = (ρ201 + ρ202 − 2ρ01 ρ02 ρ12 )/(1 − ρ212 ) ,
φ(·) and Φ(·) are the density function and distribution of the standard normal
distribution, respectively. Since Y and Xi are not perfectly correlated, some
nonconforming items may be accepted. If a nonconforming item is shipped to
customers, penalty cost rl (y < η1 ) or ru (y > η2 ) is incurred including the cost
of identifying and handling the nonconforming item, and service and replacement
cost. The expected per item cost of acceptance is
4 ω2 4 η1 4 ω2 4 ∞
EAC = rl f (y , z ) dy dz + ru f (y , z ) dy dz , (5)
ω1 −∞ ω1 η2
∂Ψ (−η1 − ζ, ωi /θ; θ)/∂η1 = −Φ (ωi − (η1 + ζ)θ2 )/((1 − θ2 )1/2 θ) φ(−η1 − ζ),
(11)
∂Ψ (η1 , ωi /θ; θ)/∂ωi = Φ (η1 − ωi )/(1 − θ2 )1/2 φ(ωi /θ)/θ. (12)
a
Φ ((−η1∗ − ζ + ω1∗ )θ/Ω) + Φ ((η1∗ − ω1∗ )θ/Ω) = , (14)
rl
a
Φ ((−η1∗ − ζ + ω2∗ )θ/Ω) + Φ ((η1∗ − ω2∗ )θ/Ω) = , (15)
ru
4 A Numerical Example
In this section, an illustrative example is provided to demonstrate the proposed
model and perform numerical analyzes to understand its properties.
Consider a production process of chemical factory. The packing operation
consists two processes: a filling process and an inspection process. In the filling
process of food-additives, chemicals and pharmaceuticals etc., it is very impor-
tant to satisfy the specification limits. Each chemical container processed by
the filling machine is moved to the loading and dispatching phases on a con-
veyor belt. Continuous weighing devices perform inspection based on the linear
combination Z = λ1 X1 + λ2 X2 of two surrogate variables, which are correlated
with the weight Y of the chemical container. From theoretical considerations
and past experience, it is known that the variance of Y , σy2 = (0.75kg)2 , and
that Xi , i = 1, 2, for given Y = y is normally distributed
g1 (x1 |y) ∼ N 4.0 + 0.08y, σ12 = 0.0502 ,
g2 (x2 |y) ∼ N 4.0 + 0.085y, σ22 = 0.0552 ,
and ρ12 = 0.6. Suppose that the cost components and the specification limits
for Y are a = $3.0, c0 = $0.1, c = $0.06, rl = $6.5, ru = $6.0, cx1 = $0.004,
cx2 = $0.0045, L = 40.0kg, and U = 44.5kg. We obtain η1∗ = −2.744, ω1∗ =
−2.693 and ω2∗ = 3.256 from equations (13)-(15). The optimum process mean
μ∗y and screening limits δ1∗ and δ2∗ on Z = λ1 X1 + λ2 X2 are obtained from
equations (16)-(18), and are summarized in Table 1.
(i) Effects of screening procedures. For the above example, the solutions and
their associated costs for single screening procedure and the screening procedures
based on one surrogate variable are shown in Table 2. EP ’s of single screening
screening procedure is larger than those of the screening procedures based on
one surrogate variable.
(ii) Effects of σy . The screening limits δ1 and δ2 and the process mean μy for
the above example are shown in Fig. 1 and 2 for selected values of the standard
Table 2. Optimum Solutions and Expected Profits of Three Different Screening Pro-
cedure
deviation of Y from 0.6 to 1.0. Fig. 1 shows that the screening limits δ1 and δ2
increase as σy increases and the difference of screening limits δ1 and δ2 increases
as σy increases. Fig. 2 indicates that the process mean μy tends to increase as
σy increases.
5 Concluding Remarks
This paper considered the problem of determining the optimum target values of
the process mean and the screening limits for a production process under single
screening procedure based on the linear combination of two surrogate variables
in place of the quality characteristic of interest. A model is constructed under
the assumption that the two surrogate variables and the quality characteris-
tic of interest are jointly normally distributed. The optimum process mean and
screening limits are jointly obtained by maximizing the expected profit func-
tion, which includes selling price, in addition to the production, inspection and
penalty costs. It is difficult to find closed form solutions, or to show analytically
that the solutions are optimum. Numerical studies over wide range of parameter
values, however, indicate that the expected profit function is indeed unimodal.
A numerical search method such as Gauss-Seideel’s iterative method is used.
IMSL subroutines such as DNORDF and DBNRDF are used to evaluate the
standard univariate and bivariate normal distribution functions, respectively. In
Determination of Optimum Target Values for a Production Process 239
most cases, the optimum solutions are obtained within a few seconds on a 586
PC. Numerical results show that the expected profit of single screening screening
procedure is larger than those of the screening procedures based on one surro-
gate variable. The screening limits increase as the standard deviation of quality
characteristic of interest increases, and the process mean tends to increase as
increases the standard deviation of quality characteristic of interest increases.
It will be of interest to consider the double screening procedure where one
variable is used first to make one of three decisions - accept, reject, or undecided
- and after the first screening, the second variable is employed to screen the
undecided items.
References
1. Bettes, D.C.: Finding an Optimum Target Value in Relation to a Fixed Lower
Limit and Arbitary Upper Limit. Applied Statistics. 11 (1962) 202–210
2. Golhar, D. Y.: Determination of the Best Mean Contents for a Canning Problem.
Journal of Quality Technology. 19 (1987) 82–84
3. Golhar, D.Y., Pollock, S.M.: The Determination of the Best Mean and the Upper
Limit for a Canning Problem. Journal of Quality Technology. 20 (1988) 188–192
4. Hunter, W.G., Kartha, C.D.: Determining the Most Profitable Target Value for a
Production Process. Journal of Quality Technology. 9 (1977) 176–180
5. Bisgaard, S., Hunter, W.G., Pallesen, L.: Economic Selection of Quality of Manu-
factured Product. Technometrics. 26 (1984) 9–18
6. Lee, M. K. and Jang, J. S.: The Optimum Target Values for a Production Process
with Three-class Screening. International Journal of Production Economics. 49
(1997) 91–99
240 M.K. Lee et al.
7. Hong, S. H., Elsayed, E. A., Lee, M. K.: Optimum Mean Value and Screening
Limits for Production Processes with Multi-Class Screening. International Journal
of Production Research. 37 (1999) 155–163
8. Boucher, T.O., Jafari, M.A.: The Optimum Target Value for Single Filling Op-
erations with Quality Sampling Plans. Journal of Quality Technology. 23 (1991)
44–47
9. Al-Sultan, K.S.: An Algorithm for the Determination of the Optimal Target Values
for Two Machines in Series with Quality Sampling Plans. International Journal of
Production Research. 12 (1994) 37–45
10. Elsayed, E.A., and Chen, A.: Optimal Levels of Process Parameters for Products
with Multiple Characteristics. International Journal of Production Research. 31
(1993) 1117–1132
11. Arcelus, F. J., RAHIM, M. A.: Simultaneous Economic Selection of a Variables
and an Attribute Target Mean. Journal of Quality Technology. 26 (1994) 125–133
12. Chen, S. L., Chung, K. J.: Selection of the Optimal Precision Level and Target
Value for a Production Process: the Lower Specification Limit Case. IIE Transac-
tions. 28 (1996) 979–985
13. Hong, S. H., Elsayed, E. A.: The Optimum Mean for Processes with Normally
Distributed Measurement Error. Journal of Quality Technology. 31 (1999) 338–
344
14. Pfeifer, P.E.: A General Piecewise Linear Canning Problem Model. Journal of
Quality Technology. 31(1999) 326–337
15. Rahim, M.A., Shaibu, A.B.: Economic Selection of Optimal Target Values. Process
Control and Quality. 11(2000) 369–381.
16. Kim, Y.J., Cho, B.R., Phillips, M.D.: Determination of the Optimal Process Mean
with the Consideration of variance Reduction and Process Capability. Quality En-
gineering. 13 (2000) 251–260
17. Teeravaraprug, J. and Cho, B. R.: Designing the Optimal Process Target Levels
for Multiple Quality Characteristics. International Journal of Production Research.
40(2002) 37–54
18. Rahim, M.A., Bhadury, J., Al-Sultan, K.S.: Joint Economic Selection of Target
Mean and Variance. Engineering Optimization. 34(2002) 1–14.
19. Duffuaa, S., Siddiqui, A. W.: Process Targeting with Multi-Class Screening and
Measurement Error. International Journal of Production Research. 41 (2003) 1373–
1391
20. Bai, D.S., Lee, M.K.: Optimal target values for a Filling Process When Inspection
is Based on a Correlaed Vraiable. International Journal of Production Economics.
32 (1993) 327–334
21. Lee, M. K., Hong, S. H., Elsayed, E. A.: The Optimum Target Value under Single
and Two-Stage Screenings. Journal of Quality Technology. 33 (2001) 506–514
22. Tang, K., Lo, J.: Determination of the Process Mean When Inspection is Based on
a Correlated Variable. IIE Transactions. 25 (1993) 66–72
23. Anderson T.W.: An Introduction to Multivariate Statistical Analysis. John Wiley
& Sons Inc New York (1984)
24. Reference Manual: International Mathematical and Statistical Libraries. IMSL Li-
brary, Houston (1987)
An Evolution Algorithm for the Rectilinear
Steiner Tree Problem
Byounghak Yang
1 Introduction
Given a set V of n terminals in the plane, the rectilinear Steiner tree prob-
lem(RSTP) in the plane is to find a shortest network, a Steiner minimum tree,
interconnecting S. The points in S are called Steiner points. We should find the
optimal number of Steiner points and their location on rectilinear plane. It is
well-known that the solution to RSTP will be the minimal spanning tree (MST)
on some set of points V∪S.
The RSTP is known to be NP-complete [6]. Polynomial-time algorithm for
the optimal solution is unlikely to be known [5]. Lee, Bose and Hwang [9] pre-
sented algorithm similar to the Prim algorithm for the Minimum Spanning tree.
Smith and Liebman [11] and Smith, Lee and Liebman [10] presented heuristics
algorithms for the RSTP.
Let MST(V) be the cost of MST on set of terminals V. Then the reduction
rate R(V) = {MST(V∪S) - MST(V) } / MST(V) is used as performance mea-
sure for algorithms on the Steiner tree problem. Beasley [3] surveyed heuristics
for RST problem and introduced his own heuristics. In his research, Beasley’s
heuristics gave the best reduction rate as about 10%. The only Genetic algo-
rithm for Euclidian Steiner tree problem was presented by Hesser et al. [8]. The
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 241–249, 2005.
c Springer-Verlag Berlin Heidelberg 2005
242 B. Yang
performance of the genetic algorithm was not so good and they didn’t introduce
algorithm for RSTP. Warme, Winter and Zachariasen [13] presented exact al-
gorithm for RSTP and showed the average reduction rate is about 11% for the
optimal solution. Main motivation of this research is to develop an evolution
algorithm to meet the reduction rate to 11%.
Hanan showed that for any instance, an optimal RST exists in which every
Steiner point lies at the intersection of two orthogonal lines that contain termi-
nals [7]. Hanan’s theorem implies that a graph G called the Hanan grid graph
is guaranteed to contain an optimal RST. Hanan’s grid graph is constructed as
follows: draw a horizontal and vertical line through each terminal. The vertices
in graph correspond to the intersections of the lines. In Fig. 1.(a), the black dots
are the terminals and white dots are the intersection of two lines. The optimal
Steiner point should be white dots in Hanan’s gird.
For 3 terminals RST problem, we can get optimal Steiner point easily. Let
(xi , yi ) be the coordinates of the given terminal Ti; France [4] proved that the
Steiner point S is located at (xm , ym ), where xm and ym are the medians of {xi }
and {yi }, as like Fig. 1(b).
2 Evolution Algorithm
Evolutionary algorithms are based on models of organic evolution. They model
the collective the collective learning process within a population of individu-
als. The starting population is initialized by randomization or some heuristics
method, and evolves toward successively better regions of search space by means
of randomized process of recombination, mutation and selection. Each individual
is evaluated as the fitness value, and the selection process favors those individuals
of higher quality to reproduce more often than worse individuals. The recombi-
nation mechanism allows for mixing of parental information while passing it to
their dependents, and mutation introduces innovation into the population. Al-
though simplistic from a biologist’s viewpoint, these algorithms are sufficiently
complex to provide robust and powerful adaptive search mechanisms [1]. In this
An Evolution Algorithm for the Rectilinear Steiner Tree Problem 243
research, some Steiner points in Hanan’s grid may become an individual, and the
individual is evaluated by minimum spanning tree with terminals and Steiner
points in the individual.
2.2 Recombination
The recombination or crossover operator exchanges a part of an individual be-
tween two individual. We choose some Steiner points in each individual and
exchange with other Steiner points in the other individual. We have two parents
to crossover as P1={3, (1,3), (2,4), (3,2)} and P2{2, (6,4), (7,8)}. By the ran-
dom number, we choose the number of exchanging which is less than the number
of Steiner points in both parents. Then by the random number, some Steiner
points are choose and exchanged. In this case, we choose the 2 as exchanging
number. First and third Steiner points are selected in P1, and two Steiner points
are selected in P2. Therefore we have two children by performing crossover as
follows: O1={3, (6,4), (2,4), (7,8)} and O2{2, (1,3), (3,2)}.
244 B. Yang
2.3 Mutation
The mutation operator changes the locations of some selected Steiner points. Let
(vi , hi ) be the selected location of Steiner point. Then we can have new location
(vi , +v, hi + h) where vandh are some random integer number.
2.4 Selection
We use the tournament selection. The k-tournament selection method select a
single individual by choosing some number k of individuals randomly from the
population and selecting the best individual from this group to survive to the
next generation. The process is repeated as often as necessary to fill the new
population. A common tournament size is k=2.
Fig. 5. A Steiner pool from minimum spanning tree for given terminals
a : Evolution Algorithm
* : They have not shown the results
tor are introduced. Mutation operator and crossover have the location of Steiner
point moved to search a solution, but they don’t search new Steiner point. We
need to introduce a new Steiner point in current individual to enforce the vari-
ability of the solution. For some selected individual, randomly generated Steiner
point in Hanan’s grid is inserted in individual and increase the number of Steiner
point as an insertion operator. On the other hand, some Steiner points in tree
are connected with only one or two other node. Those kinds of Steiner point in
tree are obviously useless to reduce the tree cost. We introduce deletion oper-
ator to delete some Steiner points which are connected less than 2 other node
in Steiner tree. For the Steiner point connected with 3 other node, we know the
optimal location of Steiner point as using the results of 3-terminal case. We trace
the Steiner point (S) which is connected with exactly 3 other node(A,B,C) and
calculate the optimal location(S*) of Steiner point for those 3 node(A,B,C) and
move the location of S to S* as a moving operator.
begin
t←0
Initialize population P(t)
Fitness evaluation P(t)
while (do not satisfy termination criteria) do
begin
t ← t +1
Selection P(t) from P(t-1)
An Evolution Algorithm for the Rectilinear Steiner Tree Problem 247
Recombination on P(t)
Mutation on P(t)
Local search on P(t)
Fitness evaluation P(t)
end
end
a : Evolution Algorithm
* : The optimal solution is unknown
248 B. Yang
3 Computational Experience
The computational study was made on Pentium IV processor. The evolution
algorithm was programmed in Visual Studio. Problem instances are from OR-
Library [2], 15 instances for each problem size 10, 20. . . 100,250,500. By our
parameter setting, the crossover rate was 0.09, the mutation rate was 0.01 and
the insertion rate was 0.31. The population size was 200. Each test problem was
solved our evolution algorithm. The results are shown in Table 1. In Table 1,
for each value of n, the minimum, the average, the maximum for the reduction
rate and the number of Steiner points. For the RST problem, Beasley has solved
same instances as our ones. The other research’s results are from the survey
of Beasley’s research [3]. Those results are in Table2. In Table2, the evolution
algorithm introduced in this paper gives larger percentage reduction (about 11%)
in most instances than any other heuristics.
In order to compare the evolution algorithm with optimal solutions, the 46
test problem were solved by the evolution algorithm. The 46 test problems were
given by Soukup and Chow [12]. Beasley solved this problem and showed some
optimal solutions. Table 3 shows the Steiner tree cost of optimal solutions, and
those of the evolution algorithm and Beasley’s heuristics. In Table 3, the evolu-
tion algorithm found every optimal solution which is known. For the unknown
optimal solution cases, our solutions are better than Beasley’s solution.
4 Conclusion
The rectilinear Steiner tree problem is one of well known optimization problem.
In this paper we have introduced an Evolution algorithm for Rectilinear Steiner
tree problem as one of meta heurisitcs. Computational results showed that this
Evolution algorithm gives better Steiner tree solution than the other heuristics.
The average reduction rate of solutions which we found by the Evolution algo-
rithm was 11%, which is almost similar to that of optimal solutions. For the
optimal case problems, our Evolution algorithm found every known optimal so-
lution. In class of Stener tree problem, there are Euclidean Steiner tree problem
and graph Steiner tree problem. We will modify our Evolution algorithm for the
Euclidean and graph Steiner tree problem.
References
1. Bäck, Thomas : Evolutionary Algorithm in Theory and Practice, Oxford University
Press (1996)
2. Beasley, J. E.: OR-Library: distributing test problems by electronic mail. Journal
of the Operational Research Society 41 (1990) 1069-1072
3. Beasley, J. E: A heuristic for Euclidean and rectilinear Steiner problems. European
Journal of Operational Research 58 (1992) 284-292
4. France, R.L.: A note on the optimum location of new machines in existing plant
layouts, J. Industrial Engineering 14(1963) 57-59
An Evolution Algorithm for the Rectilinear Steiner Tree Problem 249
5. Ganley, Joseph L.: Computing optimal rectilinear Steiner trees: A survey and ex-
perimental evaluation. Discrete Applied Mathematics 90 (1999) 161-171
6. Garey, M. R., Johnson, D. S.: The rectilinear Steiner tree problem is NP-complete.
SIAM Journal on Applied Mathematics 32 (1977a) 826-834
7. Hanan, M.: On Steiner’s problem with rectilinear distance. SLAM Journal on Ap-
plied Mathematics 14. (1966) 255-265
8. Hesser, J., Manner R., Stucky,O. : Optimization of Steiner Trees using Genetic Al-
gorithms, Proceedings of the Third International Conference on Genetic Algorithm
(1989) 231-236
9. Lee, J. L., Bose, N. K., Hwang, F. K.: Use of Steiner’s problem in suboptimal
routing in rectilinear metric. IEEE Transaction son Circuits and Systems 23(1976)
470-476
10. Smith, J. M., Lee. D. T., Liebman, J. S.: An O(n log n) heuristic algorithm for
the rectilinear Steiner minimal tree problem. Engineering Optimization 4 (1980)
172-192
11. Smith, J. M., Liebman, J. S.: Steiner trees, Steiner circuits and the interface prob-
lem in building design. Engineering Optimization 2 (1979)15-36
12. Soukup, J., Chow, W.F.: Set of test problems for the minimum length connection
networks. ACM/SIGMAP Newsletter 15(1973) 48-51
13. Warme, D.M, Winter, P., Zachariasen, M. : Exact Algorithms for Plane Steiner
Tree Problems : A Computational Study In: D.Z. Du, J.M. Smith and J.H. Rubin-
stein (eds.): Advances in Steiner Tree, Kluser Academic Publishers (1998)
A Two-Stage Recourse Model for Production
Planning with Stochastic Demand
1,2
K.K. Lai , Stephen C.H. Leung 1 , and Yue Wu 3
1
Department of Management Sciences,
City University of Hong Kong, Hong Kong
{mssleung, mskklai}@cityu.edu.hk
2
College of Business Administration, Hunan University, China
3
School of Management, University of Southampton, Southampton, UK
Y.Wu@soton.ac.uk
1 Introduction
Medium-term production planning over a two- to 18-month planning horizon is
classified as aggregate production planning (APP) [1]. Nam and Logendran [6]
stated that APP is intended to translate forecast sales demand and production
capacity into future production loading plans. As the planning takes place at
the aggregate level, there is no need for APP to provide detailed material and
capacity resource requirements for individual products and detailed schedules
for facilities and personnel [1]. Masud and Hwang [5] compared three multiple
criteria decision making models for the APP problem with maximizing contribu-
tion to profit, while minimizing changes in workforce level, inventory investment
and backorders simultaneously using a set of data consisting of two products, a
single production plant and eight planning periods. Baykasoglu [1] extended Ma-
sud and Hwang’s model by adding subcontractor selection and set-up decisions.
Hung and Hu [3] formulated a mixed integer programming model for production
planning problems with set-up decisions. Due to the NP-hardness of the prob-
lems, a series of artificial intelligent approaches such as evolutionary algorithms
[4], genetic algorithms [8] and decision-support systems [7] are also widely used to
solve production planning problems with additional constraints and limitations.
This study is particularly motivated by the problems faced by a multinational
lingerie company whose headquarters is in Hong Kong and sales branch offices,
R&D, and customer services are spread across North America and Europe. Pro-
duction plants are located in China, the Philippines, Thailand and other South-
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 250–260, 2005.
c Springer-Verlag Berlin Heidelberg 2005
A Two-Stage Recourse Model for Production Planning 251
east Asian countries to take advantage of lower wages and lower rental costs. The
headquarters collects sales orders – which consist of the type of products, quan-
tity, delivery date and location preference – through the sales branch offices. The
company’s products are mainly divided into two groups: cotton products, which
contain at least 90% cotton; and silk products, which are mainly made of silk.
Normally, labour costs vary for different products and for different production
plants. It is not surprising to find that the labour costs incurred when manufac-
turing silk products are higher than those incurred in manufacturing cotton prod-
ucts because of the greater skill levels involved. In addition, manufacturing loca-
tion preference plays an important role in the production planning problem. Sales
orders from North America must be processed in Chinese production plants be-
cause the quality of materials required, such as silk, comes from China. European
customers also favour Chinese production plants, but do not object to production
plants in the Philippines or Sri Lanka being used as substitutes. In many cir-
cumstances, the production manager needs to negotiate between plants and cus-
tomers to ensure that the manufacturing location preference can be fulfilled. De-
cision makers have to develop a production loading plan every three months with
minimum total cost and stock-outs by considering the manufacturing capacity,
workforce level, and other factors. According to the loading plan, the production
plants are assigned a list of products with quantities to be produced over each
period. Choosing the right level of the right production strategy involves a highly
complex set of decisions. Solving production planning problems with uncertain
demand data has therefore become a critical management task for the company.
The purpose of this paper is to formulate a two-stage recourse model for
production planning problem with stochastic demand, in which the production
cost, subcontracting cost, labour cost, inventory cost, hiring cost and lay-off
cost, and penalty cost associated with under-fulfilment of realized demand under
different economic growth scenarios are minimized. This paper is organized as
follows. After this introductory section, the background to the two-stage recourse
model is described. A two-stage recourse model is formulated for production
planning problem in section 3, and a set of data from a Hong Kong company is
used to test the effectiveness and efficiency of the proposed model in section 4.
Our conclusions are given in the final section.
Equations (2) represent the first-stage model and equations (3) represent the
second-stage model. x1 is the vector of first-stage decision variables whish is
scenario-independent. The optimal value of x1 is not conditional on the realiza-
tion of the uncertain parameters. c1 is the vector of cost coefficient at the first
stage. A is the first-stage coefficient matrix and b is the corresponding right-hand-
side vectors. y2 is the vector of second-stage (recourse) decision variables. q is
the vector of cost (recourse) coefficient vectors at the second stage. W is second-
stage (recourse) coefficient matrix and hs is the corresponding right-hand-side
vector and T s is the matrix that ties the two stages together where s ∈ Ω
represents scenarios in future and ps is the probability that scenario s occurs.
In the second-stage model, the random constraint defined in (3), hs − T s x1 , is
the goal constraint: violations of this constraint are allowed, but the associated
penalty cost, q T y2 , will influence the choice of x1 . q T y2 is the recourse penalty
S
cost or second-stage value function and ps (q T y2s ) denotes the expected value
s=1
of recourse penalty cost (second-stage value function).
Parameters:
Deterministic parameters:
CW j : the regular-time labour cost in plant j ($/man-period)
COj : the overtime labour cost of worker in plant j ($/man-hour)
CHj : the cost of hiring one worker in plant j ($/man)
CLj : the cost of laying off one worker in plant j($/man)
μi : the labour time for product i (man-hour/unit)
λi : the machine time for product i (machine-hour/unit)
δ : the working hours for each period (man-hour/man-period)
Wj0 : the initial work force level in plant j (man-period)
min
Wjt : the minimum work force level available in plant j at period t (man-period)
max
Wjt : the maximum work force level available in plant j at period t (man-period)
α : the fraction of the work force available for overtime in each period
ε : the fraction of variation in the work force in each period
Mjt : the machine time capacity in plant j over period t (machine-hour)
βt : the fraction of machine time capacity available for overtime use in period t
A Two-Stage Recourse Model for Production Planning 253
Recourse parameters:
Decision variables:
First-stage decision variables:
First-stage model:
M in CW j · Wjt + COj · μi Yijt + (CHj · Hjt + CLj · Ljt )
j∈J t∈T i∈I j∈J t∈T
(5)
s.t.
min
Wjt ≤ Wjt ≤ Wjt
max
∀j, t (7)
254 K.K. Lai, S.C.H. Leung, and Y. Wu
μi · Pijt ≤ δ Wjt ∀j, t (9)
i∈I
μi · Yijt ≤ δ α Wjt ∀j, t (10)
i∈I
λi · Pijt ≤ Mjt ∀j, t (11)
i∈I
λi · Yijt ≤ βt Mjt ∀j, t (12)
i∈I
The first component in expression (5) is the labour cost, which is associated
with regular-time and overtime workers respectively. The last component is total
hiring and laying off cost associated with changes in the workforce level. Con-
straint (6) ensures that the available workforce in any period equals the workforce
from the previous period plus any change in workforce level during the current
period. The change in workforce level may be due to either hiring extra workers
or laying off redundant workers. It is noted that Hjt · Ljt = 0 because either
the net hiring or the net laying-off of workers takes place over a period, but not
both. Constraint (7) ensures the upper- and lower-bound of change in workforce
level over a period are provided. Constraint (8) ensures that the change in work-
force level cannot exceed the proportion of workers employed during the previous
period. Constraint (9) limits the regular-time production to the workers avail-
able. Constraint (10) limits the overtime hours of the available workers. Total
production during each period by regular-time workers and overtime workers is
limited by the available machine capacity, as shown by constraints (11) and (12)
respectively. Constraint (13) ensures that all decision variables are non-negative.
Second-stage model:
⎛ ⎞
M in ps ⎝ (CPs ij · Pijt + CYs ij · Yijt + CZij
s
· Zijt )⎠
s∈S i∈I j∈J t∈T
⎛ ⎞
+ ps ⎝ s
CIij s ⎠
· Iijt (14)
s∈S i∈I j∈J t∈T
s s
+ ps CBi Bit
s∈S i∈I t∈T
s.t.
A Two-Stage Recourse Model for Production Planning 255
s
Iijt−1 + Pijt + Yijt + Zijt − Iijt
s s
= Dit − Bit
s
∀i, t, s (15)
j∈J
s
(Pijt + Yijt + Zijt ) = θi (Dit − Bit
s
) ∀i, t, s (16)
j∈CF
s
Iijt s
, Bit ≥0 ∀i, j, t, s (17)
Table 1. Unit production cost and unit inventory cost (in HK$, 1US$ = 7.8HK$)
The first component in expression (14) is the production cost, which is as-
sociated with the regular-time production, overtime production and subcon-
tracting cost. The second component is the inventory cost associated with the
storage of units of products in the warehouses for a period of time. The last
component is the penalty cost associated with under-fulfilment of demand. Con-
straint (15) determines either the quantity of products stored in the warehouse
Plant, Labour cost Labour cost Hiring Lay-off Minimum Change Initial
j of worker of worker at cost, cost, workforce rate, ε work-
at regular overtime,COjC, Hj , CLj , force
time, CW j , $/hour $/man $/man
$/man-
period
1 250 10 100 120 300 0.40 300
2 225 9 90 110 300 0.45 300
3 200 8 80 100 300 0.50 300
Period, t
Product, i Situation, s 1 2 3 4 5 6 7 8 9 10 11 12
1 Boom 1.5 2.0 1.6 1.7 2.0 1.8 1.7 1.9 2.0 2.3 2.4 2.5
Good 1.1 1.6 1.2 1.3 1.6 1.4 1.3 1.5 1.6 1.9 2.0 2.1
Fair 0.7 1.2 0.8 0.9 1.2 1.0 0.9 1.1 1.2 1.5 1.6 1.7
Poor 0.3 0.8 0.4 0.5 0.8 0.6 0.5 0.7 0.8 1.1 1.2 1.3
2 Boom 1.5 2.0 1.6 1.7 2.0 1.8 1.7 1.9 2.0 2.3 2.4 2.5
Good 1.1 1.6 1.2 1.3 1.6 1.4 1.3 1.5 1.6 1.9 2.0 2.1
Fair 0.7 1.2 0.8 0.9 1.2 1.0 0.9 1.1 1.2 1.5 1.6 1.7
Poor 0.3 0.8 0.4 0.5 0.8 0.6 0.5 0.7 0.8 1.1 1.2 1.3
3 Boom 1.4 1.9 1.6 1.5 1.9 1.7 1.6 1.7 1.9 2.3 2.3 2.3
Good 1.1 1.6 1.3 1.2 1.6 1.4 1.3 1.4 1.6 2.0 2.0 2.0
Fair 0.8 1.3 1.0 0.9 1.3 1.1 1.0 1.1 1.3 1.7 1.7 1.7
Poor 0.5 1.0 0.7 0.6 1.0 0.8 0.7 0.8 1.0 1.4 1.4 1.4
4 Boom 1.4 1.9 1.6 1.5 1.9 1.7 1.6 1.7 1.9 2.3 2.3 2.3
Good 1.1 1.6 1.3 1.2 1.6 1.4 1.3 1.4 1.6 2.0 2.0 2.0
Fair 0.8 1.3 1.0 0.9 1.3 1.1 1.0 1.1 1.3 1.7 1.7 1.7
Poor 0.5 1.0 0.7 0.6 1.0 0.8 0.7 0.8 1.0 1.4 1.4 1.4
5 Boom 1.3 1.8 1.6 1.3 1.8 1.6 1.5 1.5 1.8 2.3 2.2 2.1
Good 1.1 1.6 1.4 1.1 1.6 1.4 1.3 1.3 1.6 2.1 2.0 1.9
Fair 0.9 1.4 1.2 0.9 1.4 1.2 1.1 1.1 1.4 1.9 1.8 1.7
Poor 0.7 1.2 1.0 0.7 1.2 1.0 0.9 0.9 1.2 1.7 1.6 1.5
6 Boom 1.3 1.8 1.6 1.3 1.8 1.6 1.5 1.5 1.8 2.3 2.2 2.1
Good 1.1 1.6 1.4 1.1 1.6 1.4 1.3 1.3 1.6 2.1 2.0 1.9
Fair 0.9 1.4 1.2 0.9 1.4 1.2 1.1 1.1 1.4 1.9 1.8 1.7
Poor 0.7 1.2 1.0 0.7 1.2 1.0 0.9 0.9 1.2 1.7 1.6 1.5
A Two-Stage Recourse Model for Production Planning 257
Chinese plants. Constraint (17) ensures that the second-stage decision variables
are non-negative.
4 Computational Results
The multinational lingerie company, under the study, in Hong Kong receives
sales orders from its sales branches covering America and Europe. Each order
may require one or more of six products, i = 1, 2, . . . , 6. The products are man-
ufactured in three main plants, j = 1, 2, 3, located in China, the Philippines and
Thailand. The planning horizon covers 12 weeks, t = 1, 2, . . . , 12. It is assumed
that future economic conditions will fit into one of four possible situations –
boom, good, fair and poor, with associated probabilities of 0.40, 0.25, 0.20 and
0.15 respectively.
Period, t
Plant, j
1 2 3 4 5 6
1 500 400 450 550 400 450
2 400 350 350 500 300 350
3 300 300 250 450 200 250
Period, t
Plant, j
7 8 9 10 11 12
1 500 400 500 550 400 400
2 400 350 400 450 300 350
3 300 300 300 350 200 300
Period,
t
Plant,j Product, 1 2 3 4 5 6 7 8 9 10 11 12
i
1 1180 1520 1200 860 1040 1800 1280 900 1220 1900 2000 0
2 740 1120 1200 1300 1600 840 880 1500 940 980 640 2160
3 0 0 0 0 0 0 0 0 0 0 0 0
1 4 0 0 0 0 0 0 0 0 0 0 0 0
5 0 0 0 0 0 0 0 0 0 0 0 0
6 0 0 0 0 0 0 0 0 0 0 0 0
1 0 0 0 520 480 0 0 600 0 0 0 1820
2 360 480 0 0 0 560 420 0 660 920 1760 340
3 1040 1440 1300 1093 1440 1387 1160 0 0 1307 0 0
2
Regular-time production4 0 0 300 0 0 0 0 1200 1000 0 587 0
5 0 0 0 0 0 0 0 0 0 0 0 0
6 0 0 0 0 0 0 0 0 0 0 0 0
1 0 0 0 0 0 0 0 0 0 0 0 280
2 0 0 0 0 0 0 0 0 0 0 0 0
3 60 160 0 107 160 13 140 1400 1272 117 1760 1253
3 4 1100 1600 1000 1200 1600 1400 1300 200 168 1803 0 0
5 0 0 450 100 0 260 0 0 0 0 0 0
6 90 0 0 0 0 0 0 0 0 0 0 0
1 0 0 0 0 0 0 0 0 0 0 0 0
2 0 0 0 0 0 0 0 0 0 0 0 0
3 0 0 0 0 0 0 0 0 0 576 0 0
1 4 0 0 0 0 0 0 0 0 432 0 528 432
5 0 396 230 324 396 0 324 360 0 0 0 0
6 288 0 130 0 0 396 0 0 0 0 0 0
1 0 0 0 0 0 0 0 0 0 0 0 0
2 0 0 0 0 0 0 0 0 0 0 0 0
3 0 0 0 0 0 0 0 0 328 0 240 0
2 production 4
Overtime 0 0 0 0 0 0 0 0 0 197 288 432
5 0 396 360 324 396 396 324 360 78 284 0 0
6 288 0 0 0 0 0 0 0 0 0 0 0
1 0 0 0 0 0 0 0 0 0 0 0 0
2 0 0 0 0 0 0 0 0 0 0 0 0
3 0 0 0 0 0 0 0 0 0 0 0 0
3 4 0 0 0 0 0 0 0 0 0 0 528 432
5 288 0 360 0 396 396 324 360 0 432 0 0
6 0 396 0 324 0 0 0 0 324 0 0 0
1 0 0 0 0 0 0 0 0 0 0 0 0
2 0 0 0 0 0 0 0 0 0 0 0 0
3 0 0 0 0 0 0 0 0 0 0 0 747
Subcontract 4 0 0 0 0 0 0 0 0 0 0 69 704
5 812 808 0 352 412 348 328 220 1522 1384 2000 2100
6 434 1204 1270 776 1600 1004 1300 1300 1276 2100 2000 2100
Hiring 30 45 0 0 30 0 0 15 0 45 0 0
Lay-off 0 0 15 15 0 0 30 0 15 0 15 30
Workforce 120 165 150 135 165 165 135 150 135 180 165 135
A Two-Stage Recourse Model for Production Planning 259
Table 1 shows the production cost and inventory cost for different products
in each plant and the shortage costs with regard to different economic situations.
Table 2 show the labour cost, hiring cost and lay-off costs, and the workforce data
with regard to different plants. The estimated product demands under different
economic conditions are shown in Table 3. Lastly, Table 4 shows the machine
capacity of the three plants, while Table 5 shows the labour production time and
machine time.
Table 6 reports the optimal production loading plan. It can be seen that
the majority of products are produced by regular-time labour. In particular, all
products 1 and 2 are come from regular-time production. It can also be noted
that plant 1 is mainly used to produce products 1 and 2; plant 2 products 2 and
3; and plant 3 products 3 and 4. Products 5 and 6 are produced by overtime
production and supplied by subcontractors. Lastly, the workforce level in each
period attains the upper-bound limit. The corresponding number of workers
hired and laid off can also be found in Table 6.
The breakdown of costs incurred is listed in Table 7. The operational cost,
which is the sum of production cost, labour cost, inventory cost and hiring
cost and lay-off cost, is $16,962,525. Clearly, when the demand requirements are
smaller than the available products (from previous inventory, current production
and subcontractor), the stock will be kept at the end of particular period t under
scenario s, and the corresponding inventory cost will be incurred. On the other
hand, when the demand requirements are not satisfied, the company’s service
level and goodwill will be damaged. Compensation may be considered to cover
the excess demand. In this study, the penalty cost is considered. Under the
optimal production loading plan, the penalty cost is $4,012,000. Overall, the
total cost, which is the sum of operational and penalty cost, is $20,974,525.
5 Conclusions
In this paper, we developed a two-stage recourse model for production planning
problem with stochastic demand. A set of data from a multinational lingerie
company in Hong Kong is used to demonstrate the robustness and effectiveness
of the proposed model. It is observed that the model can provide a credible
and effective methodology for real-world production planning problems in an
uncertain environment. However, there is still room for improvement and in-
vestigation. First, sensitivity analysis on the cost parameters in the objective
function may be conducted to test the trade-off between total cost and stock-
outs. Second, the selection of scenarios of economic conditions could be further
investigated.
260 K.K. Lai, S.C.H. Leung, and Y. Wu
Acknowledgement
The work described in this paper was supported by an Annual Grant of Univer-
sity of Southampton, UK.
References
1. Baykasoglu, A.: MOAPPS 1.0: Aggregate Production Planning Using the Multiple-
Objective Tabu Search. International Journal of Production Research 39 (2001)
3685-3702.
2. Dantzig, G.B.: Linear Programming Under Uncertainty. Management Science 1
(1955) 197–206.
3. Hung, Y.F., Hu, Y.C.: Solving Mixed Integer Programming Production Planning
Problems with Setups by Shadow Price Information. Computers and Operations
Research 25 (1998) 1027-1042.
4. Hung, Y.F., Shih, C.C., Chen, C.P.: Evolutionary Algorithms for Production Plan-
ning Problems with Setup Decisions. Journal of the Operational Research Society
50 (1999) 857-866.
5. Masud, A.S.M., Hwang, C.L.: An Aggregate Production Planning Model and Ap-
plication of Three Multiple Objective Decision Methods. International Journal of
Production Research 18 (1980) 741-752.
6. Mazzola, J.B., Neebe, A.W., Rump, C.M.: Multiproduct Production Planning in
the Presence of Work-Force Learning. European Journal of Operational Research
10 (1998) 336-356.
7. Nam, S.J., Logendran, R.: Aggregate Production Planning – A Survey of Models
and Methodologies. European Journal of Operational Research 61 (1992) 255-272.
8. Ozdamar, L., Bozyel, M.A., Birbil, S.I.: A Hierarchical Decision Support System for
Production Planning (with Case Study). European Journal of Operational Research
104 (1998) 403-422.
9. Wang, D., Fang, S.C.: A Genetics-Based Approach for Aggregated Production Plan-
ning in a Fuzzy Environment. IEEE Transactions on Systems, Man, and Cybernetics
– Part A: Systems and Human 27 (1997) 636-645.
A Hybrid Primal-Dual Algorithm with
Application to the Dual Transportation
Problems
1 Introduction
Lagrangian dual(LD) methods are widely used approaches for solving specially
structured constrained problems through the process of dualizing complicated
constraints in order to obtain easier subproblems. These subproblems give a
lower bound on the original objective function value. There are several issues that
we need to consider in Lagrangian dual approaches. Among them, dualization
strategies, solution methods, and primary recovery techniques are come of the
most important ones.
Consider a linear programming problem stated as follow:
LP : min{cx : Ax ≤ b, x ∈ X} (1)
Corresponding Author.
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 261–268, 2005.
c Springer-Verlag Berlin Heidelberg 2005
262 G. Choi and C. Kim
problem of interest, but also in the context of branch and bound approaches
where a solution to the linear programming relaxation LP might be required.
In this paper, we propose some practical primal recovery schemes, which use
a specific convex combination weight strategy to recover primal feasible and
optimal solutions under the fixed target value method to guarantee a rapid dual
convergence as a suitable step length. If we need to further polish the primal
solution to achieve near feasibility and optimality, we adopt the penalty function
method.
Following this, Larsson and Liu[1] provided a similar results to that of Shor’s by
using the average weighting rule
1
μkj = f or all 1 ≤ j ≤ k, (4)
k
under a special step-length choice λk = a/(b + ck) for the dual subgradient
method, where and are some numbers. The average weighting rule (4) seems
more reasonable than that of (3). However, Larsson and Liu’s step-length rule
is unpopular and untested for general problems. In other words, no compu-
tational performance for general Lagrangian dual problem has been reported.
Their step-length rule has been used in their primal-dual heuristic algorithm
for multicommodity flow problems. Considering the weakness of Larsson and
Liu’s procedure, Sherali and Choi[3] provides a primal convergence theorem for
a wider class of step-length rules and convex combination weighting rules. To
this end, let us define for each k,
μkj
γjk = f or j = 1, ..., k, (5)
λj
A Hybrid Primal-Dual Algorithm 263
where λj and μkj are the step-lengths and the convex combination weights,
respectively, and let γkmax = maximum{γjk − γ(j−1)k : 2 ≤ j ≤ k}.
Now, consider the following results.
Theorem 1 (Sherali and Choi[3]). Suppose that the subgradient method op-
erated under a suitable step-length rule attains dual convergence to some feasible
solution, that is,πk → π̄ as k → ∞ for some π̄ ≥ 0. If the step lengths λk and
the convex combination weights μkj , for all j and k are chosen to satisfy:
(i) γjk ≥ γ(j−1)k for all j = 2, ..., k, for each k
(ii) γkmax → 0 as k → ∞,and
(iii) γjk → 0 as k → ∞ and γkk ≤ δ for all k , for some δ > 0.
Then any accumulation point x̄ of the sequence {xk } is feasible and x̄ and π̄ are
optimal solutions to the primal and dual problems LP and LD, respectively.
The convergence theorem asserts that so long as the dual iterates are conver-
gent, and the step lengths and the convex combination weights satisfy some
conditions, the corresponding sequence of primal iterates will produce a feasi-
ble and optimal solution. Now, we present similar convergence results with using
the most promising dual convergence step-length rule (6) and some other convex
weighting rule (7). The proof is very straightforward and is omitted.
Theorem 2. Let the step lengths λk and the convex combination weights μkj for
all j and k , are given by the follows.
w − θ(πk )
λk = βk f or all k, (6)
||gk ||2
where w is a target value and 0 ≤ ε1 ≤ βk ≤ ε2 ≤ 2 , and
λj
μkj = f or all j = 1, ..., k, f or all k. (7)
k
tλt
t=1
jλj
μkj = f or all j = 1, ..., k, f or all k. (8)
k
tλt
t=1
Note that every accumulation point of sequence the primal iterates generated at
this scheme is an optimal solution to the primal problem. Moreover, it is easy to
implement, using only the step length used in the subgradient algorithm itself.
However, although this scheme satisfies primal convergence theorem, a primal
solution obtained at some maximum iteration limits could be neither optimal nor
even feasible to the primal problem. Hence, in next, we show that it is possible to
achieve near feasible and optimal solutions by primal penalty function method.
where π̄i denotes the i-th component of the vector π̄ and w > 0 is a penalty
parameter, and ai 4 and bi are, respectively, the i -th row of the matrix A and
the i-th component of b.
The following Theorem 4 shows the convergence results of the penalty func-
tion method.
The test problems are randomly generated using a standard linear program-
ming generation scheme so that the 10 problems have arcs between 5,000 and
20,000. For the computational test, the algorithm is coded in Visual C++ and is
executed on Pentium 300MHz / 128 M DRAM IBM Compatable PC. Let D(%)
and P (%), respectively, represent the dual and primal optimalities in percentage
that were achieved during the procedure, and are computed as follows.
6 7 6 7
|f ∗ − θ(π̄)| |f¯ − f ( ∗)|
D = 1− × 100(%)
, P = 1 − × 100(%)
f∗ f∗
Moreover, we also present the magnitude of constraint violations at termi-
nation, by specifying the average violation magnitude, denote as AVG-VIO and
266 G. Choi and C. Kim
The computational results show that the dual solution obtained at Stage I-II
lies within 99.80 % of average optimality.Moreover, the primal recovery schemes
presented in Theorem 2 and 3 produce primal solutions that lie on near optimal
objective contours. The average optimality obtained is 99.20 % and 99.22%,
respectively. This result indicates that schemes used in Theorem 2 and 3 can be
quite powerful in providing a lower bound on LP. In case of scheme presented in
Theorem 2, the mean value of F(%), the average constraint violation AVG-VIO
as a percent of the average demand AVG-DEM, is 70.10 %. In case of scheme
presented in Theorem 3, the mean value of F(%) have improved from 70.10%
to 80.17%, compared with results of Theorem 2. However, we note that none of
the 10 problems has satisfied the near-feasibility and near-optimality termination
rules during the iterations of Stage II.
Table 2 presents the results for Stage III. Here, fˆ represents the primal objec-
tive function value at termination and T(%) represent the primal optimalities in
percentage that were achieved during the Stage III, and are computed similarly
as before. ITR(CPU) indicates the number of iterations and the corresponding
CPU time (in second) at termination.
Throughout these test runs, we have observed that the performance of the
primal penalty function method depends very much on the quality of the dual
A Hybrid Primal-Dual Algorithm 267
Fig. 1. Feasibility for Stage II and Stage III of Hybrid Primal Dual Algorithm
incumbent solution, as one might expect, since this influences the definition of
the penalty function as well as the determination of the step-length. In an overall
examination, the penalty function method seems to perform well over Stage II
in the sense that the constraint violation magnitudes are reduced significantly.
This fact indicates that feasibility is improved significantly at Stage III satisfying
termination criterion for the relative duality gap between penalty function value
and dual objective value.
Figure 1 shows that sequence of primal solution that a hybrid primal dual
algorithm produces convergence to feasible point in this context.
method. We also have proposed a hybrid primal dual algorithm that meets the
global convergence property and is based on practical primal recovery scheme.
Throughout convergence proof and computational implementation, we verify
that a hybrid primal dual algorithm produces a near-feasible and near-optimal
solutions in a reasonably efficient manner. This can serve as a valuable tool in
the context of Lagrangian dual/relaxation optimization. As for further research,
we remark that there still needs to many experiments with different classes of im-
portant, special problems in order to understand the advantage or disadvantage
of this algorithm.
References
1. Larsson, T and Z. Liu, ”A primal convergence result for dual subgradient optimiza-
tion with application to multi-commodity network flows”, Research Report, Dept.
of Mathematics Linkoping Instituted of Technology, S-581 83 Linkoping, Sweden,
1989.
2. Sen, S. and H. D. Sherali, ”A class of convergent primal-dual subgradient algorithms
for decomposable convex programs”, Math. Programming, vol. 35(1986), .279-297.
3. Sherali, H.D. and G. Choi, ”Recovery of primal solutions when using subgradient
optimization methods to solve Lagrangian duals of linear programs”, OR Letters,
Vol. 19(1996), 105-113.
4. Sherali, H. D. and O. Ulular, ”A primal-dual conjugate subgradient algorithm for
specially structured linear and convex programming problems”, Appl. Math. Optim,
vol. 20(1989), 193-221.
5. Shor, N. Z. Minimization Methods for Nondiffrentiable Functions, Translated from
Russian by K. C. Kiwiel and A. Ruszczynski, Springer, Berlin, 1985.
Real-Coded Genetic Algorithms for Optimal
Static Load Balancing in Distributed Computing
System with Communication Delays
1 Introduction
The objective in load balancing is to schedule the jobs that arrive at a central
scheduler to various processors in the system, to minimize the mean response
time of a job. We consider a centralized model, in which jobs arrive at the
central scheduler and are allocated to various processors in the system. In this
situation, pj is the probability that an arrived job is allocated to processor j and
M
j=1 pj = 1, where M is the number of processors in the system [1, 2, 3, 4, 5].
This problem is studied in the context of optimally balancing the total load
on a set of devices in memory hierarchy in [1], and in the context of optimally
distributing the I/O request to disk in [2] and obtained a condition on the arrival
rate of jobs to the system. For a similar problem, a dropout rule is analyzed in
[3]. Dropout rule states that for some values of arrival rate, the slower processors
in the system are never used. This problem is studied for different job classes
in [4], and is also studied in the context of applying Bayesian decision theory
to decentralized control of job scheduling in [5]. In all these studies [1, 2, 3, 4, 5],
the mean communication delay for a job to processor j in the system is not
considered.
The problem of optimal static load balancing in a distributed system incor-
porating the communication delay is first considered in [6]. In this study, two
algorithms namely parametric-study algorithm and a single point algorithm are
presented. The parametric-study algorithm generates the optimal solution as a
function of communication time and the single point algorithm gives the opti-
mal solution for a given system parameters. This study is further analyzed and
another single point algorithm is presented in [7]. This load balancing problem
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 269–279, 2005.
c Springer-Verlag Berlin Heidelberg 2005
270 V. Mani, S. Suresh, and H.J. Kim
in a tree hierarchy network configuration is studied in [8] and for the case of
multi-class jobs is considered in [9]. In these studies, the mean communication
delay is considered as a differentiable, nondecreasing and convex function.
μ1
p1 λ μ2
p2λ
piλ μι
λ Scheduler
pm−1λ
μm−1
pmλ
μm
M
subject to pj = 1
j=1
μj
pj ≤ , j = 1, 2, · · · , M
λ
pj ≥ 0, j = 1, 2, · · · , M and gj = 0, if pj = 0 (2)
Real-Coded Genetic Algorithms 271
We must keep in mind the above constraints when we generate initial population
of solutions and design genetic operators.
272 V. Mani, S. Suresh, and H.J. Kim
q
where q is the selection probability and q = 1−(1−q) N and N is the population
size. We can see that the better solution has a better chance of being selected
for producing new solutions using genetic operators.
Let K1 = c1i + c1i+1 + · · · + c1j and K2 = c2i + c2i+1 + · · · + c2j . Also let x1 = K1 /K2
and x2 = K2 /K1 . Two new solutions H1 and H2 are obtained as
Simple Crossover (SCX): Here only one crossover point i is selected randomly
and the second crossover point is M . Here Let K1 = c1i + c1i+1 + · · · + c1M and
K2 = c2i + c2i+1 + · · · + c2M . Also let x1 = K1 /K2 and x2 = K2 /K1 . Two new
solutions H1 and H2 are obtained as
Uniform Crossover (UCX): This operator first select two crossover points
randomly i and j. Here Let K1 = c1i + c1j and K2 = c2i + c2j . Also let x1 = K1 /K2
and x2 = K2 /K1 . Two new solutions H1 and H2 are obtained as
H1 = C1 + α(C1 − C2 ) (12)
H2 = C2 + α(C2 − C1 ) (13)
Random Zero Mutation (RZM): This operator first select one mutation
point randomly i. The new solution (H1 ) is generated by making the value at
this mutation point zero and distributes this value to other elements in the
solution equally or proportionately.
c1i
where xi = M −1 in equal allocation, and xi = c1i M μi in proportional
μj
j=1 j=i
allocation. The random zero mutation operator is useful because one element is
made zero implies the drop-out condition mentioned in [3, 4] for our problem.
Also this random zero mutation operator increases the rate of convergence.
We have presented four different crossover operators and two mutation oper-
ators. Each crossover operator finds two new solutions and mutation operators
produce one new solution. The type of genetic operator to be used depends on a
particular problem. In fact one type of crossover operator may perform well for a
problem may not perform well for a different problem. Even in the same problem
one type of crossover may perform well in the earlier stages of the problem and
may not perform well in the later stages of the same problem. This fact has been
brought out in no-free-lunch-theorem [15]. Hence it is better to apply different
crossovers simultaneously on the population for practical situations [16, 17]. This
Real-Coded Genetic Algorithms 275
is true with mutation operators also. Hence, in this paper, we have used a hybrid
operator methodology. In the hybrid method, the solutions selected for crossover
and mutation are used to generate new solutions using different crossover and
mutation operators. The best solution from these generated solutions are used
for next generation. This is same as elitist model described in [12], and also
the best solution from one generation is carried to the next generation. The
advantage is that the search becomes faster and computation time is reduced.
F = −T (18)
3 Simulation Results
The real-coded genetic algorithm for optimal static load balancing problem is
implemented in MATLAB on a Pentium-IV machine. The genetic algorithm used
the following parameters: Sm -mutation probability 0.05; Sc -crossover probability
0.6; q-selection probability 0.08; and G = 500. The following steps are carried
out in real-coded genetic algorithm for optimal static load balancing problem.
We can see that GA use the Elitism strategy by passing the ‘good’ solutions to
the next generation of solutions, and combining different solutions to explore new
solutions. In this way, the GA converges to the optimal solution for the problem.
In [18], a theory of convergence for real-coded genetic algorithm is analyzed.
The advantage with genetic algorithms is that it starts with a random solutions
and modify the solutions in successive generations, and the optimal solution is
obtained. So we have used the genetic algorithm 5 times (runs) for each of the
numerical examples in our simulation for verification.
We now present some numerical examples and also compare the performance
of GA results with Nelder-Mead Simplex (NMS) method [19] and gradient de-
scent (quasi-Newton) (QNM) technique [20]. The constrained optimization prob-
lem given in equation (2) is converted into a Lagrange function and solved using
NMS and QNM techniques. The NMS method does not need the derivatives of
the objective function. This method starts with an initial simplex of (N + 1)
points; At each point of the simplex, the objective function is evaluated. Based
on the objective function values at these points, elementary geometric transfor-
mation is done. In this manner, the worst point is replaced by a better point.
The QNM need the derivative information. The conditions in this method are
the objective function should be twice differentiable and the gradient vector and
the Hessian matrix can be calculated at all points.
Type λ p1 p2 p3 p4 T NFC
50 0 0.0972 0.3266 0.5762 0.01499 219
RGA 75 0.0097 0.1587 0.3262 0.5054 0.01756 263
100 0.1006 0.1967 0.2985 0.4042 0.02923 274
100 0 0.0983 0.3512 0.5505 0.01501 909
NMS 125 0.0097 0.1587 0.3262 0.5054 0.01756 449
150 0.1006 0.1967 0.2985 0.4042 0.02923 438
50 0 0.0972 0.3266 0.5762 0.01499 601
QNM 75 0.0097 0.1587 0.3262 0.5054 0.01756 342
100 0.1006 0.1967 0.2985 0.4042 0.02923 374
techniques requires more function evaluations than the RGA. When any of the
pj are zero then the RGA is more efficient than the other methods.
The advantage of real-coded genetic algorithms is that it is easy to incorpo-
rate the communication delay. The reason is that only in the fitness function
(the objective function) will change and all other parts of the algorithm are
the same. We present numerical example 2. for four processor (m = 4) system
with communication delays. For case (i), from the above Table 2 we observe the
following: When the communication delay is 0.005 (gi = 0.005, i = 1, 2, 3, 4),
the load fraction assigned to the processors are equal and is 0.25. The response
time (T ) is 0.03333, for arrival rate λ equals to 60. When the communication
delay is increased by 100% for all the processors, one may think that the optimal
load fraction assigned to the processors is equal distribution, because both the
service rate and the communication delay is same for all the processors. But this
is not the optimal load distribution. The optimal load distribution is obtained
by removing one of the processors from the network. Or in other words one of
the processors is dropped out from the load distribution process. With the com-
munication delays, when all the four processors are used, the response time is
0.1 whereas when only three processors are used the response time is 0.08. So
one of the processors is dropped out from the load distribution process in the
real-coded genetic algorithm. Though in the Table 1 (case 2) we have shown the
load fraction assigned to processor p1 is zero, in our simulation we obtained one
of the processors is assigned a zero load fraction and the load fraction assigned
to the others are equal. Similarly, when the communication delay is 0.05 for all
the processors, the optimal load distribution is obtained by removing any two
processors from the network.
Case λ g1 g2 g3 g4 p1 p2 p3 p4 T
Homogeneous Network: μ1 = μ2 = μ3 = μ4 =40
60 0.005 0.005 0.005 0.005 0.25 0.25 0.25 0.25 0.06
i 60 0.010 0.010 0.010 0.010 0.3333 0 0.3333 0.3333 0.08
60 0.050 0.050 0.050 0.050 0.5 0 0 0.5 0.2
Heterogeneous Network: μ1 = μ2 =40 and μ3 = μ4 =80
60 0.010 0.010 0.01 0.01 0 0 0.5 0.5 0.04
60 0.050 0.050 0.05 0.05 0 0 0 1 0.1
ii 60 0.005 0.005 0.01 0.01 0 0 0.5 0.5 0.04
60 0.005 0.005 0.02 0.02 0 0.25 0 0.75 0.5643
60 0.005 0.005 0.10 0.10 0.5 0.5 0 0 0.11
Heterogeneous Network: μ1 =40, μ2 =60, μ3 =80, μ4 =100
120 0.005 0.01 0.015 0.020 0 0 0.42893 0.57107 0.068177
iii 120 0.005 0.01 0.020 0.025 0.16456 0.28208 0 0.55335 0.075383
120 0.005 0.01 0.015 0.030 0 0 0.4305 0.5695 0.078179
278 V. Mani, S. Suresh, and H.J. Kim
4 Conclusions
Load balancing is an important issue in distributed computing systems. In this
paper, we proposed a real-coded genetic algorithm method for the load balanc-
ing problem in a centralized scheduler. The various issues involved in genetic
algorithm such as solution representation, genetic operators are discussed. It is
shown that how the knowledge from the problem are incorporated in solution
representation and genetic operators. We also show that incorporating the com-
munication delay is easy in our approach. Numerical results are presented to
show the computation time performance of our method with standard optimiza-
tion methods.
References
1. Buzen, J. P., and Chen, P. P. S.: Optimal load balancing in memory hierarchies.
Information Processing 74, The Netherlands; North-Holland. (1974) 271-275.
2. Piepmeier, W. F.: Optimal balancing of I/O requests to disks. Communications of
the ACM. 18(9) (1975) 524-527.
3. Agrawala, A. K., Tripathi, S. K. and Ricart, G.: Adaptive routing using a virtual
waiting time technique. IEEE Trans. on Software Engineering. 8(1) (1981) 76-81.
4. Ni, L. M. and Hwang, K.: Optimal load balancing in a multiple processor system
with many job classes. IEEE Trans. on Software Engineering. 11(5) (1985) 491-496.
5. Stankovic, J. A.: An application of bayesian decision theory to decentralized control
of job scheduling. IEEE Trans. on Computers. 34(2) (1985) 117-130.
6. Tantawi, A. N. and Towsley, D.: Optimal static load balancing in distributed com-
puter systems. Journal of the Asso. for Computing Machinery. 32(2) (1985) 445-
465.
7. Kim, C. and Kameda, H.: An algorithm for optimal static load balancing in dis-
tributed computer systems. IEEE Trans. on Computers. 41(3) (1992) 381-384.
8. Li, J. and Kameda, H.: A decomposition algorithm for optimal static load balancing
in tree hierarchy network configurations. IEEE Trans. on Parallel and Distributed
Systems. 5(5) (1994) 540-548.
9. Li, J. and Kameda, H.: Load balancing problems for multiclass jobs in dis-
tributed/parallel computer systems. IEEE Trans. on Computers. 47(3) (1998)
322-332.
10. Holland, H. J.: Adaptation in natural and artificial systems. University of Michigan
Press, Ann Arbor, (1975).
11. Goldberg, D. E.: Genetic algorithms in search, optimization and machine learning
Addison-Wesley, New York, (1989).
12. David, L.: Handbook of Genetic Algorithms, New York, (1991).
13. Michalewicz, Z.: Genetic algorithms + Data structures = Evolution programs, AI
Series, Springer-Verlag, New York, (1994).
14. Houck, C. R., Joines, J. A. and Kay, M. G.: A genetic algorithm for function
optimization: A Matlab implementation. ACM Trans. on Mathematical Software.
22 (1996) 1-14.
Real-Coded Genetic Algorithms 279
15. Wolpert, D. H. and Macready, W. G.: No free lunch theorems for optimization.
IEEE Trans. on Evolutionary Computation. 1(1) (1997) 67-82.
16. Herrera, F., Lozano, M. and Sanchez, A. M.: Hybrid crossover operators for
real-coded genetic algorithms: An experimental study. Soft Computing - A Fusion
of Foundations, Methodologies and Applications, 2002.
17. Herrera, F., Lozano, M. and Verdegay, J. L.: Tackling real-coded genetic al-
gorithms: Operators and tools for behavioural analysis. Artificial Intelligence
Review. 12(4) (1998) 265-319.
18. Goldberg, D. E.: Real-coded genetic algorithms virtual alphabets, and blocking.
Complex Systems. 5 (1991) 139-167.
19. Lagarias, J.C., Reeds, J. A., Wright, M. H. and Wright, P. E.: Convergence
properties of the Nelder-Mead simplex method in low dimensions, SIAM Journal
of Optimization. 9(1) (1998) 112-147.
20. Shanno, D.F.: Conditioning of Quasi-Newton methods for function minimization.
Mathematics of Computing. 24 (1970) 647-656.
Heterogeneity in and Determinants of Technical
Efficiency in the Use of Polluting Inputs
1 Introduction
Traditional Pigouvian strategies (e.g. taxes or standards) have not been ap-
plied to manage the environmental impacts of industries, specially, agriculture.
First, elasticities of use of polluting inputs with respect to their price appear
to be small suggesting that substantial tax rates would be required to induce
necessary changes in use, see e.g. [3]. Second, the impact of changes in use on
environmental pollution is also estimated to be small [18]. Use of standards side
steps these problems, however, they are most attractive when the regulated pop-
ulation is homogeneous. [3] has shown that heterogeneity across farm producers
can be substantial and important to consider in estimation of the productivity of
polluting inputs. Nonparametric results further extend evidence of this hetero-
geneity to technical efficiency in use of polluting inputs, [8], [15]. In both cases,
substantial and heterogeneous inefficiency in the use of polluting inputs such as
pesticides and fertilizers were reported.
Within this context, use of incentive-based regulation strategies becomes at-
tractive, however, their design and effectiveness also depends upon the extent
and nature of heterogeneity across the regulated population. In order to explain
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 280–289, 2005.
c Springer-Verlag Berlin Heidelberg 2005
Heterogeneity in and Determinants of Technical Efficiency 281
the extent and nature of the heterogeneity in inefficiency in the use of pollut-
ing inputs, it is possible to think about firm-level characteristics. In the case of
agriculture, they include IPM1 practices, BMP2 , and production scale.
This paper examines the hypothesis that substantial reduction in use of pol-
luting inputs can be achieved through improvement in the technical efficiency
of their use. Further, it evaluates the usefulness of information describing cur-
rent use of specific IPM practices, other environmentally beneficial BMP, and
operation scale to classify farm-level environmental performance as measured by
technical efficiency in polluting input use. Though this paper is based on the
data from US agriculture which has quite different characteristics from other
industries such as computer industry and refinery industry and agriculture of
other countries, it is certain that the analysis approach and model specifications
of this paper can be applied to other industries and agriculture of other countries
only with some modifications in characteristics.
1
Integrated Pest management such as pest management activities before, on, and
after the pest emergence.
2
Best Management Practices such as alternative land use practices, soil test, etc.
282 T. Kim and J.-G. Kim
where η can be a scalar and a vector. Fig. 1 illustrates input-based technical effi-
ciency (T EI ) and output-based technical efficiency (T EO ) from the perspective
of an input-input space, an input-output space, and an output-output space.
constraints:
N
zn xn,i ≤ xn0 ,i λn0 , i = 1, 2, ..., I : Variable inputs, (4)
n=1
N
yn0 ,j ≤ zn yn,j , j = 1, 2, ..., J : Outputs,
n=1
N
zn ≤ 1, Variable returns to scale
n=1
Non-negative constraints
Heterogeneity in and Determinants of Technical Efficiency 283
λn0
Object function (NRTE): min ,
λn0 ,z N+
n∈{k|xn0 ,k =0}
constraints:
N
zn xn,i ≤ xn0 ,i λn0 , i = 1, 2, ..., I : Variable inputs, (5)
n=1
N
yn0 ,j ≤ zn yn,j , j = 1, 2, ..., J : Outputs,
n=1
N
zn ≤ 1, Variable returns to scale
n=1
Non-negative constraints
As noted in equation (4) and (5), constraints set estimates the piecewise lin-
ear production frontier determining the optimal weights for each firm, and the
objective function calculates the minimum ratio of the piecewise linear produc-
tion frontier to current position of the evaluated firm.
As noted, radial measure adjusts the input vector back toward the origin. This
radial efficient point (AR ) of Fig. 2 belongs to the weak efficient point in that it
may have slacks [7]. In Fig. 2, although AN R does not have any slack, AR has
the slack by AN R − AR . Because of this existence of slacks in RTE, it may seem
to look incomplete. However, RTE is meaningful in that it can give us the overall
technical efficiency of firms. In order to obtain a more complete (or at least not
weak) measure, it is possible to think about a nonradial measure of technical
efficiency. Each input factor is reduced in a different proportion. In Fig. 2, the
adjustment from A to AN R represents the nonradial adjustment. These nonradial
technically efficient points (AN R ) belong to the efficiency points in that they
do not have any slack. NRTE is also meaningful in that it can give us insight
into the source of the technical inefficiency of firms. This nonradial technical
efficiency measure collapses to the radial measure when all technical efficiencies
for all inputs are equal to the radial technical efficiency. Since nonradial measures
can shrink an input vector at least as the radial measure can, the relationship
between them is 0 ≤ N RT E ≤ RT E ≤ 1. The models for both radial measures
and nonradial measures are in equation (4) and (5). This distinction between
radial measure and nonradial measure comes from the piecewise linear property
of the production frontier estimated by DEA.
Moreover, in order to understand what firm-level characteristics may be asso-
ciated with technical efficiency, we use regression of technical efficiency scores on
firm-level characteristics. The ordinary least square regression method is used in
this paper (y = βx + ). Many papers ([6], [4], [2], [8]) used double limited Tobit
method to do the same thing. However it might be irrelevant because there is
no truncation and censoring in this context. Though censored data come from
sampling from a subset of a large population, for example, sampling data for in-
come studies based on incomes above or below some income level [9], there is no
censoring because our sample was drawn by random sampling. From the books
of [9] and [10], truncation in our context means that though values greater than
1 can exist, the values are expressed by just 1. For example, though 1.2, 1.5, and
even 2.5 can exist in data set, if all of them were expressed by 1 in regression
analysis the data is said to be truncated by 1. However, in our context, because
technical efficiency scores can never be over 1 (thus 1 exactly means 1), there
is no truncation. In this paper, since dependent variable (technical efficiency)
is not truncated or censored at all, there does not exist any convincing reason
for utilizing Tobit regression instead of ordinary least square regression [9]. The
model specification for winter wheat in this paper is in Table 1.
The specification of Table 1 is motivated as follows. [12] examines the rela-
tionship between farm size and technical efficiency of Brazilian farms. Technical
efficiency is regressed on farm size, type of land tenure, technology indicators,
and input usage. [14] regresses technical efficiency on education of farmer, land
use practices, fertilizer use, and pesticide use for Nigerian farmers. [17] exam-
ines whether tillage, cropping practices, and farm characteristics such as farm
size affect technical efficiency of farms growing wheat, sorghum, and soybean or
not by using stochastic frontier method. Integrating the specifications of these
Heterogeneity in and Determinants of Technical Efficiency 285
papers and concentrating on the title of this paper, our specification focuses on
the relationship between technical efficiency, farm size, and IPM practices and
BMP including tillage system, soil test (cropping practice), pesticide application
practice, land use practices, and farm operation scale.
Standard
variable N Min Max Mean
Deviation
Arcres planted 90 0.3 20 2.95 3.71
Seeding rate(lbs.) 90 60 180 134.25 29.71
Lime applied(tons) 90 0 30 10.47 9.74
Nitrogen applied(lbs.) 90 0 140 10.68 25.42
Phosphate applied(lbs.) 90 0 175 23.40 40.90
Potash applied(lbs.) 90 0 122.5 9.30 21.76
Acres treated of fertilizers 90 0 35 6.06 7.034
Yield/acre(bushedl) 90 17 100 61.27 17.10
dial efficiency, and nonradial efficiency for lime use by 0.335, 0.229, and 0.293
respectively. It is also conditional on whether the individual producer do soil test
or not. Use of soil test does affect technical efficiency most. It increases radial
efficiency, nonradial efficiency, nonradial efficiency for lime use, and nonradial
efficiency for fertilizer use by 0.502, 0.441, 0.198, and 0.301 respectively. Effect of
production scale on technical efficiency is considerably high. 10 acre expansion
increases radial efficiency, nonradial efficiency, nonradial efficiency for lime use,
#of efficient
Items N Min Max Mean
farms
Radial efficiency 90 34 0.3250 1.0000 0.7773
Nonradial efficiency 90 34 0.1162 1.0000 0.6416
Acres planted 90 39 0.0126 1.0000 0.6522
Seed rate(lbs.) 90 49 0.3000 1.0000 0.8481
Lime applied(tons) 90 20 0.0144 1.0000 0.4282
Nitrogen applied(lbs.) 90 18 0.0253 1.0000 0.2995
Phosphate applied(lbs.) 90 30 0.0134 1.0000 0.4990
Potash applied(lbs.) 90 17 0.0253 1.0000 0.3007
Acres treated(fertilizer) 90 45 0.0709 1.0000 0.7121
Nonradial
Average Nonradial Nonradial
Radial efficiency of
Factors nonradial efficiency efficiency of
efficiency acres treated
efficiency of Lime Nitrogen
by Fertilizers
Land use practice: 0.246∗ 0.308∗∗ -0.162 0.069 0.182
Strip cropping (1.83) (2.24) (-1.12) (0.49) (1.08)
0.502∗∗∗ 0.441∗∗∗ 0.198∗ 0.274∗∗∗ 0.301∗∗
Soil test
(5.15) (4.42) (1.89) (2.72) (2.47)
Land use practice: 0.335∗∗∗ 0.229∗ 0.293∗∗ -0.091 0.108
Contour farming 2.71 (1.81) (2.20) (-0.71) (0.70)
Land use practice: -0.045 0.024 0.05 -0.109 0.202
Water way (-0.30) (0.16) (0.31) (-0.71) (1.08)
0.036∗∗∗ 0.025∗∗∗ 0.027∗∗∗ 0.004 0.021∗∗
Acres harvested
(4.74) (3.17) (3.26) (0.53) (2.22)
F-value for ∗∗∗ ∗∗∗ ∗∗∗ ∗
34.42 23.37 8.46 2.21 9.48∗∗∗
regression model
R2 0.815 0.75 0.52 0.221 0.549
∗
Significant at the 10% level.
∗∗
Significant at the 5% level.
∗∗∗
Significant at the 1% level.
288 T. Kim and J.-G. Kim
and nonradial efficiency for fertilizer use by 0.36, 0.25, 0.27, and 0.21 respectively.
Also, acres harvested are used to see the impact of production scale.
The above results imply that winter wheat farms should focus on strip crop-
ping and contour farming in land use practice, and soil test in order to improve
their technical efficiency in production. Additionally, winter wheat farms should
also pay attention to their production scale. The approaches and model specifi-
cations can be applied to technical efficiency in the use of damage control inputs
for other industries and agriculture of other industries with some modifications
in variables.
5 Conclusion
This paper focuses on evaluation of the extent of heterogeneity across farm level
use of potentially polluting inputs and the factors determining the heterogeneity
across farms in Fertilizers and pesticides were considered. For samples of Penn-
sylvania winter wheat producers, farm level data were used to estimate nonpara-
metric measures of the technical efficiency with which these farms utilize these
inputs. Substantial heterogeneity was found in technical efficiency. Secondly, sub-
stantial opportunity was found for improving the efficiency through reduction in
the use of these inputs on many farms. Both the observed heterogeneity across
the farm population and the inefficiency in current use implies that traditional
uniform Pigouvian approaches to public management of the use of these inputs
would be inefficient.
Potential for targeting of farm specific instruments is affirmed by evidence
that farm characteristics can be used to predict difficult to observe technical
efficiency levels. For winter wheat farms, use of soil test increases efficiency most
and strip cropping and contour farming in land use practice increase efficiency
considerably. Moreover, efficiency for winter wheat farms is affected considerably
more by acres harvested. The methods and results of this research can be applied
to other industries and agriculture of other countries without any problem.
References
1. Banker, R.D., Charnes, A., Cooper, C.C.: Some Models for Estimating Technical
and Scale Inefficiencies in Data Envelopment Analysis. Management Science, Vol.
30, No. 9 (1984) 1078-1092
2. Binam J.N., Sylla, K., Diarra, I., Nyambi, G..: Factors Affecting Technical Effi-
ciency among Coffee Farmers in Cote d’Ivoire: Evidence from the Centre West
Region. African Development Review, Vol. 15, No. 1 (2002) 66-76
3. Carpentier, A.C., Weaver, R.D.: Damage Control Productivity: Why Econometrics
Matters. American Journal of Agricultural Economics, Vol.79 (1997) 47-61
4. Casu, B., Molyneux, P.: A Comparative Study of Efficiency in European Banking.
Applied Economics, Vol. 35, No. 17 (2003) 1865-1876
5. Cooper, W.W., Seiford, L.M., Tone, T.: Data Envelopment Analysis: A Com-
prehensive Text with Models, Applications, References and DEA-solver Software.
Kluwer Academic Publishers, Boston (2000)
Heterogeneity in and Determinants of Technical Efficiency 289
6. Dhungana, B.R., Nuthall, P.L., Nartea, G..V.: Measuring the Economic Inefficiency
of Nepalese Rice Farms Using Data Envelopment Analysis. The Australian Journal
of Agricultural and Resource Economics, Vol. 48, No. 2 (2004) 347-369
7. Fare, R., Grosskopf, S., Lovell, K.: Production Frontiers. Cambridge University
Press, Cambridge (1994)
8. Fernandez-Cornejo, J.: Nonradial Technical Efficiency and Chemical Input Use in
Agriculture. Agricultural and Resource Economics Review (1994) 11-21
9. Greene, W.H.: Econometric Analysis. 4th edn. Prentice-Hall International, Upper
Saddle River (2000)
10. Gujarati, D.N.: Basic Econometrics. 4th edn. McGraw Hill, Boston (2003)
11. Hall, M., Winsten, C.: The Ambiguous Notion of Efficiency. The Economic Journal,
Vol. 69 (1959) 71-86
12. Helfand, S.M.: Farm Size and the Determinants of Productive Efficiency in the
Brazilian Center-West. Contributed paper selected for presentation at the 25th
International Conference of Agricultural Economists, Durban, South Africa (2003)
13. Kumbhakar, S.C., Lovell, K.: Stochastic Frontier Analysis. Cambridge: Cambridge
University Press, Cambridge (2000)
14. Ogunyinka, E.O., Ajibefun, I.A.: Determinants of Technical Inefficiency in Farm
Production: The Case of NDE Farmers in Ondo State, Nigeria. Selected Paper pre-
pared for presentation at the Western Agricultural Economics Association Annual
Meeting at The Denver Adam’s Mark Hotel, Denver, Colorado (2003)
15. Piot-Lepetit, I., Vermersch, D., Weaver, R.D.: Agriculture’s Environmental Exter-
nalities: DEA Evidence for French Agriculture. Applied Economics, Vol. 29, No. 3
(1997) 331-342
16. Russell, R.R.: Measures of Technical Efficiency. Journal of Economic Theory, Vol.
35, No. 1 (1985) 109-126
17. Sankranti, S., Langemeier, M.R.: Tillage Systems, Cropping Practices, Farm Char-
acteristics and Efficiency. Selected paper prepared for presentation at the Southern
Agricultural Economics Association Annual Meeting, Tulsa, (2004)
18. Weaver, R.D., Harper, J.K., Gillmeister, W.J.: Efficacy of Standards vs. Incentives
for Managing the Environmental Impacts of Agriculture. Journal of Environmental
Management, Vol. 2 (1996) 173-188
A Continuation Method for the Linear
Second-Order Cone Complementarity Problem
1 Introduction
The linear second-order cone complementarity problem includes the linear com-
plementarity problem and the second-order cone program[1] as special cases, and
is the optimal condition to the convex quadratic second-order cone program. Es-
pecially, some problems in economics and engineering, such as facility location
and Nash equilibrium, can be formulated as it. Second-order cone complementar-
ity problems have been studied before; however, our algorithm is different from
others. Our formulation is simpler, which means less computation; our method
can be extended to P cone complementarity problems while others may not. In
addition, our algorithm can start from an arbitrary point.
Next, we describe some of our notations. Column vectors are denoted by bold
lower case letters and matrices by upper case letters. We use “;” to concatenate
column vectors. Primal-dual variables are indexed from 0. Subscripts are used
Research supported in part by a postdoctoral fellowship from JSPS (Japan Society
for the Promotion of Science).
Research partially supported by the grant # RPG 249635-02 of the National Sciences
and Engineering Research Council of Canada (NSERC) and a PREA award. This
research was also supported by the MITACS project “New Interior Point Methods
and Software for Convex Conic-Linear Optimization and Their Application to Solve
VLSI Circuit Layout Problems”.
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 290–300, 2005.
c Springer-Verlag Berlin Heidelberg 2005
A Continuation Method for the LSOCCP 291
for indices of a vector or a matrix; superscripts are for iteration numbers. Thus,
(xi )j is the (j +1)th element of the vector xi . We use x̄ to represent the subverter
of x excluding the first entry. As convention, I denotes the identity matrix.
The matrix R [2] is defined to be
⎛ ⎞
1
⎜ −1 ⎟
def ⎜ ⎟
R = ⎜ .. ⎟ .
⎝ . ⎠
−1
We use 0 to represent the zero vector and 1 to denote the vector of all one’s.
Let Qn denote an (n + 1)-dimensional second-order cone, i.e.,
def
Qn = {x ∈ Rn+1 : x0 ≥ x̄2 } .
We use Q to represent the Cartesian product of N second-order cones.
def
Q = Qn1 × Qn2 . . . QnN .
Here, ni are not necessarily the same for all the cones. We omit the subscripts
when dimensionalities are clear from the context. The second-order cone induces
a partial ordering. So we use x ≥Q 0 to denote x ∈ Q sometimes.
The linear second-order cone complementarity problem is generally written
as the following.
Find x ∈ Q , s ∈ Q
s.t. M x + q = s (1)
xT s = 0 .
Here, M is a real square matrix and q is a vector of proper order.
The remaining of the paper is organized as follows. In § 2, we give a new
reformulation of the second-order cone complementarity problem; A globally
convergent algorithm for the reformulation is presented in § 3. In § 4, we analyze
the Jacobian of the reformulation at optima.
√ √
2(xi )0 − xi 2 ≥ 0 , 2(si )0 − si 2 ≥ 0 . (4)
Mx + q = s
(6)
ϕi (xi , si ) = 0 (i = 1, . . . , N ) .
3 Global Convergence
In this section, we give an algorithm for (6) and prove its finite convergence
under certain conditions.
Then x and s are said to be on the central path iff for some μ ≥ 0,
Mx + q = s
(7)
ϕ(x, s; μ) = 0 .
A Continuation Method for the LSOCCP 293
M Δ x − Δ s = s − q − Mx ,
M x0 + q − s0 = 0 .
The Algorithm
1. For a given feasible starting point (x0 ; s0 ), find positive scalars μ0 and β,
such that (x0 ; s0 ) ∈ Nβ (μ0 ). Find μ such that μ ≤ μ and c ≤ βμ . Set
k = 0.
2. Do while μk > μ and (xk ; sk ) ≤ Υ .
(a) Let (Δ x; Δ s) be the solution to (8). Find the largest 0 < α̂ ≤ 1 such
that for any α ∈ [0, α̂],
k
x + α Δ x; sk + α Δ s ∈ Nβ (μk ) .
Set
xk+1 = xk + α̂ Δ x ,
sk+1 = sk + α̂ Δ s .
294 Y. Xia and J. Peng
(b) Find the largest 0 < μ̂ ≤ μk , such that for any μ ∈ [μ̂, μk ],
(xk+1 ; sk+1 ) ∈ Nβ (μ) .
Set
μk+1 = μˆk ,
k ←− k + 1 .
3.2 Global Convergence Results
In this part, we prove that our algorithm converges in finite steps under certain
conditions.
Theorem 1. Assume (8) is solvable at each iteration and (Δ xk ; Δ sk ) doesn’t
converge to infinity. Then the algorithm terminates in finite iterations.
Proof. We use contradiction.
Suppose the algorithm doesn’t terminate after finite iterations. Then the
Newton’s direction (Δ xk ; Δ sk ) doesn’t converge to infinity, there is an infinite
∞
subsequence of {1, 2, . . . }, denoted by {mk }∞
k=1 , such that {(Δ x
mk
; Δ smk )}k=1
is upper bounded. Since the algorithm doesn’t stop, (x ; s ) is also upper
mk mk
Next we will show that μmk can be reduced by a factor not less than a
constant.
1. Suppose ϕ(xmk , smk ; μmk ) < Ξ(xmk , smk ; θ Δ xmk , θ Δ smk ).
The minimum of the right-hand side of (10) as a function of α, which is
convex, is obtained at a point where its derivative is zero, i.e., at
Therefore,
def 1
f (a) = a − a2 / .
2
(a) Assume ≤ βμmk .
The maximum of f (a) is achieved at ã = , with value
1 1
f max = ≤ βμmk .
2 2
Combine (9) and (11),
1 mk
ϕ(xmk +1 , smk +1 ; ρμmk ) ≤ βμ + (1 − ρ)μmk .
2
When
β
ρ≥1− ,
2(β + )
1 β 2 (μmk )2
f max = βμmk − .
2
Similar to (1a), when
β 2 μmk
ρ≥1− ,
2(β + )
2. Consider the case ϕ(xmk , smk ; μmk ) ≥ Ξ(xmk , smk ; θ Δ θxmk , Δ smk ).
Let
α̃ = 1 .
Then
1 1
ϕ(xmk +1 , smk +1 ; μmk ) ≤ Ξ ≤ ϕ(xmk , smk ; μmk ) .
2 2
Since (xmk ; smk ) ∈ Nβ (μmk ), it is not difficult to see that when
β
ρ≥1− ,
2(β + )
ϕ(xmk +1 , smk +1 ; ρμmk ) ≤ βρμmk .
Obviously, α̂ ≥ α̃. Define
def β β β 2 μ
ρ = max 1 − ,1 − ,1 − .
2(β + ) 2(β + ) 2(β + )
Then ρ ∈ [0, 1) is a constant and for all mk ,
μ̂mk +1 ≤ ρ μmk .
Since {μk }∞
k=1 is a nonincreasing sequence, the above inequality implies that
the sub-sequence {μmk +1 }∞ k=1 converges to zero, which implies the whole se-
quence {μk }∞
k=1 is less than μ after finite iterations. That contradicts to the
assumption μk ≥ μ for all k = 1, . . . .
Remark 1. The above results also show the global linear convergence rate of the
algorithm.
def
O = {i ∈ Ind : xi = 0, si ∈ int Qni },
def
I = {i ∈ Ind : xi ∈ int Qni , si = 0},
def
B = {i ∈ Ind : xi ∈ bd Qni , si ∈ bd Qni }.
def
Here, bd Qni = {x ∈ Qni : x0 ≥ x̄2 , x0 = 0}. See [2].
A Continuation Method for the LSOCCP 297
To analyze the generalized Jacobian, we first consider ∂xi (ϕi ) and ∂si (ϕi ) for
i ∈ O, I, B separately.
Since (2a) is satisfied at optimum, for i ∈ O, dϕ i
dsi = 0 and any element in
the subdifferential of ϕi at xi , denoted as ∂xi (ϕi ), is the following arrow-shape
matrix:
⎛ √ ⎞
ξ0 − 2 ξ1 ... ξni
⎜ √ (si )1 ⎟
⎜ (s )2 +(s )2 √(s )2 +(s )2
(si )0
⎟
⎜ i 1 i 0 i 1 i 0 ⎟
⎜ . .. ⎟ , (12)
⎜ .. . ⎟
⎜ ⎟
⎝ (si )ni (si )0 ⎠
(si )2n +(si )20 (si )2n +(si )20
i i
ni
− ξj (si )j ≤ ξ̄ 2 s̄i 2 < ξ̄ 2 (si )0 .
j=1
Note that
2 √
ξ0 + ξ̄ 2 ≤ 2 ξ02 + ξ̄ 2 = 2.
⎛ √ ⎞
(si )ni
η (s i )0
− 2 η (s i )1
... η
⎜ s 2 s2 s2 ⎟
⎜ √ (xi )1 ⎟
⎜ (x )2 +(x )2 √(x )2 +(x )2
(xi )0
⎟
⎜ i 1 i 0 i 1 i 0 ⎟
∂si (ϕi , ζ) = ⎜ .. .. ⎟ ,
⎜ . ⎟
⎜ . ⎟
⎝ (xi )ni
(xi )0 ⎠
,
(xi )2n +(xi )20 (xi )2n +(xi )02
i i
Therefore,
⎛ ⎞ ⎛ ⎞ ⎛ ⎞
−η −1 ζ
⎜ 1 ⎟ ⎜ 1 ⎟ ⎜ 1 ⎟
⎜ ⎟ ⎜ ⎟ ⎜ ⎟
⎜ .. ⎟ ∂xi (ϕi , ζ) ⎜ .. ⎟=⎜ .. ⎟ ∂si (ϕi , ζ).
⎝ . ⎠ ⎝ . ⎠ ⎝ . ⎠
1 1 1
Below, we will give conditions under which each element in J(x, s, ζ) is nonsin-
gular. We break up the columns of M into three parts according to the partition
of the index set and divide the rows of M accordingly. We use M(E,F ) to repre-
sent the submatrix of M with its rows from index set E and its columns from
index set F . Thus M(IB,B) is the submatrix of M consisting of all columns cor-
responding to the boundary blocks and all rows corresponding to the interior
and boundary blocks. Similar notations apply to the identity matrix I. Since
∂xO (ϕO ) and ∂sI (ϕI ) are nonsingular, nonsingularity of J(x, s, ζ) is equivalent
to the following matrix being nonsingular:
⎛ ⎞
M(I,I) M(I,B)
⎝M(B,I) M(B,B) −IB ⎠ .
∂xB (ϕB , ζ) ∂sB (ϕB , ζ)
First, we add the result of R left multiplying the columns corresponding to (−IB )
to columns corresponding to M(·,B) . Note that due to (2a), for all i ∈ B, j =
1, . . . , ni :
A Continuation Method for the LSOCCP 299
Next, for all i ∈ B, we subtract the result of right multiplying (xx̄ii)0 to the
columns corresponding to (−IB̄ ) from the column corresponding to (Ii )0 . Here,
we use B̄ to represent the columns (rows) corresponding to x̄i , for all i ∈ B.
Without loss of generality, assume B = {1, 2, . . . , m}. Because (xi )0 (si )0
x = s =
√ 2 2
2
2 , η + ζ = 0, the nonsingularity of J(x, s, ζ) is equivalent to the nonsingularity
def
of the following matrix. Here, A = Diag (Rx1 , . . . , Rxm ).
⎡ ⎤
M(I,I) M(I,B)
⎣M(B,I) M(B,B) − R A⎦
AT
Remark 2. It is easy to verify that under the special case of second-order cone
program, the above assumptions are the same as the primal-dual nondegeneracy
and strict complementarity conditions of [9].
Remark 3. The above analysis is still applicable, if (3) is replaced by (2a) in (6),
and in (5) the Fischer-Burmeister function is replaced by any other nonlinear
complimentary function ψ(a, b) with gradient satisfying
dψ(a,b)
da = 0, dψ(a,b)
db = 0 (a = 0, b = 0)
dψ(a,b) dψ(a,b)
da = 0, db = 0 (a = 0, b = 0) .
Remark
4.√For a boundary blockxi , ∂xi(ϕi , ζ)and ∂si (ϕi , ζ) are singular, since
√ 2
(si )20 +(si )2j (xi )0 +(xi )2j
Diag 1, si ∂si (ϕi , ζ) and Diag 1, xi ∂si (ϕi , ζ) have
2 2
zero eigenvalues.
References
1. Alizadeh, F., Goldfarb, D.: Second-order cone programming. Math. Program. 95
(2003) 3–51
2. Adler, I., Alizadeh, F.: Primal-dual interior point algorithms for convex quadrati-
cally constrained and semidefinite optimization problems. Technical Report RRR
46-95, RUTCOR, Rutgers University (1995)
3. Fischer, A., Peng, J., Terlaky, T.: A new complementarity function for P cones.
Manuscript (2003)
4. Fischer, A.: A special Newton-type optimization method. Optimization 24 (1992)
269–284
5. Chen, B., Harker, P.T.: A non-interior-point continuation method for linear com-
plementarity problems. SIAM J. Matrix Anal. Appl. 14 (1993) 1168–1190
6. Kanzow, C.: Some noninterior continuation methods for linear complementarity
problems. SIAM J. Matrix Anal. Appl. 17 (1996) 851–868
300 Y. Xia and J. Peng
7. Burke, J.V., Xu, S.: The global linear convergence of a noninterior path-following
algorithm for linear complementarity problems. Math. Oper. Res. 23 (1998) 719–734
8. Clarke, F.H.: Optimization and nonsmooth analysis. Canadian Mathematical Soci-
ety Series of Monographs and Advanced Texts. John Wiley & Sons Inc., New York
(1983)
9. Alizadeh, F., Schmieta, S.H.: Optimization with semidefinite, quadratic and linear
constraints. Technical Report RRR 23-97, RUTCOR, Rutgers University (1997)
Fuzzy Multi-criteria Decision Making Approach
for Transport Projects Evaluation in Istanbul
1 Introduction
Urban congestion is a serious worldwide problem that can adversely affect sev-
eral objectives of transportation policy such as economic efficiency, environmen-
tal protection, accessibility, sustainability, economic regeneration, and equity
[10]. Istanbul, the biggest metropolitan city of Turkey and one of the largest in
Europe, has been encountering urban transportation problems for many years.
Especially, the Bosphorus and Fatih bridges that connect the Asian and Euro-
pean regions of Istanbul suffer seriously from traffic congestion due to the fact
that many people are obliged to make daily crossings from one side to the other
for several purposes such as education, work or leisure activities.
Numerous alternative transport projects for the Bosphorus crossing, which
includes the improvement of the Bosphorus and Fatih bridges and their connect-
ing roads, the creation of new roads (e.g. bridges for wheeled or railway vehicles,
tunnels for wheeled or railway vehicles), and the improvement of the current
public transport system (e.g. buses or ferry system), have been suggested in the
past decade [5, 13].
Transportation project selection is a complex decision problem since it usually
involves the consideration of multiple conflicting objectives among which some
may be qualitative or intangible that are very difficult if not impossible to express
This research has been financially supported by Galatasaray University Research
Fund.
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 301–311, 2005.
c Springer-Verlag Berlin Heidelberg 2005
302 E.E. Karsak and S.S. Ahiska
1 1 1
q q q
w̃j = (waj , wbj , wcj ) = ( wajp , wbjp , wcjp ), ∀j (1)
q p=1 q p=1 q p=1
1 1 1
q q q
w̃jk = (wajk , wbjk , wcjk ) = ( wajkp , wbjkp , wcjkp ), ∀j, k (2)
q p=1 q p=1 q p=1
1 1 1
q q q
ỹijk = ( yaijkp , ybijkp , ycijkp ), ∀i, j, k (3)
q p=1 q p=1 q p=1
where w̃j denotes the average importance weight of criterion j, w̃jk indicates the
average importance weight of sub-criterion k of criterion j, and ỹijk indicates
the average performance rating of alternative i with respect to sub-criterion k
of criterion j. Then, for each expert (Ep ) the deviations of the individual assess-
ments from their corresponding averages, i.e. the differences between w̃jp and
w̃j , the differences between w̃jkp and w̃jk , and the differences between ỹijkp and
ỹijk are computed, and sent back to the experts for re-evaluation.
1 1 1
Step 3. Each expert presents her revised assessments as w̃jp , w̃jkp , and ỹijkp .
The averages of these revised assessments are calculated in an analogous way
employing formulas (1), (2) and (3) leading to w̃j1 , w̃jk 1 1
, and ỹijk , respectively.
1 1 1
Then, the closeness of w̃j to w̃j , w̃jk to w̃jk , and ỹijk to ỹijk , respectively, is
calculated using a distance measure [3] as follows:
1 1 1 1
d(w̃j1 , w̃j ) = max waj − waj , wcj − wcj + wbj − wbj , ∀j (4)
2
1 1 1 1
1
d(w̃jk , w̃jk ) = max wajk − wajk , wcjk − wcjk + wbjk − wbjk , ∀j, k
2
(5)
1 1 1 1
1
d(ỹijk , ỹijk ) =
max yaijk − yaijk , ycijk − ycijk + ybijk − ybijk , ∀i, j, k
2
(6)
This process starting with Step 2 is repeated until two successive averages
for importance weights as well as performance ratings are reasonably close. It is
assumed that the distance less than or equal to 0.2 corresponds to two reasonably
close fuzzy numbers [4].
Step 4. If there is new important information available, the fuzzy estimates can
be re-examined employing the same process at a later time.
Fuzzy Multi-criteria Decision Making Approach 305
where ýijk denotes the normalized value of yijk , which is the crisp value as-
signed to alternative i with respect to the sub-criterion k of criterion j, m is the
number of alternatives, n is the number of criteria, CBj is the set of benefit-
related crisp sub-criteria of criterion j and CCj is the set of cost-related crisp
∗ −
sub-criteria of criterion j, yjk = maxi yijk and yjk = mini yijk . The normalized
values for crisp data can be represented as ỹijk = (ýaijk , ýbijk , ýcijk ) in triangular
fuzzy number format, where ýaijk = ýbijk = ýcijk = ýijk .
Step 3. Aggregate the performance ratings of alternatives at the sub-criteria level
to criteria level as follows:
% 1
k w̃jk ⊗ ỹijk
x̃ij = (xaij , xbij , xcij ) = % 1 , ∀i, j (8)
k w̃jk
where x̃ij represents the aggregate performance rating of alternative i with re-
1
spect to criterion j, w̃jk indicates the average importance weight assigned to
sub-criterion k of criterion j at the end of Phase 1, and ⊗ is the fuzzy multipli-
cation operator.
Step 4. Normalize the aggregate performance ratings at criteria level using a
linear normalization procedure, which results in the best value to be equal to 1
and the worst one to be equal to 0, as follows:
& '
xaij − x− − −
aj xbij − xaj xcij − xaj
r̃ij = (raij , rbij , rcij ) = , ∗ , ∗ , ∀i, j (9)
x∗cj − x−
aj xcj − x−
aj xcj − x−
aj
Step 6. Calculate the weighted distances from ideal solution and anti-ideal solu-
tion (Di∗ and Di− , respectively) for each alternative as follows:
1 1
Di∗ = max waj |raij − 1| , wcj
1
|rcij − 1| + wbj
1
|rbij − 1| , ∀i (10)
j
2
1 1
Di− = max waj |raij − 0| , wcj
1
|rcij − 0| + wbj
1
|rbij − 0| , ∀i (11)
j
2
Step 7. Calculate the proximity of the alternatives to the ideal solution, Pi∗ , by
considering the distances from ideal and anti-ideal solutions as
Step 8. Rank the alternatives according to Pi∗ values in descending order. Iden-
tify the alternative with the highest Pi∗ as the best alternative.
Goal (G): Selection of the best transport alternative for the Bosphorus water-
crossing in Istanbul
Criteria (Cj ) and their associated sub-criteria (SCjk ):
C1 : Economic criteria
SC11 : Construction cost
SC12 : Operating and maintenance cost
SC13 : Impact on the economic development of the region and the country
SC14 : Possibility of increasing employment through the creation of new
jobs
C2 : Environmental criteria
SC21 : Visual intrusion
Fuzzy Multi-criteria Decision Making Approach 307
1
The authors are indebted to Asli Gul Oncel for her assistance in gathering data.
308 E.E. Karsak and S.S. Ahiska
that they re-evaluate their responses. When the experts present their revised
assessments, the distances between the averages of the revised assessments and
the averages of the initial assessments are calculated using equations (4), (5)
and (6). Following Cheng and Lin [4], the successive averages are assumed to
be reasonably close when the distance between two fuzzy numbers is less than
or equal to 0.2. Since the maximum distance between the successive averages is
0.059, we can conclude that the consensus condition is achieved.
The values of quantitative sub-criteria, namely construction cost, operating
and maintenance cost, trip price and capacity created, and the fuzzy data, which
include the averages of the revised fuzzy assessments of experts regarding the
importance weights of criteria, the importance weights of sub-criteria and the
performance ratings of alternatives with respect to qualitative sub-criteria are
used as inputs to the hierarchical distance-based fuzzy MCDM algorithm to
identify the best transport alternative for the Bosphorus crossing in Istanbul.
The complete data set, which is not provided due to space limitations, can be
obtained from the authors upon request.
The crisp data is normalized using equation (7). Then, sub-criteria values are
aggregated to criteria level using equation (8), leading to the aggregate perfor-
mance ratings of alternatives with respect to criteria. The normalized values of
these aggregate performance ratings are computed using equation (9) and are
represented in Table 1, where 0 indicates the worst value and 1 indicates the
best value. From Table 1, we observe that A1 has the highest performance with
respect to economic criteria; A2 has the highest performance with respect to
environmental criteria, social and cultural criteria, and transportation system
criteria; and A3 has the highest performance with respect to criteria related to
transportation policy.
highest Pi∗ value appears to be the best transport alternative, while A3 and A1
rank second and third, respectively.
Ai Pi∗ Ranking
A1 0.426 3
A2 0.546 1
A3 0.515 2
4 Concluding Remarks
The current transportation system of Istanbul that has remained insufficient
faced with the high demand for daily crossings between the Asian and European
sides, has led the local authorities to consider several transportation infrastruc-
ture projects such as constructing a new bridge or an under-water tunnel, which
require large amounts of capital investments and thus careful and comprehensive
examination before making a decision. This paper proposes a decision framework,
310 E.E. Karsak and S.S. Ahiska
which integrates the use of the fuzzy Delphi method and a hierarchical distance-
based fuzzy MCDM algorithm, for determining the best transport alternative in
Istanbul.
Besides having the capability of considering numerous factors that are struc-
tured in a multi-level hierarchy, the proposed decision framework enables the
decision-makers to use linguistic terms when making their assessments regard-
ing the importance of factors as well as the performance of transport alterna-
tives with respect to qualitative factors, which reduces the cognitive burden of
the evaluation process. In conclusion, due to its sound logic, effectiveness of
quantifying the imprecision inherent in decision-maker’s assessments and easily
programmable structure, the decision framework presented in this paper appears
to be a robust decision tool for comprehensive analysis of multi-level hierarchical
transportation problems such as the Bosphorus crossing in Istanbul.
References
1. Avineri, E., Prashker, J., Ceder, A.: Transportation Projects Selection Process
Using Fuzzy Sets Theory. Fuzzy Sets and Systems 116 (2000) 35-47
2. Bielli, M.: A DSS Approach to Urban Traffic Management. European Journal of
Operational Research 61 (1992) 106-113
3. Bojadziev, G., Bojadziev, M.: Fuzzy Sets, Fuzzy Logic, Applications, Advances
in Fuzzy Systems-Applications and Theory. Volume 5. World Scientific, Singapore
(1995)
4. Cheng, C.H., Lin, Y.: Evaluating the Best Main Battle Tank Using Fuzzy Deci-
sion Theory with Linguistic Criteria Evaluation. European Journal of Operational
Research 142 (2002) 174-186
5. Gercek, H., Yayla, N.: Crossing the Bosphorus Strait: A Railway Tunnel or Another
Highway Bridge. Fourth Symposium on Strait Crossing, Norway (2001)
6. Hwang, C.-L., Yoon, K.: Multiple Attribute Decision Making: Methods and Appli-
cations. Springer, Heidelberg (1981)
7. Karsak, E.E.: Distance-Based Fuzzy MCDM Approach for Evaluating FMS Alter-
natives. International Journal of Production Research 40 (2002) 3167-3181
8. Karsak, E.E.: Fuzzy Multiple Objective Decision Making Approach to Prioritize
Design Requirements in Quality Function Deployment. International Journal of
Production Research 42 (2004) 3957-3974
9. Liang, G.S., Wang M.J.J.: A Fuzzy Multi-Criteria Decision-Making Approach for
Robot Selection. Robotics & Computer Integrated Manufacturing 10 (1993) 267-
274
10. May, A.D., Nash, C.A.: Urban Congestion: A European Perspective on Theory and
Practice. Annual Review of Energy & the Environment 21 (1996) 239-260
11. Sayers, T.M., Jessop, A.T., Hills, P.J.: Multi-Criteria Evaluation of Transport
Options–Flexible, Transparent and User-friendly?. Transport Policy 10 (2003) 95-
105
12. Teng, J.Y., Tzeng, G.H.: Transportation Investment Project Selection Using Fuzzy
Multiobjective Programming. Fuzzy Sets and Systems 96 (1998) 259-280
13. Ulengin, F., Topcu, Y.I., Sahin, S.O.: An Integrated Decision Aid System for
Bosphorus Water-Crossing Problem. European Journal of Operational Research
134 (2001) 179-192
Fuzzy Multi-criteria Decision Making Approach 311
14. Vreeker, R., Nijkamp, P., Welle, C.T.: A Multicriteria Decision Support Method-
ology for Evaluating Airport Expansion Plans. Transportation Research Part D:
Transport and Environment 7 (2002) 27-47
15. Yedla, S., Shrestha, R.M.: Multi-Criteria Approach for the Selection of Alternative
Options for Environmentally Sustainable Transport System in Delhi. Transporta-
tion Research Part A: Policy and Practice 37 (2003) 717-729
16. Zadeh, L.A.: Fuzzy Sets. Information and Control 8 (1965) 338-353
17. Zeleny, M.: Multiple Criteria Decision Making. McGraw-Hill, New York (1982)
An Improved Group Setup Strategy for PCB
Assembly
1 Introduction
This paper considers the same group setup problem that is proposed by Leon
and Peters (1998). We consider a single surface mount technology(SMT) machine
that consists of three components: a table that holds the PCB, a feeder carriage
that holds the components, and a head that picks up components from the
feeders and places them on the PCB. The placement process begins from the
movement of placement head. The head starts from a given home position, moves
between feeders (on the machine) and placement location (on the PCB) until
all components have been mounted. The head returns to the home position
once all placements required for a board have been completed. The problem
of determining a group setup strategy can be characterized by the grouping of
similar boards. Feeders are loaded with the component types required by all of
the members in a family. It is assumed that any board from a family can be
processed on the machine without incurring changeover time. The conceptual
formulation of the problem is as follows:
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 312–321, 2005.
c Springer-Verlag Berlin Heidelberg 2005
An Improved Group Setup Strategy for PCB Assembly 313
Notation:
f : family index f = 1, . . . K
Nf : number of boards in family f
%K
N = f =1 Nf : total number of boards
i : board index i = 1 . . . N
F : number of feeder slots on the machine
cf : number of different component types required by boards in family f
σ : time to remove or install a feeder
nf : number of feeder changes required from family f -1 to f
v : placement head velocity (mm/sec)
bi : batch size of board i
di : length of tour followed by the head to assemble board i
%K %Nf bi
Minimize: Makespan= f =1 (σnf + i=1 v di )
Subject to: Feeder capacity constraints
Component placement constraints
Component-feeder constraints
boards. The traditional group setup may be effective in cases where the feeder
change time is high. However, it is conjectured when the feeder change time is
relatively small and the placement time is large with respect to the makespan,
the proposed improved group setup strategy may perform better than tradi-
tional group setup. Also this paper presents a comprehensive comparison among
existing different setup strategies and board’s similarity coefficients.
2 Literature Survey
2.1 Existing Setup Strategies
The traditional group setup procedure(Askin et al.,1994, Leon and Peters, 1996,
1998) is summarized in the following steps.
Procedure group setup strategy.
Phase 1. Clustering (Form K families of boards with similar boards. Family sizes
can not exceed the maximum number of feeder slots.)
One solution to the above problem is to transform all the locations on the
board with more locations into the locations on the board with less number of
locations. As a result, a dissimilarity in number of locations yields a larger total
metamorphic distance (i.e., more dissimilarity). Let |M | ≥ |N | be the number
of positions on each board, the total M M Dij can be computed by applying the
LAP method |M |
|N | times, as follows:
M ; Set of locations for board i.
N ; Set of locations for board j.
Mk ; Set of locations remaining in M at k th transformation.
M M Dijk ; M M Dij after k th transformation.
{i}k ; Set of locations in board i that are transformed to board j at k th
transformation
Board i
’ ’ ’ ’
Board j ’ ’ ’ ’
” ”
Board k ” ”
The nominator of the coefficient is the total sum of MMD for all types of compo-
nents and the denominator is the normalizing factor. In the proposed improved
group setup, we use the similarity coefficient in equation (3) and the clustering
objective as the maximization of the average similarity within groups per unit
feeder change . Therefore, the clustering objective is maximized when all boards
in families are geometrically similar (i.e., placement time is minimized) and the
number of feeder change is minimized (i.e., setup time is minimized).
4 Experiments
We consider a generic machine which has 70 feeder slots with 20mm between the
slots. The board dimensions are maximum 320mm×245mm and the coordinates
for each board were randomly generated from uniform distributions as follows:
X=635+U(0,245), Y=254+U(0,320). The home position coordinate is (0,0) and
the first feeder slot location is (457,0). The number of component types required
per board were generated from U(6,20) from 70 different component types. We
considered the time to install or remove feeder in cases of 30(sec) and 60(sec).
The head velocity was tested for 100(mm/sec) and 300(mm/sec).
The batch size of boards were generated from U[50,100]. Also the total num-
ber of boards were generated from U[5,15]. The placement locations and the
corresponding component types were generated from a seed board. A seed board
is created with location (Lsx (i), Lsy (i))and corresponding component type Cs (i)
for i th placement location. We fixed the number of placement location to 50
for the seed board. Then based on the component similarity (C ) and geometric
similarity (G), another board (i.e., a child board) is created using the following
formula;
forms families of boards in order to reduce the setup time as long as the feeder
capacity constraints are not violated. PLM behaves similar to GS. However, PS
and IGS do not reduce the setup time much even if the feeder capacity does not
restrict the solution space. This is because PS and IGS achieve an improvement
in the reduction of the placement time instead of setup time as shown in Fig-
ure 2-b). The figure indicates that the placement time of GS increases as the
feeder capacity increases since GS does not consider the geometry of boards. As
shown in Figure 3, in case of maximum feeder capacity, IGS reduces about 8%
of makespan compared to GS and deviates less than 3% from the partial setup
strategy. PLM performs better than GS but the reduction of makespan is not
significant (2.4% reduction from GS and 8.5% deviation from PS).
Table 2 summarizes the average setup time, placement time and makespan
of different setup strategies with the feeder capacity 70 . The table shows that
PS outperforms all other setup strategies. IGS outperforms GS and PLM in
cases when the placement time becomes more important than the setup time
(problem type 1, 3, 5, 9, 11, 13). The maximum percent deviation from PS of
IGS is 5.6% while GS is 12.66% and PLM is 9.35%. In cases where the setup
time is important (problem type 2, 4, 6, 8, 10, 12, 14, 16), the maximum percent
deviation from PS of IGS is 1.21% while GS is 1.04% and PLM is 1.43%. This
result implies that IGS balances the tradeoff between the setup time and the
placement time and finds the solution that minimizes the makespan.
5 Conclusions
This paper has presented an improved group setup strategy based on both com-
ponent similarity and geometric similarity. It has demonstrated how the im-
proved group setup strategy adapts to a variety of production conditions. The
improved group setup strategy dominated the traditional group setup or PLM
based group set up strategy. Overall, improved group setup strategy deviated
from partial setup, maximum 5.6% and average 2.32%.
Acknowledgments
We thank Dr. R. Quintana for providing PLM code for the experimental com-
parison of the proposed methodology.
References
1. Askin, R. G., Dror, M., and Vakharia, A. J.: Printed circuit board scheduling
and component loading in a multimachine, openshop manufacutring cell. Naval
Research Logistics 415 (1994) 587–608
2. Ball, M. O. and Magazine, M. J.: Sequencing of insertions in printed circuit board
assemblies. Opearations Research 362 (1988) 192–201
3. Crama, Y., Kolen, A. W. J., Oerlemans, A. G., and Spieksma, F. C. R.: Throughput
rate optimization in the automated assembly of printed circuit boards. Annals of
Operations Research 26 (1990) 455–480
4. Drenzner, Z and Nof, S. Y.: On optimizing bin picking and insertion plans for
assembly robots. IIE Transactions 163 (1984) 262–270
5. Jonker, R. and Volgenant, A.: A shortest augmenting path algorithm for dense and
sparse linear assignment problems. Computing 59 (1987) 231–340
6. Leon, V. J. and Peters B. A.: Re-planning and analysis of partial setup strategies
in printed circuit board assembly systems. International Journal of Flexible Man-
ufacturing Systems Special Issue in Electronics Manufacturing 84 1996 389–412
7. Leon, V. J. and Peters B. A.: A comparison of setup strategies for printed circuit
board assembly. Computers in Industrial Engineering 341 (1998) 219–234
8. Lofgren, C. B. and McGinnis, L. F.: Dynamic scheduling for flexible printed circuit
card assembly. Proceedings of the IEEE Systems, Man, and Cybernetics Confer-
ence, Atlanta, GA, (1986)
9. Quintana, R., Leon, V. J.: An improved group setup management strategy for pick
and place SMD assembly. Working paper (1997)
A Mixed Integer Programming Model for
Modifying a Block Layout to Facilitate Smooth
Material Flows
1 Introduction
The facility layout problem has been traditionally solved in two stages because
the complete problem is so complex and it cannot be solved in a reasonable
amount of time for realistic instances. In the first step, a conceptual block is
generated while ignoring the locations of the departmental input and output
(I/O) points and the material flow paths. In the second step, a detailed layout
is constructed by determining the locations of the I/O points of departments
and constructing the material flow paths. When the block layout in the first
stage is generated automatically by layout software, the material flow paths
determined in the second phase are non-smooth, i.e. they have an excessive
number of turns. Such flow paths cause many blind corners, excessive turning
by the material handling carriers, increased construction costs of the facility,
and possible violation of local fire and safety ordinances. We will develop a
mathematical model to the block layout so that in the second phase a smooth
material flow path can be constructed while at the same time preserving the
basic structure of the block layout.
Few research results have been published on the problem of adjusting the
block layout before generating the detailed layout. Usually layout designers have
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 322–332, 2005.
c Springer-Verlag Berlin Heidelberg 2005
A Mixed Integer Programming Model 323
relied on their experience and skill rather than on automated methods to modify
the block layout. Alagoz et al. [1] present a nonlinear programming model to
adjust the areas and shapes of departments to avoid complicated flow paths
with turns. However, their method can only be applied to layouts with a layer (or
column) structure and the special flow path network. Lee and Kim [6] considered
the problem of modifying a block layout with irregular shaped departments
into one with rectangularly-shaped departments without significant changes in
the relative positions of the departments. However, they did not consider the
smoothness of material flow paths. In this paper, we will present a formulation
for the problem of modifying a given block layout to allow construction of smooth
flow paths.
2 Partial Edges
In this paper, it is assumed that all the departments in the initial block layout
have a rectangular shape and that no empty space exists between any depart-
ments. The initial block layout is converted into an undirected graph. The ver-
tices in the graph correspond to the points at which corner points of different
departments meet and the edges correspond to the boundary segments of the
departments between those points. In this graph, an edge is called a partial edge
if its two vertices do not correspond to corner points of the same department.
Fig. 1 shows a block layout and a corresponding graph for the block layout. In
this graph, there exist 11 departments, 20 vertices, and 30 edges, including 7
partial edges. The edge between vertices 4 and 5 is a partial edge since vertices
4 and 5 correspond to corner points of different departments.
1 2
1 2 3
1 2 3 3 4 5 6 7 8
4 5 6
5 6
4 9 10 11 12 13 14
7 7
8 15 16 8 11
11
9 9 17 18
10 10
19 20
: partial edge
Partial edges are the main obstacle in constructing smooth flow paths since
they exist when departments are not aligned both horizontally and vertically.
Any material-handling carrier traveling in an aisle perpendicular to the partial
edge must make a 90-degree turn to continue its path. However, many partial
edges can be removed by modifying the block layout, which includes changing the
324 J.-G. Kim and M. Goetschalckx
departmental areas but while preserving the relative positions of the departments
in the block layout. If a partial edge exists between vertices u and v, we can
remove it by modifying the block layout in such a way that the corner points of
the departments which correspond to vertices u and v meet at the same point.
In Fig. 1, the partial edge between vertices 4 and 5 will disappear if the block
layout is modified by either moving the boundary between departments 1 and 2
leftward or the boundary between departments 4 and 5 rightward or both until
both boundaries are aligned.
Partial edges have the following geometric characteristics: 1) a partial edge
is adjacent to four different departments and 2) the two end vertices of a par-
tial edge correspond to bottom-left, bottom-right, top-left and top-right corner
points of the departments, respectively. In Fig. 1, the partial edge between ver-
tices 4 and 5 is adjacent with departments 1, 2, 4 and 5, and vertex 4 corresponds
to top-right and top-left corner points of departments 4 and 5, respectively, and
vertex 5 corresponds to bottom-right and bottom-left corner points of depart-
ments 1 and 2, respectively. Let (u, v) be a partial edge between vertices u and
v, where u < v, and let dbl br tl tr
(u,v) , d(u,v) , d(u,v) , and d(u,v) be the (indexes of) de-
partments which are adjacent with (u, v) and each of which has vertex u or v at
its bottom-left, bottom-right, top-left, or top-right corner point, respectively. A
partial edge (u, v) disappears if the bottom-right corner point of dbr (u,v) (or the
bottom-left corner point of d(u,v) ) and the top-left corner point of dtl
bl
(u,v) (or the
top-right corner point of dtr(u,v) ) meet at the same point in the modified block
layout.
3 Mathematical Formulation
In this section we will present a mathematical formulation for modifying a given
block layout while preserving the relative positions of departments with the
objective of minimizing the number of partial edges in the modified block layout.
The constraints of the model are as follows.
- The area of a department in the modified block layout should be no less than
100 · α% of the area of that department in the initial block layout. In the
computational study in this paper the value of α is set to 0.90 and 0.95.
- Departments should not overlap.
- The aspect or shape ratio of each department should be within a given range.
- The relative positions of the departments should remain unchanged from
those in the initial layout.
- All departments should be placed within the given building restrictions and
this rectangular building area is called the floor.
- There should be no empty space in the floor. This implies that the area of
some departments may be increased.
We say that departments i and j overlap with each other in the x-dimension (y-
dimension) if their corresponding line segments overlap when they are projected
A Mixed Integer Programming Model 325
on x-axis (y-axis). The line segments overlap if they have a common segment of
non-zero length. The relative position of two departments in the layout is said
to remain the same if at least one of the non-overlap conditions remains valid
in the modified layout. For example, if in the initial layout department A and
B non-overlap only in the x-dimension, their relative position is said to remain
the same if they also non-overlap in x-dimension in the modified layout. On the
other hand, if in the initial layout department A and B non-overlap in both
dimensions, it is sufficient for them to non-overlap in either the x or y-dimension
in order for their relative position to remain unchanged.
The following notation will be used in the mathematical model.
Parameters
N the number of departments
W the width of the floor
L the length of the floor
a1 the area of department i in the given block layout
τ i , τ̄i the lower and upper limits of the aspect ratio of department i
P the set of partial edges in the given block layout
Li the set of departments that are adjacent with department i and
placed on the left side of department i in the given block layout.
(Two departments are considered to be adjacent if they have a
common boundary segment or a common boundary corner point.)
Ri the set of departments that are adjacent with department i and
placed on the right side of department i in the given block layout
Bi the set of departments that are adjacent with department i and
placed below department i in the given block layout
Ai the set of departments that are adjacent with department i and
placed above department i in the given block layout
M =max(W, L)
Decision variables
xli , xri x-coordinates of the left and right boundaries of department i in
the modified block layout
yib , yit y-coordinates of the bottom and top boundaries of department i
in the modified block layout
eu,v the length of a partial edge (u, v) in the modified block layout
zu,v = 1 if a partial edge (u, v) in the given block layout still appear
in the modified block layout, 0 otherwise
Now, the problem is formulated as a nonlinear mixed integer program.
[P1] Minimize zu,v
(u,v)∈P
(k) (k)
yi (xri − xli ) + xi (yit − yib ) ≥ 2α · ai ∀i and k = 1,...,20 (13)
[P2] can be solved using standard mixed integer programming packages. The
only binary variables correspond to existing partial edges. In our numerical ex-
periment, the number of partial edges grew approximately linear with the num-
ber of departments when the block layouts are randomly generated. Therefore,
[P2] can be solved to optimality in a reasonable time even if the block layout
has a large number of departments.
Proposition 1. In the modified block layout, the relative positions of the de-
partments remain identical to those in the initial block layout.
Proof. To prove this proposition, we consider the three possible cases of the
positional relationship between two departments in the given block layout.
Case 3) Two departments (departments i and j) are neither adjacent nor ver-
tically or horizontally coupled.
Without loss of generality, we assume that department i is below or to the
left of department j in the given block layout. Then geometrically there al-
v
ways exists a sequence of departments < i, v1 , v2 , ..., vp , j > denoted by Si,j
h
or a sequence of departments < i, h1 , h2 , ..., hq , j > denoted by Si,j , where
p ≥ 1 and q ≥ 1. In Si,j , the department in the k position is below that
v th
in the k + 1th position and they are adjacent or vertically coupled, where
1 ≤ k ≤ p + 1. In Si,jh
, the department in the k th position is to the left of
that in the k + 1th position and they are adjacent or horizontally coupled,
where 1 ≤ k ≤ q + 1. Note that Si,j v
and Si,jh
may not be unique and may
v
have several alternatives. For an example, S7,11 =< 8, 4, 2 > or < 8, 5, 2 >
h v
or < 8, 6, 2 > and S7,11 =< 7, 8, 11 > or < 7, 10, 11 > in Fig. 1. If Si,j
th v
exists, the department in the k position in Si,j is placed below that in the
k + 1th position in the modified block layout by cases 1 and 2. Similarly, if
h
Si,j exists, the department in the k th position in Si,j h
is placed to the left
th
of that in the k + 1 position in the modified block layout. Therefore, the
relative position between departments i and j is preserved in the modified
block layout.
5 Computational Experiments
To test the suggested method, initial block layouts for the layout problems are
required. We use the simulated annealing algorithm of Kim and Kim [4] to gener-
ate block layouts in which all departments have rectangular shapes and there is
no empty space. Four block layouts were generated for the 10-department prob-
lem of Van Camp et al. [7], the 20-department problem of Armour and Buffa [2]
and randomly generated 30- and 40-department problems, respectively. In the
problems, the lower and upper limits of the aspect ratios of departments are set
to 0.4 and 2.5, respectively, except for the problem in Van Camp et al. [7] for
which the aspect ratios are specified. Note that Van Camp et al. [7] and Armour
and Buffa [2] used upper triangular flow matrixes to represent flows between the
departments in their test problems. Their flow matrixes were transformed by
copying the flow value above the main diagonal to the corresponding cell below
the main diagonal. The resulting matrix is symmetric and the total transporta-
tion distance (TTD) is doubled from the original problem. In the two randomly
generated problems, the areas of the departments were randomly generated from
the discrete uniform distribution with range [1, 10] and the width and length of
the floor area were set to the square root of the sum of the department areas,
which implies that the floor had a square shape. The inter-department flows were
randomly generated while satisfying a flow intensity of 20% and the non-zero
flow elements were sampled from a discrete uniform distribution with range [1,
100].
A Mixed Integer Programming Model 329
The four block layouts were modified by solving the MIP model. The tests
were executed on a personal computer with a 700MHz Pentium-III processor
and CPLEX 6.0 was used to solve the MIP in the method. Table 1 shows the
results of modifying the block layouts using the method described above. In
Table 1, the percentage area gap (PAG) represents the relative amount of the
decreased area in the modified block layout compared to the prescribed area in
the original layout. PAG of department i is calculated as max(ai − a
i )/ai × 100,
where a
i is area of department i in the modified block layout. The amount of the
increased area is not considered in calculating PAG since it is not necessary in
checking the accuracy of the linearly approximated area requirement constraint,
constraint (13) in [P2]. Note that departments with increased areas satisfy both
the surrogate constraint and the original one but ones with decreased areas do
not satisfy the original constraint while they satisfy the surrogate constraint.
As can be seen in the Table 1, the modified block layouts have a much smaller
number of partial edges than the original block layouts with no new partial
edge. In addition, the total number of edges also decreased by modifying the
block layout as described above. Since the edges form the candidate set for the
construction of the flow paths, a smaller number of edges simplifies that phase
of the design problem. Based on our numerical experiment, which compares
allowable shrinkage factors of 0.10 and 0.05 percent, the decrease in the number
of partial edges is smaller when the allowable shrinkage is smaller. This is because
that the closer the value of α is to 1, the more restricted the feasible domain is and
the fewer partial edges can be eliminated. Note that if α = 1.0, the given block
layout cannot be modified at all. The maximum PAG is very close to 100(1 − α)
for all the modified block layouts in our experiment; on the average, there was
only 1% difference between two figures. This means that the non-linear area
requirement constraint, constraint (3) is almost satisfied although it is replaced
with the linear surrogate constraints by the polyhedral outer approximation
method. The CPU times were very small (less than one second on the average)
except to those for the 40-random block layout although they are sufficiently
short also considering that the layout problem is a design problem which needs
330 J.-G. Kim and M. Goetschalckx
Table 2. Effects of the Block layout Modification on the Flow Paths and TTD
not to be solved frequently. This means that the suggested MIP model can be
solved easily within a short time even for the large-sized block layouts.
We determined the locations of I/O points of the departments and con-
structed flow paths on the modified block layouts to test the impact of the block
layout modification on the total transportation distance (TTD). The branch and
bound algorithm of Kim and Kim [5] is used to determine the optimal locations
of I/O points with the objective of minimizing the TTD. Here, it is assumed
that materials are transported along the shortest path between the I/O points.
Once the locations of I/O points are determined, for each pair of I/O points
which has a non-zero material flow between them, a flow path is constructed
along the shortest path located on the boundaries of the departments between
them. If there are more than one alternative shortest paths between the two
I/O points, the shortest path with the smallest number of turns is selected for
the flow path construction. Note that the cost of constructing flow paths is not
considered here.
Table 2 shows the total number of turns in the flow paths, the total length of
the flow paths, and the TTD in the given and modified block layouts when the
flow paths are constructed with the algorithm described above. The total number
of turns in the flow paths is the sum of the number of turns in all flow paths
between I/O points with non-zero material flows. By modifying the block layouts,
the total number of turns decreased more than about 50%, which means the flow
paths became much smoother. There is not much difference between the total
length of the flow paths and TTD when the initial and modified block layouts
are compared although they increased about 1.2% and 1.7% on the average,
respectively. However, the total material transportation time may decrease since
average vehicle speed increases by eliminating turns since vehicles decreases their
speed to make a turn in intersections or corners. Fig. 2 shows the locations of
I/O points and the flow paths in the initial and modified block layouts for the
A Mixed Integer Programming Model 331
flow path
input/output point
Fig. 2. I/O points and Flow Paths on the Initial and Modified Block Layouts for the
Armour and Buffa Problem with α = 0.90
20-department problem by Armour and Buffa with α = 0.90. Note that in Fig. 2,
the input and output points of each department are located at the same location
since the flow matrix is symmetric in the 20-department problem by Armour
and Buffa.
6 Conclusion
In this paper, we considered the problem of modifying an initial block layout
into a block layout which will yield a flow path with fewer turns. It was shown
that turns correspond to partial edges in a graph representation of the layout.
An MIP model was developed that retained the minimum number of partial
edges. The total number of partial edges was reduced by solving this model. The
effectiveness of the MIP model was tested on several industrial-sized problems.
The computational experiments showed that the suggested model could modify
the block layouts into ones with more than 50% less flow-path turns within a
few minute for well-known and large-sized random test problems.
References
1. Alagoz, O., Norman, B.A., Smith, A.E.: Designing Aisle Networks to Facilitate
Material Flow. Proc. the 2002 Material Handling Research Colloquium (MHRC),
Portland, Maine (2002)
2. Armour, G.C., Buffa, E.S: A Heuristic Algorithm and Simulation Approach to
Relative Location of Facilities. Management Science, Vol. 9 (1963) 294-309
3. Kim, J-G., Goetschalckx, M.: An Integrated Approach for the Concurrent De-
termination of the Block Layout and I/O Point Location Based on the Contour
Distance. International Journal of Production Research, to appear (2004)
332 J.-G. Kim and M. Goetschalckx
4. Kim, J-G., Kim, Y-D.: A Space Partitioning Method for Facility Layout Problems
with Shape Constraints. IIE Transactions, Vol. 30 (1998) 947-957
5. Kim, J-G. Kim, Y-D.: A Branch and Bound Algorithm for Locating I/O Points of
Departments on the Block Layout. Journal of the Operational Research Society,
Vol. 50 (1999) 517-525
6. Lee, G-C., Kim, Y-D.: Algorithms for Adjusting Shapes of Departments in Block
Layouts on the Grid-Based Plane, Omega, The International Journal of Manage-
ment Science, Vol. 28 (2000) 111-122
7. Van Camp, D.J., Carter, M.W., Vannelli, A.: A Nonlinear Optimization Approach
for Solving Facility Layout Problems, European Journal of Operational Research,
Vol. 57 (1991) 174-189
An Economic Capacity Planning Model
Considering Inventory and Capital Time Value
1 Introduction
The investment on facilities for manufacturing many products requires a high
amount of capital. Industries such as semiconductor, electronic products and
TFT-LCD need to decide its make-to-stock and make-to-order policies, so that
the capacity of expensive resources can be fully utilized. Decisions regarding
resource planning/acquisition and allocation coupled together are very difficult
and risky to company profitability. Moreover, the problem is very complex be-
cause many constraints such as finite budget, lumpy demands, uncertain product
price, multiple production horizon, different products mix, time value of capi-
tal, technology innovation of resources, usage of multiple-function resources, and
constrained capacity of resources need to be considered. In addition to revenue
gained from products manufactured and resource assets, a decision maker needs
to consider costs regarding inventory and resource acquisition costs such as pro-
curement, renting, transfer and phase-out.
Therefore, we focuses on the following issues:
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 333–341, 2005.
c Springer-Verlag Berlin Heidelberg 2005
334 S.M. Wang et al.
2 Literature Review
Mixed integer programming and linear programming are the exact meth-
ods used for IC chip testing capacity planning. Leachman and Carmon
(1992) addressed the production planning problem with alternative equipment.
Rajagopalan (1994) presented a mix integer linear programming model apply-
ing to a situation in which the market demand for products and the number of
available technologies could not decrease with time increases. Bashyam (1996)
discussed the capacity expansion under demand uncertainty. Hung and Wang
(1997) provided a linear programming model to solve material planning and re-
source allocation problems. Swaminathan (2000) addressed the demand uncer-
tainty and focused on a make-to-order situation in aggregate capacity planning
and equipment procurement.
Only a few studies have offered strategic concepts to support a resource re-
placement policy (Hsu 1998). Rajagopalan (1999) proposed a model useful in
making timing decisions about adopting or replacing new equipment or pro-
cesses. Li and Tirupati (1995) addressed the technology choice under stochastic
demands for dynamic capacity allocation of two products.
Soft computing methods have emerged rapidly to tackle the resource allo-
cation and expansion problem, which solved by balancing between solution ef-
ficiency and quality. For instance, Bard et al. (1999) considered the capacity
planning of semiconductor manufacturing facilities using queuing and simulated
annealing models. Wang and Hou (2003) solved the problem of capacity expan-
sion and allocation in the semiconductor testing industry, considering multiple
resources and limited budget.
From our literature survey, we can see that resource planning and allocation
are highly correlated, but most academic studies have solved these problems sep-
arately. Some significant factors that affect the resource planning and allocation
decisions in high-tech industries are the stocking policy used, the consideration of
time value and the influence of deteriorating values of items. Decisions regarding
resource acquisition and phase-out alternatives have not been thoughtfully con-
sidered. A more generalized mathematical model is required to describe precisely
the problem facing the industries considering the follow factors.
An Economic Capacity Planning Model 335
3 Problem Formulation
The inherent characteristics of the problem include finite budget, lumpy de-
mands, declined product price, multiple production horizon, products mix, time
value of capital, technology innovation level of resources, operational ability of
resources to per-form multiple functions, and capacity constraints of resources.
In addition to the handling and acquisition of resources (such as procurement,
renting, transfer and phase-out), a decision maker also needs to consider the
balance between inventory and back-order, as well as an efficient task allocation.
A non-linear mixed integer programming model is developed to solve this
problem. Further considerations about the model are explained as follows.
1. The profit gained (through the interest of remaining capital, the revenue of
products manufactured, and from phasing out resources) in a preceding pro-
duction period is reusable for increasing resources in its succeeding periods.
2. The proposed model can handle both make-to-order and make-to-stock prod-
ucts. Note that make-to-order decisions can also be degenerated by simply
setting a high penalty cost for back-orders.
3. The asset and salvage of resources can be estimated. Besides, the technology
level of a resource is reflected by its processing speed and salvage value.
4. The target utilization and throughput rate of resources are known.
5. Resources have the capabilities to process products of several types.
6. Inventory related cost is counted at the end of each period.
The objective to maximize the profit is formulated below:
1 V end
M aximize [ (ftend ,m Ntend ,m )] + t (1)
t∈T (1 + It )m∈M t∈T (1 + It )
The first term of the objective function is the asset/salvage value of resources
in its present value and the second one is for the remaining currency. It is
the interest rate in period t . ft,m is the unit salvage of phasing-out the
resource type m in period t . Nt,m is the quantity of resource type m in period t,
Nt,m ∈ Z + . Vt is the balance of asset and capital in the end of period t , Vt ∈ R+ .
Inventory Cost Equations: Inventory cost occurs if the net inventory quantity
of product type d is positive in period t . Otherwise, a back-order cost occurs.
Yt,d is the inventory and back-order cost of product type d in period t , Yt,d ∈ R;
ht,d the unit holding cost of product type d in period t ; lt,d the unit back-order
cost of product type d in period t . ∀t ∈ T, ∀d ∈ D
h (K
t−1,d )
t,d
(1+It )t , if Kt−1,d ≥ 0
Yt,d = lt,d |Kt−1,d | (3)
(1+It )t , otherwise
Net Asset and Capital Equations: When the number of resource type m in
period t is greater than that in period t-1 , then the asset change Gt,m is positive,
otherwise it is negative. Let st,m be the unit procurement cost of resource type
m in period t . ∀t ∈ T, ∀m ∈ M
s (N −N
t−1,m )
t,m t,m
(1+It )t , if Nt,m − Nt−1,m ≥ 0
Gt,m = ft,m (Nt,m −Nt−1,m ) (5)
(1+It )t , otherwise
Thus, the net capital and asset in period t decrease by purchasing, renting or/and
transferring resources, and inventory and back-order costs; and increase due to
selling products. ∀t ∈ T
Vt = Vt−1 (1+It−1 )− bt,m,r Qt,m,r − Gt,m + pt,d ot,m,d − Yt,d
r∈P,m∈M m∈M m∈M,d∈Dm d∈D
(6)
where bt,m,r is the unit renting/transfer cost of resource type m in period
t . r ∈ R , which is a set of resource acquisition approaches(by renting and
transferring); pt,d the unit profit of product type d .
Note that constraints (4) and (5) the quantity of the resource in each period
be an integer; however, the workload of the resource on the right hand side of
constraint (4) can be a real number. % Besides, constraint (2) is replaced by the
% K0,d + ot,d %
Kt,d = m∈M am,d Xt,m,d − t∈T
tend
and Kt,d = m∈M am,d Xt,m,d − ot,d
to realize the heuristics for leveling production and chasing production in each
period, respectively.
The complexity (in terms of the size of variables and the number of con-
straints) increases exponentially upon increasing the resources type, the product
An Economic Capacity Planning Model 337
type, the periods of production horizon, the amount of the capital and initial
budget and the interest rate. So, we design a genetic algorithm to solve the
problem effectively.
5 An Illustration
An example modified from industry is to illustrate the proposed model and
algorithm. The problem contains the data: (1) three types of resources, (2) 12
periods of production horizon are considered, (3) three types of products (items
1,2,and 3), (4) a 0.02 interest rate and an 0.80 target resource utilization, and (5)
1,800 working-hours in each period. Product unit profits and resource salvage
decrease among time to reflect the change in technology level.
210,000,000
190,000,000
Fitness ($)
170,000,000 CPGA
Level-GA
150,000,000
Chase-GA
130,000,000
0 2,000 4,000 6,000 8,000 10,000 12,000
CPU seconds
*±procurement/phase-out
Figure 1 reveals that the proposed algorithms with a rapid convergence speed
solve all the three models. The best result is achieved by CPGA among the three.
An Economic Capacity Planning Model 339
Product type
Item1 Item2 Item3
Period Demand (Production) Demand (Production) Demand (Production)
[Inventory] [Inventory] [Inventory]
1 20,111 (18,115) [-1,996] 54,770 (56,269) [1,499] 56,956 (50,655) [-6,301]
2 59,392 (65,581) [4,193] 22,545 (28,891) [7,845] 55,796 (86,366) [24,269]
3 20,707 (18,238) [1,724] 26,406 (23,989) [5,428] 32,605 (17,674) [9,338]
4 37,579 (37,676) [1,821] 35,902 (36,266) [5,792] 39,885 (16,338) [-14,209]
5 28,473 (26,103) [-549] 54,852 (53,474) [4,414] 58,488 (77,031) [4,334]
6 53,266 (57,544) [3,729] 27,774 (31,248) [7,888] 55,695 (55,716) [4,355]
7 39,072 (37,067) [1,724] 46,104 (43,647) [5,431] 34,705 (34,791) [4,441]
8 53,965 (54,507) [2,266] 53,132 (53,134) [5,433] 46,810 (49,311) [6,942]
9 44,496 (45,713) [3,483] 21,370 (24,614) [8,677] 37,411 (30,670) [201]
10 45,770 (44,008) [1,721] 45,910 (42,775) [5,542] 26,197 (33,080) [7,084]
11 52,204 (32,986) [-17,497] 56,304 (51,399) [637] 50,541 (42,132) [-1,325]
12 54,243 (25,945) [-45,795] 46,277 (16,917) [-28,723] 42,224 (9,864) [-33,685]
Tables I and II present the resulting resource portfolio and allocation plans
by CPGA. The capacity portfolio plan is represented by the quantities of
resources on hand, by rent and by transfer. Table III presents the production
and inventory plans.
demand data are used. The high (low) level parameter of unit holding costs is set
as 0.15 (0.05) of the product unit profit. The high (low) level parameter of unit
back-order costs is set as 0.20 (0.10)of the product unit profit. The high (low)
level parameter of unit renting cost of resources is set as 80,000 (40,000) times
of average unit holding cost. The high (low) parameter of resource procurement
costs is set as 6 (3) times of renting cost of the corresponding resource. Phase-out
cost of a resource is 0.30 of its procurement cost.
The parameters of the CPGA (evolution time, crossover rate, mutation rate
and population size) under different demands are also examined. Experimental
results showed that the proposed algorithm is robust to the parameters. In order
to achieve high performance, it is suggested to apply the best parameters under
investigation of crossover rate (0.7), mutation rate (0.02), population size (15)
and longer run time (4,000 CPU sec). This sensitivity analysis concludes that,
as shown in Table IV for high demand variation, the performance of the CPGA
outperforms the others two models.
7 Conclusions
This study has addressed the problem of resource acquisition and allocation in
a make-to-stock production that requires a large amount of capital investment.
Finite budget for investing resources, lumpy demands, long production horizon,
many types of products to mix, time value of capital asset, technology level of
resources, efficient usage of multiple-function resources, and limited capacity of
resources are the constraints included in the problem. In addition to inventory
plans, and resource acquisition, renting, transfer and phase-out have also been
considered. This study has formulated the problem as a non-linear mixed integer
mathematical programming model in which the goal is to maximize its overall
profit. A constraint genetic algorithm based programming has been developed.
An Economic Capacity Planning Model 341
Examples have demonstrated that the proposed algorithm can solve the prob-
lem efficiently. Some applications of this model are to semiconductor testing
industries.
References
1. Bard, J.F., K. Srinivasan, and D. Tirupati. An optimization approach to capac-
ity expansion in semiconductor manufacturing facilities. International Journal of
Production Research, 3359-3382, 1999.
2. Bashyam, T.C.A. Competitive capacity expansion under demand uncertainty. Eu-
ropean Journal of Operational Research, 89-114, 1996.
3. Gen, M. and R. Cheng. Genetic Algorithms and Engineering Optimization, John
Wiley and Sons, Inc, 2000.
4. Hsu, J.S. Equipment replacement policy- a survey. Journal of Production and
Inventory Management, 23-27,1998.
5. Leachman, R.C. and T. Carmon, On capacity modeling for production planning
with alternative machines. IIE Transactions, 62-72, 1992.
6. Li, S. and D.Tirupati, Technology choice with stochastic demands and dynamic
capacity allocation: a two-product analysis. Journal of Operations Management,
239-258, 1995.
7. Rajagopalan, S. Capacity expansion with alternative technology choices. European
Journal of Operational Research, 392-402, 1994.
8. Rajagopalan, S. Adoption timing of new equipment with another innovation an-
ticipated. IEEE Transactions on Engineering Management, 14-25, 1999.
9. Swaminathan, J.M. Tool capacity planning for semiconductor fabrication facilities
under demand uncertainty. European Journal of Operational Research, 545-558,
2000.
10. Wang, K.J. and T.C. Hou, Modeling and resolving the joint problem of capacity
expansion and allocation with multiple resources and limited budget in semicon-
ductor testing industry. International Journal of Production Research, 3217-3235,
2003.
A Quantity-Time-Based Dispatching Policy
for a VMI System
Department of Mathematics,
The University of Hong Kong,
Pokfulam Road, Hong Kong, China
1 Introduction
In this paper, we consider a Vendor-Managed Inventory (VMI) system consisting
of a vendor, a manufacturer and groups of retailers at different regions, see Figure
1. An analytic model of similar framework focusing on the Emergency Lateral
Transshipment (ELT) has been studied by Ching [3]. Recent development in
supply chain management focus on the coordination of different functional spe-
cialties and the integration of inventory control and transportation logistics, see
Thomas [12] for instance. VMI is a supply chain initiative where the supplier
or the distributor is responsible for all decisions regarding inventories at the re-
tailers. Usually demands should be shipped immediately, but the vendor has the
right of not delivering small orders to a region until an accumulated amount or
an agreeable dispatching time. VMI requires the retailers to share the demands
information with the supplier so as to allow making inventory replenishment de-
cisions. This is usually achieved by using online data-retrieval systems and Elec-
tronic Data Interchange (EDI) technology, see for instance Chopra and Meindl
[5] and Dyer and Nobeoka [6]. As a result, through the sharing of demands in-
formation the bullwhip effect can be reduced [5, 9]. The bullwhip effect is the
distortion of demands information transferred from the downstream retailers
to the upstream suppliers, see Lee and Padmanabhan [8]. The current focus of
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 342–349, 2005.
c Springer-Verlag Berlin Heidelberg 2005
A Quantity-Time-Based Dispatching Policy for a VMI System 343
Local
Retailers
.. @@
I
.
.. @ Vendor Manufacturer
.
Local
Retailers
VMI is the value of information sharing within a supply chain. Significant sav-
ings can also be achieved by carefully incorporating shipment consolidation and
dispatching with stock replenishment decision in a VMI system, Higginson and
Bookbinder [7]. Here shipment consolidation refers to the management of com-
bining small shipments together in order to take the advantage of the decreased
per unit transportation cost. Simulation is a useful tool for studying freight
consolidation, Masters [10]. Other analytical approaches such as queueing the-
ory and Markov decision process have been proposed to solve the consolidation
models, see Higginson and Bookbinder [7] and Minkoff [11].
There are two types of dispatching policies: the quantity-based dispatching
policy and the time-based dispatching policy, see for instance Higginson and
Bookbinder [7]. A quantity-based policy dispatches whenever there is an accu-
mulated load of size q. In this model, one has to determine the optimal dispatch-
ing size q and the optimal number of dispatches in each replenishment cycle. On
the other hand, a time-based dispatching policy dispatches an accumulated load
in every period of T . In this model, one has to determine the optimal quantity
of replenishment Q and the optimal dispatching period T in each replenishment
cycle. The time-based shipment consolidation have became a part of the trans-
portation contract among the members of a supply chain and Delivery Time
Guarantee (DTG) is a common marketing strategy in the competition of mar-
ketplaces, see Ching [4]. A VMI model based on time-based dispatching policy
has been proposed and studied by Cetinkaya and Lee [2], they also discussed both
advantages and disadvantages of the time-based and quantity-based dispatching
policies. They remark that it is interesting to consider a model for the case
of quantity-time-based dispatching policy. Here we propose an analytic model
based on the simplified framework of [2] for the quantity-time-based dispatching
policy. Our model takes into the account of the inventory cost, the transporta-
tion cost, the dispatching cost and the re-order cost. We remark that in modern
E-business supply chain, inventory handling and transportation of products are
the major costs, see Chopra and Meindl [5]. The dispatching cost is associated
with the consolidation of shipment and the re-order cost corresponds to the in-
ventory replenishment. In our model, for simplicity of discussion we assume that
344 W.-K. Ching and A.H. Tai
the demands of the retailers at a region is a simple Poisson process, the vendor
applies a (q, Q, T ) policy for replenishing the inventory and the lead time of the
replenishment is assumed be negligible. The definition of a (q, Q, T ) policy will
be introduced shortly in Section 2. Since a new inventory cycle begins whenever
there is a dispatching of products, the long-run average costs of the model can
be obtained by using the renewal theory [1]. Moreover, closed form solution of
optimal dispatching policy is also obtained.
The rest of the paper is organized as follows. In Section 2, we present the
model for the quantity-time-based dispatching policy. In Section 3, we give a cost
analysis of the model and derive the optimal dispatching policy with a numerical
example. Finally, concluding remarks are given in Section 4 to conclude the paper
and address further research issues.
6Inventory Level
Q −
%1 ···
Q− i=1
Ni −
%2
Q− i=1
Ni −
.. ..
. .
%A
Q− i=1
Ni −
| | | | -
t
T1 T2 ··· TA−1 TA
3 A Cost Analysis
In this section, we derive the expected long-run cost of the system by using
renewal theory [1]. We note that a new inventory cycle begins whenever there is
a dispatching of products, therefore the long-run average costs can be obtained
by using the renewal theory. We will first derive the expected size of a dispatch
E(qd ) and an approximation for the expected number of dispatches E(A) in each
replenishment cycle. We then derive an approximate average cost.
We let dT be the probability of dispatching a load at a planned dispatching
time T , then
346 W.-K. Ching and A.H. Tai
q−1
(λT ) e−λT
i
dT = P (N (T ) < q) = .
i=0
i!
Therefore the expected quantity of a dispatch is
E(qd ) = q(1 − dT ) + E(N (T ))dT = q(1 − dT ) + λT dT .
The expected time of a single dispatch is given by
q(1 − dT )
E(Tq )(1 − dT ) + T dT = + T dT .
λ
Meanwhile, since all stocks will be used up in a replenishment cycle, we have
E(Number of dispatches) × E(dispatching quantity) > Q.
Also, since the stock is sufficient for the demand before a replenishment cycle
ends, we have
Q > [E(Number of dispatches) − 1] × E(dispatching quantity).
Therefore an upper bound and a lower bound of the expected number of dis-
patches are given by
Q
Nmax = +1
q(1 − dT ) + λT dT
and
Q
Nmin =
q(1 − dT ) + λT dT
respectively. In view of the above bounds, we can approximate E(A) by using
Nmin .
We then derive an approximate average long-run cost for the quantity-time-
based model. Again we apply the renewal reward theorem, the average long-run
cost is given by
Replenishment Cycle Cost
C(q, Q, T ) = .
Replenishment Cycle Length
E(A)
I× [i × E(Ti ) × E(N ([Ti − Ti−1 ]))]
i=1
E(A) ( *
q(1 − dT )
=I× i× + T dT × [q(1 − dT ) + λT dT ]
λ (1)
i=1
E(A)[E(A) + 1] q(1 − dT )
=I× × + T dT × [q(1 − dT ) + λT dT ]
2 λ
IQ
= {Q + q(1 − dT ) + λT dT } .
2λ
A Quantity-Time-Based Dispatching Policy for a VMI System 347
We note that the cost function C(Q, V ) is strictly convex for positive Q and
V . Thus the unique global minimum for positive Q and V can be obtained by
solving
∂C(Q,V )
∂Q = I2 − Cλ
Q2 = 0
∂C(Q,V ) (5)
∂V = 2 − V 2 = 0.
I Dλ
q T q(1 − dT ) + λT dT
15 1.20 12.684
15 1.25 13.187
16 1.30 13.709
18 1.35 14.126
23 1.40 14.150
14 1.45 14.206
14 1.50 14.363
4 Concluding Remarks
In this paper, we discuss a Vendor-Managed Inventory (VMI) system where the
vendor is authorized to coordinate and consolidate the inventory at the retailers.
We present an analytic model for the quantity-time-based dispatching policy.
Moreover, closed form solution of optimal dispatching policy is also obtained.
For ease of discussion, the effect of the lead time in the inventory replenishment
was not included in our model. It will be interesting to extend our model to
include the lead time.
A Quantity-Time-Based Dispatching Policy for a VMI System 349
References
1. Barlow, R. and Proschan, F.:Mathematical Theory of Reliability, Classics in Ap-
plied Mathematics. SIAM, Phildaphia (1996)
2. Cetinkaya, S. and Lee, C.: Stock Replenishment and Shipment Scheduling for
Vendor-Managed Inventory Systems. Manag. Sci., 46 (2000) 217–232
3. Ching, W.: Markov Modulated Poisson Processes for Multi-location Inventory
Problems, Inter. J. Prod. Econ., 53 (1997) 217–223
4. Ching, W.: An Inventory Model for Manufacturing Systems with Delivery Time
Guarantees, Comput. Operat. Res., 25 (1998) 367–377
5. Chopra, S. and Meindl, P.: Supply Chain Management, Strategy, Planning and
Operation, Prentice Hall, New Jersey (2001)
6. Dyer, J. and Nobeoka, N.: Creating and Managing a High-performance Knowledge
Sharing Network: The Toyota Case, Strategic Management Journal, 21 (2000)
345–367
7. Higginson, J. and Bookbinder, J.: Markovian Decision Processes in Shipment Con-
solidation, Transportation Sci., 29 (1995) 242–255
8. Lee, H. and Padmanabhan, L.: Information Distortion in a Supply Chain: The
Bullwhip Effect, Manag. Sci., 43 (1997) 546–558
9. Lee, H., So, K. and Tang, C.: The Value of Information Sharing in a Two-level
Supply Chain, Manag. Sci., 46 (2000) 626–643
10. Masters, J.: The Effect of Freight Consolidation on Customer Service, J. Busi.
Logist., 2 (1980) 55–74
11. Minkoff, A.: A Markov Decision Model and Decomposition Heuristic for Dynamic
Vehicle Dispatching, Oper. Res., 41 (1993) 77–90
12. Thomas, D.: Coordinated Supply Chain Management, Euro. J. Operat. Res., 94
(1996) 1–15
An Exact Algorithm for Multi Depot and Multi
Period Vehicle Scheduling Problem
1 Introduction
The purpose of Vehicle Routing Problem(VRP) and Vehicle Scheduling Prob-
lem(VSP) is to design the least costly(distance, time) routes for a fleet of capac-
itated vehicles to serve geographically scattered customers. There may be some
restrictions such as the capacity for each vehicle, total traveling distance allowed
for each vehicle, time window to visit the specific customers, and so forth. The
decision which takes inventory holding cost and vehicle operating planning dur-
ing the multi-period into consideration is required in the real supply chain. But,
an objective function of general VRP/VSP is to minimize the transportation
cost from a given depot to several customers within a single period. Our study
is on multi period vehicle scheduling problem in a supply chain where a fleet
of vehicle delivers single type product from multi depots to multi retailers. The
purpose of this model is to design the least costly schedule of vehicles in each
depot to minimize transportation costs in product delivery and inventory hold-
ing costs at retailers over the planning period. The example feasible solution of
this model is shown in Figure 1.
In a supply chain which is composed of two depots and four retailers, three
vehicles are available for each depot respectively. The loading capacity of vehicles
of each depot is 30 and 60 respectively. The available number of vehicle for each
depot is 3. The time spent in one way from each depot to retailers are (1, 2, 1,
1) and (2, 1, 2, 1). The demand of each retailer 1, 2, 3 and 4 is set at (0, 30,
10, 10, 0), (0, 10, 20, 20, 20), (0, 20, 10, 10, 20), (0, 10, 10, 20, 20) for the time
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 350–359, 2005.
c Springer-Verlag Berlin Heidelberg 2005
An Exact Algorithm for Multi Depot and Multi Period VSP 351
period 5 respectively. The length of solid line and the dotted line represent the
time spent in one way and returning trip. The number in the circle constitutes
delivery quantity. The number of used vehicles of each depot is (1, 3, 3, 1, 0), (0,
2, 3, 3, 3) for the each time period. The delivery quantity is less than or equal
to the loading capacity. Costs associated with vehicle set up cost, variable cost
and inventory holding cost are considered. For example, from depot 2 to retailer
4, there is one vehicle set up cost, variable cost for 60(delivery quantity). The
inventory of retailer 4 is (0, 50, 40, 20, 0) for the time period so that there is
inventory holding cost from day 2 to day 4.
Although many researches concerning transportation planning and inven-
tory/distribution have been studied extensively, much less is available on the
combined problem. First, the research regarding the transportation planning
was approached through the VRP/VSP. The VRP/VSP is considered an identi-
cal conception in the most recent research. The VRP/VSP have been extensively
studied in Operations Research since Danzig and Ramser[1] introduced the tra-
ditional VRP. Diverse models that take into account realistic constraints have
been studied. One of them is the VRP with time window(VRPTW) in which
the customer service has to be performed within a certain time range, from
the earliest time to the latest time window(Malandraki and Dial[2], Taillard et
al.[3], Liu and Shen[4], Berger and Barkaoui[5]). Another one is the multi-depot
VRP(MDVRP). Laporte[6] introduced the integer programming formulations for
MDVRP. Renaud et al.[7] used a tabu search algorithm for this problem with
capacity and route length restrictions. Salhi and Sari[8] extended the problem
of simultaneously allocating customers to depots addressing the findings of the
delivery routes and determining the vehicle fleet composition. Another model
is the heterogeneous VRP(HVRP) which has a different vehicle capacity. Salhi
and Rand[9] applied a perturbation procedure that uses reduction, reassign-
ment, combination and relaxation within the existing or constructed routes to
reduce the total cost of routing and acquisition by improving the utilization of
the vehicles. Ochi[10] used the genetic algorithm, Gendreau et al.[11] applied
tabu search respectively. Another example is the pick-up and delivery VRP
352 K.H. Kang, Y.H. Lee, and B.K. Lee
2 Mathematical Formulation
There are I depots which supply a single product for the retailers J. No limita-
tion is placed in supplying capacity for each depot during the planning period T .
Additionally, each depot has K vehicles of the same capacity. Each vehicle can
serve only one retailer per trip. The trip time of each vehicle is composed of the
time spent in one way and returning trip. The time spent in one way is defined
as the time taken from the depot departure to the retailer to be served and the
time spent in returning trip is defined as the time taken from the retailer to the
depot. For each period, the demand of each retailer is known to be deterministic
but may vary by dates and retailers. It does not exceed the loading capacity of
a single vehicle and has to be met before the end of the due date. Each vehicle
is able to serve only one retailer for each time period, therefore, split delivery
An Exact Algorithm for Multi Depot and Multi Period VSP 353
for demand quantity in each period is not permitted. There is no limit on the
storage capacity for inventory at retailers and shortages are not allowed.
Logistic costs such as vehicle set up cost, variable cost in each depot and in-
ventory holding cost in each retailer are considered. Vehicle set up cost is incurred
when the vehicle departs to serve a delivery quantity from depot to retailer in
time period. Variable cost is proportional to the total quantity of products trans-
ported. Inventory holding cost is also proportional to the quantity and the time
length in retailers. The objective is to determine a vehicle operating planning,
distributing quantities and inventory quantities for a given planning period to
minimize a total cost. The mathematical formulation is as follows;
Notation
% % %
M in j,t Hj,t Rj,t + i,j,k,t Vi,j,t Xi,j,k,t + i,j,k,t Si,j,t Yi,j,k,t (1)
subject to
%
Rj,t−1 + i,k Xi,j,k,t = Dj,t + Rj,t ∀j, t (2)
%
k,j Yi,j,k,t ≤ K ∀i, t (3)
% % %t+2τi,j −1
j Yi,j,k,t + j u=t+1 Yi,j,k,u ≤ 1 ∀i, j, k, t (4)
3 Exact Algorithm
An exact algorithm which helps guaranteeing an optimal solution is suggested
for this model. In the exact algorithm, all feasible schedules are generated from
each depot to each retailer and set of vehicle schedules are selected optimally by
solving the shortest path problem.
is (1, 1, 1, 1, 0). If this method is applied in all depot and retailer during the
time period, all feasible schedules less than IJT 2 /2 are generated. In section 3.2,
some schedules are selected optimally by solving the shortest path problem.
Notation
%
M in i,j,m,n Ci,j,m,n Zi,j,m,n (9)
subject to
% %
i,m Zi,j,m,p − i,n Zi,j,p,n = 0 ∀j, p = 2, . . . , T − 1 (10)
%
i,n Zi,j,1,n = 1 ∀j (11)
356 K.H. Kang, Y.H. Lee, and B.K. Lee
%
i,m Zi,j,m,T = 1 ∀j (12)
%
j,m,n Ai,j,m,n,t Zi,j,m,n ≤ K ∀i, t (13)
4 Computational Experiments
The performance of the suggested exact algorithm was evaluated into two types
of experiments. For small scale problems, solutions obtained by exact algorithm
are compared with optimal solutions. Meanwhile, for large scale problem with
single depot, performance is compared with the solution by Kim and Kim[14]
method which presents a good performance in a single depot vehicle scheduling
problem. For large scale problem with multi depot, computation time of an exact
algorithm was presented.
For the small scale problems, 10 sets of instances were generated with respect
to the total number of depots, retailers, and time periods. Each set also consists
of 10 examples(total 100 examples). Optimal solutions with more than 3 depots,
8 retailers and 11 time periods cannot be found within a reasonable computation
time. Thus, the number of depot, retailers and time periods are set at 2∼6, 4∼32,
11 and 16 respectively. The time spent in one way from each depot to retailers
is assumed to be 1∼2 day for each set. Inventory holding cost per unit for each
retailer is randomly chosen from values of 0.1∼0.2. Vehicle set up cost at the
depot is also randomly chosen from values of 2∼5. Transportation cost per unit
is randomly chosen from values of 0.1∼0.2. The demand quantity of retailer is
uniformly distributed on 15∼30 for every period. The number of vehicle is set
at 3∼25 for each set.
It is shown in Table 1 that the results of performances of exact algorithm is
compared to optimal value. The optimal solutions were obtained using CPLEX
8.1, a commercial software package for mixed integer programming problems. Ex-
act algorithm was coded in C++ language and CPLEX 8.1 and run on a personal
computer with a Pentium IV 2.6Ghz CPU. The lower bound(LB) and upper
bound(UB) have been computed by CPLEX under time limit of 30 minutes. The
Gap* is defined as (Upper bound value - Lower bound value)100/Upperbound
value. The upper bound value and lower bound value approach to the optimal
value through the CPLEX iterative computation, in addition, the optimal value
An Exact Algorithm for Multi Depot and Multi Period VSP 357
No. No. No. Optimal value using the CPLEX 8.1 Exact algorithm
Set of of of Upper Lower Gap∗ Com. time No. of Value Com. time
depot retailer period Bound Bound (sec.) success (sec.)
1 2 4 11 104.76 104.76 0.00 23.36 10/10 104.76 0.07
2 2 4 16 214.49 192.15 0.10 1800.27 0/10 214.49 0.22
3 2 8 11 215.97 215.95 0.00 34.00 10/10 215.97 0.11
4 2 8 16 422.81 395.81 0.06 1800.09 0/10 422.81 0.28
5 3 8 11 213.16 208.56 0.02 1586.62 4/10 213.16 0.10
6 3 8 16 423.19 358.90 0.15 1800.05 0/10 423.17 0.27
7 3 16 11 468.51 427.28 0.09 1800.07 0/10 467.70 0.27
8 3 16 16 852.27 715.23 0.16 1800.26 0/10 852.29 1.05
9 6 32 11 865.44 798.18 0.08 1800.18 0/10 865.44 0.97
10 6 32 16 1706.55 1434.43 0.16 1800.17 0/10 1704.17 3.31
Table 2. Performances of exact algorithm for a large scale instances with single depot
exists between the upper bound value and lower bound value. If the Gap∗ is
0, the optimal value is found by solving the mixed integer programming using
the CPLEX 8.1. It can be observed that for the networks with the more de-
pots, retailers and time periods, the Gap∗ gets larger. It comes from the fact
that this mixed integer programming requires a considerable amount of com-
putation time. The number of finding optimal solution for each set is shown in
the column of “No. of success”. Optimal solutions for the examples in the set
1, 3 could be found within a reasonable computation time. However, it is hard
to find an optimal solution in most of the sets. On the other hand, the exact
algorithm performs well compared to the optimal solution within significantly
less computational time(0.67 second in average).
The result of large scale instances with single depot solved by exact algo-
rithm and Kim and Kim[14] method is shown in Table 2. For these cases, 4
sets of instances were generated with respect to the total number of retailers,
and time periods. Each set also consists of 30 examples(total 120 examples).
The number of retailers and time periods are set at 30∼90, 21 respectively. The
Gap∗∗ is defined as (Kim and Kim[14] value - exact algorithm value)×100/Kim
and Kim[14] value).
For the computation time, suggested exact algorithm solved the cases more
quickly than Kim and Kim[14] method. Even though the exact algorithm goes
358 K.H. Kang, Y.H. Lee, and B.K. Lee
Table 3. Performances of exact algorithm for a large scale instances with multi depot
investigation of these cases would attract many in the related fields. Further, the
supply chain which is composed of multi stage and heterogeneous vehicle would
also draw great interest.
References
1. Danzig, G.B., Ramser, J.H.: The Truck Dispatching Problem. Management Sci-
ence, Vol. 6. (1959) 80–91
2. Malandraki, C., Dial, R.B.: A restricted dynamic programming heuristic algorithm
for the traveling salesman problem. European Journal of Operational Research,
Vol. 90. (1996) 45–55
3. Taillard, E., Badeau, P., Gendreau, M., Guertin, F., Potvin, J.Y.: A parallel tabu
search heuristic for the vehicle routing problem with time windows. Transportation
Research Part C: Emerging Technologies, Vol. 5. (1997) 109–122
4. Liu, F., Shen, S.: A route-neighborhood-based metaheuristic for vehicle routing
problem with time windows. European Journal of Operational Research, Vol. 118.
(1999) 485–504
5. Berger, J., Barkaoui, M.: A parallel hybrid genetic algorithm for the vehicle routing
problem with time windows. Article in press, Computers and Operations Research,
Vol. 31. (2004) 2037-2053
6. Laporte, G.: Integer programming formulations for the multi-depot vehicle routing
problem. Comments on a paper by Kulkarni and Bhave, European Journal of
Operational Research, Vol. 38. (1989) 228-237
7. Renaud, J., Laporte, G., Boctor, F.F.: A tabu search heuristic for the multi-depot
vehicle routing problem. Computers and Operations Research, Vol. 23. (1996) 229-
235
8. Salhi, S., Sari, M.: A multi-level composite heuristic for the multi-depot vehicle
fleet mix problem. European Journal of Operational Research, Vol. 103. (1997)
95-112
9. Salhi, S., Rand, G.K.: Incorporating vehicle routing into the vehicle fleet composi-
tion problem. European Journal of Operational Research, Vol. 66. (1993) 313-330
10. Ochi, L.S.: A parallel evolutionary algorithm for the vehicle routing problem with
heterogeneous fleet. Future Generation Computer Systems, Vol. 14. (1998) 285-292
11. Gendreau, M., Laporte, G., Musaraganyi, C., Taillard, E.D.: A tabu search heuris-
tics for the heterogeneous fleet vehicle routing problem. Computers and Operations
Research, Vol. 26. (1999) 1153-1173
12. Mosheiov, G.: Vehicle Routing with Pick-up and Delivery : Tour-Partitioning
Heuristics. Computers and Industrial Engineering, Vol. 34. (1998) 669-684
13. Min, H., Zhou, G.: Supply chain modeling : past, present and future. Computers
and Industrial Engineering, Vol. 43. (2002) 231-249
14. Kim, J., Kim, Y.: A decomposition approach to a multi-period vehicle scheduling
problem. The International Journal of Management Science, Vol. 27. (1999) 421-
430
15. Yen, J.Y.: Finding the K shortest loopless paths in a network. Management Science,
Vol. 17. (1971) 712-716
Determining Multiple Attribute Weights
Consistent with Pairwise Preference Orders
1 Introduction
In multiple attribute decision making (MADM), one usually considers a finite
discrete set of alternatives, each of which is valued by a finite discrete set of at-
tributes. A classical evaluation of alternatives leads to the aggregation of multiple
attributes into a unique criterion called a value function under certainty. A key
component in the development of an additive multiple attribute model for select-
ing the best alternative is the method of obtaining the attribute weights. Various
schemes aimed at eliciting exact weights from the decision-maker via interactive
questions and answers may suffer on several counts. First of all, the weights are
highly dependent on the elicitation method adopted [1, 2]. In addition, there
is no agreement as to which method produces more accurate results since the
true target weights remain unknown, or perhaps from a different perspective,
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 360–367, 2005.
c Springer-Verlag Berlin Heidelberg 2005
Determining Multiple Attribute Weights 361
are defined by the methodology. In order to avoid the difficulties associated with
detailed weight elicitation, various surrogate weight approaches are presented in
the decision analysis literature [3, 4].
A few studies which utilize a decision-maker’s a priori pairwise compari-
son judgments on the set (or subset) of alternatives are devoted to estimating
the unknown attribute weights while remaining consistent with pairwise pref-
erence orders. LINMAP, which is not based on mulitiattribute utility theory,
estimates unknown attribute weights which minimize the Euclidean distance of
each attribute consequence from the most preferred stimuli locations, called the
ideal points [5]. Horsky and Rao [6] suggest an extended version of LINMAP in
which they include comparisons of pairs of pairs, in addition to the collection
of paired preference comparisons and more detailed statistical analysis of esti-
mated attribute weights. Pekelman and Sen [7] propose a mathematical model
which determines a set of weights for each decision-maker and present real world
application. The UTA method, originally devoted to assessing a set of piecewise
linear utility functions, can determine attribute weights which correspond to
attribute-wise maximum utility value [8]. White et al. [9] present procedures for
ranking alternatives and determining trade-off weights if the preference informa-
tion gleaned from imprecise utility score assessment, trade-off weight assessment,
and directly expressed preferences among alternatives is consistent.
In this paper, we use a decision-maker’s paired comparison judgments on
the set (or subset) of alternatives. The motivation for including ordered pairs
as input is due to the facts that many decision-makers are willing and able to
provide such data. For instance, many applications of multiple criteria decision
aids have been published in the area of financial analysis, where a financial ex-
pert (or sometimes experts) articulates holistic paired comparisons between firms
[10]. We consider, on the other hand, the imprecise preference data in the model
since the need for handling imprecise preference data occurs in situations such
as time pressure or lack of data, intrinsically intangible or non-monetary na-
ture of attribute, decision-maker’s limited attention and information processing
capability and the like [11]. The types of imprecise information on attribute con-
sequences considered in this paper cover a broad range of imprecision inherent
in some attribute characteristics [12-14].
This method uses the simple additive model and minimizes the total amount of
violation of the pairwise preference constraints to obtain the attribute weights.
Here, A={x1 ,x2 ,. . . ,xj ,. . . ,xm } denotes the set of m alternatives on which pair-
wise preference judgments are to be made. Each of the m alternatives is described
in terms of n attributes, K={1,2,. . . ,k,. . . ,n}. Also Y ={y1j ,y2j ,. . . ,ykj ,. . . ,ynj } de-
notes the jth alternative; i.e. Ykj is the attribute value of the kth attribute for the
362 B.S. Ahn and C.H. Han
to be not dependent on the attribute values Ykj s. The constraints expressing the
pairwise preference judgments of the decision-maker are of the form U i − U j ≥0
for all (i, j) ∈ Ω, in which Ω =[(i, j): xi , xj ∈ A] denote the set of pairwise
preference judgments such that the alternative xi is preferred to alternative xj
in a forced-choice pair comparison from the decision-maker. Then, according to
the Srinivasan and Shocker [5], the set of weights W should be determined from
the following linear programming problem:
%
minimize (i,j)∈Ω zij
subject to
%
wk (yki − ykj ) + zij ≥ 0, for all (i, j) ∈ Ω,
k % %
k wk (yk − yk ) = 1,
i j
(i,j)∈Ω
zij ≥ 0 for all (i, j) ∈ Ω,
wk ≥ 0 for all k ∈ K,
where zij is a slack variable indicating the degree of deviation of the model
from the true responses
% regarding
% ithe preference of alternative xi to alternative
j
x . The constraint (i,j)∈Ω k (yk − yk ) = 1 is simply added to preclude the
j
trivial solution wk =0, ∀k ∈ K. Here the idea is that for every pair (i, j), U i
has to be greater than U j for alternative xi to be preferred to alternative xj ,
and hence the sum of all (U i − U j )s must to be positive, even when the model
is approximately valid. The right-hand side of the equation, which is added to
preclude the trivial solution, can be any positive constant, which serves merely
as a scaling factor for the set of weights W , and can, without loss of generality,
be set at unity (please refer to the related works in [15, 16])
Let Ω denote the set of ordered pairs (i, j) where i designates the preferred
alternative from a paired comparison involving i and j. The set of ordered pairs
could be comprised of 1) a set of past decision alternatives, 2) a subset of decision
alternatives, especially when a set of alternatives is large, or 3) a set of fictitious
alternatives, consisting of performances on the attributes which can be easily
judged by the decision-maker to express his/her global comparisons [19].
Definition 1 : Alternative xi is said to be preferred to alternative xj , based
on the decision-maker’s paired comparison
% % (i, j) ∈ Ω if and only if
judgment
min[v(xi )]>max[v(xj )], i.e., min k wk vk (xi ) >max k wk vk (xj ).
Definition 2 : Alternative xi is pairwise dominant over alternative xj if and
only if the minimized value of the sum
% of weighted differences between alternative
xi and xj is positive, i.e., min { k∈K wk [vk (xi ) − vk (xj )]}>0 subject to the
constraints V and W .
Remark 1: Under imprecise attribute consequences, the aggregated value
v(xi ) of alternative xi lies between U i
% an upper bound, v (x ) and a lower% bound,
v L (xi ), where v U (xi )=maxV,W k wk vk (xi ) and v L (xi )=minV,W k wk vk (xi )
respectively. If a dominance relation based on Definition 1 holds between alter-
natives xi and xj , then a dominance relation based on Definition 2 always holds.
This is easily proved. If alternatives xi is preferred to xj based on Definition 1,
% %
then it implies that v L (xi ) > v%
U
(xj ), i.e., minV,W k%wk vk (xi ) >maxV,W k wk
vk (xj ) and in turn, minV,W k wk vk (xi )+minV,W k −wk vk (xj ) >0. Hence,
364 B.S. Ahn and C.H. Han
% i j
% V,W ki wk [vk (x )−v
min %k (x )] in Definition 2 is greater than or equal to minV,W
w
k k kv (x )+minV,W k −w v
k k (x j
) >0.
Among the decision-maker’s natural language statements assumed to be
elicited, we notice the following general form: “The knowledge source indicates
the relative importance of one alternative to another alternative, in a holistic
manner that encompasses all the attributes.” Let us define an optimal solution
W ∗ to be a set of weights {Wk∗ } for k ∈ K. The solution would be consistent
with the decision-maker’s preferences if v(xi ) − v(xj ) >0 for every a priori or-
dered pair (i, j) ∈ Ω and for all feasible values of W and V . We can state this
as
%
min{ k wk [vk (xi ) − vk (xj )]:wk ∈ W , vk ∈ V }>0 for (i, j) ∈ Ω.
Thus, the goal% of analysis is determining the solution W ∗ for which the
conditions such as k wk · min[vk (xi ) − vk (xj )] ≥ε(ε is a small arbitrary positive
number) for every a priori ordered pair (i, j) ∈ Ω are violated as minimally as
possible. To attain
% the objective “as minimally as possible”, we use auxiliary
variables zij in k wk · min{vk (xi ) − vk (xj )}+zij ≥ε for every ordered pair (i,
j) ∈ Ω and minimize sum of auxiliary variables in the objective as shown below:
%
minimize (i,j)∈Ω zij (2a)
subject to
%
k∈K wk ·δ k (x , x ) + zij ≥ε
i j
(2b)
wk ∈ W , zij ≥0, ε>0 for k ∈ K and (i, j) ∈ Ω (2c)
in which δ k (x , x )=min{vk (x ) − vk (x ): vk (x ), vk (x ) ∈ Vk , k ∈ K}.
i j i j i j
Theorem 1 : The attribute weights {wk∗ }k∈K are totally consistent with the
decision-maker’s a priori ordered pairs consisting of strict preferences if and only
∗
if the optimal solution is zij = 0 for every pair (i, j) ∈ Ω.
∗
Proof : If the optimal solution, zij = 0 for every pair (i, j) ∈ Ω, then this
%
implies that from constraint (2b), min{ k wk [vk (xi ) − vk (xj )]}>0 which, in
turn, implies v(xi ) > v(xj ) for every pair (i, j) ∈ Ω. Thus ordered preferences
∗
specified by the decision-maker are fulfilled. If the attribute weights {w %k } for
k ∈ K are consistent for every pair (i, j) ∈ Ω, then it implies that k wk ·
∗
min[vk (xi ) − vk (xj )]≥ε and thus zij = 0.
Remark 2: If the model allows for indifference preference between alternatives
xi and xj , and the solution is totally consistent with the decision-maker’s a
priori ordered pairs consisting of strict preferences, then both zij and zji at the
optimality take positive values and all the other z corresponding to the strict
∗ ∗
preferences takes zero values. For zij > 0 and zji > 0 implying w∗ · min[v(xi ) −
∗
v(x )]<0 and w · min[v(x ) − v(x )]<0, we can interpret that xi is not preferred
j j i
4 An Illustrative Example
A numerical example is illustrated to show the method carried out in the Section
3. Suppose five non-dominated alternatives defined in terms of three attributes
(K = 3) are as shown in Table 1. Here, all attribute outcomes are described in
Attributes
Alternatives 1 2 3
x1 1 0 [0.4, 0.5]
x4 [0.3, 0.4] 1 0
Solving this program with a small arbitrary positive number ε replaced with
0.001, we obtain the optimal trade-off weights, w1∗ = 0.4260, w2∗ = 0.3908 and
w3∗ = 0.1832 with objective value zij ∗
= 0 for every pair (i, j) ∈ Ω except
∗ ∗
z23 = 0.119 and z32 = 0.146 corresponding to the indifferent alternatives x2
and x3 . This solution implies that in the viewpoint of a certain decision-maker,
s/he considers that attribute 1 and 2 are almost equally important and they are
about twice as important as attribute 3. For a reverse decision aiding purpose,
suppose that there exist two alternatives x6 and x7 which are not evaluated a
priori by the decision-maker and their value scores are also specified in bounded
values such as
5 Concluding Remark
In a situation where the pairwise comparison judgments among the alterna-
tives are gathered from a decision-maker and imprecise preference judgments
on some attributes are provided in the model, a weight estimation methodol-
ogy is presented. In a more realistic occasion, it is natural to extend the single
decision-maker’s weight estimation into representative multiple decision-makers’
case. In usual cases, the quality of weight estimation can be enhanced by adopt-
ing group members’ weight estimates and thus reducing the errors of a single
decision-maker’s estimates. Thus, various statistical analyses can be utilized to
infer group attitude toward competing alternatives, which is left for further re-
search.
Determining Multiple Attribute Weights 367
References
Peng-Sheng You
1 Introduction
Service providers seek a feasible and desirable solution for coping with puzzles
in marketing environments all the time. The business challenges may be derived
from a variety of possibilities such as how much of the capacity should be rented
to satisfy future demands, how to adjust the capacity effectively by having the
needed number of employees on duty, how to smooth the demand to match
the service capacity, and so on. Unsuitable decisions on the above-mentioned
problems may influence a company’s profit.
For example, suppose a forwarder provides delivery service within a certain
district. The forwarder does not have its own cargo and must rent its cargo ca-
pacity from cargo suppliers. The capacity renting decision is not easy to make.
If the forwarder rents too much, it will have a higher probability of many re-
maining at vacant capacity by departure time and will result in a loss of the idle
capacity contribution since cargo capacity is a perishable inventory with time.
On the other hand, if the forwarder rents too few, the forwarder may lose a lot
of sales. Thus, it is a challenge for forwarders to establish the suitable strategies
to cope with the problems of capacity planning and demand management.
Likewise, additional business situations also emerge across many spheres such
as transportation and internet service industries. Suppose a rental company pro-
vides a transportation service among a variety of cities which are connected by a
number of rail legs. For a target market composed of n cities, the rental company
can provide 0.5n(n+1) types of delivery service in the target market. To provide
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 368–377, 2005.
c Springer-Verlag Berlin Heidelberg 2005
A pricing Model for a Service Inventory System 369
one unit of delivery service between any two cities requires one unit of capacity
on each rail leg connecting the two cities.
Therefore, capacities on a certain train leg are used by several types of de-
livery service. To establish the delivery service on the whole network, the rental
company should rent from the railways a set of capacities for all the legs of the
whole network. Whenever the demand for the delivery service falls short of the
rented capacity, the idle capacity is a loss due to the perishability of service
capacity with time. On the contrary, if demand exceeds the capacity, the un-
satisfied demand is considered a loss in sales. In order to maximize profit, the
rental company must deal with the problem of how much capacity is needed for
each leg and what is the suitable price for each type of delivery service.
Several studies on revenue management have been conducted on the problem
of advanced sale issues. Researches on this area mostly focus on perishable inven-
tories or service products. Readers are referred to the bibliography of [1, 3, 12, 19]
for further information.
Liberman and Yechiali [9] developed a dynamic programming model for deter-
mining overbooking decision for a hotel reservation problem. Gale and Holmes
[5] examined an airline model in which a monopoly firm employs an advance
purchase discount to satisfy the demand for two flights with different departure
times. They showed why a restriction on advance purchase may be a profit maxi-
mizing policy for a monopoly airline during a peak time period. James and Dana
[7] proposed an airline model in which an airline faces two types of customers
with different valuations and demand uncertainties. Luo [10] suggested an inte-
grated inventory model for perishable goods in which backorder is allowed.
Moreover, Gilbert and Ballou [6] discussed a supply chain system in which
advanced purchased information from downstream customers is employed to
reduce operating costs. Their paper aimed to illustrate how advance purchase
information can be used to reduce costs for a make-to-order supplier. A model for
quantifying the benefits from advance commitments from downstream customers
is developed. An example in steel industry is used to illustrate the analytic result
of the developed model. Biyalogorsky et. al., [2] dealt with a resource allocation
problem in which an overselling rule is used to reduce the potential yield and
spoilage losses. A simple decision rule was developed to determine the resources
allocation problem. They conclude that the overselling strategy can improve
resource allocation efficiency by reducing the potential yield and spoilage losses.
Ng, Wirtz, and Lee [14] discussed the problem of what strategy can be used to
deal with the unused service capacity.
Subramanian, Stidham, and Lautenbacher [17] investigated an airline seat
inventory control problem in which overbooking, cancellations and no-shows are
allowed. You [21] proposed a multi-flight leg nested airline model for finding the
optimal pricing decisions. Shugan and Xie [16] studied the separation of purchase
and consumers on an advance sales system and proposed several remarkable
implications. Lee and Ng [8] proposed a model for a monopolistic service firm
for investigating the impact of market price sensitivity on the optimal price and
370 P.-S. You
capacity in an advance sale system. They showed that a policy with advance
sales is superior to a policy without advance sales.
Meanwhile, Xie and Shugan [20] examined a selling model in which the sale in-
terval is divided into an advance sale period and a spot sale period. They demon-
strated that the advance sales can be profitable regardless of industry factors.
Moe and Fader [13]) addressed a forecasting model in which advance purchase
orders is used to predict new product sales. Tang, Rajaram, and Alptekinoglu
[18] considered a perishable season product model in which advance booking dis-
count is offered to customers who commit their orders prior to the selling season.
They analyzed the benefits of the advance booking system and characterized the
optimal discount parameters. McCardle, Rajaram and Tang [11] proposed a two
firm competitive model for determining the optimal discount price and analyzing
the benefits of the advance booking discount program.
Ringbom and Shy [15] dealt with an advance booking system in which cus-
tomers’ cancellation events and partial refunds are taking into consideration.
Two cases are analyzed. In the first case, this paper aims to maximize the profit
by determining the rate of partial refund offered to those customers who do
not show up or cancel their reservations. In the second case, this paper deter-
mines the refund rate that maximizes the social welfare. Cachon [4] discussed
the impact of the allocation of inventory risk between a risk neutral retailer
and a supplier on supply chain efficiency. They found that if advance purchase
discount is considered, the supply chain coordination is achievable by means of
arbitrary profit allocation.
The aforementioned literature has discussed the problem of advance sales
system on price setting and the price adjusting time. From the point of view
of service firms which do not have their own service capacity, it is important
to simultaneously establish their capacity renting and price setting policies to
improve their revenues.
This paper deals with a service pricing problem in which a service firm rents a
number of resources with distinct services over consecutive but non-overlappling
time intervals from a service capacity supplier, assembles the rented service re-
sources into a variety of service products, and employs an advanced sales system
to sell the products to customers. Demand for products are assumed to be price
and waiting time dependent. The purpose of this paper is to maximize the total
profit over a planning period by determining the optimal initial and secondary
prices, and required capacity size.
Postulate that the company requires customers to make reservations for their
purchase. Let product type be defined by index pair-(i, j), 1 ≤ i < j ≤ L + 1. To
provide a unit of product type-(i, j) requires one unit of resource types i, i + 1,
· · · and j − 1, respectively. We define the ending time of the service of resource
type i to be immediately prior to the starting time of the service of resource type
i + 1 for all i. Let Ti denotes the time to start the service of resource type i with
the relationship T1 < T2 · · · < TL < TL+1 where TL+1 is the stopping time of the
service of resource type L. Then, it is noted that Ti also represents the stopping
time to make reservation for product type-(i, k), k = i + 1, · · · , L + 1. Assume
that demand rate dji (p, t) for product type-(i, j) at time t is linearly decline with
sales price p and waiting time (Ti − t) where t is the time to make reservation.
That is,
where αij , βij and θij are positive constants. Although the assumption that de-
mand function is linearly dependent on price and waiting time is restrictive. it
has the advantage of providing theoretical solution and simple analysis.
We assume that the service firm rents each unit of the service resource type-i
at the cost ci from the service capacity provider. Since it is not possible that
the demand rate is negative if the sales%j−1 price is larger than the cost, we make a
reasonable assumption that αij − βij m=i ci − θij Ti > 0.
Moreover, suppose the service firm makes a single price change for product
type-(i, j) at time point gij Ti where gij represents a ratio of the time interval
between the time to start reservation and the time to price change to the time
interval between the time to start reservation and the starting time of the service
of resource type-i, Ti . The purpose of the service firm is to maximize the total
profit by determining the initial sales prices, secondary price and the amount of
service resource needed to be rented.
Now, we will develop our formulation. Suppose the service firm initially sets
the sales price of the product type-(i, j) at xji and resets it at yij at time point
gij Ti . Let matrices x = [xji ] and y = [yij ]. Let F (x, y) be the net profit from all
products. Then, we have
L L+1
L
F (x, y) = Rij (xji , yij ) − si ci (2)
i=1 j=i+1 i=1
where Rij (xji , yij ) and si respectively represent the total sales revenue from prod-
uct type-(i, j) and the amount of service resource type-i needed to be rented,
and are respectively given by
+ gij Ti + Ti
Rij (xji , yij ) = xji dji (xji , t)dt + yij dji (yij , t)dt, (3)
0 gij Ti
i +
L+1 gij Ti + Ti
si = ( dji (xji , t)dt + dji (yij , t)dt). (4)
m=1 j=i+1 0 gij Ti
372 P.-S. You
L L+1
F (x, y) = − βij Ti (gij (xji )2 + (1 − gij )(yij )2 )
i=1 j=i+1
L L+1
F (x, y) = − βij Ti (gij (xji )2 + (1 − gij )(yij )2 )
i=1 j=i+1
3 Decision Analysis
In this section, we provide solution procedure to find decisions for the proposed
problem.
Lemma 1. For fixed g, F (x, y) is concave function of x and y.
∂ 2 F (x,y) ∂ 2 F (x,y)
Proof. First, we have ∂(xji )2
= −2βij Ti gij , ∂(yij )2
= −2βij Ti (1 − gij ) and
∂ 2 F (x,y)
∂xji rij
= 0 from which we can show that the Hessian matrix is negative-
definite, thus we have completed the proof.
L L+1
L(x, y, λ, η, u, v) = F (x, y) − λji (−dji (xji , Ti ) + (uji )2 )
i=1 j=i+1
L L+1
− ηij (−dji (yij , Ti ) + (vij )2 ). (7)
i=1 j=i+1
∂L
j−1
= −2βij Ti gij xji + 0.5Ti gij (2αij + θij Ti gij − 2θij Ti ) + Ti βij gij ( cm ) − λji βij
∂xji m=i
= 0, (8)
∂L
= −2βij Ti (1 − gij )yij + 0.5Ti (1 − gij )(2αij − θij Ti (1 − gij ))
∂yij
j−1
+Ti βij (1 − gij )( cm ) − ηij βij = 0, (9)
m=i
∂L
= αij − βij xji − θij Ti − (uji )2 = 0, (10)
∂λji
∂L
= αij − βij yij − θij Ti − (uji )2 = 0, (11)
∂ηij
∂L
= −2λji uji = 0, (12)
∂uji
∂L
= −2ηij vij = 0. (13)
∂uji
Now, we will develop the optimal decisions. First, we will define the following
function.
j−1
kij = (αij − βij cm ))/(θij Ti ). (14)
m=i
Theorem 1. Suppose gij ≤ 2kij − 3. Then the optimal initial sales price and
secondary sales price are respectively given by x̄ji and ȳij where
j−1
x̄ji = 0.25(2αij − θij Ti (2 − gij ))/βij + 0.5 cm , (15)
m=i
j−1
ȳij = 0.25(2αij − θij Ti (1 − gij ))/βij + 0.5 cm . (16)
m=i
Proof. Letting λji = 0, ηij = 0 and solving the equations (8) to (13) gives xji = x̄ji ,
%j−1
yij = ȳij and uji = 0.5αij − 0.5θij Ti − 0.5βij m=i cm − 0.25θij Ti gij ≥ vij = 0.5αij −
% j−1 %j−1
0.5θij Ti − 0.5βij m=i cm − 0.25θij Ti (1 + gij ) ≥ 0.5αij − 0.5θij Ti − 0.5βij m=i cm −
0.25θij Ti (1 + (2kij − 3)) = 0 since vij is decreasing in gij and gij ≤ 2kij − 3. In
%j−1
addition, since x̄ji ≥ 0 and ȳij ≥ 0 by the assumption αij −βij m=i cm −θij Ti ≥ 0.
Thus, we have completed the proof.
Theorem 2. Suppose gij > 2kij − 3. Then the optimal initial sales price and
secondary sales price are respectively given by x̄ji and ŷij where
ŷij = (αij − θij Ti )/βij . (17)
374 P.-S. You
Proof. Letting λji = 0, uji = 0 and solving the equations (8) to (13) gives xji = x̄ji ,
yij = ŷij > 0 by modeling assumption, uji ≥ 0 and ηij = 0.5Ti (1 − gij )(θij Ti gij +
%j−1
3θij Ti − 2αij + 2βij m=i cm )/βij ≥ 0 due to gij > 2kij − 3. Thus, the proof is
completed.
The optimal initial and secondary prices have been developed under fixed
values of [gij ]. Below, we allow g as decision variables and introduce the following
sufficient conditions for optimality.
Theorem 3. Suppose kij ≥ 1.75 for all i, j. Then the optimal initial sales price,
secondary sales price and time ratio are respectively given by x̃ji , ỹij and g̃ij where
j− 1
x̃ji = 0.125(2αij − 3θij Ti )/βij + 0.5 cm , (18)
m=i
j−1
ỹij = 0.5(αij − θij Ti )/βij + 0.5 cm , (19)
m=i
g̃ij = 0.5. (20)
j−1
+0.25Ti (αij − 2βij yij − θij Ti + βij cm )2 gij /βij
m=i
j−1
+0.5Ti (yij − cm )(2αij − 2βij yij − θij Ti ) . (21)
m=i
Taking the first order derivatives with respect to gij and yij gives
∂F (x̄, r̄, g)
= 3/16Ti3 (θij )2 (gij )2 /βij
∂gij
j −1
+0.5(Ti )2 θij (αij − 2βij yij − θij Ti + βij cm )gij /βij
m=i
j−1
+0.25Ti (αij − 2βij yij − θij Ti + βij cm )2 /βij , (22)
m=i
∂ 2 F (x̄, r̄, g)
j−1
2 j j 2 j j j j j
= −0.5(T i ) θ (g
i i ) − T i (αi − 2β y
i i − θ T
i i − β i cm )gij
∂yij m=i
j−1
+0.5Ti (2αij − 2βij yij − θij Ti ) − βij Ti (yij − cm ). (23)
m=i
A pricing Model for a Service Inventory System 375
Equating the (22) and (23) to zero and solving them gives yij = ỹij and
gij = g̃ij . Substituting yij = ỹij into x̄ji , we obtain the optimal initial sales price
is x̃ji . Since 0 ≤ g̃ij < 1, dji (x̃ji , Ti ) ≥ 0 and dji (ỹij , Ti ) ≥ 0, the values of x̃, ỹ, g̃
are optimal decisions if the Hessian matrix is negative definite at the points
of x̃, ỹ, g̃. After a little algebra, we can show that ∂(y ∂2F
j 2
= −Ti βij ,
) y=ỹ,g=g̃
i
∂2F = −3/16(Ti )3 (θij )2 /βij and ∂y∂2F = 0.25(Ti )2 θij from
∂(g j )2
i
y=ỹ,g=g̃ j j
g i i
y=ỹ,g=g̃
which we obtain that the Hessian matrix is negative definite, thus we have com-
pleted the proof.
4 Numerical Examples
To illustrate Theorems 2 to 4, we construct a numerical example with the fol-
lowing parameters: L = 6, ci = 5 for all i and T = (30, 32, 34, 36, 38, 40). In
addition, suppose the parameter of α, β, θ and g are assumed and listed in
Table 1.
(i, j) αij βij θij gij kij (i, j) αij βij θij gij kij (i, j) αij βij θij gij kij
(1,2) 17.2 1.84 0.09 0.1 2.97 (2,4) 16.4 1.06 0.01 0.4 18.19 (3,7) 14.8 0.40 0.06 0.3 3.32
(1,3) 13.2 0.78 0.03 0.2 5.96 (2,5) 10.0 0.31 0.08 0.4 2.07 (4,5) 10.0 1.12 0.04 0.4 3.06
(1,4) 11.6 0.40 0.07 0.4 2.68 (2,6) 17.2 0.53 0.03 0.8 6.79 (4,6) 10.0 0.45 0.08 0.1 1.90
(1,5) 12.4 0.39 0.02 0.2 7.73 (2,7) 16.4 0.36 0.07 0.1 3.32 (4,7) 12.4 0.48 0.03 0.7 4.85
(1,6) 13.2 0.32 0.04 0.8 4.33 (3,4) 12.4 1.20 0.09 0.5 2.10 (5,6) 17.2 1.99 0.06 0.3 3.18
(1,7) 17.2 0.31 0.09 0.1 2.88 (3,5) 13.2 0.75 0.05 0.7 3.34 (5,7) 17.2 0.85 0.10 0.5 2.28
(2,3) 14.0 1.45 0.08 0.2 2.64 (3,6) 16.4 0.58 0.09 0.2 2.51 (6,7) 15.6 1.71 0.07 0.7 2.52
For all cases, we have gij ≤ 2kij −3, thus we concluded from Theorem 2 that x̄
and ȳ are optimal initial and secondary sales prices. Table 2 reveals the optimal
prices for all trips. The application of Table 2 can be interpreted as follows.
For example, for trip-(3, 5), this table displays that x̄53 = 13.06 and ȳ35 = 13.63
are optimal initial and secondary sales prices. Since the time of price change
should be set at time g35 T3 = 34 × 0.7 = 23.8, we derive that the sales prices
$13.06 and $13.63 should be set during time [0, 23.8] and [23.8, 32], respectively.
The illustration of the pricing strategies for other trips are similar to that of
trip-(3, 5).
Substituting x̄ and ȳ in Table 2 into (6), we obtain that the optimal profit is
equal to $8,459.592. In addition, from (3) the optimal amount of capacity needed
to be rented is s = (474.00, 815.53, 1022.15, 1004.07, 971.05, 623.07).
376 P.-S. You
Suppose times to change price are decision variables. Then, since kij > 1.75 for
all (i, j), from Theorem 4 we have g̃ij = 0.5 for all (i, j). In addition, we concluded
that the optimal initial and secondary sales prices are x̃ and ỹ, respectively (See
Table 2). The illustration of this case is similar to that without price change
decision. The optimal profit in this case is $8,487.048.
(i, j) x̄ji ȳij x̃ji ỹij (i, j) x̄ji ȳij x̃ji ỹij (i, j) x̄ji ȳij x̃ji ỹij
(1,2) 6.48 6.84 7.51 6.99 (2,4) 12.62 12.69 16.56 12.62 (3,7) 26.33 27.61 30.13 26.59
(1,3) 12.94 13.23 13.48 13.03 (2,5) 20.33 22.39 22.66 20.53 (4,5) 6.45 6.77 6.79 6.48
(1,4) 19.90 21.21 24.22 20.03 (2,6) 25.68 26.14 28.47 25.55 (4,6) 13.07 14.67 15.35 13.71
(1,5) 25.21 25.59 25.77 25.32 (2,7) 32.32 33.88 39.50 32.94 (4,7) 19.69 20.25 22.87 19.57
(1,6) 32.00 32.94 37.75 31.72 (3,4) 6.71 7.35 8.12 6.71 (5,6) 6.33 6.62 7.16 6.39
(1,7) 38.60 40.78 43.48 39.48 (3,5) 13.06 13.63 16.33 12.95 (5,7) 13.44 14.56 13.01 13.44
(2,3) 6.53 6.97 5.94 6.67 (3,6) 19.26 20.58 23.56 19.66 (6,7) 6.53 6.94 7.55 6.45
5 Conclusion
A mathematical model for simultaneously determining the discount amount and
the regular sales prices for a service renting system is developed. This paper
showed the optimal decision when the time of price changes are prescribed. In
addition, we also found some sufficient conditions for optimality when the times
of price changes are controllable variables.
We have analyzed the proposed problem under some restrictive assumption.
For the model to be more realistic, it may be possible to extend the proposed
model to the case with cancellations. Extension of the proposed model to a case
with cancellation and other applications will be a focus of our future work.
Acknowledgment. The author would like to thank the National Science Council
of the Republic of China for financially supporting this research under Contract
No. 92-2416-H-150-001-.
References
1. Barut, M., Sridharan, V.: Design and evaluation of a dynamic capacity apportion-
ment procedure. Eur J Oper Res. 155 (2004) 112-133
2. Biyalogorsky, E., Carmon, Z., Fruchter, E.G., Gerstner, E.: Research note: Over-
selling with opportunistic cancellations. Mark. Sci. 18 (1999) 605-610
3. Boer, S.V., Freling, R., Piersma, N: Mathematical programming for network rev-
enue management revisited. Eur J Oper Res. 137 (2002) 72-92
4. Cachon, G.P.: The allocation of inventory risk in a supply chain: Push, pull, and
advance-purchase discount contracts. Manage. Sci. 50 (2004) 222-238
A pricing Model for a Service Inventory System 377
1 Introduction
We study the resource-constrained project scheduling problem (RCPSP), de-
noted as m,1|cpm|Cmax using the classification scheme of [9]. The RCPSP can
be stated as follows. In a project network in AoN format G(N ,A), we have a set
of nodes N and a set of pairs A, representing the direct precedence relations.
The set N contains n activities, numbered from 0 to n − 1 (|N | = n). Further-
more, we have a set of resources R, and for each resource type k ∈ R, there is
a constant availability ak throughout the project horizon. Each activity i ∈ N
has a deterministic duration di ∈ IN and requires rik ∈ IN units of resource type
k. We assume that rik ≤ ak for i ∈ N and k ∈ R. The dummy start and end
activities 0 and n - 1 have zero duration and zero resource usage. A schedule S
is defined by an n-vector of start times s(S) = (s0 , . . . , sn−1 ), which implies an
n-vector of finish times f (S) where fi = si + di , ∀ i ∈ N . A schedule S is said to
be feasible if it is nonpreemptive and if the precedence and resource constraints
are satisfied. If none of the activities can be scheduled forwards (backwards) due
to precedence or resource constraints, then the schedule is said to be left-justified
(right-justified). The objective of the RCPSP is to find a feasible schedule that
minimizes the project makespan fn−1 .
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 378–387, 2005.
c Springer-Verlag Berlin Heidelberg 2005
A Bi-population Based Genetic Algorithm 379
Although five different methods are given in the literature [13], a schedule
representation is simply a representation of a priority-structure between the ac-
tivities. For our procedure we use the most frequently used [13] activity list (AL)
representation where a sequence of non-dummy activities λ = [λ1 , . . . , λn−2 ] is
used to determine the priority of each activity. When λp = i, we say that activity
i is at position p in the AL. An activity i has a lower priority than all preceding
activities in the sequence and a higher priority than all succeeding activities. An
AL is said to be precedence-feasible if an activity never comes after the position
of one of its successors (predecessors) in the list used for the generation of a
left-justified (right-justified) schedule. In the current paper, we rely on the topo-
logical ordering (TO) condition [5, 28] for our AL representation. Our version
of the TO condition and its implementation in the AL is described in Table 1,
with p and q the positions of activity i and j in an AL. The table illustrates
that the TO condition and the implementation depends on the justification of
the schedule (left or right). Since the TO condition is based on start and finish
times, and hence uses information from the corresponding schedule, we can only
incorporate the TO condition after the schedule generation. In Sect. 3.3, the
advantages of the TO condition will be illustrated on a project example.
Besides various schedule representations, there exist also two different types
of SGSs in the literature; the serial SGS and the parallel SGS. As it is sometimes
impossible to reach an optimal solution with the parallel SGS [17], we opt for the
serial SGS where all activities are scheduled one-in-a-time and in the sequence
of the AL. Each activity is scheduled as soon (as late) as possible within the
precedence and resource constraints to construct a left-justified (right-justified)
schedule. We introduce the example project depicted in Fig. 1, with a single
renewable resource type with availability a1 = 2. The problem is represented by
an activity-on-the-node network. Corresponding to each activity we depicted the
duration on top of the node and the resource demand below the node. Figure 2
represents a left-justified schedule 1, obtained by applying a serial SGS on the
activity list [1, 2, 8, 5, 3, 4, 6, 7, 9]. The incorporation of the TO-condition on
this schedule, leads to the activity list AL1 , depicted at the bottom of Fig. 2.
380 D. Debels and M. Vanhoucke
elements are chosen randomly, and the element with the lowest makespan is
selected. Afterwards, we determine randomly whether a or b represents the father
Sf . The other parent represents the mother Sm .
ALScomb and correspond to part 1 and part 3 in Scomb . The remaining activities
(i.e. 2, 5, 8 and 4), displayed in white, are copied into ALScomb according to the
sequence of ALSf , i.e. 8, 4, 2 and 5 and represent part 2 in Scomb .
Phase 2: The Construction of a Right-Justified (Left-Justified) Child.
The combined schedule Scomb is often neither a left- or a right-justified sched-
ule. Therefore, we transform this combined schedule into a left-justified (right-
justified) schedule, when the parents belong to RJS (LJS ), using the SGS. This
can be done by running the iterative forward/backward scheduling procedure on
the combined schedule Scomb . In doing so, only improvements can occur for each
part of Scomb . In our example of Fig. 4, we transform Scomb in a right-justified
schedule Sc , resulting in a makespan improvement of 3 time-units for part 1 and
1 time-unit for part 2.
3.4 Diversification
Diversification is necessary in every genetic algorithm to avoid the creation of
a homogeneous population. We use a reactive method that only applies diver-
sification to a child when it comes from two not mutually diverse parents. To
define whether the parents are sufficiently diverse, we need a threshold τ and a
distance measure. Our distance measure simply takes the sum of absolute devi-
ations between the positions in the activity list of the father and the activity list
of the mother for each activity and divides the obtained value by the number of
non-dummy activities as defined in (1). Diversification is desirable if the distance
exceeds the threshold τ and is exerted on ALScomb by randomly swapping the
positions of two activities for nrd times. In our example we calculate a distance
of 2.0 between Sf and Sm as the sum of position differences for all activities is
18 and the number of non-dummy activities is 9.
1
n−2
dist(Sf , Sm ) = |position of i in ALSf − position of i in ALSm | (1)
n − 2 i=1
To be able to compare procedures for the RCPSP, Hartmann and Kolisch [8]
presented a methodology in which all procedures can be tested on the PSPLIB-
datasets by using 1,000 and 5,000 generated schedules as a stop condition. In [14]
Hartmann and Kolisch give an update of the results, and also report on 50,000
schedules as a schedule limit. In Table 2 we compare our algorithm with these
results for the datasets J30, J60 and J120 respectively. The average deviation
from the optimal solution is used as a measure of quality for J30 and the av-
erage deviation from the critical path based lower bound for J60 and J120. For
each dataset the heuristics are ranked by the corresponding deviation for 50,000
schedules. The results for 5,000 and 1,000 schedules are used as a tie-breaker, if
necessary. The table reveals that our procedure is capable to report consistently
good results. For the datasets J60 and J120 it outperforms all other procedures.
A Bi-population Based Genetic Algorithm 385
Only for J30, [11] and [5] report a slightly better result. Furthermore, our pro-
cedure often generates better solutions for the PSPLIB problem instances than
the best solutions found so far (based on PSPLIB results on December 3, 2004,
see http://www.bwl.uni-kiel.de/bwlinstitute/Prod/psplib/datasm.html). As an
example, we obtained 15 improvements for J120 and with a stop condition of
50,000 schedules. In general we conclude that the more challenging the problem-
instances are, the better our procedure performs compared to other procedures.
The optimal values of the population size used for the results of Table 2
and the average CPU-time needed to solve one problem-instance of the dataset
are depicted in Table 3. This table reveals that the population size is positively
related to the schedule limit and negatively related to the number of activities.
The use of a large population avoids, similar to diversification, a homogeneous
population, and this becomes more important for small problem instances and
high values for the stop criterion.
5 Conclusion
In this paper we presented a genetic algorithm for the resource-constrained
project scheduling problem (RCPSP) that operates on two separate popula-
tions. The first population only contains left-justified schedules and the second
population only contains right-justified schedules. Our bi-population genetic al-
gorithm (BPGA) combines schedules of the first population to create children
that are candidate to enter the second population and vice versa. In this way
the procedure is able to exploit the advantages of a local search technique de-
noted as the iterative forward/backward scheduling technique. The comparative
computational results on the well-known PSPLIB dataset illustrated that the
BPGA is currently the best meta-heuristic procedure for the RCPSP.
References
1. Alcaraz, J., Maroto, C.: A robust genetic algorithm for resource allocation in
project scheduling, Annals of Operations Research, 102, 83-109 (2001).
2. Baar, T., Brucker, P., Knust, S.: Tabu-search algorithms and lower bounds for the
resource-constrained project scheduling problem, Meta-heuristics: Advances and
trends in local search paradigms for optimization, 1-8 (1998).
3. Bouleimen, K., Lecocq, H.: A new efficient simulated annealing algorithm for the
resource-constrained project scheduling problem and its multiple mode version,
European Journal of Operational Research, 149, 268-281 (2003).
386 D. Debels and M. Vanhoucke
4. Coelho, J., Tavares, L.: Comparative analysis of meta-heuricstics for the resource
constrained project scheduling problem, Technical report, Department of Civil En-
gineering, Instituto Superior Tecnico, Portugal (2003).
5. Debels, D., De Reyck, B., Leus, R., Vanhoucke, M.: A scatter-search meta-heuristic
for the resource-constrained project scheduling problem, European Journal of Op-
erational Research, forthcoming.
6. Hartmann, S.: A competitive genetic algorithm for the resource-constrained project
scheduling, Naval Research Logistics, 45, 733-750 (1998).
7. Hartmann, S.: A self-adapting genetic algorithm for project scheduling under re-
source constraints, Naval Research Logistics, 49, 433-448 (2002).
8. Hartmann, S., Kolisch, R.: Experimental evaluation of state-of-the-art heuristics
for the resource-constrained project scheduling problem, European Journal of Op-
erational Research, 127, 394-407 (2000).
9. Herroelen, W., Demeulemeester, E., De Reyck, B.: A classification scheme for
project scheduling. In: Weglarz, J. (Ed.), Project Scheduling - Recent Models, Al-
gorithms and Applications, International Series in Operations Research and Man-
agement Science, Kluwer Academic Publishers, Boston, 14, pp. 77-106 (1998).
10. Holland, J.H., 1975. Adaptation in natural and artificial systems. The University
of Michigan Press, Ann Arbor.
11. Kochetov, Y., and Stolyar, A.: Evolutionary local search with variable neighbour-
hood for the resource constrained project scheduling problem, Proceedings of the
3rd International Workshop of Computer Science and Information Technologies
(2003).
12. Kolisch, R., Drexl, A.: Adaptive search for solving hard project scheduling prob-
lems, Naval Research Logistics, 43, 23-40 (1996).
13. Kolisch, R., Hartmann, S.; Heuristic algorithms for solving the resource-constrained
project scheduling problem: classification and computational analysis. In: Weglarz,
J. (Ed.), Project Scheduling - Recent Models, Algorithms and Applications, Kluwer
Academic Publishers, Boston, pp. 147-178 (1999).
14. Kolisch, R., Hartmann, S.: Experimental investigation of Heuristics for resource-
constrained project scheduling: an update, working paper, Technical University of
Munich (2004).
15. Kolisch, R., Sprecher, A.: PSPLIB - A project scheduling library, European Journal
of Operational Research, 96, 205-216 (1996).
16. Kolisch, R.: Project scheduling under resource constraints - Efficient heuristics for
several problem classes, Physica (1995).
17. Kolisch, R.: Serial and parallel resource-constrained project scheduling methods
revisited: theory and computation, European Journal of Operational Research, 43,
23-40 (1996).
18. Kolisch, R.: Efficient priority rules for the resource-constrained project scheduling
problem, Journal of Operations Management, 14, 179-192 (1996).
19. Leon V. J., Ramamoorthy, B.: Strength and adaptability of problem-space based
neighbourhoods for resource-constrained scheduling, OR Spektrum, 17, 173-182
(1995).
20. Li, K.Y., Willis, R.J.: An iterative scheduling technique for resource-constrained
project scheduling, European Journal of Operational Research, 56, 370-379 (1992).
21. Merkle, D., Middendorf, M., Schmeck, H.: Ant colony optimization for resource
constrained project scheduling, IEEE Transaction on Evolutionary Computation,
6(4), 333-346 (2002).
A Bi-population Based Genetic Algorithm 387
22. Nonobe, K., Ibaraki, T.: Formulation and tabu search algorithm for the resource
constrained project scheduling problem (RCPSP). In: Ribeiro, C.C., Hansen,
P. (Eds.), Essays and Surveys in Meta-heuristics, Kluwer Academic Publishers,
Boston, pp. 557-588 (2002).
23. Schirmer, A.: Case-based reasoning and improved adaptive search for project
scheduling, Naval Research Logistics, 47, 201-222 (2000).
24. Tormos, P., Lova, A.: A competitive heuristic solution technique for resource-
constrained project scheduling, Annals of Operations Research, 102, 65-81 (2001).
25. Tormos, P., Lova, A.: An efficient multi-pass heuristic for project scheduling with
constrained resources, International Journal of Production Research, 41, 1071-1086
(2003).
26. Tormos, P., and Lova, A.: Integrating heuristics for resource constrained project
scheduling: One step forward, Technical report, Department of Statistics and Op-
erations Research, Universidad Politecnica de Valencia (2003).
27. Valls, V., Ballestin, F., Quintanilla, S.: A hybrid genetic algorithm for the Resource-
constrained project scheduling problem with the peak crossover operator, Eighth
International Workshop on Project Management and Scheduling, 368-371 (2002).
28. Valls, V., Quintanilla, S., Ballestin, F.: Resource-constrained project scheduling:
a critical activity reordering heuristic, European Journal of Operational Research,
149, 282-301 (2003).
29. Valls, V., Ballestin, F., Quintanilla, S.: A population-based approach to the
resource-constrained project scheduling problem, Annals of Operations Research,
131, 305-324 (2004).
30. Valls, V., Ballestin, F.: Quintanilla, S.: Justification and RCPSP: A technique that
pays, European Journal of Operational Research, Forthcoming.
Optimizing Product Mix in a Multi-bottleneck
Environment Using Group Decision-Making
Approach
1 Introduction
Theory of constraints is a production planning philosophy that focuses on the
constraints (bottlenecks) of the system and tries to improve the throughput of
the system by effective management of bottlenecks. This philosophy was first
introduced in The Goal [1]. Then it was developed in other books [2,3]. Being
a bottleneck in a system means that the system is unable to meet the demands
of all products. So, the product mix should be determined in such a way that
maximum throughput is obtained. When there is more than one bottleneck in
the system, the problem becomes much more complicated. Although many al-
gorithms have been developed in determining the product mix under TOC, all
of them consider only one criterion in decision-making process. The criterion is
resulted from dividing contribution margin of each product in to its processing
time in the bottleneck station. In this paper, late delivery cost is proposed as a
supplement of the above-mentioned criterion. This is a very important criterion
and neglecting it may distort the final solution. Furthermore, this paper uses the
approach of group decision-making in solving product mix problems. It will be
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 388–396, 2005.
c Springer-Verlag Berlin Heidelberg 2005
Optimizing Product Mix in a Multi-bottleneck Environment 389
2 Literature Review
In the early 1990s, the first algorithm on determining product mix under the
theory of constraints was developed and supported by many researchers [4,5].
The algorithm determined the production priority using the ratio of contribu-
tion margin of each product to the processing time in the bottleneck station. At
that time, it was stated that the algorithm could reach the optimum solution
as ILP [4,5]. However, it was revealed that the algorithm was inefficient in han-
dling two types of problems. The first type included problems associated with
adding new product alternatives to an existing production line [6]. The second
type included multi-bottleneck problems in which the algorithm could not reach
the optimum solution. As a remedy for this problem, the concept of dominant
bottleneck was proposed. The dominant bottleneck is the resource that has the
largest difference between its available and required capacity. Using the term
“dominant” causes the scheduler to think that it is the most important bottle-
neck and he should just focus on it. This approach is similar to focusing on local
optimization instead of the global one. In 1997, the first algorithm was revised
[7]. The revised algorithm started with an initial solution and tried to reach the
optimum solution using neighborhood search. But the revised algorithm faced
some disadvantages. Firstly, it examined many alternatives in the neighborhood
search. This caused the algorithm to be time consuming in solving large-scale
problems. Secondly, it was shown that the revised algorithm did not reach the
optimum solution in all cases [8]. Thirdly, the revised algorithm considered the
dominant bottleneck in all decision-making processes and considered other bot-
tlenecks only in order to avoid infeasible solutions. Due to these disadvantages,
the improved algorithm was developed [8]. The first advantage of the improved
algorithm was that the speed of solving problems was independent from the di-
mension of the problem. The improved algorithm started with an initial solution
and then, found the best path to reach the optimum solution with a logical pro-
cedure. This advantage caused the improved algorithm to reach the optimum
solution without wasting time for searching in non-optimal paths. Secondly, the
improved algorithm could reach the optimum solution as ILP. Thirdly, the im-
proved algorithm, avoiding the concept of dominant bottleneck, considered all
bottlenecks in decision-making process. This feature ensured that the final solu-
tion was optimal for the system, not just for the dominant bottleneck. All the
previous algorithms considered only one criterion in determining product mix.
This paper considers a new criterion together with the previous one. The new
criterion is late delivery cost, which is very important in determining product
mix. Also, this paper applies the approach of group decision-making in deter-
mining product mix. Using this approach is unique in the literature of TOC and
product mix determination. It will be shown that the new approach can easily
reach the optimum solution.
390 A.R. Komijan and S.J. Sadjadi
3 New Approach
In product mix problems, the scheduler should first determine the priority of
each product. Then, the product mix will be developed with regard to the pri-
orities. If there is one bottleneck in the system, the production priority will be
easily obtained. It is calculated by dividing contribution margin of each product
(the difference between the selling price and the raw material cost) in to its pro-
cessing time in the bottleneck station. As the resulted product mix is optimal in
view of the bottleneck, it is optimal for the whole system. In a multi-bottleneck
environment, calculating priority becomes complicated. The question is that the
processing time in which bottleneck should be considered. In some of the pre-
vious algorithms, the bottleneck which has the largest difference between its
available and required capacity is assumed as the dominant bottleneck [4,5,7].
This causes the scheduler to consider only the dominant bottleneck and to ig-
nore the importance of other bottlenecks. The product mix obtained regarding
this philosophy will be optimal in view of the dominant bottleneck, not nec-
essarily the whole system. The philosophy of this paper is that all bottlenecks
have significant importance and should be considered in decision-making. Each
bottleneck may lead the scheduler to a different priority sequence. So, the sched-
uler may have several priority sequences that all of them are important. There
is an analogy between this problem and a group decision-making problem. Each
bottleneck in the former corresponds to a decision-maker (DM) in the latter.
So, the product mix problem can be solved using a suitable technique of group
decision-making. In this paper, TOPSIS1 method is applied. Another important
aspect of the paper is that it considers two criteria in decision-making. All of the
previous algorithms considered production priority as the sole criterion. Consid-
ering this criterion is necessary but it is not sufficient. Another criterion which
has a high impact on product mix determination is late delivery cost. These two
criteria should be considered simultaneously. In order to develop the algorithm
and mathematical model, assume a system with n products and m bottlenecks.
Products and bottlenecks are treated as alternatives and decision-makers respec-
tively. So, the product mix problem in a multi-bottleneck environment is a group
decision-making problem consisted of n alternatives, m decision-makers and two
criteria: production priority (X) and late delivery cost (Y ). In the algorithm, i,
j and k denote alternative, criterion and decision-maker respectively.
1
Technique for order preference by similarity to ideal solution.
Optimizing Product Mix in a Multi-bottleneck Environment 391
where aki1 is Xik and aki2 is late delivery cost of product i. It is clear that late
delivery cost of a product is constant and is not dependent to the bottlenecks. For
simplicity, each value of decision matrix is shown as akij .
k
Step 3. The dimensionless decision matrix value rij is calculated as follows:
akij
k
rij = % , i = 1, . . . , n; j = 1, 2, and k = 1, . . . , m. (2)
n k 2
i=1 (aij )
Step 4. The weights vector of DMs is calculated by normalizing the absolute values
of the difference between required and available capacity of each bottleneck. The
vector is shown as (t1 , . . . , tk , . . . , tm ).
Step 5. Given the individual dimensionless decision matrices and the weights vector,
group decision matrix is calculated. Each value of the group decision matrix (gij )
is the weighted average of corresponding values in individual matrices.
Step 6. The weighted group decision matrix value vij is calculated as follows:
vij = gij wj , i = 1, . . . , n, andj = 1, 2, (3)
where wj is the weight of criterion j.
Step 7. In this step, the ideal and negative-ideal solutions are developed. As
production priority and late delivery cost are benefit criteria, the ideal and negative-
ideal solutions are calculated as follows:
A+ = max vi1 , max vi2 = (v1+ , v2+ ), (4)
i i
A− = min vi1 , min vi2 = (v1− , v2− ). (5)
i i
Note that late delivery cost is a profit criterion as the product with the highest
late delivery cost is the most important one for production.
Step 8. The distances of alternatives from the ideal and the negative-ideal solutions
are calculated using Euclidean distance:
,
Si+ = (vij − vj+ )2 i = 1, . . . , n and j = 1, 2, (6)
j
392 A.R. Komijan and S.J. Sadjadi
,
Si− = (vij − vj− )2 i = 1, . . . , n and j = 1, 2. (7)
j
Step 9. The relative closeness of each alternative to the ideal solution is calculated
as follows:
S−
Ci+ = + i − i = 1, . . . , n. (8)
(Si + Si )
Step 10. The weights vector of products is calculated by normalizing the relative
closeness of all products to the ideal solution:
C+
P i = %n i + i = 1, . . . , n. (9)
i=1 Ci
Step 11. In this step, the mathematical model of determining product mix is
developed. In the model, decision variable is defined as the produced units of
product i. The products weights are used as coefficients of variables in objective
function. There are capacity and demand constraints in the model. Also, Zi , Pi ,
tik , CPk and Di are defined as produced units of product i, weight or importance
of product i, processing time of product i in bottleneck k, available capacity of
bottleneck k and market demand of product i respectively.
%n
max i=1 Pi Zi
%n
subject to i=1 tik Zi ≤ CPk k = 1, . . . , m
(10)
Zi ≤ Di i = 1, . . . , n
Zi ≥ 0 and integer i = 1, . . . , n.
4 Example
The new approach is explained through an example. Assume that a factory produces
five products: A, B, C, D and E. Weekly demand, selling price and raw material
cost of the products are shown in table 1. The contribution margin (CM) is the
difference between the selling price and the raw material cost of each product. The
factory uses four resources: shear, notch, pierce and bend. The processing time
of each product in each station is presented in table 2. Assume that late delivery
costs of products A to E are 3, 5, 3, 4 and 5 dollars respectively. For example, if
the factory can not deliver 10 units of product A, 3 × 10 dollars should be paid.
In other words, for each unit of A that can not be produced, 3 dollars should be
paid.
Table 1. Weekly demand, selling price and raw material cost of each product
Resources
Product Shear Notch Pierce Bend
A 20 10 20 20
B 20 40 10 5
C 20 10 5 10
D 20 30 22 40
E 0 40 40 0
Available capacity 2400 2400 2400 2400
Required capacity 3400 4300 3170 2300
Difference -1000 -1900 -770 100
In fact, the first DM assigns score 4.5 to the product C. In other words, product
C has the highest priority in view of the first DM when criterion X is considered.
In the same way, the production priority in view of notch and pierce are developed.
Product A B C D E Product A B C D E
Xi2 8 1.75 9 2.8 1.75 Xi3 4 7 18 3.82 1.75
where each row represents the product A, . . . , E, the first and the second columns
are associated with the production priority and the late delivery cost, respectively.
394 A.R. Komijan and S.J. Sadjadi
Step 4. As shown in table 2, the difference between required and available capacity
of bottlenecks are 1000,1900 and 770 minutes. After normalizing these values, the
weights vector of DMs is developed as (0.2725, 0.5177, 0.2098).
Step 5. In order to combine the individual opinions and to develop group decision
matrix, weighted average technique is applied. Each value of the group decision
matrix is the weighted average of corresponding values in individual matrices.
⎡ ⎤
0.504129 0.327327
⎢ 0.261957 0.545545 ⎥
⎢ ⎥
G=⎢ ⎢ 0.707597 0.327327 ⎥
⎥
⎣ 0.295442 0.436436 ⎦
0.090063 0.545545
Step 6. In this problem, it is assumed that X and Y have the same importance.
Therefore, the weights vector of criteria is (0.5, 0.5). The weighted group decision
matrix is calculated as follows:
⎡ ⎤ ⎡ ⎤
0.504129 0.327327 0.252065 0.163663
⎢ 0.261957 0.545545 ⎥ ⎢ 0.130979 0.272772 ⎥
⎢ ⎥ 0.5 0 ⎢ ⎥
⎢
V = GW ⎢ 0.707597 0.327327 ⎥ ⎥ =⎢ ⎥
0 0.5 ⎢ 0.353798 0.163663 ⎥
⎣ 0.295442 0.436436 ⎦ ⎣ 0.147721 0.218218 ⎦
0.090063 0.545545 0.045032 0.272772
Step 7. As X and Y are benefit criteria, ideal and negative-ideal solutions are
developed as follows:
A+ = {0.353798, 0.272772} and A− = {0.045032, 0.163663}.
Step 8. The distances of alternatives from the ideal and the negative-ideal solutions
are calculated as follows:
+ + + + +
SA = 0.14918 SB = 0.22282 SC = 0.109109 SD = 0.213176 SE = 0.308767
− − − − −
SA = 0.207033 SB = 0.138894 SC = 0.308767 SD = 0.116281 SE = 0.109109
Optimizing Product Mix in a Multi-bottleneck Environment 395
+ + +
CA = 0.581207 CB = 0.383989 CC = 0.738896
+ +
CD = 0.352947 CE = 0.261104
Step 10. The relative closeness values show the importance of alternatives (prod-
ucts). These values can be used in developing the objective function of an integer
linear programming model. It is better to normalize them before using in objective
function. The normalized values are the real priorities of products, which have
been obtained considering all bottlenecks and criteria. The normalized relative
closeness values are as follows:
The optimum solution resulted from the above model is 50A, 70C and 26E. This
is the product mix proposed by the new approach.
5 Conclusion
There have been developed several algorithms on determining product mix under
TOC. The first algorithm was inefficient in handling multi-bottleneck problems.
It could not reach the optimum solution in all cases. Due to the inefficiency of
the first algorithm, the revised algorithm was developed. Its logic was based on
reaching an initial solution and trying to improve it using neighborhood search.
The main disadvantage of these algorithms was in defining dominant bottleneck.
These algorithms focused on dominant bottleneck and ignored the importance of
other bottlenecks. The product mix resulted from these algorithms was optimal in
view of the dominant bottleneck, not necessarily the whole system. In late 2004, an
improved algorithm was developed. The improved algorithm had the advantage
of reaching optimum solution. Another advantage of the improved algorithm was
396 A.R. Komijan and S.J. Sadjadi
that it did not waste time in non-optimal paths. All the algorithms discussed,
considered the profitability of bottleneck as the only criterion of decision-making.
This paper considers late delivery cost as a new criterion together with the previous
one. Considering these two criteria will lead to more reliable results. Also, this
paper benefits from the advantage of using the approach of group decision-making
in determining product mix. This is the result of focus shift from the concept
of dominant bottleneck to considering all bottlenecks in decision-making. Using
the new approach can easily lead to the optimum solution and does not need
neighborhood search.
References
1. Goldratt, E. M.: The Goal. Croton-on-Hudson, NY:North River Press (1984)
2. Goldratt, E. M.: Theory of Constraints. Croton-on-Hudson, NY:North River Press
(1990)
3. Goldratt, E. M.: The Haystack Syndrome. Croton-on-Hudson, NY:North River Press
(1990)
4. Luebbe,R.,Finch,B.:TheoryofConstraintsandLinearProgramming:AComparison.
International Journal of Production Research, 30 (1992) 1471–1478
5. Patterson, M.C.: The Product-Mix Decision: A Comparison of Theory of Constraints
and Labor-Based Management Accounting. Production and Inventory Management
Journal, 33 (1992) 80–85
6. Lee, T.N., Plenert, G.: Optimizing Theory of Constraints when New Product
Alternatives Exist. Production and Inventory Management Journal 34 (1993) 51–57
7. Fredendall, L.D., Lea, B.R.: Improving the product Mix Heuristic in the Theory of
Constraints. International Journal of Production Research, 35 (1997) 1535–1544
8. Aryanezhad, M.B., Komijan, A.R.: An Improved Algorithm for Optimizing Product
Mix under the Theory of Constraints, International Journal of Production Research
42 (2004) 4221–4233
Using Bipartite and Multidimensional Matching
to Select the Roots of a System of
Polynomial Equations
1 Introduction
Consider a system of two polynomial equations
with numerical constants, and of low degree say ≤ 6. Assume that of this system
it is known that the number of solutions in C is finite. Solving this system, using
floating point arithmetic, is no problem for a computer algebra system, say
MAPLE c . In general the calculations consist of two steps. First, with symbolic
computations, a Groebner basis or resultants are calculated, and as a second step
numerical calculations take place. For testing and prototyping this approach is
very useful.
In this article a different situation is considered, that is, we assume that some
of the constants in (1) are symbolic and we assume that (1) has to be solved
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 397–406, 2005.
c Springer-Verlag Berlin Heidelberg 2005
398 H. Bekker, E.P. Braad, and B. Goldengorin
for many thousands of problem instances per second for different values of the
symbolic constants. Then, for the sake of speed, one is forced to program the al-
gorithms in a conventional programming language, say C 1 . It is not acceptable,
however, to copy the complete process as performed by the computer algebra
system into C because the symbolic computations may be very time consuming,
even in C. Therefore, the symbolic computations should be performed in a pre-
processing phase by the computer algebra system, and the resulting equations
should, for every problem instance, be solved by numerical methods implemented
in C.
The problems mentioned in 1 are the hardest to detect and to handle. When
this is not done properly, solutions may be lost or may be completely wrong.
None of the problems in 1,2,3 can be foreseen, prevented or solved during the
1
Of course, instead of MAPLE and C every other computer algebra system and
programming language may be used.
Using Bipartite and Multidimensional Matching to Select the Roots 399
preprocessing stage, they have to be dealt with during the numerical calculations.
On the other hand, none of these problems is insurmountable. For example, when
the problem in 1 occurs, in general the substitution u = x+y, v = x−y gives non-
degenerate equations. Also, by using exact computations, interval arithmetic or
floating point filters the problem in item 2 can be avoided, and by bookkeeping
properly the problem in item 3 is solved. However, apart from the speed penalty
introduced by these techniques, the complexity of the implementation increases
significantly by these measures. Moreover, every new set of equations (1) should
be analysed, possible degeneracies should be signalled, and appropriate measures
should be devised and implemented to handle these degeneracies. The method
we propose avoids these complications. It is simple and robust, and most of all
it is universal, i.e. no problem specific programming is required. It only assumes
that two univariate polynomials p(x) and q(y) can be derived from (1), and it
uses the minimum weight perfect bipartite matching algorithm.
For more than two equations a more general combinatorial optimization tech-
nique is required namely the multidimensional assignment method. Recently a
new algorithm for this problem has been proposed [1,2] and in the last section
it is discussed to which extent it may be used for more than two equations. Be-
cause the crucial part of our method is a combinatorial optimization technique
we call it the CORS method, which stands for Combinatorial Optimization Root
Selection method.
Literature. The CORS method is not mentioned in the literature. In [3] a
method is discussed that avoids part of the problems in 1,2, and 3, but it only
works for exact arithmetic. Essence of that method is that the root yj , matching
the root xi , is found by substituting xi in (1), and to calculate of these equations
the greatest common devisor (GCD) with for example Euclid’s algorithm. The
root of the GCD is the desired value yj .
Packages. Some numerical packages in C exists to solve (1) as for example
SYNAPS [4]. The disadvantage of these packages is however that the symbolic
computations are not handled in a preprocessing phase, which results in a sig-
nificant decrease of the performance, but most of all, sometimes solutions are
missed due to the problems mentioned earlier.
Not in this article. This article is not about a numerical method to obtain
more precise results. It is about robustness. Solutions that are missed by other
methods are found with the CORS method.
Article structure. In section 2 the minimum weight perfect bipartite matching
is introduced and it is shown how this may be used to select roots. In section
3 the implementation and the results of CORS are discussed. In section 4 it is
discussed how the CORS method may be generalized to more than two equations.
–3 –2 –1 1 2 3 4
x
–1
–2
–3
Fig. 1. The conventional method to solve (1). Lower part: the univariate polynomial
p(x) plotted logarithmically (in order to limit the dimension in the y direction). The
local minima represent the roots of p(x). Upper part: the curves f (x, y) and g(x, y), and
vertical lines at positions corresponding with the roots of p(x). To find the intersections
of the curves, for every vertical line the intersections with the curves are calculated and
identical y-values are selected. For more details see the main text
3 3
f (x, y) = (x − a) + (y + b) − 5 (x − a) (y + b) − c = 0
2 2
g(x, y) = (0.3 x − d) + (y − e) − h = 0 (2)
a1 u2 w2 + b1 u2 w + c1 uw2 + d1 u2 + e1 w2 + f1 u + g1 w + h1 = 0
a2 u2 w2 + b2 u2 w + c2 uw2 + d2 u2 + e2 w2 + f2 u + g2 w + h2 = 0. (3)
Here, a1 ..h1 and a2 ..h2 are real constants, as they occur in the computational
geometry problem.
V1 V2 V1 V2 V1 V2
1.4 1.4
0.5 0.5
1.2 1.2
0.7 0.7
0.2
(some edges are omitted) Total weight: 3.7 Total weight: 3.3
Fig. 2. Left: a weighted bipartite graph G with four vertices in V1 and in V2,
and with seven arcs. Middle: a possible matching of G. Right: the minimum weight
matching of G
402 H. Bekker, E.P. Braad, and B. Goldengorin
–2 2 4
x
–1
–2
–3
Fig. 3. The CORS method explained graphically. The figure consists of three parts.
Lower part: the univariate polynomial p(x) plotted logarithmically. The five local min-
ima represent the roots of p(x). The root at x = 0.912 is a double root. Left part: the
univariate polynomial q(y) plotted logarithmically. The five local minima represent the
roots of q(y). The root at y = −0.797 is a double root. Main part: the curves f (x, y) and
g(x, y). The vertical lines are at positions corresponding with the roots of p(x) and the
horizontal lines are at positions corresponding with the roots of q(y). The intersections
of the curves are found by intersecting the horizontal lines with the vertical lines and
selecting from all 36 intersections six intersections. The selection process is performed
by calculating the minimum weight perfect bipartite matching. For more details see
the main text
roots in C of p(x) and q(y) are calculated numerically. Both p(x) and q(y) have
n roots represented by x1 ..xn and y1 ..yn respectively. These roots are used to
calculate n2 weights, where wi,j is defined as
wi,j = (|(f (xi , yj ))2 | + |(g(xi , yj ))2 |). (4)
Tests. We tested the CORS1 and CORS2 method on (2) and on (3). Only the
results of the latter problem are presented here, the results of (2) are similar.
Every problem instance is solved in two ways: with the CORS method and with
SYNAPS, a C++ package for solving polynomial equations. We solved 105 prob-
lem instances with CORS and SYNAPS, and ≈ 400 with MAPLE. The latter
problem instances were solved correctly by CORS and were missed by SYNAPS,
i.e. we use MAPLE to decide whether CORS or SYNAPS gave the correct result.
Results. In general the results of CORS1 and CORS2 are identical. In the tests
approximately 2.4% of the solutions is missed by SYNAPS and are found by
CORS. This is confirmed by solving these problem instances with MAPLE. No
solutions were missed by CORS. The average error of the solutions found by
SYNAPS is 1.3 10−10 and of CORS 6.5 10−11 . Running 105 problem instances
with CORS takes 14 sec. and with SYNAPS 475 sec.
404 H. Bekker, E.P. Braad, and B. Goldengorin
(i) if θ0 ∈
/ P, then w(θ0 ) + b(θ0 ) ≤ w(π0 ).
(ii) if Q0 = {θ : w(θ) = w(θ0 )} and u(i, j) > 0 for all (i, j) ∈ θ0 then |Q0 | = 1.
(iii) if u(i, j) > 0 for (i, j) ∈ α ⊂ θ0 and u(i, j) = 0 for (i, j) ∈ θ0 \α, then |Q0 | > 1
and | ∩ Q0 | = |α|. and can be outlined as follows.
Based on these properties of the RLAP, the LAP may be solved using the
following tolerance based algorithm
Using Bipartite and Multidimensional Matching to Select the Roots 405
1. Find θ0 .
2. If θ0 ∈ P, then π0 = θ0 , and output π0 with w(π0 ), stop.
3. Find b(θ).
4. If b(θ) = u[i, j1 (i)], then replace in θ0 the arc [i, j1 (i)] by the arc [i, j2 (i)];
otherwise ( if b(θ) = l[i1 (j), j]) replace in θ0 the arc [i1 (j), j1 (i1 (j))] by the
arc [i1 (j), j].
5. Return to step 2.
Note that for CORS2, after each iteration of the TBA for solving the LAP, the
current number of vertices j ∈ V2 with d(j) = 1 will be increased by at least one
vertex. Hence, the time complexity of the TBA is O(n3 ).
In the following example we illustrate the TBA for the complete weighted
bipartite graph below
8 16384 256 4096
2 16 4 64
(5)
512 32768 128 32
1 1024 8192 2048
1.θ0 = {(1, 1), (2, 1), (3, 4), (4, 1)};2.θ0 ∈/ P;3.b(θ) = 14;4.b(θ) = l(2, 2),replace
ininθ0 thearc(2, 1)by(2, 2).5.Returntostep2.2.θ0 = {(1, 1), (2, 2), (3, 4), (4, 1) ∈ / P;
3. b(θ) = 248; 4. b(θ) = u(1, 1), replace in in θ0 the arc (1, 1) by (1, 3); 5. Return
to step 2. 2. θ0 = {(1, 3), (2, 2), (3, 4), (4, 1) ∈ P, then π0 = θ0 , and output π0 with
w(π0 ) = 305, stop.
This tolerance based algorithm may be generalized to more than two dimensions
as follows. In case of d-DMP V = ∪di=1 Vi , |Vi | = n, the set of arcs e ∈ E ⊆ ⊗di=1 Vi
with weights w(e) for all e ∈ E, and the in-degree d(j) for all arcs (i, j) will be defined
similarly to the 2-DMP with replacing V2 by V2 which is a projection of the ⊗di=2 Vi
on V2 . If the objective function of d-DMP is to minimize the maximim error of all
n matched roots, then TBA has O((d − 1)n3 ) time complexity.
Currently we are implementing the multidimensional tolerance based matching
algorithm, and we will test it on a system of three polynomial equations. For the 3D
case we can not use Sylvester resultants to calculate the univariate polynomials p(x),
q(y) and r(z), we have to use a multiresultant method. These are widely available.
No other algorithms are required to test the CORS method on three polynomial
equations.
The CORS method is only suitable for systems of d equations with N solutions
with small d and small N . That is because the number of arcs in the graph G is N d .
We think that the CORS method is efficient for d ≤ 3 and N ≤ 20, and may be
used to analyze a system of equations with d ≤ 5 and N ≤ 30. Probably, for larger
systems the overhead will be unacceptable.
Manyproblemsinengineeringandtechnologyboildowntosolvingasmallsystem
of polynomial equations. Using the CORS method, only simple univariate equations
have to be solved. Selecting the correct roots with a combinatorial optimization
method proves to work well. In this way the user does not have to worry about
degeneracies and other complications.
References
[1] Goldengorin, B., Sierksma, G. Combinatorial optimization tolerances calculated in
linear time. SOM Research Report 03A30, University of Groningen, Groningen, The
Netherlands, 2003(http://www.ub.rug.nl/eldoc/som/a/03A30/
03a30.pdf).
[2] Goldengorin, B., Sierksma, G., and Turkensteen, M. Tolerance Based Algorithms for the
ATSP. Graph-Theoretic Concepts in Computer Science. 30th International Workshop,
WG 2004, Bad Honnef, Germany, June 21-23, 2004. Hromkovic J., Nagl M., Westfechtel
B. (Eds.). Lecture Notes in Computer Science Vol. 3353, pp. 222-234, 2004.
[3] Sederberg, T., W., Zheng, J. Algebraic methods for computer aided geometric design
in Handbook of computer aided geometric design Farin, G., Hoschek, J., Kim, M., S.,
(Eds.), North-Holland Elsevier (2002) p. 378.
[4] Synaps. Available at: http://www.inria.fr/galaad/logiciels/synaps/inex.html
[5] Bekker,H.,Roerdink,J.B.T.M.Calculatingcriticalrotationsofpolyhedraforsimilarity
measure evaluation. Proceedings of IASTED International conference on Computer
Graphics and Imaging, Palm springs, October 1999.
[6] Press, W. H., Flannery, B. P., Teukolsky, S. A., and Vetterling, W. T. Numerical Recipes
in C++, the Art of Scientific Computing. Cambr. Univ. Press, New York.
[7] K. Melhorn, Näher, S. LEDA A Platform for Combinatorial and Geometric Computing.
Cambridge University press,Cambridge. 1999
[8] Burkard, R.E. Slected topics on assignment problems. Discrete Applied Mathematics
123 (2002) 257–302.
Principles, Models, Methods, and Algorithms for
the Structure Dynamics Control in Complex
Technical Systems
1 Introduction
The main subject of our investigation is complex systems. By complex systems
we mean systems that should be studied through polytypic models and combined
methods. In some instances investigations of complex systems require multiple
methodological approaches, many theories and disciplines, and carrying out in-
terdisciplinary researches. Different aspects of complexity can be considered to
distinguish between a complex system and a simple one, for example: structure
complexity, operational complexity, complexity of behavior choice, complexity
of development [1,4,5,6].
Classic examples of complex systems are: control systems for various classes
of moving objects such as surface and air transport, ships, space and launch
vehicles, etc, geographically distributed heterogeneous networks, flexible com-
puterized manufacturing.
One of the main features of modern complex technical systems (CTS) is the
changeability of their parameters and structures due to objective and subjective
causes at different stages of the CTS life cycle. In other words we always come
across the CTS structure dynamics in practice. Under these conditions to in-
crease (stabilize) CTS potentialities and capacity for work a structure control is
to be performed. Reconfiguration is a widely used variant of the CTS structure
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 407–416, 2005.
c Springer-Verlag Berlin Heidelberg 2005
408 B.V. Sokolov, R.M. Yusupov, and E.M. Zaychik
In real situation a single-resource failure can cause failures of some other re-
sources or can reduce their efficiency. At that a substitution for a faulty resource
may necessitate completely new efficient configurations of CTS.
The following intermediate conclusions can be considered now [11-13,15]:
model and multi-criteria approaches; the principle of new problems. The dynamic
interpretation of structure-dynamics control processes lets apply the results, previ-
ously received in the theory of dynamic systems stability and sensitivity, for CTS
analysis problems.
The multiple-model description of CTS structure-dynamics control processes is
the base of comprehensive simulation technologies and of simulation systems. We
assume the simulation system to be a specially organized complex. This complex
consists of the following elements: simulation models (the hierarchy of models);
analytical models (the hierarchy of models) for a simplified (aggregated) description
of objects being studied; informational subsystem that is a system of data bases
(known ledge bases); control-and-coordination system for interrelation and joint
use of previous elements and interaction with the user (decision-maker).
The components of the simulation system were the main parts of the developed
program prototypes during our investigation. The processes of AMO structure-
dynamics control are hierarchical, multi-stage and multi-task ones. The structure
of simulation system (SIS) models conforms the features of control processes.
The simulation system also includes: system of control, coordination and inter-
pretation containing user interface and general control subsystem, local systems
of control and coordination, subsystem of data processing, analysis, and inter-
pretation for planning, control and modeling, subsystem of modeling scenarios
formalization, subsystem of software parametric and structural adaptation, sub-
system of recommendations producing for decision-making and modeling. The
data-ware includes databases for AMO states, for AMO CS states and general
situation, for SO states and data bases for analytical and simulation models of
decision-making and of AMO CS functioning.
Existence of various alternative descriptions for CTS elements and control sub-
systems gives an opportunity of adaptive models selection (synthesis) for program
412 B.V. Sokolov, R.M. Yusupov, and E.M. Zaychik
control under changing environment. During our investigations the main phases
and steps of a program-construction procedure for optimal structure-dynamics
control in CTS were proposed.
At the first phase forming (generation) of allowable multi-structural macro-
states is being performed. In other words a structure-functional synthesis of a new
CTS make-up should be fulfilled in accordance with an actual or forecasted situa-
tion. Here the first-phase problems come to CTS structure-functional synthesis.
The general algorithm of the CTS structure-functional synthesis includes the
following main steps.
Step 1. Gathering, analysis, and interrelation of input data for the synthesis of
CTS multi-structural macro-states. Construction or correction of the appropriate
models.
Step 2. Planning of a solving process for the problem of the CTS macro-states
synthesis. Estimation of time and other resources needed for the problem.
Step 3. Construction and approximation of an attainability set (AS) for dynamic
control system. This set contains indirect description of different variants of CTS
make-up (variants of CTS multi-structural macro-states).
Step 4. Orthogonal projection of a set defining macro-state requirements to AS.
Step 5. Interpretation of output results and their transformation to a convenient
form for future use (for example, the output data can be used for construction of
adaptive plans of CTS development).
Step 1. Input data for the problem are being prepared and analyzed in an inter-
active mode. During this step a structural and parametric adaptation of models,
algorithms, and special software tools of simulation system (SS) (see the structure
of SIS in second interim report) is being fulfilled to the past and to the current
states of the environment, of object-in-service, of control subsystems embodied in
existing and developing CTS. For missed data simulation experiments with SIS
models or expert inquest can be used.
Step 2. Planning of comprehensive modeling of adaptive CTS control and develop-
ment for the current and forecasted situation; planning of simulation experiments
in SS; selection of models, selection of model structure; determination of methods
and algorithms for particular modeling problems, selection of models and model
structure for this problems; estimation of necessary time.
Step 3. Generating, via comprehensive modeling, of feasible variants of CTS
functioning in initial, intermediate, and required multi-structural macro-states;
Principles, Models, Methods, and Algorithms for the Structure Dynamics 413
One of the main opportunities of the proposed method of CTS SDC program
construction is that besides the vector of program control we receive a preferable
multi-structural macro-state of CTS at final time. This is the state of CTS reliable
operation in the current (forecasted) situation.
The combined methods and algorithms of optimal program construction for
structure-dynamics control in centralized and non-centralized modes of CTS op-
eration were developed too. The main combined method was based on joint use
of the successive approximations method and the ”branch and bounds” method.
A theorem characterizing properties of the relaxed problem of CTS SDC opti-
mal program construction was proved for a theoretical approval of the proposed
method. An example was used to illustrate the main aspects of realization of the
proposed combined method.
Classification and analysis of perturbation factors having an influence upon
operation of a complex technical system were performed. Variants of perturbation-
factors descriptions were considered for CTS SDC models. In our opinion, a com-
prehensive simulation of uncertainty factors with all adequate models and forms of
description should be used during investigation of CTS SDC. Moreover, the abil-
ities of CTS management should be estimated both in normal mode of operation
and in emergency situations. It is important to estimate destruction ”abilities”
of perturbation impacts. In this case the investigation of CTS functioning should
include the following phases:
Algorithms of parametric and structural adaptation for CTS SDC models were
proposed. The algorithms were based on the methods of fuzzy clusterization, on
the methods of hierarchy analysis, and on the methods of a joint use of analytical
and simulation models.
The SDC application software for structure-dynamics control in complex tech-
nical systems was developed.
Operability of the software was shown for a space navigation system. The soft-
ware was applied to construction of control programs for ground-based elements of
the system and for navigation spacecrafts structure-dynamics. The considered sys-
tem is a part of a space-facilities control system that is a classic example of CTS. A
multiple-model description of the system, scheduling algorithms for ground-based
technical facilities, and algorithms of structure-dynamics control for orbital system
of navigation spacecrafts were developed.
The main distinguishing feature of the models and algorithms is the dynamic
interpretation of operations within technological control loop of navigation space-
crafts. The dynamic interpretation of operations resulted in essential reduction of
scheduling problem dimensionality and in advantages of the proposed algorithm
because of its connectivity decrease. The problem dimensionality is determined by
the number of independent paths in a network diagram of navigational ground-
based-control-complex (GCC) operations and by current space-time, technical
and technological constraints. In its turn, the degree of algorithmic connectivity
depends on a dimensionality of the main and the conjugate state vectors [11]. If
the vectors are known then the schedule calculation may be resumed after removal
of appropriate constraints. Analysis of the proposed models, and algorithms and
computational experiments with the developed application software showed that
rational (optimal) scheduling of navigational GCC operations raises the total ca-
pacity of the control system, reduces delays in control loops, and prevents peak
information loads caused by alteration of system’s structure. Besides, the dynamic
interpretation of GCC operation establishes a relationship between the control
technology and the practical results of system’s use (characteristics of naviga-
tional field). This relationship gives an opportunity of efficient control technology
development for space navigation systems.
3 Conclusion
Methodological and methodical basis of the theory of CTS structure-dynamics
control is developed by now. This theory can be widely used in practice. It has
interdisciplinary basis provided by classic control theory, operations research,
Principles, Models, Methods, and Algorithms for the Structure Dynamics 415
artificial intelligence, systems theory and systems analysis. The dynamic inter-
pretation of CTS reconfiguration process provides strict mathematical base for
complex technical-organizational problems that were never formalized before and
have high practical importance [11-14]. The proposed approach to the problem
of CTS structure reconfiguration control in the terms of general context of
CTS structural dynamics control enables: common goals of CTS functioning
to be directly linked with those implemented (realized) in CTS control process,
a reasonable decision and selection (choice) of adequate consequence of problems
solved and operations fulfilled related to structural dynamics to be made (in other
words to synthesize and develop the CTS control method), a compromise distri-
bution (trade-off) of a restricted resources appropriated for a structural dynamics
control to be found voluntary.
This work was supported by European Office of Aerospace Research and De-
velopment (Project 1992p), Russian Foundation for Basic Research (grant 02-07-
90463), Institute for System Analysis RAS (project 2.5).
References
1. Casti, J.L.: Connectivity, Complexity and Catastrophe in Large-Scale Systems.
Wiley-Interscience, New York and London. (1979)
2. Doganovskii, S.A., Oseranii, N.A.: Automatic Restructurable Control Systems .
Measurement, Check, Automation 90 (1990), N 1, 62–80 (in Russian).
3. Intelligent Control Systems: Theory and Applications. / Eds. M.M. Gupta, N.K.
Sinka. N.Y.: IEEE Press. (1996).
4. Klir, G.J.: Architecture of Systems Problem Solving. Plenum Press, New York.
(1985).
5. Mesarovic, M.D., Takahara, Y.: General Systems Theory: Mathematical Founda-
tions. Academic Press, New York, Can Francisco, London. (1975)
6. Moiseev, N.N.: Elements of the Optimal Systems Theory. Nauka, Moscow. (1974)
(in Russian).
7. Napolitano, M.R., Swaim, R.L.: An Aircraft Flight Control Reconfiguration Algo-
rithm // Proc. AIAA Guidance, Navigation and Control Conf. Pt 1. (1989) 323–332
8. Napolitano, M.R., Swaim, R.L.: A New Technique for Aircraft Flight Control Recon-
figuration // Proc. AIAA Guidance, Navigation and Control Conf. (1989) 323–332
9. Russell, S.J., Norvig, P.: Artificial Intelligence: A Modern Approach. Prentice-Hall
Inc., a Simon and Schuster Company, Upper Saddle River, New Jersey (1995)
10. Shannon, R.E.: Systems Simulation. Prentice-Hall Inc., Englewood Cliffs, New Jer-
sey. (1975)
11. Sokolov, B.V., Kalinin V.N.: Multi-model Approach to the Description of the Air-
Space Facilities Control Process. Journal of Computer and System Sciences Internat.
(1995), N 1, 149–156. (USA).
12. Sokolov, B.V., Yusupov, R.M.: Complex Simulation of Automated Control System of
Navigation Spacecraft Operation. Journal of Automation and Information Sciences.
34 (2002), N 10, 19–30. (USA).
13. Sokolov, B.V. Yusupov, R.M.: Conceptual Foundations of Quality Estimation and
Analysis for Models and Multiple-Model Systems. Journal of Computer and System
Sciences Internat. (2004), N 6 (accepted for publication in USA).
416 B.V. Sokolov, R.M. Yusupov, and E.M. Zaychik
14. Sokolov, B.V., Arkhipov, A.V., Ivanov, D.A.: Intelligent Supply Chain Planning in
’Virtual Organization’ // Proc. PRO-VE’04 5th IFIP Working Conference on Virtual
Enterprises, France, Toulouse, August, 22-27, 2004. 8 (2004), Part 8, 215–224.
15. Sokolov, B.V.: Dynamic models of comprehensive scheduling for ground-based facili-
ties communication with navigation spacecrafts // Preprints 16th IFAC Symposium
on Automatic Control in Aerospace, Saint-Petersburg, Russia. June 14-18, 2004. 1
(2004), 262–267.
16. Tsurlov, V.I.: Dynamic Problems of large Dimension. Nauka, Moscow (1989) (in
Russian). Yusupov, R., Rozenwasser E.: Sensitivity of Automatic Control Systems.
CRS. Press, London, New York (1999)
Applying a Hybrid Ant Colony System to the
Vehicle Routing Problem
1 Introduction
Vehicle routing problem (VRP) has been largely studied because of the interest
in its application in logistic and supply chains management. In the VRP, a
fleet of K identical vehicles delivers goods to N customers whose demands are
known. Each vehicle route starts and ends at the central depot. All vehicles have
the same capacity and the maximum service time constraints. Each customer
must be visited once by exactly one vehicle. The objective of the VRP is to
minimize the total distance and/or the number of vehicles. The VRP has been
proved to a NP-hard problem. Many researchers have used heuristic approaches
to solve the VRP according to artificial intelligence, biological evolution and/or
physics phenomenon, such as Simulated Annealing (SA) (Robuste et al., 1990;
Alfa 1991; Osman, 1993; Breedam, 1995), Genetic Algorithms (GA) (Baker and
Ayechew, 2003; Jaszkiewicz and Kominek, 2003), Tabu Search (TS) (Osman,
1993; Taillard, 1993; Rochat and Taillard, 1995; Rego and Roucairol, 1996; Xu
and Kelly, 1996; Rego, 1998; Barbarrosoglu and Ozgur, 1999), and Ant System
(AS) (Bullnheimer et al., 1998; Bullnheimer et al., 1999).
Ant algorithm is a new distributed meta-heuristic first introduced by Colorni
et al. (1991). Dorigo et al. (1996) reported the ant system (AS) to solve the
traveling salesman problem (Dorigo and Gambardella, 1997), the quadratic as-
signment problem (Maniezzo et al., 1994) and the job-shop scheduling (Colorni
et al. 1994). Dorigo and Gambardella (1997) developed the ant colony system
(ACS) to improve the performance of AS. They used a different state transi-
tion rule and added a local pheromone updating rule. Although ant algorithm
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 417–426, 2005.
c Springer-Verlag Berlin Heidelberg 2005
418 C.-H. Chen, C.-J. Ting, and P.-C. Chang
(τij )α (ηij )β
V : Pij = % (2)
(τij )α (ηij )β
j∈U
where U is the set of nodes which are not visited yet, τij is the pheromone level
of edge (i, j), ηij denotes the savings of combining two nodes i and j on one tour
Applying a Hybrid Ant Colony System to the Vehicle Routing Problem 419
as opposed to serving them on two different tours. Thus, the ηij is calculated as
follows:
ηij = di0 + d0j − dij (3)
where dij denotes the distance between nodes i and j, and the index 0 is the
depot; and α, β are the parameters that determine the relative influence of
pheromone versus distance (α, β > 0). Moreover, q is a random number following
uniform distribution in [0, 1], and q0 is a pre-defined parameter (0 ≤ q0 ≤ 1). If
q ≤ q0 then the best next node v is chosen according to eq. (1). On the contrary,
the next node v is chosen according to V which is a random variable selected
according to the probability distribution given in eq. (2). Thus, the parameter
q0 determines the relative importance of exploitation (v) versus exploration (V ).
In our IACS, the best solution so far will be preserved and becomes the
1st solution in the next generation. We only reconstruct b-1 solutions (b is the
number of ants) in each generation. The tour construction in IACS algorithm is
as follows:
Step 1: Sort the solutions 2˜b in ascending orders according to the objective
function value.
Step 2: Carry out local search on the 2nd solution.
After local search, our global updating rule is applied to the best u solutions.
The rule is described as follow:
u
new
τij = (1 − ρ)τij
old
+ρ k
Δτij (5)
k=1
where
Lu+1 −lk
k Lu+1 (i, j) ∈ tour done by ant k
Δτij = (6)
0 otherwise.
where Lk is the length of the tour done by ant k, u is the number of solutions
whose pheromone will be updated.
NN
Local search
IACS SA
SA
5 Numerical Analysis
In this section, 14 VRP benchmark problems described in Christofides et al.
(1979) are tested by our IACS-SA. The IACS-SA is coded in Borland C++
Builder 5.0 and executed on a PC equipped with 128 MB of RAM and an
Pentium processor running at 1000 MHz. The IACS-SA parameters used for
VRP instances are b = n/10, α = 1, β = 4, ρ = 0.5, q0 = 0.5, u = 2, G = 50, T =
1, γ = 0.999, m = n ∗ nand M = 3n.The information of these test problems and
computational results are summarized in Table 1. Columns 2-5 in table 1 show
the problem size n, the vehicle capacity Q, the service time s, the maximum
route length L, and the best-known solutions. The number of customers in these
problems ranges from 50 to 199. The customers in problems 1-10 are generated
by a random uniform distribution, while they are clustered in problems 11-14.
Problems 1-5 and 6-10 are identical, except that the total length of each vehicle
route is limited for the latter problems. Problems 13-14 are the counterparts
of problems 11-12 with additional route length restriction. Columns 6-10 show
the results that include the best solution, the worst solution, and the average
solution, standard deviation and average run time (second) over 10 runs for each
problem.
Applying a Hybrid Ant Colony System to the Vehicle Routing Problem 423
Table 1. The computational results of VRP instances. a : the solutions is same as the
best-known solution
Table 2. Comparison of IACS-SA with three ant algorithms. a : the best among four
ant algorithms. 1 : AS by Bullnheimer et al. (1998), seconds on a Pentium 100 MHz
PC. 2 : IAS by Bullnheimer et al. (1999), seconds on a Pentium 100 MHz PC. 3 : IACS
by Ting and Chen (2004), seconds on a Pentium 1000 MHz PC
Table 3. Comparison of IACS-SA with other meta-heuristics. a: the best among dif-
ferent algorithms. 1 : SA and TS by Osman (1993), seconds on a VAX 8600 computer.
2
: Hybrid GA by Baker and Ayechew (2003), seconds on a Pentium 266 MHz PC
6 Conclusion
References
1. Alfa, A.S., Heragu S.S. and Chen, M.: A 3-opt Based Simulated Annealing Algo-
rithm for Vehicle Routing Problems. Computers & Industrial Engineering, Vol. 21.
(1991) 635-639
2. Baker, B.M., and Ayechew, M.A.: A Genetic Algorithm for the Vehicle Routing
Problem. Computers and Operations Research, Vol. 30. (2003) 787-800
3. Barbarosoglu, G. and Ozgur, D.: A Tabu Search Algorithm for the Vehicle Routing
Problem. Computers and Operations Research, Vol. 26. (1999) 255-270
4. Breedam, A.V.: Improvement Heuristics for the Vehicle Routing Problem Based on
Simulated Annealing. European Journal of Operational Research, Vol. 86. (1995)
480-490
5. Bullnheimer, B., Hartl, R.F., and Strauss, C.: An Improved Ant System for the
Vehicle Routing Problem. Annals of Operations Research, Vol. 89. (1999) 319-328
6. Bullnheimer, B., Hartl, R.F., and Strauss, C.: Applying the Ant System to the
Vehicle Routing Problem. In S. Voss, S. Martello, I.H. Osman, and C. Roucairol,
editors, Meta-Heuristics: Advances and Trends in Local Search Paradigms for Op-
timization, Kluwer, Boston, MA, (1998) 109-120
7. Christofides, N. Mingozzi, A., and Toth, P.: The Vehicle Routing Problem. In:
Combinatorial Optimization, ed. N. Christofides, A. Mingozzi, P. Toth, and C.
Sandi. Wiley, Chichester (1979)
8. Clarke, G. and Wright, J.W.: Scheduling of Vehicles from a Central Depot to a
Number of Delivery Points. Operations Research, Vol. 12. (1964) 568-581
9. Colorni, A., Dorigo, M., and Maniezzo, V.: Distributed Optimization by Ant
Colonies. In: F. Varela and P. Bourgine, editors, Proceeding of the European Con-
ference on Artificial Life, Elsevier, Amsterdam (1991)
426 C.-H. Chen, C.-J. Ting, and P.-C. Chang
10. Colorni, A., Dorigo, M., Maniezzo, V., and Trubian, M.: Ant System for Job-
Shop Scheduling. Belgian Journal of Operations Research, Statistics and Computer
Science, Vol. 34. (1994) 39-53
11. Dorigo, M., and Gambardella, L.M. Ant Colony System: A Cooperative Learning
Approach for the Traveling Salesman Problem. IEEE Transactions on Evolutionary
Computation, Vol. 1. (1997) 53-66
12. Dorigo, M., Maniezzo, V., and Colorni, A.: Ant System: Optimization by a Colony
of Cooperating Agents. IEEE Transactions on Systems, Man and Cybernetics Part
B, Vol. 26. (1996) 29-41
13. Jaszkiewicz, A. and Kominek, P.: Genetic Local Search with Distance Preserv-
ing Recombination Operator for a Vehicle Routing Problem. European Journal of
Operational Research, Vol. 151. (2003) 352-364
14. Maniezzo V., Colorni, A., and Dorigo, M.: The Ant System Applied to the
Quadratic Assignment Problem. Tech. Rep. IRIDIA/94-28, Universite Libre de
Bruxelles, Belgium (1994)
15. Osman, I.H.: Metastrategy Simulated Annealing and Tabu Search Algorithms for
the Vehicle Routing Problem. Annals of Operations Research, Vol. 41. (1993) 421-
451
16. Rego, C. and Roucairol, C.: A Parallel Tabu Search Algorithm Using Ejection
Chains for the Vehicle Routing Problem. In I.H. Osman and J.P. Kelly, editors,
Meta-heuristic: Theoy and Applications, Kluwer, Boston, MA, (1996) 667-675
17. Rego, C.: A Subpath Ejection Method for the Vehicle Routing Problem. Manage-
ment Science, Vol. 44. (1998) 1447-1459
18. Rochat, Y., and Taillard, E.: Probabilistic and Intensification in Local Search for
Vehicle Routing. Journal of Heuristics, Vol. 1. (1995) 147-167
19. Taillard, E.D.: Parallel Iterative Search Methods for Vehicle Routing Problems.
Networks, Vol. 23. (1993) 661-673
20. Ting, C.J., and Chen, C.H.: An Improved Ant Colony System Algorithm for the
Vehicle Routing Problem. Working Paper 2004-001, Department of Industrial En-
gineering and Management, Yuan Ze University, Taiwan, R.O.C. (2004)
21. Xu, J. and Kelly, J.P.: A Network Flow-based Tabu Search Heuristic for the Vehicle
Routing Problem. Transportation Science, Vol. 30. (1996) 379-393
A Coevolutionary Approach to Optimize Class
Boundaries for Multidimensional
Classification Problems
Ki-Kwang Lee
1 Introduction
Classification learning systems are useful for decision-making tasks in many ap-
plication domains, such as financing, manufacturing, control, diagnostic applica-
tions, and prediction systems where classifying expertise is necessary [12]. This
wide range of applicability motivated many researchers to further refine classifi-
cation methods in various domains [5, 11]. The major objective of classification
is to assign a new data object represented as features (sometimes referred to as
attributes or input variables) to one of the possible classes with a minimal rate of
misclassification. Solutions to a classification problem have been characterized in
terms of parameterized or non-parameterized separation boundaries that could
successfully distinguish the various classes in the feature space [9]. A primary
focus of study to build the separation boundaries has been on learning from ex-
amples, where a classifier system accepts case descriptions that are pre-classified
and then the system learns a set of separation surfaces that can classify new
cases based on the pre-classified cases [8]. Various learning techniques have been
contrived to design the separation surfaces, employing a variety of representation
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 427–436, 2005.
c Springer-Verlag Berlin Heidelberg 2005
428 K.-K. Lee
classification rule (2) increases as x moves toward the center of the ellipsoid Lij ,
and decreases as x moves away from the center. To realize this characteristic,
the degree of membership of x for a rule Rij is defined as follows.
D
dij (x) = ij . (3)
(1) (2)
dist x, fij + dist x, fij
If the value of dij (x) in (3) is larger than 1, it indicates that point x is
located within the ellipsoid Lij . The value of (3) is less than 1 when x lies
out of the boundary of the ellipsoid. Now the degree of membership of x for
class Ci , denoted as di (x), is given by di (x) = maxj=1,... {dij (x)}. The class of
input x is then determined as class Ci∗ such that di∗ (x) is the maximum among
di (x), i = 1, . . . , c.
Considering the two measures, the fitness value of each ellipsoid is defined as
follows, where f itness(Lij ) is the fitness value of the ellipsoid Lij , N C(Lij ) is
the number of training data that are correctly classified by Lij , N I(Lij ) is the
number of training data that are incorrectly classified by Lij , and weight(Lij )
is the weight value that multiplies N I(Lij ).
From the selected pair of ellipsoids, the arithmetic crossover for randomly
taken genes generates two offspring. For an example of the ith genes, ai and
bi of the selected pair of ellipsoids are replaced by λai + (1 − λ)bi and (1 −
λ)ai + λbi respectively, where 0 < λ < 1. Note that the size factor is determined
by a random number drawn from a uniform distribution U (dist(f (1) , f (2) ), 1)
in order to keep the size of the ellipsoid greater than distance between its two
modified foci.
Each parameter of ellipsoids generated by the crossover operation is randomly
replaced using a random number from U (0, 1) at a pre-specified mutation prob-
ability. As in the crossover operation, the size factor is recomputed with the
modified distance between the two altered foci.
Another avoidance method is carried out when the misclassified examples are
located in the shading part of Figure 3 (c). The misclassified examples are hard
to avoid by the previous two methods because they are located around the center
of the ellipsoid. Therefore we propose the third method that randomly modifies
the location of a randomly selected focus to avoid the misclassified examples
around the center of the ellipsoid.
Fig. 4 (a), the ellipsoid extends its area to the opposite direction of a location-
fixed focus, which is randomly selected among two foci. The directed expansion
method is performed by modifying the locations of the foci and the size factor.
In the undirected expansion, the ellipsoid is enlarged toward all directions as
depicted in Fig. 4 (b). The undirected expansion of the ellipsoid is carried out
by increasing only its size factor.
Move. If the ellipsoid does not contain any examples, it randomly moves to
other location in the pattern space. For the fast adaptation of the ellipsoid, the
ellipsoid needs to be moved to the area where no ellipsoids exist and training
examples are densely distributed. Thus if there exist training examples which
are not included in any ellipsoids, we place a focus to randomly selected one
among the training examples.
have one of more positive examples included in other feature subspaces. This
means that the feature subspace seeks for opportunities to expand to include
the corresponding examples by adopting the features of the targeted examples
that are not yet included in the subspace.
The newly obtained feature subset is inserted into the feature subspace popu-
lation if any of its positive examples are not included in other feature subspaces.
The insertion of new subspaces activates a deletion process that finds and deletes
subspaces that are enclosed by those new subspaces.
3 Experimental Results
We applied the proposed methods to three data sets both to introduce a simple
example of ellipsoids adaptation result and to verify the effectiveness of our
methods. The data sets are available from the UCI Machine Learning Repository
[2]. Each example of the data sets has continuous features. As a preprocessing
of the data for our classifier system, the value of each feature is normalized as
having the maximum value of one and the minimum value of zero.
Here we present the results achieved by the proposed coevolutionary approach
and compare them with the performances of existing well-known classifiers, i.e.,
a k nearest neighbor [12], a decision tree with C4.5 [10], and a neural network
with back-propagation [4]. We tried to guarantee the proper prediction power of
the classifiers even under insufficient training data for scarce classes by adopt-
ing rather simple structures such as k = 3 and 1 hidden layer. Table 1 shows
the comparison results of the average classification rate for the three data sets
mentioned in the previous subsection. We can see that the proposed hybrid GA
classification method with ellipsoidal regions achieved a superior classification
rate of test data in comparison with other popular methods such as the k nearest
neighbor, the decision tree, and the neural network.
Classification rate(%)
Classifier
Glass Ionsphere
k Nearest Neighbor (k = 3) 63.74 84.90
C4.5 65.70 88.89
Neural Network 63.36 90.03
This study 67.10 90.88
4 Conclusion
This paper proposes a coevolution-based classification method for multidimen-
sional pattern classification problems. The method consists of two layers. Feature
sets, pairs of a feature and its range, determine the sub-regions where they apply.
436 K.-K. Lee
References
1. Abe, S., Thawonmas, R.: A fuzzy classifier with ellipsoidal regions. IEEE Trans.
on Fuzzy Systems 5 (1997) 358-368
2. Blake, C.L., Merz, C.J.: UCI Repository of machine learning databases. Available
online via http : //www.ics.uci.edu/ ∼ mlearn/M LRepository.html
(1998)
3. Eshelman, L.J.: The CHC adaptive search algorithm: How to have safe search
when engaging in nontraditional genetic recombination. In: Rawlins, G.J.E.(eds.):
Foundations of genetic algorithms, Morgan Kaufman, San Mateo, CA (1991)
265-283
4. Haykin, S.: Neural networks: a comprehensive foundation. Prentice-Hall, New Jer-
sey (1994)
5. Jain, A. K., Duin, R.P.W., Mao, J.: Statistical pattern recognition: a review. IEEE
Trans. on Pattern Analysis and Machine Intelligence 22 (2000) 4-37
6. Kudo, M., Shimbo, M.: Feature Selection Based on the Structural Indices of Cat-
egories. Pattern Recognition 26 (1993) 891-901
7. Liu, H., Setiono, R.: Incremental feature selection. Applied Intelligence 9 (1998)
217-230
8. Nolan, J.R.: Computer systems that learn: an empirical study of the effect of
noise on the performance of three classification methods. Expert Systems with
Applications 23 (2002) 39-47
9. Pal, S.K., Bandyopadhyay, S., Murthy, C.A.: Genetic algorithms for generation of
class boundaries. IEEE Trans. on Systems, Man, and Cybernetics-Part B: Cyber-
netics 28 (1998) 816-828
10. Quinlan, J. R.: C4.5: Programs for machine learning. Morgan Kaufmann, San
Mateo, CA (1993)
11. Simpson, P.K., Fuzzy min-max neural networks-part1: classification. IEEE Trans.
on Neu-ral Networks 3 (1992) 776-786
12. Weiss, S.M., Kulikowski, C.A.: Computer systems that learn. Morgan Kaufmann,
San Francisco, CA (1991)
Analytical Modeling of Closed-Loop Conveyors
with Load Recirculation
1 Introduction
For the past three decades, flexible manufacturing systems (FMS) and similar
automated manufacturing systems that produce discrete units have been widely
used in fabrication and machining. Such systems can be described as a set of
workstations (machining centers with loading and unloading stations) linked by a
material handling system (MHS), generally operating under computer control. In
FMS and other medium to large-volume discrete-parts fabrication and machining
operations, loop-based conveyors (with discrete-time windows or fixtures) are
used quite extensively.
In this study we address a loop-based conveyor system where load recircu-
lation may occur due to finite buffer capacity at unloading stations. A load is
blocked when it reaches its destination unloading station and finds a full buffer
at that station. A blocked load must recirculate around the loop and try again
when it reaches its destination unloading station.
We are interested in estimating the expected load overflow on the conveyor
due to blocked loads. Once the expected overflow is estimated, it is straightfor-
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 437–447, 2005.
c Springer-Verlag Berlin Heidelberg 2005
438 Y.-J. Hsieh and Y.A. Bozer
ward to verify whether or not the conveyor meets throughput (i.e., whether or
not the conveyor system is “stable”) using our previous results.
Fig. 1. Conveyor system with five loading and five unloading stations
k to l travels through segment Si , zero otherwise. Note that xikl is not a decision
variable. Rather, it is simply obtained by determining whether or not the flow
from station k to l goes through segment Si .
Likewise, let Δoverf low denote the expected total overflow rate on the con-
veyor. (Note that the expected total overflow rate will be the same in each
segment of the conveyor.) The expected total flow and the window utilization in
each conveyor segment Si are given by,
Δi = Δbase
i + Δoverf low . (1)
and
qi = Δi /V. (2)
In steady-state, provided the conveyor meets throughput, Δbase i can be di-
rectly and easily derived(shown earlier) from the load flow matrix. However,
Δoverf low is the sum of the expected unsuccessful departure rates at the unload-
ing stations. In other words, if Ω denotes the set of the unloading stations, we
have
Δoverf low = Λ.i . (3)
i∈Ω
We use the “tagged load” approach to derive our model; we first treat the
simplest case where no waiting room is available at the unloading stations. Con-
sider unloading station i and the corresponding conveyor segment Si shown in
Figure 2.
The conveyor speed is given as V windows per time unit. Suppose the tagged
load is in window C2 and it is destined to unloading station i. When the tagged
load arrives at unloading station i and inspects it, by conditioning on the status
of unloading station i when the preceding window (window C1 ) inspected it one
conveyor cycle ago, we are able to derive the probability of blocking for the
tagged load. Note that the preceding window (window C1 ) may or may not be
full when it arrives at unloading station i.
Conditioning on βi (β̄i ) which represents the event that, upon inspection,
window C1 observes an idle (busy) server at unloading station i, we have:
P (Bi ) = P (Bi |βi )P (βi ) + P (Bi |β̄i )P (β̄i ). (6)
The first conditional expression in Equation 6, P (Bi |βi )P (βi ), represents the
conditional probability of blocking for the tagged load given that window C1
observed an idle server. In other words, P (Bi |βi )P (βi ) is the probability that
there is a load in window C1 which is destined to station i and that specific load
is still being served after one conveyor cycle time, i.e., 1/V; plus the probability
that there is no load in window C1 which is destined to station i, but window
C2 finds a busy server upon arrival. Note that the second case occurs with zero
probability. Now let Xi ∼ Fi be the service time (exponentially distributed
with rate μi of the server at unloading station i. Furthermore, let pi denote
the probability that a departure attempt occurs when window C2 arrives at
unloading station i. We have,
P (Bi |βi ) = pi [1 − Fi (1/V )]. (7)
The second conditional expression in Equation 6, P (Bi |β̄i ), represents the
conditional probability of blocking for the tagged load given that window C1
observed a busy server. In other words, regardless of the content of window C1 ,
P (Bi |β̄i ) is the probability that the residual service time of the load in service
is greater than the conveyor cycle time 1/V . Since the residual service time is
also exponentially distributed [5], we have:
P (Bi |β̄i ) = [1 − Fi (1/V )]. (8)
Assuming that window C1 and C2 have the same probability of observing
a busy server upon arrival at unloading station i, we have P (β̄i ) = P (Bi ) and
P (βi ) = 1 − P (Bi ). Under this assumption, we substitute Equations 7 and 8 into
6 and rewrite the expression for P (Bi ) as follows:
P (Bi ) = pi [1 − Fi (1/V )](1 − P (Bi )) + [1 − Fi (1/V )]P (Bi ). (9)
Equation 9 can be further re-arranged as:
pi = Fi (1/V )P (Bi )/{[1 − Fi (1/V )][1 − P (Bi )]}. (10)
Recall that P (Bi ) = Λ.i /(Λi + Λ.i ) Therefore, we can rewrite the right-hand
side of Equation 10 and obtain pi as follows:
pi = Fi (1/V )Λ.i /{[1 − Fi (1/V )]Λi }. (11)
Analytical Modeling of Closed-Loop Conveyors with Load Recirculation 443
Let us define ω ≡ Λ.i /Λi as the overflow ratio at unloading i. Along with the
definition that P (Bi ) = Λ.i /(Λi + Λ.i ),P (Bi ) can be obtained from Equation 16
as:
P (Bi ) = ωi /(1 + ωi ). (17)
We next derive P (Bi ) and Λ.i for the more general case where the buffer
capacity (including the load in service) at unloading station i, denoted as k, can
be any positive integer.
1 2
Let Ni,j (Ni,j ) represent the event that, upon inspection, window C1 (C2 )
2
finds j loads present at unloading station i. The term P (Ni,j ) is obtained by
conditioning on the possible events that can occur when window C1 inspects
unloading station i. In other words,
k
2
P (Ni,j )= 2
P (Ni,j |Ni,n
1 1
)P (Ni,n ). (18)
n=0
Event 1. Since it is impossible for window C2 to find two or more loads than
what window C1 found, we have:
2
P (Ni,j |Ni,n
1
) = 0, if j > n + 1. (19)
444 Y.-J. Hsieh and Y.A. Bozer
Event 2. If window C2 observes exactly one more load than window C1 , there
must be a load in window C1 which is destined to unloading station i. Moreover,
no loads should finish service before window C2 arrives. In other words,
2
P (Ni,j |Ni,n
1
) = P (Di |Ni,n
1
)P (Qi,0 ), if j = n + 1. (20)
Event 3. If window C2 finds exactly the same number of loads (greater than zero
but less than k loads) as window C1 , we have:
2
P (Ni,j |Ni,n
1
) = P (Di |Ni,n
1
)P (Qi,1 ) + (1 − P (Di |Ni,n
1
))P (Qi,0 ), (21)
The first expression on the right-hand side of Equation 21, P (Di |Ni,n
1
)P (Qi,1 )
represents the probability that a departure attempt occurred as window C1
arrived at unloading station i where n loads were observed; and exactly one load
was served before window C2 arrived. The second expression on the right-hand
side of Equation 21,(1 − P (Di |Ni,n
1
))P (Qi,0 ), represents the probability that no
departure attempt occurred as window C1 arrived at unloading station i where
n loads were observed; and no loads were served before window C2 arrived.
if j < n < k.
The first expression on the right-hand side of Equation 22, P (Di |Ni,n1
)
P (Qi,n−j+1 ),represents the probability that a departure attempt occurred as
window C1 arrived at unloading station i where n loads were observed; and
exactly (n − j+ 1) loads were served before window C2 arrived. The second ex-
pression on the right-hand side of Equation 22,(1 − P (Di |Ni,n
1
))P (Qi,n−j ), rep-
resents the probability that no departure attempt occurred as window C1 arrived
at unloading stationi where n loads were observed; and (n − j) loads were served
before window C2 arrived.
Event 5. Last, if window C1 finds a full queue upon arrival at unloading station
i, there must be exactly (k − j) loads served before window C2 arrived. In other
words,
2
P (Ni,j |Ni,n
1
) = P (Qi,n−j ), if n = k. (23)
Analytical Modeling of Closed-Loop Conveyors with Load Recirculation 445
Since we assumed that the process times of the server at unloading station i
follows an independent and identical exponential distribution with mean 1/μi ,
the residual service times are exponentially distributed as well. Given that suf-
ficient loads are available at unloading station i, the number of loads which are
served within a conveyor cycle time, i.e., 1/V , follows a Poisson distribution with
mean μi /V . That is,
If we assume that whether a departure attempt occurs or not does not depend
on the number of loads observed at the corresponding unloading station, we
have P (Di |Ni,n
1
) = P (Di ).Note that P (Di ) = pi by definition. Therefore, from
Equation 15 we have:
P (Di |Ni,n
1
) = (Λi + Λ.i )/V, 0 ≤ n ≤ k. (25)
Similar to the case of k = 1, we assume that windows C1 and C2 have
the same probability of observing j loads at unloading station i upon arrival,
2 1 2
i.e.,P (Ni,j ) = P (Ni,j ). To obtain P (Bi ) = P (Ni,k ), the probability of blocking
experienced by the tagged load when attempting to depart at unloading station
i, we first substitute Equation 4 into 25, and then substitute Equations 19-25
into 18. The above substitutions yield a non-linear equation with k+1 unknowns:
2
P (Ni,n ), n < k. Note that the non-linearity is a consequence of the substitution
2
of Equation 4 into 25. In a similar manner, the unknowns P (Ni,n ), n < k, can be
obtained through the same substitutions. Note that we also have the following
boundary condition:
k
2
P (Ni,n ) = 1. (26)
n=0
The term P (Bi ) can now be determined by solving the above set of non-
linear system of equations. Solving such a set is not straightforward. Therefore,
we propose an iterative method to compute P (Bi ) numerically.
Results we obtained earlier in [2] suggest that the status (empty or full) of two
adjacent windows on the conveyor are correlated. Hence, we relax the assump-
tion we made in Equation 12 and assume that the status of adjacent windows
are correlated; we also utilize previous results obtained in [2] to estimate a.i , the
probability of having two adjacent full windows in conveyor segment Si .In other
words, we will replace the term qi with a.i /qi in Equation 12 to obtain a more
accurate estimate of P (E1f |E2f and E2→i ). The iterative scheme (Algorithm 1)
to compute P (Bi ) is presented as follows:
Algorithm 1:
Step 1 :
Set the initial value of P (Bi ) = 0, i.e., let n = 0, and Λ.i = 0 ∀ i ∈ Ω.
(n)
Step 2 :
%
+ j∈Ω Λ.j )/V, ∀i ∈ {θ, Ω},
(n) (n)
Let qi = (Δbasei
446 Y.-J. Hsieh and Y.A. Bozer
%
= (Λi + Λ.i )/(Δbase + j∈Ω Λ.j ) , ∀i ∈ Ω , and
(n) (n) (n)
γi i
(n) % (n) (n)
ρ̄i = λi /[V − (Δbasei + j∈Ω λ̃j )], ∀i ∈ θ. Compute . ai , the probability
of two adjacent full windows for each conveyor segment Si , by solving the
linear system of equations given by
/ 0
(n) (n) (n) (n) (n) (n) (n) (n) (n)
ai+1 = .
. ai + (qi − . ai ) ρ̄i + [Fλi (1/V )](1 − ρ̄i ) + (qi − . ai )ρ̄i +
/ 0
(n) (n) (n) (n) (n) (n)
(.ai − 2qi + 1) ρ̄i − [Fλi (1/V )](1 − ρ̄i ) , ∀i ∈ θ; and . ai+1 = . ai (1 −
(n)
γi )2 , ∀i ∈ Ω.
Step 3 :
Compute the probability that a departure attempt occurs as the window
(n) (n) (n) (n)
preceding the tagged load arrives at unloading station i,i.e.,pi = . ai γi /qi ,
(n)
∀i ∈ Ω. Use Pi to solve for P (n+1) (Ni,k 2
)∀i ∈ Ω,i.e.,P (Bi ) at the nth iterat-
ion, from Equation 18.
Step 4 :
Update Λ.i
(n+1)
with P (n+1) (Ni,k
2
)Λi /[1 − P (n+1) (Ni,k
2
)], ∀i ∈ Ω.
Step 5 :
(n) (n+1)
If Λ.i − Λ.i < , ∀i ∈ Ω then
P (n+1) (Ni,k
2
) obtained in Step 3 is the probability of blocking for a
departure attempt at unloading station i, i.e.,P (Bi ) = P (n+1) (Ni,k
2
), stop;
else
set n = n + 1, and go to Step 2.
Proving that Algorithm 1 will always return a (unique) solution for all k
values is not straightforward. In order to test the conditions under which the
above algorithm converges, we randomly generated the problems with various
flow data. From these problems we observed empirically that the above algorithm
always converges if the utilization of the processing machine at each unloading
station is less than 1. We also observed that the above algorithm, if it converges,
always returns the same solution for P (Bi ), regardless of the initial values se-
lected for P (Bi ).
Once we compute the approximate values of expected load overflow Λ.i , ∀i ∈
Ω, we can substitute them into Equations 3 and 1 to obtain the expected total
flow,Δi , in each conveyor segment Si . Given the Δi value for each segment Si ,
whether the conveyor system is stable or not can be easily verified through the
stability condition we derived earlier in [1].
Furthermore, various first-moment performance measures may be approxi-
mated. For example, as a window arrives at unloading
%k station i, we can obtain
2
the observed expected WIP which is equal to n=0 nP (Ni,n ).
model, loads arrive at the loading stations in a Poisson fashion. The process times
at each unloading stations are exponentially distributed with server utilization
equal to 75%.
For various buffer size K, we examined three different conveyor speeds, i.e.,
slow, medium, and fast. We measured the probability of blocking experienced by
the departure attempts, i.e., P (B), at the unloading station. The results showed
that the percentage differences between simulated P (B) and calculated P (B)
values are generally within 2%. When we increase the conveyor speed or reduce
the buffer capacity at the unloading stations, the expected overflow and the
probability of blocking increase. Moreover, the change in expected overflow is
less sensitive to changes in conveyor speed than changes in the buffer capacity
at the unloading stations.
Similar to the conveyor loop without load recirculation we studied in [2],
we observed a positive correlation between adjacent windows in each conveyor
segment. Since the above correlation decreases as the conveyor speed is increased,
the model gives more accurate estimates at higher conveyor speeds.
References
1. Bozer, Y.A., Hsieh, Y.J.: Throughput Performance Analysis and Machine Layout
for Discrete-Space Closed-Loop Conveyors. IIE Transactions. 37(2005) 77-89
2. Bozer, Y.A., Hsieh, Y.J.: Expected Waiting Times at Loading Stations in Discrete-
space Closed-Loop Conveyors. European Journal of Operation Research. 155 (2004)
516-532
3. Fredericks, A.A., Reisner, G.A.: Approximation to Stochastic Service Systems with
an Application to a Retrial Model. The Bell System Technical Journal. 58 (1979)
557-576
4. Greenberg, B.S.: M/G/1 Queueing Systems with Returning Customers. Journal of
Applied Probability. 26(1) (1989) 152-163
5. Greenberg, B.S., Wolff, R.W.: An Upper Bound on the Performance of Queues with
Returning Customers. Journal of Applied Probability. 24(2)(1987) 466-475
6. Palm, C.: Intensitatsschwankungen im Fernsprecheverkehr. Ericsson Technics. 44
(1943) 1-8
7. Pourbabai, B., Sonderman, D.: A Stochastic Recirculation System with Random
Access. European Journal of Operational Research. 21 (1985) 367-378
8. Pourbabai, B.: Markovian Queueing Systems with Retrials and Heterogeneous
Servers. Computational Mathematics Application. 13 (1987) 917-923
9. Sonderman, D.: An Analytical Model for Recirculating Conveyors with Stochastic
Inputs and Outputs. International Journal of Production Research. 20 (1982) 591-
605
A Multi-items Ordering Model with Mixed Parts
Transportation Problem in a Supply Chain
Abstract. This paper explores the problem of making ordering decisions for
multi-items with various constraints on the supply chain. With the advent of
supply chain management, depots or warehouses fulfill a strategic role of
achieving the logistics objectives of shorter cycle times, lower inventories,
lower costs and better customer service. Many companies consider both their
cost effectiveness and market proficiency to depend primarily on efficient logis-
tics management. Depot management presently is considered a key to strength-
ening company logistics. In this paper, we propose a novel multi-items ordering
model with the mixed parts transportation problem based on the depot system in
a supply chain. Order range is especially introduced and used as decision pa-
rameters instead of order point to order multi-items. Finally, we test the model
with a numerical example and show computational results that verify the
effectiveness of the proposed model.
1 Introduction
To attain the customer service objectives in the overall supply chain, warehouses
serve several value adding roles, which include transportation consolidation, product
mixing, customer service, contingency protection and smoothing. In the past, depots
or warehouses mainly focused on putting raw materials, in-process products and fin-
ished goods in storage. With the arrival of supply chain management, depots or ware-
houses serve a strategic role of achieving the logistics objectives of reduced cycle
times, inventories and costs, and increased customer service levels [1].
Many companies consider both their cost effectiveness and market proficiency to
depend primarily on efficient logistics management. Depot or warehouse management
currently is considered a key to strengthening company logistics. Logistics activities
mainly consist of transportation, inventory management, order fulfillment and ware-
housing. These activities establish an essential connection among suppliers, manufac-
tures, distributors and customers in supply chains. Depots occupy an important posi-
tion such as storing items, and retrieving items from storage to fulfill customer orders
∗
Corresponding author.
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 448 – 457, 2005.
© Springer-Verlag Berlin Heidelberg 2005
A Multi-items Ordering Model with Mixed Parts Transportation Problem 449
in the supply chain. In order to satisfy customer demands such as shorter order cycle
times, products may stay in depot for just a few days or even a few hours. The depot
expenditures which companies sustain involve considerable dollars amounts, hurrying
the movement of parts in depots, therefore, has continued to become an essential issue
for depot managers.
The parts transportation problem from a supplier to a manufacturer has been one of
the major issues on the supply chain management [2]. In this paper, we propose a new
ordering model for multi-items based on the depot system in a supply chain. The
depot system is being utilized to adjust the inventory and the timely supply of the
parts demanded by a manufacturer.
There have been several models about the multi-items ordering system. Shu pro-
posed an ordering model for multi-items firstly [3]. He determined the optimal order-
ing cycle with respect to the rate of demands for two items. Nocturne formulated a
model for joint replenishment of two items with his proposed original logic [4]. Doll
and Whybark determined near optimal frequencies of production and the associated
cycle time for production schedules [5]. They determined optimal ordering cycle as
decision parameters without considering transportation condition. Tersine and Bar-
man constructed a model considering transportation condition (freight rate) to deter-
mine ordering size in a deterministic EOQ (economic order quantity) system [6].
Buffa and Munn proposed an algorithm that could formulate an inbound consolidation
strategy [7]. The model is available to the case of replenishing multi-items with some
groups and the cost of transportation and inventory being affected by the strategy.
But these models did not simultaneously consider the transportation condition and
multi-items. Therefore, we propose a new ordering model on the fixed order method
with order range in order to overcome the mentioned shortcomings. The proposed
model considers both the multi-items and mixed parts transportation condition in a
supply chain.
2 Model Formulation
2.1 Notation
The following notations are used in the formulation of the proposed model.
k : time periods on transportation lead time ( k =1, 2, …, L1 )
Dti : demands for item i in period t
S i : safety inventory level for item i
C 0i : holding cost in the depot for item i
C1 : transportation cost
Z i : container size for item i
Fmin , Fmax : minimum and maximum available transportation size considering the
mixed parts transportation and freight rate
W i : value of minimum of order range for item i (this value is equal to order point
in order point method)
450 B. Ahn and K.-K. Seo
In the fixed order point method, an order is placed when the inventory on hand
reaches a predetermined inventory level, to satisfy demand during the order cycle.
The economic order quantity will be ordered whenever demand drops the inventory
level to the reorder point.
This method is based on the following assumptions:
(1) A continuous, constant and known rate of demand.
(2) A constant and known replenishment or lead-time.
(3) Only one item in inventory.
(4) An infinite planning horizon, etc.
It is difficult to consider the impact of both multi-items and mixed parts transporta-
tion condition in the typical fixed order method. For this reason, the proposed model
in this paper introduces and uses order range as decision parameters instead of order
point.
Therefore, the order policy is changed as follows. We show the order policy of the
proposed model for two items such as a and b.
Case 1: When the inventory level of a and b is within the order range of a and b, and
the sum of transportation order quantities of a and b is in the limits of the available
transportation quantity, order a and b. Otherwise do not order a and b.
Case 2: When the inventory level of a and b is greater than the upper order range of a
and b, do not order a and b.
Case 3: When the inventory level of a is greater than the order range of a and that of b
is within the order range of b, do not order a. If the transportation order quantity of b
is in the limits of the available transportation quantity, then order b. Otherwise do not
order b.
Case 4: When the inventory level of a is greater than the order range of a and that of b
is less than the order range of b, do not order a but b.
Case 5: When the inventory level of a is within the order range of a and that of b is
less than the order range of b and the transportation order quantity of a is in the limits
of the available transportation quantity, order a. Otherwise do not order a but b.
A Multi-items Ordering Model with Mixed Parts Transportation Problem 451
Case 6: When the inventory level of a is less than the order range of a and that of less
than the order range of b, order a and b.
Figure 1 shows the behavior of inventory level in the proposed model.
Inventory
Item a Qb
Item b
Order range
of b
Qa
Order range
of a
Lead
time
a, b a, b
order arrival Period
In figure 1, the transportation order for the item a and b is placed on the order range
predetermined respectively. The transportation quantity of the item a and b is Qa and
Qb respectively. The decision factors of proposed model are determination of the
order range and transportation order quantity.
The model is formulated to determine the maximum point of order range and trans-
portation order quantity in such a way that total cost is minimized. The minimum
point of order range is determined by adapting the order point in the typical fixed
order method.
2.3 Assumption
The material and information flows in the proposed model are shown in figure 2. We
focus on determining the best strategy for multi-items ordering from the supplier to
the depot and from the depot to the manufacturer. We assume that transportation lead-
time is L1 and demands are supplied to assembly line from the depot timely. Supplier
produces M types of items and let i ∈ {1, 2, ⋅ ⋅⋅, M } be index of items. Let
t ∈ {1, 2, ⋅ ⋅⋅, T } be an index of the time periods with the condition that the planning
horizon starts at the beginning of period 1 and the end of period T . The set of time
period is H.
The assumptions used in the paper are as follows.
(1) Demands for depot are deterministic process and suggested by assembly line.
(2) Inventory quantities in supplier's inventory point are always sufficient.
(3) During the planning horizon, inventory cost and transportation cost are con-
stant.
452 B. Ahn and K.-K. Seo
Qti : t+L1+1
Dti
Transportation Transportation Transportation Transportation
L1
Supplier Depot Manufacturer Distribution Center Customer
- Item 1
: Material flow - Item 2
: Information flow …
- Item n
Fig. 2. Material and information flows of the proposed model in a supply chain
2.4 Formulation
⎧ L1 (2)
⎪0
⎪
if I ti + ∑
k =1
Yt − k × Qti− k :t + L1+1− k > V i
Qti:t + L1+1 =⎨
L1
⎪ i
⎪g
⎩
if I ti + ∑Y
k =1
t −k × Qti− k :t + L1+1− k ≤ V i
( t =1, 2, …, T ; i =1,2,…, M )
(3) The criterion of transportation is:
⎧ M i i (3)
⎪1 if Fmin ≤ ∑ Z × Qt:t + L1+1 ≤ Fmax or
⎪ i = 1
⎪⎪ L1
Yt = ⎨ ∃i ∈ {1,2,⋅ ⋅ ⋅, M }, I ti + ∑ Yt −k × Qti−k:t + L1+1−k < W i
⎪ k =1
⎪0 otherwise
⎪
⎩⎪
( t =1, 2, …, T )
A Multi-items Ordering Model with Mixed Parts Transportation Problem 453
∑Y × Q
t =1
t
i
t:t + L1+1 ≥ ∑D
t =1
i
t ( i =1, 2, …, M )
(4)
Fig. 3. Computation algorithm to determine the transportation order quantities and order
ranges
3 Case Study
We use the following input date to show the verification of the developed model.
t= 1 2 3 4 5 6 7 8 9 10
Dt1 9 11 11 10 9 8 9 11 9 11
Dt2 18 19 22 24 24 20 21 18 20 22
Dt3 28 32 32 30 31 30 33 28 30 30
Item i = 1 2 3
Transportation order quantity 25 52 77
Occurrence of order 4 4 4
Order range 23-33 47-57 65-82
Total inventory quantity 175 283 368
456 B. Ahn and K.-K. Seo
t = 1 2 3 4 5 6 7 8 9 10
Qt1:t + L1+1 0 0 25 0 25 0 0 25 0 25
Qt2: t + L1 + 1 0 0 52 0 52 0 0 52 0 52
Qt3:t + L1+1 0 0 77 0 77 0 0 77 0 77
t= 1 2 3 4 5 6 7 8 9 10
I t1 24 13 25 15 6 23 14 28 19 8
I t2 49 30 50 26 2 34 13 47 27 5
I t3 66 34 63 33 2 49 16 65 35 5
80
60
40
20
1 2 3 4 5 6 7 8 9 10
period
Figure 4 illustrates the behavior of inventory level in the depot. The inventory level
at period of 2 is less than the order range, but order was not placed on this period
because there were preordered transportation quantity. The order was placed on the
period 3 because the inventory levels on hand were within the order range.
From this example, we can conclude that the mixed parts transportation for multi-
items occurs and the order is minimized by the proposed model under minimum total
cost.
4 Conclusions
In order to improve the manufacturer satisfaction level, parts may wait in depot for
just a short time. Therefore, reducing cycle times, inventories and costs in depots have
continued to become an essential issue for depot mamagers. They are interested in
A Multi-items Ordering Model with Mixed Parts Transportation Problem 457
discovering the most economical way for customer orders which minimizes the total
costs occurred. The problem of ordering with constraints is usaually considered in a
supply chain. This is largely an effect of the ordering policy and is regarded as an
important issue on supply chain management.
In this paper, we proposed the new ordering model for multi-items in consideration
of mixed parts tranportation condition. The computational algorithm was developed
and the effectiviess of the proposed model was demonstrated through a case study.
In future we demonstrate the suitablity of the proposed model in the various supply
chain models.
References
1. Coyle, J. J., Bardi, E. J., Langley Jr., C. J.: The Management of Business Logistics, 6th ed.
West Publishing Company, New York, (1996)
2. Van den Berg, J. P.: A literature survey on planning and control of warehousing systems,
IIE Transactions 31. (1999) 751–762
3. Doll, C. L., Whybark, C.: An iterative procedure for the single-machine multi-product lot
scheduling problem, Managemnet Science Vol. 20(1). (1973) 50-55
4. Pirkul, H., Aras, O. A.: Capacitated multiple item ordering problem with quantity
discounts. IIE Trans. 17. (1985) 206-211
5. Rosenblatt, M. J., Rothblum, U. G.: On the single resource capacity problem for multi-
item inventory systems. Opns. Res. 38. (1990) 686-693
6. Shu, F. T.: Economic ordering frequency for two items jointly replenished. Management
Science Vol. 17(6). (1971) B406-B410
7. Tersine, R. J., Barman, S.: Economic/Transport Lot Sizing with Quantity and Freight Rate
Discounts. Decision Science 22. (1991) 1171-1179
Artificial Neural Network Based
Life Cycle Assessment Model for Product Concepts
Using Product Classification Method
Abstract. Many companies are beginning to change the way they develop
products due to increasing awareness of environmentally conscious product de-
velopment. To copy with these trends, designers are being asked to incorporate
environmental criteria into the design process. Recently Life Cycle Assessment
(LCA) is used to support the decision-making for product design and the best
alternative can be selected based on its estimated environmental impacts and
benefits. Both the lack of detailed information and time for a full LCA for a
various range of design concepts need the new approach for the environmental
analysis. This paper presents an artificial neural network (ANN) based ap-
proximate LCA model of product concepts for product groups using a product
classification method. A product classification method is developed to support
the specialization of ANN based LCA model for different classes of products.
Hierarchical clustering is used to guide a systematic identification of product
groups based upon environmental categories using the C4.5 decision tree algo-
rithm. Then, an artificial neural network approach is used to estimate an ap-
proximate LCA for classified products with product attributes and environ-
mental impact drivers identified in this paper.
1 Introduction
The ability of a company to compete effectively on the increasingly competitive
global market is influenced to a large extent by the cost as well as the quality of its
products and the ability to bring products into the market in a timely manner. Tradi-
tionally, manufacturers focus on how to reduce the cost the company spends for mate-
rials acquisition, production, and logistics, but due to widespread consciousness of
global environment problems and environmental legislative measures, companies also
∗
Corresponding author
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 458 – 466, 2005.
© Springer-Verlag Berlin Heidelberg 2005
Artificial Neural Network Based Life Cycle Assessment Model for Product Concepts 459
should take environmental considerations into their decision making process of prod-
uct development. These trends are driving many companies to consider environmental
impacts during product development. Product designers are challenged with questions
of what and how to consider environmental issues in relation to the products they are
developing. In particular, it is quite relevant to understand how design changes can
affect the environmental performance of product concepts in the early design process.
Life Cycle Assessment (LCA) is now the most sophisticated tools to consider and
quantify the consumption of resources and the environmental impacts associated with
a product or process [1]. By considering the entire life cycle and the associated envi-
ronmental burdens, LCA identifies opportunities to improve environmental perform-
ance. Conceptually, a detailed LCA is an extremely useful method, but it may be
rather costly, time consuming and sometimes difficult to communicate with non-
environmental experts. Further the use of LCA poses some barriers at the conceptual
stage of product development, where ideas are diverse and numerous, details are very
scarce, and the environmental data for the assessment is short. This is unfortunate
because the early phases of the design process are widely believed to be the most
influential in defining the LCA of products. Therefore, a new methodology for esti-
mating the environmental impacts of products is required in early design phase.
This paper presents an ANN based LCA model for products in early conceptual
design phase by classifying products into groups according to their environmental and
product characteristics. In order to specialize the proposed model for different classes
of products, it is necessary to develop a method to classify products into general cate-
gories that can lead to more specific relationships between product attributes and the
environmental performance of product concepts. ANNs and statistical analysis are
applied to the proposed approach. The statistical analysis is used to check the correla-
tion between product attributes and environmental impact drivers (EIDs) derived from
environmental impact categories [2-3]. An ANN is trained on product attributes typi-
cally known in the conceptual phase and the LCA data from pre-existing detailed
LCA studies.
In order to estimate the environmental impacts of products for the entire life cycle,
environmental impact drivers (EIDs) are introduced in this section. EIDs represent the
key environmental characteristics that determine the environmental impacts of prod-
ucts and are strongly correlated with the key factors in life cycle inventory. EIDs
eventually mean the environmental impact categories such as greenhouse effect,
460 K.-K. Seo, S.-H. Min, and H.-W. Yoo
An ANN based LCA model is a different approach to other methods. Learning algo-
rithms are trained to generalize on characteristics of product concepts using product
attributes and corresponding EIDs from pre-existing LCA studies. The product de-
signers query this ANN based LCA model with product attributes to quickly obtain an
approximate LCA for a new product concept (see figure 1). Designers need to simply
Artificial Neural Network Based Life Cycle Assessment Model for Product Concepts 461
provide product attributes of new product concepts to gain LCA predictions. It has the
flexibility to learn and grow as new information becomes available, but it does not
require the creation of a new model to make as LCA prediction for a new product
concept. Also, by supporting the extremely fast comparison of the environmental
performance of product concepts, it does not delay product development.
However, insight gained about the effect of product groupings suggested it might
be necessary to specialize the proposed models for different classes of products. This
paper explores the method needed to classify products into general categories that can
lead to more specific relationships between product attributes and the environmental
performance of product concepts.
Product attributes data and environmentally driven categories were then used to de-
velop a product classification system based on C4.5 decision tree algorithms [6].
462 K.-K. Seo, S.-H. Min, and H.-W. Yoo
C4.5 is a system for generating decision trees and classifying a set of instances.
This algorithm employs the top down and recursive splitting technique to produce
decision trees. A decision tree contains a root node, internal nodes representing the
product attributes, branches characterizing the product attribute values and leaves
expressing the binary decision.
The data flow of the decision tree is computed through the following steps.
Firstly, the raw datasets were pre-processed with the statistical packages and con-
trolled for plausibility and missing values of the attributes.
Secondly, the model is constructed after pre-processing dataset. C4.5 performs the
top down induction of the decision tree on the basis of a training set, which is used to
train the algorithm and build the structure of the decision tree. The training set is split
recursively into two sub-trees. This procedure is done at each node by calculating the
influence of the target attribute. C4.5 calculates the descending order of the attributes
within the tree with the gain ratio criterion. An information gain ration criterion is
used to consistently choose the best possible test to decide which attribute will be
tested. The information gain criterion measures the ratio of information relevant to
classification that is provided by the division to the information produced by the divi-
sion itself. C4.5 also contains heuristic methods for pruning decision trees to create
more comprehensible structures without compromising accuracy on unseen cases. If
the expected error rate in the sub-tree is greater than in a single leaf, pruning is done
by replacing a whole sub-tree by a leaf node. The following parameters were also
considered for analysis of the average pruned tree such as grouping attribute values,
minimum cases, size, observed error rate for unseen cases and expected error rate for
unseen cases.
Finally, the generated model is tested with respect to its explanatory power, with
the stratified 10-fold cross-validation method. The number of correct classified in-
stances determines whether the model can be applied to the datasets, or whether fur-
ther preparation of the model will be necessary. The 10 cross-validation procedure
was rerun with a pruning confidence level of 25% for different combinations of pa-
rameter options and product descriptors to explore distinct results on error estimations
associated with different decision trees. The different combinations produce the deci-
sion trees differently structured classification systems as expected. Figure 2 displays
the decision trees corresponding to the highlighted combinations and exhibits the
smallest expected error rate relatively to the other combinations.
Figure 2 shows that the products are classified into 7 groups and the results of the
classification analysis guided the definition of environmentally driven categories of
products: (1) low-mass, passive products; (2) low-mass, active products; (3) durable,
active, household appliances; (4) durable, mobile, active (external energy based)
products; (5) durable, low-mass, active (external energy based) products; (6) low-
mass, fiber-based, active (external energy based) products; (7) durable, mobile, active
products.
The purpose of this section is to explore the viability of a product classification
system that could be used to support the specialized ANN based LCA model. The
approximate LCA of product concepts would be estimated by the selection of the
suitable classification scheme.
Artificial Neural Network Based Life Cycle Assessment Model for Product Concepts 463
Decision Node
none electricity, batteries gasoline
<= 0% >= 0%
Low-mass, fiber-based
Recyclability
active (external energy
based) products
<=50 % >=50 %
With product attributes and EIDs defined, ANN-based LCA models were trained in
an effort to validate the concept. The feasibility test was conducted focusing on EIDen-
ergy. Training data with product attributes and corresponding life cycle energy con-
sumption from true past studies were collected for 40 different products in the group
(3) - durable, active, household appliances.
The identified products attributes are used to input of an ANN model and EIDs rep-
resented impact categories are used to output. The architecture for a backpropagation
(BP) neural network is developed to estimate an approximate LCA of product con-
cepts. The inputs in the ANN experiments consist of 19 product attributes strongly
correlated with EIDenergy and the output consists of one node (EIDenergy) (see table 3).
More than 30 experiments were performed to determine the best combination of the
learning rates (α), momentum (ρ), number of hidden layers, number of neurons in
hidden layers, learning rules and transfer functions. The resulting network has a hid-
den layer with 16 neurons. The most popular learning rules, generalized delta rules
and a sigmoid transfer function are used for the output node [7].
Figure 3 shows the structure of the BP neural network used in this study, which
consists of an input layer with 21 nodes, a hidden layer with 16 nodes and an output
layer with one node.
464 K.-K. Seo, S.-H. Min, and H.-W. Yoo
X1
X2
..
Inputs: ..
..
Identified EIDenergy
product ..
.
attributes .. .. Outputs:
. . EIDs
Xk-1
Xk
The predicted results of grouping products are shown in table 4 and figure 4. The
approximate LCA using ANNs with the identified EIDs and product attributes gives
good results except for heater. It is shown that classification of products provides
reasonable LCA predictions of the grouping products. The absolute errors of LCA
predicted by the ANN model ranged from 0.11 to 12 percent of the levels given by the
actual LCA, so the results obtained by this ANN model seem to be satisfactory.
Artificial Neural Network Based Life Cycle Assessment Model for Product Concepts 465
60000
Washing
50000 Machine
Life cycel energy(MJ/unit)
Heater
40000
TV Actual
30000
ANN
20000 LCD T V
Vacuum Refrigerator
10000 cleaner (large)
Refrigerator
0 Radio Coffee (small)
Mini-Vacuum maker
Cleaner Product
4 Conclusions
The lack of analytic LCA for early conceptual design stage motivated the develop-
ment of this estimation model. This paper explored the possibility of an ANN based
LCA model for the conceptual design phase by classifying products into groups ac-
cording to their environmental and product characteristics. This paper presented an
exploratory approach to develop a product classification system for this purpose. The
proposed approach is to guide a systematic identification of environmentally based
categories. The product classification ultimately identified was used to create classifi-
cation schemes with the C4.5 decision tree algorithm. C4.5 decision tree algorithms
466 K.-K. Seo, S.-H. Min, and H.-W. Yoo
generated automated classification systems with different structures and error estima-
tions by varying algorithm parameters and product attributes.
The product attributes and EIDs were identified to predict the product’s environ-
mental impacts. Then an ANN based approach with product attributes as inputs and
EIDs as outputs was developed to predict approximate LCA of grouping members
and the predicted results seemed to be satisfactory.
The proposed approach does not replace a full LCA but designers can use this
guideline to optimize their effort and guide their decisions at the conceptual design
phase of environmentally conscious product design.
Future work is needed to select a suitable classification scheme to support special-
ized proposed LCA models.
References
1. Curran, M. A.: Environmental Life-Cycle Assessment. McGraw-hill (1996)
2. Goedkoop, M. et al.: The Eco-indicator 99: A Damage Oriented Method for Life Cycle Im-
pact Assessment. Pre consultants B. V., Netherlands (1999)
3. SimaPro 4 User’s Manual. The Netherlands: PRe Consultants BV (1999)
4. Eisenhard, J.: Product Descriptors for Early Product Development: an Interface between
Environmental Expert and Designers. MS of Science in Mechanical Engineering, MIT
(2000)
5. Sousa, I., Eisenhard, J., and Wallace, D.R.: Approximate Life-Cycle Assessment of Product
Concepts using Learning Systems. Journal of Industrial Ecology, Vol. 4. No. 4. (2001)
61-81
6. Quinlan, J.R.: C4.5 Programs for Machine Learning. Morgan Kaufmann, San Mateo, CA
(1993)
7. Haykin, S. and Simon, S.: Neural Networks: A Comprehensive Foundation, Prentice Hall,
(1998)
New Heuristics for No-Wait Flowshop
Scheduling with Precedence Constraints and
Sequence Dependent Setup Time
1 Introduction
In chemical processes, all tasks of a job have to be processed without the in-
terruption between consecutive machines. Interruptions reduce the quality and
increase the cost of the product. The manufacturing system for these processes
is known as the no-wait flowshop [2]. These processes are found in petroleum
refineries, chemical plants, and steel plants. The processes in this system seem
more like separate entities than a series of connected operations. In this system,
starting time for the first operation of a job directly affects the job schedule of
the other machines involved in the process.
The objective of the no-wait flowshop problem is to determine the job se-
quence to minimize makespan. Rajendran [8] proposed a heuristic algorithm
to minimize makespan in the m-machine no-wait flowshop. Lin and Cheng [6]
proved that the no-wait flowshop scheduling problem is NP-hard, and they de-
veloped an algorithm to minimize makespan. Wang and Cheng [10] proposed
a heuristic algorithm considering the available constraints in a two machine
no-wait flowshop. Recently, Aldowaisan and Allahverdi [1] obtained the better
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 467–476, 2005.
c Springer-Verlag Berlin Heidelberg 2005
468 Y.H. Lee and J.W. Jung
2 Mathematical Model
Emmons and Mathur [2] asserted the no-wait flowshop scheduling problem is
equivalent to the traveling salesman problem (TSP). Therefore, the decision of
the job sequence to minimize makespan can be recognized as that of the path to
minimize cost in the TSP. It is assumed that there is no interruption between
the setup time and process time for a task in a job. According to the problem
description, we develop a m-machine no-wait flowshop scheduling model with
precedence constraints and sequence dependent setup time.
Indices
i, j : index for jobs
k : index for machines
Notations
n : number of jobs
m : number of machines in the flowshop
dij : increased makespan for the job j following the job i , dii =0 for all i
ui : the order of processing job i in a round sequence
skij : setup time for the job j followed by the job i on the machine k
pik : processing time for the job i on the machine k
cij : 1, if job i has precedence over job j, 0, otherwise
Decision Variable
xij : 1, if job j is followed by job i, 0, otherwise
New Heuristics for No-Wait Flowshop Scheduling with Precedence 469
The complete MIP model for the m-machine no-wait flowshop scheduling
model with precedence constraints and sequence dependent setup time can be
summarized as follows:
% n %n
M inimize i=1 j=1 dij · xij
subject to
n
xij = 1, f or j = 1, 2, . . . , n (1)
i=1
n
xij = 1, f or i = 1, 2, . . . , n (2)
j=1
ui − uj + n · xij ≤ n − 1, f or i = 2, 3, . . . , n, j = 2, 3, . . . , n, i = j (3)
%k %m %m
dij = M AXk=1,...,m ( h=1 pih + skij + h=k pjh ) − k=1 pih
f or i = 1, 2, . . . , n, j = 1, 2, . . . , n, i = j (4)
u i , uj ≥ 0 (8)
3 Heuristic Algorithm
The no-wait flowshop scheduling problem was proven to be NP-hard by Röck [9].
Precedence constraints and sequence dependent setup time must be considered
in this paper. Therefore, we apply heuristic algorithms to find the best solution.
Becauseany studies on this topic cannot be found, we develop three heuristic
algorithms for no-wait flowshop scheduling, referred to as HNFS-1, HNFS-2,
and HNFS-3 in this section.
the lot sizing problem [4] , and has been proven to be a good tool for solving com-
plex problems. Particularly, SA is recognized as an effective heuristic algorithm
for the flowshop scheduling problem[7]. However, there have been few studies
about no-wait flowshop scheduling with precedence constraints and sequence
dependent setup time using SA. Therefore, we develop the HNFS-1 algorithm
using SA. In the HNFS-1 algorithm the initial solution is a randomly generated
job sequence. The adjacent job sequence is generated by changing the positions
of two randomly chosen jobs. If the job sequence whose makespan is not less
than that of the best job sequence is accepted and updated, the temperature
is decreased. This algorithm is executed until the number of generated adjacent
job sequences is equal to the defined number. This algorithm can be represented
as follows.
HNFS-1 Algorithm:
Variable
σ : the randomly generated job sequence
B : the best job sequence
Begin
B←σ ;
Repeat
A: Generate a new sequence σ by exchanging positions of two
randomly chosen jobs in σ ;
If σ does not satisfy precedence constraints
Then go to A ;
If makespan of σ is less than that of σ
Then σ ← σ ;
If makespan of σ is less than that of B
Then B ← σ ;
Generate a random number ;
Else If random number is less than the temperature
Then
Begin
σ← σ ;
Decrease the temperature;
End;
Until the completeness condition is satisfied;
End.
HNFS-2 Algorithm:
Variable
σ : the null set
Begin
Divide all jobs into A, B groups where
A = {i|M% Pi ≥ (1 + m)/2},
%m B = {i|M Pi < (1 + m)/2},
m
M Pi = ( i k · pik / i pik )
Generate A : arranging elements from A in increasing order of M Pi ;
Generate B : arranging elements from B in decreasing order of M Pi ;
Get the initial sequence of π = A B ;
υ=0;
Repeat
υ =υ+1 ;
If the sequence in π does not satisfy the υth precedence constraint,
Then, exchange positions of two elements restricted
by the υth precedence constraint ;
Until υ is equal to the number of precedence constraints ;
Remove the element in the first position in π , and add in σ ;
Repeat
Remove the element in the first position in π, and insert
in the all available position in the partial schedule σ ;
Choose the best sequence σ ∗ with minimum makespan ;
If the chosen sequence σ ∗ does not satisfy precedence constraints,
Then, exchange positions of two elements restricted
by precedence constraints ;
σ ← σ∗ ;
Until π is empty set ;
End.
HNFS-3 Algorithm:
Variable
σ : the job sequence in the result of HNFS-2 algorithm
for an initial sequence
B : the best job sequence
Begin
B←σ ;
Repeat
A: Generate a new sequence σ by exchanging positions of two
randomly chosen jobs in σ ;
If σ does not satisfy precedence constraints
Then go to A ;
If makespan of σ is less than that of σ
Then σ ← σ ;
If makespan of σ is less than that of B
Then B ← σ ;
Generate a random number ;
Else If random number is less than the temperature
Then
Begin
σ← σ ;
Decrease the temperature;
End;
Until the completeness condition is satisfied;
End.
The initial temperature is 0.5 and reduced 30% if the solution whose makespan
is more than that of the best solution is accepted. This algorithm is executed
until the number of generated adjacent job sequences equals 25000.
Figures 1-2 show that it is necessary 25000 times observation to find con-
vergence of heuristic algorithms, HNFS-1 and HNFS-3, for the biggest problem
which has 90 jobs and 9 machines in this study. It is not necessary to consider
the convergence of HNFS-2, since this does not include SA.This experiment is
replicated 100 times for each problem. The performance of each algorithm is mea-
sured by mean percentage error, and standard deviation. The percentage error
is defined as the percentage of the difference of makespan of between heuristic
solution and best heuristic solution found in the experiment to makespan of
best heuristic solution found in the experiment, which is also used in the work
of Rajendran [8] and Aldowaisan and Allahverdi[1].
The results are depicted in Tables 1 and Figures 3-8. Table 1 shows average
makespan and average runtime to get good sequence in replicated experiments.
HNFS-2 and HNFS-3 can obtain the better sequence than HNFS-1 in shorter
runtimes. HNFS-3 can find better sequence than HNFS-2, but it takes more
474 Y.H. Lee and J.W. Jung
runtime. However, the maximum difference is only few seconds for the worst
case. In figures 3-4, mean percentage error of HNFS-3 is smaller than that of
HNFS-1 and HNFS-2 for all cases. Standard deviation of HNFS-3 is smaller than
that of HNFS-1 and HNFS-2. But, HNFS-2 outperforms HNFS-1. This means
that the integration of SA with HNFS-1 is effective. In figures 5-6, smaller mean
percentage error and standard deviation of HNFS-3 for changing number of
precedence constraints is found. That is, the performance of HNFS-3 is better
than that of HNFS-1 and HNFS-2. The above results show that HNFS-3 is a
good algorithm for the no-wait flowshop scheduling with precedence constraints
and sequence dependent setup time.
5 Conclusion
The no-wait flowshop scheduling problem can be easily found in chemical pro-
cesses or steel factories. In chemical processes, precedence constraints are an im-
portant consideration. Moreover, sequence dependent setup time should be con-
sidered in order to generate realistic schedule with minimum makespan. However
this problem is NP-hard and any algorithms for this problem cannot be found. In
this paper, we treated the no-wait flowshop scheduling problem by considering
precedence constraints and sequence dependent setup time. First, the mathe-
matical model aimed to provide the best job sequence with minimum makespan
was developed. Three approaches, HNFS-1, HNFS-2 and HNFS-3, were proposed
to obtain the best job sequence. The experimental results showed that HNFS-3
performed better than HNFS-1 and HNFS-2 in terms of the mean percentage
error and standard deviation. Moreover, HNFS-3 can obtain the better job se-
quence faster than HNFS-1. Despite the advantages of the proposed algorithm,
it should be improved. In chemical processes, there are many factors that affect
the manufacturing processes. It is necessary to develop a new heuristic algorithm
which considers all relevant characteristics of the products.
References
1. Aldowaisan, T., Allahverdi, A.: New Heuristics for No-wait Flowshops to Minimize
Makespan. Comput. Oper. Res.30 (2003) 1219-1231
2. Emmons, H., Mathur, K.: Lot Sizing in a No-wait Flowshop. Oper. Res. Lett. 17
(1995) 159-164
3. Gangadharan, R., Rajendran, C.: Heuristic Algorithms for Scheduling in the No-
wait Flow-shop. Int. J. Prod. Econ. 32 (1993) 285-290
476 Y.H. Lee and J.W. Jung
4. Hung, Y.F., Chien, K.L.: A Multi-class Multi-level Capacitated Lot Sizing Model.
J. Oper. Res. Soc. 51 (2000) 1309-1318
5. Lee, J.K., Kim, Y.D.: Search Heuristics for Resource Constrained Project Schedul-
ing. J. Oper. Res. Soc. 47 (1996) 678-689
6. Lin, B.M.T., Cheng, T.C.E.: Batch Scheduling in the No-wait Two-machine Flow-
shop to Minimize the Makespan. Comput. Oper. Res. 28 (2001) 613-624
7. Ogbu, F.A., Smith, D.K.: The Application of the Simulated Annealing Algorithm
to the Solution of the n/m/Cmax Flowshop Problem. Comput. Oper. Res. 17
(1990) 243-253
8. Rajendran, C.: A No-wait Flowshop Scheduling Heuristic to Minimize Makespan.
J. Oper. Res. Soc. 45 (1994) 472-478
9. Röck, H.: The Three-machine No-wait Flow Shop is NP-complete. J. ACM. 31
(1984) 336-345
10. Wang, G., Cheng, T.C.E.: Heuristics for Two-machine No-wait Flowshop Schedul-
ing with an Availability Constraint. Inform. Process. Lett. 80 (2001) 305-309
Efficient Dual Methods for Nonlinearly
Constrained Networks
Eugenio Mijangos
1 Introduction
Consider the nonlinearly constrained network flow problem (NCNFP)
subject to x ∈ F (2)
α ≤ c(x) ≤ β, (3)
where:
– The set F is
F = {x ∈ IRn | Ax = b, 0 ≤ x ≤ x},
where A is a node-arc incidence m × n-matrix, b is the production/demand
m-vector, x are the flows on the arcs of the network represented by A, and
x are the capacity bounds imposed on the flows of each arc.
The research was partially supported by grant MCYT DPI 2002-03330.
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 477–487, 2005.
c Springer-Verlag Berlin Heidelberg 2005
478 E. Mijangos
– The side constraints (3) are defined by c : IRn → IRr , such that c =
[c1 , · · · , cr ]t , where ci (x) is linear or nonlinear and twice continuously differ-
entiable on the feasible set F for all i = 1, · · · , r.
– f : IRn → IR is nonlinear and twice continuously differentiable on F.
where ρ ∈ IR, such that ρ > 0, and μ ∈ IRr are fixed, and lρ (x, μ) = f (x) +
μt c(x) + 12 ρc(x)t c(x).
Thus, the only variables in NNS are the flows x on the arcs of the network
represented by F (i.e., NNS is a pure nonlinear network flow problem), so the
efficiency of network flow techniques can be exploited [4, 22].
A rough draft of this method of solving NCNFP is
1. Solve NNS for ρ > 0 and μ fixed. If the solution obtained by solving NNS
is infeasible with respect to the constraints (3), go to step 2. Otherwise, the
procedure ends.
2. Update the estimate μ of the Lagrange multipliers of the constraints (3) and
(if necessary) the penalty coefficient ρ; then return to step 1.
Since Step 1 is efficiently solved, the key of this algorithm lies in Step 2 and
especially in the updating of μ; see [15, 9, 10, 11, 12].
On the other hand, when α < β in (3) an approach that requires one multi-
plier per each two-sided inequality constraint is what uses the penalty function
pj [cj (x), μj , ρ], which is not twice continuously differentiable; see [1, 14]. This
gives rise to an augmented Lagrangian function that is continuously differen-
tiable, but not twice continuously differentiable, even if the cost and constraint
functions are. As a result, serious difficulties can arise when Newton-like meth-
ods are used to minimize the subproblem NNS. This motivates alternative twice
differentiable augmented Lagrangian functions to handle inequality constraints.
The author puts forward a way of overcoming this difficulty is to use the expo-
nential multiplier method, as is suggested by Bertsekas in [2].
Another alternative approach to solve NCNFP is also considered, it is based
on dual methods. In particular, we focus on the primal problem
Efficient Dual Methods for Nonlinearly Constrained Networks 479
and its dual problem maxμ≥0 q(μ), where q(μ) = minx∈F {f (x) + μt c(x)} is the
dual function.
In this work to solve the dual problem we use an approximate subgradient
method given that the dual function q is approximately computed [13].
The main aim of this work is to compare the efficiency of the exponential
multiplier method (EMM) [2] and that of the approximate subgradient method
(ASM) [13] with that of the quadratic multiplier method (QMM) [10, 11, 12], us-
ing as a reference the results of the codes MINOS [16] and LOQO [23]. Numerical
experiments confirm the high efficiency and robustness of ASM and EMM.
This paper is organized as follows: Section 2 presents the exponential mul-
tiplier method; Section 3, the approximate subgradient method; Section 4, the
solution to the nonlinearly constrained network flow problem; and Section 5 puts
forward the numerical tests.
minimize f (x)
subject to: x ∈ F
ci (x) − βi ≤ 0, i = 1, . . . , r
−ci (x) + αi ≤ 0, i = 1, . . . , r
where μi+ , μi− > 0 for i = 1, . . . , r, and each ρ is a positive penalty parameter.
Note that as Bertsekas showed in Chapter 4 of [2], for μi+ > 0 (μi− > 0),
the corresponding ith penalty term in (8)
tends to ∞, as ρ → ∞, for all infeasible x.
tends to 0, as ρ → ∞, for all feasible x.
Moreover, for fixed ρ, as μki+ → 0 (μki− → 0), the penalty term goes to zero for
all x, feasible or infeasible. This is contrary to what happens in QMM. Nguyen
480 E. Mijangos
and Strodiot showed the convergence of the exponential multiplier method for
nonconvex problems [18].
The application of this method to the solution of NCNFP is summarized in
the following steps:
Step 1: At the kth iteration, for positive ρ, μk+ and μk− , it is solved the
nonlinear network subproblem
i+ = (μi+ ) exp(ρ[ci (x ) − βi ])
μk+1 k k
μk+1 k k
i− = (μi− ) exp(ρ[−ci (x ) + αi ])
3 Subgradient Method
We express the dual problem of the primal problem (5-7) as
where ck is the subgradient c(x(μk )), [·]+ denotes the projection on the closed
convex set M, and sk is a positive scalar stepsize. The subgradient iteration looks
like the gradient projection method, except that the subgradient ck is used in
place of the gradient, which may not exist. As is well known, unlike the gradient
projection method, the new iteration may not improve the cost for all values
of the stepsize sk . However, what makes the subgradient method work is that
for a sufficiently small stepsize sk , the distance from the current iterate to the
optimal solution set is reduced; see [21].
Efficient Dual Methods for Nonlinearly Constrained Networks 481
q ∗ − q(μk )
sk = γk , (16)
ck 2
The dynamic stepsize rule with relaxation-level control is based on the al-
gorithm given by Brännlund [3], whose convergence was shown by Goffin and
Kiwiel in [7] when εk = 0 for all k. The following algorithm was fitted by Mijan-
gos for the dual problem (9 -10) and εk → 0 in [13].
Algorithm 1
In [13] we analize the convergence of the ε-subgradient method (13) with the
stepsize (17) for qlev given by this algorithm.
in the original problem NCNFP (see (1-3)) by two inequalities as above, then
the dual function for NCNFP can be expressed as
q(μ+ , μ− ) = min l(x, μ+ , μ− ),
x∈F
where μ+ = (μ1+ , . . . , μr+ ), μ− = (μ1− , . . . , μr− ), and μi+ and μi− are the
multiplier estimates of the constraints ci (x) − βi ≤ 0 and −ci (x) + αi ≤ 0. So
we have
r
r
l(x, μ+ , μ− ) = f (x) + μi+ (ci (x) − βi ) + μi− (−ci (x) + αi ).
i=1 i=1
4 Solution to NCNFP
An algorithm is given below for solving NCNFP. This algorithm uses the ap-
proximate subgradient method described in Section 3 for c(x) ≤ 0 constraints.
It can easily be extended to two-sided inequality constraints, as can be seen in
Section 3.3.
The value of the dual function q(μk ) is estimated by minimizing approxi-
mately l(x, μk ) over x ∈ F (the set defined by the network constraints) so that
the optimality tolerance, τxk , becomes more rigorous as k increases; i.e., the
minimization will be asymptotically exact [1]. In other words, we set qεk (μk ) =
l(xk , μk ), where xk minimizes approximately the nonlinear network subproblem
NNSk
minimize l(x, μk )
x∈F
in the sense that this minimization stops when we obtain a xk such that
Z t ∇x l(xk , μk ) ≤ τxk
where limk→∞ τxk = 0 and Z represents the reduction matrix whose columns
form a base of the null subspace of the subspace generated by the rows of the
matrix of active network constraints of this subproblem (see [17]).
Let xk be the minimizer of this subproblem approximated by xk . As is shown
in [13], there exists a positive w, such that for k = 1, 2, . . . we have
l(xk , μk ) ≤ l(xk , μk ) + wτxk
484 E. Mijangos
1 k−i
3
T3 : Stop if μ − μk−i−1 ∞ < μ .
4 i=0
T4 : Stop if k reaches a prefixed value Nmax .
If μk fulfils one of these tests, then it is optimal, and the algorithm stops.
Without a duality gap, (xk , μk ) is a primal-dual solution.
Step 3 Update the estimate μk by means of the iteration
(
k+1 μki + sk cki , if μki + sk cki > 0
μi =
0, otherwise
In Step 0, for the checking of the stopping rules, τμ = 10−5 , μ = 10−5 and
Nmax = 200 have been taken. In addition, τx0 = 10−1 by default.
Step 1 of this algorithm is carried out by the code PFNL, described in [14],
which is based on the specific procedures for nonlinear networks flows [4, 22] and
the active set procedure of Murtagh and Saunders [17] using a spanning tree as
the basis matrix of the network constraints. Moreover,
In this work, α = 10−1 by default. Note that in this case, εk = τxk ω = 10−k−1 ω.
In Step 2, alternative heuristic tests have been used for practical purposes.
T1 checks the feasibility of xk , as if it is feasible the duality gap is zero, and then
(xk , μk ) is a primal-dual solution for NCNFP. T2 and T3 mean that μ does not
improve for the last N iterations. Note that N = 4.
To obtain sk in Step 3, we have used the iteration (13) with the dynamic
stepsize rule given by the level control Algorithm 1, in which B is replaced with
Bl = max{B, B/l} when an oscillation is detected, for B = 10−3 x1 − x0 and
Efficient Dual Methods for Nonlinearly Constrained Networks 485
%∞
B = 0.01. As can be seen, l=1 Bl = ∞. In addition, we set γk = 1 for all k,
δ = 10−5 |l(x0 , μ0 )|, δ0 = 0.5(c1 )+ B
The values given above have been heuristically chosen. The implementation in
Fortran-77 of the previous algorithm, termed PFNRN05 (see [8]), was designed to
solve large-scale nonlinear network flow problems with nonlinear side constraints.
5 Numerical Tests
The artificial problems used in these tests were created by means of the following
DIMACS-random-network generators: Rmfgen and Gridgen; see [5]. These gen-
erators provide linear flow problems in networks without side constraints. The
inequality nonlinear side constraints for the DIMACS networks were generated
through the Dirnl random generator described in [14], which gives rise to the
problems whose names start with D. The last two letters indicate the type of ob-
jective function that we have used for DIMACS problems: Namur functions, n*,
and EIO1 functions, e*. More information about the features of these problems
can be found in [15].
In Table 1 we have the CPU-times spent by PFNRN using the exponen-
tial multiplier method, tEM M , the approximate subgradient method, tASM , and
the quadratic multiplier method, QM M [12], are compared with those spent by
MINOS [16], tM IN , and LOQO [23], tLOQO . The results of MINOS and LOQO
have been obtained on the NEOS server with AMPL input. PFNRN with QMM,
ASM, and EMM, has solved the problems on a Sun Sparc Ultra-250 work station
under UNIX, which has a similar speed to that of the UFFIZI machine of the
NEOS server.
The comparison of the CPU-times spent by these PFNRN’s versions with
MINOS and LOQO indicate clearly that PFNRN is more efficient than MINOS
and LOQO for this kind of problems.
486 E. Mijangos
Likewise, Table 1 points out that PFNRN for both EMM and ASM has a
similar efficiency, which is slightly better than for QMM. In addition, EMM has
improved the times of QMM in all of these problems, but is highly dependent
on the initial penalty parameter, which does not exist for ASM.
References
1. Bertsekas, D.P. Constrained Optimization and Lagrange Multiplier Methods. Aca-
demic Press, New York (1982)
2. Bertsekas, D.P. Nonlinear Programming. 2nd ed., Athena Scientific, Belmont, Mas-
sachusetts (1999)
3. Brännlund, U. On relaxation methods for nonsmooth convex optimization. Doc-
toral Thesis, Royal Institute of Technology, Stockholm, Sweden (1993)
4. Dembo, R.S. A primal truncated Newton algorithm with application to large–
scale nonlinear network optimization. Mathematical Programming Studies, Vol.
31 (1987) 43–71
5. DIMACS. The first DIMACS international algorithm implementation challenge :
The bench-mark experiments. Technical Report, DIMACS, New Brunswick, NJ,
USA (1991)
6. Ermoliev, Yu. M. Methods for solving nonlinear extremal problems. Cybernetics,
Vol. 2 (1966) 1–17
7. Goffin, J.L. and Kiwiel, K. Convergence of a simple subgradient level method.
Mathematical Programming, Vol. 85 (1999) 207–211
8. Mijangos, E. PFNRN03 user’s guide. Technical Report 97/05, Dept. of Statistics
and Operations Research. Universitat Politècnica de Catalunya, 08028 Barcelona,
Spain (1997) (downloadable from website http://www.ehu.es/∼mepmifee/)
9. Mijangos, E. On superlinear multiplier update methods for partial augmented La-
grangian techniques. Qüestiio, Vol. 26 (2002) 141–171
10. Mijangos, E. An implementation of Newton-like methods on nonlinearly con-
strained networks. Computers and Operations Research, Vol. 32(2) (2004) 181–199
11. Mijangos, E. On the efficiency of multiplier methods for nonlinear network prob-
lems with nonlinear constraints. IMA Journal of Management Mathematics, Vol.
15(3) (2004) 211–226
12. Mijangos, E. An efficient method for nonlinearly constrained networks. European
Journal of Operational Research, Vol. 161(3) (2005) 618–635
13. Mijangos, E. Approximate subgradient methods for nonlinearly constrained net-
work flow problems. Submitted to Journal on Optimization Theory and Applica-
tions (2004)
14. Mijangos, E. and Nabona, N. The application of the multipliers method in nonlin-
ear network flows with side constraints. Technical Report 96/10, Dept. of Statistics
and Operations Research. Universitat Politècnica de Catalunya, 08028 Barcelona,
Spain (1996) (downloadable from website http://www.ehu.es/∼mepmifee/)
15. Mijangos, E. and Nabona, N. On the first-order estimation of multipliers from
Kuhn-Tucker systems. Computers and Operations Research, Vol. 28 (2001) 243–
270
16. Murtagh, B.A. and Saunders, M.A. MINOS 5.5. User’s guide. Report SOL 83-
20R, Department of Operations Research, Stanford University, Stanford, CA, USA
(1998)
Efficient Dual Methods for Nonlinearly Constrained Networks 487
17. Murtagh, B.A. and Saunders, M.A. Large-scale linearly constrained optimization.
Mathematical Programming, Vol. 14 (1978) 41–72
18. Nguyen, V.H. and Strodiot, J.J. On the Convergence Rate for a Penalty Function
of Exponential Type. Journal of Optimization Theory and Applications, Vol. 27(4)
(1979) 495–508
19. Poljak, B.T. A general method of solving extremum problems, Soviet Mathematics
Doklady, Vol. 8 (1967) 593–597
20. Poljak, B.T. Minimization of unsmooth functionals, Z. Vyschisl. Mat. i Mat. Fiz.,
Vol. 9 (1969) 14–29
21. Shor, N.Z. Minimization methods for nondifferentiable functions, Springer-Verlag,
Berlin (1985)
22. Toint, Ph.L. and Tuyttens, D. On large scale nonlinear network optimization.
Mathematical Programming, Vol. 48 (1990) 125–159
23. Vanderbei, R.J. LOQO: An interior point code for quadratic programming. Opti-
mization Methods and Software, Vol. 12 (1999) 451–484
A First-Order ε-Approximation Algorithm for
Linear Programs and a Second-Order
Implementation
Ana Maria A.C. Rocha1 , Edite M.G.P. Fernandes1 , and João L.C. Soares2
1
Departamento de Produção e Sistemas, Universidade do Minho, Portugal
{arocha, emgpf}@dps.uminho.pt
2
Departamento de Matemática, Universidade de Coimbra, Portugal
jsoares@mat.uc.pt
1 Introduction
Set-covering, -partitioning and -packing models arise in many applications like
crew scheduling (trains, buses or airplanes), political districting, protection of
microdata, information retrieval, etc. Typically these models are suboptimally
solved by heuristics because an optimization framework (usually of the branch-
and-price type) has to be rather specialized, if feasible at all. Moreover, a branch-
and-price framework requires the solution of large linear programs at every node
of the branch-and-price tree and these linear programs may take a long time and
storage to be solved to optimality.
Our framework attempts to find reasonable approximate solutions to those
models quickly and without too much storage, along the lines of Lagrangian
relaxation. The approximation obtained may serve the purpose of speeding-up
the optimal basis identification by simplex-type algorithms. We will be looking
for an approximated solution of a linear program in the following form
z∗ ≡ min cx
s.t. Ax ≥ b , (1)
x∈P ,
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 488–498, 2005.
c Springer-Verlag Berlin Heidelberg 2005
An ε-Approximation Algorithm 489
and ones, b is a vector of all-ones, and the set P is the lattice {0, 1}n , or the
hypercube [0, 1]n in the fractional version. If P includes a budget constraint then
P becomes the feasible region of a 0 − 1 knapsack problem or a fractional 0 − 1
knapsack problem, respectively. We also assume that conv(P ) is a polyhedron.
In recent years, several researchers have developed algorithms (see [3, 4, 2])
that seek to produce approximate solutions to linear programs of this sort, by
constructing an exponential potential function which serves as a surrogate for
feasibility and optimality.
We focus on obtaining a reasonable approximation to the optimal solution of
(1) by an ε-feasible solution. We say that a point x is ε-feasible relatively to the
constraints Ax ≥ b if
where ai denotes the ith row of the matrix A. To achieve this, we will attempt
to solve the following convex program
m
Φ(α, z) = min φα (x) ≡ exp (α (bi − ai x))
(3)
i=1
s.t. x ∈ P
(z) ≡ conv (P ∩ {x : cx ≤ z})
where conv(·) denotes convex hull, for several adequate values of the parameters
α and z. The scalar α is a penalty parameter and z is a guess for the value of z∗ .
To solve the nonlinear program (3) we propose a first-order feasible directions
method with constant stepsize whose running time depends polynomially on 1/ε
and the width of the set P
(z) relatively to the constraints Ax ≥ b. Significantly,
the running time does not depend explicitly on n and, hence, it can be applied
when n is exponentially large, assuming that, for a given row vector y, there
exists a polynomial subroutine to optimize yAx over P
(z).
This paper is organized as follows. In Sect. 2 we describe the ε-approximation
algorithm used in this work. Then, in Sect. 3 we present the first-order algorithm
with fixed stepsize. Our computational experience on set-partitioning problems
is presented in Sect. 4 and Sect. 5 contains some conclusions and future work.
Keeping the value of α fixed, we will use bisection to search for the minimum
value of z such that P
(z) ∩ {x : Ax ≥ b} is nonempty, being driven by (3). The
bisection search maintains an interval [za , zb ] such that P
(za ) ∩ {x : Ax ≥ b} is
empty, and there is some x ∈ P
(zb ) that is ε-feasible relatively to ’Ax ≥ b’. The
search is interrupted when zb − za is small enough to guarantee zb ≤ z∗ . This
does not imply any bound on how much zb differs from z∗ . It may be possible
that zb is much less than z∗ though very unlikely for α large, as it is implicit
from Proposition 1 below.
where xk is optimal in Φ(αk , z∗ ). Then, for every accumulation point (x̄, ȳ) of
the sequence {(xk , y k )}, x̄ is optimal for program (1).
If [zak , zbk ] is the last bisection interval of the search for a given εk then, we
may restart the bisection search with [zbk , zb ] for some εk+1 < εk , for example,
εk+1 = εk /2. The value of zb denotes a proven upper bound on the value of z∗ .
Note that an εk -feasible solution is known at the left extreme of the new interval
and furthermore it belongs to P
(z), for any z ∈ [zbk , zb ]. Thus, it may serve as
initial solution for the minimization of φα when ε = εk+1 and will not overflow
the exponential function evaluations.
Each iteration of our main algorithm consists of a number of iterations of
bisection search on the z value for a fixed value of the parameter ε. Then, ε is
decreased, the bisection interval is updated and bisection search restarts. This
process is terminated when ε is small enough.
From Lemma 1, if Φ (ε, z) ≤ (1 + ε) m then there is x ∈ P
(z) that is ε-feasible
relatively to ’Ax ≥ b’ (for example, the optimal solution); otherwise, there is no
feasible solution x in (1) satisfying cx ≤ z. The new interval [zak+1 , zbk+1 ] is
adequately updated and k is increased by one unit. Termination occurs when
zbk − zak is small enough. The algorithm is formally described in Algorithm 1.
Step 2 of the algorithm Bisection search involves applying an off-the-shelf
convex optimization method to (3). Note that, we always have xka ∈ P
(z)
which makes it a natural starting point for the corresponding optimization
algorithm.
An ε-Approximation Algorithm 491
Step 1: If zbk − zak = 1 then set (xa , za , xb , zb ) := (xka , zak , xkb , zbk ) and STOP.
Step 2: Set z := (zak + zbk )/2 and obtain x̄ ∈ P
(z) such that
either Φ (ε, z) ≤ φε (x̄) ≤ (1 + ε)m , (6)
or (1 + ε)m < Φ (ε, z) ≤ φε (x̄) . (7)
( k k
k+1 k+1 k+1 k+1 (xa , za , x̄, z) if (6) holds,
Step 3: Set (xa , za , xb , zb ) :=
(x̄, z, xkb , zbk ) if (7) holds.
Set k := k + 1.
We may now present a formal description of the Main algorithm (see Al-
gorithm 2). On entry: za = min{cx − y(Ax − b) : x ∈ P } is an integral lower
bound on the value of z∗ , for some fixed y ≥ 0; xa ∈ P
(za ) and Δ is a positive
integer related to the initial amplitude of the starting intervals in each bisection
search. Overall, we have the following convergence result. After a finite number
of calls, the last interval [zb − 1, zb ] of the Bisection search routine is such that
zb = z̄, where z̄ = min{z : x ∈ P
(z), Ax ≥ b}. In general z̄ ≤ z∗ , with equality
if P is a polyhedron.
If x̂ is optimal in (8) then we reset x̄ to x̄ + σ̂(x̂ − x̄), for some fixed stepsize σ̂ ∈
(0, 1], and proceed analogously to the next iteration. The conceptual algorithm is
halted when φε (x̄) ≤ (1 + ε)m or a maximum number of iterations is reached. Of
course, in practice other stopping criteria should be accounted for. For example,
notice that (8) is equivalent to
max (ȳA) x
s.t. cx ≤ z , (9)
x∈P ,
for ȳ defined componentwise by ȳi = α exp(α(bi − ai x̄)), for i = 1, 2, . . . , m.
This is essentially because ∇φε (x̄) = −ȳA. Then, since ȳ ≥ 0, the inequality
’ȳAx ≥ ȳb’ is valid for the polyhedron {x : Ax ≥ b}. Thus, if at some point of
the solution procedure of (3) we have that the optimal value of (9) is smaller
than ȳb then we may immediately conclude that P
(z) ∩ {x : Ax ≥ b} is empty.
Theorem 1 below presents one particular choice for the fixed stepsize σ̂. It
depends on the following quantity, introduced as the width of P
(z) relatively to
the constraints ’Ax ≥ b’ in [5],
( * ( *
sup Ax − Ay∞ sup | ai x − ai y |
ρ≡ = max . (10)
s.t. x, y ∈ P
(z) i=1,2,...,m s.t. x, y ∈ P
(z)
In [5], ρ is defined differently depending when whether the matrix A is such
that Ax ≥ 0, for every x ∈ P
(z), or not. If yes, then the two definitions coincide
with ρ = maxi maxx∈P (z) ai x. If not, then our definition of ρ is half of the ρ
that is proposed in [5].
Theorem 1. ([6]) Assume that z∗ ≤ z, x̄ ∈ P
(z) and it is not ε-feasible (rela-
tively to ’Ax ≥ b’), for some ε ∈ (0, 1), x̂ ∈ P
(z) is optimal for program (8), ρ
is given by (10) and
ln(m(3 + ε)) 1
α ≥ max , . (11)
ε ρ ln 2
Then, for σ̂ = 1/(αρ)2 we have that
1 1+ε
φε (x̄ + σ̂(x̂ − x̄)) < 1− φε (x̄) . (12)
4(αρ)2 3 + ε
An ε-Approximation Algorithm 493
Corollary 1. ([6]) If α satisfies (11) and ε ∈ (0, 1) then our algorithm, using
σ̂ = 1/(αρ)2 and starting from x0 ∈ P
(z), terminates after
iterations, with an x ∈ P
(z) that is ε-feasible relatively to ’Ax ≥ b’ or, otherwise,
with the proof that there is no x feasible in (1) such that cx ≤ z.
Note that the right hand side of (14) is O(ln3 (m)ε−3 ρ2 λ(x0 )). If λ(x0 ) = O(ε)
then only O(ln3 (m)ε−2 ρ2 ) = Õ(ε−2 ρ2 ) iterations are required. This complexity
result is related to Karger and Plotkin’s [4–Theorem 2.5] (Õ(ε−3 ρ)) and Plotkin,
Shmoys and Tardos’s [5–Theorem 2.12] (Õ(ε−2 ρ ln ε−1 )). The result of Karger
and Plotkin is valid even if the budget constraint is included in the objective
function of (3) without counting in the definition of ρ. We recall that a function
f (n) is said to be Õ(g(n)) if there exists a constant c such that f (n) lnc (n) ≥
O(g(n)).
Given an initial point x̄ ∈ P
(z), the Algorithm 3 contains a practical imple-
mentation of the first-order algorithm to solving (3).
Theorem 2. ([6]) For every i ∈ {1, 2, . . . , m}, let Ui be an upper bound on the
value of φi (x̄ + σ∗ d). Then, for every i such that ai d = 0, the following holds,
& - '
1 Ui + sgn(ai d) Ui2 − 4
σ∗ ≤ ln . (15)
αai d 2 exp (α (ai x̄ − bi ))
First-order Second-order
Name Initial Final Max. Out. Time Max. Out. Time
za ε Viol. It. (sec.) Viol. It. (sec.)
sppnw08 35894 6.10E-05 4.20E-07 1 469.86 1.28E-14 1 21.48
sppnw10 68147 0.01563 0.00269 4* 26404.26 9.15E-10 6 3546.41
sppnw12 14102 0.00781 0.00121 3* 17301.78 7.41E-14 4 134.80
sppnw15 67714 0.03125 0.00521 1* 4522.86 5.79E-09 5 124.87
sppnw20 16604 0.03125 0.00819 1* 5653.53 9.88E-09 4 275.65
sppnw21 7371 0.03125 0.00573 1* 4752.56 8.96E-10 4 110.24
sppnw22 6917 0.01563 0.00470 3* 7919.76 2.68E-10 5 230.26
sppnw23 12301 0.01563 0.00385 2* 9034.06 2.74E-11 5 15173.3
sppnw24 5828 0.01563 0.00296 3* 44584.35 1.38E-09 4 2107.83
sppnw25 5830 0.01563 0.00280 6* 59902.49 1.14E-09 5 1718.74
sppnw26 6733 0.01563 0.00308 3* 16722.60 1.91E-08 4 275.63
sppnw27 9871 0.00781 0.00175 3* 23535.21 2.18E-14 5 1588.36
sppnw28 8161 0.00781 0.00104 4* 23150.30 8.65E-15 4 1147.54
sppnw32 14560 0.01563 0.00296 3* 3059.28 8.72E-10 4 12.51
sppnw35 7194 0.01563 0.00393 2* 19234.21 1.92E-09 5 5420.31
sppnw36 7260 0.01563 0.00302 1* 32498.39 4.23E-13 1 3049.8
sppnw38 5541 0.01563 0.00457 2* 26496.43 1.43E-10 4 1677.83
An ε-Approximation Algorithm 497
5 Conclusions
In this paper we propose an algorithm for finding an ε-feasible solution relatively
to the constraints of a linear program. The first-order version of the algorithm
attempts to minimize a linear approximation of an exponential penalty function
using feasible directions and a constant stepsize. The second-order implementa-
tion uses the software Loqo to minimize the exponential function.
Our preliminary computational experiments show that the first-order method
does not perform as expected when solving set-partitioning problems. In parti-
cular, the algorithm converges very slowly and does not reach an ε-approximate
solution, for ε < 10−4 , for all tested problems but for sppnw08.
We may also conclude that the second-order implementation of the algorithm
works quite well, specially for problems that are not large-scale, finding an ε-
feasible solution in (1) satisfying cx < z, for a small and adequate ε value. Future
developments will focus on improving convergence of the first-order algorithm.
References
1. Barahona, F., Anbil, R.: The volume algorithm: Producing primal solutions with a
subgradient method. Math. Prog. 87 (2000) 385–399
2. Bienstock, D.: Potential Function Methods for approximately solving linear pro-
gramming problems: theory and practice. Kluwer Academic Publishers (2002)
3. Grigoriadis, M.D., Khachiyan, L.G.:Fast approximation schemes for convex pro-
grams with many blocks and coupling constraints. SIAM J. Optim. 4 1994 86–107
498 A.M.A.C. Rocha, E.M.G.P. Fernandes, and J.L.C. Soares
4. Karger, D., Plotkin, S.: Adding multiple cost constraints to combinatorial optimiza-
tion problems, with applications to multicommodity flows. Proceedings of the 27th
Annual ACM Symposium on Theory of Computing (1995) 18 – 25
5. Plotkin, S., Shmoys, D.B., Tardos, E.: Fast approximation algorithms for fractional
packing and covering problems. Math. Oper. Res. 20 (1995) 495–504
6. Rocha, A.M.: Fast and stable algorithms based on the Lagrangian relaxation. PhD
Thesis (in portuguese), Universidade do Minho, Portugal (2004) (forthcoming)
Inventory Allocation with Multi-echelon Service
Level Considerations
1 Introduction
The purpose of this paper is to formulate and analyze a multi-product multi-
echelon inventory system for finished goods with Poisson demand at the final
retail locations. The key decisions are the inventory levels of various products to
be held at each stocking location. The design decisions are made with concern
for both total inventory investment and service levels (measured by the aver-
age stockout probability at each echelon). The system structure and operation
is assumed known and fixed. This specifies the distribution network, potential
stocking locations, material flows, the average in-transit lead times on links, the
average manufacturing lead time at the plants and the demand processes at the
retail locations. The concerns in this model are the tactical decisions of how
much of each product to stock at each location.
The general structure of the finished goods distribution system under study
is represented in Figure 1. This structure represents the distribution of finished
goods from production plants to final demand (represented by retail outlets).
To take advantage of bulk shipment rates, distribution centers (DC’s) are es-
tablished near retail outlets. A network of DC’s allows larger shipments from
the plants to the DC’s, potentially decreasing unit transportation costs as a re-
sult of the economies-of-scale in transportation. Such consolidation may reduce
transportation rates significantly.
The finished goods distribution system may involve thousands of different
products or stock keeping units (SKU’s). Average demand rates for individual
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 499–508, 2005.
c Springer-Verlag Berlin Heidelberg 2005
500 J.-R. Lin, L.K. Nozick, and M.A. Turnquist
Products
Plants
products at each retail outlet are often relatively low due to the proliferation of
products. We represent this demand using a Poisson model. Inventory control in
such a system can take advantage of a multi-echelon structure. Muckstadt and
Thomas [1] show that multi-echelon inventory systems may reduce the total in-
ventory cost substantially when most products have low demand rates. However,
Hausman and Erkip [2] demonstrate that the reduced inventory cost may not be
significant enough to offset the organizational benefits and managerial simplicity
of the single-echelon model. The debate motivates us to evaluate the benefit of
stocking inventory at the DC’s. From an inventory perspective, the existence of
the DC’s creates a potential opportunity for a third echelon of inventory, and
raises the questions of whether or not the DC’s should be stocking locations,
and if so, for what products.
The purpose of this paper is to develop a multi-product multi-echelon inven-
tory allocation model for a finished goods distribution system and to investigate
the potential worth of stocking inventory at the DC’s. We will first focus on
allocation of a single product (made at a single plant) across three echelons,
and then illustrate how to extend the model to include more products and mul-
tiple plants. The remainder of this paper is organized as follows. In section 2
we briefly review the literature of continuous review policies for multi-echelon
inventory systems. In section 3 we present a mathematical programming formu-
lation of a one-product three-echelon inventory allocation problem. In section
4 we develop a solution procedure for three-echelon systems. In section 5 we
describe an illustrative example. In section 6 we discuss oppurtunities for future
research.
Inventory Allocation with Multi-echelon Service Level Considerations 501
2 Literature Review
Researchers have studied continuous-review policies for multi-echelon inventory
systems in various ways, and there is an extensive literature on this topic. For
review articles on multi-echelon inventory systems, we refer to Nahmias [3], Ax-
säter [4], and Diks et al. [5]. We briefly review some key works of particular
relevance to this research. Sherbrooke [6] develops the well-known METRIC
(Multi-Echelon Technique for Recoverable Item Control) model for determining
the optimal allocation of repairable items in a two-echelon inventory system.
The METRIC approximation has been used successfully in practice, especially
in military applications involving thousands of items with low demand rates.
Several applications in the Air Force Logistics Command have been reported
by Demmy and Presutti [7]. Several extensions of METRIC considering multi-
indenture items and more general batch ordering policies have been developed,
and discussions of these models can be found in the review articles mentioned
above. Sherbrooke [8] also discusses these extensions in detail.
METRIC-like models approximate the steady state distribution of inventory
level for a stockage policy and use it to determine the average cost associated
with the policy. Axäster [9] develops a more efficient and direct approach to find
the minimum-cost inventory policy for an inventory system with one warehouse
and N retailers.
Nozick and Turnquist [10] take a METRIC-like approach to formulate a one-
product two-echelon inventory system. They consider two types of stockout sit-
uations and assume that the stockout penalties can be explicitly estimated and
expressed as equivalent dollars. Their formulation is a nonlinear optimization
model to determine the inventory levels that minimize the sum of the costs re-
sulting from stockouts and inventory holding costs. We extend their model to
a multi-product three-echelon system and develop a solution procedure to find
the optimal inventory allocation.
3 Problem Definition
The inventory allocation problem can be summarized as follows. For each prod-
uct determine how much to stock at each location so as to strike the appropriate
balance between inventory holding costs and stock out costs, given the follow-
ing parameters: locations of the plants, distribution centers and warehouses; the
average transportation time between facilities; the average manufacturing lead
times at the plants; and the demand processes at the retailers.
Let us first look at a one-plant, one-product, three-echelon system, which is a
special case of the more general multi-plant, multi-product, three-echelon system.
This particular type of three-echelon system consists of a group of retailers, a
group of DC’s, and a plant. Customer demands occur only at retailers. If the
retailer has stock on hand, the order is satisfied. Otherwise, it is backordered.
Once an order occurs at a retailer, it will request replenishment from the higher
echelon - either the plant or the DC through which it receives its shipments.
502 J.-R. Lin, L.K. Nozick, and M.A. Turnquist
Once a request occurs at a DC, it will request replenishment from the plant.
There is no lateral supply among retailers and there is also no lateral supply
among DC’s.
We define the following subscripts, sets, decision variables, and inputparameters.
Subscripts and sets:
Decision variables:
Input parameters:
such that
Sd ≥ 0, ∀d ∈ D; Sc ≥ 0, ∀c ∈ C; S0 ≥ 0 (2)
The objective is to minimize inventory holding costs at the plant, DC’s and
retailers plus penalty costs for stockout. Since we assume that each facility re-
plenishes inventory on a one-for-one basis and that the demand at each retailer
follows a Poisson distribution with average demand λd , we can determine the
accumulated demand for each product at the plant and each DC. The average
replenishment lead times and the stockout probabilities for each product at each
location are discussed in Feeney and Sherbrooke [11] and Sherbrooke [6]. For
products flows that do not use a DC, the stockout probability at the dummy
DC is 1.0. Equations (3) and (4) determine the average demand for each product
at each DC and the plant. Equations (5) and (6) determine the average waiting
time and average replenishment lead time for each product from the plants to
DC’s. Equations (7) and (8) determine the average waiting time and average
replenishment lead time for each product from DC’s to retailers. Equations (9)-
(11) determine the stockout probabilities for each product at the plant, DC’s
and retailers.
Λc = λd , ∀c ∈ C (3)
d∈D(c)
Λ0 = Λc = λd (4)
c∈C d∈D
%
x>S0 (X − S0 )p(x|Λ0 ψ)
W0 (S0 ) = (5)
Λ0
ζc = ζc + W0 (S0 ) (6)
%
x>Sc (x − Sc )p(X|Λc ζc )
Wc (Sc , S0 ) = , ∀c ∈ C (7)
Λc
ζcd = ζcd + Wc (Sc , S0 ), ∀c ∈ C, ∀d ∈ D(c) (8)
504 J.-R. Lin, L.K. Nozick, and M.A. Turnquist
∞
e−Λ0 ψ (Λ0 ψ)q
ρ0 (S0 ) = (9)
q!
q=S0 +1
∞
e−Λc ζc (Λc ζc )q
ρc (Sc , S0 ) = , ∀c ∈ C (10)
q!
q=Sc +1
∞
e−λd ζcd (λd ζcd )q
ρd (Sd , Sc , S0 ) = , ∀c ∈ C, ∀d ∈ D(c) (11)
q!
q=Sd +1
4 Solution Procedure
To solve a three-echelon inventory allocation problem, we first have to know
how to solve a two-echelon inventory allocation problem. Consider a two-echelon
inventory system where we do not stock any inventory at the DC’s. This is a
particular case of three-echelon inventory system, where the stockout probability
at each DC is 1. This will simplify the objective function (1) as (12), denoted as
−
→
C(Sd , S0 ) .
−
→ −
→ − → −
→ − →
C(Sd , S0 ) = C(Sd , Sc , S0 |Sc = 0 )
= h × (S0 + Sd ) + β2 × (1 − ρ0 ) × λd ρd + β3 × ρ0 × λd ρd
d∈D d∈D d∈D
= h × S0 + h × Sd + [β2 × (1 − ρ0 ) + β3 × ρ0 ] × λd ρd
d∈D
= h × S0 + (h × Sd + β × λd ρd )
d∈D
= h × S0 + C(Sd |S0 ) (12)
d∈D
−
→
The cost function of a two-echelon inventory system C(Sd , S0 ) is still not
−
→
jointly convex in both the inventory levels at retailers (Sd ) and the inventory
level at the plant (S0 ). However, for a given inventory level at the plant(S0 ),
it is separable for each retailer. Each retailer inventory cost function, denoted
C(Sd |S0 ) , is convex if the inventory level (Sd ) is greater than the average lead
time demand of the retailer. Based on incremental cost analysis, we observe that
C(Sd |S0 ) is either a monotone increasing function in the inventory level held at
the retailer (Sd ) or it has two local minima. In the first case, setting the retailer
inventory to zero is the global optimum. In the second case, one of the two local
Inventory Allocation with Multi-echelon Service Level Considerations 505
optima is when the inventory level at the retailer is zero, and the other lies in the
convex region. Based on this observation, we develop an algorithm to efficiently
find the optimal inventory level for the retailers.
1. Compare the value of the maximal reduction of stockout penalty [β × λd ×
p(x = !λd ζd "|λd ζd )] with the unit holding cost (h). If its value is less than
h, return the optimal inventory level (Sd∗ ) equal to zero and terminate. Oth-
erwise, continue on step 2.
2. Starting from the integer part of the lead time demand (x = !λd ζd "), find
the smallest x such that the reduced stockout penalty by holding one more
unit is less than the unit holding cost. (Denote this x as (Sd∗ ).)
3. Compare the total cost of stocking (Sd∗ ) at the retailer with the total cost
of not stocking inventory at the retailer and choose the one with lower total
cost.
Based on the solution procedure for the retailers, we can easily construct a
systematic search method to find the optimal inventory allocation between plants
and retailers. More specifically, the algorithm is as follows.
1. Find the lower and upper bounds of the optimal inventory level at the plant.
2. For each possible inventory level at the plant (So ), find the optimal inventory
level held at a retailer (Sd ) for each retailer separately (applying the solution
algorithm above).
3. Find the optimal combination of inventory levels at the retailers and the
−→ −→
plant (Sd∗ , S0∗ ) that has the smallest total inventory cost C(Sd∗ , S0∗ ).
We apply Axsäter’s idea [9] to find the lower bound and upper bound of the
optimal inventory level at the plant. The approach is summarized as follows.
First, find the lower bound and upper bounds of the optimal inventory level
at retailers for the shortest and longest replenishment lead times, respectively.
Then find the lower bound of the optimal level at the plant by optimizing the
total cost of the whole system, for the upper bounds of the optimal inventory
level at retailers. Similarly, we can find the upper bound of the optimal inventory
level at the plant by optimizing the total cost of the whole system, for the lower
bounds of the optimal inventory level at retailers. Once we know how to find
the optimal inventory allocation of a two-echelon inventory system, finding the
optimal inventory allocation of a three-echelon system is straightforward. The
solution algorithm for a three-echelon system is as follows.
1. Find the lower and upper bounds of the optimal inventory level at the plant.
2. For each possible inventory level at the plant (S0 ) within the allowable range,
find the optimal inventory allocation for each two-echelon sub-system that
consists of a DC with those retailers receiving products via it (applying the
solution algorithm for two-echelon inventory systems).
3. Choose the optimal combination of inventory levels at the retailers, the DC’s
−→ − →
and the plant(Sd∗ , Sc∗ , S0∗ ) that minimizes the total inventory costs.
506 J.-R. Lin, L.K. Nozick, and M.A. Turnquist
5 Illustrative Example
We demonstrate the computations of inventory allocation on a small example
with 1 plant, 1 DC and 4 retailers, as illustrated in Figure 2. The material flows,
the average in-transit lead times on links, the average manufacturing lead time,
and the proportions of total average demand at the various retailers are also
shown in Figure 2.
DC
4
R1: 66% of total demand
Manufacturing lead time
Plant 3
= 14 days 4
7 R2: 14% of total demand
7
R3: 11% of total demand
Computations have been done for a range of products whose values vary from
$18,000 to $48,000 per unit (the products are automobiles). For purposes of this
example, we will assume that the annual inventory holding cost is 24%. The
optimal inventory allocation depends on the unit holding costs and the values
of the three stockout penalties. We assume that the three per unit stockout
penalties are $200, $350 and $2,100 respectively. The resulting system-wide fill
rate is about 86% (across all products and locations) in both the two-echelon
and three-echelon solutions. Thus, the overall performance of the selected two-
echelon and three-echelon solutions is similar, but the inventory allocations for
individual products are quite different. The optimal inventory allocations for six
sample products (automobile model configurations) are as shown in Table 1, and
the average stockout probabilities at each location are shown in Table 2.
In general, more inventory is placed at the retailers with higher demands.
For example, we stock more inventory at R1 than at R2. For those products
with extremely low demand (e.g., ID’s 88 and 224), we centralize inventory at
the plant and do not stock inventory at the retailers at all. The optimal inven-
tory allocation for the products with medium demand depends on the product
value. We stock the low-value products (e.g., ID 376) at all locations. How-
ever we centralize inventory of high-value products (e.g., ID 36) at the plant
and stock only a few units at the retailers with highest demand. The inventory
Inventory Allocation with Multi-echelon Service Level Considerations 507
Two-echelon Three-echelon
Product Stockout Probability(%) Stockout Probability(%)
ID Plant R1 R2 R3 R4 Plant DC R1 R2 R3 R4
17 7.3 9.7 100.0 100.0 100.0 47.0 27.9 10.1 26.0 17.4 12.6
36 9.6 13.7 100.0 100.0 100.0 15.3 13.0 100.0 100.0 100.0 100.0
88 29.2 100.0 100.0 100.0 100.0 29.2 100.0 100.0 100.0 100.0 100.0
224 42.9 100.0 100.0 100.0 100.0 42.9 100.0 100.0 100.0 100.0 100.0
376 18.4 4.6 33.5 27.0 23.6 30.5 35.0 11.4 22.0 28.5 24.9
levels of high-value products with larger relative demand (e.g., ID 17) show the
difference between the two-echelon and three-echelon allocations. We centralize
most inventory at the plant in the two-echelon system, but in the three-echelon
system we stock inventory at all locations.
6 Conclusion
Future research is useful in at least the following directions. First, a useful exten-
sion of the model is to production systemsk where the same product is manufac-
tured in more than one plant. Second, we do not consider emergency shipments
when a stockout incident occurs. If the in-transit lead times are the bottle-
neck of the system, we may want to consider expedited transportation options.
Third, we assume the system structure and material flows are determined by
the transportation options. The in-transit lead time of indirect shipments may
increase as a result of increased route length. On the other hand, it may de-
crease as a result of a more frequent shipping schedule. While re-engineering the
whole distribution system, it would be useful to explicitly consider the tradeoff
between inventory costs and transportation costs caused by the transportation
options.
508 J.-R. Lin, L.K. Nozick, and M.A. Turnquist
References
1. Muckstadt, J.A., Thomas, L.J. : Are Multi-Echelon Inventory Methods Worth Im-
plementing in Systems with Low-Demand-Rate Items?. Management Science. 26
(1980) 483-494.
2. Hausman, W.H., Erkip, N.K. : Multi-echelon vs. Single-echelon Inventory Control
Policies for Low-demand Items. Management Science. 40 (1994) 597-602.
3. Nahmis, S.: Managing Repairable Item Inventory System: A Review. in Multi-level
Production/Inventory Control Systems: Theory and Practice, edited by Schwarz
L. New York: North-Holland, (1981).
4. Axsater, S.: Continuous Review Policies for Multi-Level Inventory Systems with
Stochastic Demand. in Logistic of Production and Inventory, Handbook in Opera-
tions Research and Management Science 4, edited by Graves, S.C., Rinnooy Kan,
A.H.G., Zipkin, P.H., Amsterdam: Elsevier (North-Holland), (1993).
5. Diks, E.B. et al.: Multi-echelon Systems: A Service Measure Perspective. European
Journal of Operational Research 95 (1996) 241-263.
6. Sherbrooke, C.C. Optimal Inventory Modeling of Systems: Multi-Echelon Tech-
niques. New York: John Wiley, Sons, Inc. (1992).
7. Demmy, W.S., Pressuti, V.J., Multi-Echelon Inventory Theory in the Air Force
Logistics Command. in Multi-level Production/Inventory Control Systems: Theory
and Practice, edited by Schwarz L., New York: North-Holland, (1981).
8. Sherbrooke, C.C. METRIC: A Multi-echelon Technique for Recoverable Inventory
Control. Operation Research 16 (1968) 122-141.
9. Axsater, S. Simple Solution Procedures for a Class of Two-Echelon Inventory Prob-
lems. Operations Research 38 (1990) 64-69.
10. Nozick, L.K. and M.A. Turnquist A Two-echelon Inventory Allocation and Dis-
tribution Center Location Analysis. Transportation Research Part E 37 (2001)
425-441.
11. Feeney, G.J. and C.C. Sherbrooke. The (S-1,S) Inventory Policy under Compound
Poisson Demand. Management Science 12 (1966) 391-411.
A Queueing Model for Multi-product
Production System Under Varying
Manufacturing Environment
1 Introduction
Most conventional models on production systems have assumed that raw mate-
rials arrive according to renewal processes and processing times are independent
of the arrival processes. But in most real production and manufacturing systems,
this is far from the truth. In most real-world production systems, arrivals are
correlated and service times are not independent of each other. This research
was motivated by a manufacturing process in which
(a) there are multiple types of products,
(b) there are multiple machine conditions,
(c) decision on the acceptance of orders depend on the machine conditions,
(d) the processing times are dependent on the machine conditions.
As an example, consider a job-shop in which the condition of a machine is
classified as good or bad. During the time the machine is in a bad condition,
the shop accepts only type-1 orders. During the time the machine is in a good
condition, both type-1 and type-2 orders are accepted. The machine conditions
can be extended to management-level manufacturing environments. For example,
when the company is in some bad managerial situation such as labor dispute or
workers’ strike, it can accept only particular types of orders.
Considering that time units are discrete in many manufacturing systems,
this system can be modeled by a discrete-time queueing system with multiple
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 509–518, 2005.
c Springer-Verlag Berlin Heidelberg 2005
510 H.W. Lee and T.H. Kim
Markovian arrival streams (MAS). The multiple Markovian arrival stream can be
regarded as an extension of the well-known single-stream MAP (Markovian Ar-
rival process) to the multiple arrival streams with phase-dependent service times.
For more detailed discussion of MAS, readers are advised to see Takine [11].
In this paper, we assume that the processing times (service times) of raw ma-
terials (customers) differ depending on the product types (classes) to which they
belong. This is a special case of Takine [12] who considered a FCFS queueing
system in which the service times of customers differ depending upon the phases
of the underlying Markov chain (UMC) before and after arrival instances and
customer classes. We note that we can specialize Takine’s model to our man-
ufacturing setting at the cost of phase-dependent service times. The reward is
the easy computation of mean waiting times (and thereby mean WIP inventory
level).
It is known that it is impossible to use the conventional matrix analytic
method to treat the MAS queueing system. Also, the supplementary variable
technique based on the joint Markovian process of the queue length and the re-
maining (or elapsed) service time are not applicable, either. Takine and Hasegawa
[16] was the first successful work on the analytical treatment to analyze such
queues. They showed simple formulas for workload in a MAP/G/1 queue with
state-dependent service times. Later, Takine [12] succeeded in obtaining a purely
algorithmic procedure to compute the stationary joint queue length distribution
in the work-conserving FIFO multiple stream queue. He used the attained wait-
ing time to characterize the joint queue length distribution as the distribution
of the number of customers arriving during the attained waiting time. Then,
he finally obtained an equation that relates the joint queue length distribution
with the sojourn time distributions of customers from respective arrival streams.
Readers are advised to see Takine [11-15] and Masuyama and Takine [6, 7, 8] for
recent works on the queuing systems with (batch) multiple Markovian arrival
streams.
It was Noh and Choi [9] who extended the work of Takine [12] to discrete-time
settings for the first time. They applied their model to the analysis of multimedia
conference system. They first derived the workload distribution, and then the
distributions of the actual waiting time, the sojourn time of a customer of each
class and the joint distribution of the numbers of customers of each class. They
provided a recursion formula to compute the joint queue length distribution.
In this paper, we are interested in deriving the mean level of WIP inventory
in the manufacturing system described above. Instead of using the complicated
joint queue length distribution employed by Noh and Choi [9], we accomplish our
goal by setting up the equations for virtual waiting time first and then directly
deriving the mean waiting time from the virtual waiting time results. Then, we
can use the celebrated Little’s formula to derive the mean WIP inventory level.
In this way, we do not need to go through the complex computational algorithm.
This is possible because the processing times are not dependent on the arrival
phase of the orders, but only on the order types.
A Queueing Model for Multi-product Production System 511
(Markovian arrival streams) of Takine [11, 12] is the MMAP integrated with
such service times.
(k) (k)
The arrival rate λk,i,k of Eij -type orders becomes λk,i,j = πi Di,j . Then,
the total arrival rate of type-k% %K λk = πD k e and the total arrival
orders becomes
K
rate λ of orders becomes λ = k=1 λk = k=1 πD k e .
If we define u(l) as an (1×m) vector whose jth element is uj (l) = limn→∞ uj (l, n).
Then, it is not difficult to obtain the steady-state vector system equations as
follows;
u(0) = u(0)D 0 + u(1)D 0 , (3.1)
l
u(l) = u(0)D(l) + u(l − n + 1)D(n) + u(l + 1)D 0 , (l ≥ 0). (3.2)
k=0
%∞
Let us define the vector generating function (GF) u∗ (ω) = l=0 u(l)ω l . If we
multiply (3.2) by ω l , sum over l = 1, 2, . . . and use (3.1), we get
u∗ (ω) = u(0)(ω − 1)[ωI − D 0 − D ∗ (ω)]−1 [D 0 + D ∗ (ω)]. (3.3)
Let vj (l) = limn→∞ vj (l, n) be the steady-state probability that the virtual
waiting time is l and the UMC phase is j at the arrival instance of the virtual
%∞
customer. Let v(l) = (v1 (l), . . . , vm (l)) and v ∗ (ω) = n=0 v(n)ω n . Note that
[D 0 + D ∗ (ω)] in (3.3) is the matrix GF of the workload that is brought in by the
customer who arrives during a period (slot). Thus by dropping [D 0 + D ∗ (ω)]
from (3.3), we get
v ∗ (ω)[ωI − D 0 − D ∗ (ω)] = u(0)(ω − 1). (3.4)
A Queueing Model for Multi-product Production System 513
Note that, according to the similar reason given in Takine and Hasegawa [16]
and Lucantoni et al. [5] for continuous time systems, P can be considered as a
transition probability matrix of a Markov chain that is obtained by excising busy
periods. If we let φ = (φ1 , . . . , φm ) as the stationary vector of P that satisfies
φP = φ, φe = 1, (3.6)
then, φi is the probability that at the start of an arbitrary period during an idle
period, the UMC phase is i. Then, we have
u(0) = (1 − ρ)φ. (3.7)
Let wk,j (l) be the probability that the waiting time of an arbitrary class-k
customer is l and the UMC phase just after its arrival is j. Let rk,j (l) be the
probability that the sojourn time (waiting time + service time) of an arbitrary
class-k customer is l and the UMC phase just after its arrival is j. We define wk (l)
and r k (l) as the vectors whose jth element is wk,j (l) and rk,j (l) respectively.
Then, we have the following well-known relationship (Takine [12]);
v(l)D k
wk (l) = , (k = 1, 2, . . . , K), (3.8)
λk
%l
n=0 v(n)D k (l − n)
r k (l) = , (k = 1, 2, . . . , K). (3.9)
λk
From these, we get
K
K
λk wk (l) = v(l)D k = v(l)D, (3.10)
k=1 k=1
K
K
l
l
λk r k (l) = v(n)D k (l − n) = v(n)D(l − n). (3.11)
k=1 k=1 n=0 n=0
514 H.W. Lee and T.H. Kim
(1) (1)
D (1) = D 1 + D 2 = D 1 E(S1 ) + D 2 E(S2 ), (4.3a)
(2) (2)
D (2) = D 1 + D 2 = D 1 E[S1 (S1 − 1)] + D 2 E[S2 (S2 − 1)]. (4.3b)
Let us write (3.4) as follows;
v ∗(1) (1) (I − D 0 − D + eπ) = v ∗(1) (1)eπ + u(0) − eπ + πD (1) . (4.6)
−1 −1
Multiplying by (I − D 0 − D + eπ) and using π (I − D 0 − D + eπ) = π,
we get
−1
v ∗(1) (1) = v ∗(1) (1)eπ + u(0) − π + πD (1) (I − D 0 − D + eπ) . (4.7)
A Queueing Model for Multi-product Production System 515
−1
v ∗(1) (1)D 1 e = λ1 v ∗(1) (1)e + u(0) − π + πD (1) (I − D 0 − D + eπ) D 1 e.
(4.8a)
Multiplying (4.7) by D 2 e and using πD 2 e = λ2 yields
−1
v ∗(1) (1)D 2 e = λ2 v ∗(1) (1)e + u(0) − π + πD (1) (I − D 0 − D + eπ) D 2 e.
(4.8b)
Differentiating (4.5) with respect to ω, we have
2
d2 ∗ d ∗ d2 ∗ d
0 = ω 2 v (ω) + 2 v (ω) − v (ω)D 0 − v (ω) D ∗ (ω)
∗
dω dω dω 2 dω 2
d ∗ d ∗ ∗ d2 ∗
−2 v (ω) D (ω) − v (ω) 2 D (ω) . (4.9)
dω dω dω
Using ω = 1 in (4.9), multiplying by e and using (I − D 0 − D)e = 0, we get
1
v ∗(1) (1)e = v ∗(1) (1)D (1) e + πD (2) e. (4.10)
2
Using (4.10) in (4.8a,b), we have
λ1
v ∗(1) (1)D 1 e = λ1 v ∗(1) (1)D (1) e + πD (2) e
2
−1
+ u(0) − π + πD (1)
(I − D 0 − D + eπ) D 1 e, (4.11a)
λ2
v ∗(1) (1)D 2 e = λ2 v ∗(1) (1)D (1) e + πD (2) e
2
−1
+ u(0) − π + πD (1)
(I − D 0 − D + eπ) D 2 e. (4.11b)
λ1
(1 − ρ1 )v ∗(1) (1)D 1 e = λ1 E(S2 )v ∗(1) (1)D 2 e + πD (2) e (4.12a)
2
−1
+ u(0) − π + πD (1) (I − D 0 − D + eπ) D 1 e.
λ2
(1 − ρ2 )v ∗(1) (1)D 2 e = λ2 E(S1 )v ∗(1) (1)D 1 e + πD (2) e (4.12b)
2
−1
+ u(0) − π + πD (1) (I − D 0 − D + eπ) D 2 e.
From (3.8) and (3.9), the mean waiting time Wq(k) of an arbitrary class-k cus-
tomer can be obtained from
Dk
Wq(k) = v ∗(1) (1) e. (4.13a)
λk
516 H.W. Lee and T.H. Kim
2
λk D
Wq = Wq(k) = v ∗(1) (1) e. (4.13b)
λ λ
k=1
ρ2 1
Wq(1) = Wq(2) + πD (2) e (4.14a)
(1 − ρ1 ) 2(1 − ρ1 )
1
−1
+ u(0) − π + πD (1) (I − D 0 − D + eπ) D 1 e,
(1 − ρ1 )λ1
ρ1 1
Wq(2) = Wq(1) + πD (2) e (4.14b)
(1 − ρ2 ) 2(1 − ρ2 )
1
−1
+ u(0) − π + πD (1) (I − D 0 − D + eπ) D 2 e.
(1 − ρ2 )λ2
Wq(1) and Wq(2) can be obtained by solving (4.14a,b) simultaneously.
The mean waiting time of an arbitrary customer can be obtained from
λ1 λ2
Wq = Wq(1) + Wq(2) (4.15)
λ λ
and the mean number of waiting customers can be obtained from the Little’s
law as follows;
Lq(1) = λ1 Wq(1) , Lq(2) = λ2 Wq(2) , (4.16a)
5 Numerical Example
In this section, we present a numerical example and compute the mean waiting
times and the mean queue lengths of each class under the following parameter
matrices,
0.3 0.1 0.1 0.1 0.2 0.2
D0 = , D1 = , D2 = .
0.1 0.4 0.2 0.1 0.1 0.1
(i) (Case 1) Service times follow geometric distribution with mean 1/0.65 and
1/0.55 for respective classes.
(ii) (Case 2) Service times follow geometric distribution with mean 1/0.7 and
1/0.6 for respective classes.
For (case 1), we get ρ1 = λ1 E(S1 ) = 0.3836, ρ2 = λ2 E(S2 ) = 0.5455, ρ =
ρ1 + ρ2 = 0.9301 and for (case 2), we get ρ1 = 0.3571, ρ2 = 0.5, ρ = 0.8571.
References
1. Asmussen, S. and Koole, G.: Marked point processes as limits of Markovian arrival
streams. J. Appl. Prob. 30 (1993) 365–372
2. He, Q.M.: Queues with marked customer. Adv. Appl. Prob. 28 (1996) 567–587
3. He, Q.M. and Alfa, A.S.: The MMAP[K]/PH[K]/1 queues with a last-come -first-
served preemptive service discipline. Queueing Systems 29 (1998) 269–291
4. He, Q.M. and Neuts, M.F.: Markov chains with marked transitions. Stochastic
Process. Appl. 74 (1998) 37–52
5. Lucantoni, D.M., Meier-Hellstern, K.S. and Neuts, M.F.: A single server queue with
server vacations and a class of non-renewal arrival processes. Adv. Appl. Prob. 22
(1990) 676–709
518 H.W. Lee and T.H. Kim
1 Introduction
HIV dynamic modeling is important in AIDS research. By modeling viral load
trajectory after initiation of potent therapy, it has led to a new understanding
of the pathogenesis of HIV infection and provides reasonable antiviral treatment
strategies for treating AIDS patients. Many dynamic models have been proposed
by AIDS researchers in the last decade for providing theoretical methods to fit
the HIV dynamic models, see the review paper by Perelson and Nelson (1999)
and the book by Nowak and May (2000). A well-known HIV viral dynamic model
can be expressed as
d
dt T (t) = λ − ρT (t) − kT (t)V (t),
d ∗
dt T (t) = kT (t)V (t) − δT ∗ (t), (1)
d
dt V (t) = N δT ∗ (t) − cV (t),
where T (t), T ∗ (t) and V (t) denote the numbers of target uninfected cells, infected
cells, and virions at time t, respectively; λ represents the rate at which new T
cells are generated from source within; ρ is the death rate per T cell; k is the
infection rate of T cell infected by virus; δ is the rate of death for infected cells;
c is the clearance rate of free virion and N is the number of virion produced
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 519–527, 2005.
c Springer-Verlag Berlin Heidelberg 2005
520 J. Chen, J.-T. Zhang, and H. Wu
from infected cell during its life-time. The main objective in HIV modeling is
to estimate the parameters, to construct a predicted HIV dynamic model based
on the observed AIDS clinical data and to guide treatment strategies for HIV-
infected patients. Only the total viral load V (t) is observable in an AIDS clinical
study. The total viral load, which can be measured at different treatment time,
is an important index for characterizing infectious situation of a patient.
Perelson et al. (1996) from physical experiments found that the concentration
of uninfected CD4+ cell can usually be well approximated by a constant during
a short time period (week). Specially, they investigated a short-term HIV viral
dynamic model under the assumption of a constant target uninfected cells T (t).
Given certain initial conditions, a closed form solution of viral load for short-term
HIV model (1) is given by
( *
−ct cV0 c 1 −δt −ct
2 −ct
V (t) = V0 e + e −e − δte , (2)
c−δ c−δ
where V0 = V (0) denotes a baseline value of the viral load. Based on the short-
term viral model (2), the parameters can be estimated by fitting a nonlinear
parametric model as
where Y (t) is observed viral load at time t and e(t) is unobserved error with
the mean zero and the variance σ 2 (t). Over the past several years, non-linear
exponential-type parametric models have been used to fit short time clinical
data from AIDS clinical trials, see Perelson et al. (1996, 1997), Wu, Ding and
DeGruttola (1998), Grossman et al. (1999), Michele et al. (2004) and Han and
Chaloner (2004), among others.
Although the model (3) is useful and convenient to describe short-term viral
dynamics, it only can be used to characterize the viral load during the initial
stage of therapy. For long-term AIDS treatment (months), the protease inhibitor
may be imperfect and the concentration of target uninfected cells T (t) is chang-
ing over time. Therefore, the short-term model (3) will not be applicable for
long-term treatment. In general, most of immune response models such as the vi-
ral HIV dynamic model (1) are differential equation models without closed form
solutions. The computation for the numerical solution will be very intensive if
computation-based statistical method such as MCMC are applied for parameter
estimation, see Mittler and Perelson (2001), Putter et al (2002), Huang et al
(2003) and Michele et al (2004).
In this paper, we propose a general framework for fitting the HIV differential
dynamic equation (1) using a direct discretization and a nonparametric smooth-
ing technique. By using local polynomial kernel smoothing technique, a two stage
estimation procedure is developed for estimating the viral road and the new pro-
ductive virus. Simulation studies show that the proposed time-dependent dis-
Discretization Approach and Nonparametric Modeling for Long-Term HIV 521
cretization model can well capture the changes of the viral load data from the
long-term viral load dynamics (1). Applications to the real data from AIDS clini-
cal trial also demonstrate that the proposed approach can fit effectively the viral
load measurements. The rest of paper is organized as follows. Section 2 introduces
a time-dependent discretization model to approach the viral load HIV dynamic
model. A two stage local estimation is proposed in Section 3. Simulation exam-
ples are presented in Section 4. Some concluding remarks are given in Section 5.
where Y (t) is observed viral load at time t and e(t) is unobserved error with
the mean zero and the variance σ 2 (t). In the model (4), V (t) is the true viral
load at time t and u(t) = N δT ∗ (t) denotes the new productive virus at time t
while c indicates the clearance rate of free virion which can be estimated by the
short-term model (3).
Suppose that we have the observed viral load sample Y (ti ), (i = 1, · · · , n)
from the model (4) at discrete time points: t1 < t2 < · · · < tn . The aim of this
paper is to estimate the viral road V (t) and the new productive virus u(t) based
on Y (ti ), (i = 1, · · · , n), and then establish a predicable model for the changes of
the viral load. In this section, we propose a direct discretization approximation
to the differential equation model (4). Let
We use the simple Euler method to discretize the differential equation (4) as
where e2 (ti ), (i = 1, · · · , n), are the discretization error with the mean zero
and the variance σ22 (ti ) which can be regarded as the conditional variance of
V (ti+1 ) given V (ti ). Note that when the difference Δti are small, the equation
DV (ti )/Δti = [u(ti ) − cV (ti )] will be a good approximation of the model (4).
We call the discretization model (5) as the time-dependent discretization model
for the virus load response. Thus the model (4) can be discretized as
Now we turn to study estimation of V (t) and u(t). However, our data Y (ti ) are
measurements of V (ti ) with error. One way to deal with the measurement error
522 J. Chen, J.-T. Zhang, and H. Wu
3 Estimation
3.1 Two-Stage Local Linear Estimation
We employ the local polynomial modeling (Fan and Gijbels (1996)) to fit the
model (6). The local polynomial kernel technique is a useful nonparametric
method. It inherits many good sampling properties of the least-squares method.
Here we develop a two-stage local estimation to manage the estimate problem of
(6). The procedure consists of the following two stages. The first stage involves
estimating V (t) based on the first equation of the model (6). In the second stage,
a local linear regression is fitted for estimating u(t) using the estimated values
V̂ (t). We choose two different bandwidths in the two-stage estimation.
In the first stage, we aim to estimate V (t). Assume that the function V (t)
possesses the 2th derivative. For each given time point t0 , we approximate V (t)
locally by
V (t) ≈ β0 (t0 ) + β1 (t0 )(t − t0 ),
for t in a neighborhood of t0 . The estimator V̂ (t0 ) = β̂0 (t0 ) can be obtained by
minimizing the following locally weighted least-squares function
n
2
{Y (ti ) − [β0 (t0 ) + β1 (t0 )(ti − t0 )]} Kh1 (ti − t0 ), (7)
i=1
where Kh1 (·) = K(·/h1 )/h1 with K being a kernel function and h1 being a
bandwidth. In the second stage, we use the local linear method to estimate the
function u(t) of (6). We assume that u(t) has the second order derivative. Then
u(t) can be approximated around t0 by
u(t) ≈ α0 (t0 ) + α1 (t0 )(t − t0 ).
Thus, for a given initial estimator c, u(t) can be estimated via minimizing locally
weighted function.
/
n−1 02
3 (ti ) − [(α0 (t0 ) + α1 (t0 ))(ti − t0 ) − cV̂ (ti )]Δti
DV Kh2 (ti − t0 ), (8)
i=1
4 Implementation
Here we describe an algorithm for estimating the constant death rate c, the viral
road V (t) and the new productive virus u(t). Alternatively we may employ the
short-term model (3) to estimate the constant rate c and apply the nonparamet-
ric methods developed in this paper to estimate V (t) and u(t). The procedure
is summarized as follows:
Step 1. Estimate the constant death rate c of the viral load denoted by ĉ.
Based on the analytical solution of the short term model (3), we fit a
nonlinear regression model using the initial viral road data.
Step 2. Calculate the local linear estimator V̂ (t0 ) for V (t0 ) with a bandwidth
h1 . In the same way, we also find the estimator V̂ (ti ) for each given
time point ti (i = 1, · · · , n).
Step 3. Calculate the local linear estimator û(t0 ) with the second bandwidth
h2 .
Step 4. Establish a predicted formulation of the viral load by using the esti-
mated viral load V̂ (ti ) and the estimated new productive virus û(ti ) in
the time-dependent discretization model (6), i.e.
⎧
⎨ V̂ (tn+l−1 ) + û(tn+l−1 ) − ĉV̂ (tn+l−1 ) Δtn+l , l ≤ 1,
V̂ ∗ (tn+l ) =
⎩ V̂ ∗ (tn+l−1 ) + û(tn+l−1 ) − ĉV̂ ∗ (tn+l−1 ) Δtn+l , l > 1.
5 Simulation
We conduct extensive Monte Carlo simulations to evaluate the finite proper-
ties of the proposed nonparametric estimators. The purposes are to examine
524 J. Chen, J.-T. Zhang, and H. Wu
whether the proposed approach can fit effectively the data from the HIV dy-
namic model with the long-term treatments. The observed viral load data are
generated according to the HIV dynamic model (1) with errors. We simulate
data {(ti , Y (ti )), i = 1, · · · , n} based on model:
where the design time point ti = day×t∗i with t∗i following a uniform distribution
U (0, 1) and V (ti ), i = 1, · · · , n, are numerical solutions of the viral differential
dynamic model (1) with the known coefficients. The coefficient values used in
our simulation studies are λ = 7.0, p = 0.007, k = 20 × 10−7 , δ = 0.0999,
N = 1000.0, c = 0.2 and V0 = 10000.0. This HIV dynamic model example had
been studied by Xia (2003). The error term e(ti ) follows an independent and
identically normal distribution with mean 0 and variance σ 2 (t) = (1 + t)σ 2 . 400
simulations are conducted with sample sizes n = 100 and 200.
2000
1800
9000
N*delta*T*(t)
1600
RNA
8000
1400
7000
1200
0 50 100 150 200 250 300 0 50 100 150 200 250 300
Fig. 1. Simulation results for the long-term HIV dynamics model with the error vari-
ance function σ(t) = (1 + t)1/2 100. (a) The changes of the viral load as time (the solid
line indicates the true values and the dashed line is the local estimator V̂ (t) ); (b) The
changes of the new productive virus with time. (the solid line indicates the true values
and the dashed line is the local estimator û(t)).
We apply the proposed local estimators V̂ (t) for estimating the viral load V (t)
while the local estimator û(t) is used to estimate the new productive virus u(t).
The results are displayed in Figures 1 and 2. In the implementation, we employed
the Epanechnikov kernel K(t) = 0.75(1 − t2 )+ . Figure 1 shows the estimated
results for the simulation with the variance constant σ = 100. Panel (a) plots the
changes of the estimated viral load over time while Panel (b) displays the changes
of the estimated new productive virus as time. It can be seen that the estimators
V̂ (t) and û(t) (dashed lines) performs well compare with the corresponding true
values V (t) and u(t) (solid lines), respectively. Although the variances of the
measurement error are increased, Figure 2 shows that the estimated results with
Discretization Approach and Nonparametric Modeling for Long-Term HIV 525
2000
1800
9000
N*delta*T*(t)
1600
RNA
8000
1400
7000
1200
0 50 100 150 200 250 300 0 50 100 150 200 250 300
Fig. 2. Same caption as for Figure 1 but now for the error variance function σ(t) =
(1 + t)1/2 200.
6 Discussion
We have developed a time-dependent discretization framework for modeling the
viral load based on the HIV dynamics model. The local linear kernel techniques
have been applied to estimate the viral load and the new productive virus.
Simulation study shows that the proposed discretization model is efficient for
fitting long-term viral load. Both the short-term or the long-term treatment viral
dynamics can be well approached by the time dependent discretization model. In
the longer version of this paper, we applied the methodology to a HIV dynamic
data set from the AIDS clinical trials ACTG 387 study. The results also show
that the proposed new approach can fit effectively the viral load measurement
in the long-term treatment.
Based on the viral dynamic differential equation model and the Euler dis-
cretization, we have established a time-dependent discretization model for the
long-term AIDS treatment. It should be pointed out that we only use a first
order approximation in the Euler discretization. The higher order method may
be good if we want to obtain more accurate approximation to the viral dynamic
model. Stanton (1997) introduced a drift and diffusion estimator via higher-order
approximation and kernel estimation. Fan and Zhang (2003) applied the Euler
first order discretization to approach the diffusion model. They showed that
higher-order method can reduce the numerical approximation error in asymp-
totic biases, but the variance escalates nearly exponentially with the order of
approximation. Whether this phenomena is behind the deterministic viral dy-
namic model, further work will be needed. Although the discretization approach
526 J. Chen, J.-T. Zhang, and H. Wu
and nonparametric methods developed in this paper are based on the one variate
differential equation model, these techniques can be extended to more compli-
cated models. We will keep to work on this direction.
References
1. Aerts, M., Chaeskens, G.: Local polynomial estimation in multiparameter likeli-
hood models. Journal of the American Statistical Association 92 (1997) 1536-1545.
2. Fan, J., Gijbels, I.: Local Polynomial Modeling and Its Applications. Chapman
and Hall, London. (1996).
3. Fan, J., Yao, Q.: Efficient estimation of conditional variance functions in stochastic
regression. Biometrika 85 (1998) 645-660.
4. Fan, J., Zhang, C.: A re-examination of Stanton’s diffusion estimations with appli-
cations to financial model validation. Journal of American Statistical Association
98 (2003) 118–134.
5. Fitzgerald, A. P., DeGruttola, V. G., Vaida, F.: Modeling HIV viral rebound using
non-linear mixed effects models. Statistics in Medicine 21 (2002) 2093–2108.
6. Han, C., Chaloner, K.: Bayesian experimental design for nonlinear mixed-effects
models with application to HIV dynamics. Biometrics 60 (2004) 25–33.
7. Ho, D. D., Neumann, A. U., Perelson, A. S., Chen, W., Leonard, J. M., Markowitz,
M.: Rapid turnover of plasma virions and CD4 lymphocytes in HIV-1 infection.
Nature 374 (1995) 123–126.
8. Huang, Y., Rosenkranz, S. L., Wu, H.: Modeling HIV dynamics and antiviral re-
sponses with consideration of time-varying drug exposures, sensitivities and adher-
ence. Mathematical Biosciences 184 (2003) 165–186.
9. Michele, D. M., Ruy, M. R., Martin, M., Ho, D. D., Perelson, A. S.: Modeling the
long-term control of viral load in HIV-1 infected patients treated with antiretroviral
therapy. Mathematical Biosciences 188 (2003) 47–62.
10. Nowak, M. A., May, R. M.: Virus dynamics: mathematical principles of immunol-
ogy and virology. Oxford: Oxford University Press (2000).
11. Perelson, A. S., Nelson, P. W.: Mathematical analysis of HIV-1 dynamics in vivo.
SIAM Review 41 (1999) 3–44.
12. Perelson, A. S., Neumann, A. U., Markowitz, M., Leonard, J.M., Ho, D. D.: HIV-1
dynamics in vivo: Virion clearance rate, infected cell life-span, and viral generation
time. Science 271 (1996) 1582–1586.
13. Putter, H., Heisterkamp, S. H., Lange, J. M. A., De Wolf, F.: A Bayesian approach
to parameter estimation in HIV dynamical models. Statistics in Medicine 21 (2002)
2199-2214.
14. Stanton, H.: A nonparametric models of term structure dynamics and the market
price of interest rate risk. Journal of Finance 5 (1997) 1973–2002.
15. Verotta, D., and Schaedeli, F.: Non-linear dynamics models characterizing long-
term virological data from AIDS clinical trials. Mathematical Biosciences 176
(2002) 163–183.
16. Wei, X. Ghosh, S. K., Taylor, M. E., Johonson, V. A., Emini, E.A., Hahn, B. H.,
Saag, M. S., Shaw, G. M.: Viral dynamics in human immunodeficiency virus type
1 infection. Nature 373 (1995) 11-7-122.
17. Wu, H., Ding, A.A., Gruttola, V. D.; Estimation of HIV dynamic parameters.
Statistics in Medicine 17 (1998) 2463–2485.
Discretization Approach and Nonparametric Modeling for Long-Term HIV 527
18. Wu, H., Ding, A.A.: Population HIV-1 dynamics in vivo: Applicable models and
inferential tool for virological data from AIDS clinical trials. Biometrics 55 (1999)
410-418.
19. Wu, H. and Zhang, J.T.: The study of long-term HIV dynamics using semi-
parametric non-linear mixed-effects models. Statistics in Medicine 21 (2002) 3655–
3675.
20. Wu, L.: A joint model for nonlinear mixed-effects models with censoring and co-
variates measured with error, with application to AIDS studies. Journal of the
American Statistical Association 97 (2002) 955–963.
Performance Analysis and Optimization of an
Improved Dynamic Movement-Based Location
Update Scheme in Mobile Cellular Networks
1 Introduction
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 528–537, 2005.
c Springer-Verlag Berlin Heidelberg 2005
Performance Analysis and Optimization of an iDMBU Scheme in MS 529
of movements and the movement history was proposed [2]. We designate the pro-
posed scheme in [2] as the DMBU (dynamic movement-based update) scheme
for convenience. The basic idea in the DMBU scheme is to avoid the location
update when the MS moves around the cell where the last location update was
performed. This is achieved by utilizing simple movement history information.
In the DMBU scheme, each MS has three memory elements and one counter.
Using them, the unnecessary location updates are not performed when the MS
moves around the recently visited cell. Simulation results demonstrate that the
DMBU scheme can achieve a significant cost reduction when compared to the
movement-based scheme, especially when the call-to-mobility ratio (CMR) is
low.
Even though the DMBU scheme shows a good performance, when the MS has
sufficient memory to store all the cells visited by the MS and their neighbors, we
can improve the performance of the DMBU scheme considerably. In this study,
we propose an improved DMBU (iDMBU) scheme that reduces the location
update cost of the DMBU scheme by maintaining a more complete history of
visited cells and their neighbors. We also demonstrate that the iDMBU scheme
continuously outperforms the DMBU scheme. For the sake of conciseness, we do
not repeat the model description of [2] in detail, but rather concentrate on new
results and comparing them with the DMBU scheme in [2].
2 Improved DMBU
Let us briefly describe the DMBU scheme. In the DMBU scheme, each MS
has three memory elements (CURRENT, HISTORY, and UPDATE) and one
counter. The CURRENT stores the identification (ID) of the cell where the
MS is currently residing. The UPDATE stores the ID of the cell where the
last location update was performed. The HISTORY stores the ID of the cell
from which the MS moves into a new cell, which results in the counter value
increment. The counter value is incremented, maintained, or reset at each cell
movement according to the proposed location update algorithm. The counter
value is incremented i) when the MS moves farther from the cell corresponding
to the contents of the HISTORY and ii) when it moves out of the location update
cell. Therefore, the contents of the HISTORY are updated in both these cases.
To determine whether an MS’ss movement increases the distance from the
cell corresponding to the HISTORY, it is necessary to check that the cell is
also one of the neighboring cells in the newly visited cell, or that it has been
visited. For this process, each MS needs to have information on the IDs of the
cell currently being visited, and its neighboring cells. In this paper, it is assumed
that each BS broadcasts a beaconing signal that carries IDs for its own, and its
530 J.H. Baek, J.Y. Seo, and D.C. Sicker
neighboring cells, to the MS’s within its coverage area [2]. For example, the BS
in cell A broadcasts its own cell ID (A) and its six neighboring cell IDs. An MS
moving into a new cell A uses this information to decide on a location update.
Let NewCell ID denote the ID of the newly moved-in cell. Let EnvironCell DB
denote a set of IDs for the newly moved-in cell and its neighboring cells. Notice
here that the EnvironCell DB includes the ID of the newly moved-in cell.
Using three memory elements, a counter and EnvironCell DB, the unneces-
sary location updates are not performed when the MS moves around the recently
visited cell. The pseudo-code for the DMBU scheme is as follows:
(2,2)
(1,1) (3,1)
2 3
2.2 Motivation
Let us consider the example in Figure 1. It is assumed D=5. In the figure, (x, y)
indicates cell ID and N1 (N2 ) means that the counter value of the DMBU is N1
Performance Analysis and Optimization of an iDMBU Scheme in MS 531
and the counter value of the iDMBU is N2 when entering the cell. When an MS
reenters cell (1, 1) in the movement-based location update scheme, the counter
value becomes 5, and a location update is performed.
In the DMBU scheme, when the MS reenters the cell (1, 1) it doesn’t perform
a location update because the counter value is maintained at 3 (the counter value
of all the surrounding cells of cell (2, 2) stored in HISTORY). Finally, the MS
updates its location when it visits cell (2, -2). In this way, the number of location
updates in the DMBU scheme is always less than or equal to the number of
location updates in the movement-based location update scheme.
However, the possibility to enhance performance still exists in the DMBU
scheme. If we make an MS with more memory space and store more cells vis-
ited by the MS and neighboring cells after the last location update, as far as
memory space permits, we can improve the performance of the DMBU scheme
significantly. For example, consider the path where the MS reenters cell (1, 1)
and visits cell (1, -1) through cell (5, -1), as shown in Figure 1.
If the MS stores more cells visited by the MS after the last location update
and their neighboring cells, then when it reenters cell (1, 1) (that is in level-1
cells of the HISTORY) its counter value becomes 1. Further, it enters cell (2, 2)
(that is in level-1 cells of the HISTORY), its counter value remains 1. Finally,
the MS updates its location when it visits cell (5, -1). In this way, if we make
the MS have more memory space, and store more cells visited by the MS and
their neighboring cells, as far as memory space permits, we can improve the
performance of the DMBU scheme significantly.
It is obvious that the iDMBU scheme needs more memory space than the
DMBU scheme. However, our proposed scheme is sufficiently competitive be-
cause it is not economically difficult to extend memory space, considering the
very low price of memory on the market. In addition, our scheme achieves op-
timal total cost when the threshold is rather small, and the MS requires small
amount of memory to implement our scheme. This will be proved in section 4.
In this study, we call our improved DMBU scheme an iDMBU scheme. Now, we
will describe the iDMBU scheme in detail.
The iDMBU scheme is basically similar to the DMBU scheme, except for the
memory size, the rule of arrangement, and the rule of removal. Similar to the
DMBU scheme, each MS maintains three memory elements (CURRENT, UP-
DATE, and HISTORY) and a counter. The CURRENT stores the ID of the cell
where the MS is currently residing. The UPDATE stores the ID of the cell where
the last location update was performed. In contrast, the HISTORY stores the
ID of the cell visited by the MS, which is different from the iDMBU scheme.
Figure 2 shows the data structure of the HISTORY when the threshold is D.
The cells in the HISTORY are arranged in increasing order of levels, as shown in
the figure. In the figure, ni indicates number of cells estimated to be in ring “i”,
judging from up to date information, and level-i cells indicate the corresponding
ni cells.
532 J.H. Baek, J.Y. Seo, and D.C. Sicker
n1 … … nD -1 …
n 1 level
-(D-1) cells n D -1 level
-(D-1) cells
Note that when a cell and its neighboring cells are added to the HISTORY
each existing duplicated cell should be included in the lower level of the HIS-
TORY. Note also that when the MS with counter value k enters cell j, it is
sufficient to check in level-k and level-(k-1) cells to decide whether cell j is in the
HISTORY and to determine what the counter value becomes.
Performance Analysis and Optimization of an iDMBU Scheme in MS 533
We will show that the location update cost of the iDMBU scheme is less than
or equal to that of the DMBU scheme. In other words, if we give the MS in the
DMBU scheme more memory space and store all the cells visited by the MS and
their neighboring cells as far as memory space permits, we can show that such a
scheme improves the performance of the DMBU scheme considerably. However,
in this study, we do not consider memory cost since it is a very low, one-time
cost. As such it scarcely affects the superiority of the proposed scheme. Thus, we
analyze and compare the location update cost of each scheme on radio channels,
assuming that the memory cost is low enough that it can be ignored.
Let us first introduce some random variables to formulate the location update
cost, and then compare the performances analytically.
Let us examine the above random variables for Figure 1. Table 1 represents
values of random variables from cell (0, 0) through cell (5,-1). Figure 1 and
Figure 3 represent corresponding stored cell IDs of the memory elements in the
iDMBU scheme.
For these random variables, we can see that the following property is given:
We also can obtain following location update costs between call arrivals [6]:
∞
∞
(i+1)D−1
CUDM BU =U i α(j) P r[LDM BU = k|M = j]
i=1 j=iD k=iD
∞
∞
(i+1)D−1
CUiDM BU = U i α(j) P r[LiDM BU = k|M = j]
i=1 j=iD k=iD
where U is the unit location update cost required for one location update, and
α(j) is the probability that an MS enters j cells between call arrivals. In the
above, we obtain the value of P r[L|M ] using computer simulations. We decided
to use computer simulation because the complexity of the calculations made
obtaining results rather difficult. Finally, we can obtain the following corollary:
534 J.H. Baek, J.Y. Seo, and D.C. Sicker
Table 1. Memory elements and values of random variables for two schemes
a
%D−1
n: number of stored cell IDs (n = 2 + i=1
ni for iDMBU)
Corollary: For every cell visited by the MS between call arrivals, the number
of location updates for the iDMBU scheme is less than or equal to that of the
DMBU scheme. That is,
∞
∞
(i+1)D−1
CUiDM BU = U i α(j) P r[LiDM BU = k|M = j]
i=1 j=iD k=iD
∞
∞
(i+1)D−1
≤ CUDM BU =U i α(j) P r[LDM BU = k|M = j]
i=1 j=iD k=iD
CT = CU + CP = CU + V [1 + 3D(D − 1)]
where CP is the paging cost between call arrivals, V is the cost of paging a cell,
and [1+3D(D-1)] is the total number of cells in a location area. Note that it is
assumed that all cells in the location area are paged simultaneously whenever
an incoming call arrives as in most cellular systems.
4 Numerical Results
Fig. 3. Stored cell IDs of the memory elements in the iDMBU scheme
Figure 4 shows the location update cost of two schemes for different CMR
values, with varying values of the movement threshold D. Note that CMR is
defined as λc /λm and low CMR represents high mobility. In the figure, we can
see that update cost of the iDMBU scheme is always less than that of the DMBU
scheme. Furthermore, we can see that the iDMBU scheme achieves a significant
cost reduction, compared to the DMBU, especially when the threshold is high.
Figure 4 also shows that the update cost decreases as the threshold increases,
but that the reduction ratio increases as the threshold increases.
Figure 5 shows the location update cost of the two schemes for varying
values of CMR. In this figure, we can see that the update cost decreases as
CMR increases, but that the reduction ratio (DMBU-iDMBU)/DMBU is almost
constant as CMR increases. This indicates that the reduction ratio (DMBU-
iDMBU)/DMBU is almost independent from the CMR value, as shown in Fig-
ure 4.
Figure 6 shows the location update cost, paging cost, and the total signaling
cost for the two schemes with varied values of the movement threshold D, given as
CMR=0.1. The paging cost of each scheme is equal because simultaneous paging
is assumed. In the figure, we can see that both the schemes achieve optimal
536 J.H. Baek, J.Y. Seo, and D.C. Sicker
60 45
DMBR(CMR=0.05) iDMBR(CMR=0.05)
40
reduction (%)
40 30
25
30
20
20 15
10
10
5
0 0
2 3 4 5 6
threshold
Fig. 4. Location update cost of the iDMBU scheme for the different CMR values
35 60
DMBR(d=3) iDMBR(d=3)
DMBR(d=5) iDMBR(d=5)
30 50
DMBR(d=7) iDMBR(d=7)
d(3) effect d(5) effect
25
d(7) effect
total cost
40
reduction (%)
20
30
15
20
10
5 10
0 0
0.05 0.10 0.15 0.20 0.25 0.30 0.35 0.40
CMR
total cost when the threshold D=3, and then approximately 4.2% reduction of
the total cost (around 9.2% reduction in registration cost) is achieved in the
proposed scheme. It is expected that a more significant cost reduction will be
achieved in the proposed scheme as the CMR decreases. For example, when
CMR=0.05, both of the schemes have the optimal total cost when the threshold
D=3, and around 5.7% reduction in total cost is achieved in the proposed scheme.
We can also see that our scheme has the optimal total cost when the threshold is
rather small, and when the MS requires a small amount of memory to implement
our scheme.
5 Conclusion
An improved version of the dynamic movement-based location update scheme
was presented. In our scheme, each MS can store more cells (those visited by
Performance Analysis and Optimization of an iDMBU Scheme in MS 537
70 45
DMBR(Cu) iDMBR(Cu)
Cp DMBR(Ct) 40
60
iDMBR(Ct) Cu effect (%)
35
signaling cost
reduction (%)
50 Ct effect (%)
30
40 25
30 20
15
20
10
10
5
0 0
2 3 4 5
threshold
the MS and their neighboring cells) to reduce the location update cost of the
dynamic movement-based location update scheme. We showed that a significant
reduction in the location update cost is achieved in our scheme. We also showed
that a significant reduction in the location update cost is achieved in our scheme.
Finally, we showed that our scheme achieves the optimal total cost when the
threshold is rather small, and when the MS needs a small amount of memory to
implement the ELU scheme.
References
1. TIA/EIA/IS-95-B, MS-BS compatibility standard for dual-mode wideband spread
spectrum cellular system (1999)
2. Park, J., Choi, J., Choi, M.: A Dynamic Location Update Scheme Based on the
Number of Movements and the Movement History for Personal Communications
Networks. IEICE Tr. on Communications, Vol. E85-B, No. 10 (2002) 2300-2310
3. Bar-Noy, A., Kessler, I., Sidi, M.: Mobile users: to update or not to update? Wireless
Networks, Vol. 1, No. 2 (1995) 175-185
4. Lee, J. M., Kwon, B. S., Maeng, S. R.: Call Arrival History-Based Strategy: Adaptive
Location Tracking in Personal Communication Networks. IEICE Tr. on Communi-
cations, Vol. E83-B, No. 10 (2000) 2376-2385
5. Akyildiz, I. F., Ho, J. S. M., Lin, Y. B.: Movement-based location update and
selective paging for PCS networks. IEEE/ACM Tr. on Networking, Vol. 4, No. 4
(1996) 629-638
6. Baek J. H., Ryu, B. H.: An Improved Movement-Based Location Update and Se-
lective Paging for PCS Networks. IEICE Tr. on Communications, Vol. E83-B, No.
7 (2000) 1509-1516
7. Baek J. H., Ryu, B. H.: Modeling and Analysis of Distance-Based Registration with
Implicit Registration. ETRI Journal, Vol. 25, No. 6 (2003) 527-530
Capacitated Disassembly Scheduling: Minimizing
the Number of Products Disassembled
1 Introduction
Considerable attention has been given to various material and product recovery
processes due to increasing legislation pressures to collect and upgrade used or
end-of-life products in an environmentally conscious way. Disassembly, one of im-
portant material and product recovery processes, represents a way of obtaining
constituent materials, parts and/or subassemblies from used or end-of-life prod-
ucts with necessary sorting operations. There have been a number of research
works on various disassembly problems such as design for disassembly, disassem-
bly process planning, disassembly scheduling, etc. For literature reviews on these
problems, see Jovane et al. [2], Lee et al. [4], and O’Shea et al. [8].
This paper focuses on disassembly scheduling, which is the problem of de-
termining the disassembly schedules of used or end-of-life products while sat-
isfying the demand of their parts and components over the planning horizon.
Disassembly scheduling, which corresponds to production planning in assembly
systems, is one of the important operational problems in disassembly systems.
In other words, from its solution, we can determine the quantity and timing of
disassembly.
Most previous articles on disassembly scheduling are uncapacitated ones, i.e.,
the resource capacity constraints are not considered. Gupta and Taleb [1] con-
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 538–547, 2005.
c Springer-Verlag Berlin Heidelberg 2005
Capacitated Disassembly Scheduling 539
sider the basic case, i.e., single product type without parts commonality, and
suggest a simple algorithm without explicit objective function, and Lee and
Xirouchakis [6] suggest a heuristic algorithm for the objective of minimizing the
costs related with disassembly process. For the extended models with parts com-
monality and/or multiple product types, see Kim et al. [3], Taleb and Gupta [9],
and Taleb et al. [10]. Recently, Lee et al. [5] present integer programming models
for all the uncapacitated cases together with their performances. Unlike these,
Lee et al. [7] consider the resource capacity constraints explicitly and suggest
an integer programming model with various cost factors occurred in disassem-
bly processes. Although the model can give optimal solutions, its application
is limited only to the small sized problems. In fact, the computational results
show that it is not adequate for practical sized problems due to its excessive
computation times.
This paper focuses on the capacitated version of the problem for the basic case
of single product type without parts commonality. As in the production plan-
ning problems in assembly systems, the resource capacity restrictions should be
considered in the disassembly scheduling problems so that the resulting solutions
are more applicable. The objective considered in this paper is to minimize the
number of products to be disassembled. The problem is formulated as an integer
program and an optimal solution algorithm, which is an extension of the exist-
ing algorithm without considering the capacity restrictions, is suggested in this
paper. Computational experiments are done on randomly generated problems,
and the test results are reported.
2 Problem Description
Before describing the problem, we first explain the disassembly product struc-
ture. In the disassembly structure, the root item represents the product itself
and a leaf item represents any item that is not disassembled further. A child item
represents any item that has a parent and a parent item is any item that has at
least two child items. In the disassembly structure without parts commonality,
each item can have at most one parent and hence there is no dependency among
parts or components.
6 7 8 9 10 11 12
(3) (1) (2) (2) (3) (3)
(2)
3 DLT = 0 4 DLT = 2 5 DLT = 1
(4) (1) (4)
disassembly
2 DLT = 1 lead time
(2) yield from its parent
1 DLT = 1
optimal algorithm suggested in this paper consists of two main stages: obtaining
an initial solution and modifying the initial solution.
In the above proposition, the minimum latest disassembly schedule implies that
it satisfies the demands of leaf items as late as possible with the minimum amount
of disassembly quantity. Therefore, we can see that the GT algorithm gives the
optimal number of products disassembled for the uncapacitated problem.
Proof. From proposition 1, we can see that the solution obtained from the GT
algorithm satisfies the demands of leaf items with the minimum amount of dis-
assembly quantity, i.e., the minimal latest disassembly schedule. Therefore, no
feasible solution of problem [P] can have less objective value than that of the
GT algorithm.
Proposition 2 implies that if the initial solution obtained from the first stage is
modified repeatedly without increasing the initial objective value, we can obtain
the optimal solution. In this paper, the modification is done with a backward
move. Let Xit , for i=1, 2, . . . il − 1 and t = 1, 2, . . . T , be the solution obtained
Capacitated Disassembly Scheduling 543
from the GT algorithm. Consider Xiu and Xiv for an arbitrary parent item i
(u < v). Suppose that there exists remaining capacity in period u, defined as
l −1
i
ΔCu = Cu − gi · Xiu . (6)
i=1
Let Δuv = min {ΔCu /gi , mint=u,u+1,...v−1 (Iit ), Xiv }, where • is the largest
integer that is less than or equal to •. Here, Δuv implies the maximum quantity
that can be moved from period v to period u. Note that the move does not violate
the capacity constraints since the amount is calculated based on the remaining
capacity of period u. Then, if we move the amount Δuv from period v to period
u, we obtain
Xiu + Xiv = (Xiu + Δuv ) + (Xiv − Δuv ) = Xiu + Xiv ,
where Xit is the solution after the move. From this, we can derive the following
relation for the parent of item i.
X ϕ(i),u−lϕ(i) + Xϕ(i),v−l
ϕ(i)
= (Iiu + Xiu + siu − Ii,u−1 )/aϕ(i),i + (Iiv + Xiv + siv − Ii,v−1 )/aϕ(i),i
= (Iiu + Xiu + siu − Ii,u−1 )/aϕ(i),i + (Iiv + Xiv + siv − Ii,v−1 )/aϕ(i),i
= Xϕ(i),u−lϕ(i) + Xϕ(i),v−lϕ(i) .
Therefore, for the root item, we obtain
X1,1 + X1,2 + · · · + X1,u−l 1
+ · · · + X1,v−l 1
+ · · · + X1,T
= X1,1 + X1,2 + · · · + X1,u−l1 + · · · + X1,v−l1 + · · · + X1,T ,
which implies that the move does not affect the objective value, i.e. number of
products to be disassembled. Note that a forward move from period u to period
v results in an infeasible solution since the disassembly schedule obtained from
the GT algorithm is the latest one (Proposition 1).
Based on the two propositions and the backward move described above, we
explain the method to obtain the optimal solution, i.e., the method to modify
the initial solution into a feasible one with respect to the capacity constraint
without increasing the initial objective value. The basic idea is to fill the capacity
remained in each period as much as possible using the backward move(s) from a
later period to that period. Here, the remaining capacities are considered from
the first period to the last, and as described earlier, the amount of move of an
arbitrary item i from period v to period u can be determined as
(4 5 *
ΔCu
Δuv = min , min (Iit ), Xiv (7)
gi t=u,u+1,...v−1
where the first term implies the quantity that can be moved without violat-
ing the capacity constraint. Here, in the case of root item, the second term
mint=u,u+1,...v−1 (Iit ) is not needed since there is no inventory for the root item.
544 J.-G. Kim et al.
The next proposition shows the feasibility condition of the backward move of
non-root parent items. Note that no feasibility condition is needed for the root
item since it has no inventory balance constraint.
Proposition 3. For a given disassembly schedule Xit , the move of item k from
period v to u (u < v) is feasible if
Δuv ≤ Ikt f or t = u, u + 1, . . . v − 1.
Proof. The inventory level of item k, Ikt for t = u, u + 1, . . . v − 1, after the
move of amount Δuv from period v to u can be calculated as follows. (The others
remain the same.)
Iku = Ik,u−1 + sku + aϕ(k),k · Xϕ(k),u−lk − (Xku + Δuv ) = Iku − Δuv
Ikt = Ik,t−1 + skt + aϕ(k),k · Xϕ(k),t−lk − Xkt
= (Ik,t−1 − Δuv ) + skt + aϕ(k),k · Xϕ(k),t−lk − Xkt
= (Ik,t + skt + aϕ(k),k · Xϕ(k),t−lk − Xkt ) − Δuv
= Ikt − Δuv for t = u + 1, u + 2, . . . v − 1
Ikv = Ik,v−1 + skv + aϕ(k),k · Xϕ(k),v−lk
= (Ik,v−1 − Δuv ) + skv + aϕ(k),k · Xϕ(k),v−lk
= Ik,v−1 + skv + aϕ(k),k · Xϕ(k),v−lk − Δuv = Ikv
Then, the result follows from the condition Ikt ≥ 0 for t = u, u + 1, . . . v − 1.
Now, we explain the method to modify the initial solution without increasing
the initial objective value. As stated earlier, remaining capacities are filled from
the first period to the last. Consider an arbitrary period t. In this paper, the
backward move is done from the items assigned to the next period t + 1. Here,
if there is remaining capacity after the moves for the items in period t + 1, those
in the next period t + 2 (except for root item) are considered to be moved and
this is done to the last period T until there is no remaining capacity in period
t. According to (7), the amount of move in the case of root item is
(4 5 *
ΔCt
Δ1t = min , X1,t+1 , (8)
g1
where ΔCt > 0 and X1,t+1 > 0. Also, in the case of non-root parent items, it is
needed to determine which item is moved first since there may be two or more
non-root parent items assigned to period t + 1 in the initial solution. To do this,
we select the item i∗ such that
( 4 5*
ΔCt ΔCt
i∗ = arg min − , (9)
i∈R gi gi
Capacitated Disassembly Scheduling 545
where R = {2, 3, . . . il − 1}, i.e., set of non-root parent items. That is, we select
the item that results in the smallest remaining capacity after the backward move.
The amount of move of the selected item i∗ is
(4 5 *
ΔCt
Δi∗ t = min , Ii∗ t , Xi∗ ,t+1 , (10)
gi∗
which represents the maximum quantity of item i∗ that can be moved from
period t + 1 to period t without violating the capacity constraint in period t.
The procedure of the second stage is summarized below. Note that the initial
solution is given from the first stage.
4 Computational Experiments
To show the performance of the algorithm suggested in this paper, computational
tests were done on a number of randomly generated problems, and the results are
given in this section. In this paper, the algorithm is compared with CPLEX 9.0,
commercial integer programming software, and the performance measure used is
the CPU seconds since both give the optimal solutions. The algorithm and the pro-
gram to generate integer programs were coded in C and tests were done on a per-
sonal computer with a Pentium processor operating at 2.0 GHz clock speed.
546 J.-G. Kim et al.
For the test, we generated 750 problems, i.e., 25 problems for each combina-
tion of two levels of capacity tightness (loose and tight), five levels of the number
of items (20, 40, 60, 80, and 100) and three levels of the number of periods (10,
20, and 30). For each level of the number of items, 5 disassembly structures were
randomly generated, in which the number of child items for each parent and its
yield were generated from DU (2, 5) and DU (1, 3), respectively. Here, DU (a, b) is
the discrete uniform distribution with [a, b]. (The other data generation methods
are omitted here because of the space limitation.)
The test results are summarized in Table 1 that shows the average CPU
seconds of the suggested algorithm and CPLEX 9.0, respectively. Note that the
algorithm suggested in this paper gave the optimal solutions for all the test
problems. It can be seen from the table that the CPU seconds of the optimal
algorithm are much smaller than those of CPLEX 9.0. In fact, its CPU seconds
were within 0.001 seconds in average. This implies that the algorithm can be
used to solve practical sized problems within very short computation time, and
also can be used to solve the subproblems of more general problems such as
those with general cost-based objectives.
5 Concluding Remarks
This paper considered the disassembly scheduling problem with resource ca-
pacity constraints for the objective of minimizing the number of products to
Capacitated Disassembly Scheduling 547
Acknowledgements
The financial support the Korea Research Foundation project under grant num-
ber 2004-03-D00468 is gratefully acknowledged.
References
1. Gupta, S. M., Taleb, K. N.: Scheduling Disassembly, International Journal of Pro-
duction Research, Vol. 32 (1994) 1857–1886
2. Jovane, F., Alting, L., Armoillotta, A., Eversheirm, W., Feldmann, K., Seliger, G.,
Roth, N.: A Key Issue in Product Life Cycle: Disassembly, Annals of the CIRP,
Vol. 42 (1993) 651–658
3. Kim, H.-J., Lee, D.-H., Xirouchakis, P., Züst, R.: Disassembly Scheduling with
Multiple Product Types, Annals of the CIRP, Vol. 52 (2003) 403–406
4. Lee, D.-H., Kang, J.-G., Xirouchakis, P.: Disassembly Planning and Scheduling:
Review and Further Research, Proceedings of the Institution of Mechanical Engi-
neers: Journal of Engineering Manufacture – Part B, Vol. 215 (2001) 695–710
5. Lee, D.-H., Kim, H.-J., Choi, G. Xirouchakis, P.: Disassembly Scheduling: Inte-
ger Programming Models, Proceedings of the Institution of Mechanical Engineers:
Journal of Engineering Manufacture – Part B, Vol. 218 (2004) 1357–1372
6. Lee, D.-H., Xirouchakis, P.: A Two-Stage Heuristic for Disassembly Scheduling
with Assembly Product Structure, Journal of the Operational Research Society,
Vol. 55 (2004) 287–297
7. Lee, D.-H., Xirouchakis, P., Züst, R.: Disassembly Scheduling with Capacity Con-
straints, Annals of the CIRP, Vol. 51 (2002) 387–390
8. O’Shea, B., Grewal, S. S., Kaebernick, H.: State of the Art Literature Survey on
Disassembly Planning, Concurrent Engineering: Research and Applications, Vol. 6
(1998) 345–357
9. Taleb, K. N., Gupta, S. M., Disassembly of Multiple Product Structures, Comput-
ers and Industrial Engineering, Vol. 32 (1997) 949–961
10. Taleb, K. N., Gupta, S. M., Brennan, L.: Disassembly of Complex Product Struc-
tures with Parts and Materials Commonality, Production Planning and Control,
Vol. 8 (1997) 255–269
Ascent Phase Trajectory Optimization for a
Hypersonic Vehicle Using Nonlinear
Programming
1 Introduction
Ascent phase trajectory optimization of hypersonic vehicles is one of the most
challenging real-life optimization problems [1]. Numerical algorithms for these
problems are difficult to develop due to the inherent nature of the problem [2].
Our paper is an effort in this direction.
Numerical solution of optimal control problems has two important components:
optimization and numerical integration of differential equations [3, 4]. A naive ap-
proach to solve such problems is a ”cut-and-paste” strategy that uses numerical inte-
gration and optimization packages in the form shown in Figure 1(a). A sophisticated
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 548–557, 2005.
c Springer-Verlag Berlin Heidelberg 2005
Ascent Phase Trajectory Optimization 549
~
xi+2
J ~
xi+1
u Integration
package
xi+2
u xi xi+1
u J
Optimization
package
ti ti+1 ti+2
(a) (b)
Fig. 1. (a) The naive cut-and-paste method (b) Direct transcription method
approach exploits the intimate relation that exists between the methods used for
solving differential equations and the methods used for optimization [3]. In this pa-
per we will describe such an approach based on nonlinear programming (NLP) and
illustrate the method with an example of optimization of the trajectory for an exper-
imental hypersonic vehicle during its ascent phase. The basic approach in solving a
trajectory optimization problem using NLP is to represent an infinite dimensional
optimal control problem by one or more simpler finite dimensional subproblems.
While using this technique, several practical issues arise that delineate these
problems from textbook problems. In fact, taking care of these issues requires
a sound knowledge of the physics behind the problem. Apart from the well un-
derstood issues of infeasible constraints, rank deficient constraints, constraint
redundancy, and scaling, there are other issues of missing data in the aerody-
namic and propulsion parameters as well as non-smoothness (which may be due
to engineering errors or real) which may confuse standard spline interpolation
methods. These problems require careful pre-processing of data before they can
be used in the optimization process.
evaluated at the final time tf , which may be fixed or free. The dynamics of the
system are given by the state equations and initial and final conditions,
where, y is the state vector. Also, we have state and control constraints,
Eqn. (9) defines the hermite interpolation for the state at the interval midpoint,
while (10) enforces the Simpson quadrature over the interval. The NLP variables
are, xT = (tk , y1 , u1 , ū2 , y2 , u2 , ȳ3 , ū3 , . . . , ȳM , ūM , yM , uM ).
In general, the duration of a phase may be variable, in which case, the set of
NLP variables must be augmented to include the variable time(s) tI and/or tF .
Also, we must alter the discretization such that the step size is hk = τk (tF −tI ) =
τk t, where, t = (tF − tI ) with constants 0 < τk < 1 chosen so that the grid
points are located at fixed fractions of the total phase duration.
2.5 1
α=8
0.9
2
αα==88 0.8
α=6
1.5 0.7
α=6
α=4
D
L
0.6
c
c
1 α=4 α=2
0.5
α=0
α=2 0.4
0.5
α=0 0.3
0 0.2
3.5 4 4.5 5 5.5 6 6.5 3.5 4 4.5 5 5.5 6 6.5
Mach number Mach number
2.5 1
M = 4.0 M= 3.5
M = 3.5 M= 4.0 M = 5.0 M=6.0 M = 6.5 0.9
2
0.8
1.5 0.7
D
L
0.6
c
1 c
0.5
0.4
0.5
0.3 M = 6.5 M = 6.0 M = 5.0
0 0.2
0 2 4 6 8 0 2 4 6 8
Angle of attack (α in deg) Angle of attack (α in deg)
Fig. 2. Variation of lift and drag coefficients with α and Mach number
Table 1. (a) Mass flow rate of air (-kg/s) corresponding to altitude 32.5 km (b) Specific
impulse (Isp in seconds)
Altitude (km)
M /α 0◦ 2◦ 4◦ 6◦ 8◦ M 12.5 15.0 20.0 25.0 30.0 35.0 40.0
3.0 1060 1054 1045 1025 1006 977 943
3.5 6.95 7.24 8.30 8.94 9.60 4.0 1060 1054 1045 1025 1006 977 943
4.0 8.94 9.69 10.67 11.67 12.69 5.0 970 964 952 931 910 879 847
5.0 12.79 14.71 16.63 18.61 20.32 6.0 855 849 838 817 799 775 750
6.0 17.74 21.20 24.73 26.87 29.19 7.0 724 719 713 698 687 669 644
6.5 21.51 25.17 29.61 33.18 35.26 8.0 596 594 593 581 570 542 499
(a) (b)
4
x 10
8
7.5
1200
7
Specific Impulse (s)
1000
6
5.2
800
5
Altitude (m)
4.6
600
4
400
3
4
2
4 3 1.6
x 10
8 1
2 7
6
5
Altitude (m) 4 0
3
1 Mach number 180 199 200 220 240 260 268 280 300 303 320
Temperature (k)
(a) (b)
Fig. 3. (a) Specific impulse using spline interpolation (b) Temperature variation in
Indian standard atmosphere
is constant. So linear interpolation is used for this region and spline interpolation
for the rest of the data (Figure 3(a)).
Thrust: Thrust is calculated as T = Isp ṁf g. Assuming equivalence ratio φ=1
and stoichiometric ratio for fuel as 15, we have ṁf = ṁair /15, where, ṁair at
given altitude is obtained from the procedure described above.
Standard Atmosphere: The Indian standard atmosphere is assumed. The
variation of temperature with altitude is shown in Figure 3(b). The atmo-
spheric pressure at sea level is P0 = 100500 (N/m2 ) and specific gas constant is
R=287.05307 (J/kgK).
max mf (13)
where, h is the altitude (m), v the velocity (m/sec), α the angle of attack (rad),
γ the flight path angle (rad), m the mass (kg), μ the gravitational constant, g
the gravitational acceleration, and Re the radius of the earth. The trajectory
related constraints
are also imposed. where, along and alat are the longitudinal and lateral acceler-
ations, respectively. defined as
The lift (L) and drag (D) forces are defined by,
where, S is the aerodynamic reference area of the vehicle, and ρ is the at-
mospheric density. The following constants complete the formulation of the
problem:
The optimization was started with 5 grid points initially and subsequently higher
number of grid points (i.e., 9, 17, 33, 65) were considered. For 5 and 9 grid points,
the NLP constraints are formed using trapezoidal discretization and for higher
number of grid points Hermite-Simpson discretization is used. Each variable is
scaled by its upper bound to make the ranges, over which they vary, similar
in their order of magnitude. This helps better numerical conditioning of the
NLP. The optimization is carried out only at the grid points and the shape of
the trajectory between the grid points is not known. To assess the accuracy
of the result, we integrated (14) - (16) using control histories obtained from
interpolation of the NLP generated discrete control. We used three interpola-
tion schemes (step, linear, and hermite). The initial conditions for 2n − 1 grid
points were obtained by linearly interpolating the optimized values from n grid
points.
The results of optimization and integration (using different interpolation
schemes for control) are given in Table 2. From Table 2, we observe that the
error between the optimization and integration results are significantly large
when number of grid points are few and the error reduces as the number of grid
points increases. The integration using control generated by step interpolation
has large error as compared to linear and hermite interpolations. The results
for 33, and 65 grid points show very little improvement in the optimization re-
sults (see Figure 4). Figure 5 shows variation of altitude, velocity, flight path
angle, mass, and range with time using linearly interpolated control for 65 grid
points.
1.4 2 2.5
1.2
2
Angle of attack (α in deg)
1.5
1
1.5
0.8
1
0.6
1
0.4
0.5
0.5
0.2
0 0 0
0 50 100 150 0 50 100 150 0 50 100 150
Time (s) Time (s) Time (s)
2 2 2
Angle of attack (α in deg)
1 1 1
0 0 0
0 50 100 150 0 50 100 150 0 50 100 150
Time (s) Time (s) Time (s)
4
x 10
2.5 3.2 2000
3
1800
2
Angle of attack (α in deg)
2.8
1600
Velocity (m/s)
2.6
Altitude (m)
1.5
2.4 1400
1 2.2
1200
2
0.5
1000
1.8
0 1.6 800
0 50 100 150 0 50 100 150 0 50 100 150
Time (s) Time (s) Time (s)
5
x 10
8 3600 2.5
3500
Flight path angle ( γ in deg)
6 2
3400
4 3300 1.5
3200
2 3100 1
3000
0 0.5
2900
−2 2800 0
0 50 100 150 0 50 100 150 0 50 100 150
Time (s) Time (s) Time (s)
Fig. 5. State histories (for linearly interpolated control from 65 grid points)
α̇ = β (20)
where, β is now used as the control variable. Then, the equations of motion will
include (20) in addition to (14) - (16). The set of NLP variables will consequently
include an additional variable β at each grid point. With this modification, the
results of optimization and integration are given in Table 3. Figure 4(f) shows
variation of angle of attack against time for 65 grid points. Comparing with the
α history in the earlier scheme we see a flat region between 70 and 90 seconds in
the new scheme. The modified method also gives better accuracy. In fact it does
so for just 33 grid points, whereas the original scheme produces similar accurate
results at 65 grid points. However, the additional NLP variable and constraint
increases the computational time slightly.
6 Conclusions
In this paper, we addressed the challenging application problem of ascent phase
trajectory optimization of a hypersonic vehicle. It was shown that the linear
interpolation scheme used to create the continuous control history for verifica-
tion can itself be exploited while forming the dynamical equations to get faster
convergence and higher accuracy.
References
1. P.F. Gath and A.J. Calise, Optimization of Launch Vehicle Ascent Trajectories with
Path Constraints and Coast Arcs, Journal of Guidance, Control, and Dynamics, Vol.
24, 2001, pp. 296-304.
2. J.T. Betts, Survey of Numerical Methods for Trajectory Optimization, Journal of
Guidance, Control, and Dynamics, Vol.21, 1998, pp. 193-207.
3. J.T. Betts, Practical Methods for Optimal Control Using Nonlinear Programming,
The Society for Industrial and Applied Mathematics, Philadelphia, 2001.
4. E. Gill, Murray, and H. Wright, Practical Optimization, Academic Press, 1981.
5. A.E. Bryson, and Y.-C. Ho, Applied Optimal Control, John Wiley, New York, 1975.
6. J.D. Anderson, Introduction to Flight, McGraw-Hill, Singapore, 2000.
Estimating Parameters in Repairable Systems
Under Accelerated Stress
1 Introduction
In the real world, all products and systems are unreliable in the sense that they
degrade with age and/or usage ultimately. Product reliability contributes much
to quality and competitiveness. Major decisions about reliability are based on
life-test data. Analyses of data from such a normal(or accelerated) test yields
necessary information on product life under design conditions. Accelerating test-
ing saves much time and money.If the product is repairable, it can be possible
to continue testing the product after failures. In many cases, failures seen at the
system level are due to the failure of one component. For example, an electronic
board’s failure induced by a capacitor failure can be easily repaired and testing
can be resumed. A repairable system is a system that, after failing to perform
one or more of its functions satisfactorily, can be restored to satisfactory perfor-
mance by any method other than replacement of the entire system. Malik (1979)
and Brown, Mahoney and Sivazlian (BMS, 1983) proposed general approaches to
model the maintenance effect in which maintenance reduces the age of the unit
with respect to the rate of occurrence of failures. In this paper, Malik’s model was
considered. To evaluate testing under accelerated conditions, we used the Pro-
portional Hazards Model (PHM), which is considered to be a tool to introduce
the environmental factors to the analysis of lifetime data. Refer Kalbfleisch and
Prentice (1980), Cox and Oakes (1984), Bagdonavicius and Nikulin (2002), and
Nelson (1990) for further explanation. There are many kinds of environmental
factors (stress) but in this paper, we consider a single and constant accelerating
variable with m stress levels. The parameter, ρ, which is called the age (or in-
tensity) reduction factor or the improvement factor, describes the maintenance
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 558–565, 2005.
c Springer-Verlag Berlin Heidelberg 2005
Estimating Parameters in Repairable Systems Under Accelerated Stress 559
effect in Malik’s Model. If ρ goes to 0, the state of the maintained unit is almost
as the same as that of pre-maintenance, and if ρ goes to 1, maintenance renews
the unit. In this paper, we assume that the age reduction factor is constant. An
estimation of the parameters of a repairable system under accelerated stress con-
ditions is studied. The method of estimating parameters is maximum likelihood
method using a Genetic Algorithm. Guida and Giorgio (1995) conducted a relia-
bility analysis of accelerated life-time data from a repairable system. Guida and
Giorgio (1995) analyzed the accelerated testing of a repairable item modeled by a
nonhomogeneous Poisson process with covariates, analyzed a single accelerating
variable with 2 stress levels, and derived closed-form maximum likelihood (ML)
solutions. Guerin, Dumon and Lantieri (2004) studied accelerated life testing on
repairable systems, defining two accelerated life models for repairable systems:
the Arrhenius-exponential model and the Peck-Weibull model.
Notation
h(t | s) :
intensity function under stress s
H(t | s) :
cumulative intensity function under stress s
g(a · s) a positive-valued function (= exp(a · s))
:
m :
number of stress levels
ni :
total number of failures % under i stress, i = 1, 2, ...m
m
N total failure number (= i=1 ni )
:
ti,j :
j th failure-time under stress i, i = 1, 2, ...m, j = 1, 2, ...ni
zi,j :
Inter-failure time between j th and j -1 th under stress i,
zi,j = ti,j − ti,j−1 , i = 1, 2, ...m, j = 1, 2, ...ni
xi,j : virtual age just before repair under stress i,
%j
xi,j = 4 k=1 (1 − ρ) · zi,k−1 + zi,j , i = 1, 2, ...m, j = 1, 2, ...ni
yi,j : virtual age right after repair under stress
%j
yi,j = k=1 (1 − ρ) · zi,k , i = 1, 2, ...m, j = 1, 2, ...ni
ρ : age reduction factor
t : operating time
si : normalized scale of stress level, i = 1, 2, ...m
α : scale parameter on normal condition, α ≥ 0
β : shape parameter, β ≥ 1
Baseline pdf:
β β
ea·s a·s
f (x | s) = α · β · xβ−1 · exp − e α ·x
Reliability function:
β
a·s
R(x | s) = exp − e α ·x
560 W.Y. Yun and E.S. Kim
2 Model
Note that the IFT’s Z1 , Z2 , ...Zn can be transformed to the failure times T1 , T2 ,
...Tn . Since the transformed is one-to-one and the Jacobian of the transformation
is 1, the joint pdf of the IFT’s can be easily obtained from that of the failure
times. When the yi,j is given, the conditional distribution is given by:
f (x )
f {xi,j |yi,j−1 } = R(yi,j−1
i,j
)
a·s β a·s β β (1)
β−1 e ·xi,j ea·s ·yi,j−1
= eα · β · xi,j · exp − α · exp α .
By substituting virtual age for xi,j and yi,j , the conditional distribution is as
follows:
a·s β j β−1
%
e
f (x|s) = α ·β· (1 − ρ) · zi,k−1 + zi,j
⎡ ⎛ j k=1
⎞β ⎤ ⎡⎛ j−1 ⎞β ⎤
a·s
% a·s
%
⎢ ⎜ e · (1−ρ)·zi,k−1 +zi,j
⎟ ⎥ ⎢⎜ e · (1−ρ)·zi,k
⎟ ⎥
⎢ ⎟ ⎥ ⎢⎜ ⎟ ⎥
· exp ⎢− ⎜ k=1
⎥ · exp ⎢ k=1
⎠ ⎥ .
⎣ ⎝ α ⎠ ⎦ ⎣⎝ α ⎦
(2)
The likelihood function is:
β−1
m
ni 1 ea·si 2β %
j
L(α, β, ρ, a) = α
·β· (1 − ρ) · zi,k−1 + zi,j
i=1 j=1 k=1
⎡ ⎛ ⎞β ⎤ ⎡⎛ j−1 ⎞β ⎤⎫
%
j % ⎪
⎪
⎟ ⎥⎬
ea·si · (1−ρ)·zi,k−1 +zi,j ea·si · (1−ρ)·zi,k
⎢ ⎜ ⎟ ⎥ n
i−1 ⎢⎜
· exp ⎢ ⎜
⎣− ⎝
k=1
α
⎟ ⎥· ⎢⎜
⎠ ⎦ j=1 exp ⎣⎝
k=1
α
⎟ ⎥ .
⎠ ⎦⎪
⎪
⎭
(3)
3 Numerical Examples
Simulations were carried out to investigate the accuracy of the estimation of
model parameters. Failure times are generated for some specified parameter sets
and we estimate model parameters using the proposed method with the gener-
ated failure data. Mean and mean squared error (MSE) are calculated to show
the performance of the estimation. When the number of parameters to be esti-
mated is large, it is difficult to find sets of values maximizing likelihood functions
through classical search techniques. So, for finding the set of parameters maxi-
mizing the likelihood functions, a Genetic Algorithm (GA) is used. In GA, an
individual is expressed vector of a fixed point figure. The method for encoding
and decoding is very simple; some digits are allocated to one parameter in order
of α, β, ρ, a i.e. (3156, 1578, 2560) is decoded to α = 3.156, β = 1.578 and ρ
= 0.2560. We tested the discrete recombination and selected section recombina-
tion. As a result of test, selected section recombination is better than discrete
recombination. And we use the uniform mutation. We tested a variety of the
rates of Crossover and Mutation. As a result of the test, 0.60(Crossover) and
0.35(Mutation)were selected, respectively.
F (Xn ) − F (y n−1 )
U = Fn (x) = P (Xn < xn |Xn > yn−1 ) =
R(yn−1 )
it is expressed as follows:
β 1/β
ea·s ·yn−1
α· α − Log(1 − U )
Xn = and, Zn = Xn − yn−1 . (5)
ea·s
and Figure 3. It shows that the estimation for α, ρ becomes accurate as the scale
parameter increases. Fourth, the effect of the age reduction factor is investigated.
The input values of the parameters were set to α=2.0, β=1.5, and a=0.2. The
results are shown in Table 4 and Figure 4. The degree of reduction factor is
between 0 and 1 where the case of 0 corresponds to minimal repair and the case
Estimating Parameters in Repairable Systems Under Accelerated Stress 563
4 Conclusion
The imperfect maintenance model and the proportional intensity model are con-
sidered to model a repairable system under accelerated stress. The maintenance
effect is assumed to reduce the age of the system and the stress acts multiplica-
tively on the baseline cumulative intensity. Malik’s model is used to determine
the effect of the maintenance. The log-likelihood function is derived and an esti-
mation procedure with a Genetic Algorithm is proposed. In simulation studies,
we investigate the accuracy and some properties of the estimation methods. It
is shown that the accuracy of the estimation is improved as the number of fail-
ure increases. Further work will be focused on the study of a variety of stress
loadings and different models of age reduction factor.
Estimating Parameters in Repairable Systems Under Accelerated Stress 565
Acknowledgement
This work has been supported by ”Research Center for Future Logistics Infor-
mation Technology” hosted by the Ministry of Education in Korea.
References
1. Bagdonavius, V. and Nikulin, M., Accelerated Life Models, Chapman & Hall, 2002.
2. Brown, J.F., Mahoney, J.F. and Sivazlian, B. D., “Hysteresis Repair in Discounted
Replacement Problems”, IIE Transactions, 15(1983), 156-165.
3. Cox, D.R. and Oakes, D., Analysis of Survival Data, Chapman & Hall, (1984).
4. Guerin, F., Dumon, B. and Lantieri, P., “Accelerated Life Testing on Repairable
Systems”, Proceedings of Reliability and Maintainability Symposium (2004), 340-
345.
5. Guida, M. and Giorgio, M., “Reliability Analysis of Accelerated Life-Test Data from
a Repairable System”, IEEE Transactions on Reliability, 44(2)(1995), 337-346.
6. Kalbfleisch, J.D. and Prentice, R. L., The Statistical Analysis of Failure Time Data,
John Wiley & Sons, Canada, (1980).
7. Malik, M.A.K., “Reliable Preventive Maintenance Scheduling”, AIIE Transactions,
(11)(1979), 221-228.
8. Nelson, W., Accelerated Testing; Statistical Models, Test Plans and Data Analysis,
John Wiley & Sons, New York, (1990).
Optimization Model for Remanufacturing
System at Strategic and Operational Level
1 Introduction
Remanufacturing is an industrial process in which worn-out products are re-
stored to like-new condition. Through a series of industrial process in a factory
environment, a discarded product is completely disassembled. Usable parts are
cleaned, refurbished, and put into inventory. Then the new products are reassem-
bled from the old and, where necessary, new parts to produce a fully equivalent
and sometimes superior in performance and expected lifetime to the original
products (Lund, 1998). An example is Hewlett-Packard, who collects empty
laser-printer cartridges from the customers for reuse (Jorjani et al., 2004).
Previous researches on remanufacturing can be classified into two categories,
strategic level and operational level. At strategic level, the economics of reman-
ufacturing is studied by Ferrer (1997). In his study, the feasibility of remanu-
facturing is investigated considering the value of recoverable parts and market
specification. Salomon et al. (1996) develop a design of product return network.
And Guide et al. (2001) find the optimal selling and acquisition process for re-
manufacturing product. However, most previous researches on remanufacturing
focus on operational level, which are forecasting, production planning/control,
inventory control/management and scheduling. A good overview on quantita-
tive models for recovery production planning and inventory control is given in
Fleischmann et al. (1997). Der Laan et al. (1997) extend the PUSH and PULL
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 566–576, 2005.
c Springer-Verlag Berlin Heidelberg 2005
Optimization Model for Remanufacturing System 567
2 Mathematical Models
2.1 Problem Definition
Remanufacturing can be crucial to the survival of manufacturing companies
because the permanent goodwill of the companies is at stake. But a lot of man-
ufacturing companies are not willing to introduce the remanufacturing for many
reasons, for example high installation cost for remanufacturing facilities and
longer payback period than other alternative investment plans. Therefore the
optimal investment model for remanufacturing facilities and operational model
for remanufacturing execution are increasingly needed. In this paper, we pro-
pose such models for remanufacturing decision making problems. Two consistent
models are developed for both strategic and operational decision making. The
models are based on a comprehensive conceptual remanufacturing framework as
shown in Fig.1.
them are disassembled to remanufacturing and the rests, out of the bounds of
remanufacturing capacity, are subcontracted. Disassembled parts are classified
into reusable parts and non-reusable parts. The former goes to refurbishing site
for repairing and cleaning, the latter dealing with wastes goes to disposal site
to landfill or incinerate. After refurbishing process, ‘as new’ parts are stocked as
part inventory together with new parts from external supplier and subcontrac-
tor. In this case, the manufacturing company has two alternatives for supplying
parts: Either ordering the required parts to external suppliers or overhauling the
returned products and bringing those back to ’as new’ conditions.
Actually most manufacturing companies who are willing to introduce the
proposed framework for remanufacturing are facing two major problems. One
is how much money they need to invest for the capacity of remanufacturing
facilities such as collection, disassembly, and refurbishing sites. The other is how
many returned products should be thrown into the remanufacturing process for
‘as new’ condition and how many new parts need to be purchased from external
suppliers. These problems are equivalent to two consecutive decision makings
on facility investment and production planning which are formulated as two
models as shown in Fig. 2. Model 1 is for a decision making at strategic level.
The optimal investment scale for the capacity of remanufacturing facilities is
determined in this model by trading off the internal and external constraints for
remanufacturing such as governmental regulation, expected quantity of product
return, and available investment scale for remanufacturing facilities. In Model 2,
decision making at operational level is accomplished under the optimal capacity
of remanufacturing facilities obtained from Model 1.
All the notations for variables and parameters used in the both models are
summarized in Appendix A.
Maximize
I
(Inri × CP AQri × Dif Costi )−
i=1
=
I
M Cr × Inri × CP AQri (1)
i=1
>
P
P
+ M Cd × Indp × CP AQdp + M Cc × Incp × CP AQcp
p=1 p=1
Subject to
P
Inri × CP AQri ≤ Indp × CP AQdp × BOMpi , ∀i (5)
p=1
I
rpgov × Dpavg × BOMpi ≤ Inri × CP AQri , ∀i (6)
i=1
P
(1 − λi ) × Indp × CP AQdp × BOMpi ≤ Inri × CP AQri , ∀i (7)
p=1
I
P
Inri + (Indp + Incp ) ≤ T OI (8)
i=1 p=1
Inri ≥ 0 , ∀i (9)
Maximize
T
I
(P P Ci × Rit )−
t=1 i=1
=
T
P
(CP ICp CP Ipt + OU T Cp OU Tpt + DSU Cp DSUpt + DSV Cp DPpt )+
t=1 p=1
T
I
(DspCi W P artit + RSCi RSUit + RV Ci RP artit + P ICi P Iit +
t=1 i=1
>
T
P
T
I
P P Ci P P artit ) + (1 − DSUpt )DIDC + (1 − RSUit )RIDC
t=1 p=1 t=1 i=1
(14)
Subject to
P
DP artit = BOMpi DPpt , ∀i, t (15)
p=1
P
OP artit = BOMpi OU Tpt , ∀i, t (16)
p=1
Optimization Model for Remanufacturing System 571
I
V P arti P Iit ≤ P ICp , ∀t (20)
i=1
T
T
W P artit ≤ λi DP artit , ∀i (26)
t=1 t=1
and (23) guarantee the disassembly and refurbishing quantity cannot exceed the
capacity of disassembly site (DCpp ) and refurbishing site (RCPi ), respectively.
Constraints (24) and (25) are Big M constraints for setup at refurbishing and
disassembly site. Constraint (26) shows that the manufacturing companies can-
not exceed λi of disassembled parts to dispose, where λi is a predetermined
value. Constraint set (27) and (28) check for binary variables and the last two
constraint sets (29) and (30) check for the non-negativity of decision variables.
t=1 t=2 t=3 t=4 t=5 t=6 t=7 t=8 t=9 t=10
Product1 160 160 140 130 180 180 170 150 170 140
Product2 170 120 150 200 130 140 130 210 180 150
Product3 160 170 120 180 170 130 160 150 110 130
t=1 t=2 t=3 t=4 t=5 t=6 t=7 t=8 t=9 t=10
Part1 1470 1860 1530 1560 1710 1710 1800 1750 1800 1740
Part2 2970 3860 3010 3300 3630 3330 3720 3210 3520 3460
Part3 2510 3370 2310 2780 3390 2820 3120 2490 2800 3060
Part4 1480 1920 1700 1860 1620 1480 2000 1750 1890 1400
Part5 2010 2720 2050 2500 2550 2030 2680 2570 2490 2100
Optimization Model for Remanufacturing System 573
Fig. 3. Sensitivity analysis for total in- Fig. 4. Sensitivity analysis for the return
vestment (T OI) vs. cost savings ratio (rpgov ) vs. cost savings
Fig. 5. Sensitivity analysis for total in- Fig. 6. Sensitivity analysis for total in-
vestment (T OI) vs. capacity for each vestment (T OI) vs. capacity for each
product in collection site (CSCpp ) product in disassembly site (DCpp )
Fig. 7. Sensitivity analysis for total available investment (T OI) vs. capacity for each
part in refurbishing site (RCPi )
level for remanufacturing facilities, which is one of the most significant results
of Model 1.
4 Conclusions
In this paper, we presented a framework of remanufacturing processes and pro-
posed the mathematical models for decision-making at strategic and operational
level. At strategic level, the model determines how much the company needs to
Optimization Model for Remanufacturing System 575
invest for the remanufacturing facilities while maximizing the cost savings. Using
this model, we can also find the investment priorities for facilitating each prod-
uct or part at given total investment. The proposed model for operational level
determines the processing quantity of each remanufacturing facility by maximiz-
ing the total profit. The post-optimal analysis for the operational model shows
that there exists an optimal remanufacturing capacity for each facility at which
the company achieves the maximal cost saving, which is compatible to the re-
sult of strategic model. This analysis indicates that the strategic model may be
integrated into the operational model without loss of integrity.
As future research, we can delve into the integration model for all decision-
making levels and need to develop a practical and efficient heuristics for solving
the large-scale problems.
References
Caruso, C., Colorni, A., Paruccini, M.: The Regional Urban Solid Waste Management
System: A Modeling Approach. Eur. J. Oper. Res. 70 (1993) 16–30
Der Laan, E., Salomon, M.: Production Planning and Inventory Control with Reman-
ufacturing and Disposal. Eur. J. Oper. Res. 102 (1997) 264–278
Guide, V.D., Van Wassenhove, L.N.: Managing Product Returns for Remanufacturing.
Prod. Oper. Manag. 10 2 (2001) 145–155
Ferrer, G.: The Economics of Personal Computer Remanufacturing. Resour. Conserv.
Recy. 21 (1997) 79–108
Fleischmann, M., Bloemhof-Ruwarrd, J.M., Dekker, R., Van Der Lann, E., Van Nunen,
J.A.E.E., Van Wassenhove, L.N.:Quantitative Models for Reverse Logistics: A Re-
view. Eur. J. Oper. Res. 103 (1997) 1–17
Jayaraman, V., Patterson, R. A., Rolland, E.: The Design of Reverse Distribution
Networks: Models and Solution Procedures. Eur. J. Oper. Res. 150 (2003) 128–149
Jorjani, S., Leu, J., Scott, C.: Model for the allocation of electronics components to
reuse options. Int. J. Prod. Res. 42 6 (2004) 1131–1145
Lund, R.: Remanufacturing: United States Experience and Implications for Developing
Nations. The World Bank, Washington, DC. (1998)
Pirkul, H., Jayaraman, V.: Production, Transportation, and Distribution Planning in
a Multi-Commodity Tri-Echelon System. Transport. Sci. 30 (1996) 291–303
Salomon, M., Thierry, M., van Nunen, J., Van Wassenhove, L.: Distribution Logistics
and Return Flow Optimization. Management Report Series. 254 (1996)
Parameters
BOMpi : Number of part i from disassembling
rpgov : Product index
on unit of product
Dpavg : Average demand for product p in time
CSCpp : Capacity of process in collection site
t
for product p
CP AQri : Capacity acquisition for part i by unit
RCpi : Capacity of refurbishing site for part
investment on refurbishing site
i
CP AQdp : Capacity acquisition for product p by
DCpp : Capacity of disassembly site for prod-
unit investment on disassembly site
uct p
CP AQcp : Capacity acquisition for product p by
V P arti : Volume occupied by one unit of part
unit investment on collection site
i
Rit : Required quantity of part i at time t
P ICp : Inventory capacity of part inventory
CPpt : Collected quantity of product p at
λi : Upper bound of disposal rate for dis-
time t
assembled part i
Cost Parameters
T OI : Total available investment DSV Cp : Unit operation cost for disassembling
M Cr : Maintenance cost of Refurbishing site collected product p
per unit capacity OU T Cp : Subcontracting cost for product p
M Cd : Maintenance cost of Disassembly site RSCi : Set-up cost for refurbishing disassem-
per unit capacity bled part i
M Cc : Maintenance cost of Collection site RV Ci : Unit operation cost of refurbishing
per unit capacity disassembled part i
Dif Costi: Gap of purchasing cost for new parts P ICi : Unit inventory holding cost of part i
and unit remanufacturing cost in part inventory
CP ICcp : Unit inventory holding cost of col- P P Ci : Unit purchasing cost of part i from
lected product p in collection site supplier at time t
DspCi : Disposal cost of disassembled part i DIDC : Idle cost of disassembly facility
DSU Cp : Set-up cost for disassembling col- RIDC : Idle cost of refurbishing facility
lected product p
Decision Variables
Inri : Investment on refurbishing site for
DP artit : Number of disassembled part i at time
part i
t
Indp : Investment on disassembly site for
P Iit : Inventory level of part i at time t
product p
P P artit : Number of purchased part i at time t
Incp : Investment on collection site for prod-
RSUit : 1, if refurbishing set-up for part i oc-
uct p
curred at time t; 0, O/W
DPpt : Number of disassembled product p at
DSUpt : 1, if disassembled set-up for collected
time t
product p occurred at time t; 0, O/W
RP artit : Number of refurbished part i at time
OU Tpt : Number of outsourcing product p at
t
time t
W P artit : Number of disposed part i at time t
OP artit : Number of part i from subcontractor
CP Ipt : Inventory level of colleted product p
at time t
at time t
A Novel Procedure to Identify the Minimized
Overlap Boundary of Two Groups by
DEA Model
1 Introduction
The classification problem of assigning observations into one of several groups
plays a key role in decision making. Binary classification problem, in which
the observations are restricted to one of two groups, has wide applicability in
problems ranging from credit scoring, default prediction and direct marketing
to applications in biology and medical domain [2].In discriminant analysis (DA),
the overlap of two groups is a major source of misclassification. However, most
effort of previous researches aim to improve the hit-ratio of correct classification,
few concentrates on the identification of overlap boundary.While the overlap
boundary can be identified, the decision maker will pay more attention to the
new observation which is predicted to appear within the boundary. For example,
in the case of loan evaluation, the manager may make the binary decision from
This research is supported by the National Science Council of Republic of China
under Contract NSC 93-2213-E-008-035.
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 577–586, 2005.
c Springer-Verlag Berlin Heidelberg 2005
578 D.S. Chang and Y.C. Kuo
the result of DA and obtain the additional information for risk control if the
applicant is identified within the overlap boundary.
The statistical technique such as Fisher’s linear discriminant function [9],
Goal Programming (GP) approach initially proposed by Freed and Glover [11]
and machine learning techniques such as neural network [17] are known as pop-
ular approaches to solve the discriminant problem, although these approaches
can count the hit-ratio for the performance of classification, none of them are
capable to identify the overlap boundary of two groups. Sueyoshi’s DEA-DA [18]
[19] [20] [21]propose a GP-based DA technique to identify the overlap which is
obtained by minimizing the total deviation of misclassified observations, but it
fails to calibrate the boundary of overlap. Moreover, in the case of small sample
size, it is hard to fit the overlap boundary by parametric techniques.
In this paper, a novel procedure which is based on data envelopment analysis
(DEA) is proposed to identify the overlap boundary of two groups. The basic
idea is inspired that observations belonging to the same group should have the
same production possibility set (PPS) and be dominated by the same frontier.
If intersection exists between two PPSs, the observed overlap boundary can be
obtained from the matching frontiers of two groups.
The remainder of this paper is organized as follows. Section 2 introduces the
proposed procedure including overlap identifying and linear transformation. An
example is examined in section 3.Conclusion is summarized in section 4.
2 Methodology
2.1 Overlap Identifying
DEA was introduced by Charnes et al. [6]. Consider n production units or De-
cision Making Units (DMUs) that are to be evaluated, all using the same m
inputs to produces s different outputs. Let Xj be the input consumption vector
from DMU j where Xj = (x1j , · · · , xmj )T , and Yj the output production vec-
tor where Yj = (y1j , · · · , ysj )T . The DEA input-oriented efficiency score φ is
given by
φ = min φ
φ,λ
n
s.t. φX ≥ λ j Xj (1)
j=1
n
Y ≤ λj Yj
j=1
From the viewpoint of DEA, the definition of PPS with the pairs of input and
output vectors (Xj , Yj ) of n DMUs is P = {(x, y)|x ≥ λX, y ≤ λY, λ ≥ 0}. In a
simple two-dimensional case, by considering of discriminating variables, Z1 and
Z2 , as input or output variables, we can identify the frontier and the dominated
PPS for each group respectively. If Z1 and Z2 are considered as output variables
A Novel Procedure to Identify the Minimized Overlap Boundary 579
(y1 = Z1 , y2 = Z2 ), and given one as the value of input (x = 1), it can identify the
frontier and PPS as shown in Fig. 1 (a). Points C, D and E which use unit input
to produce most output than other points are identified as benchmarks on the
frontier. Similarly, Fig. 1 (b) shows another type of frontier by fixing the output
value (y = 1) and treating Z1 and Z2 as input variables (x1 = Z1 , x2 = Z2 ), point
A, B and C are on the frontier by using least input than other points to produce
one unit output.
Fig. 1. Illustration of the frontiers identified by output-oriented DEA model in (a) and
input-oriented DEA model in (b)
Two possible types of frontier for each group are shown in Fig. 2 (a) and (b).
An adequate frontier for one group is defined that it can separate its own DMUs
from another group. In Fig. 2 (a), the frontier GI1 of group 1 (notate as G1 ) is
obtained by treating all the factors as input variables and fixing output value as
one, which can exclude most DMUs of G2 from G1 . Similarly, the frontier GO 2
can be generated for G2 by regarding the factors as output variables and fixing
input value as one. In contrast with preceding situation, GO I
1 and G2 (shown
in Fig. 2 (b)) are unadapted frontiers for two groups with all DMUs enveloped
between them. The rule of determining a proper DEA model for each group will
be discussed in Section 2.2. ?
The intersection of two P P Ss (notate as P P S11 P P S21 ) determined by
GI1 and GO 2 might not catch the overlap in general (Such as Fig.3(a)(b)). With
the convexity assumption on DEA model, DMUs locating in the margin of PPS
will be identified as the benchmarks. If the data sets are coincident as the one
depicted in Fig. 3 (c), the intersection of P P S11 and P P S21 may catch the overlap
of two groups well. Coordinates rotated for data sets by the technique of linear
transformation is further employed to deal this problem. (See Section 2.2)
The stratification model of DEA [22] can be applied to further identify the
sequential layers of frontier for two groups. Two important reasons are that
(i)it helps to detect whether outlier observation exists. By removing the first
580 D.S. Chang and Y.C. Kuo
Fig. 2. Illustration of correct intersection identification in (a) and incorrect one in (b)
Fig. 3. Illustration of various intersections between two PPSs which are formed by
different rotation of original data set in (a), (b) and (c)
layer of frontier (such as GI1(1) and GO 2(1) in Fig. 4), the DMUs within the set
1
? 1
of P P S1 P P S2 are further identified as each group’s benchmarks to form the
second layer of frontier (mark as GI1(2) and GO 2(2) ). The second layer of fron-
tiers can dominate a subset of P P S1 and P P S2 (here refer to as P P S12 and
P P S22 ) separately
? and then reduce the intersection of P P S12 and P P S22 (notate
2 2
as P P ? S1 P P S2 ). If the? number of observations shows sharp declines from
P P S11 P P S21 to P P S12 P P S22 , the first layer of frontier may be formed by
the outlier data.(ii) Decision makers may pay more attention to the observa-
tions which lead to higher risk level of misclassification in a smaller range of
overlap.
Step1: Determine the rotation angle and define the rotation matrix T.
In order to give the data set being rotated to a proper direction (say 45 de-
grees), we need to determine the rotation angle which is from the orthogonal
unit vector of the classification
line to the unit vector. The unit vector being
defined as −→u 1 = √12 , √12 is 45 degrees from −→
u 1 to each Cartesian coordinate
axes, the classification line can be solved by MSD (Minimizing the sum of indi-
vidual deviations) [12] which is a well known linear discriminant technique and
is formulated as followed:
n
1 +n2
min di
i=1
2
s.t. zij wj + di ≥ c f or i ∈ G1 (2)
j=1
2
zij wj − di < c f or i ∈ G2
j=1
−→
Where W = [w1 , w2 ] is defined as orthogonal vector of the classification line
% −
→
equation L : zij wj + di = c, the rotation angle from W to − →u 1 can make the
data sets rotated to the direction as it shown in Fig. 3 (c). The angle θ can
be computed by dot product of these two vectors, and it can be expressed as
below
582 D.S. Chang and Y.C. Kuo
= −
→ → >
−1 W ·− u1
θ = cos −
→ → (3)
|W | · |−
u 1|
Where two Cartesian coordinate systems with a rotation angle θ can be expressed
the rotation matrix T as below:
cos(θ) sin(θ)
T= (4)
−sin(θ) cos(θ)
d1 = the absolute value of the most negative value of xk1 plus one
d2 = the absolute value of the most negative value of xk2
3 Example
A two-dimensional case is chosen to illustrate the procedure with visualization
of the identified overlap boundary. The data set contains 100 data which is
collected to classify the breed of salmons [13], 50 from Canadian salmons and
50 from Alaskan ones. Two attributes are considered for classification, x1 is the
diameter of rings for the first-year freshwater growth and x2 is marine growth.
After linear transformation for data (the rotation angle θ is about 90 degrees
computed by formula (3)), the overlap boundary of two groups is identified and
shown in Fig. 6 (a). Because the overlap boundary obtained by applying raw data
is different from the result by rotated data, in order to confirm that 90 degrees
is optimal rotation angle in this case, the number of observations included in
the overlap by different rotation angle is examined. Fig. 5 and Fig. 6 show that
the 90 degrees rotation angle, which rotate the data set from the direction of
-45 degrees to 45 degrees, can obtain the minimized overlap boundary which
includes the lowest number of observations (See Fig.5).
4 Conclusion
In this paper, a minimized overlap boundary of two groups is identified by DEA
without the need to specify the boundary function. The obtained overlap bound-
ary provides additional information for decision makers to catch the observations
within the overlap for risk management. It is also useful in other applications
such as marketing strategies, the customers falling in the overlap can be viewed
as a special market segment with similar characteristics. Therefore, the method
of overlap boundary identification by DEA may be employed to explore the
potential opportunities like data mining does.
The overlap boundary formed by the benchmarks of two groups can further
be used as discriminant frontier. With the idea from the characteristic of PPS,
584 D.S. Chang and Y.C. Kuo
Fig. 6. Illustration of overlap boundaries identified by the data set with different ro-
tation angle
it can establish the discriminant function by the frontier of groups rather than
most of the existing approaches which minimize the total deviation of all the
observations from their group mean. This clearly is an issue for future researches.
A Novel Procedure to Identify the Minimized Overlap Boundary 585
References
1. Bajgier, S. M., Hill, A.V.: An Experimental Comparison of Statistical and Lin-
ear Programming Approaches to the Discriminant Problem. Decision Sciences. 13
(1982) 604-618
2. Bhattacharyya S., Pendharkar P.C.: Inductive, Evolutionary, and Neural Comput-
ing Techniques for Discrimination: A Comparative Study. Decision Sciences. 29
(1998) 871-899
3. Billings, S.A., Lee, K.L.: Nonlinear Fisher Discriminant Analysis Using A Minimum
Squared Error Cost Function and the Orthogonal Least Squares Algorithm. Neural
Networks. 15 (2002) 263-270
4. Charnes A.: Data Envelopment Analysis: Theory, Methodology, and Application.
Boston: Kluwer Academic Publishers (1994)
5. Charnes, A., Cooper, W.W.: Goal Programming and Multiple Objective Optimiza-
tion, European Journal of Operational Research. 1 (1977) 39-54
6. Charnes, A., Cooper, W.W., Rhodes, E.: Measuring the Efficiency of Decision
Making Units, European Journal of Operational Research. 2 (1978) 429-444
7. Cielen, A., Peeters, L., Vanhoof, K.: Bankruptcy Prediction Using a Data Envel-
opment Analysis, European Journal of Operational Research. 154 (2004) 526-532
8. Cooper W.W, Seiford L.M., Tone K.: Data Envelopment Analysis: A Compre-
hensive Text with Models, Applications, References, and DEA-Solver Software,
Boston: Kluwer Academic Publishers (2000)
9. Fisher, R.A.: The Use of Multiple Measurements in Taxonomic Problems, Annals
of Eugenics. 7 (1936) 179-188
10. Freed, N., Glover, F.: Simple But Powerful Goal Programming Models for Discrim-
inant Problems, European Journal of Operational Research. 7 (1981) 44-66
11. Freed, N., Glover, F.: A Linear Programming Approach to the Discriminant Prob-
lem, Decision Sciences. 12 (1981) 68-74
12. Freed, N., Glover, F.: Evaluating Alternative Linear Programming Models to Solve
the Two-Group Discriminant Problem. Decision Sciences. 17 (1986) 151-162
13. Johnson, R.A., Wichern, D.W.: Applied Multivariate Statistical Analysis. 3rd edn.
Prentice-Hall,Englewood Cliffs New Jersey (1992) 519-521
14. Koehler, G.J., Erenguc, S.S.: Minimizing Misclassifications in Linear Discriminant
Analysis. Decision Sciences. 21 (1990) 63-85
15. Lam, K.F., Moy, J.W.: An Experimental Comparison of Some Recently Devel-
oped Linear Programming Approaches to the Discriminant Problem. Journal of
Computers and Operations Research. 24 (1997) 593-599
16. Lam, K.F., Moy, J.W.: A Piecewise Linear Programming Approach to the Two-
Group Discriminant Problem-an Adaptation to Fisher’s Linear Discriminant Func-
tion Model. European Journal of Operational Research. 145 (2003) 471-481
17. Rumelhart, D.E., Hinton, G. E., and Williams, R.J.: Learning Internal Represen-
tations by Error Propagation. In: Rumelhart D.E., McClelland J.L. (eds.): Parallel
Distributed Processing: Exploration in The Micronstructure of Cognition, Vol.1.
Cambridge, MA: MIT Press (1986)
18. Sueyoshi, T.: DEA Discriminant Analysis in the View of Goal Programming. Eu-
ropean Journal of Operational Research. 115 (1999) 564-582
19. Sueyoshi, T.: Extended DEA-Discriminant Analysis. European Journal of Opera-
tional Research. 131 (2001) 324-351
20. Sueyoshi, T.: Mixed Integer Programming Approach of Extended DEA-
Discriminant Analysis. European Journal of Operational Research. 152 (2004)45-55
586 D.S. Chang and Y.C. Kuo
21. Sueyoshi, T., Kirihara, Y.: Efficiency Measurement and Strategic Classification of
Japanese Banking Institutions. International Journal of Systems Science. 29 (1998)
1249-1263
22. Zhu, J.: Quantiative Models for Performance Evaluation and Benchmarking: Data
Envelopment Analysis with Spreadsheets and DEA Excel Solver, Boston: Kluwer
Academic Publishers, (2003)
Appendix
The formula (4) illustrate in the text is useful for two-dimensional case, but it is
hard to extend to n dimension. For this reason, we rewrite formula (4) in another
form. It is known that the rotation matrix T for two Cartesian coordinate sys-
tems which have the bases [− u 1, −
→ →
u 2 ] and [−→u 1 , −
→
u 2 ] respectively can be expressed
as below: −→
u1·− →u 1 −
→
u1·− →
u 2
T= − → (I)
u2·− →u 1 −
→
u2·− →
u 2 2×2
Four elements are included in above (2 × 2) matrix with each element being
referred to as direction cosine. The direction cosine can be obtained by the dot
product of different Cartesian coordinate bases. The bases are defined as:
−
→
u 1 = unit vector of [1, 1] = [0.707, 0.707]
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 587–595, 2005.
c Springer-Verlag Berlin Heidelberg 2005
588 M.R. Minhas and S.M. Sait
carries out independent search [6, 8]. Malek et al. suggested linking independent
searches where each slave runs a copy of a serial TS but with different parameter
settings [9]. After specified time intervals, all the slave processes are halted and
the master process selects the overall best solution found so far and broadcasts
it to all the slave processes. Each slave process then restarts its search process
from the best solution it receives from the master.
Another proposed approach is to parallelize search process within an iteration
of TS. In this approach, each process is given the task of exploring a subset of
the neighborhood of the current solution. Here two approaches are followed:
synchronous and asynchronous. In the synchronous approach, various processes
are always working with the same solution but exploring different partitions
of the neighborhood. The master process orchestrates the activities of the slave
processes [8]. In the asynchronous approach, all processes are peer and are usually
not working with the same current solution [6]. Both of these approaches require
that the set of possible moves be partitioned among the available processors so
that each processor can explore a distinct sub-region of the neighborhood.
Some other suggestions for efficient parallelization of TS include partitioning
the search space, or partitioning the problem into smaller sub-problems with
determining the best moves for each sub-problem, and then performing a com-
pound move [6].
Attempts to solve some hard optimization problems have also been reported
in literature. Parallel tabu search algorithms for the vehicle routing problem are
presented in [8, 10]. A massively parallel implementation of tabu search for the
Quadratic Assignment Problem (QAP) is reported in [11]. The parallel algorithm
was implemented on a Connection Machine CM-2 (a massively parallel SIMD
machine). A reduction in runtime per iteration was reported when compared to
some other sequential and parallel implementations [11, 12].
In this paper, we present a parallel TS algorithm for efficient optimization
of a hard optimization problem namely, constrained multiobjective VLSI stan-
dard cell placement. The rest of the paper is organized as follows: The next
section briefly discusses the placement problem and the related cost functions.
In Section 3, some implementation details of the proposed parallel tabu search
algorithm are presented, followed by experimental results and comparisons in
Section 4. Section 5 presents some concluding remarks.
Feedthrough cell
Row of cells
Routing Channel
of nets (which are sets of ports that are to be wired together), placement prob-
lem consists of finding suitable physical locations for each cell on the layout. By
suitable we mean those locations that minimize given objective functions, sub-
ject to some constraints imposed by the designer, the implementation process,
or layout strategy and the design style.
In this work, we deal with standard cell placement, where all the circuit cells
are constrained to have the same height, while the width of the cell is variable
and depends upon its complexity. A typical standard cell layout is shown in
Figure 1. As can be seen in the figure, cells are arranged in rows with routing
channels between the rows. Due to varying width of cells, row widths may be
unequal depending on the type and number of cells placed in a row. An approx-
imation would be to treat cells as points, but in order to have a more accurate
estimate of wirelength, widths of cells are taken into account. Heights of routing
channels are estimated using the vertical constraint graphs constructed during
the channel routing phase. With this information, a fairly accurate estimate of
power dissipation, delay and total wirelength can be obtained [13]. Next, we
formulate the cost function used in our optimization process.
where li is the wirelength estimation for net i and M denotes total number of
nets in circuit.
pi Ci · Si (2)
590 M.R. Minhas and S.M. Sait
Delay Cost: The delay cost is determined by computing delay along the longest
path in a circuit. The delay of any given path is computed as summation of the
delays of all the nets belonging to the path and the switching delays of the cells
driving these nets. Hence, the delay Tπ of a path π consisting of nets {1, 2, ..., k}
is expressed as:
k−1
Tπ = (CDi + IDi ) (5)
i=1
where CDi is the switching delay of the cell driving net i and IDi is the inter-
connect delay of net i. The placement phase affects IDi only because CDi is
technology dependent and is hence independent of the placement process. The
cost function for delay of the circuit can be given as:
Width Cost: Width cost is given by the maximum of all the row widths in the
layout. We have constrained layout width not to exceed a certain positive ratio
α to the average row width wavg , where wavg is the minimum possible layout
width obtained by dividing the total width of all the cells in the layout by the
number of rows in the layout. We can express width constraint as below:
The above rule is translated to and-like OWA fuzzy operator [14] and the mem-
bership μ(x) of a solution x in fuzzy set GOOD solution is obtained by:
⎧ %
⎪ β ·j=l,p,d
min {μj (x)} + (1 − β) · 13 μj (x);
⎪
⎪ j=l,p,d
⎪
⎨
μ(x) = if W idth − wavg ≤ α · wavg , (8)
⎪
⎪
⎪
⎪
⎩
0; otherwise.
Here μj (x) for j = {l, p, d} are the membership values in the fuzzy sets
SMALL wirelength, LOW power consumption, and SHORT delay respectively,
whereas β is a constant in range [0, 1]. A placement solution that results in a
higher value of μ(x) is considered a better solution.
Algorithm. MasterProcess;
Begin
(* S0 is the initial solution. *)
(* BestS is the best solution. *)
(* P CL is the Partial Candidate List. *)
(* p is the number of slave processors. *)
(* OBM is the Overall Best Move. *)
Generate S0 and p number of P CLs;
Send S0 and a P CL to each slave process;
While iteration-count < max-iterations
Receive best move and cost from each slave;
Find OBM subject to tabu restrictions;
Generate P number of P CLs;
Send OBM and a P CL to each slave process;
Update BestS; /*by applying OBM on BestS*/;
EndWhile
Return (BestS)
End. /*MasterProcess*/
Algorithm. SlaveProcess;
Begin
Receive S0 and a P CL from the master process;
CurS = S0 ; (* Current Solution *)
While iteration-count < max-iterations
Try each move in P CL and compute cost;
Send the best move and its cost to the master process;
Receive OBM and a P CL from the master process;
Update CurS /* by applying OBM on CurS */;
EndWhile
End. /*SlaveProcess*/
master process. The master process selects the overall best move (OBM) among
the moves it received from slave processes subject to tabu restrictions. Then
in each subsequent iteration, the master process sends the overall best move
and a new partial candidate list to each slave process. Each slave process now
starts by performing the received overall best move so that all the slave processes
start their iteration from the same solution. Each slave process searches its local
neighborhood and sends the best move and its cost to the master process.
Table 1. Run times and solution quality μ(s) for achieving a target membership for serial
and parallel TS/GA approaches. X indicates unreasonably high run time requirement
Circuit Number μ(s) Time for Time for Parallel TS μ(s) Time for Time for Parallel GA
Name of Cells TS Serial TS p=2 p=3 p=4 p=5 p=6 p=7 GA Serial GA p=3 p=5 p=7
s386 172 0.688 52 28 20 17 16 15 14 0.504 15 9.9 5.7 6.7
s641 433 0.785 934 472 332 239 205 171 151 0.616 793 307 390 289
s832 310 0.644 74 40 33 23 22 20 19 0.479 128 43 37 39
s953 440 0.661 195 98 71 53 46 41 36 0.511 309 136 91 108
s1196 561 0.653 374 187 132 97 88 78 67 0.484 988 327 262 205
s1488 667 0.603 259 131 93 69 63 55 49 0.482 1883 677 435 418
s1494 661 0.601 268 137 96 72 65 57 51 0.496 1405 847 638 479
c3540 1753 0.665 2142 1146 703 547 440 370 344 - X X X X
s3330 1961 0.699 1186 590 451 313 245 210 184 - X X X X
c5378 2993 0.669 1850 914 601 467 371 312 264 - X X X X
s9234 5844 0.631 5571 2855 2006 1525 1272 1062 849 - X X X X
2500 6.00
2000 5.00
Run time (in seconds)
4.00
1500
Speed-up
3.00
1000
2.00
500
1.00
0
1 2 3 4 5 6 0.00
Number of Processors 23 456 2 345 6 23456 23456
c3540 s3330 s5378 s9234
c3540 s3330 s5378 Circuit Name
(a) (b)
Fig. 4. (a) Decrease in run times for selected large circuits with increasing number of
processors for parallel TS. (b) Speedup obtained for selected large circuits for parallel TS
5 Conclusions
In this work, we presented a parallel tabu search strategy for accelerating the
solution to a constrained multiobjective VLSI cell placement problem. The pro-
posed strategy belongs to p-control, RS, MPSS class and was implemented on
a dedicated cluster of workstations. A distributed parallel GA was also im-
plemented for the comparison purposes. Experimental results on ISCAS-85/89
benchmarks exhibit that the proposed parallel TS shows an excellent trend in
terms of speedup and requires far lesser run times as compared to serial TS for
obtaining the same quality of placement solutions. When compared with results
obtained by parallel GA, the proposed parallel TS clearly outperforms both in
terms of solution quality as well as run time.
Acknowledgment
The authors would like to thank King Fahd University of Petroleum & Minerals,
Dhahran, Saudi Arabia, for support under project code # COE/CELLPLACE/263.
A Parallel Tabu Search Algorithm 595
References
1. Sadiq M. Sait and Habib Youssef. Iterative Computer Algorithms and their Appli-
cation to Engineering. IEEE Computer Society Press, December 1999.
2. Sadiq M. Sait, Habib Youssef, Aiman El-Maleh, and Mahmood R. Minhas. Iter-
ative Heuristics for Multiobjective VLSI Standard Cell Placement. Proceedings of
IJCNN’01, International Joint Conference on Neural Networks, 3:2224–2229, July
2001.
3. Sadiq M. Sait, Mahmood R. Minhas, and Junaid A. Khan. Performance and Low-
Power Driven VLSI Standard Cell Placement using Tabu Search. Proceedings of
the 2002 Congress on Evolutionary Computation, 1:372–377, May 2002.
4. Prithviraj Banerjee. Parallel Algorithms for VLSI Computer-Aided Design. Pren-
tice Hall International, 1994.
5. Van-Dat Cung, Simone L. Martins, Celso C. Riberio, and Catherine Roucairol.
Strategies for the Parallel Implementation of metaheuristics. Essays and Surveys
in Metaheuristics, pages 263–308, Kluwer 2001.
6. I. De Falco, R. Del Balio, E. Tarantino, and R. Vaccaro. Improving Search by
Incorporating Evolution Principles in Parallel Tabu Search. In Proc. of the first
IEEE Conference on Evolutionary Computation- CEC’94, volume 1, pages 823–
828, June 1994.
7. T. G. Crainic, M. Toulouse, and M. Gendreau. Towards a Taxonomy of Parallel
Tabu Search Heuristics. INFORMS Journal of Computing, 9(1):61–72, 1997.
8. Bruno-Laurent Garica, Jean-Yves Potvin, and Jean-Marc Rousseau. A Parallel
Implementation of the Tabu Search Heuristic for Vehicle Routing Problems with
Time Window Constraints. Computers & Operations Research, 21(9):1025–1033,
November 1994.
9. M. Malek, M. Guruswamy, M. Pandya, and H. Owens. Serial and parallel Simulated
Annealing and Tabu Search algorithms for the Traveling Salesman Problem. Annals
of Ops. Res., 21:59–84, 1989.
10. E. Taillard. Parallel Iterative Search Methods for the Vehicle Routing Problem.
Networks, 23:661–673, 1993.
11. J. Chakrapani and J. Skorin-Kapov. Massively Parallel Tabu Search for the
Quadratic Assignment Problem. Annals of Operations Research, 41:327–341, 1993.
12. E. Taillard. Robust Tabu Search for the Quadratic Assignment Problem. Parallel
Computing, 17:443–455, 1991.
13. Sadiq M. Sait and Habib Youssef. VLSI Physical Design Automation: Theory and
Practice. World Scientific, Singapore, 2001.
14. Ronald R. Yager. On Ordered Weighted Averaging Aggregation Operators in Mul-
ticriteria Decision Making. IEEE Transaction on Systems, MAN, and Cybernetics,
18(1), January 1988.
15. M. Toulouse, T. G. Crainic, and M. Gendreau. Issues in Designing Parallel and Dis-
tributed Search Algorithms for Discrete Optimization Problems. Publication CRT-
96-36, Centre de recherche sur les transports, Université de Montréal, Montréal,
Canada, 1996.
16. Erick Cant-Paz. A Survey of Parallel Genetic Algorithms. Calculateurs Parallles,
Reseaux et Systems Repartis, 1998.
A Coupled Gradient Network Approach for the
Multi-machine Earliness and Tardiness
Scheduling Problem
1 Introduction
Although in its earliest version the earliness and tardiness (ET) problem was
called the minimum weighted absolute deviation problem, since about 1990 it
has been commonly denominated the ET problem [1]. Simply, the problem is
to schedule N jobs on a single machine to minimize the sum of the weighted
differences between job completion times and due dates. Interestingly, objective
of the ET problem fits perfectly to Just In Time (JIT) production control policy
where an early or a late delivery of an order causes an increase in the production
costs. In general, the early cost can be regarded as a holding cost for finished
goods, deterioration of perishable goods and opportunity costs. The tardy cost
can be considered as the backlogging cost that includes performance penalties,
lost sales and lost goodwill. In other words, the total tardiness criterion measures
the conformance to due dates but ignores the consequences of jobs completing
early, and penalizes only the jobs that finish late. With the growing interest in
JIT scheduling, jobs that complete before their due dates are also penalized.
In the literature, much effort has been devoted to earliness and tardiness
scheduling models. For a detailed survey of the earlier applications see [2] and
[3]. Although the single machine scheduling problems with earliness and tar-
diness penalties have been studied extensively, there are only a few published
articles addressing the problem of scheduling jobs on multiple machines. [4], [5]
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 596–605, 2005.
c Springer-Verlag Berlin Heidelberg 2005
A Coupled Gradient Network Approach 597
and [6] are among the first researchers interested in the problem of scheduling
N jobs on M identical parallel machines with the objective of minimizing the
total penalty costs for earliness and tardiness. In [7], the problem of scheduling
N jobs with sequence dependent setup times on identical parallel machines to
minimize the sum of weighted earliness and tardiness is studied and a heuristic
algorithm is proposed to solve it. For the same objective, two genetic algorithm
approaches to the parallel machine scheduling problem including sequence de-
pendent setup times are presented [8], and in [9] a compact mixed integer formu-
lation for scheduling jobs on uniform parallel machines is proposed and different
solution approaches to solve small sized problems are also presented. In another
study [10], simulated annealing to the sequence dependent setup time schedul-
ing problem is employed to obtain near optimal solutions. An exact procedure
[11] is presented for scheduling N jobs on non identical machines to minimize
the sum of earliness and tardiness penalties. The performance of two meta-
heuristic approaches proposed to solve the identical parallel machine scheduling
problem with sequence dependent setup times are compared [12]. Following this
work, a dynamic programming algorithm and two heuristics to minimize the
total weighted earliness and tardiness for identical parallel machine scheduling
problem are proposed [13].
The major distinction of our approach is that it utilizes the neural networks
to tackle with the problem of scheduling a set of independent jobs including
sequence dependent setup times, on non-identical multiple machines to minimize
the total weighted earliness and tardiness. Thus, this study will be the first
attempt to solve the early/tardy problems in the area of production scheduling
using neural networks. It involves two stages, which may be followed sequentially:
(1) Mathematical model presentation stage, (2) Gradient network design stage
(a) architecture and (b) energy function construction.
2 Problem Formulation
This paper attempts to deal with the problem of job scheduling on non-identical
multiple machines to minimize the total penalty costs for earliness and tardiness
with sequence dependent setup times. The problem includes non-common due
dates and non-uniform cost penalties. We are given N independent jobs J =
J1 , , JN to be scheduled on M non-identical machines. Let Xi be the completion
time of job i. Job i is early if Xi < di ; it is tardy if Xi > di ; and it is on time
if Xi = di . The problem of scheduling N jobs with non common due dates,
varying processing times and sequence dependent setup times on M machines
is NP-hard. Therefore heuristic approaches have been developed to obtain good
near optimal solutions.
In this study, we use the notation of N/M/ET with sequence-dependent
setup times to designate this problem. The notation for the problem is as follows:
β: a large number
di : due date for job i
598 D.E. Akyol and G.M. Bayhan
Objective function:
N
min (ei Ei + ti Ti )
i=1
Subject to:
X i − T i + Ei = di i = 1, ..., N. (1)
M
Zim = 1 i = 1, ..., N. (2)
m=1
N
Yijm ≤ Zim j = i, i = 1, ..., N, m = 1, ..., M. (3)
j=1
N
Yijm = Zjm i = j, j = 1, ...N, m = 1, ..., M. (4)
i=0
term by term. The energy function for this network is constructed using a penalty
function
%N approach. That is the energy function E consists of the objective func-
tion i=1 (ei Ei + ti Ti ) plus a penalty function to enforce the constraints. For
our problem, the penalty function P (E, T, X, Y, Y O, Z) will include the follow-
ing eight penalty terms : P 1, P 2, P 3, P 4, P 5, P 6, P 7 and P 8. Here, the first term
P 1 adds a positive penalty if the solution does not satisfy any of the equality
constraints below.
Xi − Ti + Ei = di i = 1, ..., N
%N
In this case, P 1 will take the following form, P 1 = i=1 (Xi − Ti + Ei − di )2 .
Therefore, this term yields zero when these equality constraints are satisfied.
The second term P 2 adds a%positive penalty if the solution does not satisfy any
M
of the equality constraints m=1 Zim = 1 i = 1, ...N
In accordance with this constraint, P 2 will take the following form,
N M
P2 = ( Zim − 1)2
i=1 m=1
The third term P 3 adds a positive penalty if the solution does not satisfy any
of the inequality constraints
N
Yijm ≤ Zim j = i, i = 1, ..., N, m = 1, ..., M
j=1
%N %M %N
P3 can be defined as; P 3 = i=1 m=1 ν( j=1,i=j Yijm − Zim ) Here, ν
represents the penalty function, where υ(ε) = ε2 for all ε > 0 and υ(ε) = 0 for
all ε ≤ 0.
%NThe fourth term P4 adds a positive penalty if any of the equality constraints
i=0 Yijm = Zjm i = j, j = 1, ..., N, m = 1, ..., M is violated.
%N %M %N
P4 will take the following form; P 4 = j=1 m=1 ( i=0,i=j Yijm − Zjm )2
The fifth term P5 adds a positive penalty if the solution does not satisfy any
of the inequality constraints Xi − Xj − βYjim ≥ Pim + sji − β j = i, i =
1, ...N, j = 0, 1, ..., N, m = 1, ..., M
P5 may be written as
%N %N %M
i=1,i=j j=0 m=1 ν(Xj − Xi + β(Yjim − 1) + Pim + sji )
%N %M
P7 may be written as: i=1 m=1 Zim (Zim − 1) and P8 may be written as:
%N %N %M
i=0 j=1 m=1 Yijm (1 − Yijm )
N
M
N
N
N
M
( Yijm − Zjm )2 + ν(Xj − Xi + β(Yjim − 1) + Pim + sji )+
j=1 m=1 i=0,i=j i=1 j=0 m=1
M N
N
M
N
N
M
( Y0im − 1)2 + Zim (1 − Zim ) + Yijm (1 − Yijm )
m=1 i=1 i=1 m=1 i=0 j=1 m=1
So, the energy function for the coupled gradient network can be defined as
N
N
N M
A (ei Ei + ti Ti ) + B (Xi − Ti + Ei − di )2 + C ( Zim − 1)2 +
i=1 i=1 i=1 m=1
N
M
N
N
M
N
D ν( Yijm − Zim ) + E ( Yijm − Zjm )2 +
i=1 m=1 j=1,i=j j=1 m=1 i=0,i=j
N
N
M
M N
F ν(Xj − Xi + β(Yjim − 1) + Pim + sji ) + G ( Y0im − 1)2 +
i=1 j=0 m=1;i=j m=1 i=1
N
M
N
N
M
H Zim (1 − Zim ) + I Yijm (1 − Yijm ) (7)
i=1 m=1 i=0 j=1 m=1
N M
N
M
N
C ( V Zim − 1)2 + D ν( V Yijm − V Zim )+
i=1 m=1 i=1 m=1 j=1,i=j
N
M
N
N
N
M
E ( V Yijm−V Zjm )2 +F ν(V Xj −V Xi +β(V Yjim−1)+
j=1 m=1 i=0,i=j i=1 j=0 m=1;i=j
602 D.E. Akyol and G.M. Bayhan
M N
Pim + sji ) + G ( V Y0im − 1)2 (8)
m=1 i=1
The dynamics for the coupled gradient network are obtained by gradient descent
on the energy function. The equations of motion are obtained as follows
dU Ei ∂E
= −ηE = −ηE [Aei + 2B(V Ei − V Xi − V Ti − di )] (9)
dt ∂V Ei
dU Ti ∂E
= −ηT = −ηT [Ati + 2B(V Ti + di − V Ei − V Xi )] (10)
dt ∂V Ti
dU Xi ∂E
= −ηx = (11)
dt ∂V Xi
⎡ ⎤
2B(V Xi + V Ei − di − V Ti )+
%N %M
−ηX ⎣ F j=0 m=1 −ν
(V Xj − V Xi + β(V Yjim − 1) + Sji + Pim )+ ⎦
%N %M
F i=1 m=1 ν
(V Xj − V Xi + β(V Yjim − 1) + Sji + Pim )
dU Zim ∂E
= −ηz = (12)
dt ∂V Zim
= %M %N >
dU Yijm ∂E
= −ηY = (13)
dt ∂V Yijm
%N %N
Dν
( j=1,i=j V Yijm − V Zim ) + 2E( i=0,i=j V Yijm − V Zjm )
−ηY
+βν
((β(V Yijm − 1) + V Xi − V Xj + Sij + Pjm ))
dU Y0jm ∂E
= −ηY 0 (14)
dt ∂V Y0jm
%N
2E[(V Y0jm ) + i=1,i=j V Yijm − V Zjm ]
= −ηY 0
+βν
[β(V Y0jm − 1) − V Xj + S0j + Pjm ]
∂E
U Eik = U Eik−1 − ηE (15)
∂V Ei
∂E
k
U Ti = U Ti k−1
− ηT (16)
∂V Ti
∂E
U Xik = U Xik−1 − ηX (17)
∂V Xi
∂E
U Yijm = U Yijm − ηY
k k−1
(18)
∂V Yijm
∂E
k
U Y0jm k−1
= U Y0jm − ηY 0 (19)
∂V Y0jm
∂E
U Zimk
= U Zimk−1
− ηZ (20)
∂V Zim
In order to simulate the coupled gradient networks for our ET problem, some
parameters should be determined by trial and error. These are the penalty coef-
ficients A, B, C, D, E, F and G; the activation function slopes λZ , λY and λY O ;
the step sizes ηE , ηT , ηX , ηZ , ηY , ηY O , and initial conditions for the input and
output variables. So, we should assign initial values for U Ei0 , U Ti0 , U Xi0 , U Zim 0
,
0 0 0 0 0 0
U Yijm , V Ei , V Ti , V Xi , V Zim , V Yijm for all i = 1, 2, ..., N ; j = 1, 2, ..., N ;
0 0
m = 1, 2, ..., M, also for U Y0jm and V Y0jm for all j = 1, 2, ...N ; m = 1, 2, ....M .
Because there is no theoretically established method for choosing the values
of the penalty coefficients for an arbitrary optimization problem, the appropriate
values for these coefficients can be determined by empirically running simulations
and observing the optimality and/or feasibility of the resulting equilibrium points
of the system [17]. The network can be initialized to small random values, and
from its initialized state synchronous updating of the network will then allow a
minimum energy state to be attained. The binary constraints Yijm and Zim ∈ 0, 1
can be satisfied by increasing the activation slopes. In order to ensure smooth
convergence, the selection of step size must be done carefully.
The dynamics of the coupled gradient network will converge to local min-
ima of the energy function E. Since the energy function includes seven terms,
each of which is competing to be minimized, there are many local minima and a
tradeoff exists be-tween the terms to be minimized. An infeasible solution may
be obtained when at least one of the constraint penalty terms is non-zero. In
this case, the objective function term will generally be quite small but the so-
lution will not be feasible. Alternatively, even if all constraints are satisfied, a
local minimum which causes a feasible solution but not good may be encoun-
tered. In order to satisfy each penalty term, its associated penalty parameter can
604 D.E. Akyol and G.M. Bayhan
be increased. But this causes an increase in other penalty terms and a trade-
off occurs. The optimal values of the penalty parameters should be found that
result a feasible and a good solution which minimizes the objective function [18].
4 Conclusion
With the growing interest in JIT manufacturing, it is recognized that early and
tardy jobs incur costs. Therefore, both earliness and tardiness minimization must
be considered in the objective of a schedule. Although a large body of literature
exists for solving single machine scheduling problems involving earliness and
tardiness penalties, there are few papers aim to minimize the sum of weighted
earliness and tardiness, and dealing with non-identical multi machine scheduling
problems involving sequence dependent setup times and distinct due dates. To
the best of our knowledge, there is no previously published article that tried
to solve this NP-hard problem using neural networks. So, we believe that this
attempt to solve the non-identical multi machine scheduling problem including
sequence dependent setups will make a contribution to the literature.
In this paper, we tried to describe the general methodology of constructing
the coupled network consisting of six recurrent networks, and explained how to
formulate our constrained problem as an unconstrained minimization problem.
Then, equations of motion are given. The steps of the solution procedure and
parameter selection process are explained. The future directions for this study
are to run simulations to find feasible and good solutions, to test the performance
of the proposed method on different size of scheduling models and to compare the
results with those of a standard linear programming (LP) solver. Other future
directions are to improve the performance of the proposed method by including
time varying penalty coefficients, in order to overcome the tradeoff problem.
References
1. Ahmed, M.U., Sundararaghavan, P.S.: Minimizing the weighted sum of late and
early completion penalties in a single machine. IIE Transactions, 22 (1990) 288-290
2. Rachavachari, M.: Scheduling problems with non-regular penalty functions - a re-
view. Opsearch. 25 (1988) 144-164
3. Baker, K.R.., Scudder, G.D.: Sequencing with earliness and tardiness penalties: a
review. Operations Research. 38 (1990) 22-36
4. Arkin, E., Roundy, R.O.: Weighted-tardiness scheduling on parallel machines with
proportional weights. Operations Research. 39 (1991) 64-81
5. De, P., Ghosh, J.B., Wells, C.E.: Due dates and early/tardy scheduling on identical
parallel machines. Naval Research Logistics. 41 (1994) 17-32
6. Sundararaghavan, P., Ahmed, M.U.: Minimizing the sum of absolute lateness in
single-machine and multimachine scheduling. Naval Research Logistics Quarterly.
31 (1984) 25-33
7. Zhu, Z., Heady, R.: Minimizing the Sum of Job Earliness and Tardiness in a Mul-
timachine System. International Journal of Production Research. 36 (1998) 1619-
1632
A Coupled Gradient Network Approach 605
8. Sivrikaya-Serifoglu, F., Ulusoy, G.: Parallel machine scheduling with earliness and
tardiness penalties. Computers & Operations Research. 26 (1999) 773-787
9. Balakrishan, N., Kanet, J.J., Sridharan, S’. V.: Early/tardy scheduling with se-
quence dependent setups on uniform parallel machines. Computers & Operations
Research. 26 (1999) 127-141
10. Radhakrishnan, S., Ventura, J.A.: Simulated annealing for parallel machine
scheduling with earliness-tardiness penalties and sequence dependent setup times.
International Journal of Operational Research. 8 (2000) 2233-2252
11. Croce, F.D., Trubian, M.: Optimal idle time insertion in early-tardy parallel ma-
chines scheduling with precedence constraints. Production Planning & Control. 13
(2002) 133-142
12. Mendes, A.S., Mller, F.M., Frana, P.M., Moscato, P.: Comparing meta-heuristic ap-
proaches for parallel machine scheduling problems. Production Planning & Control.
13 (2002) 143-154
13. Sun, H., Wang, G.: Parallel machine earliness and tardiness scheduling with pro-
portional weights. Computers & Operations Research. 30 (2003) 801-808
14. Zhu, Z., Heady, R.B.: Minimizing the sum of earliness/tardiness in multi-machine
scheduling: a mixed integer programming appraoch. Computers & Industrial En-
gineering. 38 (2000) 297-305
15. Hopfield, J.: Neurons with graded response have collective computational prop-
erties like those of two-state neurons. Proceedings of the National Academy of
Sciences of the USA. 81 (1984) 3088-3092
16. Hopfield, J., Tank, T.W.: Neural computation of decisions in optimization prob-
lems. Biological Cybernetics. 52 (1985) 141-152
17. Watta, P.B.: A coupled gradient network approach for static and temporal mixed-
integer optimization. IEEE Transactions on Neural Networks, 7 (1996) 578-593
18. Smith, K.: Neural Networks for Combinatorial Optimization: A Review of More
Than a Decade of Research. Informs Journal on Computing. 11 (1999) 15-34
An Analytic Model for Correlated Traffics in
Computer-Communication Networks
1 Introduction
Queueing theory is a good tool for measuring the performance of computer-
communication networks. Researchers have considered Poisson process to be an
proper representation for network traffic in real systems, which is based upon
the independence assumption in the traffics and made the computation involved
substantially simple. But as the long-range dependency(LRD) and self-similar
properties seem to be adequate to model the traffic characteristics in many recent
literatures, the independency assumptions in the traffic should be doubted[1]. As
an example, it is known that the distribution of packet interarrivals clearly differs
from exponential, especially in the local area and wide area network traffic[2]. In
addition, the behavior of a time-dependent process showed statistically signifi-
cant correlations across large time scales(LRD). And recent studies on networks
empirically observed that aggregate packet flows were statistically self-similar
in nature, i.e., the statistical properties of the aggregate network traffic remain
the same over an extremely wide rage of time scales or over all time scales[1].
From that point of time, many researchers began to study how they could repre-
sent the real traffic of computer communication systems. But the description of
the real traffic by means of LRD could not quantify the parameters definitively,
but estimate only, and even worse, the estimated parameters are often known
to produce conflicting results [1]. From this point of view, it is required to in-
troduce other random processes which can represent the autocorrelation char-
acteristics and are mathematically manageable as well. Some arrival processes
such as MMPP(Markov modulated Poisson process) and Markovian Arrival pro-
cess(MAP) appear to play an important role to model the real network traffic
because they have Markovian property and correlations (MAP were introduced
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 606–614, 2005.
c Springer-Verlag Berlin Heidelberg 2005
An Analytic Model for Correlated Traffics in Computer-Communication 607
first by [3] and [4]). But the analyses of these processes often lead to matrix-
geometric forms and it was difficult to derive the parameters needed from the
real traffic. Another correlated process with Markovian property is Markov re-
newal process(MR). [5] showed that the traffics in a queue with instantaneous
Bernoulli feedback, and Palm’s overflow traffic are Markov renewal processes.
Markov renewal process(MRP) is a quite general random process which has
many well known processes such as Poisson process, Markov process, and renewal
process as special cases. It has correlation in itself so we can use MRP as the
correlated arrival process to a queueing system. When we regard a queue of
which the arrival stream is correlated as an independent GI/G/1 system, we
cannot take the effect of correlations embedded in the traffics into consideration
and so may seriously under-estimate the performance measures of the systems
[6][7]. [6] obtained the expected number of customers, mean waiting time and
sojourn time at arrival epoch for the model having MR arrival and exponential
service. [8] obtained the distribution of the number of customers at arrival epoch
and lag-r correlations of arrival intervals and showed the effect of correlation on
the number of customers in the steady state. [9] studied the effect that the
transition matrix has on the waiting time of nth customer as well as on the
stationary waiting time. He extended the results of [7] by taking general service
times, but only examined the relations from the stochastic ordering point of view.
Besides, [10] studied the correlation’s effect on the system performances using
simulations. [11], [12] and [13] studied the queueing systems where interarrival
times and service times are correlated.
In this study, we analyze the performances of a single server queueing system
which has a general service time distribution and a Markov renewal process as its
arrival process. We obtain the probability distribution and the expected number
of customers at arbitrary time using supplementary variable method. And from
this, using Little’s theorem, we obtain the expected waiting time. These results
could shed light on the better estimation of the performance measures of the
computer communication networks whose internal traffic is non-renewal which
is more common in the real systems.
p11 F11 (x) p12 F12 (x)
A(x) = [Aij ] = ,
p21 F21 (x) p22 F22 (x)
608 S.-Y. Lim and S. Hur
where Fij (x) is the distribution function of the inter-arrival times given that the
previous arrival is of type i and the next is of type j. Especially, we assume that
pij = p if i = j and pij = 1 − p if i = j, and Fij (x) = Fj (x) = 1 − e−λj x for
simplicity. This can simplify greatly our derivation without loss of any general-
ity because it still contain the correlated nature in itself. Even though the MRP
given above is too simple to represent the real life telecommunication traffic, we
adopt it to focus on the effect of correlation of the arrival process on the system
performance. One can extend this form of MRP into which has more states and
general type of distribution function by following similar steps described below.
By chasing the probability flows during dt, we can obtain the following equa-
tions:
d
− P1 (x; 1, 2) = −λ2 P2 (x; 1, 2) + (1 − p)λ1 P0 (; 1, 1)s(x)
dx
+ (1 − p)λ1 P0 (; 2, 1)s(x) + P2 (0; 1, 2)s(x), (8)
d
− P1 (x; 2, 1) = −λ1 P1 (x; 2, 1) + (1 − p)λ2 P0 (; 2, 2)s(x)
dx
+ (1 − p)λ2 P0 (; 1, 2)s(x) + P2 (0; 2, 1)s(x), (9)
d
− P1 (x; 2, 2) = −λ2 P2 (x; 2, 2) + pλ2 P0 (; 1, 1)s(x)
dx
+ pλ2 P0 (; 2, 1)s(x) + P2 (0; 2, 2)s(x), (10)
and for n ≥ 2,
d
− Pn (x; 1, 1) = −λ1 Pn (x; 1, 1) + pλ1 Pn−1 (x; 1, 1)
dx
+ pλ1 Pn−1 (x; 2, 1) + Pn+1 (0; 1, 1)s(x), (11)
d
− Pn (x; 1, 2) = −λ2 Pn (x; 1, 2) + (1 − p)λ1 Pn−1 (x; 1, 1)
dx
+ (1 − p)λ1 Pn−1 (x; 2, 1) + Pn+1 (0; 1, 2)s(x), (12)
d
− Pn (x; 2, 1) = −λ1 Pn (x; 2, 1) + (1 − p)λ2 Pn−1 (x; 2, 2)
dx
+ (1 − p)λ2 Pn−1 (x; 1, 2) + Pn+1 (0; 2, 1)s(x), (13)
d
− Pn (x; 2, 2) = −λ2 Pn (x; 2, 2) + pλ2 Pn−1 (x; 2, 2)
dx
+ pλ2 Pn−1 (x; 2, 1) + Pn+1 (0; 2, 2)s(x) . (14)
∗ % ∞ ∗
We define % the generating functions: P (θ, z; i, j) = n=1 P n (θ; i, j)z n and
∞ n
P (0, z; i, j) = n=1 Pn (0; i, j)z .
∗
(θ − λ1 )P (θ, z; 2, 1)
S ∗ (θ) ∗ ∗
= (1 − )P (0, z; 2, 1) − (1 − p)λ2 z(P (θ, z; 1, 2) + P (θ, z; 2, 2))
z
− (1 − p)λ2 zS ∗ (θ)(P0 (; 1, 2) + P0 (; 2, 2)) + λ1 S ∗ (θ)P0 (; 2, 1), (16)
610 S.-Y. Lim and S. Hur
∗
(θ − λ2 )P (θ, z; 1, 2)
S ∗ (θ) ∗ ∗
= (1 − )P (0, z; 1, 2) − (1 − p)λ1 z(P (θ, z; 1, 1) + P (θ, z; 2, 1))
z
− (1 − p)λ1 zS ∗ (θ)(P0 (; 1, 1) + P0 (; 2, 1)) + λ2 S ∗ (θ)P0 (; 1, 2), (17)
∗
(θ − λ2 + pλ2 z)P (θ, z; 2, 2)
s∗ (θ) ∗
= (1 − )P (0, z; 2, 2) − pλ2 zP (θ, z; 1, 2)
z
− λ2 zS ∗ (θ)P0 (; 1, 2) + λ2 S ∗ (θ)(1 − zp)P0 (; 2, 2) . (18)
Let us denote
∗ ∗ ∗
P (θ, z) = P (θ, z; 1, 1) + P (θ, z; 2, 1),
∗ ∗ ∗
Q (θ, z) = P (θ, z; 1, 2) + P (θ, z; 2, 2),
P (0, z) = P (0, z; 1, 1) + P (0, z; 2, 1),
Q(0, z) = P (0, z; 1, 2) + P (0, z; 2, 2),
P0 = P0 (; 1, 1) + P0 (; 2, 1),
Q0 = P0 (; 1, 2) + P0 (; 2, 2) .
∗
(θ − pλ2 + pλ2 z)Q (θ, z)
S ∗ (θ)
= (1 − )Q(0, z) + pλ2 S ∗ (θ)(1 − z)Q0
z
∗ ∗
+ (1 − p)(λ2 Q (θ, z) − λ1 zP (θ, z))
+ (1 − p)S ∗ (θ)(λ2 Q0 − λ1 zP0 ) . (20)
By plugging θ = pλ1 − pλ1 z and θ = pλ2 − pλ2 z into equations (19) and (20)
respectively, and letting θ = 0, we can obtain the following equations (21), (22).
∗ z(S ∗ (pλ1 − pλ1 z) − 1){pλ1 (1 − z)P0 + (1 − p)λ1 P0 − (1 − p)λ2 zQ0 }
P (0, z) =
−pλ1 (1 − z)(S ∗ (pλ1 − pλ1 z) − z)
∗ ∗
(z − 1)(1 − p){λ1 P (pλ1 − pλ1 z, z) − λ2 zQ (pλ1 − pλ1 z, z)}
+
−pλ1 (1 − z)(S ∗ (pλ1 − pλ1 z) − z)
∗ ∗
(z − S ∗ (pλ1 − pλ1 z))(1 − p){λ1 P (0, z) − λ2 zQ (0, z)}
− , (21)
−pλ1 (1 − z)(S ∗ (pλ1 − pλ1 z) − z)
An Analytic Model for Correlated Traffics in Computer-Communication 611
It can be shown that the two-dimensional process {(N (t), zn (t)); t ≥ 0} is re-
∗ ∗
versible and so λ1 P (0, z) = λ2 Q (0, z) and λ1 P0 = λ2 Q0 . Using these relations,
we rearrange the equations (21), (22).
∗ 2λ1 λ2 E(S) λ2
P (0, 1) = , (25)
λ1 + λ2 λ1 + λ2
∗ 2λ1 λ2 E(S) λ1
Q (0, 1) = , (26)
λ1 + λ2 λ1 + λ2
λ1 + λ2 − 2λ1 λ2 E(S) λ2
P0 = , (27)
λ1 + λ2 λ1 + λ2
λ1 + λ2 − 2λ1 λ2 E(S) λ1
Q0 = . (28)
λ1 + λ2 λ1 + λ2
By differentiating the equations (23), (24) and plugging z = 1 in equations
(19), (20), the expected number of customer in systems at arbitrary time is given
by
a2 E(S 2 ) ρ 1 (λ1 − λ2 )2
E(N ) = +ρ+ , (29)
2(1 − ρ) 2(1 − ρ) 1 − p (λ1 + λ2 )2
612 S.-Y. Lim and S. Hur
where a = 2λ1 λ2 /(λ1 +λ2 ), ρ = aE(S). In [7], they provide the expected number
of customers in system at arrival epochs and their result, however, contains an
unknown value P0 , which is the probability that the arriving customer sees the
system empty. In this study, we derived the expected number of customers at
arbitrary times in the equation (30), which is more general with no unknown
value. In addition, [7] and [9] showed that the system size grows infinity as
p goes to 1 but failed to obtain an explicit relationship between the system
performance and the parameters like p, λ1 , and λ2 , while we do in this paper.
By Little’s theorem, the expected waiting time is given by
From the above result, we can see the monotone relations between the tran-
sition probability, p, of states and the expected waiting time.
4 Experiment
We compare our results with simulation and the GI/G/1 system. [15] obtained
the expected waiting time of GI/G/1 systems which is given by
Fig(1). shows a very close agreement in the mean waiting times between our
analytic calculation and the simulation. For values of p below 0.7 the errors
are within 5%. The discrepancy becomes larger as p becomes bigger because of
the computational overflows but the error still lies within 10% when p = 0.9.
This validates our analytic formula derived in the equation (30). Also, it shows
that if one regards a queue with correlated arrivals as if the arrivals are renewal
then it might lead a serious under-estimation in the performance measures. As p
goes to 1, which implies higher correlation, the under-estimation errors become
drastically increased, as one can see in the Fig(1).
5 Conclusion
In this paper, we consider the queue with a Markov renewal arrival process and
general service time distribution. Using supplementary variable method, we de-
rive the probability distribution of the number of customers at arbitrary time and
the performance measures like the expected number of customers and waiting
time. We showed, by numerical experiments, that our analytic expression, which
solves the incomplete results in the previous literatures, is valid. As pointed out
in many previous papers, it might be quite misleading if one assumes the packet
interarrival times are iid in the computer communication network and the per-
formance measures could be highly underestimated if they are correlated, which
is very common in the real system. Therefore, if one can model a traffic as an
MRP then more accurate performance estimation could be possible. Extension
to the more generalized MRP case than given in this paper should be investi-
gated and the way to represent a real traffics as an MRP could be considered
for further research.
References
[1] Karagiannis, T., Molle, M., Faloutsos, M.: Long-Range Dependence:Ten Years of
Internet Traffic Modeling. IEEE Internet Computing (2004) 2–9
[2] Paxon, V., Floyd, S.: Wide Area Traffic:The Failure of Poisson Modeling.
IEEE/ACM Transactions on Networking 3(3) (1995) 226–244
[3] Saito, H.: The Departure Process of an N/G/1 queue. Performance Evaluation 11
(1990) 241–251
[4] Lucantoni, D.M.: New Results on the Single Server Queue with a Batch Markovian
Arrivals. Commnu. Statist.- Stochastic Models 7(1) (1991) 1–46
[5] Disney, R.L., Kiessler, P.C.: Traffic Processes in Queueing Networks - A Markov
Renewal Approach. The Johns Hopkins University Press.(1987)
[6] Patuwo, B.E.: The Effect of Dependency in the Markov Renewal Arrival Process
on the Various Performance Measures of Exponential Server Queue. Ph.D. thesis
Virginia Polytechnic Institute and State University (1989)
[7] Szekli, R., Disney, R.L., Hur, S.: MR/GI/1 queues with positively correlated ar-
rival stream. Journal of Applied Probability 31 (1994) 497–514
[8] Hur, S.: A note on varying the number of states in the arrival process of MR/GI/1
queue. Computers and OR 24 (1997) 1113–1118
614 S.-Y. Lim and S. Hur
[9] Bäuerle, N.: Monotonicity Results for MR/G/1 Queues. J.Appl.Prob. 34 (1997)
514–524
[10] Livny, M., Melamed, B., Tsiolis, A.K.: The Impact of Autocorrelation on Queueing
Systems. Management Science 39(3) (1993) 322-339
[11] Chao, X.: Monotone effect of dependency between interarrival and service time in
a simple queueing system. Operations Research Letters 17 (1995) 47–51
[12] Boxma, O.J., Perry, D.: A queueing model with dependence between service and
interarrival times. European Journal of Operational Research 128 (2001) 611–624
[13] Müller, A.: On the waiting times in queues with dependency between interarrival
and service times. Operations Research Letters 26 (2000) 43–47
[14] Çinlar, E.: Introduction to Stochastic processes. Prentice-Hall Inc., Englewood
Cliffs, N.J.(1975)
[15] Marshall, K.T.: Some inequalities in queueing. Opns.Res. 16 (1968) 651–665
Product Mix Decisions in the Process
Industry
1 Introduction
A resin manufacturer in Korea produces technology-intensive, value-added chem-
icals including styrene derivatives, engineering plastics, materials used in elec-
tronic products and special function composite. Although domestic and world-
wide markets have been oversupplied for the past few years, the company has
been prosperous in an extremely competitive environment. Production is mainly
triggered by customer orders and sales volume is heavily dependent on the mar-
keting capability of the company. Marketing division of the company consists
of three domestic and one oversea marketing units. Traditionally, the four units
individually plan their own annual target sales based on past sales and market
forecasts. The planned volume of final products are then integrated and adjusted
by the Strategic Business Unit under the consideration of yearly production ca-
pacity and target profit level set by top management. In the decision making pro-
cess, the company has not used any optimization techniques in determining the
target sales. For this reason, the company has experienced marketing-production
misalignments we elaborate hereafter.
The plant operates a two-stage polymer (resin) production system where the
products of stage 1 are used to produce final products in stage 2. Stage 1, the
This research was supported by Myongji University and IITA of Korea.
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 615–623, 2005.
c Springer-Verlag Berlin Heidelberg 2005
616 S.J. Noh and S.-C. Rim
2 The Models
Model 1: Maximizing Total Profit
In this model we tried to figure out desirable changes in product mix which would
increase the total profit under the constraints of production capacity and current
market demands (Appendix). The objective function we tried to maximize is the
sum of the profits generated by 188 final products, and the constraint set includes
the capacities of polymer powder production lines in the production stage 1.
The constraint set is more complicated than the representation in the appendix
because illustrating some of the details in the production process characteristics
requires expanded mathematical representations, which we have omitted.
We also included in the constraint set the upper and lower bounds on the
sales volume of each product by ±10% from the current level. This is because
sharp changes in sales volume would not be possible in a short period of time.
For example, time and cost are required to increase the sales of the high-profit
products by expanding current market or opening up a new market. Likewise,
decreasing the sales volume of the low-profit products would require the company
to induce customers to gradually migrate from low-profit products to more value-
added ones. Marketing business units in the company agreed that their current
capability could adjust the sales of the products by approximately ±10% from
the current level. Therefore, we employed this number in the constraints set.
We solved the model using spreadsheet user interface [Ragsdale 1995], and
compared the results with the actual production volume of the year 2003. Results
suggested that it would have been beneficial if 54 out of 188 final products had
been produced and sold 10% less, while the rest of the final products had been
produced and sold 10% more. These changes in sales volume would have enabled
the company to earn additional U$ 3.3 million (approximately 3.7% of the total
profit in 2003) even without expanding the capacity of the bottleneck line (Table
1.). Note that this additional profit could be created by merely 1.5% increase
in total production volume. The amount of type B and type C polymers would
have been also increased with the changes in product mix without violating
the capacity constraints for lines 2, 3, and 4. In addition, sensitivity analysis
[Mathur and Solow 1994] listed the final products in the order of their marginal
contributions, which helps the marketing division identify the products that they
should focus on.
Table 1. Slight changes in product mix would help use the bottleneck line more prof-
itably and increase the total profit by 3.3 million dollars
Table 2. Slight changes in product mix would also help reduce the usage of bottleneck
polymer powder while maintaining the level of profit of the year 2003. The saved
capacity, estimated at 3 million dollars, could be assigned to more profitable products
in capacity expansion is too large. For these reasons, we decided to find ways to
better use of the type A polymer powder by changing product mix. Our aim was
to identify final products whose sales volume should be increased or decreased
to a certain extent while maintaining the level of the total profit as that of the
year 2003.
The objective function we tried to minimize is the sum of the type A polymer
powder produced in line 1, and the constraint set includes the capacities of the
lines 2 through 4 in the production stage 1. We also included in the constraint set
the minimum total profit level. Again we assumed that the marketing capability
could change the sales volume of each product by ±10% as in the model 1
(Appendix).
Results from model 2 suggested that, by a slight change in product mix, 3.8%
of the current capacity of line 1 could have been saved, while maintaining the
level of total profit as in 2003. To achieve this, 58 of 188 final products should
have been produced and sold 10% less, while the rest of the products 10% more.
We noticed that this result is very similar to those obtained from Model 1. The
changes in product mix resulted in a slight decrease in the total volume of the
final products. This implies that some capacity of the production stage 2 could
Product Mix Decisions in the Process Industry 619
also have been saved. The estimated worth of the saved capacity in line 1 and
in stage 2 was approximately U$ 3.0 million. Furthermore, the company could
have saved some capacity in the production of type C powder (Table 2.).
Table 3. The capacity of the bottleneck line should be increased by 15% to balance
the production stages 1 and 2. Additional 16 million dollars in the total profit would
be achievable. The rest of the lines in stage 1 turned out to have enough capacities as
of now
keting side claimed that practically it would be very difficult to control the de-
mands in such a make-to-order based market environment. Even so, it was clear
that the recommendations suggested by the models could be highly valuable in
the decision making process if we could address the decision makers’ concerns
successfully. The optimal solutions obtained from the models were considered as
a starting point for reshaping the marketing strategy rather than a final solution
of the product mix problem. We did not even anticipate that the results of the
models could be successfully taken into actions. Fortunately, however, top man-
agement quickly decided to reset the target sales of the year 2004 right after we
presented the models and recommendations. Since then, the company has been
in the process of shifting its target market towards more profitable products.
Technology division of the company is currently in the process of changing the
recipe of final products for more efficient use of bottleneck powder to produce
more value-added products. And some of the lines in stage 2 are being expanded.
The models will then be continuously refined for annual sales planning to cope
with such changes in recipe, production capacity, and the market.
4 Conclusions
We developed three LP models to suggest better product mix policies for a resin
manufacturer with spreadsheet user interface that allowed what-if scenarios to
be easily evaluated and presented. The first two models identify final products
that should have been sold more or less than the current level in order to increase
the total profit without any capacity expansion. The third model assessed addi-
tional capacity of the bottleneck process needed to balance the whole production
process. The models we developed helped the decision makers in many ways. The
results successfully assisted marketing people in reshaping the business strate-
gies towards more profitable target market. Along with this, production side took
steps towards refining the recipe for efficient use of polymer powder. Capacity
expansion of several lines in stage 2 is also under consideration. Most of all,
decision makers realized the power of optimization techniques in systematically
describing the nature of the business and finding out appropriate solutions.
We know that mathematical models are valuable tools to support a wide
range of managerial decision making. In practice, we learned that integrating the
quantitative and simplified solutions into actual decision making process requires
much more effort than needed in constructing and solving the models. Another
valuable lesson taken from the implementation process of the models is the im-
portance of the role of top management in various steps of the decision making
process. Understanding the nature of the problems, setting up ultimate goals to
pursue, checking and expediting the progress of work, and encouraging personnel
to do their best in resolving problems are all must-do steps that the top man-
agement ought to take for successful implementation of the recommendations.
Product Mix Decisions in the Process Industry 621
References
[1] Assad, A., Wasil, E., Lilien, G.: Excellence in Management Science in Practice.
Prentice-Hall, Inc., New Jersey (1992)
[2] Mathur, K., Solow, D.: Management Science. Prentice-Hall, Inc., New Jersey (1994)
[3] Ragsdale, C.: Spreadsheet Modeling and Decision Analysis. Course Technology,
Inc., Cambridge MA (1995)
Model 1
Maximize
bj X j (1)
Subject to
aij Xj = ci (2)
j
ci
≤ T, i = 1, . . . , 6 (3)
i
ki
ci
≤ T, i = 7, . . . , 11 (4)
i
ki
ci
≤ 2T, i = 12, . . . , 19 (5)
i
ki
Model 2
Minimize
aij Xj , i = 1, . . . , 6 (7)
i j
Subject to
aij Xj = ci , i = 7, . . . , 19 (8)
j
ci
≤ T, i = 7, . . . , 11 (9)
i
ki
ci
≤ 2T, i = 12, . . . , 19 (10)
i
ki
bj X j ≥ P (11)
j
The objective function in (7) is to minimize the total volume of the type A
polymer powder grades, 1 through 6, which are produced from the bottleneck line
1. Note that, in (8), we consider only the powder other than the six bottleneck
powder. Constraints (9) represents the capacity limit of line 2 which produces
type B powder, and (10) represents the capacity limits of lines 3 and 4 which
produce type C powder, respectively. Constraint (11) is to secure at least the
current level of total profit.
Model 3
Maximize
bj X j (13)
Subject to
aij Xj = ci (14)
j
Product Mix Decisions in the Process Industry 623
The objective function in (13) is to maximize total annual profit. All the
capacity constraints for the lines in stage 1 were eliminated to allow infinite
capacities so that additional capacities required could be measured. Changes
in the volume of each product are allowed by ±20% from the current level in
(15). Constraint (16) imposes the production capacity limit of the production
stage 2.
On the Optimal Workloads Allocation of an
FMS with Finite In-process Buffers
Soo-Tae Kwon
1 Introduction
The term flexible manufacturing system (FMS) is used to describe a network of
automated workstations linked by a common computer controlled material han-
dling device to transport work pieces from one workstation to another. Unlike a
transfer line where all work pieces follow a sequential route through the system,
an FMS permits work pieces to visit workstations in any arbitrary sequence as
desired. And, FMSs have been introduced in an effort to increase productiv-
ity by reducing inventory and increasing the utilization of machining centers
simultaneously.
Because of high equipment costs involved in FMSs, there is a basic need to
pay attention to the factory design phase during which the main decision on
resources are made. Main topics in the operation and management of the FMS
are well classified as follows:
1) Design problems considering of selection of part families, selection of FMS
production system, selection of material handling system, selection of pal-
lets and fixtures, etc., and
2) Operational problems consisting of planning, grouping, machine loading
and scheduling.
The problem of workload allocation relates quite generally to issues in the
management of FMSs, since there often exists considerable latitude in the allo-
cation of work among groups of flexible machines. Determining the rate which
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 624–631, 2005.
c Springer-Verlag Berlin Heidelberg 2005
On the Optimal Workloads Allocation of an FMS 625
buffers are limited up to IBi and OBi respectively, and the machines perform
in an exponential service time distribution. All the workstations are linked to
an automated storage and retrieval system (AS/RS) by AGVs which consist of
AGV(I) and AGV(O). The capacity of the AS/RS is unlimited, and external
arrivals at the AS/RS follow a Poisson process with rate λ.
The FCFS (first come first served) discipline is adopted here for the services
of AGVs and machines. AGV(I) delivers the input parts from the AS/RS to each
input buffer of workstations, and AGV(O) carries the finished parts away from
each output buffer of workstations to the AS/RS, with corresponding exponential
service time distributions. Specifically, AGV(I) distributes all parts%from the
n
AS/RS to the workstations according to the routing probabilities γi ( i=1 γi =
1) which can be interpreted as the proportion of part dispatching from the
AS/RS to workstation i.
Moreover, any part (material) can be blocked on arrival (delivery) at an input
buffer which is already full with earlier-arrived parts. Such a blocked part will
be recirculated instead of occupying the AGV(I) and waiting in front of the
workstation (block-and-recirculate mechanism). Any finished part can also be
blocked on arrival at an output buffer which is already full with earlier-finished
parts. Such a blocked part will occupy the machine to remain blocked until a
part departure occurs from the output buffer. During such a blocking time, the
machine cannot render service to any other part that might be waiting at its
input buffer (block-and-hold mechanism).
Sung and Kwon(1994) have developed an iterative algorithm to approxi-
mate system performance measures such as system throughput and machine uti-
lization. The approximation procedure decomposes the queueing network into
individual queues with revised arrival and service processes. These individual
queues are then analyzed in isolation. The individual queues are grouped into
two classes. The first class consists of input buffers and machines, and the sec-
ond one consists of output buffers and AGV(O). The first and second classes are
called the first-level queue and the second-level queue, respectively.
The following notations are used throughout this paper (i = 1, · · · , n):
λ external arrival rate at AS/RS
λi arrival rate at each input buffer i in the first-level queue
λ∗i arrival rate at each input buffer i in the second-level queue
μ service rate of AGV
μi service rate of machine i
P (k1 , · · · , kn ) probability that there are ki units at each output buffer i in the
second-level queue with infinite capacity.
P (idle) probability that there is no unit in the second-level queue with
infinite capacity
(k1 , · · · , kn ) probability that there are ki units at each output buffer i in the
second-level queue with finite capacity.
(idle) probability that there is no unit in the second-level queue with
finite capacity
On the Optimal Workloads Allocation of an FMS 627
where,
λ∗iand OBi denote the input rate and the capacity of output buffer i.
And, the throughput function f (λ∗1 , · · · , λ∗n , OB1 , · · · , OBn , μ) is characterized
as follows.
Property 1. In the second-level queue, the throughput is maximized at the bal-
anced input rate.
Proof :
For simplification, the proof will be completed only for the case of 2 output
buffers with one capacity (n=2, and OB1 =OB2 = 1), respectively. The general
case can easily be derived in the similar process.
By the definition of throughput and G,
(1 − ρ)
f (λ∗1 , λ∗2 , OB1 , OB2 , μ) = μ · (1 − )
G
(1 − ρ)
= μ[1 − ]
((1 − ρ)(1 + ρ + ρ2 + 2ρ3 q1 q2 ))
1
= μ[1 − ]
(1 + ρ + ρ2 + 2ρ3 q1 q2 )
Since q1 +q2 = 1 and q1 q2 is maximized at q1 = q2 = 0.5, f (λ∗1 , λ∗2 ,OB1 ,OB2 , μ)
is maximized at the same input rate (λ∗1 = λ∗2 ).
This completes the proof.
In case of Type 3, in order to maximize the system throughput according to
the routing probability, it is necessary to consider the throughputs of the first-
level queues. It is recalled that the first-level queue is composed of finite input
buffer and a single machine. Since arrivals follow a Poisson process with rate λ
at the AS/RS, arrivals at each first-level queue follow a Poisson process with
rate λi (= λ · γi ) due to the property of Poisson decomposition, and the service
times of machines are exponentially distributed.
The throughput of the first-level queue is derived as follows :
λi · μi (λIBi − μIBi )
f (λi , IBi , μi ) = if λi = μi (3)
λIBi +1 − μIBi +1
λi · IBi
if λi = μi
IBi + 1
On the Optimal Workloads Allocation of an FMS 629
where λi and μi denote the Poisson input rate and the exponential service rate,
respectively. And, the throughput f (λi , IBi , μi ) is characterized as follows.
Lemma 2. The throughput of the first-level queue is a monotonically increasing
concave function of input rate, that is, for 0 < c < 1.
cf (λi , IBi , μi ) < f (c · λi , IBi , μi ) < f (λi , IBi , μi ) (4)
The system configuration is composed of n parallel workstations so that the
system throughput is given in the sum of throughputs of the first-level queues.
Thus, in order to determine the routing probabilities maximizing the system
throughput, a mathematical formulation is derived as follows.
Problem P :
%n
maximize i=1 f (λi , IBi , μi )
%n
subject to i=1 γi = 1
0 <= γi <= 1 for all i (5)
The throughput function of the problem P is concave function of input rate by
the result of Lemma 2. Since the objective function is concave and the constraints
form a convex set of decision variable γi , the problem is the convex programming
problem, which is solved by using the Lagrangean method. This leads to the
following property to maximize the system throughput.
Property 2. The system throughput is maximized at the routing probabilities γi
satisfying the relation f (λi , IBi , μi ) = f (λj , IBj , μj ) for all i, j, where f is the
first derivative f with respect to γi .
Proof :
Let xi = λ·γi
μi , then f (λi , IBi , μi ) = μ · (1 − 1−xi
IB +1 ).
1−xi i
And, let f (xi ) = 1 − 1−xi
IB +1 , then the problem P is transformed to prob-
1−xi i
lem PR.
Problem PR :
%n
maximize μi · f (xi )
%ni=1
subject to i=1 i · xi = λ
μ (6)
The formulation of the Lagrangean is then derived as
n
n
L(x1 , · · · , xn , θ) = μi · f (xi ) − θ( μi · xi − λ) (7)
i=1 i=1
The result of parameter set 1 and 2 represent that the throughput is maxi-
mized at the same routing probability(γ1 = γ2 =0.5) when the workstations have
the same buffer capacity (IB1 = IB2 , OB1 = OB2 ) and machine service rate
(μ1 = μ2 ). And, in view of throughput, it is better to allocate the available
spaces to input buffer than output buffer by comparison with results of param-
eter set 1 and 2. From the results of parameter set 3, in order to maximize the
On the Optimal Workloads Allocation of an FMS 631
4 Conclusions
In this paper, a design aspect of a flexible manufacturing system composed of
several parallel workstations each with both input and output buffers where two
AGVs are used for input and output material handling is considered. The optimal
design decision is made on the allocation of workload (routing probability) under
the given performance evaluation model.
Some interesting properties are derived that are useful for characterizing
optimal allocation of workload. The computational results show that the system
throughput is maximized as the routing probability is determined in view of load
balance.
Further research is to consider the optimal buffer allocation problem and also
to extend these concepts to general production systems.
References
1. Calabrese, J.M.: Optimal Workload Allocation in Open Networks of Multiserver
Queues. Management Science, vol. 38, No. 12, (1992) 1792-1802.
2. Dallery, Y. and Stecke, K.E.: On the Optimal Allocation of Servers and Workloads
in Closed Queueing Networks. Operation Research, Vol.38, No. 4, (1990) 694-703.
3. Dowdy, L.W., Eager, D.L., Gordon, K.D. and Saxton, L.V.: Throughput Concavity
and Response Time Convexity. Information Processing Letters, 19, (1984) 209-212.
4. Everett, H.: Generalized Lagrange Multiplier Method for Solving Problems of Op-
timum Allocation of Resources. Operations Research, 11, (1963) 399-417.
5. Ma, J. and Matsui, M.: Performance evaluation of a flexible machining/assembly sys-
tem and routing comparisons. International Journal of Production Research, 40(7),
(2002) 1713-1724.
6. Martin, G.E.: Optimal Design of Production Lines. International Journal of Pro-
duction Research, 32(5), (1994) 989-1000.
7. Ooijen, H.P.G and Bertrand, J.W.M.: The effects a simple arrival rate control policy
on throughput and work-in-process in production systems with workload dependent
processing rates. International Journal of Production Economics, 85, (2003) 61-68.
8. Stecke, K.E. and Morin, T.L.: The Optimality of Balancing Workloads in Certain
Types of Flexible Manufacturing Systems. European Journal of Operational Re-
search, Vol. 20, (1985) 68-82.
9. Sung, C.S. and Kwon, S.T.: Performance Modelling of an FMS with Finite Input
and Output Buffers. International Journal of Production Economics, 37, (1994)
161-175.
10. Vinod, B. and Solberg, J.J.: The Optimal Design of Flexible Manufacturing Sys-
tems. International Journal of Production Research, 23(6), (1985) 1141-1151.
NEOS Server Usage in Wastewater Treatment
Cost Minimization
1 Introduction
Wastewater treatment plants (WWTP’s) are nowadays emerging everywhere as
authorities concerned with environmental issues legislate tighter laws on wa-
ter quality. The high costs associated with the plant installation and operation
require a wise optimization of the process.
A typical WWTP is usually defined by a primary treatment, a secondary
treatment and in some cases a tertiary treatment. The primary treatment is a
physical process and aims to eliminate the gross solids and grease, so avoiding
the blocking up of the secondary treatment. As its cost does not depend too
much on the characteristics of the wastewater, we chose not to include it in
the optimization procedure. The secondary treatment is a biological process and
is the most important treatment in the plant because it eliminates the soluble
pollutants. When the wastewater is very polluted and the secondary treatment
does not provide the demanded quality, a tertiary treatment, usually a chemical
process, can be included.
This paper is part of an ongoing research project in which we are engaged to
optimize the design and the operation of WWTP’s in terms of minimum total
cost (investment and operation costs). The work herein presented focus solely on
the secondary treatment, in particular on an activated sludge system, because
this is the chosen secondary treatment to be used by the four plants that we
propose to analyze - Alijó, Murça, Sabrosa de Aguiar and Sanfins do Douro -
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 632–641, 2005.
c Springer-Verlag Berlin Heidelberg 2005
NEOS Server Usage in Wastewater Treatment Cost Minimization 633
that are located in Trás-os-Montes region. This is a poor country region in the
north of Portugal that produces high quality wines and has, besides domestic
effluents, significant effluent variations in terms of amount of pollution and flow,
during the vintage season. The mentioned system consists of an aeration tank
and a secondary settler. The influent enters the aeration tank where the biological
reactions take place, in order to remove the dissolved carbonaceous matter and
nitrogen. The sludge that leaves this tank enters in the secondary settler to
remove the suspended solids. After this treatment, the treated final effluent leaves
the settling tank and the thickened sludge is recycled to the aeration tank and
part of it is wasted.
The aim of this paper is to determine the optimal design and operation of the
four above mentioned WWTP’s, guaranteeing the water quality with pollution
levels lower than the maxima defined by portuguese laws.
The optimal design and operation consists of finding the optimal aeration
tank volume, sedimentation area and depth of the secondary settler tank, the
air flow needed, to name a few, which yield the lowest total cost of the system.
The mathematical modelling of the system results in a smooth nonconvex
nonlinear constrained optimization problem that is to be solved by NEOS Server
(http://www-neos.mcs.anl.gov/neos/) optimization tools.
To the best of our knowledge, apart the work done by Tyteca et al. [5], that
uses simple models to describe the aeration tank and the secondary settler, no
WWTP real optimization has been published until now. Previous published work
on activated sludge systems using ASM type models [4], [11] and, either the ATV
[1] or the double exponential model [12] for settling tanks, focus on obtaining
the best combination of the state variables testing by simulation two or three
alternative designs and choosing the one with the lowest cost [8], [9], [10], [13].
The simulation is carried out using WEST++ (http://www.hemmis.be), GPS-X
(http://www.hydromantis.com) and DESASS [8].
This paper is organized as follows. In Sect. 2 we present a not too much
technical description of the equations of the mathematical model. Section 3 is
devoted to the listing of some optimization tools in the NEOS Server for use
to the public. Section 4 reports on the numerical experiments done on four real
world problems and Sect. 5 contains the conclusions.
2 Mathematical Modelling
The system under study consists of an aeration tank, where the biological reac-
tions take place, and a secondary settler for the sedimentation of the sludge and
clarification of the effluent. To describe the aeration tank we chose the activated
sludge model n.1, described by Henze et al. [4], which considers both the elimi-
nation of the carbonaceous matter and the removal of the nitrogen compounds.
This model is widely accepted by the scientific community, as it produces good
predictive values by simulations. This means that all state variables keep their
biological interpretation. The tank is considered a completely stirred tank re-
actor (CSTR) in steady state. For the settling tank the ATV design procedure
634 I.A.C.P. Espı́rito-Santo et al.
[1] is used, which is a very simple model but describes the settling process very
well, besides considering also peak flow events.
The problem contains seven sets of constraints. The first set results from mass
balances around the aeration tank using the Peterson matrix of the ASM1 model
[4]. The generic equation for a mass balance around a certain system considering
a CSTR is
Q dξ
(ξin − ξ) + rξ = ,
Va dt
where Q is the flow that enters the tank, Va is the aeration tank volume, ξ and
ξin are the concentrations of the component around which the mass balances
are being made inside the reactor and on entry, respectively. It is convenient
to refer that in a CSTR the concentration of a compound is the same at any
point inside the reactor and at the effluent of that reactor. The reaction term
for the compound in question, rξ , is obtained by the sum of the product of the
stoichiometric coefficients, νξj , with the expression of the process reaction rate,
ρj , of the ASM1 Peterson matrix [4]
rξ = νξj ρj .
j
In steady state, the accumulation term given by dξ dt is zero, because the con-
centration is constant in time. A WWTP in labor for a sufficiently long period
of time without significant variations can be considered at steady state. As our
purpose is to make cost predictions in a long term basis it is reasonable to do so.
The ASM1 model involves 8 processes incorporating 13 different components,
such as the substrate, the bacteria, dissolved oxygen, among others. For the
sake of clearness, we include here the mass balance equation related to one of
the components - the soluble substrate (SS ):
−μH SS SO KOH SNO
+ ηg XBH
YH KS + SS KOH + SO KOH + SO KNO + SNO
XBH SO KOH SNO
+kh + ηh XS
KX XBH + XS KOH + SO KOH + SO KNO + SNO
Q
+ (SSin − SS ) = 0 .
Va
We denote all the soluble components by S? and the particulates by X? . All
the other symbols are stoichiometric or kinetic parameters for the wastewater
considered. (See [4] for details on how to obtain all the other equations.)
The second group of constraints concern the secondary settler and are set
using the ATV procedure design [1]. Traditionally the secondary settler is un-
derestimated when compared with the aeration tank. However, it plays a crucial
role in the activated sludge system. When the wastewater leaves the aeration
tank, where the biological treatment took place, the treated water should be
separated from the biological sludge, otherwise, the chemical oxygen demand
would be higher than it is at the entry of the system. The most common way
NEOS Server Usage in Wastewater Treatment Cost Minimization 635
Qp −1.34
≤ 2400 (Xp DV SI) .
As
The other important group of constraints are a set of linear equalities and
define composite variables. In a real system, some state variables are, most of the
time, not available for evaluation. Thus, readily measured composite variables
are used instead. For example, the chemical oxygen demand (COD) is composed
by soluble and particulate components, that are related by the equation
Similar equations can be defined for the volatile suspended solids (V SS), total
suspended solids (T SS), biochemical oxygen demand (BOD), total nitrogen of
Kjeldahl (T KN ) and total nitrogen (N ).
The system behavior, in terms of concentration and flows, may be predicted
by balances. In order to achieve a consistent system, these balances must be done
around the entire system and not only around each unitary process. They were
done to the suspended matter, dissolved matter and flows and these correspond
to the fourth group of constraints. The equations for particulate compounds
(organic and inorganic) have the following form
V a X?
(1 + r) Qinf X?ent = Qinf X?inf + (1 + r) Qinf X? − (X?r − X?ef )
SRT X?r
−Qinf X?ef
and for the solubles we have
where r is the recycle rate, SRT is the sludge retention time and Q? represents
the volumetric flows. As to the subscripts, inf concerns the influent wastewater,
ent the entry of the aeration tank, r the recycled sludge and ef the treated
effluent.
It is also necessary to add some system variables definitions, in order to
define the system correctly. In this group we include the sludge retention time,
the recycle rate, hydraulic retention time (HRT ), recycle rate in a PWWF event
Q
(rp ), recycle flow rate in a PWWF event (Qrp ) and maximum overflow rate ( Aps ):
Va X
SRT =
Qw Xr
Va
HRT =
Q
Qr
r=
Qinf
0.7 T SS
rp =
T SSmaxp − 0.7 T SS
Qrp = rp Qp
Qp
≤2 .
As
A fixed value for the relation between volatile and total suspended solids was
considered
V SS
= 0.7 .
T SS
All the variables are considered nonnegative, although more restricted bounds
are imposed to some of them due to operational consistencies. For example, the
dissolved oxygen has to be always greater or equal to 2 mg/L. These conditions
define a set of simple bounds on the variables.
Finally, the quality of the effluent has to be imposed. The quality constraints
are usually derived from law restrictions. The most used are related with limits in
the COD, N and T SS at the effluent. In mathematical terms, these constraints
are defined by portuguese laws as CODef ≤ 125, Nef ≤ 15 and T SSef ≤ 35.
The objective cost function used represents the total cost and includes both
investment and operation costs. The operation cost is usually on annual basis,
so it has to be updated to a present value using the adequate economic factors
of conversion. Each term in the objective function is based on the basic model
C = aZ b [5], where a and b are the parameters to be estimated, C is the cost
and Z is the characteristic of the unitary process that most influences the cost.
For example, for the investment cost of the aeration tank, the volume (Va ) and
air flow (GS ) are considered. The parameters a and b are estimated by the least
squares technique, using real data collected from a WWTP building company.
The operation cost of the aeration tank considers the air flow, and the investment
NEOS Server Usage in Wastewater Treatment Cost Minimization 637
and operation costs of the secondary settler depend on the sedimentation area,
As , and the depth, h. Summing up all these terms, we get the following objective
cost function:
1.07
Fobj = 174.2Va1.07 + 12487G0.62
S + 114.8GS + 955.5A0.97
s + 41.3 (As h) . (1)
We do not aim to analyze the performance of the solvers but rather to solve
our design problem which, being a medium-scale problem, turns out to be a
quite difficult one.
4 Computational Results
The problem of the optimal design and operation of the activated sludge system
consists of finding the volume of the aeration tank, the air flow needed for the
aeration tank, the sedimentation area, the secondary settler depth, the recycle
rate, the effluent flow and concentration of total suspended solids, carbonaceous
matter and total nitrogen in the treated water, to name a few, in such a way
that, verifying the aeration tank balances as well as the system balances, satisfy
the composite variables constraints, the secondary settler constraints, the system
variables definition constraints, the quality constraints and the simple bounds on
the variables, and minimize the cost function (1). Our formulated problem has
57 parameters, 82 variables and 64 constraints, where 28 are nonlinear equalities,
35 are linear equalities and there is only one nonlinear inequality. Seventy one
variables are bounded below and eleven are bounded below and above. The
chosen values for the stoichiometric, kinetic and operational parameters that
appear in the mathematical formulation of the problem are the default values
presented in the simulator GPS-X, and they are usually found in real activated
sludge based plants for domestic effluents.
The collected data from the four analyzed small towns are listed in Table 1.
These data consider the population equivalent, the influent flow, the peak flow,
the influent COD, the influent T SS and define average conditions that are cru-
cial for the dimensioning of the plant.
Several experiences were done for the WWTP’s under study, using the avail-
able NEOS Server solvers mentioned in Sect. 3, and considering different values
of COD reduction in the preliminary treatment. This reduction typically varies
from 40 to 70%. Table 2 presents the effect of the primary treatment efficiency
on the cost of the activated sludge system for the WWTP from Alijó. The solver
used was the FILTER. The values of the total cost are in millions of euros. In
the table, we report the number of iterations needed by FILTER to converge to
NEOS Server Usage in Wastewater Treatment Cost Minimization 639
Table 2. Comparison of the results in the WWTP from Alijó considering different
COD reductions in the primary treatment
COD reduction
40% 55% 70%
total cost 11.33 7.62 5.25
iterations 28 20 21
func. eval. 15 11 10
cons. eval. 34 20 21
Table 3. Results for the studied WWTPs for different solvers, considering 70% of
COD reduction in the preliminary treatment
the solution, the number of function evaluations and the number of constraints
evaluations. As shown, the efficiency of a primary treatment is crucial because
the higher is the achieved COD reduction, the lower is the investment and opera-
tion cost of the secondary treatment. We remark that the cost of the preliminary
treatment is also related with its efficiency, although not as dramatic as the cost
of the activated sludge system. Thus, for the remaining experiences we assume
the most favorable situation, i.e., we assume that the preliminary treatment has
an efficiency of 70%.
Table 3 reports on the minimum total cost (in millions of euros), of the four
WWTP’s under study, the number of iterations up to finding a solution and
the number of function and constraints evaluations, using each one of the listed
solvers. The solvers find the solutions using their default settings.
640 I.A.C.P. Espı́rito-Santo et al.
Table 4. Results of the optimal design and operation solution for the studied WWTPs
considering 70% of COD reduction in the preliminary treatment
Some conclusions may be drawn. The solution found by each of the four
solvers is not always the same. We also observe an overall advantage in using
IPOPT optimizer as it converges to a solution with the lowest total cost in all
plants.
Table 4 reports on optimal values of the aeration tank volume, sedimenta-
tion area, settler depth, air flow, chemical oxygen demand at the effluent, total
suspended solids at the effluent and nitrogen at the effluent obtained by IPOPT
optimizer for each plant. We remark that although the achieved values of T SS
correspond to the imposed law limit, the same does not occur with COD and N .
The nitrogen that enters in the system is only the quantity requested to ensure
the growth of the bacteria present in the biological sludge. This means that in
this kind of populations the nitrogen levels are not considered pollutant. As it can
be seen in Table 1, the nitrogen does not appear as an entering parameter. For
that reason, the nitrogen at the effluent never reaches the limit imposed by law.
As to the COD we have a different situation. In the largest WWTP’s (Alijó
and Sanfins) the imposed law limit is not reached because to be able to achieve
the T SS limit, the system is capable of removing more COD than the demanded.
The opposite occurs in the other two plants. As they are very small, the minimum
cost is achieved only when the COD reaches the limit.
5 Conclusions
In this paper we consider the optimal design and operation, in terms of minimum
installation and operation cost, of an activated sludge system in WWTP’s from
the north of Portugal, based on portuguese real data and effluent quality law
limits. Four real WWTP’s were analyzed and the optimization of the problems
was carried out running NEOS Server solvers (FILTER, IPOPT, LOQO and
SNOPT).
From our numerical experiences, we may conclude that the efficiency of the
primary treatment influences directly and in a very expressive way the resulting
cost of the biological treatment. To have a more realistic idea of the best solution,
the whole treatment plant should be considered as future developments.
NEOS Server Usage in Wastewater Treatment Cost Minimization 641
References
1. Ekama, G. A., Barnard, J. L., Günthert, F. W., Krebs, P., McCorquodale, J.
A., Parker, D. S., Wahlberg, E. J.: Secondary Settling tanks: Theory, modelling,
design and operation, Technical Report 6. IAWQ - international association on
water quality (1978)
2. Fletcher, R., Leyffer, S., Toint, P. L.: On the Global Convergence of a Filter-SQP
Algorithm, Technical Report NA/197 (2002)
3. Gill, P. E., Murray, W., Saunders, M. A.: SNOPT: An SQP algorithm for large-
scale constrained optimization. SIAM J. Optim. 12 (2002) 979–1006
4. Henze, M., Grady Jr, C. P. L.,Marais, G. V. R., Matsuo, T.: Activated sludge model
no 1, Technical Report 1. IAWPRC Task Group on Mathematical Modelling for
design and operation of biological wastewater treatment (1986)
5. Tyteca, D., Smeers Y., Nyns, E. J.: Mathematical Modeling and Economic Op-
timization of Wastewater Treatment Plants. CRC Crit. Rev. in Environ. Control
8(1) (1977) 1–89
6. Vanderbei, R. J., Shanno, D. F.: An Interior-Point Algorithm for Nonconvex Non-
linear Programming. Comp. Optim. and Appl. 13(1997) 231–252
7. Wächter, A., Biegler, L. T.: On the Implementation of an Interior-Point Filter
Line-Search Algorithm for Large-Scale Nonlinear Programming. Technical Report
(http://www.research.ibm.com/people/a/andreasw/papers/ipopt.pdf) (2004)
8. Seco, A., Serralta, J., Ferrer, J.: Biological Nutrient Removal Model No.1
(BNRM1). Wat. Sci. Tech. 50(6) (2004) 69–78
9. Otterpohl, R., Rolfs, T., Londong, J.: Optimizing operation of wastewater treat-
ment plants by offline and online computer simulation. Wat. Sci. Tech. 30(2) (1994)
165–174
10. Gillot, S., De Clercq, B., Defour, F., Gernaey, K., Vanrolleghem, P. A.: Optimiza-
tion of Wastewater Treatment Plant Design and Operation using Simulation and
Cost Analysis. In: Proceedings 72nd Annual WEF Conference and Exposition. New
Orleans, USA (1999) 9–13
11. Henze, M., Gujer, W., Mino, T., Matsuo,T., Wentzel, M. C., Marais, G. V. R.,
Van Loosdrecht, M. C. M.: Activated Sludge Model No. 2d, (ASM2d). Wat. Sci.
Tech. 39(1) (1999) 165–182
12. Takács, I., Patry, G. G., Nolasco, D.: A Dynamic Model of the Clarification-
Thickening Process. Wat. Res. 25(10) (1991) 1263–1271
13. Copp, J. B., editor: The Cost Simulation Benchmark - Description and Simulator
Manual. Office for Official Publications of the European Comunities (2002)
Branch and Price Algorithm for Content
Allocation Problem in VOD Network
1 Introduction
Recent advances in optical fiber transmission technology and high speed switch-
ing technology, and development of huge storage systems are expected to al-
low communication networks to provide customers with interactive broadband
multimedia services such as video on demand (VOD), interactive multimedia
entertainment and distance learning. VOD service is the essential part of vari-
ous multimedia applications in the sense that it allows geographically distributed
users to interactively access video files supported from a network of VOD servers.
To provide complete VOD services, the issue of how to allocate (assign) video
files among servers should be resolved first [1]. A variety of different video file
allocation strategies have been studied for various structures of VOD networks
as seen in the literature. Hwang et al. [1] have considered a video file allocation
heuristic algorithm for finding a feasible number of video copies to be stored at
each server to satisfy stochastic demands, while Kwong et al. [2] have consid-
ered not an video file allocation problem but a time-dependent capacity planning
(analyzing) problem for video servers. Barnett et al. [3] have compared a central-
ized approach with a distributed one for video file allocation in a non-hierarchical
VOD network and concluded that the distributed approach may incur less stor-
age cost and also offer considerable advantages in terms of smaller bandwidth
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 642–651, 2005.
c Springer-Verlag Berlin Heidelberg 2005
Branch and Price Algorithm for Content Allocation Problem 643
High-speed network
Switch
Switch Switch
Local Local
switch Local video server switch Local video server
requirement and better service quality. Cidon et al.[4] have developed a dis-
tributed optimal location algorithm in a hierarchical network architecture for
the distribution of multimedia content.
The two-level hierarchical VOD network to be considered in this paper is
represented as a distributed network composed of a mesh type (general type)
of high-speed network in the upper level and many logical star types of local
access networks in the lower level. In the network, deterministic demands are
considered. Moreover, it is assumed that any video files carried at the distributed
video server can be shared among all the local user groups in the network, while
the local video servers can serve their associated local user groups only. Figure 1
illustrates such a VOD network. In such a two-level network, most popular video
files are commonly carried at local video servers so that most local user group’s
requests can be served by the local servers. However, if any video file requested
by a local user group is not carried at a local video server and if the local video
server is filled to his capacity with other video files, then the request for the video
file will be forwarded to the distributed video server in the upper level where
the requested video file is kept in storage. Since the number of users (customers)
who are simultaneously served by a single VOD server is bounded above due to
each VOD processing capacity, the capacity constraint is considered such that
the number of video files to be carried at each single VOD server is limited.
In allocating such video files among the video servers in the proposed VOD
network, this paper considers a cost function composed of storage cost (cost of
storing at hard disk or memory) of video file copies at servers and transmission
cost (charge for communication network service or penalty for any service delay)
of video file copies on each associated distribution link in the network. Trans-
mission cost can be minimized by storing as many video file copies as possible
at the local video servers, while storage cost can be minimized by storing as
644 J. Hong and S. Lim
many video copies as possible at the distributed video servers. Any video file
copy carried at a distributed video server can be shared among all the local user
groups and hence it may be better to carry many video file copies at such a
distributed video server, since storage cost at the distributed video server can
be less expensive due to its economy-of-scale effect. This implies that there is
a trade-off relation between transmission cost and storage cost. Such complex
interrelationship between the two major cost elements, being concerned with re-
viewing a huge number of possible video file allocations, may make it extremely
hard to find the optimal VOD network design which does optimally trade off the
two costs. Therefore, this paper wants to propose a column generation approach
by exploiting some valid inequalities.
2 Problem Modeling
This section introduces some notation and definitions, and then presents an
integer programming formulation of the proposed problem. For the problem
formulation, it is assumed that an associated network layout G = (N, E), a set
of video files to be distributed and their demands from each user group, and a
set of distributed video servers and their associated storage costs for each video
file and their transmission costs on each transmission link are all given. Some
notation and definitions are now introduced to derive the integer programming
formulation.
Undirected and directed links are distinctively denoted by {i, j} and (i, j), re-
spectively. Recalling that λlk corresponds to the expected number of copies of
video file type k to satisfy the demand from local user group l, we assume, for
simplicity, that the data of λlk and ci are given to satisfy the relation λlk < ci
for each l ∈ L, k ∈ K and i ∈ N , where multiple copies of each video file
are allowed to serve simultaneously, and where z is the smallest integer value
Branch and Price Algorithm for Content Allocation Problem 645
greater than or equal to real value z. The proposed problem can be transformed
into a binary integer programming problem which will be treated as the master
p
problem in this paper. Let [a, b] (p = 1, 2, · · · , P ) be the incident vectors of all
the possible storage strategies of a single video file type, say k, where api denotes
the number of video files (copies) of the single type that are allocated at server
i ∈ N in the corresponding column p, and the vector b represents the single
type such that bpk has the value 1 if column p corresponds to video file type
k ∈ K, and 0, otherwise. Each of the vectors represents a strategy for a single
video file type to be assigned at all the servers. By using the incident vectors,
the problem can be formulated into the following binary integer programming
problem, called as Problem MP which will be treated as the master problem for
the proposed problem.
Problem MP:
ZM P = min γ p yp (1)
p
s.t.
api y p ≤ ci , ∀i ∈ N, (2)
p
bpk y p = 1, ∀k ∈ K, (3)
p
3 Solution Approach
3.1 Column Generation Problem
Let ui and vk be the nonnegative dual variables associated with constraints (2)
and (3), respectively. Also, let u∗i and vk∗ be the optimal values of the dual vari-
ables solved from any current Problem LPMP. The column generation problem
for video file type k ∈ K, called Problem SP(k) , can now be derived by use of
the optimal values, vi∗ and vk∗ , of the dual variables [9] and path variables φkil
(representing the flow amount from distributed server i to local server l).
Problem SP(k) :
min (μk βi − u∗i ) xik + μk pil φkil − vk∗ (5)
i∈N i∈M l∈L
s.t.
φkil ≤ xik , ∀i ∈ M, (6)
l∈L
φkil + xlk ≥ λlk , ∀l ∈ L, (7)
i∈M
solutions to constraints (6)-(8) by polytope PSP (k) . Then, some valid inequalities
will be exploited for polytope PSP (k) . Note that polytope PSP (k) is of full
dimensional because the following |N | + |M | |L| + 1 affinely independent integer
solutions are in polytope PSP (k) ;
Now, as a special case of the valid inequality (9), consider the situation where
the cardinality of Q is equal to one as, |Q| = 1. Then, the valid inequality (9)
can be a facet of polytope PSP (k) as proved in Theorem 1.
Theorem
% 1. If set H ⊂ L and i ∈ M satisfy the condition 0 < η < 1, where
λ
h∈H hk + η = mi < ci , then the valid inequality
φkih + (1 − η)(mi − xik ) ≤ λhk (10)
h∈H h∈H
Proof. This can be proved easily by showing that there exist |N |+|M | |L| affinely
independent integer solutions, which satisfy the valid inequality (10) at equality
[9]. See Hong [10] for more details on its proof.
Theorem 3. If the relation λl∗ k > λl∗ k holds , then the valid inequality (12)
will be a facet of polytope PSP (k) ;
xik + xl∗ k ≥ λl∗ k (12)
i∈M
∗
where Hi = {h|φkih > 0, h ∈ L)}. The checking process will stop when any
node i ∈ M satisfying the above conditions is found. Similarly, the separation
procedure can be adapted for inequality (11). See Hong [10] for more details on
the procedure. Note that inequality (12) that satisfies the condition λlk > λlk ,
l ∈ L can be directly added to Problem SP(k) at the initial step of the algorithm.
(3) and with some sufficiently large values pre-assigned to the objective coeffi-
cients γ p so that the initial LPMP can become feasible. After solving the initial
LPMP, the overall solution algorithm proceeds iteratively to generate the most
attractive column (greatest contributing to the objective function) at each it-
eration by solving Problem SP(k) by use of the cutting plane procedure with
all the above derived valid inequalities incorporated and the associated branch-
and-bound procedure. Correspondingly, at each iteration, the overall solution
algorithm solves Problem LPMP with such generated most attractive column
added. This overall process is repeated until Problem LPMP is optimized (in
other words, until no more attractive column is generated from Problem SP(k) ).
If the optimal solution to Problem LPMP is fractional, then a simple branch-
and-bound procedure will be used to determine an integer solution, by using
the objective function value of Problem LPMP as the bound needed at each
branching step of the procedure.
4 Computational Results
This section gives the computational results of numerical examples solved by
the above mentioned overall solution procedure. In this experiment, the CPLEX
callable library is used as an LP solver. All the numerical problems are solved
on a Pentium PC by the proposed overall solution algorithm coded in C lan-
guage. The performance of the proposed overall solution algorithm is evaluated
for its efficiency and effectiveness with randomly generated networks. The dis-
tributed servers in the numerical problem graphs are randomly placed in a 5000-
by-5000 square grid.
Links connecting pairs of servers are placed at probability
−d(i,j)
P (i, j) = A·exp B·C , where d(i, j) represents the distance between servers i
and j, and C represents the maximum possible distance between the two servers
[11]. The parameters A and B have real values defined in the range (0, 1]. It
has been observed in [12] that this link placing method with appropriate values
of parameters A and B can give networks that may resemble real-world net-
works. Accordingly, in our experimental test, A and B are set to values 0.05
and 0.4, respectively, and each distributed server has the minimum degree of 2
and the maximum degree of 4 so that removing any one link out of the network
should not lead to separating the network. The local servers are connected with
one (randomly selected) of the generated distributed servers, but the maximum
number of local servers to be connected with a distributed server is, for mak-
ing them evenly distributed, restricted to |L| / |M |. In this experiment, we
assume that the video demand probabilities follow the Zipf’s distribution [13].
The transmission cost per unit size of every video file type on link (i, j) ∈ Ā,
α(ij) , is generated in association with the Euclidean distance between the end-
points such as α(ij) = d(i, j)/α, where d(i, j) is the Euclidean distance and Ā =
{(i, j)|i ∈ M, j ∈ M }. The cost for transmission to local servers from their asso-
ciated distributed server is generated for each link from the uniform distribution
650 J. Hong and S. Lim
Table 1. Computational results; ZLP M P and ZM P are the objective values of the
problems LP M P and M P , respectively. CPU Timea and CPU Timeb are processing
times at the root node and on the entire solution algorithm, respectively
defined over the range [0.8,1.2]. The storage cost per unit size of every video file
type at server i ∈ N , βi , is generated from the uniform distributions defined
over the range [0.8,1.2], for both the distributed servers and the local servers.
The number of video file copies that can be carried at each of the distributed
servers and the local servers are generated from the uniform distributions defined
over the ranges [100,150] and [50,60], respectively. The size of every video file
type is generated from the uniform distribution defined over the range [0.8,1.2].
The demand for each video file type is generated from the Zipf’s distribution.
The demand for video file type k ∈ K from local user group l ∈ L is generated
as the associated random value multiplied by the Zipf’s probability defined as
λlk = Λl ∗ g/k 1−θ , where Λl is drawn for each local user group from the uniform
distribution defined over the range [8, 10].
In this experiment, reasonable sizes of graphs are considered to reflect the real
world as having 5 or 10 distributed servers (|M | = 5 or 10), number of various
local servers ranged from 20 to 35 (|L|=20, 25, 30, or 35) and number of various
video file types being set to the value 200 (|K|=200). Table 1 summarizes the
experimental results. As shown in the table, the proposed algorithm has found
the optimal solutions in all the cases of the numerical test. Tables 2 shows the
computational results of the various problem instances (here, |M |=5, |L|=20,
|K|=200) with various video sizes which are incorporated in transmission cost.
In all of the tables, the results are given in average value, derived from the results
of 20 random problem instances at each instances.
Branch and Price Algorithm for Content Allocation Problem 651
5 Conclusion
This paper considers an optimal video file allocation problem in a VOD network
which is in a two-level hierarchical topology with the higher level sub-network
for distributed servers and the lower level sub-network for local servers. The
problem is to find an optimal video allocation strategy which gives both the
optimal types of videos and the optimal number of copies of each video file type
to be carried at each server such that the total cost composed of storage and
transmission costs should be minimized subject to capacity of each server. The
problem is formulated as a mixed integer programming problem with param-
eters representing all the possible (exponentially many) combinations of video
types and copies. The problem is then transformed into a binary integer pro-
gramming problem, for which a column generation problem is exploited to solve
the associated linear programming relaxation. Some strong valid inequalities are
exploited for the column generation problem. Computational results show that
the proposed solution algorithm works well.
References
1. Hwang, R., Sun, Y.: Optimal video placement for hierarchical video-on-demand
systems. IEEE transactions on broadcasting. 44 (1998) 392-401
2. Kwong, Y.K., Cvetko, J.: Capacity requirements of video servers in broadcast
television facilities. Smpte journal. 108 (1999) 477-480
3. Barnett, S.A., Anido, G.J.: A cost comparison of distributed and centralized ap-
proaches to video-on-demand. IEEE Journal on selected areas in communications.
14 (1996) 1173-1183
4. Cidon, I., Kutten, S., Soffer, R.: Optimal allocation of electronic content. Computer
Networks. 40 (2002) 205-218
5. Lee, K., Park, K., Park, S.: Design of capacitated networks with tree configurations.
Telecommunication systems. 6 (1996) 1-19
6. Park, K., Kang, S., Pakr, S.: An integer programming approach to the bandwidth
packing problem. Management science. 42 (1996) 1277-1291
7. Parker, M., Ryan, J.: A column generation algorithm for bandwidth packing. IEEE
journal on selected areas in communications. 2 (1994) 185-195
8. Sung, C.S., Hong, J.M.: Branch and price algorithm for a multicast routing prob-
lem. Journal of the operational research society. 50 (1999) 1168-1175
9. Nemhauser, G.L., Wolsey, L.A.: Integer and combinatorial optimization. John wiley
and sons. (1988)
10. Hong, J.M.: Some Optimization Issues in Designing Multimedia Communication
Networks. Ph. D. Dissertation, KAIST. (2000)
11. Waxman, B.: Routing of multipoint connections. IEEE journal on selected areas
in communications. 6 (1988) 1617-1622
12. Parsa, M., Uha, Q., Garcia-Luna-Aceves, J.J.: An iterative algorithm for delay-
constrained munimum-cost multicasting. IEEE/ACM transactions on networking.
6 (1998) 461-474
13. Chen, Y.S., Chong, P.: Mathematical modeling of empirical laws in computer ap-
plication : a case study Computers and mathematics with applications. 24 (1992)
77-87
Regrouping Service Sites: A Genetic Approach
Using a Voronoi Diagram
Jeong-Yeon Seo1 , Sang-Min Park2 , Seoung Soo Lee3 , and Deok-Soo Kim1
1
Department of Industrial Engineering, Hanyang University,
17 Haengdang-Dong, Sungdong-Ku, Seoul, 133-791, South Korea
{jyseo, smpark}@voronoi.hanyang.ac.kr
dskim@hanyang.ac.kr
2
Voronoi Diagram Research Center, Hanyang University,
17 Haengdang-Dong, Sungdong-Ku, Seoul, 133-791, South Korea
3
CAESIT, Konkuk University,
1 Hwayang-Dong, Gwangjin-Ku, Seoul, 143-701, South Korea
sslee@konkuk.ac.kr
1 Introduction
Suppose there are n service sites spread over an area and each site has service
demand. We would like to partition the area into k disjoint regions. More pre-
cisely, we want to select k service sites called centers each of which serves the
corresponding region. Each selected center will replace a group of neighboring
service sites. We aim to group the sites so that each group has balanced service
demand and the sum of distances between sites and their corresponding center
is minimized. We assume that every pair of sites are connected by an edge whose
weight is the Euclidean distance between the two sites.
This kind of problems have been considered in numerous areas including op-
erations research, pattern recognition, image processing and computer graphics.
Grouping is usually called clustering or sometimes decomposition in terms of
graphs or d-dimensional space. The problem of finding the optimal clustering
is NP-hard in general[3] and approximate solutions have been proposed[4][12].
Similar problems can be found in facility location which is to locate a set of
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 652–661, 2005.
c Springer-Verlag Berlin Heidelberg 2005
Regrouping Service Sites: A Genetic Approach Using a Voronoi Diagram 653
supply stations which optimizes a given objective function. The k-center prob-
lem and the k-median problem are well-known facility location problems. The
k-center problem is to select k sites(centers) among the sites of a given set
so that the maximum of the distances from each site to the closest center is
minimized. In the k-median problem, the total sum of the distances should be
minimized[1].
The objective of regrouping problem is to consolidate resources in general.
The selected centers are expected to provide higher quality services and at the
same time reduce the cost of services. For example, suppose that a company
plans to restructure the system of branch offices for efficient operation. You can
merge a certain number of offices into one in order to cope with the decrease of
overall service demand. This solution can be applied to various service sites such
as medical service centers, educational sites, warehouses, shops, etc.
Regrouping problem was addressed by Mansour et al.[2] whose service sites
are given as a graph. Thus the connection between sites are defined by a given
set of edges and their weights. The goal of the problem is to locate the centers
so that the total travel distance between service sites and their corresponding
centers within a region is minimized. At the same time, it should have balanced
distribution of services over the different regions. They presented a two-phase
method: first decompose the graph using a tuned hybrid genetic algorithm, and
then find a suitable center for each region by a heuristic algorithm.
In this paper we present a genetic algorithm to solve the regrouping problem
in a geometric setting. Thus we decompose the 2D plane whereas Mansour et al.
decompose the graph. A Voronoi diagram is a useful structure which provides
proximity information among points. It can be a good tool for optimizing the
sum of distances. For balanced distribution of service demand, we adopt genetic
approach. We suggest a hybrid genetic algorithm that is combined with Voronoi
diagrams. To demonstrate the efficiency of our algorithm, we compare it with two
other algorithms: One uses a pure genetic approach and the other uses Voronoi
diagrams. The experimental results show improvements in running time as well
as cost optimization. We also provide a variety of empirical results by changing
the relative importance of the two criteria, which involve service demand and
distances, respectively.
In the next section, we present the formal definition of the problem and
describe the objective function. Then we give an overview of genetic algorithms.
Section 3 gives the definition of the Voronoi diagram and explains how it works
in our algorithm. In Section 4 & 5, we elaborate on our genetic algorithm and
present experimental results.
2 Preliminary
In this section, we formally introduce the definition of regrouping problem. Next,
we briefly describe the concept of genetic algorithm.
654 J.-Y. Seo et al.
The cost of the region rj is the sum of the two terms and we use α as an
experimental parameter.
crossover, and mutation in concert with the value of objective function. For more
details on genetic algorithms, refer to [5] and [6].
The main operations of genetic algorithms are selection, crossover and muta-
tion. A selection operation decides whether each individual of current population
survives or not according to its fitness value. Then, two individuals of popula-
tion are randomly selected and combined through a crossover operation. The
resulting offspring individuals are modified by a mutation operation. Now, a new
population is created and the evolution process is repeated until the terminal
condition is met.
where d(p, q) is the Euclidean distance between p and q. Note that a Voronoi re-
gion is always a bounded convex polygon as shown in Figure 1. Voronoi diagrams
have been extensively studied as a useful tool in various fields such as astron-
omy, biology, cartography, crystallography and marketing [10, 11]. The survey
on Voronoi Diagrams can be found in [8, 9].
In the regrouping problem, we have two criteria to determine the quality of
a solution. One is the balanced distribution of service demands and the other is
the sum of distances to the centers. We Noting that a Voronoi diagram provides
the most compact and concise representation of the proximity information in
Euclidean space, we adopt this structure in our algorithm. In fact, the Voronoi
diagram can give the solution that minimizes the sum of distances provided
that a set of centers is known. The regrouping problem consists of two parts
- decomposing the plane into k regions and selecting a center for each region.
In our algorithm, we first select centers with regard to the distribution of the
service demands. With this set of centers, we decompose the plane using the
structure of Voronoi diagrams. These two steps are used as basic operations of
our genetic algorithm to optimize the solution.
4.1 GA Algorithm
We first give GA algorithm which is loyal to the original concept of genetic al-
gorithms. Each chromosome in our problem is represented by n-elements row
[ C(v1 ), C(v2 ), C(v3 ), ..., C(vn ) ]. The i-th site vi takes a value C(vi ) from
1, 2, ..., k (k is the number of regions) which represents a center whose region
contains the site. In general, the initial population of possible solutions is ran-
domly generated. We use roulette-wheel selection and the fitness value of the
individuals to be minimized is the objective function O shown in Equation (4).
The crossover operation used is the double-point crossover and the crossover
rate is set to be 0.7. It is applied to a randomly-selected pair of individuals. The
probability of mutation is 0.2. We perform a mutation operation by switching
the regions of two randomly-selected individuals. The following gives the outline
of GA algorithm.
Program GA
{ Input : graph G =< V, E > }
{ Output: subgraphs : R1 , R2 , . . . , Rk }
Calculate the probability of each site :P r(V );
Generate the initial population by randomly assigning sites
to subgraphs;
Evaluate fitness of each individual;
Repeat (150 times)
{
Rank individuals;
Give probability to each individual;
Apply selection, crossover, and mutation;
Evaluate fitness of individuals;
}
4.2 VD Algorithm
Instead of generating random values which form the individuals of the initial
population of GA algorithm, we use a Voronoi diagram for the initial popula-
tion of VD algorithm. We first assign the probability to each site according to
its weight. Then, we choose k centers with high probability as the generators
of Voronoi diagram and then construct the Voronoi diagram of the k centers.
The sites that are contained a Voronoi region belong to the same group. The
outline of generating the regrouping solution using a Voronoi Diagram is given
as follows.
Regrouping Service Sites: A Genetic Approach Using a Voronoi Diagram 657
Program VD
{ Input : graph G =< V, E > }
{ Output: subgraphs : R1 , R2 , . . . , Rk }
Assign probability to each site according to its weight
Choose k sites ( for each individual )
Compute VD of k sites
Classify vi into one of k Voronoi regions for each i
Evaluate O
Consider the individual with the minimum O as the solution
Program VGA
{ Input : graph G =< V, E > }
{ Output: subgraphs:R1 , R2 , . . . , Rk }
Calculate the probability of each site : P r(V );
Compute V D(V );
Choose k sites ( for each individual )
Compute Voronoi diagram of k sites
Classify vi into one of k Voronoi regions for each i
Evaluate O for each individual
Repeat (50 times)
{
For ( each individual )
{
Make a boundary site list for each region;
Apply a mutation operation on the list;
}
Evaluate O for each individual
Apply selection;
}
5 Experimental Results
In our implementation, we choose the size of the population to be equal to
2 × n × k. And x- and y- coordinates and weight of site are randomly generated
between 10 and 100. The average, min and max values are computed over 10
problem instances. These instances are derived from graphs with n = 50 that
are decomposed into 5 different regions (k = 5). Experiments were performed on
a PC with Pentium IV 2.4 GHz CPU and 512 MB of RAM. The implementation
was done using Visual C++.
Recall that the objective function is computed for j-th group as follows (refer
to Equation (3)).
Note that the first term is related to the service demand and the second term is
related to the distances. To give the diversity of the simulation, we scale the value
of α from 0 to 1 range in our experiment. Hence α is used to investigate how the
results of three algorithms are influenced by the change of relative importance
of the two criteria.
The results obtained in our experiments are shown in Table 1, which is also
shown as a graph in Figure 2. The overall performance of VGA algorithm is
superior to the other two. When α is small, VD algorithm is good because it is
mainly focussed on minimizing the sum of distances. When α is close to 1, GA
wins VD which makes little efforts to optimize the service demand term. VGA
algorithm which uses both Voronoi diagrams and genetic approaches produces
high quality solutions for the regrouping instances compared to GA algorithm
660 J.-Y. Seo et al.
6 Conclusion
We proposed a new genetic algorithm which produces good and efficient solutions
for the regrouping problem. The idea of combining the genetic algorithm with the
proximity information provided by Voronoi diagram has led to good solutions as
shown in the empirical results. Possible extension of our work would be grouping
problems with other kinds of quality measure such as minimizing the maximum
radius, diameter or area of the group regions. We expect the Voronoi diagram to
be a useful method for those variants as well. In addition, algorithms employing
Voronoi diagrams provide the grouping whose elements are concentrated around
their center rather than being spread around, which is significant in an aesthetic
sense.
References
1. Arora, S., Raghavan, P., Rao, S.: Approximation schemes for Euclidean k-medians
and related problems. In Proceedings of the 30th Annual ACM Symposium on
Theory of Computing. ACM, New York (1998) 106-113
2. Mansour, N., Tabbara, H., Dana, T.: A genetic algorithm approach for regrouping
service sites. Computers & Operations Research, Vol. 31. (2004) 1317-1333
3. Garey, M.R., Johnson, D.S.: Computers and intractability: a guide to the theory
of NP-completeness. Freeman and Co., New York (1979)
4. Vazirani, V.: Approximation Algorithms. Springer, Berlin (2001)
5. Chambers, L.D.: Practical handbook of genetic algorithms. Vols. I and II. CRC
Press, Boca Raton, FL (1995)
6. Goldberg, D.E.: Genetic algorithms in search, optimization and machine learning.
Addison-Wesley, Reading, MA (1989)
7. Holland, J.: Adaptation In Natural and Artificial Systems. The University of Michi-
gan Press, Ann Arbour (1975)
8. Okabe, A., Boots, B., Sugihara, K.: Spatial Tessellations Concetps and Applica-
tions of Voronoi Diagrams. John Wiley & Sons (1992)
9. Aurenhammer, F.: Voronoi diagrams - a survey of a fundamental geometric data
structure. ACM Computing Surveys, Vol. 23. (1991) 345-405
10. Kim, D.S., Chung, Y.C., Kim, J.J., Kim, D., Yu, K.: Voronoi diagram as an analysis
tool for spatial properties for ceramics. Journal of Ceramic Processing Research,
Vol. 3, No. 3, PartII. (2002) 150-152
11. Seo, D.I., Moon, B.R.: Voronoi Quantized Crossover for Traveling Salesman Prob-
lem. In Genetic and Evolutionary Computation Conference. (2002) 544-552
12. Bui, T.N., Moon, B.R.: Genetic algorithm and Graph partitioning. IEEE Transac-
tions on computers, Vol.45. No.7. (1996) 841-855
Profile Association Rule Mining Using Tests of
Hypotheses Without Support Threshold
1 Introduction
Since its introduction, association rule mining has become an important field
in data mining. Mining association rules is useful for discovering relationships
among data in large databases. Usually, it has been applied to sales transaction
databases. Given a transaction database, an example of association rule might
be that customers who buy bread tend to buy milk.
Association rule mining can be decomposed into two subproblems: finding
frequent itemsets, i.e., finding the subsets of items that occur frequently in a
large database, and extracting interesting rules of association between the fre-
quent itemsets. The usual measures in association rule mining are support and
confidence. The support of an itemset X means the percentage of the number of
transactions containing X in total transactions. An itemset X is referred to as a
frequent(or large) itemset if the support of X is no less than a user-defined min-
imum support(called minsup). An association rule has the form X → Y , where
both X and Y are sets of items, and X ∩ Y = φ. The confidence of a association
rule is the conditional probability that a transaction contains Y, given that it
contains X [1]. It is given as conf idence(X → Y ) = support(X ∪Y )/support(X).
Much research has focused on deriving efficient algorithms for finding frequent
itemsets. Since the introduction of the Apriori algorithm [2], other algorithms
have been developed such as DHP [9], Max-Miner [5], FP-tree [7], VIPER [10],
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 662–669, 2005.
c Springer-Verlag Berlin Heidelberg 2005
Profile Association Rule Mining Using Tests of Hypotheses 663
Common-Item Tree [8], Diffset-based algorithm [13], CT-ITL [11], and Modified-
diffset method [4].
However, the above researches have been conducted for discovering the rela-
tionships among items in the transaction database. Recently, the issue of mining
the relationships between items in the transaction database and attributes in the
customer database was investigated in [12]. An example of such an association
rules might be ”customers whose majors are data-mining tend to buy the book
’Database’.” This kind of rule is called ’profile association rule’ [3] and useful for
product recommendation. Here, we deal with mining association rules with an
expression attribute values → itemsets.
Generally, association rule mining algorithms are based on support-based
pruning. So high level of support threshold can ignore the very correlated items
that do occur rarely. And low level of support threshold results in generating
too many frequent itemsets. The essence of association rule mining is not to find
frequent itemsets but to discover associated rules. In our approach, minimum
support is not given. But instead, we use the tests of hypotheses with sampling
data and present the very correlated relationships of customer attribute values
and items. The rest of this paper is organized as follows: In Sec. 2, we define the
problem of mining profile association rules and review the tests of hypotheses.
In Sec. 3. the procedures of the proposed algorithm are described. In Sec. 4, the
experimental results on synthetic databases are presented. Our conclusions are
presented in Sec. 5.
2 Preliminaries
In this section, we provide the definitions of the terms that are used in this
paper. We also present the hypotheses to be tested.
Improvement means the influencing power of customer profile for promoting sales
of items. In Equation 1, if the value of improvement measure is greater than 1, it
means customers who has attribute vi,j buy an itemset X more frequently than
others.
An interesting profile association rule is defined in Definition 1.
Our study does not consider support threshold. So, some of interesting discovered
rules may have low supports.
H0 : μ ≤ 1
H1 : μ > 1 (2)
M −1
t0 = √ (3)
S/ n
which follows the t -distribution with n − 1 degrees of freedom if the null hy-
pothesis H0 is true. We calculate the test statistic t0 in Equation 3 and reject
H0 if t0 > tα,n−1 ,where α is the significance level of the test.
3.3 Algorithm
In this section, we describe our algorithm, which uses a sample database and the
tests of hypotheses. The minimum support is not given. The steps for mining
profile association rules are as follows:
(a) Make the candidate basic rules with the type vi,j → X, where vi,j is the
specific value j at the customer attribute i and X an item.
(b) Count the support of each vi,j → X by scanning the sample database.
(c) Discover (vi,j ∪ X) whose support is greater than support(vi,j )support(X),
which is necessary and sufficient condition to satisfy improvement threshold
on the ground of Equation 1.
(a) Select (vi,j ∪ X) and (vi,k ∪ X) for j = k among the basic rules.
(b) Generate the combined rules (vi,j or vi,k ) → X. This step does not need to
scan SDB since the improvement of the combined rules are always greater
than 1 and can be calculated with the information given in Step 1, 2.
(a) Select (vi,j ∪ Xm ) for m = 1, 2, 3, . . . , n among the basic and combined rules.
(b) Make the candidate rules with the type vi,j → Y , where Y is the combination
of Xm .
(c) Select (vi,j ∪ X) for i = 1, 2, 3, . . . , n among the basic and combined rules.
Profile Association Rule Mining Using Tests of Hypotheses 667
(d) Make the candidate rules with the type V → X, where V is the combination
of vi,j .
(e) Count the supports of each vi,j → Y and V → X by scanning the sample
database.
(f) Discover the multi-dimensional rules vi,j → Y and V → X, whose improve-
ments are greater than 1.
4 Experimental Results
We tested the proposed algorithm with two synthetic databases. The synthetic
databases mimic the transactions in a retailing environment. Table 1 shows the
width and height of each database.
The parameters in the databases are as follows: ’T’ means the average length
of transaction in the database, ’I’ means the average size of the maximal poten-
tially frequent itemsets, ’D’ means the total number of transactions, ’N’ means
the number of items, and ’A’ means the number of attributes.
We made the 30 sample databases with size 100 from the synthetic databases.
Table 2 shows the number of the generated rules in the sample databases. Many
multi-dimensional rules were generated, though the size of the sample database
is small. We can notice that the basic rules with low supports were generated.
The last column in Table 2 shows interesting basic rules with low support.
The proposed algorithm has the following advantages. First, this algorithm
can reduce database scanning time by using the sample databases. Second, the
profile association rules of low support but high correlation can be discovered.
But, there is a limitation that many multi-dimensional rules, which should be
tested, are generated, if there are many items.
668 K.-I. Ahn and J.-Y. Kim
5 Conclusion
In this paper, we have proposed a new algorithm for discovering profile as-
sociation rules. We made the sample databases from the customer database
and the transaction database. In the proposed algorithm, the sample databases
were scanned instead of the original databases. This can save time of scanning
databases. And the tests of hypotheses were conducted on the interestingness
of the rules. The experimental results showed that the profile association rules
of low support were discovered since the interestingness was high. This provides
insights for promoting sales of items. As further researches, it will be interesting
to discover the exceptional profile association rules.
References
1. Agrawal, R., Imielinski, T. and Swami A. N.: Mining association rules between
sets of items in large databases. Proceedings of the ACM-SIGMOD International
Conference on Management of Data (1993) 207-216
2. Agrawal, R., Srikant, R.: Fast algorithms for mining association rules in large
databases. Proceedings of the 20th International Conference on Very Large Data
Bases (1994) 487-499
3. Aggarwal, C. C., Sun, Z., Yu, P. S.: Online algorithms for finding profile associa-
tion rules. Proceedings of International Conference on Information and Knowledge
Management (1998) 86-95
4. Ahn, K. I., Kim, J. Y.: Efficient mining of frequent itemsets and a measure of
interest for association rule mining. Journal of Information and Knowledge Man-
agement 3(3) (2004) 245-257
5. Bayardo, R. J.: Efficiently mining long patterns from databases. Proceedings of the
ACM- SIGMOD International Conference on Management of Data (1998) 85-93
6. Berry, M., Linoff, G.: Data mining techniques for marketing, sales, and customer
support. John Wiley & Sons, Inc (1997)
7. Han, J., Pei, J., Yin, Y.: Mining frequent patterns without candidate generation.
Proceedings of the ACM-SIGMOD International Conference on Management of
Data (2000) 1-12
8. Kim, C. O., Ahn, K. I., Kim, S. J., Kim, J. Y.: An efficient tree structure method
for mining association rules. Journal of the Korean Institute of Industrial Engineers
27(1) (2001) 30-36
9. Park, J. S., Chen, M. S., Yu, P. S.: An effective hash based algorithm for mining
association rules. Proceedings of the ACM-SIGMOD International Conference on
Management of Data (1995) 175-186
Profile Association Rule Mining Using Tests of Hypotheses 669
10. Shenoy, P., Haritsa, J. R., Sudarshan, S.: Turbo-charging vertical mining of large
databases. Proceedings of the ACM-SIGMOD International Conference on Man-
agement of Data (2000) 22-23
11. Sucahyo, Y. G., Gopalan, R. P.: CT-ITL: Efficient frequent item set mining using
a compressed prefix tree with pattern growth. Proceedings of the Australasian
Database Conference (2003) 95-104
12. Tsai, P. S. M., Chen, C. M.: Mining interesting association rules form customer
databases and transaction databases. Information Systems 29 (2004) 685-696
13. Zaki, M. J., Gouda, K.: Fast vertical mining using diffsets. Proceedings of the 9th
International Conference on Knowledge Discovery and Data Mining (2003) 326-335
The Capacitated max-k-cut Problem
1 Introduction
The classical max-k-cut problem is one of partitioning the set of vertices V in
a graph into k partitions such that the number of edges across the partitions is
maximum. Note that there is no constraint imposed on the size of each partition.
In the capacitated version we study in this paper, we are to partition the vertices
into k equal-sized sets such that number of edges across the sets is maximized.
We let cmax-k-cut denote the capacitated version of the max-k-cut problem. We
present a deterministic approximation algorithm for this problem which is based
on local search, and show that the performance ratio is (k − 1)/k.
2 Related Work
One of the first deterministic approximation algorithms for max-2-cut was based
on the idea of local search. Starting with an arbitrary partition of size 2 the idea is
to move vertices from one partition to the other until there is no improvement.
The performance ratio of the local search algorithm is 1/2 [7]. A randomized
algorithm for the max-2-cut problem with a performance ratio of 1/2 is due to
Sahni and Gonzalez [8].
Until the seminal work of Goemans and Williamson [4] this was the best
known result for max-2-cut. Goemans and Williamson [4] gave a randomized
rounding approximation algorithm for max-2-cut with a performance ratio of
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 670–679, 2005.
c Springer-Verlag Berlin Heidelberg 2005
The Capacitated max-k-cut Problem 671
V1 V2 V3
V4 V6 Heuristic
V5 Cut
V7 V8 V9
k=3
HEURISTIC CUT
.
. . . . .
GENERAL CASE
eaV1 +eaV2 +eaV3 +ebV4 +ebV5 +ebV6 ≤ eaV4 +eaV5 +eaV6 +ebV1 +ebV2 +ebV3 (13)
(2e11 +e12 +e13 )+|V1 |(ebV4 +ebV5 +ebV6 ) ≤ (e14 +e15 +e16 )+|V1 |(ebV1 +ebV2 +ebV3 )
(14)
Summing up Equation 14 over b ∈ {V4 , V5 , V6 } we get,
(e12 +2e22 +e23 )+|V2 |(ebV4 +ebV5 +ebV6 ) ≤ (e24 +e25 +e26 )+|V2 |(ebV1 +ebV2 +ebV3 )
(18)
Summing up Equation 18 over b ∈ {V4 , V5 , V6 } we get,
(e13 +e23 +2e33 )+|V3 |(ebV4 +ebV5 +ebV6 ) ≤ (e34 +e35 +e36 )+|V2 |(ebV1 +ebV2 +ebV3 )
(22)
Summing up Equation 22 over b ∈ {V4 , V5 , V6 } we get,
eaV1 +eaV2 +eaV3 +ebV7 +ebV8 +ebV9 ≤ eaV7 +eaV8 +eaV9 +ebV1 +ebV2 +ebV3 (26)
eaV4 +eaV5 +eaV6 +ebV7 +ebV8 +ebV9 ≤ eaV4 +eaV5 +eaV6 +ebV1 +ebV2 +ebV3 (36)
Summing up equations 9, 10, 11, 13, 14, 15, 17, 18, 19, 21, . . ., 29, 31, . . . , 39, we
get the following inequalities. For ease of exposition, we let R1 = |V1 |+|V2 |+|V3 |,
R2 = |V4 | + |V5 | + |V6 |, and R3 = |V7 | + |V8 | + |V9 | denote the sum of the sets in
Row 1, Row 2, and Row 3 respectively.
If all the partitions are of the same size (n/3) then R1 = R2 = R3 = n/3, and
we get
4n/3(e12 + e13 + e23 + e45 + e46 + e56 + e78 + e79 + e89 ) ≤ (2n/3)ALG
Equivalently, (e12 + e13 + e23 + e45 + e46 + e56 + e78 + e79 + e89 ) ≤ ALG/2.
Furthermore e15 + e16 + e18 + e19 + e24 + e26 + e27 + e29 + e34 + e35 + e37 + e38 +
e48 + e49 + e57 + e59 + e67 + e68 ≤ ALG. Adding this with the previous equation
we get OP T ≤ 3/2ALG.
5 Generalization
In this section we generalize the results presented in the previous sections. The
problem is to partition the vertices of a graph into k equal-sized sets (of size
The Capacitated max-k-cut Problem 677
n/k each) such that the number of edges across the sets is maximized. Once
again we start with an arbitrary partition of the desired size. While there exists
a pair of vertices such that interchanging them increases the edges in the cut, we
perform the switch. Let the optimal partition and the locally optimal partition
discovered by the greedy algorithm be as shown in Figure 1. The set of vertices
in each row corresponds to a partition obtained by the greedy algorithm, and the
set of vertices in each column corresponds to a partition obtained by the optimal.
Thus, the first row, comprising vertex sets V11 , V12 , . . . , V1k , corresponds to a
partition V1x = V11 ∪ V12 ∪ . . . V1k obtained by the greedy algorithm, and the
first column comprising vertex sets Vx1 = V11 , V22 , . . . , Vk1 , corresponds to a
partition V11 ∪ V21 ∪ . . . Vk1 obtained by the optimal. In general, Vpx denotes the
set of vertices in row p (and therefore in a greedy partition), and Vxq denotes the
set of vertices in column q (and therefore in an optimal partition) in Figure 1.
Finally, we let epq,rs denote the edges between sets Vpq and Vrs . We now provide
the proof for the general case.
Theorem 3. The performance ratio of the greedy algorithm is (k − 1)/k.
Proof: Consider two vertices u, v, where u ∈ Vpq and v ∈ Vrs , where p = r. Since
p = r, the vertices u and v lie in different partitions of the greedy cut. The
number of edges that cross the greedy cut currently (but would not if vertices u
and v were swapped), is given by
euVrx + evVpx
The number of edges that do not cross the greedy cut currently (but would if
the vertices u and v were swapped), is given by
euVpx + evVrx
Summing the LHS and RHS over all vertices u ∈ Vpq and v ∈ Vrs ,
k
k
k
k
|Vpq | ers,rj + |Vrs | epq,pj ≤ |Vpq | ers,pj + |Vrs | epq,rj
j=1,j=s j=1,j=q j=1 j=1
The LHS corresponds to edges that cross the optimal cut (summed over all
vertices u ∈ Vpq , v ∈ Vrs ), but do not cross the greedy cut. The RHS corresponds
to edges that cross the greedy cut (summed over all vertices u ∈ Vpq , v ∈ Vrs ),
some of which may cross the optimal cut. %k
For each term epq,pj , j > q on the LHS, the coefficient is given by i=1,i=p 2Vix .
Since there are 2(k − 1) partitions, each of which has n/k elements, each coeffi-
cient equals 2(n/k)(k − 1). Similarly, for each term of the form epq,rs , r > p, the
coefficient is given by Vpx +Vrx . Since each of the these partitions has cardinality
n/k, the coefficient for each term on the RHS equals 2(n/k).
678 D.R. Gaur and R. Krishnamurti
k
k
k
k
1
k k k k
≤ epq,rj + epq,rj
p=1 q=1 r=p+1 j=1
k − 1 p=1 q=1 r=p+1 j=1
6 Conclusion
In this paper we studied a capacitated version of the max-k-cut problem. We
showed that a fast approximation algorithm based on local search has a perfor-
mance ratio of (k − 1)/k. To the best of our knowledge this is the first deter-
ministic approximation algorithm for the capacitated version of the max-k-cut.
It should be noted that the problem has applications in stowage of containers in
ports and ships [1, 2], parking vehicles in lots and other constrained versions of
packing problems.
Acknowledgements. The authors would like to thank Rajeev Kohli for bring-
ing the first two references to their attention.
References
1. M. Avriel, M. Penn, and N. Shpirer. Container ship stowage problem: complexity
and connection to the coloring of circle graphs. Discrete Appl. Math., 103(1-3):271–
279, 2000.
2. M. Avriel, M. Penn, N. Shpirer, and S. Witteboon. Stowage planning for container
ships to reduce the number of shifts. Annals of Operations Research, 76:55–71, 1998.
3. A. Frieze and M. Jerrum. Improved approximation algorithms for max k-cut and
max bisection. Algorithmica, 18(1):67–81, 1997.
4. M. Goemans and D. Williamson. Improved approximation algorithms for maximum
cut and satisfiability problems using semidefinite programming. Journal of the
ACM, 42(6):1115–1145, 1995.
5. M. Goemans and D. Williamson. Approximation algorithms for max-3-cut and other
problems via complex semidefinite programming. In Proceedings of the thirty-third
annual ACM symposium on Theory of computing, pages 443–452. ACM Press, 2001.
The Capacitated max-k-cut Problem 679
Abstract. With the rapid change of world economy, firms need to de-
ploy alternative methodologies to improve the responsiveness of supply
chain. The present work aims to minimize the workload disparities among
various distribution centres with an aim to minimize the total shipping
cost. In general, this problem is characterized by its combinatorial na-
ture and complex allocation criterion that makes its computationally
intractable. In order to optimally/near optimally resolve the balanced
allocation problem, an evolutionary Cooperative Multi Colony Ant Op-
timization (CMCAO) has been developed. This algorithm takes its gov-
erning traits from the traditional Ant Colony optimization (ACO). The
proposed algorithm is marked by the cooperation among ”sister ants”
that makes it compatible to the problems pertaining to multiple dimen-
sions. Robustness of the proposed algorithm is authenticated by com-
paring with GA based strategy and the efficiency of the algorithm is
validated by ANOVA.
1 Introduction
A supply chain network (SCN) is typically described as a network of suppliers,
fabrication/assembly sites, distribution centers, ware houses, retail locations,
and customers. One of the key issues in the immaculate linkage of supply chain
members is related to the expansion of distribution centers. In this paper an at
tempt has been made to protably expand the distribution centers by optimally
allocating the customers to the distribution centers in order to make the system
balanced. Several prominent researchers have contributed to body of the liter
ature pertaining to location-allocation problem [1], [2]. The complex balanced
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 680–691, 2005.
c Springer-Verlag Berlin Heidelberg 2005
A CMCAO Based Approach to Efficiently Allocate Customers 681
allocation problem has attracted considerable attention in the recent years due
to its crucial impact on the supply chain [6]. The intricacy of the problem can be
assessed by the fact that the optimal allocation scheme has to be chosen among
a number of feasible alternative combinations that increase exponentially with
the increase of customers and distribution centers. Thus, the problem can be
characterized as NP-hard and comes under the broad category of combinatorial
optimization problems. The main motive behind the construction of supply chain
network is its cost efficiency that takes into account the minimization of total
logistic cost (shipping cost, inventory carrying cost, etc.) for each distributor.
While the balancing of Supply Chain Network is being carried out, ’equitability’
of supply chain network with respect to the product ows is also considered. Here,
the word ’equitable’ refers to allotment of comparative amount of work load to
all distribution centers.
This paper proposes a new Cooperative Multi Colony Ant Optimization (CM
CAO) algorithm to solve the complex balanced allocation problem that utilizes
the search strategy based on the cooperation of information between the ’sis-
ter ants’ of various colonies. The proposed approach is the modied version Ant
Colony Optimization (ACO), which is a generic meta-heuristic that aims to ob -
tain optimal/near optimal solutions for the complex problems that are NP hard
in nature [3], [4], [5]. The ant algorithm takes its inspiration from the behav-
ior of real ants that they could find the shortest path from their colony to the
feeding zone. The proposed CMCAO algorithm utilizes the traits of ant algo -
rithms to solve multidimensional problem sets. It outperforms other prevailing
solution methodologies due to its appealing property of handling even complex
problems of comparatively large data sets with greater ease. Rest of the paper
has been arranged in the following sequence: Section 2 mathematically models
the balanced allocation problem. The description of CMCAO algorithm along
with its application over balanced allocation problem is covered under Section 3.
The case study is discussed in the section 4. The paper is concluded in section 5.
2 Mathematical Modeling
In the balanced allocation problem, the shipping cost between distribution cen-
ters and the customer affects the profit of manufacturers. Hence, the minimiza-
tion of the aggregate shipping cost of all distribution centers along with the
fulfillment of balanced allocation criteria has been taken as the main objective
function. The mathematical formulation represented by equation (1) and (2) de -
picts the objective functions and it had been strategically incorporated in the
local and global search in the proposed CMCAO algorithm. The mathematical
formulation of the problem can be given as:
M inimize {DI} (1)
%N %Cnj
M inimize i=1 j=1 SCij ×Δij (2)
( th th
1, if j customer is allocated to i distribution center,
Δij = (3)
0, otherwise
682 Srinivas et al.
DI : Degree of Imbalance
SCij : Shipping Cost of j th customer from ith distribution center. .
Cnj : Number of customer allotted to distribution centre J.
The proposed algorithm uses M colonies, with each colony comprised of N ants.
Each of the ant in a colony has sister ants in the other colonies, which work
together to get the best path. Initially, each ant is randomly placed on a node of
its characteristic colony. Having placed all the ants on the nodes, they are moved
randomly for a few cycles without any visibility or pheromone trail identifying
capacity. This takes the algorithm out of initial stagnation and provides initial
guidelines for the ants to start with. To do away with the repetition of the nodes
in an ant’s path, two tabu lists are associated with each ant. First list i.e. T abu1k
keeps the track of the nodes encountered in the path of ant type k, while the
second list i.e. T abu2k stores the information about the feasible nodes those are
available for the ant type k to move. After completion of the tour, the pheromone
is updated on each node which was initialized as zero. The pheromone updation
is based on the following relation:
n
Γi,j = (1 − ∂)Γi,j + k
ΔΓi,j (4)
k=1
(
k Θ\Wk , if edge(i, j) is chosen in the path of ant type k,
ΔΓi,j = (5)
0, otherwise
Here, the weightage is the cumulative weightage of all sister ants of ant type k.
In node transition phase, each ant is assigned its starting node randomly in its
own characteristic dimension. Each ant chooses the next node probabilistically.
For k th ant type of mth dimension, placed on a node i, the probability to choose
the next node j is given by
(Γi,j )α (νi,j )β
k (Γi,j ) α (ν β
Ξi,j = m∈tabu2k i,j ) (6)
0, otherwise
k
Ξi,j : probability of ant type k to choose edge (i,j)
υij : visibility of the node j from node i
α : constant determining the dependency on the pheromone trail intensity.
β : constant determining the dependency on visibility of the node
After the completion of a tour, pheromone trail on each edge is updated using
equation 4 and equation 5. The parameters utilized by the algorithm to come
out of local optima are discussed in the following subsection.
loge (itern )
μo = ; μo [o, 1] (7)
loge (maxi )
Where, itern is the iteration number and maxi is maximum iteration. In initial
cycles, μo remains close to zero and in the later phases μo approaches to a unit
value. Another random number u is generated and is compared with μo . If μ
is smaller, then the probabilistic approach is applied .But, if μo is small, then
the factor s is used. Hence, the search for new paths is encouraged in the initial
phases and the algorithm becomes more powerful in avoiding the entrapment in
local optima.
684 Srinivas et al.
1. Initialization
– Calculate the visibility matrix.
– Set the algorithm parameters (maxi ,α,β, etc.)
– Set number of colonies M to be used as per problem requirement. Mark
a sister ant for each ant in every other colony.
– Randomly place ants on each node. /* Ants are placed on nodes of their
characteristic colonies */
– Set iter = 0.
– Let each ant complete the tour. /* Having moved through all the nodes
allocated to ant confirms completion.*/
– Set initial pheromone intensity by using equation (3) and equation (4)
– Choose the next node to move randomly.
2. Node Transition
– If iter ¿maxi go to 4.
– Set k = 0; /* counter for ant type*/
– Label: Generate random number μ(0≤ μ ≤1).
– If μ ≤ μo then proceed , otherwise choose the next node randomly.
– Create Tabu1 listing the moved nodes and Tabu2 having probability of
nodes that can be visited. Probability is calculated as per equation (6).
– Mark the nodes of Tabu1 as closed for the ant type that has moved.
– Choose the node with highest probability
– Generate a random number s(0≤ s ≤1)
– If, s ≥ ξi,j
k
then choose the next node on random basis. Else, choose the
node with highest probability.
– Add the chosen node to Tabu1 for further reference.
– k = k+ 1;
– If (k < M ), go to Label.
3. Updating
– iter→ iter + 1.
– If best-cost ¿ best-iter , then best-cost = best-iter .
– Enter the best tour in array best-tour.
– Update pheromone matrix.
– Empty all tabu lists.
loge (itern )
– μo = log e (maxi )
; go to 2
4. Result
– Give the best-tour along with best-cost as output
of the distribution center. Each colony has N ants to be moved. Each ant of a
colony has a sister ant in every other colony with which it share its experiences
of the encountered paths. Prior to the initiation of the algorithm, it is to be
decided that how many customers (Cn ) are to be allocated to each distribution
center for the fulfillment of balanced allocation criterion.
N
Cn = +Ω (8)
M
(
1, if Cn Dis
Ω= (9)
0, otherwise
Now, a colony ’c’ is chosen to initiate the movement. Among the N ants of a
colony an ant ’k’ is chosen randomly and is set to move. When the ant has moved
through the number of nodes (customers) allocated to it, the tour of ant type k
of colony c is considered to be completed. Now, the remaining ants of the colony
are one by one moved in the same fashion. Again, the next colony to move is
chosen randomly from the remaining unmoved colonies and ants are set to move.
Here, all those nodes that are marked as closed by the T abu1k are also restricted
for the ant type k. Now, the ants of next colony start moving on the nodes and
aforementioned process is continued until all the colonies have completed their
respective tours. When the tour of all ants in the initialization phase has been
completed, the pheromone is laid on each edge of the path traversed by any of
the ant. The quantity of laid pheromone is calculated with the help of equation
4 and equation 5. Now in node transition phase, the ants are distributed on the
nodes in the same fashion as in initialization phase. In this phase, the next node
is chosen probabilistically as per equation (6). After the completion of a cycle the
pheromone on each node is updated keeping in view the objective of minimizing
the deviation in the cost of distribution centers. Equation (4) and equation (5)
governs basic pheromone updation, the weightage of the tour is defined by the de-
gree of imbalance that is to be minimized. The degree of imbalance is defined as:
M
SCmax − SCmin
M
DI = M
(11)
SCavg
M
SCmax : Maximum Shipping cost among all the distributors
M
SCmin : Minimum Shipping cost among all the distributors
M
SCavg : Average Shipping cost
It is noteworthy that the degree of imbalance represents the weightage of the tour
and hence, is placed in the denominator of expression that represents pheromone
updating. The singularity (i.e. situation having zero DI), or extremely low DI
may cause heavy imbalance in the quantity of pheromone to be laid. This in turn
686 Srinivas et al.
causes the algorithm to follow biased search and the problem of entrapment in
the local minima is visualized. To do away with such situations, a critical mini-
mum value of DI is set as DImin and can be incorporated in equation 4 and 5 as:
⎧
⎪
⎪Θ\DIk , if edge(i, j)is chosen in the path of ant type k,
⎪
⎪
⎨and DIk > DImin
k
ΔΓi,j = Θ\DIk + ΔΓ avg , if edge(i, j)is chosen in the path of ant type k,
⎪
⎪
⎪
⎪and 0 < DIk <=DImin
⎩
0, otherwise
(12)
ΔΓ avg :average pheromone laid by all the ants with DI > DImin
Thus, the path with extremely low/zero DI will be intensively favored and that
would cause more and more ants to choose the path. A variable array ’best-tour’
keeps the track of the best tour travelled during the search process, and variable
’best-cost’ retains the value of corresponding cost of the tour obtained. As the
number of iterations reaches the maximum allowable iterations, the algorithm
stops and best-tour along with best-cost is given as the output.
4 Case Study
In order to test the robustness of the proposed CMCAO algorithm for the bal-
anced allocation problem, the data set has been adopted from [6]. In this case
study, the firm produces chain link fences and other related hardware items.
These are distributed to a total of 21 customers across the country. Firm has
future plans to move its current distribution center to a new location in order
to avoid overlapped distribution and duplicated delivery efforts within the exist-
ing centers. It was found that seven sites are most appropriate for reallocations
that are marked as (DC1 , DC2 , ...DC7 ). The shipping costs from various distri-
bution centers to the customers can be obtained from [6]. In this illustration
firm has DC1 , DC2 , and DC3 as the potential distribution centers to which 21
customer centers are to be allocated while fulfilling the balanced allocation cri-
teria. By applying the proposed CMCAO algorithm over the undertaken data
set, the optimal/sub optimal allocation sequence obtained is given in Table 1.
The convergence of result starts on very few iterations, thus the computational
burden and CPU time have been considerably reduced. This convergence trend
is validated by the graph shown in Figure 1, between the average shipping cost
and number of iterations, for the data set. The average cost obtained for all the
distribution centers accord with the costs obtained by the implementation of
GA based strategy of Zhou [6]. When the problem size is comparatively smaller,
both the strategies, i.e. GA and CMCAO, produce the optimum solution. When
large and real size data sets with greater number of customers and distribution
centers are considered, the proposed CMCAO algorithm outperforms the GA
based application. The comparative results for the average cost, obtained by the
A CMCAO Based Approach to Efficiently Allocate Customers 687
30
29
28
27
26
25
24
23
22
10 20 30 40 50 60 70 80 90 100
number of iterations
GA based strategy and the proposed CMCAO algorithm, have been displayed
in Table 2. Here, the shipping costs are randomly and uniformly distributed in
the range of [20, 50] To assess the applicability of the algorithm performance
analysis for varying problem sizes and parameters related to the problem environ-
ment are performed. The relevant parameters are organized into four categories
namedas very small, small, medium and large data set, to have a better appraisal
of the algorithm performance. The parameter values used for the testing pur -
pose are summarized in Table 3. ’
A new parameter termed as Cost index’ has been utilized to evaluate the
performance of the algorithm. It can be mathematically defined as:
W orstcase − BestCase
Costindex = (13)
W orstcase
Where, the Worst cost and Best cost described in the equation (14) are the
shipping costs of ants with maximum and minimum cost, respectively, after
688 Srinivas et al.
100 iterations. From the denition of Cost Index, it can be envisaged that the
near optimal solution of the problem is achieved if its value is very small. The
computational results for dierent categories of data sets are provided in Table
4. The variation of Cost Index with increasing number of iterations has been
described in Figure 2
As the number of iterations increase, more and more ants tend to move on the
optimal or near optimal paths that in turn decrease the Cost Index. It is evident
from Figure 2 that Cost Index constantly decreases as the number of iterations
increase and its very low value at the later stages provide the near optimal
solution and establishes the efficacy of the proposed algorithm. Table 5 provides
the average Cost Indices for different problem sizes. A two way ANOVA without
replication was performed to assess the significance of the problem parameters.
The results of the ANOVA test are provided in the Table 6. The results obtained
by the ANOVA, prove the accuracy of the proposed algorithm to solve the
A CMCAO Based Approach to Efficiently Allocate Customers 689
0,18
0,16
0,14
0,12
0,1
0,08
0,06
0,04
0,02
0
10 20 30 40 50 60 70 80 90 100
number of iterations
Table 5. Average cost index for dierent problem size(L: Average (Cost Index) for the
smaller number of customers in the respective categories. H: Average (Cost Index) for
the larger number of customers in the respective categories)
L H Average
VS .01717 .01957 .01837
S .01413 .01658 .016005
M .02087 .02258 .021675
L .02192 .02397 .022943
28
5
Shipping Cost
26
4
Average
3
24
2
1 beta
22
0,75
20 0,5
0,25 0,75 2 10
alpha
value of α around 1 and the value of β ranging between 2-3. The relatively low
values of α and β and makes the algorithm more prone to be trapped in the local
optima, while their higher values increases the computational cost. In nutshell,
the aforementioned computational results not only authenticate the efficacy and
supremacy of the proposed strategy but also provide a new dimension to the
solution of complex allocation problems in real time.
5 Conclusion
In this paper, a new Cooperative Multi Colony Ant Optimization (CMCAO)
has been proposed to solve the balanced allocation problem. The most alluring
feature of the algorithm is its flexibility and simple structure that enables it to be
tailored in such a fashion that optimal/sub optimal solutions for the problems
of varied dimensions are achieved quite easily. The results of the exhaustive
computer simulation of the algorithm shows its out performance over GA based
strategy. Low value of cost index authenticates the optimality/sub optimality of
the results. The ANOVA test statistically validates the efficacy and robustness of
the algorithm. Also, based on these results, the use of CMCAO algorithm seems
to be promising in supporting the notion of seamless and more efficient supply
chain.
References
1. Aikens, C. H.: X Facility Location Models for distribution planning. European Jour-
nal of Operations Research,22, ( 1985) 263-279.
2. Current, J. R., Min, H., and Schilling, D. A.: Multiobjective analysis of location
decisions. European Journal of Operational Research, 49,(1990) 295-307.
A CMCAO Based Approach to Efficiently Allocate Customers 691
3. Dorigo, M., Maniezzo, V. and Colorni, A., The ant systems: optimization by a
colony of cooperative agents . IEFE-Trans. Man, Machine and Cybernatics-Part B,
26(1),(1996) 29-41.
4. Maniezzo, V. and Colorni, A., and Dorigo, M.: Algodesk: an Experimental Compari-
son of Eight Evolutionary Heuristics Applied to the Quadratic Assignment Problem,
European Journal of Operation Research, 181, (1995) 188-205
5. Kumar, R., Tiwari, M. K., Shankar, R.: Shedulingof Flexible Manufacturing Sys-
tems: an ant colony optimization approach. I. Mech. E., Part B., Journal of Engi-
neering Manufacture.,217,(2003) 1443-1453
6. Zhou Gengui, Min Hokey and Gen Mitsuo: The balanced allocation of customers
to multiple distribution centers in the supply chain network: a genetic algorithm
approach, Computers and Industrial Engineering, 43, (2002) 251-261.
Experimentation System for Efficient Job
Performing in Veterinary Medicine Area
1 Introduction
The first job-shop scheduling problems with presence of the fatigue factor were
considered by Eilon [1] in sixtieths of the former century. Since then, lot of
algorithms were developed, as there are plenty of practical issues concerning
scheduling problems, e.g. productions processes [2]. The majority of these al-
gorithms are based on polynomial and pseudo-polynomial methods [3], neural
networks [4], genetic and evolutionary approaches [5]. The problem discussed in
this paper is more sophisticated than a typical job-shop problem [6] because not
only a fatigue factor, but multi-skilled performers, random human-factor, ob-
jects dependent on processing times and other introduced factors are taken into
consideration. For the considered model of performing we propose an heuristic
priority job scheduling algorithm to minimizing the completion time. This algo-
rithm uses dispatching rules similar to those described by Panwalkar and Iskan-
der [7]. The algorithm is an element of the designed and implemented complex
experimentation system. The flexible construction of the system gives opportu-
nities for making various investigations. In this paper we focus on the work-rest
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 692–701, 2005.
c Springer-Verlag Berlin Heidelberg 2005
Experimentation System for Efficient Job Performing 693
2 Problem Statement
We have a set of n performers D = {d1 , d2 , ...dn } and a set of m objects
P = {p1 , p2 , ...pm }. In this work we used an animal clinic as a background
of a problem, thus performers and objects are meant as doctors and patients,
respectively. The clinic has its own database, which contains w defined tasks
Z = {t1 , t2 , ...tw } and r operations O = {o1 , o2 , ...or }. Each task is a sequence
of operations (with precedence constraints) to be executed by the performers
on the objects. The i-th task may be denoted as ti = {o1,i , o2,i , ...oj,i , ...ori ,i , }
where oj,i is the j-th operation in the i-th task, oj,i ∈ O (e.g. o1,2 = o3 ) and ri
is the total number of operations forming i-th task. The four groups of features
(entry sets, parameters) are distinct.
II. The Objects Features: (i) tasks to be performed on objects (ti - one per
object), (ii) object difficulty objd, and (iii) external priority ep interpreted e.g.
as a bribe paid for a patient to be served faster.
III. The Performers Features: (i) endurance en, (ii) recovery rate rr, (iii)
current level of stamina stT [0 - 100%], (iv) matrix S of levels of skills in opera-
tions and (v) the maximal allowed value of max skill val. Let k-th row of S is
Sk = {s1,k , s2,k , ...sj,k , ...sr,k }, where sj,k is level of the k-th performer’s skill in
j-th operation, 0 ≤ sj,k ≤ max skill val.
The key point of the process of performing job (tasks on the given set of objects)
is that each object needs to go through the series of operations (which forms a
task corresponded to a given object) to be executed by the performers. This
process in the real life is very complex - it is impossible to perfectly model the
influence of behaviour of human-being and disturbances, therefore we cannot
accurately predict a time of performing operation. To model this uncertainty we
introduce a random ”human-factor” denoted as rand.
For the purposes of this paper, it is assumed that: (i) each operation from
any task can be executed by any performer that is able to do it, thus one object
may be ”served” by several performers, but is being executed by only one at
the moment, (ii) each performer can work on several objects during the whole
process, but only on a fixed one at a time, (iii) a performer may be idle at some
moments, when his skills or precedence constraints don’t allow him to work, (iv)
the setup time [6] is neglected, (v) tasks are divisible (breaks between operations
are permitted), but operations are not divisible.
The time of performing the operation j on the object (patient) i by the
performer (doctor) k is expressed by (1).
stpj · objdi
Ti,j,k = · rand (1)
sj,k · stkT
1.1(cwk −f t) operd
stkT = stkT −1 − · (2)
100 enk
where stkT −1 represents stamina at previous t.u, cwk is the time of continuous
work (in t. u.) of k-th doctor. If stk < stM IN then k-th doctor is resting until:
stk > stM IN for f ull rec = 0, or stk = 100% for f ull rec = 1. Note, that
f ull rec takes into account only performers who are put to rest, not those that
are idle. When a performer is put to rest or is idle (Fig.1), he recovers his stamina.
We consider a linear recovering expressed by (3).
In this work we have chosen the f inish time (the completion time CM AX to the
whole job) as the efficiency index (the shorter, the better). Because of uncertainty
the whole performing process is non-deterministic i.e. identical entry sets of
features can result in the different completion times.
Experimentation System for Efficient Job Performing 695
Fig. 1. An example of the loss and recovery of stamina for f ull rec = 1
4 Experimentation System
The system consists of three modules: the simulator based on the model de-
scribed in Sect. 2 and the algorithm presented in Sect. 3, the input (plan of
experiment) - output (presentations of results) module and the database editor.
The system (Fig. 2) was implemented in MatLab environment, because (i) algo-
rithm contains plenty of matrix operations, for which MatLab is very efficient,
(ii) it allows easy connection with database using SQL commands. Thanks to
user-friendly graphic interface the user is able to define and modify sets D and P
and other input parameters. The scale of input sets is limited only by the size of
the screen, as the algorithm was developed for the sets of any size and structure.
The programs make also possible to record input sets and to read them later. As
the result of a single simulation we receive the work-plan for the doctors in a form
of the Gantt’s graph and information about the anticipated completion time.
The simulator can be used as a managing tool e.g. to find the best subset of
a given set of all available performers for a known set of objects. The program
generates all subsets of performers that are able to execute the required oper-
ations, and launches series (because of random factor) of simulations for each
subset, as a result it displays mean completion times for all considered subsets.
The database editor application was built in Sybase environment [11] with
using Power Builder 6.5. The application enables the user to delete/alter/create
operations and structure of tasks. In Fig. 3 the conceptual data model of the
database is presented.
Using the application as a complex experimentation system we define all the
parameters, except entry sets D and P , as they are generated randomly. Thanks
to randomly generated sets (in automatic manner) we can evaluate some global
job performing policies, useful for most cases in real situations.
Experimentation System for Efficient Job Performing 697
The generator creates the sets: Δ = {D1 , D2 , ...} - set of sets D, and Π =
{P1 , P2 , ...} - set of sets P . The user can fix the following parameters: (i) iteration
Δ = Π i.e. number of generated entry sets of performers and objects, (ii) trials
a number of trials for each pair < Di , Pi >, (iii) max perf , and (iv) max obj.
In order to generate sets P and D the following procedure was applied:
In order to eliminate an impact of rand factor we repeat trials for the same
initial conditions and then calculate mean of results (5).
1
trials
mf tji = · (CM AX ji )l (5)
trials
l=1
However, the mf tji for a given pair < Di , Pi > may be hundreds times greater
than of another pair, thus we need to normalize the results along with (6).
698 L. Koszalka and P. Skworcow
g mean
∀1≤i≤iteration ∀1≤j≤res mf t normji = mf tji · (6)
meani
1
res
meani = · mf tji , g mean = max1≤i≤iteration (meani )
res j=1
where res is the total number of elements in Δ. Finally, the efficiency index of
i-th simulation ef fi (the lower, the better) is given by (7).
1
iteration
ef fi = · mf t normji (7)
iteration j=1
Carrying out experiments for various values of the same parameter (e.g. f t
or w cont) and comparing efficiency indices ef fi of each simulation we can de-
termine the global influence (regardless of entry sets) of this parameter on the
completion time.
5 Investigations
Experiment 1. The objective was to find the subset consisting of three per-
formers chosen from a given set of n=5 performers for job associated with the
known set of objects such that the completion time (mean Cmax ) be minimal.
The features of r=28 operations defined for the animal clinic were: stan-
dard time stp=1 for j=2-9,12,14,17,19,24,27,28, stp=2 for j=1,11,13,16,18,20,22,
stp=3 forj=10,15,21,23,25,26, operation difficulties operd =1 for j=1-9,11,12,14-
17,27, operd =2 for j=10,19-22,24,28, operd =3 for j=13,25,26, and operd =4 for
j=18,23. There were distinguished w=10 tasks, their characteristics are given
as below, where the indices j of operations which form tasks are in {} brack-
ets and parameters objd and ep are in () brackets: t1 (5,5)={1,4,6,17,21,13},
t2 (1,20) = {1,4,16,17,19,11,24,22,13,12}, t3 (3,10) = {1,3,4,5,6,7,8,14,15,2},
t4 (4,0)={1,6,4,16,17,19,11,22,20,12}, t5 (3,0)={1,6,5,9,2,16,17,18,19,11,24,23,12},
t6 (2,0) = {1,16,6,5,9,25,26,12}, t7 (1,0) = {1,16,6,5,17,11,24,22,20,13,12},
t8 (1,20)={1,3,6,5,7,8,10,14,15,2}, t9 (2,5) = {1,4,6,5,7,28,16,17,11,22,13,20,12},
t10 (5,15)={1,6,5,8,14,10,9,28,12}.
Two sets of objects were considered: the first set consisted of m=8 ob-
jects (case 1) required performing associated tasks of t3 , t2 , t1 , t5 , t7 , t9 , t10 , t4
and the second set consisted of m=4 objects (case 2) which required tasks
of t3 , t8 , t6 , t5 . The performers had features en and rr as specified in brack-
ets: d1 (2,2), d2 (3,1), d3 (1,3), d4 (3,3), d5 (5,5). The matrix S of skills of per-
formers is presented in Table 1. Other parameters values were: w ep=0, ft=1,
min stamina=10%, std dev =0.1, full rec=0, w cont=0, global rr =2%. The num-
ber of simulations for each feasible subset containing three performers (team of
doctors) was equal to 100.
Experimentation System for Efficient Job Performing 699
j 1 2 3 4 5 6 7 8 9 10 11 12 13 14
d1 2 3 1 0 1 0 3 0 3 0 2 0 1 0
d2 0 2 0 3 0 1 0 1 0 2 1 3 0 2
d3 2 1 0 0 3 0 0 2 0 0 1 0 1 1
d4 0 1 2 1 2 1 2 1 2 2 2 0 3 3
d5 1 1 0 2 2 0 0 1 1 0 0 2 2 0
j 15 16 17 18 19 20 21 22 23 24 25 26 27 28
d1 2 0 2 0 3 0 3 0 3 0 1 0 2 1
d2 2 3 0 2 0 1 0 1 2 1 0 1 0 1
d3 2 2 2 2 1 3 3 1 1 1 2 2 1 0
d4 2 2 1 1 1 0 0 0 0 3 2 1 1 1
d5 0 2 2 0 0 2 0 0 0 2 2 0 0 0
The obtained results are presented in Fig. 4, on the left for case 1 and on the
right for case 2. In case 1, the team {d2 , d3 , d4 } was the best. For this subset
the estimated mean CM AX was of of 133 t.u. In case 2, the best was the team
{d1 , d2 , d3 } with mean CM AX equal to 36 t.u.
Comparing these results with input data we may observe that (i) it would be
expected that the performer d5 with the greatest en and rr becomes a member
of the best team but it isn’t, quite the contrary the performer d2 having the
lowest rr is a member of ‘winning’ teams in both cases and d5 is a member of
teams located in third (case 1) and fourth (case 2) place, (ii) the performer d4
with the average best skills (see Table 1) and relatively good features en and rr
is also not a member of the best team in case 2.
These observations and others confirm that simulation and investigation are
very useful while making decision about choosing a team of performers for job
performing.
700 L. Koszalka and P. Skworcow
Experiment 2. The objective was to find the best values of min stamina and
full rec for different global rr and to make an attempt in determining a global
work-rest policy for the model proposed.
The values of parameters were fixed as: w cont = w ep = 0, trials =
max perf = max obj = 10, f t = 1, stdev = 0.20, iteration = 500. We made
series of experiments for all possible combinations of min stamina and full rec.
We compared eff for constant full rec and various values of min stamina. In Tab.
2 the results of research i.e. the three best values of min stamina and eff cor-
responded to these values are presented. Note, that one can not compare these
values of eff, which are not in the same row of the table, as they concern differ-
ent sets of performers and objects, generated independently for each considered
global rr.
f ull rec = 0
min stamina and corresponding ef f
global rr 1th best eff 2th best eff 3th best eff
0.05% 90% 14966 80% 15383 70% 15697
0.2% 90% 3209 80% 3315 70% 3426
0.5% 90% 2354 80% 2445 70% 2560
2% 90% 865 80% 890 70% 920
5% 90% 844 80% 861 70% 885
20% 90% 480 80% 481 70% 483
f ull rec = 1
min stamina and corresponding ef f
global rr 1th best eff 2th best eff 3th best eff
0.05% 60% 24192 70% 24577 50% 25052
0.2% 90% 5766 80% 6209 70% 6319
0.5% 90% 2248 80% 2365 70% 2451
2% 90% 519 80% 530 70% 540
5% 90% 839 80% 851 70% 872
20% 90% 495 80% 497 70% 502
It may be observed, that (i) when we want to use full recovery policy (which
is easier to apply in reality causing fewer breaks during the work period), then
globally the best min stamina value is of 90% (except very slowly recovering
performers), (ii) if global rr = 20%, the differences between min stamina =
70%, 80% and 90% are not remarkable, (iii) the lower is global rr, there are more
locally worst results for globally the best arrangement of parameters, therefore
we need to be careful while planning a work-rest policy, especially for slowly
recovering performers.
Experimentation System for Efficient Job Performing 701
6 Final Remarks
The system presented in this paper seems to be very useful for investigations
concerning efficient job performing policies. The proposed model of processes
is based on the job-shop model, but is much more complex. At present, the
database is applied to veterinary clinic. However, the flexible structure of the
experimentation system allows the user to adapt the model to the required reality
by altering the database. Adjusting the parameters, the user is able to estimate
their impact on efficiency index, and to create some convenient job performing
policies.
Future work leading to development of knowledge-based decision making sys-
tem can be directed to (i) improvement of scheduling algorithm by adjusting the
weights in (4) with using learning methods [12, 13], (ii) taking into consideration
other efficiency measures, and (iii) various extensions of functions of experimen-
tation system.
References
1. Eilon, S.: On mechanistic approach to fatigue and rest periods. International Jour-
nal of Production Research, 3 (1964) 327-332
2. Geyik, F.: A hybrid frameworkfor the multicriteria production schedulins. Proc. of
International Conference of Responsive Manufacturing ICRM02 (2002) 782-788
3. Shmoys, D.B., Stein, C.: Improved approximation algorithms for shop scheduling
problems. SIAM, 23 (1994) 617-632.
4. Sabuncuoglu, I., Gurgun, B.: A neural network model for scheduling problem.
EJOR, 93 (1996) 288-299
5. Cheng, R., Gen, M.: Genetic algorithms and engineering design. New York (1997)
6. Jain, A. S., Meeran, S.: Deterministic job shop scheduling: past, present and future.
International Journal of Production Research, 36 (1998) 1249-1272
7. Panwalkar, S.S., Iskander, W.: A survey of scheduling rules. Operations Research,
25 (1997)
8. Bechtold, S.E., Thompson, G.M.: Optimal scheduling of a flexible-duration rest
period for a work group. Operations Research, 41 (1993) 1046-1054
9. Bechtold, S. E., Summers, D. E.: Optimal work-rest scheduling with exponential
work-rate decay. Management Science, 34 (1988) 547-552
10. Gola, M., Kasprzak, A.: Exact and approximate algorithms for two-criteria topo-
logical design problem of WAN with budget and delay constraits. LNCS, 3045
(2004) 611-620
11. Pozniak-Koszalka, I.: Relational databases in Sybase environment: modelling, de-
signing, applications. Wroclaw University of Technologi Press, (2004).
12. Sutton, R., Barto, A.: Reinforcement Learning. MIT Press, Cambridge, Bradford
Book (1998)
13. Wozniak, M.: Proposition of boosting algorithm for probabilistic decision support
system. LNCS, 3036, (2004) 675-678
An Anti-collision Algorithm Using
Two-Functioned Estimation for RFID Tags
1 Introduction
The Radio Frequency Identification (RFID) technology is one of the key tech-
nologies in today’s ubiquitous computing system. It is a fast, secure, and efficient
identification procedure that influences a lot of different application domains.
One application scene that we can easily imagine might at the check desk of
a supermarket. Much more complicated applications could be employed in the
areas such as auto-distribution production line and warehouse security moving
in and out check. Furthermore, this emerging technology can be deployed under
some extremely hazard circumstances where human can not reach an extreme
high temperature production process in a pharmaceutical plant, and also under
special conditions used in chip manufacturing plants which require a completely
antiseptic condition. Compared with the existing bar code system, RFID can
do everything bar codes can and much more, e.g., it does not require line-of-
sight, it can be reprogrammed easily, it can be used in harsh environment, it can
store more data, and it can read many data of tags simultaneously with high
accuracy-level[9]. With all the superiorities mentioned above and the fact that
RFID system will decrease to a relatively low price, we might anticipate RFID
could be a good solution in object identification and tracking material status
under a ubiquitous computing environment.
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 702–711, 2005.
c Springer-Verlag Berlin Heidelberg 2005
An Anti-collision Algorithm Using Two-Functioned Estimation 703
2 Related Works
The previous works could be classified into two different approaches: one is based
on deterministic model, and the other is probability model. The deterministic
method has been discussed in some papers, like Marcel Jacomet’s work[6]. His
algorithm used a bit-wise arbitration model during the identification phase of the
target device. In Weis’s paper[4], he showed one deterministic algorithm based
on the binary-tree walking scheme. Christian Floerkemeier’s research gave some
illustrations of the sources of error by some already existing methods which deal
with the collision problem[7]. He also pointed out how to make a system more
appropriate to handle this multiple identifying situation.
The probability approach has been performed specifically to solve collision
problem of RFID tags, which is related to our works. In Sarma’s research work[2],
704 J. Zhai and G.-N. Wang
it gave a clear definition of tags collision and discussion of difficulties to solve the
problem. Moreover, they pointed out probabilistic algorithms were mainly based on
theAlohaschemepresentingtheperformancemetricsoftheanti-collisionalgorithm.
There was one project which is very similar to our research work, the Vogt’s paper[5].
He also gave an anti-collision algorithm based on the probabilistic method, and
his algorithm only employed one simple estimation function to compute the tags
number, which could be inaccurate from our research results. An attempt is given to
improve the previous Vogt’s work by presenting complementarily two-functioned
estimation, which possibly the previous improper points could be corrected or
improved by our approach.
Fig. 1. An illustration of Framed Aloha reading process. After four reading cycles, all
the data can be read correctly by the reader
An Anti-collision Algorithm Using Two-Functioned Estimation 705
Using (1), we can compute the probability that t numbers of tags are definitely
occupied in one slot.
4 Parameters Estimation
In a lot of identification applications, the exactly tags number is unknown at the
beginning. We propose parameter estimation functions in order to estimate the
tags number. For having done this, we assume that after each reading cycle, we
can check the reading performance by three parameters: (C0, C1, Ck)[5]. C0: the
number of slots that the slot is empty. C1: the number of slots that the slot is
occupied by only one tag. Ck: the number of slots that the slot is collided by
several tags: a collision occurs.
706 J. Zhai and G.-N. Wang
function [c0,c1,ck]=getc(sn,tn)
c0=sn*((1-(1/sn))^tn);
c1=tn*((1-(1/sn))^(tn-1));
ck=sn-c0-c1;
End
Given typical sn, tn value, we can attain some useful numerical data of expected
(C0, C1, Ck) shown in Fig. 2.
The Chebyshev’s inequality indicated that the outcome of a random exper-
iment involving a random variable is most likely somewhere near the expected
outcome value. Therefore, the way to use these data is to compute more expected
value of (C0, C1, Ck) by more possible tags number, e.g. tn= 1 to 400 step 1.
Then make an expected outcome value table similar to the tables shown in Fig.
2. After each reading cycle, we could compare the experiment result value of (C0,
C1, Ck) with the expected outcome value table. By choosing the value which has
the smallest wrong-weight, we can attain the estimated sn, tn value finally.
Another method to use this function is to choose a suitable sn value at the
beginning. Because there are five variables in (4), after getting a check result (C0,
C1, Ck), we can easily compute the last variable tn in this function.
Fig. 2. Some typical expected value of (C0, C1, Ck) by given certain tn and sn
Fig. 3. The upper table shows the expected result employing the first estimation
function, and the below table is the wrong-weight computed by (5). We divide the
accuracy by 0.95
second function when the accuracy of the first function falls below 0.95. Moreover,
we can obtain, when the value of sn is 256, the accuracy-level will below 0.95
after 170 tags which is not shown in the table.
After using the estimation functions rightly to compute the tags number, we
might hope to adapt the sn value again by the newly tn value for better identifying
performance. By the data shown in Fig. 2, we can compute the successful reading
slot rate by:
the successf ul reading slot number
the successf ul reading rate = (6)
slot number
From Fig. 4, we can find out the highest successful rate is usually around 0.37
which is very close to the maximum throughput of Aloha protocol. If we look
over the data by each column, we can figure out the best frame size for each tn
value, e.g. when tn is 10 or 20, the best sn value are both 16. Based on more data
computed and much more research works, as well as considering the reading time
factor of different sn value, we give the table below for adapting sn value:
We will not consider the condition that the sn value is smaller than 16 or
bigger than 256, because it makes no sense in practical usage.
At present, by the data and functions discussed above, we are going to pro-
pose our complementarily two-functioned estimation algorithm. The algorithm
assumes that the tags set in the interrogation zone is static, which means after
An Anti-collision Algorithm Using Two-Functioned Estimation 709
sn 16 32 64 128 256
low 1 16 31 61 121
high 15 30 60 120 ∞
a set of tags entering the reading field they must stay in that area until all tags
have been identified within our expected accuracy-level. No tags are allowed to
either enter or exit during the reading process. The state diagram of the reading
process is shown in Fig. 5.
Firstly, we set the starting sn value by the middle one 64, and run a reading
cycle to get the performance feedback (C0, C1, Ck). Then we use the first
estimation function to compute tn value and check its accuracy-level by the data
shown in Fig. 3. If it is a satisfied result, we use this tn value to choose a best-fit
sn size and output the result. If it is not, we have to substitute the first estimation
function by the second one and also resize sn by newly tn value.
After having done the above process, we have already got satisfied sn, tn value
and could end the process. Yet for much better accuracy, we could take further
consideration. For doing this, we might run the estimation process again after
adapting best-fit sn value. However, most applications reluctantly waste another
reading cycle time, so usually the process ceases after just running one reading
cycle.
We use the function below and Table 1 to adapt the value of sn by a new tn
value. Because sn value starts by 64, the function need checking twice whether it
has to decrease or increase the value of sn in order to reach every possible value.
function [sn]=adaptsn(sn,tn)
if (tn<low(sn)) then sn=sn/2
if (tn<low(sn)) then sn=sn/2
if (tn>high(sn)) then sn=sn*2
if (tn>high(sn)) then sn=sn*2
end
710 J. Zhai and G.-N. Wang
6 Conclusion
We have demonstrated a complementarily two-functioned estimation algorithm
for identifying multiple passive RFID tags synchronously. The mathematical
issues required for this method has been well discussed in this paper. Further-
more, we presented two estimation functions for computing the unknown tags
number and the best fit slots number which may give contribution to other
anti-collision methods as well. Finally, we proposed an advanced algorithm for
identifying passive tags. Illustrative numerical examples are given to verify that
the proposed two-functioned estimation algorithm could be utilized efficiently.
With the consolidated mathematical basis and the high precise level of our
estimation method we proved either by formula or by data, we could make a
conclusion that the method shown in our paper will definitely work well and
An Anti-collision Algorithm Using Two-Functioned Estimation 711
References
1. Klaus Finkenzeller: RFID Handbook: Fundamentals and Applications in Contact-
less Smart Card and Identification. Second Edition. John Wiley & Sons. (2002)
206–211
2. Sanjay E. Sarma, Stephen A. Weis, and Daniel W. Engels: RFID Systems and
Security and Privacy Implications. CHES 2002, LNCS 2523 (2003) 454–469
3. Amit Goyal: Technical Report: Savant Guide. Auto-ID Center MIT. (2003)
4. Stephen A. Weis, Sanjay E. Sarma, Ronald L. Rivest and Daniel W. Engels:
Security and Privacy Aspects of Low-Cost Radio Frequency Identification Systems.
Security in Pervasive Computing 2003, LNCS 2802 (2004) 201–212
5. Vogt, H.: Multiple object identification with passive RFID tags. Systems, Man and
Cyber-netics, 2002 IEEE International Conference on, Volume: 3 Oct. (2002) 6–9
6. Marcel Jacomet, Adrian Ehrsam, and Urs Gehrig: Contactless Identification Device
With Anticollision Algorithm. University of Applied Science Berne, Switzerland
7. Christian Floerkemeier and Matthias Lampe: Issues with RFID usage in ubiquitous
comput-ing applications. PERVASIVE 2004, LNCS 3001 (2004) 188–193
8. Rajeev Motwani and Prabhakar Raghavan: Randomized Algorithms. Cambridge
University Press. (1995)
9. Susy d’Hont: The Cutting Edge of RFID Technology and Applications for Manu-
facturing and Distribution. Texas Instrument TIRIS
A Proximal Solution for a Class of Extended
Minimax Location Problem
1 Introduction
The aim of this paper is to propose a proximal approach for solving an important
class of minimax continuous location problems which in particular contains the
round trip location problem [1] and the weighted extended minimax location
problem with set up costs [2]. The round trip location problem consists in finding
the location of a new facility so that the maximum weighted round trip distance
between the new facility and n pairs of existing facilities (or demand points) is
minimized. We mean by round trip distance the total distance travelled starting
from the new facility via a pair of existing facilities and going back to the new
facility. As example, A.W.Chan and D.W. Hear consider the location of a delivery
service. Customers have goods to be delivered from warehouses to retail stores
and the objective is to minimize the maximum delivery time.
The extended minimax location problem considered by Drezner [2] is a gener-
alization of the single facility minimax location problem. We want to locate two
new facilities such that the maximum trip distance via n fixed existing facilities
(or demand points) is minimized. Here we mean by trip distance the total dis-
tance travelled starting from the first new facility via a demand point and going
back to the second new facility. As suggested application Drezner considers the
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 712–721, 2005.
c Springer-Verlag Berlin Heidelberg 2005
A Proximal Solution for a Class of Extended Minimax Location Problem 713
problem of locating emergency hospital services. The total time for dispatching
an ambulance and bringing the patient to the hospital consists of the travel time
of the ambulance, some set up cost time and travelling back to the hospital. The
problem is to shorten the response time for the farthest customer. Observing
that placing the ambulance service on the hospital may not be optimal Drezner
proposes to consider a priori different sites for the hospital and the ambulance
station. Since the time the ambulance takes to get to the patient and the time it
takes to bring the patient to the hospital have not the same importance Drezner
also suggests different measures of distance for outward journey and journey
back. That justifies the use of different norms or gauges.
In our model we are faced to new facilities the locations of which should be
optimaly determined via a min-max criterion. It is well known that min-max
criteria induce nondifferentiability in optimization problems. In the framework
of continuous location analysis, this nondifferentiability is also due to the fact
that a norm is never differentiable at the origin and to the (possible) use of poly-
hedral norms such as the
1 norm, the Tchebychev norm, etc. The nondifferen-
tiability prevents the use of standard optimization methods and leads to solving
problems by adapted procedures. Algorithms based on linear programming have
already been developed for round trip problems involving the rectilinear norm
[4]. Drezner proposed to solve unconstrained round trip location problems by a
trajectory approach. Other procedures like those explained in [3] have also been
studied. All these approaches are not completely satisfactory in particular be-
cause they often cannot be extended to problems involving mixed norm and/or
non linear constraints. The aim of this paper is to investigate the interest of
considering proximal procedures, like those developed in [5], and which exploit
in depht the very special structure of minimax location problems.
A major technical difficulty which frequently arises when one wants to imple-
ment proximal algorithms is the computation of the proximal iteration. We will
show that this difficulty can be overcome by working on an equivalent decom-
posable formulation of the problem. The idea is to incorporate the non linear
constraints in the objective function via penalization terms, to split the objective
function in independent terms and to handle by duality all the original linear
constraints and the linear relations induced by the splitting. The role of the
splitting is to decompose the objective function as a sum of independent terms
in such a way the proximal mapping associated to the subdifferential of each
term can be effectively and easily computed. This can be done by several tricks
as duplication of some variables and alternative representation of certain convex
functions. The original linear constraints as well as the linear relations induced
by the splitting are conserved as constraints because they can be easily treated
by Fenchel duality. Another fact which often militates against the use of proxi-
mal procedures is the slow rate of convergence. This second difficulty cannot be
completely eliminated. However, as already observed in [5] proximal procedures
seem to perform rather well on location problems and their efficiency can be
significantly improved by a judicious scaling on the data. These procedures have
also important advantages, as robustness and stability. Their use allows a great
flexibility in using mixed norms and different types of (convex) constraints.
714 O. Cornejo and C. Michelot
3 Problem Transformation
As explained in the introduction we will reformulate the problem with the aim
of splitting the objective function as a sum of independent terms. Noting that
our model is in fact a single minimax facility location problem involving super-
facilities Ai = (a1i , a2i ) ∈ IR4 which gather two elementary facilities a1i ∈ IR2
and a1i ∈ IR2 , the first idea which comes to our mind is to use the classical
reformulation of minmax problems which consists in rewriting the problem as
the one of finding a point (X, α) in the epigraph of the objective function and
with lowest height α. Proceeding that way and duplicating the variables X and
α with a number of copies equal to the number of fixed superfacilities Ai , one
could easily obtain a decomposable reformulation of our original problem. Ad-
ditional copies of X can be introduced to decompose nonlinear constraints, if
necessary. However, and according to what is explained in the next section, our
proximal approach leads to compute series of projections on the epigraphs of
the norms used and thus would lead to serious technical difficulties due to the
structure of these norms. Efficient routines for computing the projection on the
epigraph of a norm can be developed when the structure of the unit ball is well
known, as for Euclidean norms,
p norms or polyhedral norms for which the
extreme points of their unit ball are accessible. Unfortunately, in a modelling
phase one generally controls the choice of γi1 and γi2 whose structure can thus
A Proximal Solution for a Class of Extended Minimax Location Problem 715
be assumed to be well known, but we do not control the choice of the γi ’s which
are only known via their analytical expression γi (X) = γi1 (x1 ) + γi2 (x2 ). This is
the main reason why a more subtle reformulation based on the following obser-
vation is required. An equivalent formulation of a minimax problem of the form:
minimize max1≤i≤n fi1 (x) + fi2 (x); x ∈ IRn , is given by
⎧
⎪
n
⎪
⎪Minimize 1
(αi1 + αi2 )
⎪
⎨ n
PB
i=1
⎪
⎪fir (x) ≤ αir , i = 1, 2, . . . n; r = 1, 2
⎪
⎪
⎩ 1
α1 + α12 = α21 + α22 = · · · = αn1 + αn2 .
Now, it is not difficult to prove that problem P and problem PB are equivalent
in the following sense:
• If x̄ is optimal for P then any pair (x̄, ᾱ) such that fi1 (x̄) ≤ ᾱi1 , fi2 (x̄) ≤ ᾱi2
and ᾱi1 + ᾱi2 = ξ¯ with ξ¯ = maxi (fi1 (x̄) + fi2 (x̄)) is optimal for PB.
• If (x̄, ᾱ) is optimal for PB then x̄ is optimal for P .
One can also observe that the non linear constraints of the transformed problem
can be expressed in geometrical form as (x, αi1 ) ∈ Epi fi1 and (x, αi2 ) ∈ Epi fi2 .
Using this transformation one easily obtains the following equivalent version of
our original minimax location problem
⎧
⎪ n
⎪
⎪ Minimize n1 (αi1 + αi2 )
⎪
⎪
⎪
⎪
⎪
⎪
i=1
⎨ (xr − ari , αir − c2i ) ∈ Epi γir , i = 1, 2, . . . n; r = 1, 2
⎪
⎪ xr ∈ Ωjr , j = 1, 2, . . . , mr ; r = 1, 2
⎪
⎪
⎪
⎪ α11 + α12 = α21 + α22 = · · · = αn1 + αn2
⎪
⎪
⎪
⎩ 1 2
(x , x ) ∈ Ω ∩ L.
This new formulation still contains nonlinear constraints which remain coupled.
A classical trick to obtain a complete decomposable problem is to duplicate the
variables x1 and x2 with the additional (linear) condition that the copies x1i of x1
(resp. x2i of x2 ) should be equal. Another trick which facilitates the construction
of a Fenchel duality scheme is to conserve only the linear relations as constraints
and to incorporate the nonlinear one in the objective function as penalization
terms. This can be done by adding to the objective the indicator functions of
the nonlinear constraint sets. The new formulation, has a completely separable
convex objective function made up of independent terms and has only linear
constraints. This reformulation of the original problem immediately induces a
Fenchel dual which has a similar and symmetrical form (see [9]).
716 O. Cornejo and C. Michelot
⎧
⎪ n
ci n
ci
⎪Minimize
⎪ [ ai , pi − λi ] +
1 1
[ a2i , p2i − λi ]
⎪
⎪
⎪
⎪ 2 2
⎪
⎪
i=1 i=1
⎪
⎪
m 1
m 2
⎪
⎨ + ψΩ∗ 1
1 (pn+j ) +
∗
ψΩ 2 ∗ 1 2
2 (pn+j ) + ψΩ (p0 , p0 )
j j
j=1 j=1
⎪
⎪
⎪
⎪ (γir )0 (pri ) ≤ λi , i = 1, 2, . . . , n; r = 1, 2
⎪
⎪
⎪
⎪
⎪
⎪ n 1
n+m 2
n+m
⎪
⎪ λi = 1; ( p1i , p2i ) ∈ L⊥
⎩
i=1 i=0 i=0
From this duality scheme we can directly deduce the (primal-dual) optimality
conditions. These conditions are of two types, a first set of five conditions which
are nonlinear and define a maximal monotone operator T and the remaining
conditions which gather the (linear) primal and dual constraints and define two
complementary linear subspaces respectively denoted by A and A⊥ . Note that
the maximality and monotonicity of T directly follows from the fact that these
nonlinear conditions are governed by normal cones hence by subdifferentials.
5 Resolution Method
5.1 The Proximal Solution Procedure
Solving the optimality conditions amounts to finding a pair [(x, α), (p, β)] in the
graph of the maximal monotone operator T as defined previously and in the
product A × A⊥ formed by the linear primal and dual constraints. This task can
be done by the partial inverse method introduced by J. Spingarn [11]. Indeed,
according to [11] [(x, α), (p, β)] satisfies the optimality conditions if and only
if the sum (x, α) + (p, β) is a zero of the partial inverse TA of T with respect
to A (or equivalently of the partial inverse TA−1 ⊥ of T
−1
with respect to A⊥ ).
The partial inverse operator TA being also maximal monotone (see [11]) one can
apply the proximal point algorithm [10] to generate a zero z of TA and subse-
quently project z onto A and A⊥ to rediscover a primal solution (x, α) and a
dual solution (p, β). This procedure has been called Partial inverse Method by
Spingarn. The partial inverse TA is not directly accessible but only given via
its graph (see [11]). However, one can express without difficulty the proximal
mapping associated with TA in terms of T , A and A⊥ . Roughly speaking, the
procedure consists in alternately projecting on the graph of T and on the prod-
uct A × A⊥ . Actually, the graph of T being non convex, the usual orthogonal
A Proximal Solution for a Class of Extended Minimax Location Problem 717
and a projection onto Aα = {α; α11 + α12 = α21 + α22 = · · · = αn1 + αn2 }.
The orthogonal projection on Aα can be explicitly computed. Indeed, the
linear subspace Aα can be described as Aα = {α; M α = 0} where M is an (n −
1) × 2n matrix. Since the inverse of (M M T ) is explicitly given by (M M T )−1 =
2n [nIn−1 − 1ln−1 ] where In is the n × n identity matrix and 1ln is the n × n
1
718 O. Cornejo and C. Michelot
matrix whose all elements are equal to 1, thus the projection matrix is equal to
P = I2n − M T (M M T )−1 M.
Proximal phase:
1. for i = 1, 2, . . . , n and r = 1, 2, calculate
r(k) r(k) r(k) r(k) (k)
(x̃i , α̃i ) = (ari , c2i ) + ProjEpi γir (xr(k) + pi , αi + βi )
2. for j = 1, 2, . . . , mr and r = 1, 2, calculate
r(k) r(k)
x̃n+j = ProjΩjr (xr(k) + pn+j )
1(k) 2(k) 1(k) 2(k)
3. calculate (x̃0 , x̃0 ) = ProjΩ (x1(k) + p0 , x2(k) + p0 )
Projection phase:
1
n+m
1(k)
2
n+m
2(k)
1. calculate (x̄1 , x̄2 ) = ( n+m11 +1 x̃ , n+m12 +1 x̃ )
=0 =0
2. calculate (x1(k+1) , x2(k+1) ) = ProjL (x̄1 , x̄2 )
1 1(k)
n+m 2 2(k)
n+m
3. calculate (p̄1 , p̄2 ) = ( n+m11 +1 p̃ , n+m12 +1 p̃ )
=0 =0
4. calculate (p̂1 , p̂2 ) = ProjL (p̄1 , p̄2 )
5. for i = 1, 2, . . . , m1 and for j = 1, 2, . . . , m2 , calculate
1(k+1) 1(k) 2(k+1) 2(k)
pi = p̃i − p̂1 and pj = p̃j − p̂2
6. for i = 1, 2, . . . , n, calculate
1(k+1)
n
1(k) 2(k) 1(k) 2(k)
αi = 1
2n (α̃ + α̃ ) + 12 (α̃i − α̃i )
=1
and
2(k+1)
n
1(k) 2(k) 2(k) 1(k)
αi = 1
2n (α̃ + α̃ ) + 12 (α̃i − α̃i )
=1
7. for i = 1, 2, . . . , n, calculate
(k+1)
n
1(k) 2(k) 1(k) 2(k)
βi = − 2n
1
(β̃ + β̃ ) + 12 (β̃i + β̃i )
=1
A Proximal Solution for a Class of Extended Minimax Location Problem 719
We used the relative error as stopping rule, that is, z k+1 − z k /z k < and
the value of was fixed to 10−7 . This stopping rule was defined on the product
space, thus, we have z k = (x + p, α + λ) = (x, α) + (p, λ) as the current point,
and z k+1 as the new point, which lead us to z k+1 = (x+ + p+ , α+ + λ+ ). Some
results in the particular case of the round-trip problem are presented below,
where both the Euclidean and the L1 norms were used. The tables that we
show below summarize the performance of algorithm where we use the following
notation:
NumFac : Number of fixed facilities n
INP : Initial point x0 = (x1(0) , x2(0) )
Nit : Number of iterations of algorithm
VarDual : Number of dual variables different zero
Par : Optimal value parameters (τ, η)
fp : Optimal value primal objective function
fd : Optimal value dual objective function
Initially the dual variables are set to zero. Without scaling on the data, conver-
gence needs more iterations i.e. τ and η equal to one the algorithm was stopped
when the maximum iteration count was reached (IT M AX = 10000). For this
Table 1. Norm L2
Table 2. Norm L1
(a) (b)
(c) (d)
define the objective function of the problem. The numerical results obtained so
far show that when convergence is achieved, almost all the dual variables are
zero. Our main interest are precisely those dual variables that do not converge
to zero, since these will determine the active constrains at the optimum, as it
can be seen in the above tables.
Figure 1, (a), (b) and (c) shows the relationship between the iteration num-
ber and the value of the parameters. Since these surfaces were obtained plotting
empirical data, it would be of extremely useful to determine an analytical ex-
pression relating parameter values with convergence speed, which will lead to
the problem of finding an optimal value for the set of parameters, achieving
maximum convergence speed. Figure 1 (d) shows the relationship between CPU
time and the number of facilities. It can be seen that for n ≥ 30, the algorithm
performance was very high, whereas for greater values of n, the convergence
speed decreased notoriously.
In order to enlarge the performance evaluations of the above mentioned al-
gorithm, we can consider a combination of different types of norms. This test is
proposed as future work. Another important issue is the parallel computation
schemes which have shown to be very efficient particularly in the resolution of
numerical problems where the main task can be split up into smaller ones, which
is the case of the problems that have been treated in this work.
References
1. Chan, A.W., and Hearn, D.W. (1977) A rectilinear distance round-trip location
problem, Transportation Science 11, 107–123.
2. Drezner, Z. (1991) The weighted minimax location problem with set-up costs
and extensions, Recherche Opérationnelle/Operations Research 25, 55–64.
3. Frenk, J.B.G., Gromicho, J. & Zhang, S. (1996) General models in min-max
continuous location: theory and solution techniques. Journal of Optimization The-
ory and Applications 89, 39–63.
4. Ichimori, T. and Nishida, T. (1985) Note on a rectilinear distance round-trip
location problem, Transportation Science 19, 84–91.
5. Idrissi, H., Lefebvre, O. and Michelot, C. (1988) A primal-dual algorithm for
a constrained Fermat-Weber problem involving mixed gauges, RAIRO Operations
Research 22, 313-330.
6. Mifflin, R.(1974) A stable method for solving certain constrained least squares
problems, Mathematical Programming 16, 141–158
7. Plastria, F. (1995a) Continuous location problems. In Drezner, Z. (Ed.), Fa-
cility Location: A Survey of Applications and Methods (pp. 225–262). New York:
Springer-Verlag.
8. Plastria, F. (1995b) Fully geometric solutions to some planar minimax location
problems. Studies in Locational Analysis 7, 171–183.
9. Rockafellar, R.T. (1970) Convex Analysis, Princeton, New Jersey: Princeton
University Press.
10. Rockafellar, R.T. (1976) Monotone operators and the proximal point algo-
rithm”, SIAM Journal on Control and Optimization 14, 877-898.
11. Spingarn, J.E. (1983) Partial inverse of a monotone operator, Applied Mathemat-
ics and Optimization 10, 247-265.
A Lagrangean Relaxation Approach for
Capacitated Disassembly Scheduling
1 Introduction
Disassembly, one of the basic material and product recovery processes, repre-
sents a way of obtaining constituent materials, parts, subassemblies, or other
groupings from used or end-of-life products with necessary sorting operations.
Due to environmental and economic reasons, a number of manufacturing firms
have been paying considerable attention to disassembly. Meanwhile, a number
of research works have been done on various disassembly areas such as design
for disassembly, disassembly process planning, disassembly scheduling, etc. For
literature reviews on these problems, see Lee et al. [3].
This paper focuses on the problem of determining the quantity and timing
of disassembling (used or end-of-life) products in order to satisfy the demand
of their parts or components over a planning horizon, which is called disassem-
bly scheduling in the literature. Most previous research articles on disassembly
scheduling consider uncapacitated problems. Gupta and Taleb [1] suggest a re-
versed form of the material requirement planning (MRP) algorithm without an
explicit objective function. Recently, Lee and Xirouchakis [5] suggest a heuristic
algorithm for the objective of minimizing various costs related with the disas-
sembly process. For more extended problems with parts commonality and/or
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 722–732, 2005.
c Springer-Verlag Berlin Heidelberg 2005
A Lagrangean Relaxation Approach for Capacitated Disassembly Scheduling 723
multiple product types, see Kim et al. [2], Lee et al. [4], Neuendorf et al. [7],
Taleb and Gupta [8], and Taleb et al. [9]. Unlike these, Lee et al. [6] consider
the resource capacity constraints explicitly and suggest an integer programming
model with various cost factors occurred in disassembly processes. Although the
model can give optimal solutions, its application is limited only to the small
sized problems. In fact, the computational results show that it is not adequate
for practical sized problems due to its excessive computation times.
This paper focuses on the capacitated problem for the case of single product
type without parts commonality. The objective is to minimize the sum of setup,
disassembly operation, and inventory holding costs. This paper extends the re-
search result of Lee et al. [6] with respect to two points. First, we consider the
fixed setup costs incurred whenever disassembly operations are done over the
planning horizon. Second, as pointed out in further research in Lee et al. [6], we
suggest a Lagrangean heuristic algorithm that can give near optimal solutions
up to large sized problems within a reasonable amount of computation time.
2 Problem Description
This section begins with explaining the disassembly product structure. Its root
item represents the product to be disassembled and the leaf items are the parts
or components to be demanded and not to be disassembled further. A child item
denotes an item that has one parent and a parent item is an item that has more
than one child item. Note that each child item has only one parent in the problem
considered in this paper, i.e., the problem without parts commonality. Figure 1
shows an example of the disassembly product structure obtained from Gupta
and Taleb [1]. The number in parenthesis represents the yield of the item when
its parent is disassembled. Also, the disassembly lead time (DLT) of a parent
item implies the total time required to receive the item after placing an order of
disassembling the item.
6 7 8 9 10 11 12
(3) (1) (2) (2) (3) (3)
(2)
3 DLT = 0 4 DLT = 2 5 DLT = 1
(4) (1) (4)
disassembly
2 DLT = 1 lead time
(2) yield from its parent
1 DLT = 1
of leaf items over a planning horizon while satisfying the capacity restriction
in each period of the planning horizon. The capacity restriction of a period is
considered in the form of a limit to assign in a disassembly operations to that
period. That is, there is an upper limit on the available time in each period of the
planning horizon, and each disassembly operation assigned to a period consumes
a portion of the available time of that period. The objective is to minimize the
sum of setup, disassembly operation, and inventory holding costs. The setup cost
implies the cost required for preparing the corresponding disassembly operation.
It is assumed that the setup cost occurs in a period if any disassembly oper-
ation is performed in that period. The disassembly operation cost is the cost
proportional to the labor or machine processing time required for performing
the corresponding disassembly operation, and the inventory holding cost occurs
when items are stored to satisfy future demand, and they are computed based
on the end-of-period inventory.
Assumptions made in this problem are summarized as follows: (a) demand of
leaf items is given and deterministic; (b) backlogging is not allowed and hence
demands are satisfied on time; (c) parts/components are perfect in quality, i.e.,
no defective parts/components are considered; and (d) each disassembly opera-
tion is done in one and only one period and cannot be done over two or more
periods.
To describe the problem mathematically, we present an integer programming
model. In the model, without loss of generality, all items are numbered with
integers 1, 2, . . . il , . . . N , where 1 and il denote the indices for the root item
and the first leaf item, respectively. The notations used are summarized below.
Parameters
si setup cost of parent item i
pi disassembly operation cost of parent item i
hi inventory holding cost of item i
gi disassembly operation time of parent item i
Ct capacity in period t
dit demand of leaf item i in period t
aij number of units of item j obtained by disassembling one unit of
item i (i < j)
Ii0 initial inventory of item i
li disassembly lead lime of item i
ϕ(i) parent of item i
M arbitrary large number
Decision variables
Xit amount of disassembly operations of item i in period t
Yit = 1 if there is a setup for item i in period t, and 0 otherwise
Iit inventory level of item i at the end of period t
Now, the integer program is given below.
l −1
i T l −1
i T
N
T
[P1] Minimize si · Yit + pi · Xit + hi · Iit
i=1 t=1 i=1 t=1 i=2 t=1
A Lagrangean Relaxation Approach for Capacitated Disassembly Scheduling 725
The objective function denotes the sum of setup, disassembly operation, and
inventory holding costs. Constraints (1) and (2) define the inventory level of
non-root items at the end of each period, called the inventory flow conservation
constraint. Note that no inventory flow conservation constraint is needed for the
root item since its surplus-inventory of the root item results in unnecessary cost
increase. Also, constraint (3) represents the capacity constraint in each period.
That is, the total time required to perform the disassembly operations assigned
to each period should be less than or equal to the given time capacity of that
period. Constraint (4) guarantees that a setup cost in a period is incurred if any
disassembly operation is performed at that period. Constraints (5), (6), and (7)
represent the conditions on the decision variables.
3 Solution Algorithm
Before explaining the heuristic algorithm suggested in this paper, we reformu-
late the original problem [P1] as another integer program so that the Lagrangean
relaxation technique can be applied more effectively. Then, the Lagrangean re-
laxation heuristic algorithm is presented, together with a method to find good
feasible solutions while considering the trade-offs among the relevant costs.
t
t
aik · Xij ≥ Qk,j+li − Ik0
j=1 j=1
for i = 1, 2, . . . il − 1, k ∈ H(i), and t = 1, 2, . . . T (7 )
Hereafter, the above constraint is called the demand constraint since it can used
to represent the demand requirements in the reformulation.
In the second step, we add a new demand constraint that the disassembly
quantity of a parent should be at least more than or equal to the demand of
its leaf items. To explain this, let L(i) and P (i, j) denote the set of leaf items
among successors of parent item i and the path from parent item i to leaf item j,
respectively. For example, L(2) = {8, 9, 10, 11, 12} and P (2,12) = 2 → 5 → 12
in Figure 1. Then, the new demand constraint for item i in period t can be
represented as
t t
Xij ≥ e
Dij − Aei0 + Ii0 for e ∈ L(i) (9)
j=1 j=1
e
where Dit
and Aei0 ,
associated with leaf item e, denote the transformed demand
and the transformed initial inventory of item i in period t, respectively. More
specifically,
e
Dk,t+l
e
Dit = i e
, Det = det for k ∈ H(i) ∩ P (i, e), and
aik
Ae
Aei0 = k0 + Ii0 , Aee0 = Ie0 for k ∈ H(i) ∩ P (i, e).
aik
Then, the constraint (9) is further changed into
⎧ ⎫
t ⎨ t ⎬
Xij ≥ max e
Dij − Aei0 + Ii0
e∈L(i) ⎩ ⎭
j=1 j=1
for i = 1, 2, . . . il − 1 and t = 1, 2, . . . T (10)
since the demand requirement of each of the items in L(i), i.e., leaf items among
successors of parent item i, can be satisfied by disassembling item i to the max-
imum amount to satisfy the demand requirements of all the leaf items in L(i).
Now, the integer program [P1] can be reformulated as follows.
l −1
i T l −1
i T
[P2] Minimize si · Yit + cit · Xit
i=1 t=1 i=1 t=1
s.t. (3) – (6), (7 ), and (10)
In the reformulation [P2], the new constraint (10) does not affect the optimal
solution since all demand requirements can be satisfied with only constraint
(7 ). However, it is added to the reformulation because we design the solution
algorithm to satisfy the demand requirements after the constraint (7 ) is relaxed.
In fact, our algorithm is based on the relaxation of the constraints (7 ) and (3),
and hence there is no way to satisfy demand requirements of leaf items in the
relaxed problem without the constraint (10).
A Lagrangean Relaxation Approach for Capacitated Disassembly Scheduling 727
where λikt and μt are the Lagrangean multipliers corresponding to (7 ) and (3),
respectively. Then, the relaxed problem is summarized in the following:
i −1 T )
l l −1
i T
[LR] Z(λ, μ) = min si · Yit + vit · Xit + F
i=1 t=1 i=1 t=1
s.t. λikt ≥ 0 for i = 1, 2, . . . il − 1, k ∈ H(i), and t = 1, 2, . . . T
μt ≥ 0 for t = 1, 2, . . . T
and (4) – (6) and (10)
where λ and μ denote the vectors representing the Lagrangean multipliers,
T T
vit = cit + μt · gi − aik · λikj + λϕ(i),ij and
k∈H(i),k∈L(i)
/ j=t j=t−lϕ(i)
⎧ ⎫
T ⎨
l −1
i
t ⎬
T
F = λikt · dk,j+li − λikt · Ik0 − μt · Ct .
⎩ ⎭
i=1 t=1 k∈H(i)∩L(i) j=1 k∈H(i) t=1
Here, the term F is a constant and can be removed without further considera-
tion.
The relaxed problem [LR] can be decomposed into the following mutually
independent subproblems [SPi ], i = 1, 2, . . . il − 1.
T
T
[SPi ] Minimize si · Yit + vit · Xit
t=1 t=1
⎧ ⎫
t ⎨t ⎬
s.t. Xij ≥ max e
Dij − Aei0 + Ii0 for t = 1, 2, . . . T (11)
e∈L(i) ⎩ ⎭
j=1 j=1
Z̄ − Z(λ∗ , μ∗ )
αw = δw · %
il −1 % %T /%t ∗ ∗
0 (14)
i=1 k∈H(i) t=1 j=1 (aik · Xij − Qk,j+li ) + Ik0
Z̄ − Z(λ∗ , μ∗ )
βw = δw · % /% 0 (15)
T il −1 ∗
t=1 i=1 gi · Xit − Ct
where Z̄ is the best upper bound, λw and μw denote the vectors of the La-
grangean multipliers at iteration w, and δw , 0 ≤ δw ≤ 2, is a constant.
Now, we explain the Lagrangean heuristic that makes the solution of the
relaxed problem [LR] feasible. To obtain a feasible one (upper bound) using the
solution of the relaxed problem, first, we generate a solution feasible to demand
constraints, and then, we generate a solution feasible to capacity constraints.
To generate a solution feasible to the demand constraint (7 ), we solve another
subproblem recursively from parent item il − 1 to the root item 1 using the
algorithm suggested by Wagelmans et al. [10]. In the subproblem, the following
constraint is used instead of (11) in [SPi ]:
%t
t
j=1 Qk,j+li − Ik0
Xij ≥ max for t = 1, 2, . . . T
j=1
k∈H(i) aik
A Lagrangean Relaxation Approach for Capacitated Disassembly Scheduling 729
4 Computational Experiments
To show the performance of the algorithm suggested in this paper, computa-
tional tests were done on randomly generated problems using the disassembly
structure given in Figure 1. Two performance measures were used in the test:
percentage deviation from the lower bound obtained by solving the Lagrangean
dual problem; and percentage deviation from the optimal solution value ob-
tained using CPLEX 8.1, commercial integer programming software. Here, due
to the excessive computational burden, we set the time limit as 3600 seconds for
CPLEX 8.1.
For the disassembly structure given in Figure 1, we generated 60 problems,
i.e., 10 problems for each combination of two levels of capacity tightness (loose
and tight) and three levels of the number of periods (10, 20, and 30). For each
problem, disassembly operation costs, inventory holding costs and setup cost were
generated from DU (50, 100), DU (5, 10), and DU (500, 1000), respectively. Here,
DU (a, b) is the discrete uniform distribution with [a, b]. Capacity per period was
730 H.-J. Kim, D.-H. Lee, and P. Xirouchakis
Number Period
Problem Deviation CPU
10 20 30 10 20 30
1 2 3 4
1 0.32 (0.13 ) 0.18(0.07) 0.17(0.10) 0.63 (0.25 ) 1.94(1.80) 3.87(10.08)
2 0.29(0.16) 0.30(0.17) 0.28(0.22) 0.64(0.26) 1.97(49.50) 3.91(228.15)
3 0.45(0.22) 0.19(0.13) 0.29(·) 0.65(0.42) 1.92(5.78) 3.93(·)
4 0.61(0.42) 0.16(0.06) 1.07(·) 0.61(0.45) 1.87(62.86) 4.14(·)
5 0.83(0.69) 1.09(0.87) 0.37(0.2) 0.65(0.29) 2.02(75.63) 3.95(3173.76)
6 0.31(0.06) 1.11(0.92) 0.48(·) 0.61(0.51) 1.99(66.37) 3.97(·)
7 0.38(0.19) 0.23(0.19) 0.17(0.10) 0.62(0.52) 1.92(1.12) 3.88(20.68)
8 0.08(0.00) 0.12(0.03) 0.61(·) 0.62(0.15) 1.89(17.80) 4.06(·)
9 0.05(0.00) 1.34(1.01) 0.14(0.10) 0.62(0.17) 2.06(46.33) 3.93(24.76)
10 2.07(0.12) 0.36(0.26) 0.15(·) 0.73(1.52) 1.94(12.63) 3.95(·)
1
percentage deviation from a lower bound obtained from Lagrangean dual problem
2
percentage deviation from an optimal solution obtained from CPLEX 8.1 (dots imply
that optimal solutions were not obtained within 3600 seconds)
3
CPU seconds of Lagrangean heuristic algorithm
4
CPU seconds of CPLEX 8.1
Number Period
Problem Deviation CPU
10 20 30 10 20 30
1 0.35(0.07) 1.55(·) 0.57(·) 0.69(0.52) 2.59(·) 4.20(·)
2 2.21(1.65) 0.29(0.06) 1.11(·) 0.69(1.16) 1.98(273.92) 4.95(·)
3 1.01(0.81) 0.91(·) 0.68(·) 0.68(0.36) 2.09(·) 4.30(·)
4 1.09(0.49) 0.74(·) 0.92(·) 0.66(23.94) 2.49(·) 4.46(·)
5 0.59(0.16) 0.46(0.31) 1.22(·) 0.66(1.00) 2.16(71.49) 4.25(·)
6 0.55(0.35) 0.69(0.33) 0.12(0.05) 0.64(0.21) 2.38(1004.58) 4.04(404.83)
7 1.20(0.72) 0.35(0.11) 1.33(·) 0.75(1.42) 2.16(70.93) 4.34(·)
8 1.37(0.89) 3.39(·) 1.16(·) 0.80(0.95) 2.44(·) 4.30(·)
9 1.14(0.42) 1.48(1.13) 0.32(0.22) 0.75(5.84) 2.17(477.51) 4.15(112.6)
10 1.23(0.84) 0.85(0.31) 0.93(·) 0.81(0.84) 2.15(612.47) 4.41(·)
set to 400 and disassembly time was generated from U (1, 4). Here, U (a, b) is the
continuous uniform distribution with [a, b]. (The other data generation methods
are omitted here because of the space limitation.) Also, the Lagrangean heuristic
requires specific values for several parameters. After a preliminary experiment,
these were set as follows: the iteration limit W was set to 5000; and δw was set to
2 initially and halved if the lower bound has not been improved in 90 iterations.
A Lagrangean Relaxation Approach for Capacitated Disassembly Scheduling 731
The test results are summarized in Table 1. The percentage deviations from
optimal solution values are not reported for some problem sets since we could
not obtain the optimal solutions using CPLEX 8.1 within 3600 seconds. It can be
seen from the table that the Lagrangean heuristic suggested in this paper gives
near optimal solutions. That is, the percentage deviations from lower bounds and
optimal solutions were less than 2% and 1%, respectively. Also, computation times
for the Lagrangean heuristic were significantly shorter than those for CPLEX 8.1,
i.e., less than 5 seconds were required while CPLEX for many problems required
more than 3600 seconds. This implies that the Lagrangean heuristic suggested
in this paper can be used to solve practical sized problems within a reasonable
amount of computation times.
5 Concluding Remarks
In this paper, we considered the problem of determining the disassembly schedule
of products to satisfy the demands of their parts or components over a finite
planning horizon. The capacitated problem with single product type without
parts commonality is considered for the objective of minimizing the sum of setup,
disassembly operation, and inventory holding costs. The problem is solved using a
Lagrangean relaxation approach in which the relaxed problem becomes the single
item lot-sizing problem after decomposition. Test results on randomly generated
problems showed that the heuristic can give near optimal solutions within very
short computation time.
Acknowledgements
The financial supports from the Swiss National Science Foundation under contract
number 2000-066640 and the Korea Research Foundation under grant number
2004-03-D00468 are gratefully acknowledged.
References
1. Gupta, S. M., Taleb, K. N.: Scheduling Disassembly, International Journal of Pro-
duction Research, Vol. 32 (1994) 1857–1886
2. Kim, H.-J., Lee, D.-H., Xirouchakis, P., Züst, R.: Disassembly Scheduling with
Multiple Product Types, Annals of the CIRP, Vol. 52 (2003) 403–406
3. Lee, D.-H., Kang, J.-G., Xirouchakis, P.: Disassembly Planning and Scheduling: Re-
view and Further Research, Proceedings of the Institution of Mechanical Engineers:
Journal of Engineering Manufacture – Part B, Vol. 215 (2001) 695–710
4. Lee, D.-H., Kim, H.-J., Choi, G., Xirouchakis, P.: Disassembly Scheduling: Integer
Programming Models, Proceedings of the Institution of Mechanical Engineers:
Journal of Engineering Manufacture – Part B, Vol. 218 (2004) 1357–1372
5. Lee, D.-H., Xirouchakis, P.: A Two-Stage Heuristic for Disassembly Scheduling
with Assembly Product Structure, Journal of the Operational Research Society,
Vol. 55 (2004) 287–297
732 H.-J. Kim, D.-H. Lee, and P. Xirouchakis
6. Lee, D.-H., Xirouchakis, P., Züst, R.: Disassembly Scheduling with Capacity Con-
straints, Annals of the CIRP, Vol. 51 (2002) 387–390
7. Neuendorf, K.-P., Lee, D.-H., Kiritsis, D., Xirouchakis, P.: Disassembly Scheduling
with Parts commonality using Petri-nets with Timestamps, Fundamenta Informat-
icae, Vol. 47 (2001) 295–306
8. Taleb, K. N., Gupta, S. M., Disassembly of Multiple Product Structures, Computers
and Industrial Engineering, Vol. 32 (1997) 949–961
9. Taleb, K. N., Gupta, S. M., Brennan, L.: Disassembly of Complex Product Struc-
tures with Parts and Materials Commonality, Production Planning and Control,
Vol. 8 (1997) 255–269
10. Wagelmans, A., Hoesel, S. V., Kolen, A.: Economic Lot Sizing: an O(n log n)
Algorithm that Runs in Linear Time in the Wagner-Whitin Case, Operations
Research, Vol. 40 (1992) 145–156
DNA-Based Algorithm for 0-1 Planning Problem
1 Introduction
Along with the development of computers, some complex problems such as non-
linearity and NP-completeness emerged in the new field of engineering, which could
not be solved by our current electronic computers, because of their slow operating
speed and limited storage. So scientists are searching for other kinds of processors,
which can break through the speed limitation of the traditional silicon microelectronic
circuitry in parallel computation. Since the techniques of DNA computation can meet
the needs of highly data-parallel computation and can be used to settle those above
complex problems, so studying the DNA computing technologies is of great
importance [1-3].
In recent years, some useful research has been done about the techniques of DNA
computation. In 1994, Alderman[4] experimentally demonstrated that DNA molecules
and common molecular biology techniques could be used to solve complicated com-
binational problems such as the famous Hamiltonian path problem. One year later,
Lipton[5] generalized Alderman’s work, and presented a DNA computing model,
which can solve the satisfy-ability (SAT) problem. In 1996, Frank[6] successfully
expressed the binary digits 0 and 1 by using DNA molecular, and on the basis of that,
built a DNA-based model, which can complete simple additive operation. In 1999,
Bernard[7] proposed an improved DNA-based model, which can achieve more com-
plex additive operation than the Frank’s model through separating the input strands
from the operator strands. In the same year, Oliver[8] proposed a new DNA-based
computing model, which can perform much more complicated operation such as the
matrix multiplication. In 2000, Sakamoto[9] exploited the hairpin formation by single-
stranded DNA molecules, and settled a 3-SAT problem by using molecule computa-
tion. In 1999, Liu[10] developed a novel surface based approach, which solved the SAT
problem too. Two years later, Wu[11] improved Liu’s algorithm in 2001. 0-1 planning
problems are very important problems in operational researches. In 2003, Yin[12]
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 733 – 742, 2005.
© Springer-Verlag Berlin Heidelberg 2005
734 L. Wang, Z.P. Chen, and X.H. Jiang
applied DNA computing to the 0-1 planning problems firstly, and solved a kind of
special 0-1 problems by using fluorescence-labeling techniques.
On the basis of concepts such as index of constraint-equations group and determina-
tive factor of constraint equations proposed in this paper, an novel DNA-based
algorithm for the 0-1 planning problem is presented, which uses the surface-based fluo-
rescence-labeling technique, and can obtain all of the feasible solutions to the special
integer-planning problem easily. The analysis show that our new algorithm is of signifi-
cant advantages such as simple encoding, low cost and short operating time, etc.
The main idea of the DNA computation is to use the complementary base pairing
rules and DNA’s special double helical structure to encode information. After having
encoded information into DNA molecules, all of the operating objects can be mapped
into DNA strands, which will form all kinds of data pools after having reacted with
the biological enzyme. By using those data pools, then we can obtain the final solu-
tions to the target problems through high parallel biochemical reactions.
(3) If Θ is ≤ , then the variables serial corresponding to a DNA strand satisfy the
given constraint equation ⇔ there are at least ǻ kinds of colors left on the sur-
face of the DNA strand when it is observed through the laser confocal micro-
scope.
Proof: Since the proofs of (1), (2) and (3) are similar, we give the detailed proof of
(1) only.
Firstly, as for the given constraint equation: δ s1 x1 + δ s 2 x 2 + ... + δ sn x n ≥ bs ,
we suppose that δ s1 , δ s 2 ,…, δ sr equal –1, and δ r +11 , δ r + 21 ,…, δ n1 equal 1. Let b
= bs, and then the given constraint equation can be simplified as –x1 – x2 –…– xr +
xr+1 + xr+2 +…+ xn ≥ b. Let T be index of the constrain equations group described by
formula (4), then it is obvious that T ≥ n, and ǻ= T – b – r. Let f1, f2,…, fr , fr+1 , fr+2
,…, fn, fn+1 , fn+2 ,…, fT be the surface-fixed DNA strand with fluorescence labeling.
( ): Supposing that the number of 1 in f1, f2,…, fr is t, Since f1 , f2 ,…, fr , fr+1 , fr+2
,…, fn, fn+1 , fn+2 ,…, fT satisfy the given constraint equation –f1 – f2 –…– fr + fr+1 +
fr+2 +…+ fn ≥ b fr+1 + fr+2 +…+ fn ≥ b+t, so the number of 1 in fr+1 , fr+2 ,…, fn is at
least b+t. After the complement link x ′1 , x ′2 ,…, x ′r , x′r +1 , x ′r + 2 ,…, x ′n with
fluorescence quencher corresponding to the given constraint equation is added to
surface, since all of the oligonucleotides corresponding to x′r +1 , x ′r + 2 ,…, x ′n are
complements of the oligonucleotide corresponding to 1 There are at least b+t
kinds of fluorescence dyes in fr+1 , fr+2 ,…, fn that will be extinguished after the com-
plement link x ′r +1 , x ′r +2 ,…, x ′n is added to surface There exist at most T –r–b–t
kinds of fluorescence dyes left in fr+1 , fr+2 ,…, fn, fn+1 , fn+2 ,…, fT. Since the number of
1 in f1, f2 ,…, fr is t The number of 0 in f1 , f2 ,…, fr is r–t. Since all of the oligonu-
cleotides corresponding to x ′1 , x ′2 ,…, x ′r are complements of the oligonucleotide
corresponding to 0 There are at least r–t kinds of fluorescence dyes in f1 , f2 ,…, fr
that will be extinguished after the complement link x ′1 , x ′2 ,…, x ′r is added to sur-
face There are t kinds of fluorescence dyes in f1 , f2 ,…, fr There are at most T
–r–b–t+t= T – b – r = ǻ kinds of fluorescence dyes in f1 , f2 ,…, fr , fr+1 , fr+2 ,…, fn,
fn+1 , fn+2 ,…, fT .
( ⇐ ): Supposing that the number of 1 in f1, f2,…, fr is t, and the number of 1 in fr+1
, fr+2 ,…, fn is p. After the complement link x ′1 , x ′2 ,…, x ′r , x′r +1 , x ′r + 2 ,…,
x′n with fluorescence quencher corresponding to the given constraint equation is
added to surface, since the number of 1 in fr+1 , fr+2 ,…, fn is p, and all of the oligonu-
cleotides corresponding to x′r +1 , x ′r + 2 ,…, x ′n are complements of the oligonucleo-
tide corresponding to 1 There are at least p kinds of fluorescence dyes in fr+1 , fr+2
,…, fn that will be extinguished after the complement link x ′r +1 , x ′r +2 ,…, x ′n is
added to surface. Since the number of 1 in f1 , f2 ,…, fr is t The number of 0 in f1 , f2
,…, fr is r–t. Since all of the oligonucleotides corresponding to x ′1 , x ′2 ,…, x ′r are
complements of the oligonucleotide corresponding to 0 There are at least r–t
kinds of fluorescence dyes in f1 , f2 ,…, fr that will be extinguished after the comple-
ment link x ′1 , x ′2 ,…, x ′r is added to surface. There are t kinds of fluorescence
738 L. Wang, Z.P. Chen, and X.H. Jiang
5 Analysis
In this chapter, a simple example will be presented in detail to describe our new algo-
rithm’s computing processes.
Min u = 2x1+ x2+3y1-2z1 (5)
x1 + x2 + y1 − z1 ≥ 2
°
° x1 + z1 ≤ 1
® (6)
° y1 + z1 ≤ 1
°¯ x1 − x 2 = 0
It is obvious that the index of formula (6) is 4, and the negative index of the first
constrain equation is 1, so he first constraint equation’s determinative factor ǻ1= 4-2-
1=1. Similarly, it is easy to know that the second constrain equation’s determinative
factor ǻ2=3, the third constrain equation’s determinative factorǻ3=3, and the fourth
constrain equation’s determinative factor ǻ4= 3.
Step 1: According to the step1 proposed by chapter4, we construct 4*4 (=16) kinds
of different oligonucleotides, and divide them into 4 groups. Let the 4 kinds
of different oligonucleotides in the first group denote the variables x1 , x2 , y1,
z1, the 4 kinds of different oligonucleotides in the second group denote the
variables x1 , x 2 , y1 , z1 , the 4 kinds of different oligonucleotides in the
y ′1 , z ′1 , the 4 kinds of different oligonucleo-
third group denote x ′1 , x ′2 ,
tides in the fourth group denote x ′1 , x ′2 , y ′1 , z ′1 . We select the following
16 kinds of different oligonucleotides illustrated in Fig.2 for our example.
15 14 13 12 11 10 9 8
z1 z1 z1 z1 z1 z1 z1 z1
y1 y1 y1 y1 y1 y1 y1 y1
x2 x2 x2 x2 x2 x2 x2 x2
x1 x1 x1 x1 x1 x1 x1 x1
7 6 5 4 3 2 1 0
z1 z1 z1 z1 z1 z1 z1 z1
y1 y1 y1 y1 y1 y1 y1 y1
x2 x2 x2 x2 x2 x2 x2 x2
x1 x1 x1 x1 x1 x1 x1 x1
15 14 13 12 11 10 9 8
z1 z 1 z ′1 z1 z 1 z ′1 z1 z 1 z ′1 z1 z 1 z ′1
y1 y ′ y 1 y ′1 y1 y1 y 1 y ′1 y 1 y ′1 y1 y1
1
x 2 x′2 x 2 x′2 x 2 x ′2 x 2 x ′2 x2 x2 x2 x2
x 1 x′1 x 1 x′1 x 1 x ′1 x 1 x′1 x 1 x′1 x 1 x′1 x 1 x′1 x 1 x′1
7 6 5 4 3 2 1 0
z1 z 1 z ′1 z1 z 1 z ′1 z1 z 1 z ′1 z1 z 1 z ′1
y 1 y ′1 y 1 y ′1 y1 y1 y 1 y ′1 y 1 y ′1 y1 y1
x 2 x′2 x 2 x ′2 x 2 x ′2 x 2 x ′2 x2 x2 x2 x2
x1 x1 x1 x1 x1 x1 x1 x1
Fig. 4. graph obtained by adding complement link of the first constraint equation
formula (6) to surface. It is easy to know that the DNA strand with no more
than ǻ1=1 kinds of colors satisfy the first constraint equation according to
theorem 1. So, as illustrated in Fig.4, the strands with No.15, No.14, No.12,
No.10 and No.6 will satisfy the first constraint equation. Take photos to keep
the results.
Step 3: According to the step3 proposed by chapter4, Heat the products to unwrap
the double-strands, and wash away all of the complement links.
Step 4: According to the step4 proposed by chapter4, repeat steps 2 and 3.
(1) Add the complement link x ′1 , z ′1 of the second equation in formula (6) to
surface. It is easy to know that the DNA strand with no lesser more than ǻ2=3
kinds of colors satisfy the second constraint equation according to theorem1.
So, the strands with No.14, No.12, No.10 and No.6 will satisfy the second
constraint equation in those DNA strands with No.15, No.14, No.12, No.10
and No.6. Take photos to keep the results (as for the limitation of paper, the
graph is omitted).
DNA-Based Algorithm for 0-1 Planning Problem 741
(2) Add the complement link y ′1 , z ′1 of the third equation in formula (6) to sur-
face.It is easy to know that the DNA strand with no less than ǻ3=3 kinds of
colors satisfy the third constraint equation according to theorem1. So, the
strands with No.14, No.12, No.10 and No.6 will satisfy the third constraint
equation in those DNA strands with No.14, No.12, No.10 and No.6.Take
photos to keep the results (as for the limitation of paper, the graph is omitted).
(3) Add the complement link x ′1 , x ′2 of the fourth equation in formula (6) to
surface. It is easy to know that the DNA strand with just ǻ4=3 kinds of colors
satisfy the fourth constraint equation according to theorem1. So, the strands
with No.14 and No.12 will satisfy the third constraint equation in those DNA
strands with No.14, No.12, No.10 and No.6. Take photos to keep the results
(as for the limitation of paper, the graph is omitted).
(4) Because the variable serial corresponding to DNA strands with No.14 and
No.12 are 1,1,1,0 and 1,1,0,0 separately. So we can know that the feasible so-
lutions to the given special category of 0-1 planning problem is x1=1, x2=1,
y1=1, z1=0, and x1=1, x2=1, y1=0, z1=0.
Step 5: Apply x1=1, x2=1, y1=1, z1=0, and x1=1, x2=1,y1=0, z1=0 to the target function
separately, it is obvious that the value of the target function is 6 and 3 sepa-
rately. So, the optimal solution to the given special category of 0-1 planning
problem is x1=1, x2=1, y1=0, z1=0, and the minimum value of the target func-
tion is 3.
6 Conclusions
DNA computation is of excellent advantages in solving the NP-complete problems
because of its high parallel ability. On the basis of fluorescence labeling technology, a
novel DNA-based algorithm for 0-1 planning problem is proposed in this paper,
which solves a special category of 0-1 planning problem, and at the same time is of
good characteristics such as simple encoding, low cost and short operating time, etc.
Our next goal is to solve the general 0-1 planning problem and integer-planning prob-
lem by using DNA-based computing techniques.
References
1. Gao Lin, Xu Jin. DNA solution of vertex cover problem based on sticker model. Chinese
Journal of Electronics.Vol.15, (2003) 1496-1500.
2. Bach, E. et. al. DNA Models and Algorithms for NP-Complete Problems. Proceedings of
the 11th Annual Meeting on DNA Based Computers.Vol.44, (1999)151-161.
3. Xu Jin, Zhang Lei. DNA Computer Principle, Advances and Difficulties (1): Biological
Computing System and Its Applications to Graph Theory. Chinese Journal of Computers.
Vol.26, (2003) 1-11.
4. Frank G, Makiko F. Carter B. Making DNA add. Science. Vol.273, (1996) 220-223.
5. Yurke B, Mills Jr. A P. Cheng Siu Lai. DNA implementation of addition in which the in-
put strands are separate from the operator strands. Bio-systems.Vol.52, (1999) 165-174.
742 L. Wang, Z.P. Chen, and X.H. Jiang
1 Introduction
Images have always been an essential and effective medium for presenting visual
data. With advances in today’s computer technologies, it is not surprising that in
many applications, much of the data is images.
In this paper, we deal with content-based image retrieval, which is a technique to
retrieve images based on their visual properties such as color [1, 2], texture [3], and
shape [4]. Systems [5, 6, 7] are well known for supporting this content-based image
retrieval.
Fast retrieval in databases has been one of the active research areas. In that process,
without any clustering schemes and adequate indexing structures, retrievals of similar
images are time-consuming because the database system must compare the query
image to each image in the database. This cost can be particularly prohibitive if the
database images are very large and their features tend to have high-dimensionality.
This high-dimensional indexing structure increases the retrieval time and memory
space exponentially, as the member of feature dimension increases. Thus, frequently,
*
Corresponding author.
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 743 – 752, 2005.
© Springer-Verlag Berlin Heidelberg 2005
744 S.-S. Park et al.
it does not have any advantages against the simple sequential search. So, fast search
algorithms, which can deal with high-dimensional feature data, are often an essential
component of the image database. There have been a number of indexing data struc-
tures suggested to handle high-dimensional data: SS-tree[8], TV-tree[9], and
X-tree[10].
In this paper, we present new image clustering technique that is useful for speedily
finding the images from a large image database system. In this scheme, similar im-
ages are clustered based on the image feature and associated clustering algorithm.
When the query is presented, similar images to the query are retrieved only from the
most similar cluster to the query, thus full-database searches are not necessary.
We use improved Fuzzy-ART as clustering technique for narrowing the search
space. The Fuzzy-ART [11] is a neurally-motivated unsupervised learning technique
which has been used in many data analysis tasks. The Fuzzy-ART forms a nonlinear
mapping of a high-dimensional input space to one cluster in artificial output neurons.
This is possible by the fact that weight vectors in its neurons are trained and updated
to the values that represent input pattern. Patterns that are mutually similar in respect
to the given extracted feature are thus located same cluster.
However, the original Fuzzy-ART system yields undesirable results when the noise
input is presented. The number of output clusters increase due to abrupt weight
change caused by noise input. Our new Fuzzy-ART mechanism resolves the problem
by differently updating the committed neuron and uncommitted neuron.
2 Image Features
The performance of the image clustering depends on the image features to describe
the image content and adequate clustering mechanism. In this paper, color and texture
information are used to represent image features. For color, joint HSV histogram
extracted from local region is employed. For texture, entropies computed from local
region are employed. These features extracted from each image in the database are
used as input vector to the Fuzzy-ART network.
Color: For representing color, we used HSV (Hue, Saturation, Value) color model
because this model is closely related to human visual perception. For color quantiza-
tion, we uniformly quantized HSV space into 18 bins for hue (each bin consisting of a
range of 20 degree), 3 bins for saturation and 3 bins for value for lower resolution.
In order to represent the local color histogram, we divided image into equal-sized
3× 3 rectangular regions and extract HSV joint histogram that has quantized 162 bins
for each region. And to obtain compact representation, we extract from each joint
histogram the bin that has the maximum peak. Take hue h , saturation s , and value
v associated to the bin as representing features in that rectangular region and normal-
ize to be within the same range of [0,1]. Thus, each image has the 3 × 3 × 3( = 27 )
dimensional color vector.
Texture: Most natural images include textures. Scenes containing pictures of wood,
grass, etc. can be easily classified based on the texture rather than color or shape.
Clustering for Image Retrieval via Improved Fuzzy-ART 745
Therefore, it may be useful to extract texture features for image clustering. Like as
color feature, we include a texture feature extracted from localized image region.
As a texture feature, we used the entropy extracted from the co-occurrence ma-
trix[5]. Detailed feature extraction is performed as follows:
where ȕ is learning rate parameter, I is input vector, and TJ and BJ is top-down and
bottom-up weight vectors associated with node J, respectively .
However, Above Fuzzy-ART inherently yields problems according to the range of
learning parameter ȕ . In the fast learning ȕ = 1 , prototype can be fast stable owing to
update rule based on the fuzzy AND operator ( ∧ ) between input vector and weight
vector. However, when the inputs with noises are presented, it can tend to recognize
falsely, thus unnecessarily allocate new category in F2. On the other hand, in the slow
learning 0 < ȕ < 1 , prototype has less impact from noise input, but it is slowly stable.
Therefore, fast-commit and slow-recode scheme are necessary.
In this paper, we present new modified Fuzzy-ART algorithm in order to achieve
fast stable with less impact from noise input. The proposed algorithm is based on that
fast learning is applied to the committed node, whereas slow learning is applied to the
uncommitted node.
4 Modified Fuzzy-ART
New Fuzzy-ART model employs different update rule on top-down weights and bot-
tom-up weights. This scheme resolves unnecessary increase of output node, which is
caused by abrupt weight changes when the noise input is presented. New algorithm is
described as following steps:
Clustering for Image Retrieval via Improved Fuzzy-ART 747
Step 1: Initialization
Parameter Initialization:
choice parameter α ∈ (0, ∞) , learning rate parameter β ∈ [0, 1] , vigilance parameter
ρ ∈ [0, 1] , weight parameter η ∈ [0, 1]
where a ck = 1 − a k .
This type of transformation is called complement coding.
Weight Initialization:
Weights associated to each node j (j=1,2, 3, …, N) in output layer F2 are initialized.
b ij = t ji = 1, (1 ≤ i ≤ 2M, 1 ≤ j ≤ N) (5)
where bij and tji is bottom-up weights and top-down weights connected between node i
of the F1 layer and node j of the F2 layer, respectively. Here, it is assumed that all the
nodes in F2 are uncommitted (i.e., they did not experience weight updates).
Step 2: Category Choice
Upon presentation of an input I, a choice function Tj is computed for each category j
in the F2 layer
I ∧ bj (6)
T j ( I) =
α + bj
Reset:
If the match function MJ does not meet the vigilance criteria, then mismatch reset
occurs. The value of TJ in the current node is set to –1 for the duration of the current
input presentation and another category is chosen in Step 2. This process is repeated
until the chosen node J meets the vigilance test. If all F2 nodes do not meet the test,
new category is allocated.
Step 4: Learning (Weight Updates)
Learning takes place only in resonance case. The proposed weight update algorithm
learns the pattern differently in the committed node and uncommitted node.
Uncommitted Node:
If all the nodes in F2 layer does not meet vigilance test, a new category is allocated
and receives current input. Thus, this node has no experience of weight update and
does not impact on the existing category. In this case, weights update of new node is
based on the existing learning rule (fast learning β = 1 ).
5 Experiments
We experimented on 200 images where most of them have dimensions of 192 × 128
pixels. The 200 images can be categorized such as airplane, eagle, elephant, horse,
lion, polar bear, rose, zebra, tiger, valley, sunset, dolphin, flower, and bear.
We performed three experiments: 1) clustering results according to the change of
the number of output nodes in F2 layer, 2) clustering results according to the ordered
presentation and the randomly presentation of input vectors, 3) clustering results us-
ing Fuzzy-ART and proposed modified Fuzzy-ART. For measure of clustering
performance, we choose a recall rate according to each category as follows:
the number of similar images in each cluster
clustering performance = (14)
total number of similar images in database
5.1 Clustering Results According to the Change of the Number of Output Nodes
each category and number in parenthesis denotes the number of database images
associated with corresponding category.
For the case of airplane, horse, and polar bear, recall rates is more than 0.9 since
images in those categories have distinct color and texture information between object
and background. However, zebra case shows the lowest recall rate because its color
and texture information have similar to that of other categories such as rion, horse,
and elephant. Zebra images does not be allocated to the corresponding category with
up to 10 output nodes, but allocated with more than 11 nodes.
For this experiments, two kinds of indexes are used. First, images are ordered manu-
ally according to the file names. Thus, neighboring images are likely to belong to the
same category. Then, color and texture features from each image are extracted and
indexed into the database. Result in Table 1 is based on the ordered input list. Second,
image list is mixed using random function. Thus, neighboring images are likely to
belong to other categories. Color and texture features from each image are extracted
and indexed into the database. Parameters are initialized similarly like as α = 0.0001 ,
β = 0.85 , η = 0.85 , and ρ = 0.91 . Learning is performed three times. Table 2 shows
comparison of clustering results after three epochs in the cases of random input. Com-
pared with ordered input in Table 1, clustering results using random input order
showed less recall rate as a whole.
Table 1. Clustering results for each category according to the different number of output nodes
in F2 layer
6 Conclusions
In this paper, an improved Fuzzy-ART network was used as clustering technique for
content-based image retrieval. The proposed algorithm can reduce the retrieval time
substantially since the images are examined only on the similar cluster rather than on
the full-database. As input elements to the network, HSV joint histogram and average
entropy computed gray-level co-occurrence matrices from localized image regions
were used.
An original Fuzzy-ART model is sensitive to the noise inputs. Thus, we presented
modified clustering network algorithm that was robust against the noises. The pro-
posed algorithm updates committed node and uncommitted node differently. It pre-
vents increase of unnecessary output categories by reducing abrupt weight changes.
References
1. Swain, M., Ballard, D.: Color indexing. International Journal of Computer Vision, Vol. 7,
Num.1. (1991) 11-32
752 S.-S. Park et al.
2. Smith, J.R., Chang, S.F.: Tools and techniques for color image retrieval. In Proc. SPIE:
Storage and Retrieval for Image and Video Databases IV, Vol. 2670. (1996) 426-437
3. Manjunath, B.S., Ma, W.Y.: Texture features for browsing and retrieval of image data.
Tech. Rep. CIPR TR-95-06 (1995)
4. Jain, A.K., Vailaya, A.: Shape-based retrieval: A case study with trademark image data-
bases. Pattern Recognition, Vol. 31, Num. 9. (1998) 1369-1390
5. Flickner, M., Sawhney, H., Niblack, W., Ashley, J., Huang, Q., Dom, B., Gorkani, M.,
Hafner, J., Lee, D., Petkovic, D., Steele, D., Yanker, P.: Query by image content: The
QBIC system. IEEE Computer, Vol. 28, Num. 9. (1995) 23-31
6. Smith, J.R., Chang, S.E.: VisualSEEK: A fully automated content-based image query sys-
tem. in Proc. ACM Multimedia, (1996) 87-98
7. Carson, C., Belongie, S., Greenspan, H., Malick, J.: Blobworld: Image segmentation using
expectation-maximization and its application to image querying. IEEE Trans on Pattern
Analysis and Machine Intelligence, Vol. 24, Num. 8. (2002) 1026-1638
8. White, D.A., Jain, R.: Similarity indexing with the SS-tree. In Proc. 12th IEEE Interna-
tional Conference on Data Engineering, (1996) 516-523
9. Lin, K.I., Jagadish, H.V., Faloutsos, C.: The TV-tree: An index structure for high-
dimensional data. VLDB Journal, Vol. 3, Num. 4. (1994) 517-549
10. Berchtold, S., Keim, D.A., Kriegel, H.P.: The X-tree: An index structure for high-
dimensional data. In Proc. 22th Int. Conf. on Very Large Data Bases, (1996) 28-39
11. Carpenter, G.A., Grossberg, S., Rosen, D.B.: Fuzzy-ART: Fast stable learning and catego-
rization of analog patterns by an adaptive resonance system. Neural Networks, Vol. 4.
(1991) 759-771
12. Carpenter, G.A., Grossberg, S.: A massively parallel architecture for a self-organizing neu-
ral pattern recognition machine. Computer Vision, Graphics, and Image Processing, Vol.
37. (1987) 54-115
Mining Schemas in Semi-structured Data Using
Fuzzy Decision Trees
Abstract. It is well known that World Wide Web has become a huge informa-
tion resource. The semi-structured data appears in a wide range of applications,
such as digital libraries, on-line documentations, electronic commerce. After we
have obtained enough data from WWW, we then use data mining method to
mine schema knowledge from the data. Therefore, it is very important for us to
utilize schema information effectively. This paper proposes a method of schema
mining based on fuzzy decision tree to get useful schema information on the
web. This algorithm includes three stages, represented using Datalog, incre-
mental clustering, determining using fuzzy decision tree. Using this algorithm,
we can discover schema knowledge implicit in the semi-structured data. This
knowledge can make users understand the information structure on the web
more deeply and thoroughly. At the same time, it can also provide a kind of ef-
fective schema for the querying of web information. In the future, we will fur-
ther the work on extract association rules using machine learning method and
study the clustering method in semi-structured data knowledge discovery.
1 Introduction
It is well known that World Wide Web has become a huge information resource.
Therefore, it is very important for us to utilize this kind of information effectively.
However, the information on WWW can’t be queried and manipulated in a general
way. Although some sites may provide search engines, the queries are performed
through keyword match operations, and query results are still in HTML format. The
information still needs to be viewed on the corresponding web sites through browsers.
Users are difficult to obtain the information structure and schema information of the
whole web site. In fact, this kind of information does not have any predefined struc-
ture, and it is also called semi-structured data. It appears in a wide range of applica-
tions, such as digital libraries, on-line documentations, electronic commerce. After we
have obtained enough data from WWW, we then use data mining method to mine
schema knowledge from the data. Unfortunately, most of existing methods focus on
the knowledge discovery from relational data, we must design a new method to deal
with the hierarchy and irregularity of the semi-structured data.
Semi-structured data differ from structured data in traditional databases in that the
data are not confined by a rigid schema which is defined in advance, and often exhibit
irregularities. Furthermore, these data evolve rapidly under the WWW environments.
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 753 – 761, 2005.
© Springer-Verlag Berlin Heidelberg 2005
754 S. Wei and L. Da-xin
Typical models proposed for managing such data are labeled directed graphs[1,2,3],
which are schemaless and self-describing, e.g. Object Exchange Model (OEM)[3]
data graph. To cope with the irregularities of semi-structured data, regular path ex-
pressions are widely used in query languages for semi-structured systems [1,2]. How-
ever, the lack of schema poses great difficulties in query optimization. For example,
to process a query embedded with regular path expressions, query evaluation inevita-
bly involves an exhaustive search over the complete data graph.
Based on automata equivalence, DataGuide is proposed [4]. It is a concise and
accurate graph schema for the data graph in terms of label paths. Its accuracy lies in
that the schema and the data have the same sets of label paths, and its conciseness lies
in that every label path in the schema is unique. However for large cyclic graphs,
constructing a DataGuide may require exponential time and result in a DataGuide
which is much larger than the original data graph. In general, it is expensive to con-
struct and maintain an accurate graph schema for a data graph when the data are ir-
regular and evolve rapidly. Furthermore, an accurate schema may be too large and
hence impractical for query optimization. In [5], several heuristic-based strategies are
proposed to build approximate DataGuide by merging "similar" portions of the Data-
Guide during construction. However these strategies are situation specific. [7] and [9]
aim to type objects in the data set approximately by combining objects with similar
type definitions, instead of constructing an approximate structural summary for the
data graph. Their approximation methods are sensitive to the predetermined external
parameters (such as the threshold θ , the number of clusters K, etc.); and it is hard to
decide the optimal values for different data graphs in advance.
In this paper, we propose to construct an approximate graph schema by clustering
objects with similar incoming and outgoing edge patterns using an incremental con-
ceptual clustering method [8]. Our approach has the following unique features. No
predetermined parameters are required to approximate the schema. It is cheap to con-
struct and maintain the resultant schema and it is small in size. Moreover, we propose
a query evaluation strategy for processing regular path expression queries with assis-
tance of the schema.
The rest of the paper is organized as follows. The background knowledge is out-
lined in Sect. 2. Section 3 introduces the accurate graph schema, namely DataGuide.
In Sect. 4, the algorithm to extract the approximate graph schema is given. Section 5
describes the query evaluation strategies and Sect. 6 presents the preliminary experi-
mental results. Finally, Section 7 concludes the paper.
2 Related Work
Semi-structure data get schema form data, so one of the important aspects of schema
research is the schema mining how to extract schema from data. The problem of
schema mining is to automatically compute and extract schema from appointed in-
stances of data without any predefined knowledge. If several schemas match the in-
stances of data, the best one should be choose to express the instances. For the mo-
ment, the methods of extracting schema mainly have DataGuide, extracting rules
based on Datalog, some clustering and classification methods, such as [6] proposed
conceptual clustering method.
Mining Schemas in Semi-structured Data Using Fuzzy Decision Trees 755
a b a b
a a b
2 3 7
x y x y x y y
4 5 9
When schema of XML is described using Datalog, the extracting schema is how to
get a set of datalog rules from semi-structured data automatically. There are some
research on datalog , reference [10] proposes the method of extracting schema by
typing the semi-structured data using a set of datalog rules. The process is as follow.
First, a rule is defined for every complex object of data graph according the incoming
and outgoing edge patterns of complex object. Second, classify set of knowledge and
all potential types and compute the greatest fixpoint, so we get a type classification of
all data object. Third, if the object sets of two types of the classification of data object
is the same, the two type should be composed to reduce the number of types. At last,
if the number of types is even great, it can be done that clustering the types by choos-
ing proper methods to reduce the number more.
756 S. Wei and L. Da-xin
Through above process of data graph, the approximate types can be gained, which
is small comparing to the perfect types and is easy to use in actual disposal.
3 Method Summary
There are several strategies of schema extraction that have been proposed. The main
techniques have been introduced above. However these strategies have defects as
follows: first, their approximation methods are sensitive to the predetermined external
parameters and not define the approximation type; second, they handle easily extra
edges but difficultly missing edges. Other, the schema graph of semi-structured data
is not accurate.
The goal of this work is to be able to approximately type a large collection of semi-
structured data efficiently. We are therefore led to making simplifying assumptions
and introducing heuristics to be able to process this large collection in an effective
way. In this section, we present the problem and main idea of solving in rather general
terms. The various steps are detailed in the section 4.
First, the schema of semi-structured data is not precision and it is a character of
semi-structured data. So the schema is not precision that we are mining from semi-
structured data. We use fuzzy decision tree to decide the schema of the clusters of
data. In the second, the K-cluster is widely used in mining schema and the number of
clusters K requires to be appointed according to persons’ experience, and it is difficult
to determine the proper type. So we propose to construct approximate data set by
clustering objects with similar incoming and outgoing edge patterns using an incre-
mental clustering method. No predetermined parameters are required. The third and
final, the defect of the mining schema includes two patterns of excess and deficit. In
the case of relational and object data that are very regular and with the proper typing
program, we obtain a perfect classification of the objects. In general, one should not
expect this to happen. Suppose we have a program P that proposes a typing for a da-
tabase D. We need a measure of how well P types D. A first measure is the number of
Mining Schemas in Semi-structured Data Using Fuzzy Decision Trees 757
ground facts in D that are not used to validate the type of any object. We call this
measure the excess since it captures the number of facts that are in excess. Excess is
rather easy to capture with datalog programs and the greatest fixpoint semantics. The
deficit, some information that may be missing, is much less so. In our method, we use
benefit function to cluster objects and the benefit function is consist of the conditional
probability of an edge label in clustered type and the conditional probability of types
including an edge label.
4 Mining Schema
In this section, we present a method of mining a perfect schema from semi-structured
data. In the method, there are three stages that will be introduced in follow.
The first key issue is the choice of a description language for types. Our typing is
inspired by the typing found in object databases although it is more general since we
allow objects to live in many incomparable classes, i.e., have multiple roles. This
aspect is also a clear departure from previously proposed typings for semistructured
data. We believe (and some early experiments support this belief) that multiple roles
are essential when the data is fairly irregular. We define a typing in terms of a mo-
nadic datalog program. The intensional relations correspond to object classes and the
rules describe the inner structure of objects in classes. The greatest fixpoint semantics
of the program defines the class extents.
In this section, we present the model of semi-structured data and the types that are
used in the present paper. We assume some familiarity with relational databases and
more particularly with the datalog query language.
We model semistructured data in the style of [3] as a labeled directed graph. The
nodes in the graph represent objects and the labels on the edges convey semantic
information about the relationships between objects. The sink nodes (nodes without
outgoing edges) in the graph represent atomic objects and have values associated with
them. The other nodes represent complex objects. In a standard manner, we represent
the graph using two (base) relations defined as follows:
link(FromObj, ToObj, Label): Relation link contains all the edge information. Pre-
cisely, link ( o1 , o2 , l ) corresponds to an edge labeled l from object o1 to o 2 . Note
that there may be more that one edge from o1 to o2 , but, in our model, for a particu-
lar l , there is at most one such edge labeled l .
atomic(Obj,Value): This relation contains all the value information. The fact
atomic(o,v) corresponds to object o being atomic and having value v.
We also require that (1) each atomic object has exactly one value, i.e. Obj is a key
in relation atomic, and (2) each atomic object has no outgoing edges, i.e., the first
projections of link and atomic are disjoint.
In this paper, we consider that a typing is specified by a datalog program of a spe-
cific form (to be described shortly). The only two extensional relations (EDB’s) of the
758 S. Wei and L. Da-xin
typing program are link and atomic. The intensional relations (IDB’s) are all monadic
and correspond to the various types defined by the program.
For each complex objects o k , assign a unique type predicate typek . The rule for
i i
←
⎯⎯ ⎯
⎯→
typek will contain l oi to o k , and l if
iff there is an edge labeled l from
there is an edge labeled l from o k to oi . And the rule for typek will contain
0
⎯⎯→
l iff there is an edge labeled l from oi to some atomic object.
In most cases, the home type will have too many types to be useful as a summary of
the data set. There will be many ‘similar’ types that intuitively can be clustered into
one type thus dramatically reducing the size and complexity of the whole type. In this
section, we outline how to cluster the types to reduce the number of types while keep-
ing the defect low.
Let τ i be a type which has presented at home types. We use A(τ i ) and R (τ i ) to
denote the sets of labels associated with the outgoing edges and incoming edges of a
type τ i , respectively. A guiding principle in the clustering is to predict A(τ i ) and
R(τ i ) as accurately as possible. For each label l in A(τ i ) ∪ R(τ i ) , the predict-
ability is reflected by the conditional probability P(l τ i ) . The higher is the probabil-
ity, the more probable that a label l included in τ i . Another principle, minimizing the
size of the whole types is to minimize the number of appearances of each label l .
This is equivalent to maximizing the predictiveness of l , which is reflected by the
conditional probability P(τ i l ) . The higher is the predictiveness, the more probable
that a type τi having an edge labeled with l . The expected tradeoff is defined as
utility function U (τ i ) as follow.
1
U (τ i ) =
R(τ i ) ∪ A(τ i )
¦ P(l τ ) ⋅ P(τ
l∈R (τ i ) ∪ A(τ i )
i i l)
At the beginning, there is only one type corresponding the root. Thereafter, for each
time we visit a type τ j from τ i along the edge labeled with l , the type τ j will be
either an existing type or a newly created one, which results in the highest utility.
Through above two stages, we can get K-clusters which have low defects. In this
section, we use fuzzy decision tree, a machine learning method, to determine a proper
Mining Schemas in Semi-structured Data Using Fuzzy Decision Trees 759
type in every cluster. For the sake of no precision of schema of semi-structured data,
we get the fuzzy results of the schema, for every schema has its probability.
Definition 1. (Including-type)
Cluster K i includes type set of τ i ,τ i
1 2
,…, τi n
. If type τ includes label l and label
l is present in every type τ i j ( 1 ≤ j ≤ n ), type τ is a including-type of K i . De-
noted by including-type( K i )= τ .
Definition 2. (Included-type)
Cluster K i includes type set of τ i ,τ i
1 2
,…, τi n
. If type τ includes label l and label
l is present in not less than one of type τ i j ( 1 ≤ j ≤ n ), type τ is a including-type
of K i . Denoted by included-type( K i )= τ .
The proper type of Cluster K i is between included-type( K i ) and including-
type( K i ) , so we use fuzzy decision tree to determine the proper type. We have two
strategies as follows: adding labels from including-type ( K i ) to proper type and re-
ducing labels from included-type ( K i ) to proper type. In the paper, we choose the
first one. We defined firstly the comparability of a type for every instance in cluster
Ki .
Definition 3. (comparability)
The comparability can be defined by a ratio, The change from an instance to type τ
is
a × the number of adding labels + b × the number of reducing labels, a and b are
change(ins tan cei )
power parameters. The ratio = 1 − .
totaloflabel (ins tan cei )
←
⎯⎯ ⎯⎯→ ←
⎯⎯ ⎯⎯→ ⎯⎯→
For example, there is a cluster, including a b , a b c ,
←
⎯⎯ ⎯⎯→ ⎯⎯→ ←
⎯⎯ ⎯
⎯→ ←
⎯⎯ ⎯⎯→
a b d , a c , a d five instances (several instances maybe the same
type).
Decision trees have proven to be a valuable tool for description, classification and
generalization of data. Today, a wealth of algorithms for the automatic construction of
decision trees can be traced back to the ancestors ID3 [11] or CART. In many practi-
cal applications, the data used are inherently of imprecise and subjective nature. A
popular approach to capture this vagueness of information is the use of fuzzy logic,
going back to Zadeh [12]. The basic idea of fuzzy logic is to replace the “crisp” truth
values 1 and 0 by a degree of truth in the interval[0,1]. In many respects, one can
view classical logic as a special case of fuzzy logic, providing a more fine grained
representation for imprecise human judgments. Consider, for instance, the question
whether a jacket is fashionable. Here, a simple yes/no judgment looses information, or
760 S. Wei and L. Da-xin
might even be infeasible. To combine the advantages of decision trees and fuzzy
logic, the concept of a decision tree has been generalized to fuzzy logic, and there is a
number of algorithms creating such trees, e.g. [13,14].
We apply fuzzy decision tree to determine the approximate type of example above.
We use the strategy that adds labels to including-type of K i . The added label is cho-
sen that the function Gain is best. Function Gain is as follow:
Gain( K i , a) =
¦ comparalility(ins tan ce)
Num(ins tan ce)
The probability of a type τ is the ratio of the number of instances that match the
type τ in all the instances.
←
⎯⎯
We can get the including-type in example 1, a . We can add label b, c and d to
the including-type. So we calculate the gain of label b, c and d.
Gain( K i , b) = 0.46, Gain( K i , c) = 0.33, and Gain( K i , d ) = 0.33.
←
⎯⎯
we add label b to the type a , show in Fig.2. There three instances accord with the
←
⎯⎯ ⎯⎯→ ←
⎯⎯ ⎯⎯→
type a b in five instances so the positive of a b is 0.6 and negative is
0.4. Thereafter, for each time we choose the label that have the best of gain function
to add and calculate the positive and negative of the type.
←
⎯⎯ ⎯⎯→
In example 1, the positive of type a b is 0.6, and the positive of
←
⎯⎯ ⎯⎯→ ⎯⎯→ ←
⎯⎯ ⎯⎯→
type a b c is 0.2. So we should choose type a b as the approximate
type of cluster K i .
b
b
Positive: 0.4
Negative: 0.6
c
c
Positive: 0.2 Positive: 0.4
Negative: 0.8 Negative: 0.6
5 Discussion
Semi-structured data are represented as labeled directed graphs and queried with regu-
lar path expressions. The accurate graph schema, DataGuide, which does not contain
missing, duplicate or false paths in the schema, is not effective for optimization of a
wide range of regular path expression queries due to the fact that its size can be much
larger than the original data graph. In this paper, we proposed an approximate schema
based on an incremental clustering method and fuzzy decision tree method. Our
method showed that for different data graphs the sizes of approximate schemas were
smaller than that of accurate schemas. Also, for regular path expression queries, query
optimization with the approximate graph schema outperformed the accurate graph
schema. In the near future, we plan to explore various approximate schemas and con-
duct an extensive performance study in order to evaluate their effectiveness.
References
1. S. Abiteboul, D. Quass, J. McHugh, J. Widom, and J. Wiener. The lorel query language for
semi-structured data. International Journal on Digital Libraries, 1(1):68-88, 1997.
2. P. Bueman, S. Davidson, G. Hillebrand, and D. Suciu. A query language and optimization
techniques for unstructured data. In Proceedings of ACM SIGMOD International Confer-
ence on Management of Data, 1996.
3. Y. Papakonstantinou, H. Garcia-Molina, and J. Widom. Object exchange across heteroge-
neous information sources. In Proceedings of International Conference on Data Engineer-
ing, 1995.
4. R. Goldman and J. Widom. Dataguides: Enabling query formulation and optimization in
semistructured databases. In Proceedings of the 23rd International Conference on Very
Large Data Bases, 1997.
5. R. Goldman and J. Widom. Approximate dataguides. Technical report, Stanford Univer-
sity, 1998.
6. Wang Qiuyue, Jeffrey Xu Yu, Huang Jinhui. Approximate Graph Schema Extraction for
Semi-structured Data. In proc. Of EDBT 2000, Germany, March 2000.
7. S. Nestorov, S. Abiteboul, and R. Motwani. Inferring structure in semistructured data. In
Proceedings of the Workshop on Management of Semistructured Data, 1997.
8. D. Fisher. Knowledge acquisition via incremental conceptual clustering. In J. Shavlik and
T. Dietterich, editors, Readings in Machine Learning. Morgan Kaufmann Publishers, 1990.
9. S. Nestorov, S. Abiteboul, and R.Motwani. Extracting schema from semistructured data. In
Proceedings of ACM SIGMOD International Conference on Management of Data, 1998.
10. Nestorov S, Abiteboul S, Motwani R. Extracting Schema from Semistructured Data. In
Proc. of ACM SIGMOD Conf. On Management of Data. Seattle, WA,1998.
11. J. R. Quinlan. Induction on decision trees. Machine Learning, 1:81–106, 1986.
12. L. A. Zadeh. Fuzzy sets. Information and Control, 8:407–428, 1965.
13. Cezary Z. Janikow. Fuzzy decision trees: Issues and methods. IEEE Transactions on Sys-
tems, Man, and Cybernetics, 28(1):1–14, 1998.
14. L. Breiman, J.H. Friedman, R.A. Olshen, and C.J. Stone. Classification and Regression
Trees. Wadsworth & Brooks Advanced Books and Software, Pacific Grove, CA, 1984.
Parallel Seismic Propagation Simulation in Anisotropic
Media by Irregular Grids Finite Difference Method on
PC Cluster
1 Introduction
Seismic propagation simulation in complex media is widely used in oil/gas explora-
tion, earthquake prediction and many other fields. The governing equation is a set of
hyperbolic Partial Differential Equations (PDE) and is commonly modeled by nu-
merical method, such as Finite Difference Method (FDM). The model size in seismic
exploration is very large and can be several kilometers in each side. In the seismic
inversion problems, the seismic propagation has to be simulated iteratively, which are
extremely computationally intensive. The realistic-sized seismic propagation simula-
tion in anisotropic media cost too much memory and time to run on a single-processor
machine. Many efforts have been made to speed up the simulation, including algo-
rithm improvement and parallel computing.
Early researches on FDM for elastic wave modeling in complex media include Al-
terman and Karal[1], Boore[2], Alford[3], Kelly [4], Virieux[5,6] et al. Levander [7] applied
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 762 – 771, 2005.
© Springer-Verlag Berlin Heidelberg 2005
Parallel Seismic Propagation Simulation in Anisotropic Media 763
fourth-order approximation in space to the P-SV scheme. Dablain[8] gave high order
finite difference (FD) scheme to save memory and reduce computational costs.
Graves[9] presented a 3D fourth-order velocity-stress scheme with effective material
parameters. Conventional FDM is performed on regular Cartesian grids and has a
“staircase fashion” boundary at curved interface, which lead to spurious diffractions
in media with complex geometry and heterogeneous elastic constants. In addition,
variations of local physical parameters require fine regular grids of whole model field,
which greatly increases computation costs. G.H. Shortley[10] firstly studied the FDM
of Laplace equations with irregular grid. Jastram and Tessmer[11]䫺 Falk [12] et al de-
veloped irregular grid FDM on staggered grid. Tessmer[13]䫺 Hestholm and Ruud[14]
simulated curved surface with deformed rectangular grid. Mufti[15 ] researched the
problems for “staircase fashion” interfaces. Oprsal[16] et al studied irregular grid for
heterogeneous media. Pitarka[17] developed a rectangular irregular grids FD scheme.
Nordström[18] derived high order FD with deformed grids in curvilinear coordinate.
Sun[19] studied the non-rectangular irregular grids FDM for elastic wave propagation
in complex media.
Earthquake modeling with parallel FDM was studied by Olsen, Archuleta and
Matarese[20]. Minkoff[21] gave a spatial parallelism scheme for elastic wave propaga-
tion in isotropic media. This paper presents a irregular grids parallel FDM scheme.
Elastic wave equations are discretized on staggered irregular grids. Deformed non-
rectangular grids are used at complex geometrical boundaries and in vicinities of
material discontinuities. Non-physical diffractions from rough interfaces in regular
grids and rectangular irregular grids FD can be greatly weaken without increasing the
grid density. The spatial decomposition can be carried out according to the earth
structure geometries. The parallel simulation codes are implemented by MPI and c
language on PC clusters. The parallel computation of synthetic models shows that the
parallel implementation has the same accuracy as the serial code. Reasonable subdo-
main division can achieve high parallelism speedup.
2 Formulation
The formulations described in abbreviated form here are derived and discussed in
detail in [19]. More classical reference to elastic wave propagation can be found in
[22]. The 3D elastic wave equation in a 3D anisotropic media is solved in this paper.
T = C ⋅ D T ⋅ V . (2)
where ρ ( x ) is the media density. The velocity vector V ( x, t ) , stress vector T ( x , t ) ,
differential operator matrix D and orthorhombic anisotropic elastic coefficient matrix
C are defined as:
764 W. Sun, J. Shu, and W. Zheng
V T = (v x , v y , v z ) (3)
.
T T = (τ xx ,τ yy ,τ zz ,τ yz ,τ xz ,τ xy ) (4)
.
&∂ ∂ ∂#
0 0 0
∂x ∂z ∂y !! .
∂ ∂ ∂!
D= 0 0 0 (5)
∂y ∂z ∂x !
∂ ∂ ∂ !
0 0 0!
% ∂z ∂y ∂x !
∂φ 12
≅ N qy ( xm−1 ,..., xl +2 ; y m−1 ,..., yl +2 ; z m−1 ,..., zl +2 ) ⋅ φq . (8)
∂y q =1
∂φ 12
≅ N qz ( xm−1 ,..., xl +2 ; ym−1 ,..., yl +2 ; z m −1 ,..., zl +2 ) ⋅ φq . (9)
∂z q =1
The first derivative operator with respect to time at time jΔt is as following.
Parallel Seismic Propagation Simulation in Anisotropic Media 765
∂φ j φ j +1 − φ j .
≅ (10)
∂t Δt
The detailed derivation and stability analysis can be found in [19].
Fig. 1. The irregular grids FDM at x-z plane. Mid point of (m, l) and (m+1, l) is grid i . Mid
point of (m, l) and (m, l+1) is grid k. The grid intervals are not equal to each other
Higdon’s (Higdon [23]) absorbing boundary condition is applied to the outside bounda-
ries of the irregular grid to minimize the reflections. The absorbing boundary condi-
tion operator for elastic wave propagation problems is
m
∂ ∂
B = ∏ +c j − α ( (11)
j =1 , ∂t ∂x )
.
The jth operator is perfectly absorbing for the P wave traveling at angles of inci-
dence ± cos −1 c j and for the S wave traveling at angles of incidence ± cos −1 ( β c ) The
α j
absorbing boundary condition operator for spatial step Δxk can be approximated as:
m & #.
I − Et−1 Ex − I
+ Δt (( ((1 − a) I + aEx ) − α +
Dk ( Ex , Et−1 ) = ∏ c. j + −1
+ Δx (( (1 − b) I + bEt ! ( ) (12)
j =1 % , ) , k )
tiple processor machines have been used to solve computationally intensive problems.
The connection between the processors and memory is through some form of intercon-
nection network. This kind of specially designed computer system is very expensive and
only large universities and companies can afford it. The emergence of PC cluster pro-
vides a novel way for large-scale science and engineering computation. Each computer
consists a processor and local memory and is connected through an interconnection
network. Each processor sends messages to other processors for data communications.
Although the bandwidth and latency speeds on clusters tend to run 1-3 orders of magni-
tude slower than on shared memory multiple processor machines, the lower costs of
building clusters is still so attractive compared with the special designed machines.
Message passing between multiple processors introduces additional time costs to the
whole simulation problem. Spatial decomposition for explicit FDM scheme provides
a way to minimize the communication and achieve a good speedup. In spatial paral-
lelism, the physical problem domain is usually split into cubic-shaped subdomains in
one, two or three dimensions. Each processor solves its own subdomain problem and
communicates the boundary values with other processors. The flexible irregular girds
FDM scheme in this paper makes it possible to divide physical problem into irregular
shaped subdomains according to the geological structures. A 2D decomposition is
illustrated in Fig. 2. A locally uniform media subdomain is produced by the irregular
FDM scheme and is assigned to each processor. Such uniform subdomain problem
can be solved with its own dispersion and stability condition in parallelism.
Fig. 2. 3D decomposition for spatial parallelism with irregular grid FDM. Single processor
subdomain (with ghost cells shown as dashed lines) taken from global irregular grid domain is
shown. The curved geological structure is considered in the spatial decomposition
Each processor calculates the finite difference solutions for its subdomain independ-
ently, except for the boundary value communication. Padded subdomains (ghost cells)
of memory are created. The irregular grids FDM needs tow extra planes of memory to
be created on each face of the subdomain. The ghost cells of the subdomains at physical
model boundary have to be processed by the absorbing boundary contition. Otherwise,
the processor just uses communicated boundary values in the ghost cells.
The spatial parallelism codes are written in c language with MPI library. The model
parameters such as size, velocities, elastic coefficients, source and receiver position
Parallel Seismic Propagation Simulation in Anisotropic Media 767
are read from the parameter file by the master process. The master process verifies
dispersion and stability conditions and broadcasts the model parameters to each
slave process. After receiving the parameters, each process begins to create its tem-
porary arrays and solve the subdomain problem. The subdomain boundary values
are sent to neighboring processors in the Cartesian dimensions and the grid values
of velocity and stress are updated after the message passing. The grid values on the
physical model boundaries are processed by the absorbing boundary condition after
the grid value updating. The master process collects wavefield snapshot and syn-
thetic seismic records after certain time-step loop. Then the master process writes
the synthetic seismogram to result files. The pseudo spatial parallelism codes are
given as follows.
Pseudo codes of the spatial parallel seismic propagation simulation with MPI library
in c language.
Establish the MPI environment;
Master process read the dimension of dynamically cre-
ated array from parameter file;
Master process broadcast the dynamic array dimension
to all processes;
All processes create the dynamic array;
Master process read computation parameters from
parameter file;
Master process broadcast parameters to all processes;
Each process begin to simulate:
Check the FDM stability condition;
Create temporary arrays;
Convert the elastic coefficients for anisotropic
media;
Begin the time-step loop:
Compute the source amplitude;
Communicate boundary values with neighboring
processors;
Update grid velocity and stress;
Process physical model boundary values with
absorbing boundary condition;
Send grid velocity and stress to master process
if snapshot and synthetic records need to be write out;
End the time-step loop;
Free the temporary arrays;
Free the dynamically created arrays;
End the simulation;
Terminate the MPI environment.
4 Numerical Examples
Although a much larger real date example can be used to test the limits of the parallel
algorithm, it is more important to illustrate code accuracy and efficiency by a rela-
tively small typical example. An anisotropic media model with curved layer is used to
valid parallel irregular grids FDM codes. The model size is 200 × 100 × 100 meters in
x-y-z coordinate and the thin layer is located between the depth of z=30 meters and
768 W. Sun, J. Shu, and W. Zheng
z=80 meters (Fig. 3 (a)). A total number of 100 × 50 × 50 grid points are used. The
irregular grid configuration at x-z cross section is shown in Fig. 3 (b). The explosive
Gauss source with 50Hz peak frequency is located at (25m, 50m, 20m). A receiver is
located at (80m, 50m, 20m). Time step is 0.0001second and the total computation
time is 0.2 second. The elastic parameters and densities are listed in Table 1.
The grid discretion is more flexible than regular grid scheme and can be make ac-
cording to the model geometrical structures. The synthesis seismograms at the re-
ceiver are computed by serial code and spatially parallel code respectively. The paral-
lel simulation program was run on a 1Gbps Ethernet connected PC cluster with a 2 × 4
processor grid. Each grid computer has two 2.4 GHz Xeon CPUs and 1Gbyte mem-
ory. The 3D model simulation costs 3719.68 seconds on single processor and 850.02
seconds on 2 × 4 processor grid. The parallelism efficiency for this problem on PC
cluster approaches to 54.7%. Fig. 4 shows the seismograms simulated by parallel
method and the serial method. The snapshot contours of velocity in x direction (Vx) at
y=50 meters cross section are given in Fig. 5. The Vx snapshots at 0.12 seconds com-
puted by serial and parallel codes are shown in Fig. 6. In Fig.5 and Fig.6 the wave
field features computed by parallel codes are almost the same as by the serial codes at
different time. However, the computation costs are greatly cut down.
Table 1. The elastic coefficients and densities of the 3D model with curved layers
All the figures show that the parallel simulation results are identical to the ones
form the serial simulation code. The wave field values computed by the proposed
method have the same accuracy no matter the serial or parallel implementation. But
the message passing costs a lot of resources in spatially parallelism scheme. The bal-
ancing between message passing and wave field computation is a key factor for im-
proving parallel speedup. Small subdomain division has a very high message-
passing/computing ratio, which weakens the parallel speedup effect. Here a
25 × 50 × 25 block is assigned to each processor.
Although PC cluster has many attractive features, such as low price, high flexibil-
ity and high expandability, the interconnection network bandwidth and latency are
still a bottleneck. Even if the 1Gbps Ethernet connected PC cluster, the typical latency
is still at the 10-3 s level. Bandwidth and latency on distributed shared memory PC
clusters tend to run 1-3 orders of magnitude slower than on the shared memory multi-
processor system. Cluster computing is hard to achieve very high parallel efficiency.
The leading edge research and application of Fibre Channel network and Infiniband
provide many promising directions for the future high performance computing.
Parallel Seismic Propagation Simulation in Anisotropic Media 769
Fig. 3. (a) (left figure) 3D model with curved layer in Cartesian coordinate; (b) (right figure)
Irregular grids discretization at x-z cross section
Fig. 4. Synthetic seismograms comparison for the parallel and serial seismic propagation simu-
lation codes. The seismograms are synthesized at the receiver location (80m, 50m, 20m)
Fig. 5. Snapshot contours of velocity in x direction at the y=50 meters cross-section. The snap-
shot time is 0.066 seconds. (a) (left figure) serial code snapshot contour (b) (right figure) the
parallel code snapshot contour
Fig. 6. Snapshot of velocity in x direction at the y=50 meters cross-section. The snapshot time
is 0.12 seconds. (a) (left figure) serial code snapshot (b) (right figure) the parallel code
snapshot
770 W. Sun, J. Shu, and W. Zheng
5 Conclusion
Non-rectangular grids Finite Difference Method is developed to simulate the seismic
propagation in 3D anisotropic media model with complex earth structure geometry.
Staggered grid scheme and spatial parallelism are used to provide computation
speedup. The parallel codes are implemented in c language with Message Passing
libraries. The physical model is divided into subdomains for each processor with more
flexibility. Model geometries are fully considered during the spatial decomposition
procedure by the proposed method. The seismic simulation program was run on PC
cluster composed of Xeon CPUs. High bandwidth and low latency are provided by 1
Gbps Ethernet interconnections. In the numerical example, the message passing and
computation are relatively balanced with a 25 × 50 × 25 subdomain block size. A
54.7% parallel efficiency can be achieved on a 2 × 4 processor grid for this model.
Acknowledgement
The works described in this paper are supported by National Natural Science Founda-
tion of China (Grant No.10402015, Grant No.60473101), China Postdoctoral Founda-
tion (No.2004035309) and the National Key Basic Research and Development (973)
Program of China (Grant No. 2004CB318205).
References
1. Alterman Z., Karal, F. C. Jr.: Propagation of Elastic Waves in Layered Media by Finite
Difference Methods. Bull. Seism. Soc. Am., Vol. 58(1) (1968) 367-398
2. Boore, D. M.: Finite Difference Methods for Seismic Wave Propagation in Heterogeneous
Materials. In: Bolt, B. A. (eds): Computational physics. Academic Press. Inc.䯸 (1972)
3. Alford, R. M., Kelly, K. R. and Boore, D. M.: Accuracy of Finite-Difference Modeling of
the Acoustic Wave Equation. Geophysics, Vol. 39 (1974) 834-842
4. Kelly, K. R., Ward, R. W. and Treitel, S. et al.: Synthetic Seismograms, a Finite Difference
Approach. Geophysics, Vol. 41(1976) 2-27
5. Virieux, J.: SH-Wave Propagation in Heterogeneous Media: Velocity-Stress Finite-
Difference Method. Geophysics, Vol. 49(1984) 1933-1942
6. Virieux, J.: P-SV Wave Propagation in Heterogeneous Media: Velocity-Stress Finite-
Difference Method. Geophysics, Vol. 51(1986) 889-901
7. Levander, A. R.: Fourth-Order Finite-Difference P-SV Seismograms. Geophysics, Vol.
53(1988) 1425-1436
8. Dablain, M. A.: The Application of High-Order Differencing to the Scalar Wave Equation.
Geophysics, Vol. 51(1986) 54-66
9. Graves, R. W.: Simulating Seismic Wave Propagation in 3D Elastic Media Using Stag-
gered-Grid Finite Differences. Bull. Seism. Soc. Am., Vol. 86(1996) 1091-1106
10. Shortley, G. H. and Weller, R.: Numerical Solution of Laplace’s Equation. J. Appl. Phys. ,
Vol. 9(1938) 334-348
11. Jastram, C. and Tessmer, E.: Elastic Modeling on a Grid with Vertically Varying Spacing.
Geophys. Prosp., Vol. 42(1994) 357-370
Parallel Seismic Propagation Simulation in Anisotropic Media 771
12. Falk, J., Tessmer, E. and Gajevski, D.: Tube Wave Modeling by the Finite-Differences
Method with Varying Grid Spacing. Pageoph, Vol. 14(1996) 77-93
13. Tessmer, E., Kosloff, D. and Behle, A.: Elastic Wave Propagation Simulation in the Pres-
ence Surface Topography. Geophys. J. Internat. , Vol.108(1992) 621-632
14. Hestholm, S. O. and Ruud, B. O.: 2-D Finite-Difference Elastic Wave Modeling Including
Surface Topography. Geophys. Prosp., Vol. 42(1994) 371-390
15. Mufti, I. R.: Large-Scale Three-Dimensional Seismic Models and Their Interpretive Sig-
nificance. Geophysics, Vol.55(9) (1990) 1166-1182
16. Ivo. O. and Jiri, Z.: Elastic Finite-Difference Method for Irregular Grids. Geophysics, Vol.
64(1) (1999) 240-250
17. Pitarka, A.: 3D Elastic Finite-Difference Modeling of Seismic Motion Using Staggered
Grids With Nonuniform Spacing. Bull. Seism. Soc. Am. , Vol. 89 (1) (1999) 54-68
18. Nordström, J. and Carpenter, M. H.: High-Order Finite Difference Methods, Multidimen-
sional Linear Problems and Curvilinear Coordinates. Journal of Computational Physics,
Vol. 173 (2001) 149-174
19. Sun, W.T., Yang, H.Z.: Seismic Propagation Simulation in Complex Media with Not-
Rectangular Irregular-Grid Finite-Difference. ACTA MECHANICA SINICA, Vol. 20(3)
(2004) 299-306
20. Olsen, K., Archuleta, R. and Matarese, J.: Three-Dimensional Simulation of a Magnitude
7.75 Earthquake on the San Andreas Fault. Science, Vol. 270 (1995) 1628-1632
21. Minkoff, S.: Spatial Parallelism of a 3D Finite Difference Velocity-Stress Elastic Wave
Propagation Code. SIAM J. Sci. Comput., Vol. 24(1) (2002) 1-19
22. Aki, K. and Richards, P.: Quantitative Seismology, Theory and Methods. W. H. Freeman,
San Francisco, CA (1980)
23. Higdon, R L.: Absorbing Boundary Conditions for Difference Approximations to the Mul-
tidimensional Wave Equation. Math. Comp., Vol. 47 (1986) 437-459
The Web Replica Allocation and Topology
Assignment Problem in Wide Area Networks:
Algorithms and Computational Results
Abstract. This paper studies the problem of designing wide area networks. In
the paper the web replica allocation and topology assignment problem with
budget constraint is considered. The goal is select web replica allocation at
nodes, network topology, channel capacities and flow routes in order to mini-
mize average delay per packet and web replica connecting cost at nodes subject
to budget constraint. The problem is NP-complete. Then, the branch and bound
method is used to construct the exact algorithm. Also an approximate algorithm
is presented. Some computational results are reported. Based on computational
experiments, several properties of the considered problem are formulated.
1 Introduction
The Wide Area Network (WAN) designing process incorporates such aspects as to-
pology assignment, capacity and flow assignment and resource allocation. Because of
huge number of users connected to the network, resources often have to be replicated.
The optimal network configuration is very important − it allows minimize the cost of
the network and guarantee the quality of service in the WAN. Proper resource replica-
tion allows to minimize the traffic rate in the network what ensures an efficiency and
reliability of the wide area network. The flow demands in the network are changing in
time because new users are joining the network and new resources (servers) are
added. That is why the optimization of the network parameters (such as topology,
capacity, resource allocation) must be performed regularly for the existing network. In
the designing and optimization process different criteria of the network quality are
taking into account. Very useful criteria are the investment cost of the network and
the quality of service in the network. In the paper the exact and approximate algo-
rithms for simultaneous assignment of web replica allocation, network topology,
channels capacity and flow assignment are considered. We use the combined criterion
composed of the quality of service in the network and of the investment cost repre-
sented by the connecting cost of replicas at nodes. As the quality of service we as-
sume the total average delay per packet in the network given by the Kleinrock’s for-
mula [1]. The considered problem is formulated as follows:
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 772 – 781, 2005.
© Springer-Verlag Berlin Heidelberg 2005
The Web Replica Allocation and Topology Assignment Problem 773
given: user allocation at nodes, for every web server the set of nodes to which
web server may be connected, number of replicas, budget of the network,
traffic requirements user-user and user-server, set of potential channels
and their possible capacities and costs (i.e. cost-capacity function)
minimize: linear combination of the total average delay per packet and the connect-
ing costs of replicas at nodes
over: network topology, channel capacities, multicommodity flow (i.e. rout-
ing), web replica allocation
subject to: multicommodity flow constraints, channel capacity constraints, budget
constraint, web replica allocation constraints.
We assume that channels’ capacities can be chosen from discrete sequence defined
by ITU-T (International Telecommunication Union − Telecommunication Sector)
recommendations. Then, the formulated above web replica allocation and topology
assignment problem is NP-complete [2,3].
In the literature there are some algorithms for wide area networks optimization.
They concentrate on topology assignment [4,5], capacity and flow assignment [1,2,6]
or resource allocation and replication [3,7,8]. Some algorithms solving topology as-
signment problem can be found in [4,5]. In the papers [7,8] there are some algorithms
for optimal replica allocation in the network when the network topology is known.
The considered problem is more general than the problems considered in the literature
because it combines simultaneous topology assignment and replica allocation. In the
literature such formulated problem has not been considered yet.
2 Problem Formulation
Consider a WAN consisting of n nodes and b potential channels which may be used
to build the network. For each potential channel i there is the set C i = {c1i ,..., c si (i )−1}
of alternative values of capacities from which exactly one must be chosen if the i -th
channel was chosen to build the WAN. Let d ij be the cost of leasing capacity c ij
[$/month]. Let c si (i ) = 0 for i = 1,..., b. Then C i = C i ∪ {csi (i ) } be the set of alterna-
tive capacities from among which exactly one must be used to channel i. If the capac-
ity c si (i ) is chosen then the i -th channel is not used to build the wide area network.
Let x ij be the decision variable which is equal to one if the capacity c ij is assigned
to channel i and x ij is equal to zero otherwise. Since exactly one capacity from the
set C i must be chosen for channel i, then the following condition must be satisfied:
s (i )
¦ x ij = 1 for i = 1,..., b. (1)
j =1
774 M. Markowski and A. Kasprzak
Let W i = {x1i ,..., x si (i ) } be the set of variables x ij which correspond to the i-th
channel. Let X r' be the permutation of values of all variables x ij for which the condi-
tion (1) is satisfied, and let X r be the set of variables, which are equal to one in X r' .
Let K denotes the total number of servers, which must be allocated in WAN and
let LK k denotes the number of replicas of k -th web server. Let M k be the set of
nodes to which k -th web server (or replica of k -th server) may be connected, and let
e(k ) be the number of all possible allocation for k -th server. Since only one replica
of server may be allocated in one node then the following condition must be satisfied
LK k ≤ e(k ) for k = 1,..., K . (2)
Let y kh be the decision binary variable for k -th web server allocation. y kh is
equal to one if the replica of k -th web server is connected to node h , and equal to
zero otherwise. Since LK k replicas of k -th web server must be allocated in the net-
work then the following condition must be satisfied
¦ y kh = LK k for k = 1,..., K .
(3)
h∈M k
Let Yr be the set of all variables y kh , which are equal to one. The pair of sets
( X r , Yr ) is called a selection. Let ℜ be the family of all selections. X r determines
capacities of channels and Yr determines the replicas allocation at nodes of WAN.
Let T ( X r , Yr ) be the minimal average delay per packet in WAN in which values
of channel capacities are given by X r and traffic requirements are given by Yr (de-
pending on web replica allocation). T ( X r , Yr ) can be obtained by solving a multi-
commodity flow problem in the network [1]. Let A(Yr ) be the cost of connecting all
web replicas at nodes. Let Q( X r , Yr ) be linear combination of the total average delay
per packet and the connecting costs of web servers at nodes
Q( X r , Yr ) = αT ( X r , Yr ) + βA(Yr ) (4)
d(X r ) =
i
¦ x ij d ij ≤ B
(7)
x j ∈X r
The Web Replica Allocation and Topology Assignment Problem 775
Assuming that LK k = 1 for k=1,...,K and C i = C i for i=1,...,b, the problem (5-7) is
resolved itself into the “host allocation, capacity and flow assignment problem”. Since
the host allocation, capacity and flow assignment problem is NP-complete [3] then the
problem (5-7) is also NP-complete as more general. Then, the branch and bound
method can be used to construct the exact algorithm for solving the considered prob-
lem. The detailed description of the calculation scheme of the branch and bound
method may be found in the paper [9].
Starting with the initial selection ( X 1 ,Y1 ) we generate a sequence of selections.
The variables from the sets X 1 or Y1 are called normal. The variables, which do not
belong to X 1 or Y1 are called reverse. A replacement of any normal variable by the
reverse variable is called complementing. The generation of new selection involves
the choice of the certain normal variable from X 1 or Y1 for complementing; it is
called the branching rules. The choice of the normal and reverse variables is based on
local optimization criterion. For each selection ( X r , Yr ) we calculate lower bound to
check the possibility of the generation of the selection ( X s , Ys ) with less value of a
criterion Q than already found. If such ( X s , Ys ) does not exist, we abandon ( X r , Yr )
and all its possible successors and next backtrack to the predecessor from which
( X r , Yr ) was generated. If new selection ( X s , Ys ) is generated from ( X r , Yr ) by
complementing the normal variable by the reverse variable, then we constantly fix the
reverse variable. It means that this reverse variable cannot be complemented by any
other in every possible successor of ( X s , Ys ). If we backtrack from ( X s , Ys ) to
( X r , Yr ) by reverse variable of certain normal variable from ( X r , Yr ) we momentar-
ily fix this normal variable. So, for each ( X r , Yr ) we constantly fix a set Fr and
momentarily fix the set Frt . The reverse variables in Fr are constantly fixed. Each
momentarily fixed variable in Frt is the reverse variable abandoned during backtrack-
ing process. Variables which do not belong to Fr or Frt are called free in ( X r , Yr ).
If we want backtrack from ( X 1 ,Y1 ) then the algorithm terminates.
The purposes of branching rules is to find the normal variable from the selection
( X r , Yr ) for complementing and generating a successor ( X s , Ys ) of the selection
( X r , Yr ) with the least possible value of the criterion function (4). We can choose a
variable x ij or a variable y kh .
The choice criterion on variables x ij may be formulated in the same way like in
the classical topology assignment problem, because changing the capacity of any
776 M. Markowski and A. Kasprzak
channel does not change A(Yr ). Then, in this case we can use the criterion given in
the form of the following theorem [5].
Let γ be the total average packet rate from external sources, and let ε be the mini-
mal feasible difference between the capacity and the flow in each channel.
Theorem 1. Let ( X r , Yr ) ∈ ℜ. If the selection ( X s , Ys ) is obtained from the selection
( X r , Yr ) by complementing the variable x ij ∈ X r by the variable xli ∈ X s then
Q( X s , Ys ) ≤ Q( X r , Yr ) − Δirjl , where
α § f ri f ri ·
° ¨ − ¸ if cli ≥ f ri
°γ ¨ ci − f ri cli − f ri ¸
° © j ¹ (8)
Δirjl = ®
°α § f ri 1§ ··
¨ − ¨¨ max c iz ¸¸ ¸
° ¨ ci
otherwise
°¯ γ − f ri ε © xiz ∈W i − Fr ¹ ¸
© j ¹
and f ri is the flow in the i -th channel obtained by solving the multicommodity flow
problem for network topology and channel capacities given by the selection X r .
To formulate the choice criterion on variables y kh we use the following theorem.
Theorem 2. Let ( X r , Yr ) ∈ ℜ. If the selection ( X s , Ys ) is obtained from the selection
( X r , Yr ) by complementing the variable y kh ∈ X r by the variable y km ∈ X s then
Q( X s , Ys ) ≤ Q( X r , Yr ) − δ hm
k , where
α ~
f ri α fi
° ¦ i i − ¦ ~ + β (a kh − a km )
°γ xij ∈X r x j c j − f r γ xij∈X r x ij c ij − f i
i
°
δ hm
k =® ~
if f i < x ij c ij for x ij ∈ X r (9)
°
°
°∞
¯ otherwise
~i
f = f ri − f ik' + f ik'' , f ik' and f ik'' are parts of flow in i-th channel; f ik' corresponds
to the packets sent from all users to those replica of k -th web server which is allo-
cated at node h (before complementing) and from this replica to all users. f ik'' corre-
sponds to the packets exchanged between all users and replica after reallocating rep-
lica from node h to node m. a kh is the cost of connecting the server k at node h.
Let E r = ( X r ∪ Yr ) − Fr , and let Gr be the set of all reverse variables of normal
variables, which belong to the set E r . We want to choose a normal variable the com-
plementing of which generates a successor with the possible least value of criterion
function (4). We should choose such pairs {( y kh , y km ) : y kh ∈ E r , y km ∈ G r } or
{(x ij , xli ) : x ij ∈ Er , xli ∈ Gr }, for which the value of criterion δ hmk or Δirjl is maximal.
The Web Replica Allocation and Topology Assignment Problem 777
The lower bound LBr of the criterion function (4) for every possible successor
( X s , Ys ) generated from the selection ( X r , Yr ) may be obtained by relaxing or omit-
ting some constraints in the problem (5-7). To find the lower bound LBr we reformu-
late the problem (5-7) in the following way:
4 Approximate Algorithm
The presented exact algorithm involves the initial selection ( X 1 , Y1 ) ∈ ℜ for which
the constraints (6) and (7) are satisfied [9]. Moreover, the initial selection should be
the near-optimal solution of the problem (5-7). To find the initial selection the follow-
ing approximate algorithm is proposed. Of course, this approximate algorithm may be
also used to design of the WAN when the optimal solution is not necessary.
Step 1. For each k -th web server, choose LK k nodes from the set M k such that
paths between these nodes and users of k -th web server are shortest in the
network. Allocate the k -th web replicas at these nodes. Next, solve the classi-
cal topology assignment problem [5]. If this problem has no solution then the
algorithm terminates – the problem (5-7) has no solution. Otherwise, perform
Q*=Q, where Q is value of criterion (4) obtained by solution the topology as-
signment problem.
Step 2. Choose the web replica location for which the value of δ hm
k given by expres-
sion (9) is maximal. Change this location of web replica on location indicated
by expression (9).
Step 3. Solve the topology assignment problem. If the obtained value Q is less than
Q* then perform Q* = Q, and go to step 2. Otherwise, the algorithm termi-
nates. The feasible solution was found. The network topology and web repli-
cas allocation associated with the current Q* is approximate solution of the
problem (5-7).
778 M. Markowski and A. Kasprzak
5 Computational Results
The presented exact and approximate algorithms were implemented in C++ code.
Extensive numerical experiments have been performed with these algorithms for
many different network topologies and for many possible web replica locations. The
experiments were conducted with two main purposes in mind: first, to test the compu-
tational efficiency of the algorithms and second, to examine the impact of various
parameters on solutions to find properties of the problem (5-7) important from practi-
cal point of view.
In order to evaluate the computational efficiency of the exact algorithm many net-
works were considered. For each network the number of iteration of the algorithm
was checked. These number of iterations were compared for all considered networks.
Let Dmax be the maximal building cost of the network, and let Dmin be the
minimal building cost of the network; the problem (5-7) has no solution for
B < Dmin . To compare the results obtained for different wide area networks topolo-
gies and for different web replica locations we introduce the normalized budget
NB = ((B − Dmin ) / (Dmax − Dmin )) ⋅ 100%.
Moreover, let Pi(NB) be the number of iterations of the branch and bound algo-
rithm to obtain the optimal value of Q for normalized budget equal to NB for i-th
considered network topology. Let
1 Z §¨ ·
P(u, v ) = ¦ ¦ P i ( NB ) ¦ P i ( NB ) ¸ ⋅ 100%
Z i =1 ¨ NB∈[u ,v ] ¸
© NB∈[1,100] ¹
be the arithmetic mean of the relative number of iterations for NB∈[u,v] calculated for
all considered network topologies and for different web replica locations, where Z is
the number of considered wide area networks [4]. Fig. 1 shows the dependency of P
on divisions [0%,10%), [10%,20%), ..., [90%,100%] of normalized budget NB. It
follows from Fig. 1 that the exact algorithm is especially effective from computational
point of view for NB∈[40%,100%].
P [%]20
15
10
5
0
[0,10) [20,30) [40,50) [60,70) [80,90) NB [%]
Q
0,027
0,023
0,019
0,015
1 1,8 2,6 3,4 4,2 5 ω
Let ω be the average number of web replicas in the wide area network.
1 K
ω= ¦ LK k
K k =1
Moreover, let Q(ω) be the optimal value of criterion (4) obtained by solving the
problem (5-7) for average number of web replicas equal to ω.
The dependence of the optimal value of the criterion Q on the average numbers of
web replicas ω has been examined. Fig. 2 shows the typically dependence of the crite-
rion Q on average number of web replicas ω. It follows from the numerical experi-
ments and from the Fig. 2 that the function Q(ω) is convex. Moreover, there exists the
minimum of the function Q(ω). The observations following from the computer ex-
periments may be formulated in the form of the below conclusions.
Conclusion 1. The performance quality of the wide area networks depends on the
average number of web replicas.
Conclusion 2. There exists such value of average number of web replicas ω for
which the function Q(ω) is minimal.
Let ωmin be the average number of replicas in the network, for which the value of
Q(ωmin) is minimal. Fig. 3 shows the typical dependence of ωmin on the numbers of
nodes n of the wide area network.
Conclusion 3. The average number of web replicas ωmin in the WAN, for which the
value of Q is minimal, depends on the number of nodes of the WAN. This depend-
ence is linear.
Because the algorithm for the network topology and web replica allocation prob-
lem assume that the numbers of replicas for each web server are given then the prop-
erties described in conclusions 2 and 3 allow to simplify the designing process of the
networks. In first step of the designing process we may calculate the number of repli-
cas for each web server and in the next step we may solve the web replica allocation
and network topology assignment problem using the presented exact algorithm or
approximate algorithm.
The typical dependence of the optimal value of Q on budget B for different values
of parameter α is presented in the Fig. 4. It follows from Fig. 4 that there exists such
780 M. Markowski and A. Kasprzak
ωmin
5,5
4,5
3,5
2,5
1,5
8 13 18 23 28 n
budget B*, that the problem (5-7) has the same solution for each B greater than or
equal to B*.
Conclusion 4. In the problem (5-7), for B ≥ B* the constraint (7) may be substituted by
constraint d(Xr) ≤ B*.
This observation shows that the influence of the building cost (budget) on the op-
timal solution of the problem (5-7) is very limited for greater values of budget B.
The distance between approximate and optimal solution has been also examined.
Let Q app be the solution obtained by approximate algorithm and Q opt be the optimal
value obtained by the exact algorithm for the problem (5-7). Let r denotes the dis-
tance between heuristic and optimal solutions: r = Q app − Q opt Q opt * 100% .
The value r shows how the results obtained using the approximate algorithm are
worse than the optimal solution. Let
number of solutions for which r ∈ [a, b]
R[a, b] = * 100%
number of all solutions
denotes number of solutions obtained from approximate algorithm (in percentage)
which are greater than optimal solutions more than a% and less than b%. Fig. 5
shows the dependence R on divisions [0%−1%), [1%−5%), ..., [80%−100%).
Q
0,025
α = 0,4
Serie1111
α = 0,8
Serie2
0,015
α = 0,9
Serie3
0,005
NB [%]
0 20 40 60 80 100
R [%] 60
40
20
0
[0,1) [5,10) [20,40) [60,80) r [%]
6 Conclusion
The exact and approximate algorithms for solving the web replica allocation and
network topology assignment problem in WAN are presented. The considered prob-
lem is more general than the similar problems presented in the literature. It follows
from computational experiments (Fig. 5) that about 60% approximate solutions differ
from optimal solutions at most 1%. Moreover, we are of the opinion that the network
property formulated as conclusions 2 and 3 is very important from practical point of
view. This property says that there is the influence of the number of web replicas on
performance quality of the WAN. This work was supported by a research project of
The Polish State Committee for Scientific Research in 2005-2007.
References
1. Fratta, L., Gerla, M., Kleinrock, L.: The Flow Deviation Method: an Approach to Store-and-
Forward Communication Network Design. Networks 3 (1973) 97-133
2. Kasprzak, A.: Topological Design of the Wide Area Networks. Wroclaw University of
Technology Press, Wroclaw (2001)
3. Markowski M., Kasprzak A.: An Exact Algorithm for Host Allocation, Capacity and Flow
Assignment Problem in WAN. in: Internet Technologies, Application and Societal Impact.
Kluwer Academic Publishers, Boston (2002) 73-82
4. Kasprzak A.: Exact and Approximate Algorithms for Topological Design of Wide Area
Networks with Non-simultaneous Single Commodity Flows. Lecture Notes in Computer
Science 2660 (2003) 799-808
5. Gola M., Kasprzak A.: Exact and Approximate Algorithms for Two-Criteria Topological
Design Problem of WAN with Budget and Delay Constraints. Lecture Notes in Computer
Science 3045 (2004) 611-620
6. Walkowiak, K.: A New Method of Primary Routes Selection for Local Restoration. Lecture
Notes in Computer Science 3042 (2004), 1024-1035
7. Seonho K., Miyoun Y., Yongtae S.: Placement Algorithm of Web Server Replicas. Lecture
Notes in Computer Science 3043 (2004) 328-336
8. Qiu L., Padmanabhan V.N., Voelker G.M.: On the Placement of Web Server Replicas. Pro-
ceedings of 20th IEEE INFOCOM, Anchorage (2001) 1587 –1596
9. Wolsey, L.A.: Integer Programming. Wiley-Interscience, New York (1998)
Optimal Walking Pattern Generation for a Quadruped
Robot Using Genetic-Fuzzy Algorithm
1 Introduction
The concerns for the human-interactive robots have been increasing rapidly, espe-
cially in the field of entertainment. Robots bring some social pleasure to people and
also assist disabled persons moving from indoors to outdoors in spite of the existence
of uneven terrain and obstacles like stairway. In order to be able to operate in such
environment, it is important to design the legs of the human-interactive robot in a way
that they recognize the uneven terrain and obstacles. Besides, they should have
autonomous capability based on AI technologies such as voice management, motor
control microprocessor application technology, etc. Recently, these concepts have
been implemented in robots such as ASIMO of Honda [1], AIBO of Sony [2, 3],
HOAP-1 of Fujitsu [4], and these types of robots have walking capability, interact
with human in the restricted fields, such as in indoor or laboratory environments.
For those kinds of robots, the important issues are how to recognize the obstacle at
an unknown environment and how to realize the free walking. To recognize external
environment, it is necessary to recognize obstacles and have the ability to transfer its
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 782 – 791, 2005.
© Springer-Verlag Berlin Heidelberg 2005
Optimal Walking Pattern Generation for a Quadruped Robot 783
movement to the legs [5, 6]. Path generation is developed continuously. However, for
quadruped robots, since the relationship between leg trajectory and body path has not
been clearly determined, the optimal leg trajectory still need to be defined. Therefore,
in order to guarantee free walking ability of a quadruped, optimal body path genera-
tion and smooth leg motion generation were considered in this study.
This paper suggests a fuzzy-genetic algorithm, which implemented in a quadruped
robot should make it possible for it to avoid obstacles smoothly and produce optimal
leg trajectory simultaneously. To solve this problem, a fuzzy rule base to generate
optimal gait was made by genetic algorithm. One step distance and angle are the fun-
damental elements of the rule base. When the quadruped robot receives a messages
informing of obstacles, can find the optimal gait through the fuzzy algorithm. As a
result, the optimal path guarantees the robot walking ability. Furthermore, it makes it
possible for the robot to avoid obstacles and at the same time reduce jerks of joints.
All the processes were simulated with a PC program.
ۖۘڌڌ
ۖۘڐ ۖۘڋڌ
Z ۖۘڏڌ
ۖۘ ڍڌ ۖۘڒ ۖۘړ
Z
ۖۘڏ
ۖۘڎڌ [
[
Y ۖ[ ۘڌ Z
ۖۘڑ Y ۖۘڍ ۖۘڔ
Y
Z
:
ۖۘ ڲ [ -JOL ai αi di θ i
; Y ۖۘڎ
Z d1
9 [ m
d2 θ2
Y a3 m
θ3
a4 θ4
Since the robot had a symmetric leg structure, the kinematics analysis was done
only with the front-left leg, and was latter easily replicated to the others. The inverse
kinematics of the front-left leg was as follows. Equations (1), (2), and (3) express the
inverse kinematics of front left leg and equation (4) shows the each parameter of
equation (1). The parameters Px , Py , Pz , a3 , a4 , d1 and d 2 are the position vectors of
784 B.-H. Lee, J.-S. Kong, and J.-G. Kim
the end points and the link parameter θ 2 was the shoulder’s pitch joint, θ 3 was the
shoulder’s yaw joint, and θ 4 was the knee joint. The inverse kinematics of the other
legs was obtained by only changing the base coordinates. The basic leg trajectory was
generated with the fifth order polynomial equation (5). The parameters were deter-
mined with the velocities and accelerations of via points.
§ − β ± β 2 − αγ ·
θ 2 = sin −1 ¨ ¸ (1)
¨ α ¸
© ¹
§ 2ka3 ·
θ 3 = sin −1 ¨¨ ¸
2 ¸ (2)
© p + p − a + a 3 + ( p z − d1 − d 2 ) ¹
2 2 2 2
x y 4
§ p x2 + p y2 − a 42 + a 32 + ( p z − d 1 − d 2 ) 2 a 3 ·
θ 4 = cos −1 ¨ − ¸ (3)
¨ 2 a a a 4 ¸¹
© 3 4
To generate obstacles avoidance path, a robot has to recognize obstacles from external
environments. Thus, a PSD sensor and a RC-motor were installed. The robot finds
information about the obstacle by using the following method.
At first, a robot establishes a relationship between its body and the obstacle ahead.
That relationship can be expressed with two parameters. One of them is the shortest
distance from the robot to the obstacle, and the other is the shortest that will make the
avoidance of the obstacle possible (Fig. 2).
After the robot determines the appropriate distance and angle necessary to avoid
the obstacle, it searches the body projection angle that it will follow in its movement.
In this situation, we use the fuzzy algorithm related with direction and angle values.
As it is well known, in complex situations, the fuzzy algorithm can successfully find
an optimal solution faster [7].
Table 1 represents the rule-base values for the fuzzified input angle related to in-
formation regarding the obstacle. In the table, D-4 to D+4 are the fuzzified values of
the shortest obstacle avoiding width ( w ). The values from E-3 to E+3 are the fuzzi-
fied distances ( d ) between the robot and the obstacles.
We chose the 56 rule-bases, and their outputs represent the available body propul-
sion angles range from –90 to +90 degree. From this rule-base, the robot could search
the optimal values for body direction without collision.
Optimal Walking Pattern Generation for a Quadruped Robot 785
Area to have
to avoid
Obstacle
w
d
60 0
Robot
While generating obstacle avoidance path, the robot should satisfy smooth activity
simultaneously. The process was divided into two parts. One was to make procedure
for the fuzzy rule-base data by genetic algorithm, and the other was for the generation
of an optimal leg’s trajectory based on the via points information from rule-base.
3.2.1 Rule-Base
Generally, a genetic algorithm is used in searching for an optimum. It is not only
efficient in searching optimal solution [8-10], but also dose so without solving any
differential equation for the dynamic system. In this study, the genetic algorithm cre-
ated new generation parameters from the regeneration, crossover and mutation
processes (Table 2).
786 B.-H. Lee, J.-S. Kong, and J.-G. Kim
Table 2. Parameters of GA
External
Obstacle
Information
(using Vision & PSD Genetic Algorithm
Sensor)
ۏۍڼۏ ڮ
One block was for the body path generation block related to section 3.1. It deter-
mined the optimal stride from information about the obstacles it received from sen-
sors. Another block was the via-point generation block, and it generated optimal via-
point of legs information from one-step information about the previous block. The last
block was the leg analysis block, which made the real joint movement based on the
via-point data using leg’s trajectory and kinematics.
Optimal Walking Pattern Generation for a Quadruped Robot 787
The sequences to get the via-point were the same. First, the robot collected the
body propulsion data such as the relative distance and relative orientation between
itself and the obstacles. Then, after the fuzzification, the inference engine produced
the fuzzified velocity and acceleration for the via-point with the rule base made by
genetic algorithm. The interference engine had 91 if-then-else-logics with the related
7 walking distances and 13 walking angles data using this rule base. After that, the
information was converted into real velocity and acceleration at via points by defuzzi-
fication process using the center of area. Finally these data were converted into the
motor angle through kinematics and trajectory generation algorithm.
3
1 7
5
2
4 8
6
3
7 5
4 7
2 6
5 7 3
8
6 8 4
The number represents a plain view of the position of the sole of the foot with re-
spect to time. Table 3 shows the foot position with respect to walking distance and
angle determined by the fuzzy algorithm. Herein x, y, and z represents the moving
directional vectors, as shown in Fig. 1. Using the one-step information, the robot
could determine its own leg moving positions. The legs were designed to move just a
half of body propulsion time. First the legs touched down on the surface, and then
propelled the body to the other half. In this case, two legs propelled the body at the
788 B.-H. Lee, J.-S. Kong, and J.-G. Kim
same time. One leg remained in swing phase, while the other legs remained on the
surface to ensure stability and free motion. This walking procedure was made from
phase 1 to phase 8, repeatedly.
Leg1 Leg4
x y Z X y z
1 l1 cosθ1 0 l1 sin θ1 − l0 cosθ 0 0 − l0 sin θ 0
2 0 0 0 0 -0.05 0
3 − l1 cosθ1 0 − l1 sinθ1 l2 cosθ 2 0 l2 sin θ 2
4 0 -0.05 0 0 0 0
5 l3 cosθ 3 0 l3 sin θ 3 − l1 cosθ1 0 − l1 sinθ1
6 0 0 0 0 -0.05 0
7 − l3 cosθ 3 0 − l3 sin θ 3 l4 cosθ 4 0 l4 sin θ 4
8 0 -0.05 0 0 0 0
Leg2 Leg3
x y z X y z
1 0 0 0 0 -0.05 0
2 − l2 cosθ 2 0 − l2 sin θ 2 l1 cosθ1 0 l1 sin θ1
3 0 -0.05 0 0 0 0
4 l3 cosθ 3 0 l3 sin θ 3 − l2 cosθ 2 0 − l2 sin θ 2
5 0 0 0 0 -0.05 0
6 − l4 cosθ 4 0 − l4 sin θ 4 l3 cosθ 3 0 l3 sin θ 3
7 0 -0.05 0 0 0 0
8 l5 cosθ 5 0 l5 sin θ 5 − l4 cosθ 4 0 − l4 sin θ 4
Once the external data were successfully converted, the robot could determine the
velocity and acceleration of each via point by fuzzy algorithm. That method was dis-
cussed in detail in section 3.2.2. After processing all the sequences, the robot could
generate the walking patterns for a smooth movement.
4 Simulation Result
All the algorithms were made with Visual C++ in a PC environment. The first se-
quence of walking patterns collected information related to the obstacle, and calcu-
lated the adequate motion data (walking distance and angle data of the body), and
then generated the legs trajectory as proposed. Both velocity and acceleration of via
point were supported to be ‘0’. The Fig. 5 depicts a 3D motion snapshot. The surface
was considered uneven and the three sensor interfaces located at (14cm, -2cm),
(45cm, 4cm) and (65cm, 0cm) were considered as obstacles. Those obstacles were
squares of 5䯥, 8䯥, and 2䯥 respectively. The total walking time lasted 11.6s, and the
robot made 20 body propulsions.
Optimal Walking Pattern Generation for a Quadruped Robot 789
Fig. 6 shows the full trajectory position comparison with and without proposed al-
gorithm, and Fig. 7 shows the full step trajectory acceleration of each axis with and
without the genetic-fuzzy algorithm. In Fig. 8, we can see the comparison of the angu-
lar acceleration obtained when using or not the algorithm. The deviation rates of the
acceleration were reduced to 25% in applying the genetic-fuzzy algorithm.
Leg1 Trajectory Position without Fuzzy Algorithm Leg1 Trajectory Position Using Fuzzy Algorithm
0.12 X Axis. 0.12 X Axis.
Y Axis. Y Axis.
0.10 Z Axis. 0.10 Z Axis.
0.08 0.08
leg movement [m]
leg movement [m]
0.06 0.06
0.04 0.04
0.02 0.02
0.00 0.00
-0.02 -0.02
-0.04 -0.04
0 1 2 3 4 5 6 7 8 9 10 11 0 1 2 3 4 5 6 7 8 9 10 11
Time [sec] Time [sec]
2 .0 2 .0
1 .5 1 .5
Acceleration[m/s ]
Acceleration[m/s ]
2
2
1 .0 1 .0
0 .5 0 .5
0 .0 0 .0
- 0 .5 - 0 .5
- 1 .0 - 1 .0
- 1 .5 - 1 .5
- 2 .0 - 2 .0
- 2 .5 - 2 .5
0 1 2 3 4 5 6 7 8 9 10 11 0 1 2 3 4 5 6 7 8 9 10 11
T im e (s e c ) T im e (s e c )
Investigating the improvement of the acceleration of joints with and without the al-
gorithm, the sum of the acceleration of the shoulder’s pitch joint ( θ 2 ) was reduced
790 B.-H. Lee, J.-S. Kong, and J.-G. Kim
25%, and the shoulder’s yaw joint ( θ 3 ) was improved about 28%. The acceleration
data of knee joint ( θ 4 ) improved about 6%. Angular acceleration reduction implies
the smooth motion of the robot. As a result, the robot joints were less influenced after
applying the algorithm.
T h e t a 2 a n g u la r a c c e l e a r a t io n n o t u s in g f u z z y a lg o r it h m T h e t a 4 a n g u la r a c c e l e a r a t io n u s in g f u z z y a lg o r it h m
2000 2000
1500 1500
1000 1000
Acceleration[rad/s ]
Acceleration[rad/s ]
2
2
500 500
0 0
-500 -5 0 0
-1 0 0 0 -1 0 0 0
-1 5 0 0 -1 5 0 0
-2 0 0 0 -2 0 0 0
-2 5 0 0 -2 5 0 0
0 1 2 3 4 5 6 7 8 9 10 11 0 1 2 3 4 5 6 7 8 9 10 11
T im e (s e c ) T im e (s e c )
T h e t a 3 a n g u la r a c c e le a r a t i o n n o t u s in g f u z z y a lg o r it h m T h e t a 4 a n g u la r a c c e l e a r a t io n u s in g f u z z y a lg o r it h m
1500 1500
1000 1000
Acceleration[rad/s ]
Acceleration[rad/s ]
2
500 500
0 0
-5 0 0 -5 0 0
-1 0 0 0 -1 0 0 0
-1 5 0 0 -1 5 0 0
0 1 2 3 4 5 6 7 8 9 10 11 0 1 2 3 4 5 6 7 8 9 10 11
T im e (s e c ) T im e (s e c )
T h e t a 4 a n g u la r a c c e le a r a t i o n n o t u s i n g f u z z y a l g o r i t h m T h e t a 4 a n g u la r a c c e le a r a t io n u s in g f u z z y a lg o r i th m
3000 3000
Acceleration[rad/s ]
2
Acceleration[rad/s ]
2
2000 2000
1000 1000
0 0
-1 0 0 0 -1 0 0 0
-2 0 0 0 -2 0 0 0
0 1 2 3 4 5 6 7 8 9 10 11 0 1 2 3 4 5 6 7 8 9 10 11
T im e (s e c ) T im e ( s e c )
5 Conclusion
It is difficult to generate a trajectory that can foresee external environments for mobile
robot. Especially, the body drive trajectory of a quadruped robot can’t be directly
related to its leg’s trajectory with a deterministic function. Therefore a relationship
between the two trajectories is required. The other difficulty in designing a robot is
how to realize a smooth motion for its legs. Furthermore, it is essential for a robot to
have a capability of stable walking. In this paper, the genetic-fuzzy algorithm was
suggested to solve those problems. It is suggested that the genetic algorithm is em-
ployed for a leg’s trajectory generation method based on rule-base, and the fuzzy
algorithm is applied for the optimal movable path to avoid obstacles. From those
algorithms, a quadruped robot could create an optimal walking path while considering
Optimal Walking Pattern Generation for a Quadruped Robot 791
the uneven terrain. In addition the optimal leg trajectory could be created after trajec-
tory planning from this path.
The proposed method will be verified with the real robot SERO-V using the infor-
mation of real sensors. As future works, a vision system and various sensors will be
implemented to obtain actual data from external environment so as to incorporate
human friendly behavior to robots.
Acknowledgement
This work was supported by Grant No. R01-2003-000-10364-0 from Korea Science
& Engineering Foundation.
References
1. Y. Sakagami, R. Watanabe, C. Aoyarna, S. Matsunaga, N. Higaki, and K. Fujimura: The
intelligent ASIMO: System overview and integration, IEEE/RSJ International Conference,
Vol. 3 (2002) pp. 2478-2483
2. G. S. Hornby, S. Takamura, J. Yokono, O. Hanagata, T. Yamamoto and M. Fujita: Evolv-
ing Robust Gaits with AIBO, IEEE Robotics and Automation, Vol. 3 (2000) pp. 3040-
3045
3. P. Buschka, A. Saffiotti and Z. Wasik: Fuzzy Landmark-Based Localization for a Legged
Robot, IEEE/RSJ International Conference, Vol. 2 (2000) pp. 1205-1210
4. Shotaro Kamio, Hongwei Liu, Hideyuki Mitsuhasi and Hitoshi Iba: Researches on Ingen-
iously Behaving Agents, NASA/DoD Conference (2003) pp. 208-217
5. T. Shibata, T. Matsumoto, T. Kuwahara, M. Inaba and H. Inoue: Hyper Scooter: A Mobile
Robot Sharing Visual Information with a Human, IEEE Intl. Conf. on Robotics and Auto-
mation, Vol. 1 (1995) pp. 1074-1079
6. S. Kagami, K. Okada, M. Kabasawa, Y. Matsumoto, A. Konno, M. Inaba and H. Inoue: A
Vision-based Legged Robot as a Research Platform, IEEE/RSJ Intl. Conf. on Intelligent
Robots and Systems (1998) pp. 235-240
7. Xuedong Chen, Keigo Watanabe, Kazuo Kiguchi and Kiyotaka Izumi: An ART-Based
Fuzzy Controller for a Adaptive Navigation of a Quadruped Robot, IEEE/ASME Transac-
tions on Mechatronics, Vol. 7, No. 3 (2002) pp.318-328
8. H.Zhung, J.Wu, and W.Hung: Optimal Planning of Robot Calibration Experiments by Ge-
netic Algorithms, IEEE Conf. on Robotics and Automation, Vol. 2 (1996) pp. 981-986
9. K. Shimojima, N. Kubota, and T. Fukuda: Trajectory Planning of Reconfigurable Redun-
dant Manipulator Using Virus- Evolutionary Genetic Algorithm, IEEE Conf. on Industrial
Electronics, Control, and Instrumentation, Vol. 2 (1996) pp. 836-841
10. K. H. Shim, B. H. Lee, and J.G. Kim: Control Balancing Weight for IWR Robot by Ge-
netic Algorithm, Proceeding of the 11th KACC (1996) pp. 1185-1188
11. Xuedong Chen, Keigo Watanabe, Kazuo Kiguchi, and Kiyotaka Izumi: An ART-Based
Fuzzy Controller for a Adaptive Navigation of a Quadruped Robot, IEEE/ASME Transac-
tions on Mechatronics, Vol. 7, No. 3 (2002) pp. 318-328
Modelling of Process of Electronic Signature with Petri
Nets and (Max, Plus) Algebra
Abstract. This article discusses the modelling and the evaluation of process of
electronic signature (ES). According to a certain point of view, this process can
be shown as a class of Dynamic Discrete Event Systems (DDES). It is in this
framework that we study this class with using Petri Nets (PN) and the theory of
linear systems in (max, +) algebra. We introduce these two formalisms with the
aim to describe the graphical and analytical behaviours of studied process. The
resolution of (max, +) model which describes the system enables us to evaluate
the process performances in terms of occurrence dates of various events that
compose it (authentication, hashcoding, signature, timestamping). To illustrate
our methodology, we finish this article with a numerical example.
1 Introduction
The security of the information systems presents a primordial task because of a strong
growth of the technology. Actually, the treatment technique of the information
occupies a dominating place in the data-processing applications. With the growth of
the electronic exchanges, the security becomes increasingly crucial. To improve the
quality of service (QoS) of the electronic exchanges it is necessary to have the means
of analysis and the appropriate methods. This QoS must be validated with
specification of models that repose on formal properties like robustness, reliability …
The information systems constitute a particular class of DDES whose dynamic is
governed by various phenomenons as synchronisation, concurrency and parallelism.
These systems result essentially from the human design, according to a certain point
of view, their activities are due to asynchronous occurrences of discrete events. It is
thus possible to model them via various adapted and dedicated tools.
The objective of this paper, which enters within the framework of the security and
the legalization of data-processing communications, is to study processes evolving in
a space of discrete states. Our contribution concerns, more precisely, the adaptation of
the concepts and the theoretical results which formalized graphically by PN and
mathematically by (max, +) algebra. This is in order to model and analyse the data-
processing exchanges between the various actors of confidence in the process of
electronic delivery of signature hashcoding, authentication, signature, timestamping.
Our study is thus concretized by the development of models able to bring solutions to
the problems of safety and improvement of service quality of ES. These models
facilitate the structural and behavioural analysis of signature process.
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 792 – 801, 2005.
© Springer-Verlag Berlin Heidelberg 2005
Modelling of Process of Electronic Signature with Petri Nets and (Max, Plus) Algebra 793
Hashcoding [6] aims at creating a fixed-length message digest from any arbitrary data
stream. This digest is independent of the size of the source stream. Let’s consider h(),
a one-way hash function used to compute a digest on a given stream s. The most
important property of this function prevents source stream reconstruction only if the
computed digest is known. Although reconstruction the original stream s from a given
digest d may theoretically be possible, it appears to be computationally unfeasible:
(h(s)=d) (p(h-1(d) = s) → 0)
Moreover, the probability p that two different streams s1 and s2 obtain identical
digests with a given hashcoding algorithm ha reaches zero. The hash function is then
said collision resistant:
(s1 ≠ s2) (p(h(s1,ha) = h(s2,ha)) → 0
Many digest algorithm such as MD2 [5], MD4 [14] and RIPEMD [2] [11] have
been developed and they are specifically designed to compute digital signatures.
Digital signature is the analogue of the handwritten signature, it shares with this latter
the following properties:
• the reader must be convinced that the document was signed by the signer;
• the signature can not be falsified;
• the signature is not reusable. It is a part of the signed document and con not be
moved on another document;
• a signed document is inalterable. Once signed, one can not modify it.
Digital signature generation is nothing but the application of asymmetric key
cryptography over streams hashcodes. Unlike data encryption, digital signature’s
purpose does not consist of data confidentiality but rather in providing [4]:
794 A. Nait-Sidi-Moh and M. Wack
The National Institute of Standards and Technology [10] enumerate a certain number
of signatures currently used in handwritten form. In order to reproduce the traditional
diagrams of signatures, the ES must provide an equivalent of all types of signature. In
the framework of digital signature, we can distinguish several types of signature [13]:
Simple and single signature
It is the simplest signature which a single user signs a document (the document
term is used here in the broad sense, and can thus indicate any numerical
document (text, video, image, etc.)).
Simple multiple signature or Co-signature
This type of signature is presented when several users sign the same document.
Modelling of Process of Electronic Signature with Petri Nets and (Max, Plus) Algebra 795
Signer Document
Availability of signer Availability of document
Authenticity Hashcoding
Private key Stamp
Signature
Signed document
Request timestamping
Validation of timestamping
u1 u2
P1,τ1 P2,τ2
x1 x2
P3,τ3 P4,τ4
x3
P5,τ5
x4
P7,τ7 P6,τ6
x5 x6
P9,τ9 P8,τ8
x7
P10,τ10
y
ª İ İ İº ª IJ1 İ º
A=« İ İ İ» , B = « İ IJ » and C = [ε ε e].
« » « İ İ2 »
¬IJ3 IJ 4 ݼ ¬ ¼
The first equation of the system (2) is an implicit equation. In order to solve it, and
find all dates where various operations of process occur, we replace in the second
member of (2), and in iterative way, X(k) by its expression, thus we obtain:
∀ k ≥ 1,
X(k) = A (A X(k) ⊕ B U(k)) ⊕ B U(k) = A2 X(k) ⊕ A B U(k) ⊕ B U(k)
=… (3)
= An X(k) ⊕ An-1 B U(k) ⊕ An-2 B U(k) ⊕ ... ⊕ A B U(k) ⊕ B U(k)
= An X(k) ⊕ (An-1 ⊕ An-2 ⊕ ... ⊕ A ⊕ E) B U(k)
Where n is the order of the matrix A (in our case n = 3). E is the identity matrix in
dioid algebra (it composed of the element “e” on diagonal and “ε” elsewhere).
In the equation (3), it figures the expression of the quasi-inverse of the matrix A
(denoted A* = An-1 ⊕ An-2 ⊕ ... ⊕ A ⊕ E, and called Kleene star). As An = ε, (because
the graphical model in figure 3 does not contain no strongly connected component),
then the smallest solution of the first equation of system (2) is given by:
ª e İ İº ª IJ1 İ º
With: A = « İ
*
e İ » , A* B = « İ IJ 2 » and C A* B = [τ1τ3 τ2τ4].
« » « »
«¬IJ 3 IJ 4 e »¼ «¬IJ1IJ 3 IJ 2 IJ 4 »¼
From the expressions (4) and (5), we deduce and evaluate the dates of authenticity
and signature of document.
With the aim to include the process of the considered signature, we illustrate our
method with an example of application for which we associate to each operation of
process an execution time. On the table 1, we affect to each parameter τi (1i5) a
numerical value. We note that the firing of each transition is immediate, and each
validate transition is fired.
800 A. Nait-Sidi-Moh and M. Wack
According to these numerical values, the equations (4) and (5) that give the
solutions of system (2) become:
ª x1 (k) º ª60 İ º
ª u (k) º
∀ k ≥ 1, X(k) = « x 2 (k) » = « İ 120» ⊗ « 1 » (6)
« » « » ¬u 2 (k)¼
¬« x 3 (k) ¼» ¬70 135¼
ª u1 (k) º
∀ k ≥ 1, Y(k) = [70 135] ⊗ «u (k)» (7)
¬ 2 ¼
We suppose that we want to sign a document (kth document) by a signer (kth
signer). If we choose the system input such that u1(k) = u2(k) = 0 ( = e); this
corresponds to the dates of starting of signature process (creation of document and
call of signer). From the equation (6), we obtain what follows:
Authenticity date = x1(k) = 60 ⊗ e ⊕ ε ⊗ e = 60 s;
Hashcoding = x2(k) = ε ⊗ e ⊕ 120 ⊗ e = 120 s;
Signature date = x3(k) = y(k) = 70 ⊗ e ⊕ 135 ⊗ e = 135 s.
In this example, we show that it is possible to evaluate in a formal way a signature
process with (max, +) equations, by determining the various dates of occurrence of
events that constitute it, like the authenticity, the timestamping, the signature …
4 Conclusion
After describing the electronic signature as well as the various operations of its
process starting from the creation of document to its signature, we treated a
problematic related to the modelling and the analysis of process of electronic
signature. For this objective, we proposed a formal approach based on adapted tools
to the representation of the information systems which represent a class of dynamic
discrete event systems. We use then Petri nets and (max, +) algebra. For these tools,
we could present and evaluate the process of electronic signature. This demonstration
of feasibility must enable us to develop a more complete model by completing it, and
adding the whole of actors of the electronic signature.
In our next contribution, we will define a process control based on residuation
theory in dioid algebra.
Modelling of Process of Electronic Signature with Petri Nets and (Max, Plus) Algebra 801
References
[1] Baccelli F., Cohen G., Olsder G. L. and Quadrat J. P., "Synchronisation and linearity : an
algebra for Discrete Event Systems". Wiley, 1992.
[2] Dobbertin H., Bosselaers A., Preneel B., "RIPEMD-160, a strengthened version of
RIPEMD", Fast Software Encryption, LNCS vol. 1039, D. Gollmann Ed., pp. 71-82,
1996.
[3] Gaubert S., "Théorie des systèmes linéaires dans les dioïdes", Thèse de doctorat, Ecole
National Supérieure des mines de Paris. Juillet 1992.
[4] Kaeo M., "Designing Network Security", Macmillan Technical Publishing, USA, ISBN 1-
57870-043-4, 1999.
[5] Kaliski Jr B. S., “RFC 1319: The MD2 Message-Digest Algorithm”, RSA Laboratories,
Janvier 1992.
[6] Menezes A. J., Van Oorschot P. C., Vanstone S. A., "Handbook of Applied
Cryptography", CRC Press, USA, ISBN 0-8493-8523-7, Février 2001.
[7] Nait-Sidi-Moh A., "Contribution à la modélisation, à l’analyse et à la commande des
systèmes de transport public par les réseaux de Petri et l’algèbre (Max, Plus)". Thèse de
doctorat en Automatique et Informatique, Université de Technologie de Belfort-
Montbéliard et Université de Franche-Comté, Décembre 2003.
[8] National Institute of Standards and Technology, "Secure Hash Standard (SHS)", Federal
Information Processing Standards Publication, FIPS PUB 180-1, Avril 1995.
[9] National Institute of Standards and Technology, "Data Encryption Standard (DES)",
Federal Information Processing Standards Publication, FIPS PUB 46-3, Octobre 1999.
[10] National Institute of Standards and Technology, "Digital Signature Standard (DSS)",
Federal Information Processing Standards Publication, FIPS PUB 186-2, Janvier 2000.
[11] Preneel B., Bosselaers A., Dobbertin H., "The cryptographic hash function RIPEMD-
160", CryptoBytes, vol. 3, No. 2, pp. 9-14, 1997.
[12] René David et Hassane Alla, "du grafcet aux réseaux de Petri". Série Automatique,
hermes, Paris 1992.
[13] Rieupet D. , Wack M. , Cottin N. , Assossou D. , "Signature électronique multiple",
Atelier Sécurité des Systèmes d'Information, XXIIème Congrès INFORSID, Mai 2004.
[14] Rivest R. L., "RFC 1320: The MD4 Message-Digest Algorithm", MIT Laboratory for
Computer Science and RSA Data Security, Avril 1992.
[15] RSA Data Security Inc., "Public Key Cryptography Standards, PKCS 1-12", disponible en
ligne à ftp://ftp.rsa.com/pub/pkcs, 1993.
Evolutionary Algorithm for Congestion Problem in
Connection-Oriented Networks
1 Introduction
In this paper, we tackle the problem of flow assignment in computer networks by an
innovative evolutionary algorithm. The considered optimization problem can be
formulated as follows. Given a network, a set of origin-destination node pairs
(commodities) and demand for the commodities, the congestion non-bifurcated
problem (NBC) consists in routing the flow of commodities using only one path for
each commodity. The objective is to maximize the minimum value of network link
residual capacity (difference between link capacity and flow allocated on this link).
Additionally, the capacity constraint must be satisfied, i.e. flow of arc (calculated as a
sum of all commodities using that arc), cannot exceed capacity of the arc. We call a
solution of the NBC feasible if the capacity constraint is satisfied. It must be noted
that NBC problem is NP-complete [13]. Examples of popular network techniques
applying the connection-oriented (c-o) flow are: Asynchronous Transfer Mode
(ATM), MultiProtocol Label Switching (MPLS).
Our main focus is survivability of c-o networks. Survivability of computer
networks is very important since loss of service means loss of revenues, especially in
high-speed fiber networks. Therefore, network flows must be assigned to enable
effective restoration when a failure occurs. Since, the residual capacity, which is not
used in normal, failure-free situation is necessary for allocation of backup paths that
restore broken connections, it is important to maximize the residual capacity of links.
More information on survivable networks can be found in [6].
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 802 – 811, 2005.
© Springer-Verlag Berlin Heidelberg 2005
Evolutionary Algorithm for Congestion Problem in Connection-Oriented Networks 803
2 Congestion Problem
We model the network as a directed graph G=(N,A) where N is a set of n nodes
(vertices) representing network switches, A is a set of m arcs (directed edges). In this
work we apply link-path formulation of the non-bifurcated multicommodity (m.c.)
flow [6] ,[13]. It is obtained by providing for each commodity i∈P a set of candidate
{ }
routes Π i = π i : k = 1,..., li connecting end nodes of commodity i. One commodity
k
can use only one route π ik . Let xik denote a 0/1 variable, which equals one if π i is
k
k
route for commodity i and is equal to 0 otherwise. Another binary variable aij
indicates whether or not arc j∈A belongs to π ik . Using this representation of m.c.
flow the non-bifurcated congestion (NBC) problem is as follows
max z (1)
subject to
k
¦ xi = 1 ∀i ∈ P (2)
π ik ∈Π i
formulation given by (1-6) can be found in the literature. The maximum concurrent
flow problem consists in maximizing the throughput of the network, i.e. as large a
common percentage of each demand as possible should be routed while not exceeding
the capacity constraint. In the minimum congestion problem full demands must be
routed in order to minimize the maximum load of an arc and satisfy the capacity
constraint. Also the relative congestion defined as the maximum ratio over all arcs of
flow fa divided by the capacity ca can be applied an objective function [1-3], [5], [9].
As mentioned above, our main focus in this work is on the network survivability of
c-o networks. Therefore, in this work we apply formulation (1-6) of the congestion
problem using non-bifurcated m.c. flow, which is more convenient for use in
optimization of flows in survivable networks. However, some of algorithms
developed for maximum concurrent flow and minimum congestion problems can be
also applied to solve NBC problem.
Most of literature on problems related to NBC either concerns congestion problems
of bifurcated m.c. flows, or some limited versions of UFP in the context of
congestion. A comprehensive treatment of various algorithms developed for
maximum concurrent flow and minimum congestion problems is given in [2]. Author
focuses only on bifurcated m.c. flows. Chlamatac et al. proposed an algorithm for
optimization of virtual paths in ATM networks that minimizes the load on networks
links [3]. Since ATM is a connection-oriented technique, the network flow is modeled
as non-bifurcated m.c. flow. The central idea behind the algorithm is to assign random
weights to the links in a special way that assures, for any possible realization of the
weights, that the minimum weight path between two nodes will be inevitably a
minimum-hop path. Authors prove that for large networks the solution provided by
the algorithm is within a small factor of the best possible solution.
There are many papers concentrating on developing constant-factor approximation
algorithms and bounds for various versions of unsplittable flow problems (UFP).
Some of them consider a limited version of UFP – the single-source unsplittable flow
problem, which consists in allocating a set of commodities having the same source
node to single paths [8]. Approximation algorithms for multi-source UFP are
discussed in [9]. However, works concentrating on constant-factor approximation
algorithms lack numerical experiments presenting performance of algorithms in real
networks. Main focus is reduced to mathematical properties of algorithms, while the
way how to use these algorithms for optimization of flows in computer networks is
not discussed, what limits significance of such papers for real applications.
The NBC problem is an integer 0/1 problem with linear constraints. However, size
of the problem is very large even for relatively small networks. A popular method to
solve 0/1 problems is the branch and bound (B&B) approach. Such algorithms were
applied to many problems related to NBC. Nevertheless, branch and bound algorithms
are intractable for networks of medium and large size. Moreover, a large reduction of
candidate routes is required to make the problem feasible for branch and bound
algorithm [7], [13].
All references discussed above consider the static optimization of network flows.
There are also related works that focus on dynamic optimization of network demands.
In dynamic routing, requests arrive one-by-one and future demands are unknown.
Shortest-widest path (SWP) algorithm that enables dynamic allocation of paths
according to bottleneck metrics like residual capacity or link utilization is proposed in
Evolutionary Algorithm for Congestion Problem in Connection-Oriented Networks 805
[11]. Dynamic routing algorithms can be used also for static optimization of network
flows by applying the same algorithm sequentially for all demands. Since all demands
are known a priori in static optimization, ordering of processed demands can be
changed to improve the results.
3 Algorithm Description
In this section we present the main characteristics and objectives of new evolutionary
algorithm called HEFAN (Hierarchical Evolutionary algorithm for Flow Assignment
in Non-bifurcated multicommodity flow). Ideas of presented algorithm are based on
the approach presented in [14]. From the general point of view the algorithm has only
one objective: to find a feasible and the best in terms of fitness function, set of routes
between the specified node pairs in the oriented network. A typical evolutionary
algorithm can easily gain this objective, but only if we support a proper collection of
routes for which the search will be done. Such a collection can not be neither too
narrow nor too wide – too narrow collection will force us to search too small part of
possible solutions space, which does not contain the best of them. Too wide set of
routes will make the problem intractable due to the tremendous number of
possibilities. These are the reasons why presented system is conceptually divided into
three abstract parts: the routes proposals database, the high and the low level. The
high level works as a typical EA. The low level is an intelligent searcher of new
candidate routes, based on EA ideas, using some of its features but not being such an
algorithm in fact.
The high level of the presented algorithm contains typical EA operators that can be
found in any publications and books of this topic [4], [10], [12]. The low level idea is
based on the hierarchical algorithm idea [15], even though it’s existence does not
make the presented algorithm hierarchical in fact, as well as it makes the whole
algorithm not being a typical EA at all. This is the reason why the algorithm presented
in this work was called by authors quasi-hierarchical. Because of lack of space in this
publication only the main outline of presented algorithm will be shown.
First, we explain the high level of the algorithm. The representation of the
considered problem is as follows. One chromosome is the set of route proposals for
all commodities in the network. For instance, chromosome 237 means that first
commodity uses the route number 2; second commodity uses route number 3 and etc.
Main operators of high level are introduced in the following. The selection method
is based on a roulette wheel method. There are two crossing operators supported:
linear and random. The decision which of them is going to be used is made randomly
and the user sets proportions. In the linear crossing we randomly pick up a crossing
breakpoint and create the offspring by copying the first x genes from first parent and
the rest from second; second offspring creation process is analogous. The difference
between random order crossing operator and traditional linear crossing is only that
there is no crossing point in such operation, instead of that we randomly copy the
genes from one of the parents to their offspring in a way that the offsprings are always
opposite (if on n position first offspring has a gene from the second parent the second
offspring has gene from first parent). Mutation operator is replacing randomly picked
806 M. PrzewoĨniczek and K. Walkowiak
up gene (route between the two nodes) by a different proposition of such gene
(different route between the same nodes) from the routes database.
The brainstorm operator is dealing, for a period of time and in special way, with
every individual’s fitness function value. Brainstorm isn’t a typical operator, it is
rather a population state operator. The turn on condition is fulfilled when mean value
of population average fitness value of last n generations is not greater then the same
average of the previous n generations increased by x%. Consequently, if the following
formula is satisfied the brainstorm is turned on
c § c−n ·§ x · (8)
¦ Favg (i ) / n ≤ ¨¨ ¦ Favg (i ) / n ¸¸¨1 + ¸
i =c −n © i =c − 2n ¹© 100 ¹
F (i )
where c is the number of current generation, avg denotes the average value of
fitness function for generation number i. The following function defines the value of
brainstorm modifier BM(i) for generation i
(9)
° 0 if turned off i<t
°
BM (i ) = ® Favg (i ) if turned on t ≤i<t+ y
° (t + y + z ) − i
° Favg (i) if turning off t+ y≤i<t+ y+ z
¯ z
where t is number of generation for which the brainstorm is turned on. The n, x, y, z
and t values are defined by user. The brainstorm operator (population state) is the
answer for a typical situation when the population starts to concentrate only around
one local maximum area. In such population all individuals are very close to each
other and their fitness is also very similar. That is why the whole average fitness starts
to become constant. In HEFAN this situation triggers the brainstorm that helps to go
out from this situation (so the population is diverse again). Brainstorm modifier is
introduced to the fitness function for chromosome p in generation i
F (i, p) = z ( p) + BM (i ) (10)
where z(p) denotes value of congestion obtained for routes given in chromosome p.
In the low level of the algorithm the chromosome is represented by a list of
network nodes identifiers that the route is going through. Node identifiers are the
individual’s genes, which means that the number of genes for every individual can be
different and that its neighbors determine the value of a gene. For instance,
chromosome 2456 denotes a route originating in node 2, going through nodes 4 and 5,
and finally reaching the node 6.
The low level operators of HEFAN are as follows. There is no regular fitness
function defined for low level. The selection procedure is based on the simple idea
which is best described by sentence: “If we can not directly tell which routes are
somehow better then the others then we have to believe that we will probably find
better routes in better fitting sets of them (the better high level individuals)”. In order
to select two low level parents we select the high level one and we randomly pick up
one of his genes which is in fact the low level individual after that we select another
high level individual and take one of his genes that is representing the route between
Evolutionary Algorithm for Congestion Problem in Connection-Oriented Networks 807
the same nodes as the first already chosen low level parent. In the crossing operator
the high level individuals for which the low level parents are from, are rewritten into
the new high level population. If the chance decides the low level crossing operator is
not to be used, both high level individuals stay the same like they did before. If the
low level crossing operator is used they will contain the modified version of routes
that were randomly chosen to be the low level parents. The two selected low level
individuals of the same type (two routes with the same source and destination node
identifier) are crossed by random division of both individuals into two pieces. The
first part from first parent is then glued with the second part of second parent giving
us the first offspring while the second offspring is made in an analogical way. The
two pieces does not have to fit to each other (in fact they will not in most of the cases)
because of that we glue them using the randomly generated route between the glued
nodes from the routes database.
The low level mutation operator is first checking the mutation chance for every
high level individual. If the low mutation operator is to be used we randomly pick up
the high level individual gene, which is low level individual and mutate it by
replacing the randomly chosen part of it by the proper (having the same origin and
destination nodes identifiers as the replaced part) route proposition from the routes
database. It should be noted that the low level cross and mutation operators might
produce the route that is containing empty loops, which are removed from it before it
is shown to the routes database as a new route proposition.
The routes database contains the list of known routes. The new propositions
generated during the system work are accepted if they do not exist in the database yet,
they are rejected if they already exist. The database asked for the route proposition
between the specified nodes pair randomly picks up one of known routes that have the
proper origin and destination node identifiers. There must be at least one route
proposition between the pair of nodes to start the algorithm.
4 Results
The algorithm was coded in C++. Performance of HEFAN was studied in detail on a
family of networks consisting of a master network and a series of progressively
sparser networks derived from the master network. In Fig. 1 we show the master
network that consists of 36 nodes and 162 directed links, which is referred to as 162.
All other tested network called 144, 128, 114, and 104 also have 36 nodes, however
the number of links is 144, 128, 114, and 104, respectively. Capacity of network links
is set to 5000 BU (bandwidth units). For each network we tested various demand
matrices. Each demand matrix includes a full mesh of 1260 demands, i.e. there is a
demand for each source-destination node pair and each demand has the same
bandwidth requirement. The number of tested demands matrices is 7, 7, 12, 7, and 10,
respectively for networks 162, 144, 128, 114, and 104.
The first step of numerical experiments was tuning of the algorithm. Due to
experience with HEFAN, preliminary tests and previous research [14] we decided to
apply the following values of algorithm’s parameters. Probabilities of high level
crossing, high level mutation, low level crossing, low level mutation are set to
the following values {0.0/0.0/0.7/0.5}, {0.5/0.1/0.0/0.0}, {0.5/0.1/0.3/0.2},
808 M. PrzewoĨniczek and K. Walkowiak
{0.5/0.1/0.6/0.4}. All these four combinations are tested with and without brainstorm
modifier. Other parameters are fixed to the same value for all experiments, i.e.
number of generations - 1000, the population size - 1000, random crossing possibility
– 0.75.
17 35
18 36
16 34
9 7 27 25
12 30
2 3 20 21
15 33
1 19
6 24
4 5 22 23
11 29
10 8 13 14 28 26 31 32
Networks
Probabilities Brainstorm
104 114 128 144 162
0.0/0.0/0.7/0.5 On 0.23 0.92 1.33 1.50 0.82
0.5/0.1/0.0/0.0 On 1.25 1.06 1.76 2.14 0.94
0.5/0.1/0.3/0.2 On 0.02 0.66 0.38 0.84 0.00
0.5/0.1/0.6/0.4 On 0.05 0.70 0.36 0.20 0.00
0.0/0.0/0.7/0.5 Off 0.32 0.85 1.25 1.21 0.94
0.5/0.1/0.0/0.0 Off 1.25 1.06 1.83 2.25 0.94
0.5/0.1/0.3/0.2 Off 0.02 0.59 0.98 0.11 0.00
0.5/0.1/0.6/0.4 Off 0.06 0.04 0.75 0.09 0.00
0.5/0.1/0.3/0.2/on 0.5/0.1/0.3/0.2/off
800 0.5/0.1/0.6/0.4/on 0.5/0.1/0.6/0.4/off
700
600
Congestion
500
400
300
200
100
0
0 100 200 300 400 500 600 700 800 900 1000
Number of generation
Fig. 2. Convergence of algorithm for various sets of parameters obtained for network 128
of CFZ. We also apply the shortest-widest path (SWP) algorithm [11]. In particular,
we develop two versions of the algorithm using shortest-widest path (SWP) method.
In SWPNorm algorithm paths are processed sequentially without any sorting. In
SWPSort paths are sorted according to their residual capacity, starting from the path
with smallest value of residual capacity. In Table 2 we present relative performance
HEFAN and other heuristics.
Generally, HEFAN outperforms other algorithms. Only for network 162 SWP
gives the same results as HEFAN. However, HEFAN requires much more time (about
1 hour on a PC with 2GHz processor and 512 MB of RAM) to find a solution while
other heuristics need less than second.
Networks
Algorithms
104 114 128 144 162
HEFAN 0.19 0.00 0.00 0.07 0.00
SWP 0.32 1.27 5.26 2.21 0.00
SWPSort 2.50 1.27 1.66 1.29 2.59
CFZMod 8.79 6.54 11.00 6.18 5.29
as objective functions network cost, delay and many other criteria. One of possible
modifications of presented approach may be changing the current algorithm so that it
can also design the network topology for a given demand and route sets.
References
1. Bienstock, D., Gunluk, O.: Computational experience with a difficult multicommodity
flow problem. Math. Programming, 68 (1995), 213-238
2. Bienstock, D.: Potential function methods for approximately solving linear programming
problems, Theory and Practice. Kluwer Academic Publishers (2002)
3. Chlamatac, I., Fargo, A., Zhang, T.:Optimizing the System of Virtual Paths. IEEE/ACM
Trans. Networking, 6 (1994), 581-587
4. Davis. L.: Handbook of Genetic Algorithm. Van Nostrand Reinhold. New York (1996)
5. Duhamel, C., Vatinlen, B., Mahey, P., Chauvet F.: Minimizing congestion with a bounded
number of paths, in Proceedings of ALGOTEL'03 (2003), 155-160
6. Grover, W.: Mesh-based Survivable Networks: Options and Strategies for Optical, MPLS,
SONET and ATM Networking. Prentice Hall PTR, Upper Saddle River, New Jersey
(2004)
7. Kasprzak, A.: Exact and Approximate Algorithms for Topological Design of Wide Area
Networks with Non-simultaneous Single Commodity Flows. Lectures Notes In Computer
Science, LNCS 2660, (2003) 799-808
8. Kleinberg, J.: Single-source unsplittable flow. In Proc. of FOCS '96, pp. 68-77, 1996.
9. Kolman, P., Scheideler, C.: Improved bounds for the unsplittable flow problem. In Proc. of
the Symposium on Discrete Algorithms (2002), 184-193
10. Kwasnicka, H.: Genetic and Evolutionary Algorithms - an Overview. Division of
Computer Science, Wroclaw University of Technology (1998)
11. Ma, Q., Steenkiste, P.: On Path Selection for Traffic with Bandwidth Guarantees. In Proc.
of IEEE International Conference on Network Protocols (1997), 191-202
12. Michalewicz, Z.: Genetic Algorithms + Data Structures = Evolution Programs. 3rd edn.
Springer-Verlag, Berlin Heidelberg New York (1996)
13. Pióro, M., Medhi, D.: Routing, Flow, and Capacity Design in Communication and
Computer Networks. Morgan Kaufman Publishers (2004)
14. Przewozniczek. M.: Genetic algorithms in use of routes finding in computer connection
oriented networks. Diploma work. Chair of Systems and Computer Networks, Wroclaw
University of Technology (2003)
15. Radcliffe. N.. Surry. P.: Co-operation through Hierarchical Competition in Genetic Data
Mining. Technical Report EPCC-TR94-09, Edinburgh Parallel Computing Center (1994)
16. Walkowiak, K.: Genetic approach to virtual paths assignment in survivable ATM
networks. In Proc. of 7th International Conference on Soft Computing MENDEL (2001)
13-18
17. Walkowiak K.: A Branch and Bound Algorithm for Primary Routes Assignment in
Survivable Connection Oriented Networks. Computational Optimization and Applications
2 (2004), 149-171.
Design and Development of File System for
Storage Area Networks
1 Introduction
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 812 – 825, 2005.
© Springer-Verlag Berlin Heidelberg 2005
Design and Development of File System for Storage Area Networks 813
of magnitude slower than main memory and that their rate of capacity increase, access
time decrease, and bandwidth increase were below the corresponding rate for both
processor and main memory.
Data communication has traditionally been divided into two quite distinct worlds,
the network world and the channel world. The channel usually deals with well-
structured, closed and fixed environments. Usually there is one host system and sev-
eral attached devices, like a master-slave setup. Communication is usually restricted
to occur only between the master and one of the attached devices. This means that
control over the communication is simpler and more of the resources can be used for
actual data transport. The bandwidth is often high and latency low on such buses.
However, the architecture is inflexible and fixed. The basic SCSI bus with just one
host computer is an example of such a channel environment [2].
In the network the picture is quite different. Here the environment is unstructured,
open and behaves much more unpredictably. All devices can talk to any other device
at any time. One consequence of this is that more control is needed to correctly handle
connections, access permissions, route information and other aspects of correct be-
havior. The result is that Fibre Channel often are characterized by high throughput
and low overhead, while networks tend to have lower throughput and high overhead.
This interface technology combines both network and storage features and provides
an industry standard, high bandwidth, switched interconnection network between
client and devices. Theses developments made possible us to designing new storage
architectures, one that assumes disks are highly capable peer devices available di-
rectly in a network.
Traditional local and distributed file systems support a persistent name space by
creating a mapping between blocks found on disk drives and a set of files, file names,
and directories. These file systems view devices as local: devices are not shared,
814 G.-B. Kim, M.-J. Kim, and H.-Y. Bae
hence there is no need in the file system to enforce device sharing semantics. Instead,
the focus is on aggressively caching and aggregating file system operations to im-
prove performance by reducing the number of actual disk accesses required for each
file system operation [3], [4].
New networking technologies allow multiple machines to share the same storage
devices. File systems that allow these machines to simultaneously mount and access
files on these shared devices are called shared file systems [5], [6]. Shared file sys-
tems provide a server-less alternative to traditional distributed file systems where the
server is the focus of all data sharing. As shown in Figure 1, machines attach directly
to devices across a storage area network (SAN)[7]. A SAN consist of a local area
network that allows storage devices to be directly attached to the network.
In this paper we present a global shared file system called SANto-
pia[8],[9],[10],[11] that allows multiple machines to access and share disk and tape
devices on a Fibre Channel or SCSI storage network in Linux system. It will perform
well as a local file system, as a traditional network file system running over IP envi-
ronments, and as a high performance cluster file system running over storage area
networks like Fibre Channel. SANtopia provides a key cluster enabling technology
for Linux, helping to bring the availability, scalability, and load balancing benefits of
clustering to Linux.
Our goal is to develop a scalable, in number of clients and devices, capacity, con-
nectivity server-less global file sharing system for the Fibre channel-based SAN. It
exploits the speed and device scalability of SAN clusters, and provides the client
scalability and network interoperability of SAN.
SANtopia views storage as a large storage pool-a collection of network attached
storage devices logically grouped to provide node machines with a unified large stor-
age space. Theses storage pools provided by logical volume manager (LVM) are not
owned or controlled by any one machines but rather act as shared storage to all ma-
chines and devices on the network.
The rest of the paper is organized as follows: Section 2 describes and analyzes tra-
ditional file system. Section 3 describes SANtopia architecture and each component.
In Section 4, we explain in detail logical volume manager of SANtopia that provides
client to storage pools and software RAID. In Section 5, we present file manager of
SANtopia for global shared file system. The file manager provides VFS interfaces,
metadata managements, system calls, and recovery. In section 6, we describe buffer
and lock manager of SANtopia. In SANtopia, we integrated lock manager and buffer
manager to reduce communication overhead. In section 7, we evaluate SANtopia file
system compare with traditional file system, such as EXT2 and GFS. We conclude the
paper in Section 8.
2 Related Works
Most UNIX file system types have a similar general structure, although the exact
details vary quite a bit. The central concepts are superblock, inode, data block, direc-
tory block, and indirection block. The superblock contains information about the file
system as a whole, such as its size (the exact information here depends on the file
system). An inode contains all information about a file, except its name. The name is
stored in the directory, together with the number of the inode. A directory entry con-
Design and Development of File System for Storage Area Networks 815
sists of a filename and the number of the inode which represents the file. The inode
contains the numbers of several data blocks, which are used to store the data in the
file. There is space only for a few data block numbers in the inode, however, and if
more are needed, more space for pointers to the data blocks is allocated dynamically.
These dynamically allocated blocks are indirect blocks; the name indicates that in
order to find the data block, one has to find its number in the indirect block first.
Linux is a Unix-like operating system, which runs on PC-386 computers. It was
implemented first as extension to the Minix operating system and its first versions
included support for the Minix file system only. The Minix file system contains two
serious limitations: block addresses are stored in 16 bit integers, thus the maximal file
system size is restricted to 64 mega bytes, and directories contain fixed-size entries
and the maximal file name is 14 characters. We have designed and implemented two
new file systems that are included in the standard Linux kernel. These file systems,
called “Extended File System” (Ext fs) and “Second Extended File System” (Ext2 fs)
[12] raise the limitations and add new features. Every Linux file system implements a
basic set of common concepts derivate from the Unix operating system files are repre-
sented by inodes, directories are simply files containing a list of entries and devices
can be accessed by requesting I/O on special files.
Frangipani [13] is a new scalable distributed file system that manages a collection
of disks on multiple machines as a single shared pool of storage. The machines are
assumed to be under a common administration and to be able to communicate se-
curely. One distinguish feature of Frangipani is that it has a very simple internal struc-
ture-a set of cooperating machines use a common store and synchronize access to that
store with locks. This simple structure enables us to handle system recovery, recon-
figuration, and load balancing with very little machinery.
Frangipani is layered on top of Petal[14], an easy-to-administer distributed storage
system that provides virtual disks to its clients. Like a physical disk, a Petal virtual
disk provides storage that can be read or written in blocks. Unlike physical disk, a
virtual disk provides a sparse 264 bytes address space, with physical storage allocated
only on demand. Petal also provides efficient snapshots to support consistent backup.
Frangipani inherits much of its scalability, fault tolerance, and easy administration
from the underlying storage system, but careful design was required to extend these
properties to the file system level.
XFS [15] is the next generation local file system for SGI's workstations and serv-
ers. It is a general purpose Unix file system that runs on workstations with 16 mega-
bytes of memory and a single disk drive and also on large SMP network servers with
gigabytes of memory and terabytes of disk capacity. In this paper we describe the
XFS file system with a focus on the mechanisms it uses to manage large file systems
on large computer systems. The most notable mechanism used by XFS to increase the
scalability of the file system is the pervasive use of B+ trees [16]. B+ trees are used
for tracking free extents in the file system rather than bitmaps. B+ trees are used to
index directory entries rather than using linear lookup structures. B+ trees are used to
manage file extent maps that overflow the number of direct pointers kept in the
inodes. Finally, B+ trees are used to keep track of dynamically allocated inodes scat-
tered throughout the file system.
GFS(Global File System) [17] is the industry’s most advanced and mature scal-
able file system. Recognized as the de facto cluster file system on Linux, GFS is a
highly stable solution for enterprise and technical computing applications requiring
reliable access to data. GFS allows multiple servers on a Storage Area Network
816 G.-B. Kim, M.-J. Kim, and H.-Y. Bae
(SAN) to have read and write access to a single file system on shared SAN devices,
delivering the strength, safety and simplicity demanded by enterprise and technical
computing environments.
3 Architecture of SANtopia
Figure 2 shows the architecture of SANtopia supports global file sharing in SAN
environments. The SANtopia consists of four parts: global file manager, system man-
ager, global buffer and lock manager, and logical volume manager.
The users require the operation of SANtopia file system using VNODE operation
and system call in VFS (Virtual File System).The global file manager of SANtopia
processes metadata structures and its operation for functions of large volume file
sharing. Each operation is defined as transaction that is a unit of file operation and
recovery. The system manager provides performance monitoring, on-line backup, and
the system configuration of SANtopia. Using system manager tools, system manager
is able to attach or detach some nodes, and add and delete shared disks for logical
volume. The global lock and buffer manager gives the function of global buffer shar-
ing to minimize the disk I/O. Especially, to reduce communication overhead between
local server and global server for coherency of buffer, we integrate the lock manager
controls the file access and the buffer manager provides file sharing in SANtopia.
The logical volume manager provides file manager to a large logical volume (stor-
age pool) is coalesced into a heterogeneous collection of shared storages. There are
several function in LVM, 1) addition of physical disk into logical volume, 2) software
Design and Development of File System for Storage Area Networks 817
RAID, 3) mapping logical address into physical address, 4) transfer data page form
disk into buffer. In the rest of this paper, we illustrate designs approaches each com-
ponent of SANtopia.
4 Volume Manager
The Logical Volume Manager (LVM) supports the abstraction of a single unified
logical storage address space for SANtopia client. The Logical Volume Manager is
implemented in a device driver level on top of the Fibre Channel Drivers and the
SCSI device. It also provides SANtopia File Manager to coalesce a heterogeneous
collection of shared storage into a single logical volume. This manager translates from
logical address of the file system to physical address space of each device.
A logical volume layout consists of private partition and public partition. The pri-
vate partition, one of physical partition in physical disk, contains disk identifier, logi-
cal partition information, and information of logical volume for management of logi-
cal volume layer. The public partitions consist of sub-logical partitions. Each sub-
logical partition has allocation bitmap, mapping information, and data blocks. To
resize SANtopia file system the LVM The LVM is able to attach or detach sub-logical
volumes.
The Redundant Array of Inexpensive Disks (RAID) is a popular way of improv-
ing the system I/O performance and reliability. There are different levels of disk array
that cover the range of possibilities between: improving system I/O performance and
increased reliability. The large file systems require the capacity of several disks, but
most file systems must be created on a single disk. A hardware RAID device is one
solution to this problem. There are many excellent benefit of hardware RAID, but it is
an expensive solution because a logical large single disk is constructed many small
disks in SAN environment. The SANtopia LVM provides clients with a high per-
formance and reliable SAN storage capacity in software RAID. The LVM software
RAID driver will implement RAID levels 0, 1, 0+1, 5, concatenation (linear).
The mapping manager of LVM provides file manager with the virtualization of
physical storage. The LVM is able to move data between logical partitions for per-
formance or reorganization disk data such as disk space is full and also to support
snapshots. Snapshots provide an efficient way to backup an image of any file system
built on an LVM. The LVM easily implements snapshot using the functions of map-
ping manager.
5 File Manager
5.1 Layout of Huge File System
In the traditional file system, it divides the allocation area into inodes, directories,
inode bit maps, and data blocks. The number of inode bit map entries for each inode
is allocated one entry per 4KB data blocks in the Linux file system. This causes seri-
ous problems since the inode table will be full, in spite of the fact that the file system
has free space, when a huge number of huge small files exist in file system.
818 G.-B. Kim, M.-J. Kim, and H.-Y. Bae
For supporting large file systems, SANtopia uses 64-bit address space. The layout
of the SANtopia file system consists of a boot area, super block, allocation area, and
bitmap area. The boot area stores the booting images for the operating system. The
super block stores the information on the file system such as the total size of the file
system, block size, bitmap size, and several traditional super block data.
Therefore, there is no division in the allocation area among inodes, directories, and
data blocks. Since information on the allocation area manages the bitmap table using
two bits, we assigned the value of bit map as follows: 00 is a free allocation blocks
(extent), 01 is an inode, 10 is a directory entry, and 11 is a data extent. Using this
method, there is no limitation in the number of inode table entries.
It is one of the serious problems when we are adapted to traditional file systems in
SAN environment that they don’t perform well is large directories. Most traditional
file systems, such as UNIX file system (UFS) and Linux file system (Ext2), were
designed for small size file system. So, they have limitation makes number of files in
directory. And also they store files in directory as unsorted linear list of directory
entries. This is satisfactory for small directories, but it increases directory operations
time for big ones. On average, we must search through half of the directory to find
any one entry in the directory. In traditional directory structure, large directories can
take up megabytes of disk a space, so this is costly not only in CUP time but also it
takes executive time for I/O to disks. There are two alternatives are proposed for large
directory. One approach is using B-tree for entries in directory such as xFS file sys-
tem. The other approach is Extensible Hashing such as GFS.
The SANtopia file system is adapted to Extensible Hashing for directory structure.
Extensible Hashing provides a way of storing a directory entry so that any on entry
can be found very quickly. But basic Extensible Hashing method is not design for
large directory, so we modified traditional Extendible Hashing data structure for ex-
tent-based large directory is called Extent-based Multi-Level Extensible Hashing
(EBMLEH). Fig.5 shows our EBMLEH structure.
The EBMLEH uses a multi-bit hash of each filename. A subset of the bit is used a
unique index in a hash table. The allocation unit of EBMLEH is the extent is decided
in making file system. Each pointer of leaf hash table points to leaf extent block that
820 G.-B. Kim, M.-J. Kim, and H.-Y. Bae
4 Directory
0000
2 Node
root Dir 0001 (Extent)
hash
Info. 0010
0011
00 0100
0101
01
0110
10 0111
1000
11
1001
1010
Indirect
1011 hash
1100
1101
1110
1111
contain the directory entries. The EBMLEH has multi-level hashing structures that
contain a root node and indirect nodes that are set of hash values and block pointers in
the hashing tables. Each node has indicator that represents the bit size of hash value to
be compared in the hash table.
The small size directory only uses root hash node, the pointer of root hash node di-
rectly point to directory entries block. But, in large directory, the capacity of root
node will be reached its limitation when directory entries are increased more and
more. The EBMLEH uses indirect hash nodes for that case. In Fig. 5 example, if the
capacity of root node is 4 and indicator of hash bits is 2 in root node, the directory
entries already exceeded to its limitation, so the root node has 4 indirect hash nodes.
The root node points to the indirect hash node and each indirect hash nodes point to
real block stores directory entries. We need two steps to fine any particular directory
entry in Fig. 5. The number of directory entries, is able to point directory blocks, is
increased rapidly when the root node splits into indirect hash nodes in EBMLEH.
must be invalidated. The buffer invalidation scheme reduces the buffer hit probabil-
ity in SAN environments. For non-shared system, a large buffer implies a higher
buffer hit probability, and with sufficient buffer, we can archive any buffer hit
probability. However, in global data sharing system, a large buffer also leads to a
higher buffer invalidation rate.
In SANtopia, we integrate buffer and lock message. The lock manager controls
data access. All users must be obtained the permission of some file access from the
lock manager. When client requires the lock of file, the local lock manager transfers
concurrently lock message pigged with local buffer list from local buffer to global
buffer manager.
There are two types’ hosts in SANtopia. The one is the host only has local buffer
and lock manager and manages list of local resource. The other is the host not only
has local buffer and lock manager but also has global buffer list and global lock list.
Each local manager transfers the local information to global manager and gets the
global information from global manager.
7 Performance Evaluation
To evaluate the performance of the SANtopia, we develop under Redhat 8.0. Each
mode has HP machine with 750 MHz Dual CPU and 512MB main memory. For veri-
fying our experiments, we make use of arbitrary file read/write system calls in hosts.
Table 1. shows the parameters and values using performance evaluation.
Parameter Value
Total disk size 1 Tera Byte
Allocation sizes 4,096 Byte
Size of bitmap block 1,024 Byte
Size of bitmap header 24 Byte
# Of inode per bitmap 1,000
Size of unit inode 128 Byte
File size 10MB ~ 500MB
Block size 4KB
Transfer Size 1MB
Total disk size is 1 Tera byte, allocation sizes 4KB, and the size of bitmap block is
1,024B. In Fig. 6 and 7 shows the performance result of the proposed dynamic bitmap
scheme. Fig. 6 show total number of files when file size growing. Our approach has
more files than static bitmap until file size comes to 4KB.
In Fig. 7 our dynamic bitmap outperform than static bitmap in the disk usage out-
perform.
822 G.-B. Kim, M.-J. Kim, and H.-Y. Bae
D\namic Bitmap
S tatic Bitmap
D\namic Bitmap
Static Bitmap
We evaluate the average response time for making a comparison between EXT2,
GFS, and SANtopia. In Fig.8, the data size varies from 10MB to 500MB. The result
time consists of computation time and blocks I/O time for metadata and file data. The
graph increases as the data size grow in graceful manner. But, SANtopia provides the
journaling faculty that it caused by more journaling I/O. In Fig. 8’ below graph show
an average response time between GFS and SANtopia. The semi-flat structure of
SANtopia reduces the metadata I/O in terms of an inode extension.
In Fig. 9, we evaluate SANtopia’s creation time for making a comparison between
EXT2 and GFS. In Fig.9’s upper graph, SANtopia creation time is superior to Ext2.
This result show that our file system’s extent-based allocation reduces an average crea-
tion time. As show in Fig. 9’s below graph, the directory creation time of SANtopia and
GFS show that the semi-flat structure of inode reduces the indirect block’s I/O.
Design and Development of File System for Storage Area Networks 823
8 Conclusion
In this paper, we present architectures and design features of shared disk file system,
so-called SANtopia, that allows multiple machines to access and share disk and tape
devices on a Fibre Channel or SCSI storage network in Linux system. It will perform
well as a local file system, as a traditional network file system running over IP envi-
ronments, and as a high performance cluster file system running over storage area
networks. The SANtopia provides a key cluster enabling technology for Linux, help-
ing to bring the availability, scalability, and load balancing benefits of clustering to
Linux.
SANtopia views storage as a large storage pool-a collection of network attached
storage devices logically grouped to provide node machines with a unified large stor-
age space. Theses storage pools provided by logical volume manager (LVM) are not
owned or controlled by any one machines but rather act as shared storage to all ma-
chines and devices on the network. And we evaluate the SANtopia file system com-
pare with Ext2 and GFS. The results of performance evaluations show that SANtopia
outperforms than EXT2 and GFS.
Acknowledgment
This research was supported by the MIC(Ministry of Information and Communica-
tion), Korea, under the ITRC(Information Technology Research Center) support pro-
gram supervised by the IITA(Institute of Information Technology Assessment)
References
1. Kenneth W. et al., “A 64-bit, Shared Disk File System for Linux,” The 7th NASA God-
dard Conference on Mass Storage System and Technologies in cooperation with the 16th
IEEE Symposium on Mass Storage Systems, pp.22-41, San Diego, USA, March 1999.
2. Erik Riedel, "Storage System: Not just a bunch of disks anymore," ACM QUEUE, pp.32-
41, 2003.
3. L.McVoy and S.Kleiman, “Extent-like performance from a Unix file system,” Proceedings
of the 1991 Winter USEUNIX Conference, pp.33-34, Dallas, TX, June 1991.
4. Uresh Vahalia, Unix Internals: The New Frontiers, Prentice-Hall, 1996.
5. Matthew T. O’Keefe, “Standard file systems and fibre channel”, The Sixth Goddard Con-
ference on Mass Storage System and Technologies in cooperation with the Fifteen IEEE
Symposium on Mass Storage Systems, pp.1-16, Colleage Park, Maryland, March 1998.
6. Steve Soltis et al., “The design and performance of a shared disk file system for IRIX”,
The Sixth Goddard Conference on Mass Storage System and Technologies in cooperation
with the Fifteen IEEE Symposium on Mass Storage Systems, pp.41-66, Colleage Park,
Maryland, March 1998.
7. K. Matthews. “Implementing a Shared File System on a HiPPi disk array,” Fourteenth
IEEE Symposium on Mass Storage Systems, pp.77-88, September 1995.
8. G.B.Kim et al, “Global File Sharing System for SAN,” The 3rd International Conference
on Advanced Communication Technology, pp.870-874, Feb. 2001.
Design and Development of File System for Storage Area Networks 825
9. G.B.Kim et al, “A dynamic bitmap for huge file system in SANs,” Recent Advances in
Computers, Computing and Communications, WSEAS press, pp.229-234, 2002.
10. Yong-Ju Lee and Gyoung-Bae Kim, “ Design and Implementation of a Large-Scale Direc-
tory Structure in Linux System,” 2nd International Conference on Computer and Informa-
tion Science, KIPS, pp.386-390, 2002.
11. G.B.Kim et al, “Design and Implementation of File System for Storage Cluster,” ” The 5th
International Conference on Advanced Communication Technology, pp.121-126, Feb.
2003.
12. R. Card, “Design and Implementation of the Second Extended File System,” Proceeding of
the first Dutch International Symposium on Linux, 1995.
13. Chandramohan A. et. al, "Frangipani: A Scalable Distributed File System," Proceedings of
the 16th ACM Symposium on Operating Systems Principles, pp. 224-237, St. Malo,
France, October 1997.
14. Edward K. Lee and Chandramohan A. Thekkath, "Petal: Distributed Virtual Disks," Pro-
ceedings of the 7th ACM International Conference on Architectural Support for Program-
ming Languages and Operating Systems, pp. 84-92, Cambridge, Massachusetts, October
1996.
15. http://oss.sgi.com/projects/xfs/
16. Douglas Comer, “The Ubiquitous B-Tree,” Computing Survey, 11(2), pp.121-137, 1979.
17. http://www.sistina.com/gfs/
Transaction Reordering for Epidemic Quorum in
Replicated Databases
1,*
Huaizhong Lin , Zengwei Zheng1,2, and Chun Chen1
1 College of Computer Science, Zhejiang University, 310027 Hangzhou, China
{linhz, zhengzw, chenc}@zju.edu.cn
2 City College, Zhejiang University, 310015 Hangzhou, China
zhengzw@zucc.edu.cn
1 Introduction
Weakly connected environments, which are characterized by low bandwidth, exces-
sive latency, instability of connection, and constant disconnection, are used more and
more frequently [1]. Data replication is the common approach to improve system
performance and availability. But due to the massive communication overhead in
weakly connected environments, eager replication may bring about unacceptable
number of failed or blocked transactions, and result in dramatic drop of system per-
formance [2].
Epidemic model [3-7] gives another approach for managing replicated data. In an
epidemic approach, sites perform update operations locally and communicate peer-to-
peer in a lazy manner to propagate updates. Transactional consistency is achieved by
decentralized conflict detect and reconciliation. Sites communicate in a way that
maintains the causal order of updates and the communication can pass through one or
more intermediate sites. Therefore, the epidemic model provides an environment that
is tolerant of communication failures and doesn’t require continuous connection
* Supported by the Natural Science Fundation of Zhejiang Province, China (Grant no.
M603230) and the Research Fund for Doctoral Program of Higher Education from Ministry
of Education, China (Grant no. 20020335020).
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 826 – 835, 2005.
© Springer-Verlag Berlin Heidelberg 2005
Transaction Reordering for Epidemic Quorum in Replicated Databases 827
Epidemic model is based on the causal delivery of log records where each record
corresponds to one transaction instead of one operation. An event model [4] is used to
describe the system execution, (E, ĺ), where E is a set of transaction events and ĺ is
the happened-before relation which is a partial order on all events in E. The partial
order ĺ satisfies the following two conditions:
(1) Events occurring at the same site are totally ordered;
(2) If e is a sending event and f is the corresponding receiving event, then eĺf.
Vector clocks are used to ensure the property that if two events are causally or-
dered, their effects should be applied in that order at all sites. Each site Sk keeps a
two-dimension time-table, which corresponds to Sk’s most recent knowledge of the
vector clocks at all sites. Upon communication, Sk sends a message including its own
time-table and all records that receiving site hasn’t received. Then the receiving site
processes the events according to causal order and incorporates the time-table in an
atomic step to reflect the new information from Sk.
Definition 1. For each transaction T, we define two sets: the ReadSet(T), consisting
of the data items that are read by T; the WriteSet(T), consisting of the data items that
are written by T.
Transaction Reordering for Epidemic Quorum in Replicated Databases 829
Definition 2. For each data item x in the database, there is a nonnegative integer
called version number to be attached with it. The version number is increased
whenever the replica is updated and reflects the order in which the data item is
updated. ReadVN(T,x) denotes the version number of data item x that transaction T
read. WriteVN(T,x) denotes the version number that is provided for data item x by the
write operation of T. CurrVN(Sk,x) denotes the version number of data item x
currently in site Sk.
Definition 3. Two transactions Ti and Tj are said to be conflict if they both contain an
operation that accesses the same data item and at least one of them is a write
operation, denoted by conflict(Ti,Tj). The conflicts can be classified into read-write,
write-write, and write-read conflicts, which are denoted by rw_conflict(Ti,Tj),
ww_conflict(Ti,Tj), and wr_conflict(Ti,Tj) respectively.
Suppose two conflicting transactions Ti and Tj are issued by two sites concurrently.
To maintain serializability, previous epidemic protocols consider that there is only
one transaction can be committed and each site can only cast yes vote to one transac-
tion in election, for example Ti. In optimistic voting protocol, to increase the chances
to get yes vote for transaction Tj, sites can cast condition vote on it (whereas it is cast
no vote in quorum or voting protocols). The condition vote on Tj can be transformed
to yes vote if Ti is aborted. The use of condition vote postpones the final vote decision
on transactions.
3 Transaction Reordering
Transaction reordering technique can be viewed as an extension to the classical certi-
fication introduced by Kung and Robinson [10]. Intuitively, Kung-Robinson’s tech-
nique consists in constructing a serialization order, according to which committed
transactions appear to have executed. Given that transactions { Tk,…,Tn } have com-
mitted after T had started, T can be committed if
(WriteSet(Tk)∪…∪WriteSet(Tn))∩ReadSet(T)=∅
Kung-Robinson’s technique aborts concurrent transactions whose executions were
not lucky enough to be delivered in a favorable order. Our reordering technique is
based on the observation that the transaction serialization order does not need to be
the same as the transaction arrival order at sites. The idea is to dynamically build a
serialization order, in such a way that less aborts are produced. By reordering a trans-
action to a position other than the current one, our protocol increases the probability
of success.
3.1 An Example
3.2 Correctness
The correctness proof of optimistic voting can be found in [9]. Here, for brevity, we
only give a brief explanation that the optimistic voting with reordering also preserves
eventual consistency for update transactions. In the following discussion we assume a
failure free execution.
We assume that every site provides local concurrent control and applies update
transactions in a serial order locally. Let ĺk be the total order relation on the local
Transaction Reordering for Epidemic Quorum in Replicated Databases 833
transaction set at Sk. The one-copy serializability is based on a global total order that
is conflict compatible with all local serialization orders.
With the use of advance vote, transactions may be committed out of the serializa-
tion order. However, we can prove that this disorder will not affect the validity of
committed transactions in optimistic voting with reordering. In other words, suppose
TiĺkTjĺkTm in site Sk and there is write-read conflict between Ti (Tj) and Tm ( we
assume that Tm is launched at Sk ). Because Tj may execute before Ti (it indicates that
Ti must have vote adv(Tj)), Tm will probably only see the results of Tj. We now prove
that at least one of Ti and Tm should be aborted to assure the validity of transactions.
As Tj may execute before Ti, from the algorithm, if Ti cannot get adv(Tj) at a site, it
will only get no vote at this site. The epidemic communication model assures that the
vote on Tm will after Tj at all sites. At each site, there are two cases:
1. If Ti arrived before Tm. because there is write-read conflict between Ti and Tm,
Tm will get cond(Ti) at best;
2. If Ti arrived after Tm. It is obvious that Ti must arrive after Tj. Because Tj is be-
fore Tm by serialization order and there is write-read conflict between Ti and Tm,
Ti cannot insert before Tj. So, Ti can only get no vote.
From above voting process, we can conclude that only one of Ti and Tm will get
majority votes and be committed.
Another property of the algorithm is deadlock free. The condition, order, and ad-
vance votes of a transaction are dependent on other transactions. This dependency
relation in the algorithm is one-way, i.e. a transaction with condition and order vote
can only depend on transactions that have smaller global timestamp than it, likewise a
transaction with advance vote can only insert before transactions that have larger
global timestamp than it. The one-way dependency ensures that there are no cycles
among transactions and therefore no global deadlocks. Therefore, the algorithm guar-
antees that a transaction will eventually arrive at the same election result among all
sites and a site will vote for a transaction at most once.
4 Performance Evaluation
We perform experiments to show performance improvement attained by optimistic
voting protocol and reordering technique. Additionally, we investigate the representa-
tive epidemic replication scheme from the literature, voting protocol [6] (quorum
protocol [4] is similar to voting protocol). The evaluations are done at 10 desktops
connected via a 10Mbps Ethernet network.
The simulation assumes that data items are fully replicated at all sites and tickets
are uniformly distributed among sites. Each site generates transactions randomly
according to a global transaction generation rate. Data items are accessed uniformly
by transactions. Each site periodically initiates a synchronization session with a given
synchronization interval by sending a pull request to another randomly selected site.
Since we focus on the transaction abort rate and commit delay of different proto-
cols, we don’t model any read-only transactions. Each transaction read 5-10 data
items and write 5 data items which may be not in the read set with 5% chance. The
main parameters and settings used in the experiments are summarized in Table 1.
834 H. Lin, Z. Zheng, and C. Chen
Fig.4 and Fig.5 illustrate the transaction abort rate of three protocols for various
values of transaction generation rate and synchronization interval. From the figures, it
is obvious that optimistic voting protocol with reordering outperforms the other two
protocols. The reordering technique improves the performance by about 8% at best
when compared to optimistic voting protocol, and about 18% to voting protocol.
5 Conclusion
Epidemic replication schemes are used extensively in transaction processing in
weakly connected environments. Some continuously connected systems also use
epidemic model to improve system efficiency. The reordering technique presented in
this paper improves system performance in epidemic model and is of high practical
values.
References
1. Huaizhong Lin and Chun Chen. An agent-based approach of transaction processing in mo-
bile environments. In Proceedings of 6th International Conference for Young Computer
Scientists. Hangzhou, China, 2001. 299-303.
2. J. Gray, P. Helland, P. O’Neil, and D. Shasha. The dangers of replication and a solution. In
Proceedings of ACM SIGMOD International Conference on Management of Data. Mont-
real, Canada, 1996. 173-182.
3. D. Agrawal, A. El Abbadi, and R. Steinke. Epidemic algorithms in replicated databases. In
Proceedings of 16th ACM SIGACT-SIGMOD-SIGART Symposium on Principles of Da-
tabase Systems. Tucson, Arizona, 1997. 161-172.
4. J. Holliday, R. Steinke, D. Agrawal, and A. El Abbadi. Epidemic quorums for managing
replicated data. In Proceedings of 19th IEEE International Performance, Computing, and
Communications Conference. Phoenix, Arizona, 2000. 93-100.
5. K. Petersen, M. J. Spreitzer, D. B. Terry, M. M. Theimer, and A. J. Demers. Flexible up-
date propagation for weakly consistent replication. In Proceedings of 16th ACM Sympo-
sium on Operating System Principles. St. Malo, France, 1997. 288-301.
6. U. Çetintemel, P. J. Keleher, and M. J. Franklin. Support for speculative update propaga-
tion and mobility in Deno. In Proceedings of 21st International Conference on Distributed
Computing Systems. Phoenix, Arizona: IEEE Computer Society Press, 2001. 509-516.
7. P. J. Keleher. Decentralized replicated object protocols. In Proceedings of 18th Annual
ACM Symposium on Principles of Distributed Computing. Atlanta, Georgia, 1999. 143-
151.
8. Patrick T. Eugster, Rachid Guerraoui, Anne-Marie Kermarrec, and Laurent Massoulié.
Epidemic Information Dissemination in Distributed Systems. IEEE Computer, 2004, (5):
60-67.
9. Huaizhong Lin and Chun Chen. Optimistic voting for managing replicated data. Journal of
Computer Science and Technology, 2002, 17(6): 874-881.
10. H. T. Kung and J. T. Robinson. On optimistic methods for concurrency control. ACM
Transactions on Database Systems, 1981, 6(2):213-226.
Automatic Boundary Tumor Segmentation of a Liver
Abstract. This paper proposes automatic boundary tumor segmentation for the
computer aided liver diagnosis system. As pre-processing, the liver structure is
first segmented using histogram transformation, multi-modal threshold, C-class
maximum a posteriori decision, and binary morphological filtering. After binary
transformation of the liver structure, the image based bounding box is created
and convex deficiencies are segmented. Large convex deficiencies are selected
by pixel area estimation and selected deficiencies are transformed to gray-level
deficiencies. The boundary tumor is selected by estimating the variance of
deficiencies. In order to test the proposed algorithm, 225 slices from nine
patients were selected. Experimental results show that the proposed algorithm is
very useful for diagnosis of the abnormal liver with the boundary tumor.
1 Introduction
Liver cancer, which is the fifth most common cancer, is more serious in areas of
western and central Africa and eastern and southeastern Asia [1]. The average
incidence of liver cancer in these areas is 20 per 100,000, and liver cancer is the third
highest death cause from cancer [1]. In Korea, the incidence of liver cancer is quite
high at 19% for males and 7% for females [2]. New cases of liver cancer in the Seoul
area have an approximate rate per year of 34.1 for males and 11.5 for females per
100,000 people [2]. In order to improve the curability of liver cancer, early detection
is critical. Liver cancer, like other cancers, manifests itself with abnormal cells,
conglomerated growth, and tumor formation. If the hepatic tumor is detected early,
treatment and curing of a patient may be easy, and human life can be prolonged.
Liver segmentation using CT images has been vigorously performed because CT is
a very conventional and non-invasive technique. Bae et al [3] used priori information
about liver morphology and image processing techniques such as gray-level
thresholding, Gaussian smoothing, mathematical morphology techniques, and B-
splines. Luomin et al [4] shows automatic liver segmentation technique for three-
dimensional visualization of CT data. This segmentation includes a global histogram,
morphologic operators, and the parametrically deformable contour model. Also,
boundaries of the thresholded liver volume are modified section-by-section by
exploiting information from adjacent sections. Volume-rendered images are then
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 836 – 842, 2005.
© Springer-Verlag Berlin Heidelberg 2005
Automatic Boundary Tumor Segmentation of a Liver 837
created. Hyunjin et al [5] built a probabilistic atlas of the brain and extended
abdominal segmentation including the liver, kidneys, and spinal cord. The warping
transform and mutual information are used as the similarity measure. Its segmentation
by incorporating the atlas information into the Bayesian framework is improved over
a standard unsupervised segmentation method. Gao et al [6] developed automatic
liver segmentation using a global histogram, morphologic operations, and the
parametrically deformable contour model. Saitoh et al. [7] performed automatic
segmentation of liver region based on extracted blood vessels. Also, Seo et al. [8]
proposed fully automatic liver segmentation based on the spine.
However, previous research has been concentrated on only liver segmentation and
volume construction. In this paper, an automatic boundary tumor segmentation method
of the liver using CT images is proposed. An automatic hepatic tumor segmentation
method is presented in the following section. In the next section, experiments and
results are described. Finally, the conclusion will be given in the last section.
(a) (b)
After extraction of the liver structure, the bounding box is created. The bounding box
is the smallest rectangle containing the binary object. Let I : Z → Z be the gray-
2
level image of the live structure and (m, n) be a pixel location. Then, I (m, n) ∈ Z .
Let B be the binary image of I as shown in Figure 2(a). The horizontal and vertical
lines with the same height and width including the binary object are drawn. Then four
coordinates of the image-based bounding box such as the top-left, top-right, bottom-
left, and bottom-right point are calculated from meeting points of the horizontal and
vertical lines. The image-based bounding box is created using these four coordinates
as shown in Figure 2(b).
(a) (b)
Fig. 2. Creation of the bounding box. (a) Binary transformation of the sample image. (b) Image-
based bounding box
In order to create convex deficiencies of the binary object, a convex hull is built in the
segmented bounding box. The convex hull is the smallest enclosed convex polygon
containing the binary object as shown in Figure 3(a). Let BC be the convex
Fig. 3. Segmentation of convex deficiencies. (a) Convex hull. (b) Convex deficiencies. (c)Convex
deficiencies after removal of small deficiencies
Automatic Boundary Tumor Segmentation of a Liver 839
(a) (b)
(b) (d)
(e) (f)
(g)
Fig. 4. Tumor extraction. (a) Bounding box of the CT image. (b) Gray-level convex deficie-ncies
Tumor extraction. (c) First gray-level deficiency. (d) Histogram of the first gray-level deficiency.
(e) Second gray-level deficiency. (f) Histogram of the second gray-level deficiency. (g) Boundary
tumor in the CT image
840 K.-S. Seo and T.-W. Chung
hull and Bcd be the set of convex deficiencies. The set of convex deficiencies is
extracted from the difference between BC and B , that is, Bcd = BC − B ROI as
shown in Figure 3(b). Then the Bcd is defined as Bcd = {Bcd _ 1 , Bcd _ 2 ,..., Bcd _ n } .
As small convex deficiencies are not a tumor, theses small convex deficiencies are
removed from Bcd as shown in Figure 3(c). Then the new set of convex hulls is
'
defined as Bcd = {Bcd
' ' '
_ 1 , B cd _ 2 ,..., B cd _ m } .
A boundary tumor has strong gray-level pixel homogeneity same as an inner tumor.
The boundary tumor is segmented by estimating this pixel homogeneity. Let I ROI be
the segmented gray-level image from the CT image using four coordinates as shown
'
in Figure 4(a). Convex deficiencies of Bcd are transformed to the gray-level convex
deficiencies defined as I cd = {(m, n) | Bcd (m, n) ⊗ I ROI (m, n)} where Bcd
' ' '
(m.n) is the
binary image and I ROI (m, n) is the CT image. Figure 4(b) shows the transformed
gray-level convex deficiencies.
Each deficiency is labeled from the left-upper corner to the right-lower corner. The
histogram of each gray-level deficiency using this labeling order is generated to
calculate statistical properties. Figure 4(c) and (d) show the first labeled deficiency
and its histogram located in the left-upper corner. Also, .Figure 4(e) and (f) show the
second labeled deficiency and its histogram located in the right-lower corner.
' '
In order to select tumors from I cd , the variance of the histogram of I cd is
estimated. As the tumor has stronger homogeneity than other convex hulls, the
' ' '
variance of tumors is relatively small. Let hcd be histograms of I cd . Then, I cd is the
tumor if {var(hcd ) < z} where z is threshold value of variance. After estimating the
'
variance of deficiency, the tumor is selected as shown in Figure 4(c). From comparing
the variance of two deficiencies, the first deficiency as the tumor has smaller variance
than the second deficiency. Figure 4(g) is the boundary tumor in the CT image.
were calculated [15]. Table 1 shows the data of evaluated slices followed by slice
numbers.
As the evaluation measure, sensitivity, specificity, and accuracy were calculated.
As sensitivity represents the fraction of patients with disease who test positive,
sensitivity is defined as
TP
Sensitivity = . (1)
TP + FN
As specificity represents the fraction of patients without disease who test negative,
specificity is defined as TN
Specificity = . (2)
TN + FP
Also, accuracy is defined as
TP + TN
Accuracy = . (3)
TP + TN + FP + FN
As the data measure, sensitivity is 0.7273, specificity is 0.9257, and accuracy is
0.8578. These results show the proposed method is very useful for diagnosis of the
abnormal liver with the boundary tumor.
4 Conclusions
In this paper, we proposed automatic boundary tumor segmentation for the computer
aided liver diagnosis system. As pre-processing, the liver structure was segmented
using histogram transformation, multi-modal threshold, C-class maximum a posteriori
decision, and binary morphological filtering. After binary transformation of the liver
structure, the image based bounding box was created and convex deficiencies were
segmented. Then large convex deficiencies were transformed to gray-level
deficiencies. The boundary tumor was selected by estimating the variance of
842 K.-S. Seo and T.-W. Chung
deficiencies. In order to test the proposed algorithm, 225 slices from nine patients
were selected. Experimental results show that the proposed algorithm is very useful
for diagnosis of the abnormal liver with the boundary tumor. In order to evaluate the
proposed method, 262 slices from 10 patients were selected. From the evaluation
results, we had 0.7273 of sensitivity, 0.9257 of specificity, and 0.8578 of accuracy.
These results show that the proposed method is very useful for diagnosis of the
abnormal liver with the boundary tumor.
References
1. Parkin, D. M.: Global cancer statistics in the year 2000. Lancet Oncology, Vol. 2. (2001)
533-54
2. Lee H.: Liver cancer. The Korean Society of Gastroenterology, Seoul Korea (2001)
3. Bae, K. T., Giger, M. L., Chen, C. T., Kahn, Jr. C. E.: Automatic segmentation of
liver structure in CT images. Med. Phys.,Vol. 20. (1993) 71-78
4. Gao, L., Heath, D. G., Kuszyk, B. S., Fishman, E. K.: Automatic liver segmentation
technique for three-dimensional visualization of CT data. Radiology, Vol. 201. (1996)
359-364
5. Park, H., Bland, P. H., Meyer, C. R.: Construction of an abdominal probabilistic atlas
and its application in segmentation. IEEE Trans. Med. Imag., Vol. 22. No. 4. (2003) 483-
492
6. Tsai, D.: Automatic segmentation of liver structure in CT images using a neural network.
IEICE Trans. Fundamentals, Vol. E77-A. No. 11, (1994) 1892-1895
7. Saitoh, T., Tamura, Y., Kaneko, T.: Automatic segmentation of liver region based on
extracted blood vessels. System and Computers in Japan, Vol. 35. No. 5. (2004) 1-10.
8. Seo, K., Ludeman, L. C., Park S., Park, J.: Efficient liver segmentation based on the spine.
LNCS, Vol. 3261. (2004) 400-409.
9. Orfanidis, S. J.: Introduction to signal processing. Prentice Hall, Upper Saddle River NJ
(1996)
10. Schilling, R. J., Harris, S. L.: Applied numerical methods for engineers. Brooks/Cole
Publishing Com., Pacific Grove CA (2000)
11. Ludeman, L. C.: Random processes: filtering, estimation, and detection. Wiley & Sons
Inc., Hoboken NJ (2003)
12. Gonzalez, R. C., Woods, R. E.: Digital image processing. Prentice Hall, Upper Saddle
River NJ (2002)
13. Shapiro, L. G., Stockman, G. C.: Computer vision. Prentice-Hall, Upper Saddle River
NJ (2001)
14. Parker, J.R.: Algorithms for image processing and computer vision. Wiley Computer
Publishing, New York (1997)
15. Rangayyan R.M.: Biomedical signal analysis. Wiley, New York NY (2002)
Fast Algorithms for l1 Norm/Mixed l1 and l2
Norms for Image Restoration
1 Introduction
The problem of image restoration is considered. The observed image is the con-
volution of a shift invariant blurring function with the true image plus some
additive noise. Let f , g and w be the discretized original scene, observed scene
and additive noise respectively. Let H be the blurring matrix of appropriate size
The work has been supported by a grant from the PROCORE - France/Hong Kong
Joint Research Scheme sponsored by the Research Grants Council of Hong Kong
and the Consulate General of France in Hong Kong F-HK 30/04T, and RGC grant
nos. HKU7130/02P, HKU7046/03P, HKU7035/04P, and 10205541.
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 843–851, 2005.
c Springer-Verlag Berlin Heidelberg 2005
844 H. Fu et al.
built according to the discretized point spread function h. Then the discretized
image formation process can be modeled as
g = Hf + w. (1)
Assuming that the discretized scenes have m × n pixels, then f , g and w are
vectors of length mn, and H is a matrix of mn × mn.
It is well known that image restoration problems tend to be very ill-
conditioned. Directly solving (1) will yield a solution that is extremely sensitive
to noise, therefore regularization methods are needed to stabilize the solution.
For example, the least squares solution with Tikhonov’s regularization [12] takes
the following form:
min g − Hf 22 + αRf 22 . (2)
f
In this optimization problem, the second term is a regularization term that
measures the “irregularity” of the solution. We call R the regularization operator
and α the regularization parameter. Very often R is chosen to be the difference
operator, e.g., the first-order or the second order finite difference operator.
The implicit assumption behind (2) is that the additive noise is white Gaus-
sian and the prior distribution of f is also Gaussian. Under this assumption, the
solution of (2) can be interpreted as the “maximum a posteriori (MAP) estima-
tor” of the original scene, see [3] for instance. However, due to the presence of
edges, the prior distribution of an image rarely satisfies the Gaussian assumption
well. In many cases, the additive noise does not satisfy the Gaussian assumption
either, for instance, the noise follows a Laplace distribution. In the literature,
there has been a growing interest in using
1 norm for parameter estimation
[1, 3, 2, 4], and for image restoration [6, 9, 10]. The advantage of using the
1
norm is that the solution is more robust than
2 norm in statistical estimation
problems. In particular, a small number of outliers usually do not change the
solution much, see for instance [4, 9].
Since edges in an image lead to outliers in the regularization term, it is natural
to consider using
1 norm for the regularization term:
min g − Hf 22 + αRf 1 . (3)
f
We call the solution to (3) the Least Mixed Norm (LMN) solution.
If the additive noise does not satisfy the Gaussian assumption either, we
consider using
1 norm for both the data-fitting and the regularization terms:
min g − Hf 1 + αRf 1 . (4)
f
We call the solution to (4) the Least Absolute Deviation (LAD) solution.
The rest of this paper is organized as follows. In Section II, we formulate (4)
and (3) as a linear or quadratic programming problems and solve them by interior
point methods. The major work of each iteration of interior point methods is to
solve a large linear system. In Section III, we propose to solve this system by
preconditioned conjugate gradient method. Experimental results are presented
in Section IV, and conclusions are made in Section V.
Fast Algorithms for l1 Norm/Mixed l1 and l2 Norms for Image Restoration 845
subject to
Hf − g = u+ − u−
αRf = v+ − v−
u , u− , v+ , v− , f ≥ 0
+
Here 1 denotes the vector of all ones of appropriate size. This notation is used
throughout this paper.
Clearly (5) is a linear programming problem in the standard form:
min cT x subject to Ax = b, x ≥ 0, (6)
x
The step length at each iteration is chosen such that the new iterate is strictly
positive, that is, x > 0 and s > 0.
The Newton search direction, ( x, λ, s), is computed by solving the fol-
lowing linear system:
⎡ ⎤⎡ ⎤ ⎡ ⎤
0 AT I x −rc
⎣ A 0 0 ⎦ ⎣ λ ⎦ = ⎣ −rb ⎦ , (12)
S 0 X s −ra
where
rc = AT λ + s − c, rb = Ax − b, ra = XS1 − σμ1.
By eliminating s in (12), we obtain
−X −1 S AT x −r̂c
= (13)
A 0 λ −rb
Fast Algorithms for l1 Norm/Mixed l1 and l2 Norms for Image Restoration 847
Note that since the components of x and s are strictly positive, all the diagonal
elements of D are well defined. Here
⎡ ⎤ ⎡ ⎤
D1 0 0 0 0 r̂c1
⎢ 0 D2 0 0 0 ⎥ ⎢ r̂c2 ⎥
⎢ ⎥ ⎢ ⎥
⎥
D = ⎢ 0 0 D3 0 0 ⎥ r̂c = ⎢
⎢ ⎥
⎢ r̂c3 ⎥
⎣ 0 0 0 D4 0 ⎦ ⎣ r̂c4 ⎦
0 0 0 0 D5 r̂c5
r
r̂b = b1 .
rb2
By eliminating u+ , u− , v+ and v− , and then λu and λv , we obtain
1 −2 2
D1 + H T (D22 + D32 )−1 H + α2 RT (D42 + D52 )−1 R f = r̃c1 , (15)
where
r̃c1 = r̂c1 − H T (D22 + D32 )−1 r̂b1 − αRT (D42 + D52 )−1 r̂b2 .
Once (15) has been solved, the other unknowns in (12) can be easily recovered.
It is easy to check that the coefficient matrix in (15) is symmetric positive
definite. However, this system gets ill conditioned as the iterates get close to the
solution. In Section III, we employ a preconditioning method to solve how to
precondition this system efficiently.
Lemma 1 indicates that the linear system in the one-dimensional LMN and
LAD problems can be efficiently preconditioned by the FBIP.
For two-dimensional problems, we assume that the blurring matrix H has
a block-level off-diagonal decay property, and each block also has off-diagonal
decay property. This is true if the blurring function decays in spatial domain,
or if the support of the blur is small. In this case, we can set the FBIP to be a
triangular block banded matrix with each block being a banded matrix.
4 Experimental Results
We present experimental results on a high resolution image reconstruction prob-
lem [5, 8]. In this problem, the blurring matrix is only periodically shift invariant,
that is, periodically BTTB. Here we employ factorized banded inverse precondi-
itoners (FBIP) [7] for (15) and (16). Assuming the number of low resolution
frames is small, which in general is true, then the blurring matrix satisfies the
decay properties well. According to the theoretical results in [7], we expect fast
convergence will be observed in the tests.
20 20
40 40
60 60
80 80
100 100
120 120
140 140
160 160
180 180
200 200
50 100 150 200 50 100 150 200
(a) (b)
20 20
40 40
60 60
80 80
100 100
120 120
140 140
160 160
180 180
200 200
50 100 150 200 50 100 150 200
(c) (d)
Fig. 1. (a) Original boat image, (b) Observed high resolution image (c) Least Squares
restoration, PSNR=29.25 (d) the LAD solution, PSNR=35.26
The experiments are based on the boat image shown in Figure 1(a). This is a
200 × 200 grey level image, with grey levels varying from 0 to 1. A 4 × 4 sensor
850 H. Fu et al.
Table 1. CPU times and number of conjugate gradient iterations needed at each interior
point iteration, with or without the FBIP
5 Conclusion
In conclusion, we have proposed efficient algorithms for finding the LAD or LMN
solution for the image restoration problem. We formulated these problems as
solutions to smooth linear or quadratic programming problems, which are solved
by primal-dual interior point methods. The linear system at each interior point
iteration is first reduced to a more compact system and then solved by the PCG
method. We show that the FBIP can speed up the convergence of the conjugate
gradient method if a proper sparsity pattern is chosen.
References
1. S. Alliney. Digital filters as absolute norm regularizers. IEEE transactions on signal
processing, 40:1548–1562, 1992.
2. S. Alliney. A property of the minimum vectors of a regularizing functional defined
by means of absolute norm. IEEE transactions on signal processing, 45:913–917,
1997.
Fast Algorithms for l1 Norm/Mixed l1 and l2 Norms for Image Restoration 851
Abstract. This paper will present a new approach to the interpretation of se-
mantic information retrieved from complex X-ray images. The tasks of the
analysis and the interpretation of cognitive meaning of selected medical diag-
nostic images are made possible owing to the application of graph image lan-
guages based on tree grammars. One of the main problems in the fast accessing
and analysis of information collected in various medical examinations is the
way to transform efficiently the visual information into a form enabling intelli-
gent recognition and understanding of semantic meaning of selected patterns.
Another problem in accessing for useful information in multimedia databases is
the creation of a method of representation and indexing of important objects
constituting the data contents. In the paper we describe some examples present-
ing ways of applying picture languages techniques in the creation of intelligent
cognitive multimedia systems for selected classes of medical images showing
especially wrist structures.
1 Introduction
One the main problems in accessing information collected in medical databases is the
way to transform efficiently the visual information of patterns into a form enabling in-
telligent selection of cases obtained as an answer to queries directed at selected ele-
ments of contents of searched-for images. Therefore this paper will present the possi-
bilities of application of picture languages and graph grammars used as the ordering
factor indexing and supporting commitment and semantically-oriented search for vis-
ual information in multimedia medical databases.
It is worthwhile to emphasise the very essence of semantic analysis which allows
for content-based grouping of images sometimes differing in form though conveying
similar diagnostic information about the disease. Generally speaking, we have to con-
sider a great variety of examined medical cases [5, 7].
In medical images an actual shape of anomalies or lesions can vary between the
cases due to the fact that human organs vary between individuals, differing in
shape, size and location while the forms and progress of pathological lesions (e.g.
caused by neoplasm or chronic inflammation process) are unforeseeable [1, 7]. On
the other hand, every type of disease leads to some characteristic changes in the
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 852 – 857, 2005.
© Springer-Verlag Berlin Heidelberg 2005
Intelligent Semantic Information Retrieval in Medical Pattern Cognitive Analysis 853
formation useful for a quick search for such irregularities on image data. Also graph
grammars are applied for the task of description of important shape morphology fea-
tures for the wrist structure [3]. The application of the description created in this way
is analogous.
Fig. 1. A) Image showing lesions in the form of the lunate dislocation. B) Fusion of the sca-
phoid with distal row of carpal bones
For making the representation of the examined structures in the form of EDG
graphs (graphs with directed peaks and with labelled peaks and edges) [6] it is neces-
sary to define an appropriate linguistic formalism that is an appropriate graph gram-
mar defining a language. The language is defined in such a way that one could de-
scribe using it, without any ambiguities, every image representing a spatial system
composed of elements similar to the wrist bone system. In this way we create a tool
describing all possible shapes and locations of wrist bones, both the correct and
pathological ones. The linguistic formalism that we propose in this paper in order to
execute the task of mirroring real medical image forms into graph formulas fit for
computer processing, will be an expansive graph grammar [7]. After defining such a
grammar, every X-ray image will be converted into a linguistic formula built in ac-
cordance with the rules of that grammar. The effective parsing of that formula con-
ducted by the computer, compliant with the rules of the created grammar will lead to
an automatic assessment of photograph contents. This will make it possible in particu-
lar to determine whether the built of a wrist falls within the norm or whether it has
pathological deviations.
For the analysis of wrist radiogrammmes an xpansive graph grammar was defined.
Gexp=(N, Σ, Γ, P, S)
Intelligent Semantic Information Retrieval in Medical Pattern Cognitive Analysis 855
Terminal set of peak labels Σ={r, u s, l, t, p, tm, tz, c, h, m1, m2, m3, m4, m5}
Γ - edge label set {s<p<q<r<s<t<u<w<x<y<z}
Start symbol S=ST
P – is a finite production set presented on Figure 2.
Fig. 2. Production set introducing a representation of the correct build and the number of bones
in the wrist
4 Selected Results
As a result of cognitive multimedia analysis using linguistic approach it is possible to
quite efficiently describe, mine and search pathogenesis information of the deforma-
tions viewed on selected x-ray images, what means the possibility of recognize and
quick search some kind of diseases even on images absolutely not similar one to
other.
The methods prepared were aimed at building an automatic detection and semantic
interpretation system for detected regularities as well as the diagnosed irregularities in
856 M.R. Ogiela, R.Tadeusiewicz, and L. Ogiela
the carpus bones. It is worth notice, however, that the test data set used for defining
the output rules in the presented grammar was composed of only about 30 radio-
grammes. Despite such an insignificant representation and, owing to a great descrip-
tive and generation power of the used graphs, it is possible to classify practically any
number of analysed images. The initially assessed efficiency exceeds the 90% thresh-
old. On the other hand, the appearance of difficult and ambiguous cases can be
quickly considered by enriching grammar formalisms by new (so far not considered
due to lack of empirical data) reasoning rules and by specifying the meaning interpre-
tation or such new cases. This is also the direction that will be followed in the con-
ducted research.
5 Conclusions
The semantic approach to indexing and searching of multimedia medical databases
seems to be a more efficient and appropriate method than the traditional indexing
methods [2, 4] due to the presence of distinguishable objects visible in the discussed
medical patterns, which by virtue of their shape define pathological disease symp-
toms. A structural description of medical image contents becomes easier and more
unambiguous than an analogous description applied to a different category of pat-
terns, for examples scenes. Nevertheless, after defining an appropriate graph gram-
mar, the methodology described here can be utilised to describe any patterns. It will
enable therefore the creation of object-oriented semantic description of contents of
those data and it will also constitute the key to their indexation and search. An addi-
tional advantage of structural description methods is a potential of additional analysis
of the examined images in the course of archiving and defining the semantic meaning
of lesions visible on them; this is performed by imitating a qualified professional’s
understanding of medical images.
Syntactic information, together with contour representation in the form of terminal
symbols as well as production number sequences describing discovered pathologies,
constitute the representation of patterns placed in the database or searched-for [7].
In the course of the analysis of selected images in each case we obtain a type of rec-
ognized symptom and a sequence of production numbers, which lead to grammar
derivation of shape description of such lesions. Such sequences create the proper de-
scription of analyzed shapes and are stored in indexing record. In every case those
spots are highlighted where any irregularities have been identified. For each of them
there are detailed descriptions in the program representation relating to the previously
listed information used as indexing keys.
The approach to the generation of structural-semantic representation of medical
patterns in multimedia databases with the use of context-free and EDT graph gram-
mars [7] presented in this study is an entirely new solution. Preliminary research re-
veals that such approach proves to be an extremely efficient and universal tool ena-
bling visual data compression and unambiguous data representation. An important
point is that the proposed indexation technique has been optimised with an aim to find
diagnostic information, easily observed in the shape of organs visible on patterns and
dependent on disease symptoms.
Intelligent Semantic Information Retrieval in Medical Pattern Cognitive Analysis 857
Acknowledgement
This work was supported by the AGH University of Science and Technology under
Grant No. 10.10.120.39.
References
[1] Bankman, I. (ed.): Handbook of Medical Imaging: Processing and Analysis. Academic
Press (2002)
[2] Berchtold S., Keim D. A., Kriegel H-P., Seidl T.: Indexing the solution space: a new tech-
nique for nearest neighbor search in high-dimensional space. IEEE Transactions on
Knowledge & Data Engineering, 12(1) (2000) 45-57
[3] Burgener, F.A., Kormano, M.: Bone and Joint Disorders. Thieme, Stuttgart (1997)
[4] Martinez A. M., Serra J. R.: A new approach to object-related image retrieval. Journal of
Visual Languages & Computing, 11(3) (2000) 345-363
[5] Ogiela, M.R., Tadeusiewicz, R.: Artificial Intelligence structural imaging techniques in
visual pattern analysis and medical data understanding. Pattern Recognition, 36 (2003)
2441-2452
[6] Skomorowski M.: Parsing of random graphs for scene analysis. Machine GRAPHICS &
VISION International Journal, 7 (1998) 313-323
[7] Tadeusiewicz, R, Ogiela, M.R.: Medical Image Understanding Technology. Springer,
Berlin-Heidelberg (2004)
FSPN-Based Genetically Optimized Fuzzy Polynomial
Neural Networks
1 Introduction
Recently, a lot of attention has been directed towards advanced techniques of complex
system modeling. While neural networks, fuzzy sets and evolutionary computing as
the technologies of Computational Intelligence (CI) have expanded and enriched a
field of modeling quite immensely, they have also gave rise to a number of new
methodological issues and increased our awareness about tradeoffs one has to make in
system modeling [1], [2], [3], [4]. The most successful approaches to hybridize fuzzy
systems with learning and adaptation have been made in the realm of CI. Especially
neural fuzzy systems and genetic fuzzy systems hybridize the approximate inference
method of fuzzy systems with the learning capabilities of neural networks and evolu-
tionary algorithms [5]. As one of the representative design approaches which are
advanced tools, a family of fuzzy set-based polynomial neuron (FSPN)-based
SOPNN(called “FPNN” as a new category of neuro-fuzzy networks)[6] were
introduced to build predictive models for such highly nonlinear systems. The FPNN
algorithm exhibits some tendency to produce overly complex networks as well as a
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 858 – 866, 2005.
© Springer-Verlag Berlin Heidelberg 2005
FSPN-Based Genetically Optimized Fuzzy Polynomial Neural Networks 859
repetitive computation load by the trial and error method and/or the repetitive parame-
ter adjustment by designer like in case of the original GMDH algorithm. In this study,
in addressing the above problems with the conventional SOPNN (especially, FPN-
based SOPNN called “FPNN” [6], [9]) as well as the GMDH algorithm, we introduce
a new genetic design approach; as a consequence we will be referring to these net-
works as GA-based FPNN (to be called “gFPNN”). The determination of the optimal
values of the parameters available within an individual FSPN (viz. the number of
input variables, the order of the polynomial, the number of membership functions, and
a collection of the specific subset of input variables) leads to a structurally and para-
metrically optimized network.
The FSPN consists of two basic functional modules. The first one, labeled by F, is a
collection of fuzzy sets that form an interface between the input numeric variables and
the processing part realized by the neuron. The second module (denoted here by P) is
about the function – based nonlinear (polynomial) processing. This nonlinear process-
ing involves some input variables. In other words, FSPN realizes a family of multiple-
input single-output rules. Each rule reads in the form
if xp is Ak then z is Ppk(xi, xj, apk)
(1)
if xq is Bk then z is Pqk(xi, xj, aqk)
where alk is a vector of the parameters of the conclusion part of the rule while Plk(xi,
xj, a) denotes the regression polynomial forming the consequence part of the fuzzy
rule which uses several types of high-order polynomials besides the constant function
forming the simplest version of the consequence; refer to Table 1. The activation
levels of the rules contribute to the output of the FSPN being computed as a weighted
average of the individual condition parts (functional transformations) PK (note that the
index of the rule, namely “K” is a shorthand notation for the two indexes of fuzzy sets
used in the rule (1), that is K = (l, k)).
total inputs
§ total_rules related to input l total_rules related to input l
·
z= ¦ ¨ ¦ μ(l , k ) P(l , k ) ( xi , x j , a(l , k ) ) ¦ μ ( l ,k ) ¸
l =1 © k =1 k =1 ¹
total inputs total_rules related to input l
(2)
§ ·
= ¦ ¨ ¦ μ ( l , k ) P( l , k ) ( xi , x j , a(l , k ) ) ¸
l =1 © k =1 ¹
μ
μ (l , k ) = (l , k )
total _ rules related to input l
μ( l , k ) (3)
¦
k =1
used in the selection process, one-point crossover in the crossover operation, and a
binary inversion (complementation) operation in the mutation operator. To retain the
best individual and carry it over to the next generation, we use elitist strategy [8].
Table 1. Different forms of the regression polynomials standing in the consequence part of the
fuzzy
No. of inputs
1 2 3
Order of the polynomial
0 (Type 1) Constant Constant Constant
1 (Type 2) Linear Bilinear Trilinear
2 (Type 3) Biquadratic-1 Triquadratic-1
Quadratic
2 (Type 4) Biquadratic-2 Triquadratic-2
1: Basic type, 2: Modified type
The framework of the design procedure of the Fuzzy Polynomial Neural Networks
(FPNN) based on genetically optimized multi-layer perceptron architecture comprises
the following steps.
[Step 1] Determine system’s input variables
[Step 2] Form training and testing data
The input-output data set (xi, yi)=(x1i, x2i, …, xni, yi), i=1, 2, …, N is divided into two
parts, that is, a training and testing dataset.
[Step 3] Decide initial information for constructing the FPNN structure
[Step 4] Decide FSPN structure using genetic design
When it comes to the organization of the chromosome representing (mapping) the
structure of the FPNN, we divide the chromosome to be used for genetic optimization
into three sub-chromosomes. The 1st sub-chromosome contains the number of input
variables, the 2nd sub-chromosome involves the order of the polynomial of the node,
the 3rd sub-chromosome contains the number of membership functions(MFs), and the
last sub-chromosome(remaining bits) includes input variables coming to the corre-
sponding node (fuzzy set-based PN:FSPN). All these elements are optimized when
running the GA.
[Step 5] Carry out fuzzy inference and coefficient parameters estimation for fuzzy
identification in the selected node (FSPN)
Regression polynomials (polynomial and in the specific case, a constant value)
standing in the conclusion part of fuzzy rules are given as different types of Type 1, 2,
3, or 4, see Table 1. In each fuzzy inference, we consider two types of membership
functions, namely triangular and Gaussian-like membership functions. The conse-
quence parameters are produced by the standard least squares method
[Step 6] Select nodes (FSPNs) with the best predictive capability and construct their
corresponding layer
FSPN-Based Genetically Optimized Fuzzy Polynomial Neural Networks 861
Where, F1 denotes a maximal fitness value occurring at the current layer whereas
F* stands for a maximal fitness value that occurred at the previous layer. In this
study, we use a measure (performance index) that is the Root Mean Squared Error
(RMSE).
1 N
E ( PI or EPI ) = ¦ ( y p − yˆ p )2 (6)
N p =1
If (5) has not been met, the model is expanded. The outputs of the preserved nodes
(zli, z2i, …, zWi) serves as new inputs to the next layer (x1j, x2j, …, xWj)(j=i+1). This is
captured by the expression
x1 j = z1i , x2 j = z 2i , ! , x wj = z wi (7)
4 Experimental Studies
The performance of the GA-based FPNN is illustrated with the aid of well-known and
widely used dataset of the chaotic Mackey-Glass time series [10], [11], [12], [13],
[14], [15], [16], [17].
The time series is generated by the chaotic Mackey-Glass differential delay equa-
tion comes in the form
0.2 x (t − τ )
x (t ) = − 0.1x (t ) (8)
1 + x10 (t − τ )
To obtain the time series value at each integer point, we applied the fourth-order
Runge-Kutta method to find the numerical solution to (8). From the Mackey-Glass
time series x(t), we extracted 1000 input-output data pairs in the following format:
[x(t-24), x(t-18), x(t-12), x(t-6), x(t); x(t+6)]
where, t=118 to 1117. The first 500 pairs were used as the training data set while the
remaining 500 pairs formed the testing data set. To come up with a quantitative
evaluation of the network, we use the standard RMSE performance index as given by
(6). Table 2 summarizes the list of parameters used in the genetic optimization of the
network.
Table 3. Performance index of the network of each layer versus the increase of maximal
number of inputs to be selected (in case of using Type T* at the 1st layer and triangular MF)
5.5
5.5
Testing error
5
Training error
5
4.5
A : (1 3;3 5)
4 B : (2 3 5;4 5) 4.5
C : (2 3 4 5;4 5)
D : (2 3 4 5 0;4 5)
3.5 A : (16 23;2 5) 4
B : (5 8 12;2 5) A : (9 17;2 2)
3 C : (9 11 14 22;2 4) B : (8 15 17;3 3)
D : (2 6 7 11 0;2 4) C : (14 20 28 0;2 5) 3.5
D : (13 17 23 25 0;2 5)
2.5
3
2
1.5 2.5
1 2 3 1 2 3
Layer Layer
(a) Training error (b) Testing error
Fig. 1. Performance index of gFPNN with respect to the increase of number of layers (in case
of using Type T* at the 1st layers and Gaussian-like MF)
x(t-24)
x(t-24)
x(t-18)
x(t-18)
FSPN30
x(t-12) ڏ ڐ ڏ
ŷ FSPN22
x(t-12) ڏ ڐ ڏ
ŷ
x(t-6) x(t-6)
x(t) x(t)
(a) Triangular MF (1 layer) (b) Gaussian-like MF
Table 3 summarizes the performance of the 1st and the 2nd layer of the network
when changing the maximal number of inputs to be selected; here Max was set up to
2 through 5.
Fig. 1 depicts the performance index of each layer of gFPNN according to the in-
crease of maximal number of inputs to be selected. In Fig. 1, the premise part of
A:(•;•)- D:(•;•) denotes the optimal node numbers at each layer of the network,
namely those with the best predictive performance, and their consequent part stands
for the polynomial order and the number of MFs. Fig. 2(a) illustrates the detailed
optimal topologies of gFPNN for 1 layer when using Max=4 and triangular MF. And
also Fig. 2(b) illustrates the detailed optimal topology of gFPNN for 1 layer in case of
using Max= 4 and Gaussian-like MF. Table 4 gives a comparative summary of the
network with other models.
Table 4. Comparative analysis of the performance of the network; considered are models
reported in the literature
Performance index
Model
PI PIs EPIs NDEI*
0.044
Wang’s model[10] 0.013
0.010
Cascaded-correlation NN[11] 0.06
Backpropagation MLP[11] 0.02
6th-order polynomial[11] 0.04
ANFIS[12] 0.0016 0.0015 0.007
FNN model[13] 0.014 0.009
Recurrent neural network[14] 0.0138
Basic Case 1 0.0011 0.0011 0.005
(5th layer) Case 2 0.0027 0.0028 0.011
Type I
Modified Case 1 0.0012 0.0011 0.005
SONN**[15]
(5th layer) Case 2 0.0038 0.0038 0.016
Basic Case 1 0.0003 0.0005 0.0016
Type II
(5th layer) Case 2 0.0002 0.0004 0.0011
Triangular
Proposed Max=4 4.54e-4 4.55e-4
Type (2nd layer)
gFPNN T* Gaussian
Max=4 2.29e-4 2.85e-4
(2nd layer)
*
Non-dimensional error index (NDEI) as used in [16] is defined as the root mean square errors divided by
the standard deviation of the target series. ** is called “conventional optimized FPNN”.
5 Concluding Remarks
In this study, the GA-based design procedure of Fuzzy Polynomial Neural Net-
works (FPNN) along with their architectural considerations has been investigated.
The design methodology comes as a hybrid structural optimization and parametric
learning being viewed as two fundamental phases of the design process. The com-
prehensive experimental studies involving well-known datasets quantify a superb
FSPN-Based Genetically Optimized Fuzzy Polynomial Neural Networks 865
References
1. Cherkassky, V., Gehring, D., Mulier, F.: Comparison of adaptive methods for function es-
timation from samples. IEEE Trans. Neural Networks. 7 (1996) 969-984
2. Dickerson, J.A., Kosko, B.: Fuzzy function approximation with ellipsoidal rules. IEEE
Trans. Syst., Man, Cybernetics. Part B. 26 (1996) 542-560
3. Sommer, V., Tobias, P., Kohl, D., Sundgren, H., Lundstrom, L.: Neural networks and ab-
ductive networks for chemical sensor signals: A case comparison. Sensors and Actuators
B. 28 (1995) 217-222
4. Kleinsteuber, S., Sepehri, N.: A polynomial network modeling approach to a class of large-
scale hydraulic systems. Computers Elect. Eng. 22 (1996) 151-168
5. Cordon, O., et al.: Ten years of genetic fuzzy systems: current framework and new trends.
Fuzzy Sets and Systems. 141(1) (2004) 5-31
6. Oh, S.K., Pedrycz, W.: Self-organizing Polynomial Neural Networks Based on Polynomial
and Fuzzy Polynomial Neurons: Analysis and Design. Fuzzy Sets and Systems. 142(2)
(2003) 163-198
7. Michalewicz, Z.: Genetic Algorithms + Data Structures = Evolution Programs. 3rd edn.
Springer-Verlag, Berlin Heidelberg New York (1996)
8. Jong, D., K. A.: Are Genetic Algorithms Function Optimizers?. Parallel Problem Solving
from Nature 2, Manner, R. and Manderick, B. eds., North-Holland, Amsterdam (1992)
9. Oh, S.K., Pedrycz, W.: Fuzzy Polynomial Neuron-Based Self-Organizing Neural Net-
works. Int. J. of General Systems, 32 (2003) 237-250
10. Wang, L.X., Mendel, J.M..: Generating fuzzy rules from numerical data with applications.
IEEE Trans. Systems, Man, Cybern. 22 (1992) 1414-1427
11. Crowder, R.S. III.: Predicting the Mackey-Glass time series with cascade-correlation learn-
ing. In: D. Touretzky, G. Hinton, and T. Sejnowski, editors, Proceedings of the 1990 Con-
nectionist Models Summer School, Carnegic Mellon University, (1990) 117-123
12. Jang, J.S.R.: ANFIS: Adaptive-Network-Based Fuzzy Inference System. IEEE Trans. Sys-
tem, Man, and Cybern. 23 (1993) 665-685
13. Maguire, L.P., Roche, B., McGinnity, T.M., McDaid, L.J.: Predicting a chaotic time series
using a fuzzy neural network. Information Sciences. 112 (1998) 125-136
14. James, C.L., Huang, T.Y.: Automatic structure and parameter training methods for model-
ing of mechanical systems by recurrent neural networks. Applied Mathematical Modeling.
23 (1999) 933-944
15. Oh, S.K., Pedrycz, W., Ahn, T.C.: Self-organizing neural networks with fuzzy polynomial
neurons. Applied Soft Computing. 2 (2002) 1-10
866 S.-K. Oh et al.
16. Lapedes, A.S., Farber, R.: Non-linear Signal Processing Using Neural Networks: Predic-
tion and System Modeling. Technical Report LA-UR-87-2662, Los Alamos National
Laboratory, Los Alamos, New Mexico 87545 (1987)
17. Mackey, M.C., Glass, L.: Oscillation and chaos in physiological control systems. Science,
197 (1977) 287-289
Unsupervised Color Image Segmentation Using Mean
Shift and Deterministic Annealing EM
1 Introduction
The segmentation of natural color image into an unknown number of distinct and
homogeneous regions is a difficult problem and becomes a fundamental issue in low-
level computer vision tasks. Given an image, feature vectors are extracted from local
neighborhoods and mapped into the space spanned by their coordinates. Significant
features in the image then correspond to high-density regions in this space. The finite
mixture of multivariate probability distributions has been used as the statistical mod-
eling of a continuous feature space. The widely often used assumption in modeling by
using a finite mixture of distribution is that the number of components or clusters is
small and known a priori and the individual components obey multivariate normal
distributions. That is, the feature space can be modeled as a finite mixture of Gaussian
distributions with a known number of components.
However, we cannot recognize the number of colors composing an observed real
image before analyzing its image. So, we need the method that automatically estimate
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 867 – 876, 2005.
© Springer-Verlag Berlin Heidelberg 2005
868 W. Cho et al.
the number of mixture components. And also Gaussian mixture model is commonly
used to represent the probability distribution of the feature vector in feature space.
The EM algorithm is naturally used for estimating the parameters of Gaussian mixture
model. But the estimates of parameters obtained by EM algorithm are strongly de-
pendent upon their initial values and they are sometimes achieved by the local maxi-
mum of total log likelihood.
In this paper, to overcome this problem, we are going to consider an unsupervised
segmentation algorithm combining the mean shift procedure with deterministic an-
nealing EM, which will be referred as MS-DAEM algorithm. We show how to apply
it for the estimation of components and parameters in a mixture model. We adopt the
Gaussian mixture model to represent the probability distribution of the observed fea-
ture vector and perform the image segmentation using this model. And this paper
demonstrates the performance of our segmentation algorithm from natural color
scenes.
Let {Xi }, i = 1,", n be the set of n data points in a d-dimensional Euclidean space.
The multivariate kernel density estimate obtained with kernel K (x ) and window
radius h , computed at point x is defined as:
1 n x − Xi
fˆK (x) = d ¦ K ( ). (1)
nh i =1 h
Here, we are interested only in a class of radially symmetric kernels satisfying
K (x) = c K ,d k (|| x || 2 ) ,
in which case it suffices to define the function k (x) called the profile of the kernel,
only for x ≥ 0 and c K ,d is the normalized constant which makes K (x) integrate to
one.
The differentiation of the kernel allows one to define the estimate of the density
gradient as the gradient of the kernel density estimate:
1 n x − Xi 2c K ,d n x − Xi 2
∇fˆK (x) = ¦ ∇K ( )= d +2
¦ (x − X i )k ′(|| || ) . (2)
nh d i =1 h nh i =1 h
We define the derivative of the kernel profile as a new function
g ( x) = − k ′( x) ,
and assume that this exists for all x ≥ 0 , except for a finite set of points. Now, if we
use a function for profile, the kernel is defined as
G (x) = cG ,d g (|| x || 2 ) ,
Unsupervised Color Image Segmentation 869
§ n
x − Xi 2 ·
2c K ,d n
§ x − X i 2 ·¨
¨
¦ g (|| h
|| ) X i ¸
¸
(3)
=
nh d + 2
¦ g ¨¨ ||
© h
|| ¸¸¨
¹¨
i =1
n
x − Xi 2
− x¸
¸
i =1
¨¨ ¦ g (|| h
|| ) ¸¸
© i =1 ¹
Here, this is given as the product of two terms having special meaning. The first
term in the expression (3) is proportional to the density estimate at x computed with
the kernel G (x)
n
x − Xi cG ,d n
x − Xi 2
¦ ¦ g (||
1
fˆG (x) = d G( )= d || ) ,
nh i =1 h nh i =1 h
and the second term is defined as the mean shift vector
§ n § x− X 2 · ·
¨
¨ ¦i =1 ©
g¨
¨ h
i ¸X
¸ i
¸
¸
¹
m G (x) = ¨ − x¸ . (4)
¨ n § x− X 2· ¸
¨
¨ ¦ g¨
i =1 ©
¨ h
i ¸
¸
¸
¸
© ¹ ¹
This vector is the difference between the weight mean using the kernel G (x) for
weights and the center of the kernel. Then, we can rewrite the expression (3) as
2c K , d ˆ
∇fˆK (x) = f G ( x) m G ( x) ,
h 2 c G ,d
which yields
1 2 ∇fˆK (x)
m G ( x) = h c . (5)
2 fˆG (x)
The expression (5) shows the mean shift vector being proportional to the gradient
of the density estimate at the point it is computed. As the vector points in the direc-
tion of maximum increase in density, it can define a path leading to a local density
maximum which becomes a mode of density. It also exhibits a desirable adaptive
behavior, with the mean shift step being large for low-density regions and decreases
as a point x approaches a mode. Each data point thus becomes associated to a point of
convergence, which represents a local mode of the density in the d-dimensional space.
870 W. Cho et al.
Here, if the kernel has a convex and monotonically decreasing profile, two se-
quence { y 1 , y 2 , "} and { fˆK (1), fˆK (2) , "} converge and { fˆK (1), fˆK (2) , "} is
monotonically increasing. After that, let us denote by y and fˆ c the convergence
c K
points of their sequences respectively. Here, we can get two kinds of implications
from the convergence result. First, the magnitude of the mean shift vector converges
to zero. In fact, the j-th mean shift vector is given as
m G (y j ) = y j +1 − y j ,
and this is equal to zero at the limit point, y c . In other words, the gradient of the
density estimate computed at y c is zero. That is,
∇fˆ (y ) = 0 .
K c
3.1 Modeling of Color Images with GMM and Parameter Estimation Using
DAEM Algorithm
Normally, natural images consist of several objects and they have native color stimuli.
Color model for representing their colors is commonly used with the RGB model. To
use HIS (Hue, Intensity, Saturation) color model as a user-oriented color model in this
paper, we first translate the RGB color space into the HIS color space. A color distri-
bution is obtained by projecting the pixel values in the selected object into the color
space. Here, we will employ a GMM to characterize the distribution of color feature
vectors observed from each object consisting of a natural color image.
Suppose that a color image consists of a set of disjoint pixel labeled 1 to N , and
that each pixel is assumed to belong to one of the K distinct regions. We let the
groups G1 ,⋅ ⋅ ⋅, GK represent the K possible regions. Also we let y i denote the finite
dimensional feature vector observed from i th pixel ( i = 1,⋅ ⋅ ⋅, N ). Then, we adopt the
GMM for a distribution of each feature vector y i as defined as the following model
K
p(y ; Ĭ) = ¦ ʌ k N(ȝ k , Ȉ k )
k =1
where N(ȝ k , Ȉ k ) denote a bivariate or trivariate normal distribution with mean
vector ȝ k and a covariance matrix Σ k , and Ĭ is the parameter vector used to
characterize each object or region. Further, we let ǽ1 , ⋅ ⋅ ⋅ ,Z N denote the unobserv-
able group indicator vectors, where the k th element z ik of Z i is taken to be one or
zero according to the case in which the i th pixel does or does not belong to the k th
group. Here, if parameter vector, ʌ is denoted as the prior probability in which each
pixels belongs to a particular group, then the probability function of Z is given as
follows:
K
p(z; ʌ) = ∏ π k Z ik .
k =1
Then the distribution of a color image is expressed by the joint distribution of a
complete data vector, x = (y , z ) , and the log likelihood function that can be formed
on the basis of the complete data x if we adopt the GMM for an observed feature
vector, is given by
log LC (Ĭ | x) = log p(y | z; Θ) + log p(z; ʌ)
K N K N (7)
= ¦ ¦ Z ik log( N (ȝ k , Ȉ k )) + ¦ ¦ Z ik log(π k )
k =1i =1 k =1i =1
The solution of the minimization problem associated with the generalized free en-
ergy in ϑ ( Pz(t ) , Ĭ) with respect to probability distribution p(z; ʌ) with a fixed pa-
rameter Ĭ is the following Gibbs distribution:
1
Pβ (z | y, Ĭ) = ⋅ exp(−βH (z)) (10)
¦ z'∈ȍ exp(−β H (z' ))
z
ϑ ( Pz (t ) , Ĭ) = Qβ (Ĭ) + β ⋅ E P z (log Pz (t ) )
(t )
Since the second term on the right hand side of the generalized free energy is inde-
pendent of Ĭ , we should find the value of Ĭ minimizing the first term
Qβ (Ĭ) = E p ( H (z; y, Ĭ))
(t )
z
To achieve this purpose, we can add a new β −loop, which is called annealing loop,
to the original EM-algorithm and replace the original posterior with the new posterior
distribution, pβ (z | y, Ĭ) parameterized by β .
Finally, after finishing fully iteration, we can obtain the conditional expectation of
the hidden variable, Z ik given the observed feature data from E-step. This is given by
Unsupervised Color Image Segmentation 873
(πˆ k N (y i ; ȝˆ k , Σˆ k )) β
τ kβ (y i ) = E ( Z ik ) = K
(11)
β
¦ (πˆ j N (y i ; ȝˆ j , Σˆ j ))
j =1
And also we can obtain the estimators of mixing proportions, a component mean
vector and covariance matrix from M-step. These are respectively given as
N
πˆ k = N1 ¦ τ kβ (y i ) , k = 1, " , K ,
i =1
N
β
¦ τ k (y i )y i
i =1
ȝˆ k = N
, k = 1, " , K
β
¦ τ k (y i )
i =1
and
N
β
¦ τ k (y i )(y i − ȝˆ k )(y i − ȝˆ k )
t
i =1
Σˆ k = N
, k = 1, " , K (12)
β
¦ τ k (y i )
i =1
Suppose that a natural image consists of a set of the K distinct objects or regions. We
usually segment a natural image to assign each pixel to some regions or objects. To
do this, we need a posterior probability of the i th pixel belonging to k th region.
These probabilities have already been estimated by DAEM algorithm in last section.
That is, given the observed data set, S = {y i }iN=1 and a knowledge of estimated pa-
rameter vector Θ̂ , the posterior probability of the i th pixel belongs to k th region is
given by the formula (12).
Next, we try to find what the component or region has the maximum value among
the estimated posterior probabilities. This is define as
Zˆ i = arg max 1≤ k ≤ K τ kβ (y i ) , i = 1, " , N .
Then, we can segment a natural image by assigning each pixel to the region or ob-
ject having the maximum a posterior probability.
4 Experimental Results
To demonstrate the performance of the proposed segmentation algorithm, we have
conducted several experiments for the synthetic data and real images. Fig. 1 shows
synthetic data sets consisting of 4000 samples generated from three different Gaussian
mixture functions. We have first applied mean shift procedure to the data sets in Fig.
1 to find the number and location of clusters. In Fig. 2, we can see that each mode is
correctly detected regardless of the cluster structures.
874 W. Cho et al.
Fig. 2. Mode detection results of the mean shift procedure for the data set in Fig.1
Randomly selected 60 points were used as the initial window location and band-
width of 0.1 and 0.3 were chosen for the experiment. As being expected, we can ob-
serve that the trajectories exhibit the path leading to a local density maximum from
each initial location. Unfavorable effect, however, has occurred from the cluster with
scattering samples. Number of modes increase when the small bandwidth is em-
ployed to the cluster with large covariance matrix. This is due to the unstable varia-
tions of local density estimated by a small bandwidth. This kind of artifacts can be
eliminated by merging the closely located modes to the one corresponding to the
Unsupervised Color Image Segmentation 875
highest density [7]. As the similar reason, the paths with bandwidth 0.3 follow much
smoother trajectory toward the mode than the ones with bandwidth 0.1.
Now we have applied the proposed MS-DAEM algorithm to the color images
“text ” and “hand”, in Fig. 4(a) and 5(a), respectively. The conversion of the RGB
color image to HSI model is carried out and the hue and saturation components are
only used as values of the feature vectors. The segmentation results using the MS-
DAEM algorithm are shown in Fig. 4(b), and 5(b). We can see that the homogeneous
objects are partitioned into the same region accurately and the fine structure is pre-
served.
(a) (b)
Fig. 4. Text image. (a) Original (b) Segmentation result using MS-DAEM
(a) (b)
Fig. 5. Hand image. (a) Original (b) Segmentation result using MS-DAEM
5 Conclusions
In this paper, we have proposed MS-DAEM algorithm combining the mean shift
procedure and the deterministic annealing EM algorithm for unsupervised segmenta-
tion of natural color image. The mean shift procedure using a gradient of a kernel
density estimates provides an unsupervised mode detection when the number of com-
ponents is not known a priori. The DAEM algorithm is the estimation method of
876 W. Cho et al.
various parameters in GMM derived from the principle of maximum entropy to over-
come the local maximum problem associated with the conventional EM algorithm.
We conclude from the experiments for the synthetic data and real images that the
mean shift procedure has been proven to perform well in detecting the number of
components or clusters in complicated feature spaces of many real images, and the
DAEM algorithm is robust to initial conditions and it provides a global optimal solu-
tion for the ML estimators.
References
1. G.J. McLachlan, S.K.Nguyen, G.J.Galloway, and D.Wang, “Clustering of Magnetic Reso-
nance Images”, Technical Report, Department of Mathematics, University of Queensland,
1998.
2. H. Permuter, J. Francos, I. H. Jermyn, “Gaussian mixture models of texture and colour for
image database retrieval,” Proc. of the IEEE International Conference on Acoustics,
Speech and Signal Processing, 2003.
3. Yves Delignon, Abdelwaheb Marzouki, Wojciech Pieczynski, “Estimation of Generalized
Mixtures and Its application in Image Segmentation,” IEEE Transactions on Image Proc-
essing, vol. 6, no. 10, pp. 1364-1375, 1997.
4. Dempster A. P., Laird N. M., Rubin D. B., “Maximum likelihood from incomplete data via
the EM algorithm,” Journal of Royal Statistical Society B, 39, 1-39, 1977.
5. T.Hofmann and J.M.Buhman, “Pairwise data clustering by deterministic annealing”, IEEE
Transactions on PAMI, vol. 19, no. 1, pp. 1-13, 1998.
6. N.Ueda and R.Nakano, “Deterministic annealing EM algorithm”, Neural Networks, vol.
11, pp. 271-282, 1998.
7. D. Comaniciu, and P. Meer, “Mean Shift: A Robust Approach Toward Feature Space
Analysis”, IEEE Transactions on PAMI, vol. 24, no. 5, pp. 1-17, 2002.
8. Y. Cheng, “Mean Shift, Mode Seeking, And Clustering”, IEEE Transactions on PAMI,
vol. 17, no. 8, pp. 790-799, 1995.
9. A. H. Kam and W. J. Fitzgerald, “Unsupervised Multiscale Image Segmentation”, In Proc.
3rd International Conference on Computer Vision, Pattern Recognition and Image
Processing (CVPRIP 2000), volume II, pages 54-57, Atlantic City, New Jersey, USA,
10. H. Wang and D. Suter, “A Novel Robust Method for Large Numbers of Gross Errors”,
Seventh International Conference on Control, Automation, Robotics And Vision, pp 326-
331, 2002.
11. Jonghyun Park, Wanhyun Cho and Soonyoung Park, “Color Image Segmentation Using a
Gaussian Mixture Model and a Mean field Annealing EM”, IEICE Transactions on Infor-
mation and Systems, Vol. E86-D, No 10, pp 2240-2248, 2003.
Identity-Based Key Agreement Protocols
in a Multiple PKG Environment
1 Introduction
Key establishment protocol is a cryptographic primitive that is used to share a com-
mon secret key between entities. This secret key is normally used as a session key to
construct a secure channel between the entities concerned. Key establishment protocol
can be subdivided into key transport protocol and key agreement protocol. In key trans-
port protocol, one of the participant creates the shared key and distributes it to others
securely. On the other hand, in key agreement protocol, each entity computes the com-
mon secret key using the information contributed by all the entities involved. In key
transport protocol, all the participants have to trust the entity responsible for creating
the new shared key. Therefore, normally a trusted third party is used as a server that
creates and distributes shared keys. However, in this setting, this entity becomes a good
This work was supported by the Ministry of Information and Communication, Korea, under
the university HNRC-ITRC program supervised by the IITA.
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 877–886, 2005.
c Springer-Verlag Berlin Heidelberg 2005
878 H. Lee et al.
target for attack and the success of such attack is catastrophic. Furthermore, this entity
may become a bottleneck point. In contrast, key agreement protocols does not suffer
from these problems, since no single entity determines the shared key.
tion from different settings into a single common value. The most obvious solution to
accomplish this is to combine the results of separate key agreement protocols executed
in each PKG environment. However, since each entity only has its private key from its
PKG, direct execution of existing protocol is infeasible. To ameliorate this situation, in
this paper, we propose a new efficient ID-based two-party key agreement protocol for
multiple PKG environment. We also extends this protocol to a tripartite version. Our
two-party key agreement protocol is as efficiency as any previous ID-based two-party
key agreement protocol that provides PKG forward secrecy.
3 Mathematical Background
3.1 Pairings
Bilinear pairings such as Weil pairing and Tate pairing reduces the discrete logarithm
problem on elliptic curves to that in a finite field. Originally pairings were introduced
880 H. Lee et al.
as a tool that can be used to attack cryptosystems based on elliptic curves. Using pair-
ings, decision Diffie-Hellman problem on elliptic curves can be easily solved. This is a
well-known MOV (Menezes, Okamoto, Vanstone) reduction [11] and FR (Frey, Ruck)
attack [12]. In recent years, bilinear pairings have found positive applications in cryp-
tography to construct new cryptographic primitives. In 2000, Joux showed that the Weil
pairing can be used to construct a simple tripartite Diffie-Hellman key agreement pro-
tocol [5]. Since then, most of identity-based primitives exploit pairing to achieve their
goals.
From now on, we will use the following notations: 1) q means a large prime number,
2) G1 and G2 are two groups with the same order q, where G1 is an additive group on
an elliptic curve, and G2 is a multiplicative group of a finite field, 3) P, Q, and R are
random elements of G1 , and 4) a, b, x, y, and z are random elements of Z∗q .
Currently, solving DLP, CDHP, and BDHP is computationally infeasible. For more
detail, refer to [2].
4 The Protocols
4.1 System Setup
Basically, the system setup phase is similar to that of Boneh and Franklin’s work. How-
ever, in our system, there are total n different PKGs, which do not share common system
parameters. Therefore, each PKG must configure its parameters as follows:
Identity-Based Key Agreement Protocols in a Multiple PKG Environment 881
After completing the system setup phase, each PKG publishes its public system
parameters:
Protocol 1
After the messages are exchanged, each participant computes the two partial session
keys as follows:
Now, each entity uses the two partial session key to compute the common session
(1) (1) (2) (2)
key. In detail, A computes the common session key SKAB = H(H2 (KAB ), H2 (KAB )),
where H is a general hash function such as SHA-1. Similarly, B computes the session
(1) (1) (2) (2)
key SKBA = H(H2 (KBA ), H2 (KBA )). We can show that both participant have agreed
on the same session key SK = SKAB = SKBA by the followings:
882 H. Lee et al.
The First Round. The protocol is divided into two discrete rounds. In the first round,
each entity constructs separate secure channel between others. To achieve this goal,
every entity exploits our two-party key agreement protocol with the others individually.
First of all, each participant broadcast messages to the others as follows:
At the end of this phase, each entity can computes pairwise keys with other entities,
separately as being introduced in our two-party key agreement protocol.
The Second Round. In the second round, each entity exchanges some values with
others in order to share common secret key. First of all, each entity broadcasts some
values, each of which includes the ephemeral key of each entity’s. Protocol runs as
follows:
5 Analysis
In this section, we give the security and efficiency analysis of our proposed protocols.
We first heuristically argue that our protocols satisfy the security requirements of the
key agreement protocol. We then discuss the efficiency of our protocols by comparing
the number of pairing computation required with other protocols.
884 H. Lee et al.
*: each PKGs shares the common system parameters but distinct master keys.
**: each PKGs uses different system parameters.
6 Conclusion
In this paper, we have proposed a new efficient ID-based two-party key agreement pro-
tocol for multiple PKG environment. We have also extended this protocol to a tripartite
version. We have showed that our proposed protocols satisfy all the security require-
ments including the PKG forward secrecy. The efficiency of two-party key agreement
protocol is equal to previous ID-based protocols for single PKG environment. The secu-
rity of our proposed key agreement protocols are based on the difficulty of DLP, CDHP,
and BDHP on an elliptic curve.
References
1. Shamir, A.: Identity-based Cryptosystems and Signature Schemes. In Advances in
Cryptology, Crypto 1984. Lecture Notes in Computer Science, Vol. 196. Springer-
Verlag (1985) 47–53
886 H. Lee et al.
2. Boneh, D., Franklin, M.: Identity-based Encryption from Weil pairing. In Advances
in Cryptology, Crypto 2001. Lecture Notes in Computer Science, Vol. 2139. Springer-
Verlag (2001) 213–229
3. Smart, N.: An Identity-based Authenticated Key Agreement Protocol Based on Weil Pairing.
In Electronic Letters, Vol. 38. IEEE (2002) 630–632
4. Chen, L., Kudla C.: Identity-based Authenticated Key Agreement Protocols from Pairings.
In Proceedings of the 16th IEEE Computer Security Foundations Workshop. IEEE Computer
Society Press (2003) 219–233
5. Joux, A.: A One Round Protocol for Tripartite Diffie-Hellman. In Proceedings of Algorith-
mic Number Theory Symposium, ANTS-IV. Lecture Notes in Computer Science, Vol. 1838.
Spinger-Verlag (2000) 385–394
6. Al-Riyami, S., Patterson, K.: Tripartite Authenticated Key Agreement Protocols from Pair-
ings. In Proceedings of IMA Conference on Cryptography and Coding. Lecture Notes in
Computer Science, Vol. 2898. Spinger-Verlag (2003) 332–359
7. Zhang, F., Liu, S., Kim, K.: ID-Based One Round Authenticated Tripartite Key Agreement
Protocols with Pairings. Crypology ePrint Archive, Report 2002/122
8. Shim, K.: Efficient One Round Tripartite Authenticated Key Agreement Protocol Based on
Weil Pairing. In Electronic Letters, Vol. 39, IEEE (2003) 208–209
9. Cheng, Z., Vasiu, L., Comley, R.: Pairing-Based One-Round Tripartite Key Agreement Pro-
tocols. Cryptology ePrint Archive, Report 2004/079
10. Chen, L., Kudla, C.: Identity-based Authenticated Key Agreement Protocols from Pairings.
Cryptology ePrint Archive, Report 2002/184
11. Menezes, A., Okamoto, T., Vanstone, S.: Reducing Elliptic Curve Logarithms to Logarithms
in a Finite Field. Transaction of Information Theory, Vol. 39. IEEE (1993) 1639–1646
12. Frey, G., Ruck, H.: A Remark Concerning m-divisibility and The Discrete Logarithm in The
Divisor Class Group of Curves. Mathematics of Computation, Vol. 62. (1994) 865–874
Evolutionally Optimized Fuzzy Neural Networks Based
on Evolutionary Fuzzy Granulation
1 Introduction
Lately, CI computing technique becomes hot issue of IT (Information technology)
and abilities of that interest. The omnipresent tendency is the one that exploits tech-
niques of CI [1] by embracing neurocomputing imitating neural structure of a human
[2], fuzzy modeling using linguistic knowledge and experiences of experts [3], [4],
and genetic optimization based on the natural law [5,6]. Especially the two of the
most successful approaches have been the hybridization attempts made in the frame-
work of CI. Neuro-fuzzy systems are one of them [7], [8]. A different approach to
hybridization leads to genetic fuzzy systems [6], [9].
In this paper, new architectures and comprehensive design methodologies of Ge-
netic Algorithms (GAs) based Evolutionally optimized Fuzzy Neural Networks
(EoFNN) are introduced for effective analysis and solution of nonlinear problem and
complex systems. The proposed EoFNN is based on the Fuzzy Neural Networks
(FNN). In the consequence part of the fuzzy rules, three different forms of the regres-
sion polynomials such as constant, linear and modified quadratic are taken into con-
sideration. The polynomial of a fuzzy rule results from that we look for a fuzzy sub-
space (a fuzzy rule) influencing the better output of a model, and then raise the order
of polynomial of the fuzzy rule (subspace). Contrary to the former, we make a simpli-
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 887 – 895, 2005.
© Springer-Verlag Berlin Heidelberg 2005
888 S.-K. Oh et al.
fied form for the representation of a fuzzy subspace lowering of the performance of a
model. This methodology can effectively reduce the number of parameters and im-
prove the performance of a model. GAs being a global optimization technique deter-
mines optimal parameters in a vast search space. But it cannot effectively avoid a
large amount of time-consuming iteration because GAs finds optimal parameters by
using a given space (region). To alleviate the problems, the dynamic search-based
GAs is introduced to lead to rapidly optimal convergence over a limited region or a
boundary condition. To assess the performance of the proposed model, we exploit a
well-known numerical example.
Ri : If x1 is A1i and " xk is Aki then Cyi = w0 i + w1i ⋅ x1 + " + wki ⋅ xk (2)
IF μi μi
∏ ک ∏ fi
x1
∏ ک ∏
¦ ^y
∏ ک ∏
xk
∏ ک ∏
IF μi μi wi THEN
∏ ک fi
∏ ک ¦
1 w0i
x1 ∏ ک
∏ ک ¦
∏ ک ¦ y^ w1i
∏ ک ¦
xk ∏ ک
Cyi
∏ ک wki
¦
∏ ک THEN
In this paper, we propose the polynomial fuzzy inference based FNN (pFNN). The
proposed pFNNs are obtained from the integration and extension of conventional
FNNs. The topology of the proposed pFNN is show in Fig. 2 and consists of the ag-
gregate of fuzzy rules such as (3). The consequence part of pFNN consists of summa-
Evolutionally Optimized Fuzzy Neural Networks 889
tion of a constant term, a linear sum of input variables and a linear sum of combina-
tion of two variables for the entire input variables. The polynomial structure of the
consequence part in pFNN emerges into the networks with connection weights shown
in Fig. 2. This network structure of the modified quadratic polynomial involves sim-
plified (Type 0), linear (Type 1), and polynomial (Type 2) fuzzy inferences. And
fuzzy inference structure of pFNN can be defined by the selection of Type (order of a
polynomial).
Ri : If x1 is A1i and " xk is Aki
(3)
then Cyi = w0i + w1i ⋅ x1 + " + wki ⋅ xk + wk +1i ⋅ x1 ⋅ x2 + " + wk + ji ⋅ xk ' ⋅ xk
1 w 0i ¦ w 0i
1 ¦
xk
w 1i ¦ x1 w 1i ¦
w ki ¦ xk w ki ¦
Cy i Cy i
∏ w k+ji ¦ ∏ w k+ji ¦
THEN
i) Type 0 :
Δw0 i (t + 1) = 2 ⋅η ⋅ ( y p − yˆ p ) ⋅ μi + α ⋅ Δw0i (t ) (6)
ii) Type 1 :
°Δw0 i (t + 1) = 2 ⋅ η ⋅ ( y p − yˆ p ) ⋅ μi + α ⋅ Δw0 i (t )
® (7)
°̄Δwki (t + 1) = 2 ⋅ η ⋅ ( y p − yˆ p ) ⋅ μi ⋅ xk + α ⋅ Δwki (t )
iii) Type 2 :
Δw0i (t + 1) = 2 ⋅η ⋅ ( y p − yˆ p ) ⋅ μi + α ⋅ Δw0i (t )
°
®Δwki (t + 1) = 2 ⋅ η ⋅ ( y p − yˆ p ) ⋅ μi ⋅ xk + α ⋅ Δwki (t ) (8)
°
¯Δwk + ji (t + 1) = 2 ⋅ η ⋅ ( y p − yˆ p ) ⋅ μi ⋅ xk ' ⋅ xk + α ⋅ Δwk + ji (t )
Where, Δwki (t ) = wki (t ) − wki (t − 1) . η and α are constrained to the unit interval.
μi μi
∏ ک ∏ fi
∏ ک ∏
¦ y^
∏ ک ∏
x1
∏ ک ∏
¦ Cy1 : Type 0
1 w0i
Fig. 3. pFNN architecture; polynomials of consequence have different orders for each fuzzy
rules
networks (EoFNN). For the evolutionally optimized architecture, the dynamic search-
based GAs is proposed, and also the efficient methodology of chromosomes application
of GAs for the identification of architecture and parameters of EoFNN is discussed.
To search a global solution in process of optimization using GAs is stagnated by
various causes. One factor of them is to suitably give a definition of the search space
for a global solution. Generally, search space (range) is defined for a given system
and string length (the number of bit) is set for the defined range. Seeking for the op-
timal solution is based these. If the search range is defined as a large scale, then the
number of bit increases in size for the given space. This cause the request of many
computing time, tardy search of solutions, etc, so, GAs show a drop in performance.
If a small-scale for the solution space is given, then the string length is sorted. This
can ease the computing-burden, but debase the quality (detailed drawing) of solutions.
Therefore, in order to improve these problems, we introduce the dynamic search-
based GAs. This methodology discovers an optimal solution through adjusting search
range. Adjustment of a range is based on the moving distance of a basis solution. A
basis solution is previously determined for sufficiently large space. The procedure of
adjusting space for each step in the dynamic search-based GAs is shown in Fig. 4.
In order to generate the proposed EoFNN, the dynamic search based GAs is used
in the optimization problems of structures and parameters. From the point of fuzzy
rules, these divide into the structure and parameters of the premise part, and that of
consequence part. The structure issues in the premise of fuzzy rules deal with how to
use of input variables (space) influencing outputs of model. The selection of input
variables and the division of space are closely related to generation of fuzzy rules that
determine the structure of FNN, and govern the performance of a model. Moreover, a
number of input variable and a number of space divisions induce some fatal problems
such as the increase of the number of fuzzy rules and the time required. Therefore, the
relevant selection of input variables and the appropriate division of space are required.
The structure of the consequence part of fuzzy rules is related to how represents a
fuzzy subspace. Universally, the conventional methods offer uniform types to each
subspace. However, it forms a complicated structure and debases the output quality of
a model, because it does not consider the correlation of input variables and reflect a
feature of fuzzy subspace. In this study, we apply the various forms in expressions of
a fuzzy subspace. The form is selected according to an influence of a fuzzy subspace
for an output criterion and provides users with the necessary information of a sub-
space for a system analysis.
x lo w x b a sis x h ig h
G e n e tic A lg o rith m s
x se a rc h
x lo w x b a sis x h ig h
Δx
x low x h ig h
x b a s is
Δx
x low x h ig h
x b a s is
4 Experimental Studies
In this experiment, we use three-input nonlinear function as in [3], [4]. This dataset
was analyzed using Sugeno's method [3]. We consider 40 pairs of the original input-
output data. The performance index (PI) is defined by (10). 20 out of 40 pairs of in-
put-output data are used as learning set and the remaining part serves as a testing set.
1 n | y p − yˆ p |
E ( PI or EPI ) = ¦ y × 100(%) (10)
n p =1 p
Table 1 summarizes the results of the EoFNN architectures. This table includes the
tuning methodologies using dynamic search based GAs. ̺ h Gcase includes two auto-
tuning processes, namely, structure and parameter tuning processes. In first process,
structure of a given model is tuned, that is input variables of premise and conse-
quence, membership function, and order of polynomial are set. And then, parameters
of the identified structure are tuned in second process.G̺i case includes structure and
parameter tuning processes, however, two tuning processes is not done separately but
done at the same time. That is, input variables of premise and consequence, parame-
ters of membership function, and order of polynomial are tuned. ̺ h and ̺
i add the
condition of being restricted in the number of inputs of a model to ̺
h and ̺ i.
Premise Consequence
Case PI E_PI
Inputs MFs Para. Inputs Order
GAs
2Ý2Ý2 Min-Max GAs Gas 1.948 4.401
A
̺ (x1,x2,x3)
Tuned 2Ý2Ý2 GAs Tuned Tuned 0.423 0.990
GAs
B
̺ 2Ý2Ý2 GAs GAs Gas 0.241 0.357
(x1,x2,x3)
˺ 2 GAs 2Ý2 Min-Max GAs Gas 2.068 5.164
A2
̺ Tuned
2Ý2 GAs Tuned Tuned 0.232 1.013
(x2,x3)
GAs
B2
̺ ˺2 2Ý2 GAs GAs Gas 0.224 0.643
(x2,x3)
EoFNN designed byG̺ h method consists of 8(=23) fuzzy rules such as (11). ̺ i car-
ries out the tuning process of structure and parameters at the same time unlike ̺ hU
EoFNN designed by ̺ i method consists of 8(=23) fuzzy rules such as (12). The prem-
ise structures of the fuzzy rule are the same that of ̺
h U The output characteristic of the
architecture obtained by means of ̺ i is better than that of ̺
h U As shown in (11) and
(12), the consequence structure of fuzzy rules includes 22 parameters in (11) and 19
parameters in (12), respectively. Therefore, EoFNN generated by ̺ i Gis preferred as an
optimal architecture for the output performance and simplicity of a model. The pre-
ferred EoFNN results from ̺ i 2. This architecture consists of 2 inputs, x1 and x3, in
premise part, and 4 fuzzy rules such as (13). Let compare the EoFNN shown in (12)
with the EoFNN shown in (13). The generalization ability of (13) is less than that of
(12), however, EoFNN by (13) is constructed by 4 fuzzy rules with 2 inputs in the
premise and 18 parameters of the consequence part, namely this architecture is sim-
pler than EoFNN by (12).
R1 : If x2 is A21 and x3 is A31 then Cy1 = w01 + w11 x1 + w31 x3 + w51 x1 x3
R 2 : If x2 is A21 and x3 is A32 then Cy2 = w02 + w12 x1 + w22 x2 + w32 x3 + w42 x1 x2 + w52 x1 x3 + w62 x2 x3
(13)
R 3 : If x2 is A22 and x3 is A31 then Cy3 = w03 + w13 x1 + w23 x2 + w33 x3
R 4 : If x2 is A22 and x3 is A32 then Cy4 = w04 + w14 x1 + w34 x3
∏ ک ∏
x2
∏ ک ∏
¦ y^
∏ ک ∏
x3
∏ ک ∏
w 0i
¦
1
w 1i
x1
¦
w 2i
w 3i
¦ Cy i
w 4i
∏
w 5i
∏
w 6i
∏ ¦
5 Concluding Remarks
In this paper, new architectures and comprehensive design methodologies of Evolu-
tionally optimized Fuzzy Neural Networks (EoFNN) has discussed for effective
analysis and solution of nonlinear problem and complex systems. Also, the dynamic
search-based GAs has introduced to lead to rapidly optimal convergence over a lim-
ited region or a boundary condition. The proposed EoFNN is based on the Fuzzy
Neural Networks (FNN) with the extended structure of the fuzzy rules. The structure
and parameters of the proposed EoFNN are optimized by GAs. The proposed EoFNN
can be designed to adapt a characteristic of a given system, also, that has the faculty
of making a simple structure out of a complicated model for a nonlinear system. This
methodology can effectively reduce the number of parameters and improve the per-
formance of a model. The proposed EoFNN can be efficiently carried out both at the
structural as well as parametric level for overall optimization by utilizing the separate
(̺h P or consecutive O̺ i P tuning technology. From the results, ̺ i methodologies si-
multaneously tuning both structure and parameters, reduce parameters of consequence
part, and offer the output performance better than the ̺h . Namely, ̺i method is effec-
tive in identifying a model than ̺.
h
References
1. Pedrycz, W., Peters, J.F.: Computational Intelligence and Software Engineering. World
Scientific. Singapore (1998)
2. Chan, L.W., Fallside, F.: An Adaptive Training Algorithm for Back Propagation Net-
works. Computer Speech and Language. 2 (1987) 205-218
3. Kang, G., Sugeno, M.: Fuzzy Modeling. Transactions of the Society of Instrument and
Control Engineers. 23(6) (1987) 106-108
4. Park, M.Y., Choi, H.S.: Fuzzy Control System. Daeyoungsa, Korea (1990) 143-158
5. Goldberg, D.E.: Genetic Algorithms in search, Optimization & Machine Learning. Addi-
son-wesley. (1989)
6. Cordon, O. et al.: Ten years of genetic fuzzy systems: current framework and new trends.
Fuzzy Sets and Systems. 141(1) (2004) 5-31
7. Horikawa, S. I., Furuhashi, T., Uchigawa, Y.: On Fuzzy Modeling Using Fuzzy Neural
Networks with the Back Propagation Algorithm. IEEE Transactions on Neural Networks.
3(5) (1992) 801-806
8. Park, H.S., Oh, S.K.: Rule-based Fuzzy-Neural Networks Using the Identification Algo-
rithm of GA Hybrid Scheme. International Journal of Control, Automation, and Systems.
1(1) (2003) 101- 110
9. Park, H.S., Oh, S.K.: Multi-FNN Identification Based on HCM Clustering and Evolution-
ary Fuzzy Granulation. International Journal of Control, Automation and Systems. 1(2)
(2003) 194-202
10. Kondo, T.: Revised GMDH algorithm estimating degree of the complete polynomial.
Transactions of the Society of Instrument and Control Engineers. 22(9) (1986) 928-934
Multi-stage Detailed Placement Algorithm for
Large-Scale Mixed-Mode Layout Design*
1 Introduction
Quadratic placement (e.g. [17]-[21]) is widely accepted in modern VLSI physical
design. This kind of placements is carried out in two successive stages: global
placement and detailed placement. Global placement roughly spreads out cells over the
chip area by alternating global optimization (i.e. solving a quadratic programming
problem) and cell shifting steps. Which method is adopted in cell shifting step is the
departure point of various quadratic placements, but no matter it is partitioning strategy
(e.g. [20][21]) or force-directed strategy(e.g.[17][19]) or grid warping(e.g.[18]), cells
are inevitably overlapped after global placement and this problem is especially serious
with greater chip scale, since the granularity of grid structure in global placement can
not be too fine for complexity. So detailed placement solution – namely how to assign
cells to cell rows, eliminate overlaps and further improve placement quality – is
influential to both the final placement quality and the total running time for most
modern placement tools.
With developing into SOC era, mixed-mode placement comes up, where the chip is
divided into many discrete layout areas by macros which may be as large as 10,000
times of standard cells [5]. In this case most of existing detailed placement algorithm is
inapplicable and since small difference in detailed placement strategy can result in
remarkable movement of cells, detailed placement algorithm is receiving a great
challenge.
*
This work was supported partly by Hi-Tech Research and Development (863) Program of
China (2002AA1Z1460), and National Science Foundation of China (90407005 and 6076014).
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 896 – 905, 2005.
© Springer-Verlag Berlin Heidelberg 2005
Multi-stage Detailed Placement Algorithm for Large-Scale Mixed-Mode Layout Design 897
As other iterative methods, our new detailed placement algorithm is divided into two
main stages: initial placement and post optimization.
During initial placement, the input is the global placement result which is, in
mathematical sense, “optimal” with respect to squared wire-length. Thus when
898 L. Luo et al.
3 Initial Placement
This is the first stage of detailed placement which inherits the global placement result
and mainly completes two tasks: balancing local distribution and resolving overlaps.
In mixed-mode placement, rows are divided into zones by macros (namely a zone is
a maximal part of a row which is not intersected by macros) and the criterion of
balancing local distribution is to ensure that every zone can accommodate all cells
within it. Here, a hierarchical strategy is adopted in order to minimize complexity. In
detail, the chip is divided into m × n ҏequivalent square areas (usually as high as
several rows but narrower than the width of rows) called regions and zones are further
divided into sub-zones by region boundaries.
Thus, initial placement process is implemented through three phases: balancing the
regions – the higher hierarchy (Section 3.1), balancing the sub-zones of every region in
turn – the lower hierarchy (Section 3.2), merging sub-zones and resolving overlaps in
zones – restoring to flat strategy (Section 3.3).
The task of this phase is to ensure that every region can not only hold cells in it but also
have some free space in order to further balance sub-zones within the region. So define
a max density, and if the occupy ratio of one region is higher than that density it is
treated as overloaded. Region capacity equals to the total area of the region minus the
area occupied by macros.
In order to minimize cell movement from global optimal position, it’s natural to
solve a minimum-cost flow problem, where vertices correspond to the regions and
edges join neighbor regions (namely adjacent regions). The cost of an edge is defined
as the distance between the two region centers. Of course, the overloaded regions are
the sources, while regions with free capacity are possible sinks. Refer to [9] for details.
Multi-stage Detailed Placement Algorithm for Large-Scale Mixed-Mode Layout Design 899
The calculated flow is realized by actually moving cells from an overloaded region
to a neighbor region. Since there are much more cells in the so called region here than in
[9], we adopt a greedy but more efficient method [10] to choose cells to move between
regions instead of the dynamic programming method of [9].
The task of this phase is to eliminate capacity violation in sub-zones within every
region in turn. Basically the same framework as 3.1 is adopted. Note that since the
distribution of sub-zones is irregular caused by the existence of macros, two sub-zones
are called neighbors as long as they are subsequent in the same cell row or they are in
adjacent rows with overlap in x direction.
Unlike [22] which iterates the balancing procedure until no zone contains more
circuits than fit into it, balancing procedure here only operates once and a little overload
is still permissible. The reason is that test-suites of [22] is especially sparse (the total
size of the standard circuits divided by the total unblocked area of the chip averages
33.96%) and can be easily balanced in a few iterations, but that is not the case for most
of other circuits.
Since we can’t ensure the absolute capacity balance of sub-zones only by the above
network flow method, a greedy method [10] is adopted to further balance zones if
necessary. After it’s guaranteed that no zone is overloaded, begin to resolve cell
overlaps each zone subsequently. We adopt the algorithm of Optimal Single-Row
Placement (OSRP) [15] and make two points of improvement [10]. Besides,
experimental results show that if the free space of a zone is little, wire length reduction
of the above optimal approach is very limited compared with a simple implementation
and usually not worth the computation time. So for simplicity a valve-density is given.
If the zone density is lower than that valve, adopt the optimal approach, and otherwise
adopt a simple mapping method like [6]. This dynamic selection strategy contributes a
lot to the reduction of CPU time.
4 Post Optimization
This phase inherits initial legal placement and improves current placement iteratively
by local adjustment. Every iteration can be generalized as follows: for each cell, find
the corresponding optimal position scope and adjust cell position to approach the scope
if such adjustment can decrease total wire length. Iteration continues until no more
obvious improvement can be obtained. Since every new configuration is generated
according to the deterministic optimal scope, optimal placement can be achieved much
more quickly than other stochastic perturbation strategy. The method for determining
optimal position scope of every cell and the strategy of generating new configuration
according to this optimal position scope are respectively stated in Section4.1 and
Section4.2.
900 L. Luo et al.
Given a cell c, the problem is to find an optimal position scope for c; if c is placed
within this scope, total half perimeter wire length of the nets connected to c is
minimized. Now only consider the scope in x direction, and it’s the same to y.
As shown in Fig.1, suppose there are n nets connected to c. Then for each net, get its
leftmost and rightmost x coordinates excluding c. We totally record 2 × n positions in
a monotonously increasing array x[0]…x[2n-1]. Then the span from x[n-1] to x[n] is
the optimal position of c in x direction. Similar method is adopted in [12] for finding
optimal slots for cells. But here cells can move successively in x direction, so we turn to
the concept of derivative for proof.
Proof: To simplify notations, we use the coordinates of cell centers instead of pins.
Since the size of cell is small compared with the placement area, this approximation
will not cause much error. Denote the total wire length by f (x ) and the wire length of
a single net by f i ( x )(1 ≤ i ≤ n ) . Here x is the coordinate of cell c.
n
f ( x) = ¦ f i ( x) (1)
i =1
n
Define p ( x ) = ¦ p ( x) ,
i =1
i
which equals to the number of ri to the left of x
(including x).
n
Define q( x ) = ¦ q ( x ) , which equals to the number of li to the right of x, then
i =1
i
Fig.2 shows our algorithm for generating new placement configuration according to the
optimal position scope of a cell. The so called sinking zone in Fig.2 means one zone
which intersects with the optimal scope and has the largest free space.
Algorithm: newStateGenerate(c,z)
y
Input: cell c, original zone z where c lies
Output: new placement state
Step 1: determine optimal position scope R for c
Step 2: IF z intersects with R
move c to optimal position within z
ELSE Select a sinking zone t
IF t can accommodate c
c move c to optimal position in t
ELSE move c to optimal position in z
Step 3: calculate moving cost W
Step 4: IF W<0
eliminate overlaps caused by Step 2
x ELSE
Optimal position scope of cell c restore c to original position
Here ǻL is the changed length for those nets connected to the cell which is moved to
the optimal scope ( obviously ǻL is non-positive). ǻC is the changed length for those
nets connected to the cells shifted to avoid overlapping.
5 Experimental Results
Since the initial detailed placement of PAFLO is rather simple compared with ours,
to prove the efficiency of our post-optimization, we also list results of the method
combining our initial solution with PAFLO’s post-optimization in Table 3. It’s clear by
comparison that the suggested post-optimization algorithm in this paper has preferable
CPU time besides wire length improvement (average of 9.4%) compared with the
enumeration and swapping method of PAFLO.
For further showing the contribution of our new detailed placement to whole
placement quality, table 4 lists the overlap degree after global placement, which is
computed according to the equation given in [22] and wire-length after global
placement as well as wire-length after our new detailed placement. Averagely,
wire-length increases -9.79% in the process of MSIP, much better than the average of
0.82% in [22] (where average overlap after global placement is equal to 1.477).
Admittedly, the extent of wire-length increase and the final wire-length are also
related to the particular global placement method and in order to show the efficiency of
our algorithm accompanied with other global placement method, we also apply our
algorithm to the global placement result of FastPlace[17] on some benchmarks
downloaded from ISPD04[25]. These benchmarks are all standard cells (since
FastPlace[17] can not handle macro blocks) and we name them st_IbmXX to
distinguish with ibmXX benchmarks in mixed-mode format. Table 5 shows that
wire-length after MSIP averagely increases -1.09%, which is also much better than the
average of 0.82% in [22]. We also list the result of FastPlace( namely using the detailed
placement of FastPlace after global placement of FastPlace) given in [17] in the last
column of table , and comparison shows that when employing MSIP as detailed
placement, wire-length of FastPlace can be further improved.
Table 5. Wire-length result when combining MSIP with FastPlace Global Placement
6 Concluding Remarks
This paper proposes an effective multi-stage detailed placement algorithm combining a
good initial placement with a novel post optimization procedure in mixed-mode IC
design. The initial solution uses network-flow method to satisfy row capacity constraint
from a global view, and then refers to the thought of LPP to optimally resolve cell
overlaps. Moreover, owing to the divide-and-conquer strategy and dynamic selection
strategy the problem complexity is minimized. At the stage of post optimization, a
deterministic method is presented to create new configuration so that optimal
placement result can be achieved very fast. Promising experimental results are got by
the new algorithm.
A natural progression of this work is to study more in-deep relationship between the
initial detailed placement and the post optimization, so that placement quality can be
further improved.
References
1. A.B. Kahng, P.Tucker, A.Zelikovsky, “Optimization of linear placements for wirelength
minimization with free sites,” in Proc. Of the Asia and South Pacific Design Automation
Conference, 1999, pp.241-244.
2. A. E. Caldewll, A. B. Kahng and I. L. Markov, “Optimal partitioners and end-case placers
for standard-cell layout,” in Proc. ISPD’99, pp. 90-94, 1999.
3. A. Srinivasan, K. Chaudhary, and E. S. Kuh, "RITUAL: a performance driven placement
algorithm," in IEEE Trans. on Circuits and Systems. II, vol. 39, no. 11, pp. 825-840, Nov.
1992.
4. B. Yao, W. T. Hou, X. L. Hong and Y. C. Cai, “ FAME: A Fast Detailed Placement
Algorithm for Standard_Cell Layout Based on Mixed Mincut and Enumeration,” in Proc.
Int. Conf. On CAD/CG’, pp. 616-621, Shanghai, 1999.
5. Chin-Chinh Chang, Jason Cong and Xin Yuan, “Multi-level placement for large-scale
mixed-size IC designs”, Proc. Asia South Pacific Design Automation Conference, pp
325-330, January 2003.
6. Hanbin Zhou, Weimin Wu, Xianlong Hong, “ PAFLO: a fast standard-cell detailed
placement algorithm,” in Proceeding of ICCAS 2002, pp.1401-1405.
7. Hong Yu, Xianlong Hong, Yici Cai, “MMP: a novel placement algorithm for combined
macro block and standard cell layout design,” in Proceeding of ASP-DAC, pp.271-276,
2000.
8. http://vlsicad.eecs.umich.edu/BK/ISPD02bench.
Multi-stage Detailed Placement Algorithm for Large-Scale Mixed-Mode Layout Design 905
9. Jens Vygen, “Algorithms for detailed placement of standard cells,” in Proc. of the
Conference Design Automation and Test in Europe (DATE’ 1998), IEEE 1998, pp.321-324.
10. Lijuan Luo, Qiang Zhou, Xianlong Hong, Hanbin Zhou, “Effective algorithm for optimal
initial solution in mixed-mode detailed placement,” ASICON2003,pp.170-173.
11. Majid Sarrafzadeh, Maogang Wang, “NRG: global and detailed placement,” in Proc. Of
IEEE Intl. Conference on Computer Aided Design, pp. 532-537,IEEE Computer Society
Press, 1997.
12. S. Goto, “An Effective Algorithm for the Two-Dimensional Placement Problem in
Electrical Circuit Layout”, IEEE Trans. on Circuits Syst., vol. CAS-28, No. 1, January 1981.
13. S.N. Adya and I. L. Markov, “Consistent placement of macro-block using floorplanning and
standard-cell placement,” in Proc. Int. Symp. On Physical Design, pp. 12-17,2002
14. S.-W. Hur and J. Lillis, “Mongrel: hybrid techniques for standard cell placement”. In
International Conference on Computer-Aided Design, pages 165-170. IEEE, 2000.
15. U.Brenner, J.Vygen, “Faster optimal single-row placement with fixed ordering,” in
Proceedings of the conference on Design automation and test in Europe, pp.117-121, March
2000-March 2000, Paris,France.
16. Wu Weimin, Hong Xianlong, Cai Yici, Yang Changqi, Gu Jun, “A mixed mode placement
algorithm for combined design of macro blocks and standard cells,” in Proceeding of
ASICON 2001, 2001.
17. N. Viswanathan and C. CN Chu. Fastplace: Efficient analytical placement using cell
shifting, iterative local refinement and a hybrid net model. In ACM/IEEE International
Symposium on Physical Design, pages 26-33, Phoenix, AZ, 2004.
18. Zhong Xiu, James D. Ma, Suzanne M.Fowler, Rob A. Rutenbar, “ Large-Scale Placement
by Grid-Warping”, Proc. Design Automation Conference, pp 351-356, June 2004.
19. H.Eisenmann and F.M.Johannes,”Generic Global Placement and Floorplanning”,in Proc. of
the 35th Design Automation Conference,pp.269-274,1998
20. KLeinhans, J.M. Sigl, G., Johannes, F.M. and Antreich, K. “Gordian : VLSI Placement by
Quadratic Programming and Slicing Optimization”, IEEE Trans. CAD, 10,3(Mar.
1991),356-365.
21. Sigl,G., Doll, K., and Johannes, F.M. Analytical Placement : A Linear or a Quadratic
Objective Function? Design Automation Conf., 1991,427-432.
22. Ulrich Brenner, Anna Pauli, Jens Vygen,“Almost Optimum Placement Legalization by
Minimum Cost Flow and Dynamic Programming” in Proc. ISPD’04, pp. 2-8, 2004.
23. K. Doll, F.M. Johannes,K.J. Antreich,”Iterative placement improvement by network flow
methods,” Proc. IEEE Trans. CAD, vol.13,no.10 Oct. 1994.
24. Changqi Yang, Xianlong Hong, Hannah Honghua Yang, Qiang Zhou, Yici Cai, Yongqiang
Lu. Recursively Combine Floorplan and Q-Place in Mixed Mode Placement Based on
Circuit's Variety of Block Configuration. Proceeding of IEEE International Symposium on
Circuits and Systems, 2004 Vancouver, Canada: Vol. 5, 81-84.
25. http://www.public.iastate.edu/~nataraj/ISPD04_Bench.html
Adaptive Mesh Smoothing for Feature Preservation
1 Introduction
Even with high-fidelity scanners, noise is inevitable in the acquired data, and
therefore the data should be pre-processed to remove the noise for visualisation,
manufacturing, and many other digital geometry applications that rely on local
differential properties of the surface [1]. As most scanners are capable of producing
triangular meshes, and the connectivity information implicitly defines the surface
topology and serves as a means of fast access to the neighbouring samples, meshes,
instead of raw data points, are smoothed to remove the noise.
Typically, mesh smoothing methods are based on image filtering techniques.
Taubin [2] extended signal processing to mesh smoothing based on the definition of
Laplacian operator on meshes. Subsequently, geometric diffusion algorithm for
meshes was introduced by Desbrun et al [3], and locally adaptive Wiener filtering to
meshes was introduced by Peng et al [4]. Although these algorithms are efficient in
smoothing meshes, they are all isotropic, and therefore features of the mesh are
blurred while the mesh is smoothed.
Feature-preserving mesh smoothing methods are mostly inspired by anisotropic
diffusion [5, 6, 7, 8]. Clarenz et al [6] formulated a discrete anisotropic diffusion for
meshes. Taubin [8] proposed diffusion-type smoothing on the normal field, and the
mesh is smoothed via evolving the surface to match the smoothed normal. Although
these methods are superior to the isotropic methods in preserving the feature, they are
time consuming [9].
Recently, Fleishman et al. [10] adopted bilateral filtering, a non-linear filter
derived from Gaussian blur, to remove noise from the mesh (referred to as
DenoisePoint in this paper). This method is simple to implement, fast in computation
and effective in preserving the feature. However, the parameters of the filters are
interactively assigned and uniform for all vertices. In practice, it is not straightforward
to find good parameters for a given mesh. In addition, filters with uniform parameters
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 906 – 915, 2005.
© Springer-Verlag Berlin Heidelberg 2005
Adaptive Mesh Smoothing for Feature Preservation 907
are not suitable to smooth irregularly sampled meshes, such as the mesh obtained
from multiresolution processing [11]. A similar mesh smoothing algorithm (referred
to as RobustEstimation in this paper), also for regularly sampled meshes, was
presented by Jones et al [9].
The existing algorithms, except for RobustEstimation, smooth the mesh iteratively.
The number of iteration required for a particular mesh is determined by the user
according to his/her visual judgement, and over-smoothing is prevalent. Ohtake et al
[12] proposed to control the displacement distance in each of the iterations and place
no control on the accumulated smoothing error, thus the possibility of over-smoothing
is reduced, but still unavoidable.
In this paper, a simple mesh smoothing algorithm is developed based on bilateral
filtering. To improve the performance of bilateral filter in preserving sharp features of
the mesh, local first-order properties, i.e. normals of the mesh at the vertices, are
incorporated into the filter. We propose to determine particular filter parameters for
each vertex according to the local geometric information of the vertex to smooth the
irregularly sampled mesh. We also develop a simple scheme to control the
accumulated smoothing error to avoid over-smoothing the mesh.
The organisation of this paper is as follows. A brief introduction to bilateral filter is
given in Section 2. In Section 3, the smoothing algorithm is presented. Examples are
shown in Section 4 to demonstrate the effectiveness of the algorithm, followed by a
conclusion section at the end of the paper.
2 Bilateral Filtering
Bilateral filtering was developed by Smith and Brady [13] as an alternative to
anisotropic diffusion (see also Tomasi and Manduchi [14]) in image processing. It is a
non-linear filter where the output is a weighted average of the input. It starts with
standard Gaussian filtering with a spatial kernel f. However, the weight of a pixel
also depends on a function g in the intensity domain, which decreases the weight of
pixels with large intensity differences. The output of the bilateral filter for a pixel s is
then:
¦ f ( p − s) g ( I
1 (1)
Js = p
− I s )I p
k (s) p∈Ω
k (s) = ¦ f ( p − s) g ( I
p∈Ω
p
− Is )
In practice, they use a Gaussian for f in the spatial domain, and a Gaussian for g in
the intensity domain. Therefore, the value at a pixel s is influenced mainly by pixels
that are spatially close and have a similar intensity.
Despite its simplicity, this bilateral filtering successfully competes with other
image smoothing algorithm [13, 14, 15, 16]. Its effectiviness to meshes has also been
demonstrated by Fleishman et al [10] and Jones et al [9].
908 W. Li et al.
3 Mesh Smoothing
A triangular mesh is denoted as a pair (P,K), where P is a set of vertex positions
P = {p i ∈ R 3 | i = 0,..., n} , and K is a simplicial complex which contains all the
topological information, i.e. adjacency information. The complex K is a set of subset
of {0,…,n}. The subsets are called simplices and come in three types: the 0-simplices
{i} ∈ K are called vertices V, the 1-simplices (i, j ) ∈ K are called edges E , and the 2-
simplices (i, j , k ) ∈ K are called faces F . In the following sections, we also refer to
the vertex position as vertex. The correct meaning can always be deduced from the
context. The 1-ring neighbours of vertex i are the set N1(i) of vertex j connected to i
by an edge (i, j ) , that is N 1 (i ) = { j | (i, j ) ∈ E} , and the 2-ring neighbours of a vertex
i are set
N 2 (i ) = ∪ N 1 (k ) \ {i} (2)
k∈N1 ( i )
To preserve the feature of the mesh, the displacement distance of each vertex must
reflect the local frequency of the mesh at the vertex. Otherwise, if high frequencies
are considered as low ones or low frequencies are considered as high ones, the
filtering will be distorted and the result is either blurring of the feature or inadequate
smoothing. In Laplacian smoothing of mesh, this is called as frequency confusion [3].
Fleishman et al [10] proposed to use the heights of the incident vertices over the
tangent plane at a vertex to reflect the frequency information and preserve the
feature. In Fig. 1(a), points p 0 , p1 , p 2 , p 3 are 1-ring neighbours of p . Points p′0
and p ′2 are the projection of p 0 and p 2 on the tangent plane at vertex p , and
p ′0 − p 0 ≠ p ′2 − p 2 . Therefore, p 0 and p 2 will contribute differently to the
displacement of p and the feature is preserved during the smoothing process of
DenoisePoint. However, the heights of the incident vertices over the tangent plane of
Adaptive Mesh Smoothing for Feature Preservation 909
n n
p′0 p p′2 p′0
p p′2
n0 n2
p3 p2 p3
p0
p0
p2
p1
p1
(a) (b)
Fig. 1. Frequency confusion: (a) Fleishman et al’s solution, (b) counterexample of Fleishman et
al’s solution
¦ f (l ) g ( h ) , l
( − nˆ j 2 / 2σ v 2 )
where k (i ) = j j j
= p i − p j , h j = (p i − p j , n i ) , and v(nˆ j ) = e
j∈ N ( i )
with nˆ j = 1 − (n i , n j ) 2 .
Standard Gaussian filters with parameters σ f and σ g , respectively, are used for
f and g . Same as DenoisePoint, the spatial weight f depends on the distance
between the neighbours and the central vertex p i , and the height h j of the
neighbours over the tangent plane Ti to the mesh at p i is analogous with the grey
level of a pixel of an image. The improvement is that a new coefficient v(nˆ j ) is
introduced to incorporate the normal of the mesh to preserve the feature, especially
the sharp feature. For two incident vertices j 0 , j1 ∈ N (i ) and h j0 = h j1 , if
∠(ni , n j0 ) < ∠(ni , n j1 ) , then vertex j0 will contribute more to the displacement of
vertex i according to Eqn. (4). Thus, the features of the mesh are preserved.
Parameter σ v also influences the performance of the algorithm in preserving features,
i.e. smaller σ v will result in better feature-preserving performance.
910 W. Li et al.
¦l
(5)
σf = (n − 1)
2
j
j∈N1 ( i )
¦h
(6)
σg = (n − 1)
2
j
j∈N1 ( i )
As σ f and σ g are set according to the local shape information of each vertex, the
smoothing operation is adaptive to the vertex. For the irregularly sampled mesh, this
kind of adaptive method is better than the uniform methods used in DenoisePoint and
RobustEstimation, and will benefit the removal of noise and at the same time
preserving the feature.
Distance d i can be determined by bilateral filtering over the 1-ring or 2-ring
neighbours. The choice of 1-ring versus 2-ring neighbours depends to a large extent
on the sampling frequency of the mesh. If the sampling frequency is very high and the
mesh is very dense, 1-ring neighbours are not sufficient for the removing of noise,
and 2-ring neighbours are suggested.
The advantage of this scheme is that the accumulated error is bounded without
calculation of the distance between the smoothed mesh and the original mesh. This
will considerably reduce the complexity of the mesh smoothing operation for large-
scale datasets. This scheme also tends to constrain the shrinkage of the mesh.
The second example is an irregularly sampled ball-like mesh (see Fig. 3). The
maximum and minimum radiuses of the results are shown in Table 1. The variance of
the radius of our result is less than that of DenoisePoint, which means our result is
(a) (b)
(c) (d)
(e) (f)
Fig. 4. The cow model: (a) the original model, (b) the disturbed model, (c) and (d) the model
smoothed by DenoisePoint for one iteration and five iterations, respectively, and (e) and (f) the
model smoothed by our algorithm for one iteration and five iterations, respectively
Adaptive Mesh Smoothing for Feature Preservation 913
smoother than that of DenoisePoint. The visual effect of our algorithm is also
obviously better. Another advantage of our algorithm is that the shrinkage is less than
the result of DenoisePoint. This example also demonstrates that DenoisePoint
algorithm with uniform parameters does not work well in removing noise from
isotropic models if they are not regularly sampled.
The third example is a cow model (see Fig. 4). We disturb it with noise. Our
algorithm also performs better than DenoisePoint algorithm, especially in the areas of
noses, eyes and legs (refer to Fig. 4(c), (e)). As the smoothing error is bounded in our
algorithm, over-smoothing is prevented. So, after five smoothing iterations, the
features are still preserved as illustrated in Fig. 4(f). In comparison, the noses and
eyes are almost smoothed out in Fig. 4(d).
The above two examples shown in Fig. 3 and Fig. 4 are highly irregularly sampled
meshes. Our algorithm performs much better in terms of smoothing irregularly
samples meshes. This is because the parameters of the filter are adaptively set to each
vertex in our algorithm.
The fifth example is the head of a dragon model (see Fig. 5). The results of
DenoisePoint and our algorithm (refer to Fig. 5(b), (d)) are quite similar. As for the
result of RobustEstimation (refer to Fig. 5(c)), the beard around the lower jaw is
blurred, and the noise is not removed in several regions.
(a) (b)
(c) (d)
Fig. 5. The dragon head model: (a) the original model, (b) the model smoothed by
DenoisePoint, (c) the model smoothed by RobustEstimation, and (d) the model smoothed by
our algorithm
The mesh in the above example shown in Fig. 5 is very dense and nearly regularly
sampled. For this kind of meshes, we find, if there is no sharp features in the meshes,
914 W. Li et al.
the results of our algorithm are comparable with that of DenoisePoint if the filter
parameters of DenoisePoint are carefully selected.
Other than effectiviness, our algorithm also has advantage over the other two
algorithms in parameter setting. For our algorithm, only one parameter σ v is needed
to be set by the user while two parameters are needed for the other two algorithms. It
is also very easy to set parameter σ v in our algorithm. If there are sharp features in
the mesh and they are to be preserved, value smaller than 0.5 (according to the
sharpness of the features, sharper the features are, smaller the value should be) could
be assigned to parameter σ v . Otherwise, value greater than or equal to 0.5 could be
assigned to parameter σ v . As we have tested, for most meshes that have no sharp
features, parameter σ v can be set to be 0.5.
5 Conclusions
We have developed a feature-preserving mesh smoothing technique. We presented a
scheme to incorporate the local first-order properties of the mesh at the vertices into
the bilateral filter to preserve the sharp features. The incident vertices are projected to
the tangent plane of the central vertex, and the updated position of the central vertex
is computed as the modified bilateral filtering of the 1-ring or 2-ring neighbours
treated as height field. The parameters are automatically assigned particularly for each
vertex. We have demonstrated our algorithm on several models, and compared our
results with that results of DenoisePoint algorithm presented by Fleishman et al and
RobustEstimation algorithm presented by Jones et al. Our algorithm performs better
than the other two algorithms, especially in preserving sharp features and smoothing
irregularly sampled meshes.
References
1. Meyer M, Desbrun M, Schröder P, Barr AH. Discrete differential-geometry operators for
triangulated 2-manifolds. In: Proceeding of Visualization and Mathematics 2002.
2. Taubin G. A signal processing approach to fair surface design. Computer Graphcis 1995;
351-358.
3. Desbrun M, Meyer M, Schröder P, Barr AH. Implicit fairing of irregular meshes using
diffusion and curvature flow. Computer Graphics 1999, 317-324.
4. Peng J, Strela V, Zorin D. A simple algorithm for surface denoising. In: IEEE
Visualization 2001; 107-112.
5. Bajaj C, Xu G. Anisotropic diffusion on surfaces and functions on surfaces. ACM Trans.
Graph. 2003; 22(1): 4-32.
6. Clarenz U, Diewald U, Rumpf. M. Anisotropic geometric diffusion in surface Processing.
In: IEEE Visualization 2000, 397-405.
7. Tasdizen T, Whitaker R, Burchard P, Osher S. Geometric surface smoothing via
anisotropic diffusion of normals. In: IEEE Visualization 2002; 125-132.
8. Taubin G. Linear anisotropic mesh filtering. Tech. Rep. IBM Research Report RC 2213.
9. Jones TR, Durand F, Desbrun M. Non-iterative, feature-preserving mesh smoothing. ACM
Trans. Graph. 2003; 22(3): 943-949.
Adaptive Mesh Smoothing for Feature Preservation 915
10. Fleishman S, Drori I, Cohen-Or D. Bilateral mesh denoising. ACM Trans. Graph. 2003;
22(3): 950-953.
11. Guskov I, Sweldens W, Schröder P. Multiresolution signal processing for meshes.
Computer Graphics 1999; 325-334.
12. Ohtake Y, Belyaev A, Bogaevski I. Mesh regularization and adaptive smoothing.
Computer-Aided Design 2001; 33: 789-800.
13. Smith S, Brady J. SUSAN-a new approach to low level image processing. IJCV 1997; 23:
45-78.
14. Tomasi C, Manduchi R. Bilateral filtering for gray and color images. In: Proc. IEEE Int.
Conf. on Computer Vision 1998; 836-846.
15. Durand F, Dorsey J. Fast bilateral filtering for the display of high-dynamic-range images.
ACM Trans. Graph. 21, 3, 257-266.
16. Elad M. On the bilateral filter and ways to improve it. IEEE Trans. On Image Processing
2002; 11(10): 1141-1151.
17. Harris JW, Stocker H. Handbook of mathematics and computational science. New York:
Springer-Verlag, 1998.
A Fuzzy Grouping-Based Load Balancing for
1
Distributed Object Computing Systems*
Abstract. In the distributed object computing systems a set of server objects are
made available over the network for computations on behalf of remote clients.
In a typical distributed system setting the existing load balancing algorithms
usually do not consider the global system state. In this paper we propose a new
approach for improving the performance of distributed system using fuzzy
grouping-based load balancing. It utilizes membership graphs in terms of the
amount of CPU time and memory used for inferencing the service priority. Ex-
tensive computer simulation reveals that the proposed approach allows consis-
tently higher performance than other approaches in terms of response time and
throughput for various number of servers and tasks.
1 Introduction
Currently, a number of technologies exist for the development of distributed and par-
allel computing applications. Various commercial software products are employing
distributed object-based approaches such as CORBA (common object request broker
architecture), DCOM, and Java RMI (remote method invocation) [3]. In the distrib-
uted object-based approach, an application is constructed as a group of interacting
objects. These objects are distributed over multiple computers which interact with
each other through well predefined protocols. It is common that there exist multiple
objects (possibly on heterogeneous platforms) providing the same service in a distrib-
uted object computing system. This is mainly to achieve high availability and
scalability.
A tremendous increase of the interest has been witnessed for the past few years in
object-oriented client/server applications and, in general, in distributed object sys-
tems. Availability of powerful, low-cost computers and high-bandwidth communica-
tion links, together with recent developments in the area of object-oriented languages
and systems, boosted performance of object-oriented distributed object systems,
* This research was supported by the Ubiquitous Autonomic Computing and Network Project,
21st Century Frontier R&D Program in Korea and the Brain Korea 21 Project in 2004. Cor-
responding author: Hee Yong Youn.
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 916 – 925, 2005.
© Springer-Verlag Berlin Heidelberg 2005
A Fuzzy Grouping-Based Load Balancing for Distributed Object Computing Systems 917
where a set of server objects are made available over the network for computations on
behalf of remote clients. In a typical distributed system setting, requests for services
arrive at different servers in a random fashion. This causes a situation of non-uniform
load to occur across the system servers. Load imbalance is observed by the existence
of servers that are highly loaded while others are lightly loaded or even idle. Such
situations are harmful to the system performance in terms of mean response time of
services and resource utilization.
The requirements in load balancing and the environments are quite different from
those assumed with classical load balancing algorithms. Most importantly, the exist-
ing load balancing algorithms used in the distributed object computing systems are
usually based on simple techniques such as round-robin or random algorithm, which
may not give rise to an optimized performance because they do not consider the in-
formation of the global system state. An effective load balancing scheme requires
knowledge of the global system state (e.g., the workload distribution). However, in a
distributed computing system, the global state is swiftly and dynamically changing,
and it is very difficult to accurately model the system using an analytical approach.
This uncertainty in the global state has been a primary issue in the design of efficient
distributed computing systems. Increasing the frequency of information exchange
between the nodes is not necessarily a practical solution because messaging overheads
may adversely affect the efficiency of the system. Moreover, the overheads of load
balancing mechanisms can be highly detrimental to the performance of the system
under heavy system load condition.
Therefore, we propose a new distributed load balancing mechanism that character-
izes uncertainty in the decision making process and reduces messaging overheads.
The proposed mechanism employs a fuzzy grouping-based load balancing approach
to model the state variables that cause uncertainty in the global state. However, the
degree of uncertainty in the global state is not a tangible object because the actual
global state cannot be measured. To overcome this problem, we find the sources that
cause uncertainty in the global state. They include the system load condition (the
amount of CPU time and memory used) in individual servers. However, each server
cannot precisely measure the system load condition. To deal with these problems, we
use linguistic variables [7] that represent the system load condition, and the servers
are divided into groups to reduce message overheads [10]. Respective group has a
load monitor. The load monitor checks the amount of CPU time and memory used for
individual server in the group. Then we make fuzzy inference rules that map the
qualitative representation of the sources of uncertainty to that of the thresholds. Fi-
nally, we infer quantitative thresholds by an inference mechanism of fuzzy control.
There have been some attempts for load balancing using fuzzy-based approaches.
Thus, we implement and evaluate the proposed approach of fuzzy-grouping, and
compare it with an existing scheme. Extensive computer simulation reveals that the
proposed approach allows consistently higher performance than other approaches in
terms of response time and throughput for various number of servers and tasks.
The rest of the paper is organized as follows. Section 2 briefly reviews the fuzzy
set theory, load balancing, and grouping used in this paper. Section 3 proposes a new
fuzzy-grouping-based load balancing approach. Section 4 evaluates the performance
of the proposed approach. Finally, we conclude the paper in Section 5.
918 H.C. Ahn and H.Y. Youn
2 Related Work
This subsection briefly introduces the notion of fuzzy sets, linguistic variables, and
possibility distributions, and fuzzy if-then rules [7, 8].
• Fuzzy sets: sets with smooth grades
• Linguistic variables: variables whose values are both qualitatively and quantita-
tively described by a fuzzy set
• Possibility distributions: constraints on the value of a linguistic variable imposed
by assigning it a fuzzy set
• Fuzzy if-then rules: a knowledge representation scheme describing a functional
mapping or a logic formula that generalizes an implication in two-valued logic
A fuzzy set is defined as a class of objects with a continuum of grades of member-
ship. A linguistic variable represents a variable whose values are words or sentences
in a natural or artificial language. For example, if system load is regarded as a linguis-
tic variable, it may have the following terms as its values: light, moderate, and heavy.
If ‘light’ is interpreted as a load below about one task, ‘moderate’ as a load between
about 3 tasks and 5 tasks, and ‘heavy’ as a load above about 7 tasks, these terms may
be described as fuzzy sets as shown in Figure 1, where ȝ represents the grade of mem-
bership [6].
μ
1 .0
0 .8
Y-
0 .6
lig h t m o d e ra te heavy
0 .4
0 .2
1 2 3 4 5 6 7 8
S y s t e m lo a d
When a fuzzy set is assigned to a variable whose precise value is unknown, the
fuzzy set serves as a constraint on the degree of ease for the variable to take a certain
value. This degree of ease is called the ‘possibility degree’. Thus, a possibility distri-
bution of a variable is a function that maps elements in the variable’s universe of
discourse to their possibility degree. Finally, a fuzzy if-then rule is a scheme for rep-
resenting knowledge and association that is inexact and imprecise in nature.
The if-part of a fuzzy rule is called the rule’s antecedent, and the then-part of a rule
is called its consequent. Reasoning using fuzzy if-then rules has three major features.
First, it enables a rule that partially matches the input data to make an inference.
Second, it typically infers the possibility distribution of an output variable from the
A Fuzzy Grouping-Based Load Balancing for Distributed Object Computing Systems 919
possibility distribution of an input variable. Third, the system combines the inferred
conclusions from all the rules to form an overall conclusion. Also, many fuzzy rule-
based systems that need to produce a precise output use a defuzzification process to
convert the inferred possibility distribution of an output variable to a representative
precise value. Therefore, most applications of fuzzy logic use fuzzy if-then rules.
Typical load balancing approaches for distributed object systems are round-robin,
random, bid [1], and phase [2]. Recently, new load balancing schemes adopt java-
space, request redirection, or fuzzy logic-based request redirection approach [3]. Re-
quest redirection approach is based on dynamic redirection of client requests from
overloaded machines to underloaded machines. Redirection begins when the load of
the overloaded machine exceeds a certain threshold value. The request redirection
algorithm can be divided into two parts: (1) static scheduling based on round-robin
ordering, and (2) request redirection. In round-robin ordering, the global scheduler
schedules client requests to remote server objects in a fixed order. The global sched-
uler does not take server states into account when distributing the requests. On the
other hand, request redirection is a common practice in balancing the load of a Web
server system in which HTTP requests are redirected from overloaded servers to un-
derloaded servers.
The basic components of the system include a global scheduler, a set of local sched-
ulers and load monitors, and a group of server and client objects. The global scheduler
communicates with the local schedulers residing in the server machines. Based on the
current server state informed by a load monitor, a local scheduler decides whether to
execute a remote call locally or redirect it to another server. The load monitor counts the
number of concurrent calls being sent to the server object. It then compares the count
with the threshold value. If the load condition changes, it sends a multicast message to
notify other local schedulers. Each local scheduler starts a specific thread to listen to the
load messages arriving at the multicast address from other servers.
In fuzzy logic-based request redirection approach, a fuzzy logic controller is incor-
porated into the request redirection system as a core component. The role of the fuzzy
logic controller is to manage the decisions on the request redirection of each server.
Instead of manually setting the threshold value for each server, the fuzzy logic
mechanism allows the servers to make a decision based on the server ranking as-
signed by the fuzzy logic controller [3]. Thus, the higher the service rank, the more
the server redirects the request. In other words, a server with lower service rank is
likely to receive extra requests. Each server refers to its own rank and other servers’
ranks to decide where it should redirect a remote call. As the name implies, fuzzy
logic controller has to make use of fuzzy information to perform logic control. Sev-
eral linguistic variables, server load, mean deviation of server load, and server rank
are used in the fuzzy logic algorithm.
In order to reduce the communication overhead, nodes at close distance may form a
group [9]. For instance, all or some of the nodes in the same local area network
920 H.C. Ahn and H.Y. Youn
(LAN) may form a group. Nodes may join or leave their groups dynamically. A node
may join a group by sending a message to its group’s DR (designated representative).
The DR communicates with the DRs in other peer groups. For a node leaving a
group, it has to move its entire load to some other nodes. This task is implemented as
follows:
1) The leaving node sends a “LEAVE” message to its DR about its leave.
2) The DR finds the nodes suitable for load transfer.
3) The leaving node transfers its loads in its queue without accepting loads any-
more. If its loads are not completely transferred after a certain time period, then
the remaining jobs in the queue are dropped. The time period is a variable and,
for instance, set to at least twice the maximum allowance of waiting time for
making a load transfer request.
Fuzzy logic control-based load balancer attempts to capture intuition in the form of
IF-THEN rules, and conclusions are drawn from the rules [4]. System parameters
based on both intuitive and expert knowledge can be modeled as linguistic variables
and their corresponding membership functions can be designed. Thus, nonlinear
system with great complexity and uncertainty can be effectively controlled by fuzzy
rules without complex, uncertain, and error-prone mathematical models [4]. The
proposed fuzzy load balancer uses an algorithm for efficient load balancing. This
algorithm of fuzzy rule-based inference consists of three basic steps and an addi-
tional optional step.
1) Fuzzy Matching: Calculate the degree to which the input data match the condi-
tion of the fuzzy rules.
2) Inference: Derive the rule’s conclusion based on the degree of matching.
3) Combination: Combine the conclusion inferred by all fuzzy rules into a final
conclusion.
4) (Optional) Defuzzification: For applications that need a crisp output (e.g., in
control systems), an additional step is used to convert a fuzzy conclusion into a
crisp one.
We propose a membership graph where the amount of CPU time and memory used
in individual servers are input data and service priority is output data as shown in
Figure 2(a). The definition of fuzzy set based on the amount of CPU time used is as
follows: {low (L), less than moderate (LMO), moderate (MO), high (H), very high
(VH)}. The fuzzy set definition based on the amount of memory used is as follows:
A Fuzzy Grouping-Based Load Balancing for Distributed Object Computing Systems 921
{small (s), less than medium (LME), medium (ME), large (L)}. Figure 2(b) shows the
membership graph for the amount of memory used. We measure the amount of CPU
time and memory used using the method, main_cpu() and GlobalMemoryStatus(),
respectively, implemented by C++ language. The values are measured in each server.
We use service priority (SP) to classify services into seven categories as shown in
Figure 2(c). The fuzzy set of SP is as follows: {very low (VL), low (L), less than
medium (LME), medium (ME), more than medium (MME), high (H), very high
(VH)}. The load balancer sends the request from a client to a server of lower service
priority. A set of inference rules is defined as shown in Figure 2(d) after defining the
fuzzy variables above.
Fig. 2. The membership graphs and fuzzy rules for service priority
By applying the fuzzy inference rules in Figure 2(d), a decision can be made based
on both antecedents. For example, if the amount of CPU time used is LMO and the
amount of memory used is S, SP is VL. Having these fuzzy inference rules and mem-
bership graphs, the fuzzification and defuzzification process can be carried out as
follows. First, the input values of the amount of CPU time and memory used are
mapped to their respective membership degree values on their membership graphs.
The degree values are compared and the minimum of the two is then projected onto
the membership function of their consequence graph. The output graph, usually in the
shape of a trapezium [4], represents the output of one inference rule. After the output
graph is generated, defuzzification of the fuzzy output into a crisp or numeric value
can be carried out. This defuzzification is a mean of maximum (MOM) and center of
area (COA) [4]. We use the COA to defuzzify the output.
922 H.C. Ahn and H.Y. Youn
For load balancing that requires information on the actual system state, load monitor
is used. The job of load monitor is to collect load information and pass it to the point
where it is needed for load balancing. Fuzzy load balancer depends on the information
delivered by load monitor.
As shown in Figure 3, the proposed fuzzy grouping-based load balancing approach
includes two servers and a load monitor in each group. The load monitor measures
load information (the amount of CPU time and memory used) of two servers every
two seconds and sends it to the fuzzy load balancer in the form of an asynchronous
distributed event. The fuzzy load balancer then makes a decision whether it forwards
the client’s request to an appropriate server or ignores the load information. Note that,
instead of adopting polling policy in which the load balancer periodically queries the
server load condition from the load monitor, pushing policy is employed in which the
load monitor pushes measured load value to the fuzzy load balancer.
G ro u p 1 G ro u p 3
S e rve r S e rv e r S e rv e r S e rve r
L o a d m o n ito r 1 L o a d m o n ito r 3
G lo b a l Fuzzy Load
S c h e d u le r B a la n c e r
G ro u p 2
S e rve r S e rve r
L o a d m o n ito r 2
C lie n t1 C lie n t2
Fig. 3. The structure of the proposed fuzzy grouping-based load balancing system
3.3 Grouping
The number of groups = The number of active servers (6) / size of a group (2)
= Rank number + 3
Grouping: [{1, 4}, {2, 5}, {3, 6}]
A Fuzzy Grouping-Based Load Balancing for Distributed Object Computing Systems 923
1 4
Group1
1 2 3 4 5 6 3 6
Rank Number =
Group3
2 5
Group2
The relationship between the components of the proposed fuzzy load balancing is
shown in Figure 5. It can be briefly summarized as follows:
1) A client sends a request to the service.
2) The load monitor sends the information on the amount of CPU time and mem-
ory used by the fuzzy load balancer for fuzzy inference.
3) When new information of the amount on CPU time and memory used arrives,
the fuzzy load balancer deduces the service priority of it.
4) The fuzzy load balancer sends it to the global scheduler.
5) The global scheduler sends a request to the server according to the service pri-
ority.
2 : th e a m o u n t
of used
1 : s e n d _ r e q u e s t() c p u a n d m e m o r y ()
3 : fu z z y
4 : s e n d _ s e r v ic e
in fe re n c e ()
p r io r ity ()
5 : s e n d _ r e q u e s t()
4 Performance Evaluation
We compare the performance of round-robin, fuzzy, and the proposed fuzzy group-
based load balancing scheme by measuring the response time and throughput through
computer simulation. The task arrival pattern at each server is modeled as a Poisson
distribution with Ȝ = 6, and it is assumed that all servers have the same arrival rate.
Also, the service time for each request and the amount of CPU time and memory used
are uniformly distributed. We have performed an extensive simulation with different
combinations of numbers of servers and tasks, which vary form 2 to 12 and 100 to
3000, respectively.
Fig. 6. Average response time with varying number of servers and tasks
The average response times of the three load balancing approaches as the number
of servers and tasks vary are shown in Figure 6. It illustrates that the proposed fuzzy
group-based approach consistently outperforms the other approaches for different
number of servers and tasks. Figure 7 shows how the throughput varies for each load
balancing approach. In the simulation the throughput with varying number of servers
is for 1500 tasks in each server, while the throughput with varying number of tasks is
A Fuzzy Grouping-Based Load Balancing for Distributed Object Computing Systems 925
for 6 servers in each task, respectively. As can be seen from Figure 7, throughput
increases as the number of servers increases. On the other hand, throughput decreases
as the number of tasks increases. Again, throughput of the proposed fuzzy group-
based load balancing is the highest among the three. This is because it assigns more
tasks to the servers with relatively low loads using the proposed grouping concept.
The simulation reveals that uncertainty in global state should be reflected in the de-
sign of load balancing mechanisms for better performance.
5 Conclusion
In this paper we have proposed a load balancing approach which effectively over-
comes the load imbalance problem in the distributed object systems using fuzzy
grouping. This approach dynamically selects a set of participating servers and distrib-
utes the load based on the total load of the tasks arriving in a given time interval. We
have compared three typical load balancing approaches; round-robin, fuzzy-based,
and the proposed fuzzy grouping-based load balancing approach. The experimental
results show that the proposed approach is more efficient and flexible than the other
two approaches in terms of response time and throughput for various number of serv-
ers and tasks. Future work will be adaptation of the proposed approach to an agent
platform and CORBA.
References
[1] R. Smith: The contract net protocol: High-level communication and control in a distrib-
uted problem solver. IEEE Trans. Computer. Vol. 29. (1980) 1104-1113
[2] T.L. Casavant, J.G. Kuhl: Effects of response and stability on scheduling in distributed
computing systems. IEEE Trans. Software Eng, Vol. 14. (1988) 1578-1587
[3] L.-S. Cheung,Y.-K. Kwok.: On Load Balancing Approaches for Distributed Object Com-
puting Systems. The Journal of Supercomputing. Vol. 27. (2004) 149-175
[4] B. Kosko, Neural Networks and Fuzzy Systems: A Dynamical Systems Approach to Ma-
chine Intelligence. Prentice Hall, New Jersey (1992)
[5] The Standard Performance Evaluation Corporation, http://www.spec.org/
[6] P. Chulhye, G. Kuhl: A fuzzy-based distributed load balancing algorithm for large dis-
tributed systems. Proceedings of the 2nd International Symposium on Autonomous De-
centralized Systems (1995) 266–273
[7] L.A. Zadeh: Fuzzy logic. IEEE Computer (1988) 83-93
[8] El-Abd, Aly. E: Load Balancing in Distributed Computing Systems Using Fuzzy Expert
Systems. Proceedings of the International conference (2002) 141-144
[9] Yang Jia, Jizhou sun, Zunce Wei: Load balance in a new group communication system for
the WAN. Electrical and Computer Engineering, IEEE CCECE 2003 (2003) 931-934
[10] Zhuang. Y. C, Ce-Kuen Shieh, Tyng-Yue Liang: A group-based load balance scheme for
software distributed shared memory systems. First IEEE/ACM International Symposium
(2001) 371-378
DSP-Based ADI-PML Formulations
for Truncating Linear Debye and Lorentz
Dispersive FDTD Domains
Omar Ramadan
1 Introduction
In the last decade, the explicit Finite Difference Time Domain (FDTD) method
has been widely used for solving Maxwell’s curl equations [1]. This method,
however, is conditionally stable, i.e., the maximum time step is limited by the
Courant-Friedrichs-Lewy (CFL) stability condition. Since the CFL is determined
by the smallest cell size in the domain, the FDTD analysis of fine geometric
structures requires large number of time iterations. Hence, the elimination of
the CFL stability limit is one of the latest challenges in the FDTD research.
Recently, the unconditional stable Alternating Direction Implicit FDTD (ADI-
FDTD) method [2], has been used as an alternative tool to the FDTD algorithm
for solving electromagnetic problems. This method removes the CFL stability
condition required by the conventional FDTD scheme.
To model open region problem efficiently using the FDTD or the ADI-FDTD
methods, suitable absorbing boundary conditions (ABCs) are needed to truncate
the computational domain. Berengers Perfectly Matched Layer (PML) [3] has
been shown to be one of the most efficient FDTD ABCs. In [4], the convolutional
theorem has been incorporated with the ADI-FDTD formulations of the PML to
truncate lossless FDTD domains. Very recently, different unconditionally stable
PML formulations, based on the stretched coordinate PML [5] or the anisotropic
PML [6], have been introduced for truncating lossy and dispersive FDTD do-
mains [7], [8]. In these formulations, the Auxiliary Differential Equation (ADE)
technique has been used to model linear Debye dispersive media.
In this paper, the Digital Signal Processing (DSP) algorithms developed for
digital filters [9] are combined with the ADI-FDTD scheme to truncate linear
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 926–935, 2005.
c Springer-Verlag Berlin Heidelberg 2005
DSP-Based ADI-PML Formulations 927
Debye and Lorentz FDTD domains. The proposed method has the advantage
of simplicity as it allows direct time discretizations of Maxwell’s equations in
the PML region. Numerical examples are included to show the validity of the
proposed formulations.
The paper is organized as follows. In section 2, the formulations of the pro-
posed algorithm is presented. Section 3 includes the results of several numerical
tests which show the effectiveness of the proposed method. Finally, a summary
and conclusions are included in section 4.
2 Formulation
Using the PML formulations of [5], the field equations for an electromagnetic
wave propagating in a linear and electrically dispersive one-dimensional domain
can be written as
jωB .z = c 1 ∂ H
εr (ω)E .y (1)
Sx ∂x
.y = c 1 ∂ .
jω H Ez (2)
Sx ∂x
where E .z , and H. y are the Fourier transform of the corresponding fields, εBr (ω)
is the complex relative permittivity of the medium, c is the speed of light, and
Sx is the PML stretched coordinate variable [5] defined as
σx
Sx = 1 + (3)
jωεo
where σx is the PML conductivity profile along the x−direction. For a lossy and
linear dispersive media, εBr (ω) can be expressed as
σ
εBr (ω) = ε∞ + + χ(ω) (4)
jωεo
where ε∞ is the infinite frequency permittivity, σ is the conductivity, and χ(ω) is
the electric susceptibility of the medium. Substituting (4) into (1), the following
can be obtained
jωε∞ E .z + σ E
.z + jω Q .z = c 1 ∂ H .y (5)
εo Sx ∂x
. z is given by the relation
where Q
. z = χ(ω)E
Q .z (6)
Using the relation jω → ∂/∂t, (5) can be written in the time domain as
∂ ∂ σ ∂
ε∞ Ez + Qz + Ez = cSx (t) ∗ Hy (7)
∂t ∂t εo ∂x
where Sx (t) is the inverse Fourier transform of Sx−1 and * represents the con-
volution operation. The convolutional term on the right hand side of (7) can
928 O. Ramadan
be computed efficiently by using the Z-transform [10]. Hence, using the Bilinear
transformation relation [9]:
4 1 − Z −1/2
jω ⇒ (8)
Δt 1 + Z −1/2
b0 + b1 Z −1/2 B1
Sx (Z) = −1/2
= B0 + (9)
1 + a1 Z 1 + a1 Z −1/2
1−p 1 1
a1 = − , b0 = , and b1 = − (10)
1+p 1+p 1+p
with
Δt σx
p= (11)
4εo
It must be noted that the superscript of Z in (8) is based on a half-step to
match the ADI updating scheme which based on splitting each time step into
two sub-steps, i.e., n → n + 1/2 → n + 1 [2]. Taking the Z-transform of the right
hand side of (7), the following can be obtained
∂ ∂ ∂
Z cSx (t) ∗ Hy = cSx (Z) Hy = cB0 Hy + fzx (12)
∂x ∂x ∂x
cB1 ∂ ∂
fzx = Hy = −a1 Z −1/2 fzx + cB1 Hy (13)
1 + a1 Z −1/2 ∂x ∂x
Transforming (13) to the discrete time domain using the Z-transform relation
Z −m G(Z) → Gn−m [9], discretizing the space derivative of Hy and discretizing
the left hand side of (7) at the first ADI-FDTD sub-iteration at the n + 1/2
time step by using the conventional FDTD algorithm [1], the following can be
obtained:
Qn+1/2
zi + p+ Ezn+1/2
i
= Qnzi + p− Ezni + ζB0i (Hyn+1/2
i+1/2
− Hyn+1/2
i−1/2
n+1/2
) + fzxi
(14)
where Δ is the space cell size, ζ = cΔt /2Δ, p± = ε∞ ± σΔt /4ε0 , and fzxi
n+1/2
is
given by
n+1/2
fzxi
= −a1i fzx
n
i
+ ζB1i Hyn+1/2
i+1/2
− Hyn+1/2
i−1/2
(15)
In the same manner, (2) can be written in the first ADI sub-iteration as
Hyn+1/2
i+1/2
= H n
yi+1/2 + ζB0 i+1/2
E n+1/2
zi+1 − E n+1/2
zi
n+1/2
+ gzxi+1/2
(16)
DSP-Based ADI-PML Formulations 929
n+1/2
where gzxi+1/2 is given by
n+1/2
gzxi+1/2
= −a1 g n
i+1/2 zxi+1/2
+ ζB1 i+1/2
E n+1/2
zi+1 − E n+1/2
zi (17)
where d.m and e.m , (m = 0, 1, · · ·, N ), are the coefficients of the rational polyno-
mials and N is the maximum order of the dispersive media. Using (8), (18) can
be written in the Z-domain as
%N
dm Z (1−m)/2
χ(Z) = %m=0 N
(19)
m=0 em Z
(1−m)/2
and
p− 1 1
C0 = , C1 = , and C2 = − (23)
q q qe0
with
d0
q = p+ + (24)
e0
n+1/2
It is clear from (21) that Ezi can not be updated directly as it depends on
n+1/2
Hyi+1/2 . Substituting (15), (16) and (17) into (21), the following can be obtained
− A− n+1/2
i Ezi−1 + Ai Ezn+1/2
i
− A+ n+1/2
i Ezi+1 = C0 Ezni − a1i C1 fzx
n
i
+ ri ζC1
× Hyni+1/2 − Hyni−1/2 − a1i+1/2 gyxn
i+1/2
− a1 g n
i−1/2 yxi−1/2
where
ri = B0i + B1i , Λ = ζ 2 C1 ri , A±
i
= Λri±1/2 , and Ai = 1 + A+
i
+ A−
i
(26)
It should be pointed out that (25) forms a tri-diagonal matrix which can be
n+1/2 n+1/2 n+1/2 n+1/2 n+1/2
solved easily [2]. After computing Ez , Qz , gzx , Hy , and fzx
can be updated explicitly from (20), (17), (16) and (15), respectively. Similar for-
mulations can be obtained in the second ADI sub-iteration at the n+1 time step.
Furthermore, the above formulations can be applied in the non-PML regions by
setting only the coefficients a1 , b0 , and b1 defined in (10) to unity. Finally, it
must be noted that the coefficients used in (19) depend on the susceptibility of
the computational domain. In this paper, the susceptibility of the medium is
assumed to have a first and second order frequency dispersion, i.e., Debye and
Lorentz type media.
d0 = Δεp, d1 = Δεp,
e0 = 1 + p, and e1 = − (1 − p) (28)
with
Δt
p= (29)
4t0
Δεω02
χ(ω) = (30)
ω02 + j2δω − ω 2
where ω0 is the resonance radial frequency, and δ is the damping constant. In
this case, the coefficients of (19) can be written
with
ω0 Δt δΔt
p= , and q = (32)
4 4
DSP-Based ADI-PML Formulations 931
3 Simulation Study
To validate the proposed formulations, two numerical tests are included. In the
first test, a z−polarized Gaussian pulse was used to excite a one-dimensional
isotropic, homogeneous, lossy and electrically dispersive Debye medium which
have the following parameters: ε∞ = 50, εs = 160, t0 = 5.88ns, and σ =
0.62S/m. This model was used to approximate the muscle tissue in the fre-
quency range 100-915MHz. The excitation pulse was located at the center of the
computational domain. The computational domain extends in the x−direction
with the size of 100Δ, where Δ = 01.mm, and terminated by eight additional
PML layers with the parameters of PML[8, 2, 0.001%], as defined in [3]. In this
test, the simulation was carried out for the first 32768 time steps.
Figure 1 shows the time response of the Ez field recorded 20 cells away from
the excitation point as obtained with the proposed formulations for different val-
ues of CFL number (CFLN) defined as CFLN=Δt/ΔtF DT D
max where ΔtF DT D
max is
the maximum stability limit of the conventional FDTD algorithm. For the sake
1
FDTD (CFLN=1.0)
ADI−FDTD (CFLN=1.0)
ADI−FDTD (CFLN=2.0)
ADI−FDTD (CFLN=4.0)
ADI−FDTD (CFLN=8.0)
0.5
electric field, |V/m|
−0.5
−1
0 5 10 15
time, ns
0
FDTD (CFLN=1.0)
ADI−FDTD (CFLN=1.0)
ADI−FDTD (CFLN=2.0)
ADI−FDTD (CFLN=4.0)
ADI−FDTD (CFLN=8.0)
relative reflection error, dB
−50
−100
−150
−200
0 10 20 30 40 50
time, ns
Fig. 2. Relative reflection error as a function of time as observed one space cell from
the PML/ FDTD computational domain interface for Debye dispersive case
0 1
FDTD (CFLN=1.0)
ADI−FDTD (CFLN=8.0)
−40
0.5
−80
−120 0
0 0.2 0.4 0.6 0.8 1
frequency, GHz
Fig. 3. Spectrum of the reflection coefficient magnitude as observed one space cell from
the PML/ FDTD computational domain interface for Debye dispersive case
source used in this test. The reflection coefficient was computed one cell away
from the PML/computational domain interface as
F E R (t) − E T (t)
z z
RdB (f ) = 20 log10 (34)
F {EzR (t)}
where F {.} is the Fourier transform operation. As can be seen from Fig. 3,
the reflection coefficient of the proposed scheme increases with the CFLN value.
From the previous results, it can be noted that the time step of the proposed
formulations is not restricted by the CFL stability limit, but by the required
accuracy level.
In the second test, the FDTD domain was assumed to be a linear Lorentz
media with parameters: ε∞ = 1, εs = 2.25, ω0 = 4 × 1016 rad/s, and δ = 0.28 ×
1016 s−1 . The space cell size was chosen as Δ = 1 × 10−10 and the computational
domain was terminated by eight additional PML layers with the parameters of
PML[8, 2, 0.001%]. Figure 4 shows the frequency spectrum of both the PML
reflection coefficient and the excitation source used in this test. Similar to the
results reported a single above, the reflection coefficient of the proposed scheme
increases with the CFLN value. Also, it must be noted there is a sharp increase in
the reflection error near the resonance frequency. However, this is not important
because this frequency range is strongly attenuated for the chosen dielectric
parameters.
934 O. Ramadan
0 1
FDTD (CFLN=1.0)
ADI−FDTD (CFLN=1.0)
ADI−FDTD (CFLN=8.0)
−50
0.5
−100
−150 0
0 5 10 15 20 25 30 35 40
frequency, (x1000)THz
Fig. 4. Spectrum of the reflection coefficient magnitude as observed one space cell from
the PML/ FDTD computational domain interface for Lorentz dispersive case
4 Conclusion
In this paper, the DSP algorithms developed for digital filters are incorporated
with the ADI-PML formulations to truncate linear Debye and Lorentz dispersive
FDTD domains. Numerical examples carried out in one dimension show that
the formulations are unconditionally stable, i.e., the time step can be increased
beyond the stability limit. This will allow decreasing the simulation time, but
at the cost of the accuracy due to the increase of the numerical dispersion error
of the ADI-FDTD method. Hence, the time step of the proposed formulations
is not restricted by the CFL stability limit, but by the required accuracy level.
In a similar manner, the proposed formulations can be extended to the two and
three dimensional cases.
References
1. Taflove, A.: Computational electrodynamics: The Finite-Difference Time-Domain
Method. Artech House, Boston, London (1995).
2. Namiki, T.: A new FDTD algorithm based on alternating-direction implicit. IEEE
Transactions on Microwave Theory and Techniques 47 (1999) 2003-2007
3. Berenger, J.-P.: A perfectly matched layer for the absorption of electromagnetic
waves. Journal of Computational Physics 114 (1994) 185-200
4. Gedney, S.D., Liu, G., Roden, J.A., and Zhu, A.: Perfectly matched layer media
with CFS for an unconditionally stable ADI-FDTD method. IEEE Transactions
on Antennas and Propagation 49 (2001) 1554-1559
DSP-Based ADI-PML Formulations 935
5. Chew W.C., and Weedon W.H.: A 3-D perfectly matched medium from modified
Maxwell’s equations with stretched coordinates. Microwave and Optical Technol-
ogy Letters 7 (1994) 599-604
6. Gedney S.D.: An anisotropic perfectly matched layer absorbing medium for the
truncation of FDTD lattices. IEEE Transactions on Antennas and Propagation 44
(1996) 1630-1639
7. Ramadan, O.: Unconditionally stable ADI-FDTD implementation of PML for fre-
quency dispersive debye media. Electronics Letters 40 (2004) 230-232
8. Ramadan, O.: Unconditionally stable ADI-FDTD formulations of the APML for
frequency-dependent media. IEEE Microwave and Wireless Components Letters
14 (2004) 537-539
9. Proakis, J.G., and Manolakis, D.G.: Digital signal processing: principles, algo-
rithms and applications. Prentice Hall, International Editions, third edition (1995)
10. Ramadan, O., Oztoprak, A.Y.: DSP techniques for implementation of perfectly
matched layer for truncating FDTD domains. Electronics Letters 38, (2002) 211-
212
Mobile Agent Based Adaptive Scheduling
Mechanism in Peer to Peer Grid Computing
1 Introduction
A grid computing system is a platform that provides the access to various
computing resources owned by institutions by making virtual organization[5].
On the other hand, a peer to peer grid computing system is a platform that
achieves a high throughput computing by harvesting a number of idle desktop
computers owned by individuals(which is called volunteers) on the edge of In-
ternet using peer to peer computing technologies [1, 2, 3, 4, 5, 6, 7, 8]. The peer
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 936–947, 2005.
c Springer-Verlag Berlin Heidelberg 2005
MAASM in Peer to Peer Grid Computing 937
the overhead. That is, the scheduling and fault tolerance mechanisms are imple-
mented as a mobile agent. The mobile agents are distributed to volunteer groups
which are constructed by volunteer properties such as volunteering service time
and volunteer availability. Then, they process the scheduling and fault tolerance
procedures in a distributed way without the direct control of their volunteer
server. We implemented the MAASM in Korea@Home [13] and ODDUGI mo-
bile agent system [14]. The MAASM reduces the overhead of volunteer server by
using mobile agents in a distributed way. In addition, it can tolerate the volun-
teer autonomy failures which frequently occur in a peer to peer grid computing
environment. Consequently, it guarantees reliable and continuous executions in
spite of failures, so it decreases total execution time.
The rest of the paper is structured as follows. Section 2 describes why mobile
agent is used. Section 3 describes MAASM in details. Section 4 presents the
implementation issues and experimental results. Section 5 reviews related work
which has been studied in this area. Section 6 concludes the paper.
Failure Model. We assume that volunteers suffer from crash, link, and volun-
teer autonomy failures. Especially, volunteer autonomy failures occur much more
often than crash and link failures in a peer to peer grid computing environment.
The peer to peer grid computing system respects the autonomy of volunteers.
In other words, volunteers can leave arbitrarily in the middle of public execu-
tion, and volunteers are allowed to execute private execution at any time while
interrupting the public execution. The former is referred to as volunteer volatil-
ity failure(Φ), the latter volunteer interference failure(Ψ ). We call these failures
as volunteer autonomy failures (Λ) because the public execution is stopped and
suspended. Φ is related to the completion of public execution. Ψ is related to the
continuity of public execution.
Φ and Ψ are different from crash failure in that the operating system is alive
in the presence of Φ and Ψ , while the system shuts down in the presence of crash
failure [11, 12]. Φ is different from crash failure in that Φ occurs by the will of
volunteer [11, 12]. Ψ is different from Φ in that a peer to peer grid computing
system is alive in the presence of Ψ , while it is not operating in case of Φ.
The S-MA sends alive message to the volunteer server. Similarly, the T-MA
sends alive message to the S-MA. The T-MAs in D’ volunteer group do not
send alive message in order to reduce the management overhead of D’ volunteer
group. The volunteer server detects the crash failure of S-MA by using timeout.
Similarly, the S-MA detects the crash failure of T-MA. Volunteers can detect
volunteer autonomy failures by oneself because its operating system does not
shut down.
Failure of S-MA. S-MAs rarely suffer from the volunteer autonomy failures
because they are executed at the deputy volunteers which are selected among
A’ volunteer groups. The S-MA stores information such as scheduling group
lists, scheduling table, and task results in a stable storage. If S-MA fails, the
information is sent to new deputy volunteer.
Fig. 4 shows the fault tolerant algorithm. In the algorithm, in case of volunteer
interference failure, the S-MA does not take any actions because it can perform
scheduling in that the peer to peer grid computing system is alive.
Failure of T-MA. T-MAs suffer from volunteer autonomy failures more often
than S-MA, because they have low availability relatively. The T-MA checkpoints
1
the execution state at the rate of V.α v
in order to reduce the overhead.
Fig. 5 shows the fault tolerant algorithm. In the algorithm, there is no fault
tolerant mechanism for D’ volunteer group in the presence of failures during the
execution in order to reduce management overhead. Since A’ volunteer group
has enough availability and volunteering service time, it can finish tasks without
MAASM in Peer to Peer Grid Computing 943
the help of D’ volunteer group. Therefore, the D’ volunteer group executes tasks
for test such as calculating availability or volunteering time.
The MAASM can complete about 3 ∼ 4% more tasks because it reduces the
overhead occurred in a centralized way. As a result, the MAASM can reduce the
total execution time.
5 Related Work
AgentTeamwork [9] proposed a mobile agent based PC Grid middleware. Agent-
Teamwork makes use of mobile agents for resource search or job migration in the
presence of crash failure. AgentTeamwork is similar to our system in terms of us-
ing mobile agents. However, our system provides mobile agent based scheduling
mechanism which reflects the volunteer autonomy failures differently from Agent-
946 S.J. Choi et al.
Acknowledgment
This work was supported by the Korea Institute of Science and Technology
Information.
References
1. SETI@home, ”http://setiathome.ssl.berkeley.edu”
2. Distributed.net, ”http://distributed.net”
3. D. S. Milojicic, V. Kalogeraki, R. Lukose, K. Nagaraja, J. Pruyne, B. Richard, S.
Rollins, and Z. Xu, ”Peer-to-Peer Computing”, HP Laboratories Palo Alto HPL-
2002-57, March 2002.
4. Ian Foster and Adriana Iamnitchi, ”On Death, Taxes, and the Convergence of
Peer-to-Peer and Grid Computing”, 2nd International Workshop on Peer-to-Peer
Systems (IPTPS’03), February 2003.
5. F. Berman, G. C. Fox, and A. J. G. Hey, ”Grid Computing : Making the Global
Infrastructure a Reality”, Wiley, 2003
MAASM in Peer to Peer Grid Computing 947
1 Introduction
The topic of drag reduction in the automotive industry has been extensively
studied since many years because of its great importance in terms of fuel con-
sumption reduction. However, a computational and automatic approach of this
problem has been unreachable until recently because of its difficulty due to the
main two reasons: the complexity of the cost function to minimize and the com-
putation time of each evaluation. The first attempt in this direction has been
presented, up to our knowledge, by the present authors in [1]: this article was
describing the drag minimization of a simplified 3d car shape with a global op-
timization method that coupled a genetic algorithm and a second order BFGS
method. The interest of such hybrid method had been clearly shown on analytic
cases where the convergence speed up was spectacular compared to a classical
genetic algorithm. Unfortunately, the improvement for the industrial case was
not so important because of the lack of accuracy of the gradient computation
and so forth of the hessian approximation. The present article is intended to go
further in this direction by performing a large comparison of different strategies
to enhance the convergence of genetic algorithms, either with a hybrid method
or with an approximated evaluation process. All these global optimization meth-
ods, described in paragraph 2, are compared on two analytic cases in paragraph
3 and on an industrial problem of car drag reduction in paragraph 4.
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 948–957, 2005.
c Springer-Verlag Berlin Heidelberg 2005
Comparison of Global Optimization Methods 949
– ( ng = 1. Repeat until ng = Ng )
– if ng = 1 then evaluate {J(xi,ng ), 1 ≤ i ≤ Np }
– elseif ng ≥ 2
– for i from 1 to Np
– Evaluate J(x˜ i,n ).
g
– ˜
if J(xi,ng ) < J(Xng −1 ) then evaluate J(xi,ng )
– end for
– for a random i: evaluate J(xi,ng )
– end elseif
– ( 1-elitism )
The interpolation method chosen here comes from the field of neural networks
and is called RBF (Radial Basis Function) interpolation ([10]). Suppose that the
function J is known on N points {Ti , 1 ≤ i ≤ N }, the idea is to approximate J
at a new point x by making a linear combination of radial functions of the type:
nc
˜
J(x) = ψi Φ(||x − T̂i ||)
i=1
where:
– {T̂i , 1 ≤ i ≤ nc } ⊂ {Ti , 1 ≤ i ≤ N } is the set of the nc ≤ N nearest points
to x for the euclidian norm ||.||, on which an exact evaluation of J is known.
– Φ is a radial basis function chosen in the following set:
u2
Φ1 (u) = exp(− 2 )
r
-
Φ2 (u) = u + r2
2
1
Φ3 (u) = √
u + r2
2
u
Φ4 (u) = exp(− )
r
for which the parameter r > 0 is called the attenuation parameter.
The scalar coefficients (ψi )1≤i≤nc are obtained by solving the least square
problem of size N × nc :
N
nc
minimize err(x) = ˜ i ))2 + λ
(J(Ti ) − J(T ψj2
i=1 j=1
defined on O = [−2, 2]3 for which there exists many local minima (more than a
hundred) and only a global minimum located at xm = (0, 0, 0) equal to 0.
The second test function is a modification of the classical Griewank function
with 30 parameters:
30
x2 A
30
xi
Griew(x) = i
− cos( √ )
i=1
50 i=1
i
defined on O = [−10, 10]30 which has also a unique global minima at the origin
but only few local minima. In order to achieve a quasi-certain convergence with
a simple genetic algorithm, the population number and the maximal generations
number are respectively fixed to (Np , Ng ) = (30, 300) for the Rastrigin function
and (Np , Ng ) = (100, 160) for the Griewank function. The crossover and muta-
tion probability have been set to their best observed value in this case, that is
pc = 0.3 and pm = 0.9 (see [11] for more details).
Figure 1 displayed below gives an example of convergence history for the Ras-
trigin and Griewank function respectively, with six different global optimization
methods that have been previously presented in paragraph 2 (GA, HM0 , HM2 ,
HM3 , HM4 and AGA). Note that each gradient computation is counted as 2n func-
tion evaluations where n is the dimension number of the search domain (3 or 30
here) and that each approximated evaluation of the function in the AGA algorithm
is not counted as an evaluation. Due to the large number of curves displayed, the
authors must apologize for the poor visibility on a black and white copy.
On this figure, it can be seen that each method that has been constructed
gives better results than a simple GA on two different aspects: the first one is
the computational time which is assumed to be directly related to the evaluation
number of the function to minimize and the second one is the accuracy level that
is reached at the end of the computation.
In order to give more quantitative results, a statistical study based on a set
of 100 independent optimization processes has been realized. Table 1 gives the
approximated average gain compared to a classical genetic algorithm (ie the
evaluation number reduction rate for a given convergence level) that has been
observed for three global optimization methods. Note that the results obtained
Comparison of Global Optimization Methods 953
Fig. 1. Example of convergence history for the Rastrigin function (left) and the
Griewank function (right) with 6 different global optimization methods
Table 1. Evaluation number reduction rate for HM0 , HM3 and AGA compared to a
simple GA for each test function
for HM1 , HM2 and HM4 have not been displayed as they were not as good as
those of HM0 and HM3 .
This table confirms the interest of all the global optimization methods pre-
viously presented, but on a various degree. For example, it can be observed that
HM3 give better results than HM0 , which could not have been easily forecast
before these tests. Thus, HM3 and AGA seem to be the most promising ones in
terms of convergence time reduction. One one hand, HM3 appears to be more
efficient than AGA on the Rastrigin function as the latter exhibits many local
minima that can be rapidly tracked by the local search process. On the other
hand, as the number of parameters increases, the AGA method performs bet-
ter than the HM3 method as it does not need any gradient computation which
becomes very costly by finite differencies.
In view of their promising results, these global optimization methods are now
used and compared in the next paragraph in the context of a car drag reduction
problem.
where ρ is the mass density, S the front surface, V∞ the freestream velocity and
Fx the longitudinal component of the aerodynamic force exerted on the car. The
latter is obtained after a 3D turbulent Navier Stokes computation around the
car. This computation, very costly and sensitive to the car geometry, explains
the major difficulty of such optimization problem.
In order to improve the first optimization attempt presented in [1], the search
domain has been reduced: here, (α, β, γ) ∈ [15, 25] × [5, 15] × [15, 25] (degrees)
and the aerodynamic computation is done with a finer grid, namely with a 6
million cells mesh. In this context, one Cd evaluation, done with a commercial
CFD code, takes 14 hours CPU time on a single processor machine.
Three different types of global optimization methods have been compared on
this problem. The first and reference type is a classical GA with a population
number Np equal to 20 and (pc , pm ) = (0.3, 0.9). The second type consists of
hybrid methods, HM0 and HM3 , as described in paragraph 2.2 with gradient
evaluations computed by centered finite differences. The third type is a GA with
fast and approximated evaluations (called AGA) with or without a secondary
optimization of the interpolation parameters nc , λ, r and Φ: see paragraph 2.3.
The convergence history of all these optimization methods for the present
drag reduction problem is depicted in Figure 3. In order to achieve a reasonable
computational time, parallel evaluations on a cluster of workstations have been
done.
Comparison of Global Optimization Methods 955
Fig. 3. Convergence history for drag reduction of a 3d car shape with six different
global optimization methods (right figure: zoom of left figure)
Fig. 4. Iso pressure streamlines coloured by the longitudinal speed for the lowest drag
(left) and a high drag (right) car shape
This figure show in particular that all the methods have nearly reached the
same drag value, around 0.117, starting with an almost double value, but with a
different number of cost function evaluations. More precisely, the AGA algorithm
has permitted to reduce this number by a factor 7 compared to a classical GA.
Note that the AGA methods with a fixed set of parameters (called AGA1 and
AGA2) exhibit a lower gain, which seems to justify the interest of a secondary
optimization of the approximation parameters. On the other hand, the hybrid
method HM0 and HM3 don’t exhibit a significant improvement compared to the
GA, likely because of the lack of accuracy in the gradient computation.
The optimal angles obtained by all the global optimization methods are
nearly equal to (α, β, γ) = (17.7, 10, 18.4). These values have been experimen-
tally confirmed to be associated with the lowest drag value that can be reached.
The associated computational aerodynamic wake flow is depicted in Figure 4
and compared to an example of a high drag shape (Cd = 0.22).
It can be seen in particular that the optimized shape exhibits a narrow and
regular recirculation volume behind the vehicle as predicted by many authors.
956 L. Dumas, V. Herbert, and F. Muyl
Note that such aerodynamic interpretation must be done on a 3D level and not
from a longitudinal projection because of the real ’three dimensionality’ of the
flow.
5 Conclusion
In this article, two types of global optimization methods have been compared
with the classical genetic algorithm method (GA). The first type, called hybrid
methods (HM), consists in including a local search process for some well chosen
individuals during the GA evolution. The second type, called AGA, incorporates
a fast but approximated evaluation process for some individuals. For all the
tested problems, the needed number of cost function evaluations to achieve global
convergence has been largely decreased, between a factor 2 and 10 compared to
a classical GA. For instance, in a classical car drag optimization problem, the
AGA method with a new surrogate model has permitted to obtain the lowest
drag car shape 7 times quicker than any other existing method. Such promising
method is now ready to be applied to reduce the aerodynamic drag coefficient
of more and more realistic car shapes with a larger number of parameters.
References
1. Muyl F., Dumas L. and Herbert V.: Hybrid method for aerodynamic shape opti-
mization in automotive industry. Computers and Fluids, 33 (2004) 849-858
2. Goldberg D.E.: Genetic Algorithms in Search, Optimization, and Machine Learn-
ing. Addison-Wesley (1989)
3. Poloni C.: Hybrid GA for multi objective aerodynamic shape optimization. Genetic
algorithms in engineering and computer science. John Wiley and Sons, 33 (1995)
397-415
4. Renders J.M. and Flasse S.P.: Hybrid methods using genetic algorithms for global
optimization. IEEE Transactions on systems, man and cybernetics, 26 (1996) 243-
258
5. Vicini A. and Quagliarella D.: Airfoil and wing design through hybrid optimization
strategies. AIAA paper (1998).
6. Ong Y.S., Nair P.B., Keane A.J. and Wong K. W.: Surrogate-Assisted Evolutionary
Optimization Frameworks for High-Fidelity Engineering Design Problems. Knowl-
edge Incorporation in Evolutionary Computation. Studies in Fuzziness and Soft
Computing Series, Springer Verlag (2004) 307-331
7. Jin Y.: A survey on fitness approximation in evolutionary computation. Journal of
Soft Computing, 9 (2005) 3-12
8. Jin Y., Olhofer M. and Sendhoff B.: A framework for evolutionary optimization
with approximate fitness functions. IEEE Transactions on Evolutionary Compu-
tation, 6 (2002) 481-494
9. Ong Y.S., Nair P.B. and Keane A.J., Evolutionary Optimization of Computa-
tionally Expensive Problems via Surrogate Modeling. AIAA Journal, 41 (2003)
687-696
Comparison of Global Optimization Methods 957
1 Introduction
During the last years the mobile telecommunication industry has undergone ex-
traordinary changes brought about by the introduction of new technologies and
market forces. As a consequence, the operation of the radio network is becoming
increasingly complex. The only viable option for operators to reduce operational
costs is to increase the level of automation in the work process. In recent years
operators have shown an increasing interest to automate troubleshooting in the
radio access network. Troubleshooting consists of detecting problems (e.g. cells
with a high number of dropped calls), identifying the cause (e.g. interference)
and solving the problem (e.g. improving the frequency plan). The most diffi-
cult task is the diagnosis, which is currently a manual process accomplished by
experts in the radio network. These experts are personnel dedicated to daily
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 958–967, 2005.
c Springer-Verlag Berlin Heidelberg 2005
Multiple Intervals Versus Smoothing of Boundaries 959
analysis of main performance indicators and alarms of the cells, aiming at iso-
lating the cause of the problems. Bayesian Networks (BN) [1] are the technique
that has been adopted for the automated fault diagnosis in cellular networks.
BNs have been extensively used for diagnosis applications in many domains,
such as diagnosis of medical diseases. Normally, the continuous variables are dis-
cretized before being used as input evidence for a discrete BN. Thus, numerous
algorithms have been proposed for the discretization of continuous attributes
[2, 3, 4]. Many of them are based on large databases of classified examples. Nev-
ertheless, in domains such as cellular networks it would be very costly to obtain
labelled cases and, therefore, the boundaries of the intervals have to be elicited
by experts. Experience shows that when the number of symptoms is large, the
task of defining the parameters of the model (boundaries for the intervals and
probabilities) is very demanding and experts feel quite reluctant to specify more
than two intervals per symptom. However, the higher the number of intervals,
the better the discrete symptoms approximate the continuous variables. Further-
more, the huge amount of parameters to be defined leads to imprecise definition
of the parameters.
In this paper, two techniques to improve the modelling of the continuous
symptoms without increasing the number of parameters required from the ex-
perts are compared. The first method, called Smooth Bayesian Networks (SBN),
was presented in [5]. In SBNs, continuous symptoms are discretized into intervals
whose boundaries (thresholds) are smoothed. In this paper we propose a second
technique to improve the diagnosis accuracy, Multiple Uniform Intervals (MUI),
which increases the number of intervals based on uniform distributions of the
continuous symptoms. Both systems have been used in experiments to diagnose
the cause of excessive dropped calls in GSM cells. The performance comparison
is addressed attending to two main criteria: classification error and sensitivity
to imprecise definition of boundaries.
This paper is organised as follows. Section 2 reviews previous work in the
area under study. Section 3 introduces the basis of the diagnosis of problems in
the radio access network of cellular systems and revises the concept of Bayesian
Networks. The two methods proposed to increase the diagnosis accuracy, SBNs
and MUIs, are described in Section 4. Section 5 describes the experiments and
the achieved results. Finally, some conclusions and future work are outlined in
Section 6.
2 Related Work
Automated diagnosis based on Bayesian Networks has been successfully applied
in many fields, such as diagnosis of diseases in medicine, of problems with print-
ers, of problems in communication networks, etc. However, up to our knowledge,
no references can be found on automated diagnosis in the radio access network
of cellular systems. The research in cellular networks has been focused on fault
detection [6] and on alarm correlation [7]. Although alarm correlation can be
considered a first step in the diagnosis of faults, normally alarms do not provide
960 R. Barco et al.
conclusive information to identify the cause of the problem, especially if the pos-
sible causes are not only faults in pieces of equipment but other non-hardware
related issues. For example, faults such as interference or lack of coverage are
difficult to identify if performance indicators are not considered.
In [8] a system for automated diagnosis of faults in cellular systems which
took into account both performance indicators and alarms was proposed. The
reasoning mechanism consisted of a Naive Bayesian Classifier [9], which can be
represented as a BN following the structure of a Naive Bayes Model. In [10] an
alternative system based on the knowledge of troubleshooting experts instead
of data was proposed. The knowledge acquisition was eased by means of a tool
that automatically created the BN from the experts’ answers to simple questions
[11]. The continuous symptoms were discretized and the experts had to elicit
the probabilities and the cut boundaries for the discretized intervals. The main
problems arose due to the fact that the continuous symptoms were discretized
into a reduced number of states and, therefore, a very small change in the value
of a symptom could lead to a big change in the probability of the real cause.
This reasoning mechanism is far from the actual way of thinking of a human
expert, which is ”smoother” in its conclusions.
Several authors have tried to incorporate this continuity of human reasoning
into Bayesian Networks. In [12, 13] an integration of Bayesian Networks and
fuzzy logic is proposed. [14] describes a methodology to estimate the probability
density function of a continuous variable from the probabilities of the discrete
variables in a BN. In [5] Smooth Bayesian Networks were presented, which can
be understood as a method to add uncertainty about the state of the symptoms,
especially in the proximity of the boundaries. In that way, the transitions between
states are smoother than the steep boundaries of traditional BNs.
exclusive states is taken by a given variable, specially when the value of the con-
tinuous symptom is near the threshold. This type of evidence is called likelihood
evidence [1, 15]. As a consequence, in SBNs the shape of the posterior probabil-
ities of the causes given the symptoms is smooth in comparison with the steep
shape of the probabilities in conventional BNs.
Let c S be a a continuous symptom and S its corresponding discretized vari-
able. The value of the virtual evidence depends on the belief mapping function,
fiS (s), which models the belief in the value of c S being s given that S is in
the state si . For example, let’s consider the continuous symptom c S = ”Per-
centage of handovers due to interference” and let’s assume that the discrete
symptom S has two states: low / high. The probability density function (pdf)
fiS (20%) = P (c S = 20%|S = low) represents the pdf of the symptom c S
evaluated at 20%, knowing that the symptom is low.
There is a trade-off in selecting the adequate belief mapping functions: on
the one hand, achieving high classification accuracy, and, on the other hand,
simplifying the knowledge acquisition process. In [5] three types of belief map-
ping functions were proposed: rectangular, trapezoidal and rect-gaussian. A SBN
with rectangular functions is equivalent to a conventional discrete BN. The trape-
zoidal and rect-gaussian functions depend on the threshold T and on a parameter
p, which is related to the width of the transition between states and has been
named degree of smoothness.
5 Empirical Study
5.1 Reference Cases
A case is a set of values for some symptoms together with the actual cause.
Contrary to other domains such as medical diagnosis, in which there are large
knowledge databases, in the cellular network domain these reference cases are not
normally available. The historical databases in the NMS of the network contain
a large number of values describing the performance of cells with neither an
indication of whether there was a problem in the cell nor the cause of such
problem.
With the purpose of obtaining the required reference cases, a three month
trial in a real GSM network was carried out. Everyday some problematic cells
were identified and their faults were diagnosed by troubleshooting experts. The
data from the network were combined with human expertise to obtain 500 clas-
sified cases, whose causes were considered the gold standard when comparing
different diagnosis systems. A detailed explanation of the algorithm to generate
the reference cases can be found in [5].
the percentage of cases incorrectly classified. The true diagnosis is the average
over all the cases of the probability of the real cause assessed by the diagnosis
system. Finally, the rank order is the average over all the cases of the order of
the real cause in the rank of the diagnosed probabilities.
The second aspect to consider was the sensitivity of the results to changes in
the parameters of the mapping functions. In [5] a method to empirically analyze
the sensitivity of BNs to imprecise definition of thresholds was proposed. It was
based on previous studies about the sensitivity of BNs to imprecise probabilities
[16, 17, 18]. The method was based on adding random noise to the thresholds
and examining the effects on the diagnostic performance.
5.3 Results
The objective of the first experiment was to study the posterior probability of
the causes depending on the cut-boundaries. Figure 1a presents a case whose real
fault cause was interference in the downlink. This case was diagnosed by a 2-state
BN, a SBN with rect-gaussian functions and a 3-state BN. The parameter p was
set to 6% (symptoms in the model are measured as percentages). A hardware
fault was erroneously diagnosed by the 2-state BN, whereas both the SBN and
the 3-state BN achieved a correct diagnostic. Figure 1a depicts the probability
of the two causes vs. the value of the threshold for a quality related symptom.
100
46
90 DL Int. (gaus6)
44
3 states
Classification Error (%)
80
42
Cause Probability
70
40
60 DL Int. (3 stat6)
38
50
HW (2 stat) 36
40
2 states
34
30 DL Int. (2 stat)
32
20
10
HW (3 stat6) 30
Trapezoidal
HW (gaus6)
0
28
Gaussian
0 10 20 30 40 50 60 70 80 90 100 26
0 10 20 30 40 50 60 70 80 90 100
a) T:Q1_7_DL b) p
Fig. 1. a) Cause probabilities (DL interference and hardware) depending on the thresh-
old of the symptom Q1 7 DL, b)Classification error vs. degree of smoothness
The next step was to compare the performance of a 2-state BN, a 3-state BN
and SBNs with different belief mapping functions. The performance measures
over the 500 reference cases are shown in Table 1. It can be observed that the
lowest error is achieved with the 3-state BN for p=6%.
A conclusion from Table 1 is that the performance depends on the parame-
ter p. This is the reason why the following study was aimed at measuring the
influence of that parameter. Figure 1b shows the classification error obtained
Multiple Intervals Versus Smoothing of Boundaries 965
60 -4
2 states
Classification error (%)
55 trap10 -6
gaus10
Realtive error (%)
3 states, p6
50 -8
45 -10
40 -12
35 -14
trap10
30 -16 gaus10
3 states
25 -18
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
a) b)
Fig. 2. a) Error for increasing levels of noise; b) Error relative to the 2-state BN
for the 500 reference cases with the different diagnosis systems depending on
the value of p. For the 2-state BN the error is constant because the parameter
p does not exist in conventional BNs . For the SBNs, it can be observed that
the performance is improved with respect to the discrete BN, regardless of the
value of p. In the case of the 3-state BN, it can be appreciated that, except for
values of p lower than 10, the results are worst than for the 2-state network.
Therefore, building a BN with 3 states based on the 2-state BN following the
uniform approach may improve the diagnosis performance in comparison to the
discrete BN and the SBNs, but only for low values of p.
The second type of experiments was related to the sensitivity of the system
performance to an imprecise definition of the thresholds. Noise following a log-
odd normal distribution generated independently for each of the 500 reference
cases was added to the thresholds. The level of noise was changed from σ = 0 to 1
in steps of 0.1, generating 200 networks independently for each level of noise. The
experiment was repeated for a 2-state BN, two SBNs with trapezoidal and rect-
gaussian functions both with p = 10, and a 3-state BN with p = 6. Therefore, the
total number of networks used in our experiments was 4 million, comprised of 10
levels of noise x 200 runs x 500 cases x 4 networks, plus 4 networks without noise.
966 R. Barco et al.
Figure 2a shows the classification error vs. the standard deviation of the noise
for the different systems. Figure 2b presents the error relative to the 2-state BN
for different levels of imprecision. For no noise (σ = 0) the results are the same as
the ones exposed in Table 1, i.e. the best accuracy is obtained with a 3-state BN.
On the other hand, except for low values of σ, the error of SBNs is lower than
the one obtained with the 3-state BN. These statements are more noticeable for
high levels of imprecision in the thresholds. Therefore, SBNs are more robust to
imprecise definition of thresholds than discrete BNs, regardless of whether the
number of states is two or three, which is especially important in domains where
the number of classified examples is scarce or non-existent and the variance of
the symptoms is large.
Acknowledgements
This work has been partially supported by the Spanish Ministry of Science and
Technology under project TIC2003-07827
Multiple Intervals Versus Smoothing of Boundaries 967
References
1. Pearl, J.: Probabilistic Reasoning in Intelligent Systems, Morgan Kaufmann, San
Francisco, 1988.
2. Dougherty, K., Kohavi, R., Sahami, M.: Supervised and unsupervised discretiza-
tion of continuous features, in: Proc.12th Intern. Conference on Machine Learning,
Tahoe City, CA (Morgan Kaufmann, San Mateo, CA), 1995, pp. 194-202.
3. Fayyad, U.M., Irani, K.B.: Multi-interval discretization of continuous valued at-
tributes for classification learning, in: Proc.13th Intern.Joint Conf. on Artificial
Intelligence, Morgan Kaufmann, 1993, pp. 1022-1027.
4. Yang, Y., Webb, G.I.: A Comparative Study of Discretization Methods for Naive-
Bayes Classifiers, in: Proceddings of PKAW 2002, Tokyo, Japan, 2002, pp. 159-173.
5. Barco, R., Dı́ez, L., Wille, V.: Smoothing boundaries of states in Bayesian Net-
works: Application to diagnosis in cellular systems, submitted to Artificial Intelli-
gence, Elsevier, Feb.2005.
6. Laiho, J., Kylvj, M., Hglund, A.: Utilisation of Advanced Analysis Methods in
UMTS Networks, in: Proc.IEEE 55th Vehicular Techn. Conf., 2002, pp. 726-730.
7. Jakobson, G., Weissman, M.D.: Alarm Correlation, IEEE Network, Vol.7 (6)
(1993), 52-59.
8. Barco, R., Wille, V., Dı́ez, L.: System for automatic diagnosis in a cellular network
based on performance indicators, European Transactions on Telecommunications,
Vol.15, Wiley, 2005.
9. Domingos, P., Pazzani, P.: On the optimality of the Simple Bayesian Classifier
under Zero-One Loss, Machine Learning, 29 (1997) 103-130.
10. Barco, R., et al.: Automated troubleshooting of mobile networks using Bayesian
Networks, in: Proc.IASTED Intern.Conf. on Communication Systems and Net-
works, Acta Press, 2002, pp. 105-110.
11. Barco, R., et al.: Automated troubleshooting of a mobile communication network
using Bayesian networks, in: Proc.4th IEEE Intern.Workshop on Mobile and Wire-
less Communications Network, 2002, pp. 606 - 610.
12. Pan, H., McMichael, D.: Fuzzy causal probabilistic networks - a new ideal and
practical inference engine, in: Proc.1st International Conference on Multisource-
Multisensor Information Fusion, 1998.
13. Pan, H.: Fuzzy Bayesian Networks - A General Formalism for Representation,
Inference and Learning with Hybrid Bayesian Networks, International Journal of
Pattern Recognition and Artificial Intelligence, 14 (7) (2000) 941-963.
14. Yang, C.C.: Fuzzy Bayesian Inference, in: Proc.IEEE International Conference on
Systems, Man and Cybernetics, Orlando, FL, 1997, pp.2707-2712.
15. Valtorta, M., Vomlel, J.: Soft Evidential Update for Probabilistic Multiagent Sys-
tems, International Journal of Approximate Reasoning, 29 (1) (2002) 71-106.
16. Pradhan, M., et al.: The sensitivity of belief networks to imprecise probabilities:
An experimental investigation, Artificial Intelligence 85 (1-2) (1996) 363-397.
17. Kipersztok, O., Wang, H.: Another Look at Sensitivity of Bayesian Networks to Im-
precise Probabilities, in: Proc.8th International Workshop on Artificial Intelligence
and Statistics, 2001.
18. Henrion, M., et al.: Why is diagnosis using belief networks insensitive to impreci-
sion in probabilities?, in: Proc.12th Conf. on Uncertainty in Artificial Intelligence,
Morgan Kaufmann, 1996, pp. 307-314.
Visual Interactive Clustering and Querying of
Spatio-Temporal Data
1 Introduction
Clustering and querying of spatial data are classical problems in databases, and
warehousing. Clustering algorithms can be applied for similarity search, customer
segmentation, pattern recognition, trend analysis, etc. Numbers of algorithms for
clustering multidimensional data have been proposed in the last few years, e.g.
partitioning method such as k-means [1] and k-medoids [2], hierarchical method such
as CURE [3], density-based method such as DBSCAN [4] and DENCLUE [5], etc.
However, analysis of spatio-temporal data including clustering has received less
attention. To be able to run on spatio-temporal data spatial clustering algorithms need
temporal extensions [6, 7].
It becomes more and more important for the modern clustering systems to give the
user an easy understanding of both the data set and the results [8]. Visualization offers
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 968 – 977, 2005.
© Springer-Verlag Berlin Heidelberg 2005
Visual Interactive Clustering and Querying of Spatio-Temporal Data 969
the user an intuitive way of analysis that can help to discover data patterns and
structures. Data visualization techniques [9, 10] when incorporated with clustering
algorithms could improve interpretability and usability of the data and clustering
process. Visualization techniques could be used not only for the interpretation of the
results but also for the interpretation of the whole process of clustering in order to
help the user to come up with hypothesis and to set the values of parameters. For
instance, the user could select the projection directions [11] for high dimension data
set. To incorporate visualization techniques, the existing clustering algorithms use the
result of clustering algorithm as the input for visualization system [10]. The drawback
of such approach is that it can be costly and inefficient. The better solution is to
combine two processes together, which means to use the same model in clustering
and visualization.
On the other hand, development of query methods and graphical user interfaces is
a new trend in data mining [12]. Querying of time-dependent data is a classical
problem in temporal databases and warehousing. The goal of works in this area is to
propose data representation model and query model able to handle time-dependent
geometries including those changing continuously that describe moving objects [13,
14]. Spatio-temporal predicates are introduced to query time-dependent data [14].
In work [15], we proposed and fully described geometric query model with
implicit functions. Then, in work [16], we proposed a solid-based clustering method.
In this paper, we extend the uniform geometric model to handling time-dependent
data. We proposed to apply solid-base clustering algorithm to data changing over
time. The extended uniform geometric model allows integrate solid-based visual
clustering and visual querying of time-dependent data in one GUI. Implicit function
is used in spatio-temporal predicate implementation. This allows us to pose complex
shape queries changing over the time. Our extended model allows us to integrate
clustering, querying and visualization of spatio-temporal data. Spatio-temporal query
languages are not discussed in this paper.
The paper is organized as follows. Section 2 introduces the model defined with
implicit functions that is used for interactive visual clustering of time-dependent data
and describes similarity of the model with the model of density-based methods.
Querying of time-dependent data based on the geometric query model is described in
Section 3. Implementation of the system and examples of visual clustering and
querying are discussed in Section 4. In Section 5, conclusion and future work are
considered.
Let P be a set of multidimensional points P={[p1, p2,…, pn, t]} = {[P, t]} in n
dimensional Euclidean space En, and t is time in the n-dimensional Euclidean space
En. Then, a solid reconstructed on the points can be described with function-based
representation as follows:
f(X,P)≥0, where X belongs to En. The function can be defined by procedure. Such
function defines closed n-dimensional geometric solid in En space under the following
conditions:
f(X, P)>0 for the points inside the solid,
f(X, P)=0 for the points on the solid boundary,
f(X, P)<0 for the points outside the object,
where X= {x1,x2,…,xn} is a position vector of the point in En.
The zero set of these functions provides surfaces, and the values that are greater or
equal to zero define multidimensional geometric solid objects. We consider each
cluster as a different solid per time point. For querying we use function-based
representation of the query solid as well. For clustering, we implement solid-based
subdivision algorithm for each time frame. In solid-based subdivision algorithm that
was proposed and described for spatial data in work [18], we build the solid by
computing the density function of points in the whole field, which means adding up
all the influence functions of points inside the field. The sum is a field density
function that consists of all influence functions of the points. The field density
function can make a complete description of the whole data space. Parabolic function,
square wave function and Gaussian function are some examples of basic influence
function in density-based algorithms. The functions used in blobby, meta-balls or soft
objects in Computer Graphics can also serve as the basic influence function for better
efficiency of our method.
In this work, we use blobby model that is similar to the model used in density-
based clustering methods. Blobby model was first accomplished by Blinn, and now
the term blobby always includes other related models and is not limited only to the
original model. The blobby primitive is described as follows:
f (r) =a∗e−(r/b)
where r is the distance from the center point of a primitive, a is the height of the
function and b is related to the standard deviation which is Gaussian. At any point of
the surface, the isosurface “potential” is equal to the sum of all the primitives’
contributions using the following function:
N
F ( X , P ) = ¦ f (r ) − T ≥ 0
i =1
where N is the total number of blobby primitives and T is the threshold constant that
determines the value of the isosurface.
In blobby model, the distance from the center point of the primitives describes the
range that the primitive can influence on, the summary function adds up the
influences of all primitives and the threshold determines the level of the isosurface
Visual Interactive Clustering and Querying of Spatio-Temporal Data 971
built. In our method, the same blobby model is used in the subdivision algorithm. By
connecting all points with the same potential value (i.e. the threshold value), we can
build a smooth implicit surface around the cluster. If there are many clusters in the
data set, we will get many implicit surfaces with the same potential value. And each
of the implicit surfaces will wrap the cluster. In our model, implicit surfaces serve as
the boundaries of clusters. By substituting one point’s coordinates into the blobby
function and compare the result with T, we can easily know whether the point is
inside or outside of the implicit surface. Thus, the solid-based subdivision algorithm
is implemented as follows. We connect each point of each time point dataset with
other points and sort the points into the clusters checking the values along the line
connecting two points.
As we mentioned before, the formulae of blobby model is similar to the density-
based clustering model of DBSCAN, OPTICS and DENCLUE. In density-based
methods, Gaussian function is used as follows:
G G
d ( x ,r )2
G − G G
f ( x) = e
r 2σ 2
, where
d ( x , r ) is a distance between two points.
We implemented visual clustering with blobby functions. The blobby formula has
additional parameter a which can make cluster shape “thinner”. We have to set
interactively three parameters for our model a – scale factor, b – exponential factor,
and T – threshold value.
We have to note that the solid-based subdivision algorithm can also act as a stand
alone clustering algorithm even without being integrated with visualization
techniques into the system.
In our model, query solid can have time-dependent parameters and/or coordinates
that can be defined analytically or by procedure. Thus, the geometric query model
consists of the following geometric objects:
• n-dimensional points P = {[xl, x2 . . . . . xn, t ]} where t is time;
• time-dependent 3-dimensional primitive geometric objects for the
construction of a query solid using geometric operations.
The following is an implicit function representation of the primitive time-
dependent 3-dimensional geometric solids that could be used for construction of
geometric criteria:
Halfspace:
G1: f1(X, t) = f1 (x1, x2, x3, t) = (xi-a[t]) ≥ 0
Where a is some real number (a ∈ R)
Sphere:
G1: f1(X, t) = r[t]2 - (x1- x0,1[t])2 - (x2 – x0,2[t])2 – (x3 – x0,3[t])2 ≥ 0
Where x0,1, x0,2, x0,3 ∈ R
Ellipsoid:
G1: f1(X, t) = 1- ((x1- x0,1[t])/a1 [t])2 - ((x2- x0,2[t])/a2 [t])2 - ((x3- x0,3[t])/a3 [t])2 ≥ 0
where x0,1, x0,2,, x0,3 ∈ R and a1, a2, a3 ∈ R.
Cone:
G1: f1(X, t) = ((x1- x0,1[t])/a1 [t])2 - ((x2- x0,2[t])/a2 [t])2 - ((x3- x0,3[t])/a3 [t])2 ≥ 0
where x0,1, x0,2, x0,3 ∈ R and a1, a2, a3 ∈ R.
Cylinder:
G1: f1(X, t) = ((x1- x0,1[t])/a1 [t])2 - ((x2- x0,2[t])/a2 [t])2 ≥ 0
Where x0,1, x0,2 ∈ R and a1, a2 ∈ R.
By further declaring that our model is open to any type of objects that can be
defined implicitly with some functions f(x1, x2, x3, t) ≥ 0, we could avoid the problem
of a minimum set of primitives and to change this set depending on the application
problem to be solved.
Geometric operations are applied to primitive geometric objects to obtain complex
geometric shapes at each time point. The analytical definition of set-theoretic
operations is realized in the form proposed by Ricci [19], where operations over
implicit functions are considered. Affine transformations (translation, rotation and
scaling) are also used to increase an expressive power of the proposed geometric
model. Geometric operations include set-theoretic union, intersection, difference and
orthographic projection.
Mathematically,
Union: G3=G1∪G2 of two objects G1⊂En and G2⊂En with the descriptive functions
f1 and f2 will be defined as f3=f1∨f2=max(f1,f2)ҏ≥0, where G3⊂En. Intersection:
Visual Interactive Clustering and Querying of Spatio-Temporal Data 973
G3=G1∩G2 of two objects G1⊂En and G2⊂En with the descriptive functions f1 and f2
will be defined as f3=f1∧f2=min(f1,f2)≥0, where G3⊂En. Complement: G2=¬G1 of
object G1⊂En with the descriptive functions f1 will be defined as f2=-f1≥0. Difference:
G3=G1\G2 between objects G1⊂En and G2⊂En with descriptive functions f1 and f2 will
be defined as f3=f1∧(-f2)=min(f1,-f2)≥0, where G3⊂En. Translation: G2=T(G1) of
object G1⊂Ek with descriptive functions f1 by a1, a2,…,an will be defined as f1(x1-a1,
x2-a2, …, xn-an)≥0. Rotation: G2=R(G1) of object G1⊂Ek with descriptive functions f1
of angle α about some axis will be defined as f1(x’1,x’2,…,x’n)≥0 where [x’1 x’2… x’n
1]=R-1[x1 x2… xn 1] and R-1 is an inverse matrix of rotation. Scaling: G2=S(G1) of
object G1⊂Ek with descriptive functions f1 in s1, s2,…, sn times will be defined as
f1(x1/s1, x2/s2, …, xn/sn)≥0.
Thus, with this model we can query clusters changing over time with the final
query shape.
With the proposed query model, the user could specify a query solid for each time
point defining time-dependent primitive solids parameters and location analytically or
Visual Interactive Clustering and Querying of Spatio-Temporal Data 975
by procedure. Currently, with the implemented GUI, the user constructs the query
shape that does not change over time interval.
Geometric objects can be drawn opaque or transparent. We employ visualization
techniques and advanced computer graphics algorithms for the implementation of the
user interface.
In Fig. 3 wrapping with ellipsoids and union of ellipsoids is shown. The system is
implemented with the software Visualization Toolkit (VTK) where visualization is
implemented with marching cube algorithm [20].
looking for the optimal parameters. We are going to make further improvements on
the algorithms and visualization techniques to make the clustering and querying
process more efficient and intuitive to the user. The human vision is the most
experienced in the interpretation of realistic representations. The application of
advanced computer graphics algorithms and visualization techniques for graphical
data mining languages and representation of the data mining results could help to
explore the data through more intuitive interface employing even modern VR tools.
References
1. J. Hartigan, and M. Wong, “A K-means Clustering Algorithm”, Applied Statistics, 28,
1979, pp. 100-108.
2. L. Kaufman, and P. Rousseeuw, Finding Groups in Data: A Introduction to Cluster
Analysis. New York, John Wiley and Sons, 1990.
3. Sudipto Guha, R. Rastogi, K. Shim, CURE: A Clustering Algorithm for large databases.
Technical report, Bell Laboratories, Murray Hill, 1997.
4. M. Ester, Hans-Peter Kriegel, Jorg Sander, Xiaowei. Xu, “A Density-Based Algorithm for
Discovering Clusters in Large Spatial Databases with Noise”, Proc of KDD-1996, 1996.
5. A. Hinneburg, D.A. Keim, An Efficient Approach to Clustering in Large Multimedia
Databases with Noise, American Association for Artificial Intelligence, 1998.
6. U.M. Fayyad, G. Piatetsky-Shapiro, P. Smyyh, From data mining to knowledge discovery:
An Overview, In Advances in Knowledge Discovery and Data Mining, Cambridge, MA:
MIT Press, 1996, pp.1-34.
7. N.J. Miller, and J. Han, Geographic data mining and knowledge discovery: An Overview,
In Geographic Data Mining and Knowledge Discovery, London, New York: Taylor &
Fransis, 2001, pp. 3-32.
8. D.A. Keim, “Information Visualization and Visual Data Mining”, IEEE Transactions on
Visualization and Computer Graphics, vol. 8, 1, 2002, pp. 1-8.
9. T.C. Sprenger, M.H. Gross, A. Eggenberger, M. Kaufmann, A Framework for Physically-
Based Information Visualization, in Proceedings of Eurographics Workshop on
Visualization '97, Boulogne sur Mer, France, April 28-30, 1997, pp. 77-86.
10. T. C. Sprenger, R. Brunella, M. H. Gross. “H-BLOB: A Hierarchical Visual Clustering
Method Using Implicit Surfaces,” Department of Computer Science, Swiss Federal
Institute of Technology (ETH), Zurich, Switzerland
11. A. Hinneburg, D.A. Keim, and M. Wawryniuk, “HD-Eye: Visual Mining of High-
Dimensional Data”, IEEE Computer Graphics and Applications, September/October 1999,
pp. 22-31.
12. J. Han, M. Kamber, Data Mining Concepts and Techniques. San Francisco, CA: Morgan
Kaufmann Publishers, 2000.
13. R. H. Güting et al, A Foundation for Representing and Querying Moving Objects. ACM
Transaction on Database Systems, Vol. 25, No. 1, March 2000, pp. 1-42.
14. M. Erwig, M. Schneider, Developments in Spatio-Temporal Query Languages,
IEEE Int. Workshop on Spatio-Temporal Data Models and Languages (STDML),
1999, pp. 441-449.
15. O. Sourina, S.H. Boey, Geometric Query Types for Data Retrieval in Relational
Databases, Data & Knowledge Engineering, Elsevier Science B.V., Vol. 27, 2, 1998, pp.
207 – 229
Visual Interactive Clustering and Querying of Spatio-Temporal Data 977
1 Introduction
We now discuss the large and sparse linear system
Ax = b, A ∈ Rn×n , x, b ∈ Rn , (1)
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 978–988, 2005.
c Springer-Verlag Berlin Heidelberg 2005
Breakdown-Free ML(k)BiCGStab Algorithm 979
2 BiCGStab Algorithm
BiCGStab algorithm [3] accelerates the convergence of the residual norm by
computing the product of the residual vector of BiCG algorithm [1] and an
appropriate 1-step MR polynomial. The l-th residual vector of BiCG algorithm
and degree one MR polynomial are defined as r˜l and
Pl (A) = I − αl A, (2)
3 ML(k)BiCGStab Algorithm
The residual vector of ML(k)BiCG algorithm is orthogonalized to all of k pseudo
Krylov subspaces
where q j are starting Lanczos vectors and are orthogonalized to each other. The
l-th residual vector ML(k)BiCG algorithm is implemented so that the orthogonal
condition
r l ⊥ Span{p0 , p1 , . . . , pl } (5)
ML(k)BiCG algorithm
choose x0 and q 0
Compute q 1 , . . . , q k−1 by Arnoldi process
r̃ 0 = b − Ax0 , p0 = q 0 , g 0 = r̃ 0 , l=1
while “ r̃ l 2 / r̃ 0 2 ≥ ” do
αl = (pl−1 , r̃ l−1 ) / (pl−1 , Ag l−1 )
xl = xl−1 + αl g l−1
r̃ l = r̃ l−1 − αl Ag l−1
for i = max(l %− k, 0) to l − 1
1 do 2
i−1 (l) (l)
z = r̃ l + βj g j , βi = −(pi , Az) / (pi , Ag i )
j=max(l−k, 0)
enddo %l−1 1 (l)
2
g l = r̃ l + βj g j
j=max(l−k, 0)
Compute pl , using the formula (4)
l=l+1
enddo
4 Varying k
In this section, we define the Lanczos breakdown. Moreover, we also propose the
new scheme that varies k and reproduces the pseudo Krylov subspaces when the
Lanczos breakdown occurs.
K(q j , AT ) = {q j , AT q j , (AT )2 q j , . . . . . . , }, j = 0, 1, . . . , k − 1.
Breakdown-Free ML(k)BiCGStab Algorithm 981
Based on Van der Vorst [3], we define the pivot of the residual vector and q j as
| rl , qj |
ψj = . (6)
(r l 2 · q j 2 )
Step (i) If the condition (7) is satisfied, the current residual vector is normalized
and is set to q 0 .
We also notice that kmax is the maximum value of k. In the Step (i), when at least
one of these pivots is too small, the new Lanczos starting vector q 0 is obtained
by normalizing the current residual vector. By carrying out the Step (i), the
pivot ψj is able to be set to 1.0, the maximum value of the pivot ψj . In the Step
(ii), the algorithm is stabilized by increasing k. However, if k has already reached
kmax , k gets back to 1 and the Lanczos starting vectors q 0 , q 1 , . . . , q k−1 are
reproduced. This means that even if kmax Lanczos starting vectors have already
been used, there is still the possibility that the Lanczos breakdown occurs. In this
982 K. Moriya and T. Nodera
choose x0 , q 0
r 0 = b − Ax0 , g0 = r0 , l = 0, k=1
while “r l 2 / r 0 2 ≥ ” do
wl = Ag l , cl = (q 0 , wl ), αl+1 = (q 0 , r l ) /cl
ul+1 = r l − αl+1 wl
ρl+1 = − (ul+1 , Aul+1 ) / Aul+1 22
xl+1 = xl − ρl+1 ul+1 + αl+1 g l
r l+1 = ρl+1 Aul+1 + ul+1
l̀ = l + 1
for i = 1 to k do
z d = ul+i , z g = rl+i , zw = 0
for s = i to k − 1 do
βl−k+s = − q s+1 , z d /cl−k+s
z d = z d + βl−k+s dl−k+s
z g = z g + βl−k+s g l−k+s
z w = z w + βl−k+s wl−k+s
enddo
(q , r )+ρ (q 0 , z w )
βl = − 0 l+1 ρ l+1 c
l+1 l
z g = z g + βl g l
z w = ρl+1 (z w + βl wl )
z d = r l+1 + z w
for s = 1 toi − 1 do
βl+s = − q s+1 , z d /cl+s
z d = z d + βl+s dl+s
z g = z g + βl+s g l+s
enddo
dl+i = z d − ul+i , g l+i = z g + z w
if i < k then
cl+i = q i+1 , dl+i
αl+i+1 = q i+1 , ul+i /cl+i
ul+i+1 = ul+i − αl+i+1 dl+i
xl+i+1 = xl+i + ρl+1 αl+i+1 g l+i
wl+i = Ag l+i
r l+i+1 = r l+i − ρl+1 αl+i+1 wl+i
l̀ = l̀ + 1
endif
enddo
l = l̀
beginning of new process
for j = 0to k −1 do
ψj = | r l , q j |/(r l 2 · q j 2 )
if ψj < ε then
q 0 = r l / r l 2
if k = kmax then
k=1
else
k =k+1
compute q 1 , . . . , q k−1 by Arnoldi method
endif
break current “for loop”
endif
enddo
end of new process
enddo
where
The right-hand side f and the boundary conditions are determined so that the
exact solution is
We discretize this equation by using the finite differential method with 803 grid
points. This yields the linear system of order of 512,000. In Table 1, we show
the computation time and iterations required for satisfying the stopping crite-
rion. In most of the cases, ML(≤ kmax )BiCGStab algorithm performs better
than BiCGStab algorithm and ML(k)BiCGStab algorithm. Especially, the com-
putation time of ML(≤ 8)BiCGStab algorithm is decreased by 30% in com-
pared with ML(8)BiCGStab algorithm. Table 2 gives the occurrence that the
pivots of ML(≤ kmax )BiCGStab algorithm satisfy the condition (7). In any
cases, the Lanczos breakdown of ψ0 is more likely to occur than the other pivots
ψ1 , . . . , ψk−1 . It’s also shown that the Lanczos breakdown is less likely to occur
as k is increased.
The right-hand side functions f1 , f2 , f3 and the boundary conditions are defined
so that the exact solutions are as follows:
We let h denote the width between two grid points and set h = 1/81. Therefore,
as for i, j, k = 1, 2, . . . 80, the nonlinear system of order of 1,536,000
q(g i,j,k ) = a1,i,j,k g i,j,k−1 + a2,i,j,k g i,j−1,k + a3,i,j,k g i−1,j,k + (h2 − 6)g i,j,k
+a4,i,j,k g i,j,k+1 + a5,i,j,k g i,j+1,k + a6,i,j,k g i+1,j,k − h2 f i,j,k = 0 (8)
is generated, where
0.1h 0.1h 0.1h
a1,i,j,k = 1 − wi,j,k , a2,i,j,k = 1 − vi,j,k , a3,i,j,k = 1 − ui,j,k ,
2 2 2
0.1h 0.1h 0.1h
a4,i,j,k =1+ wi,j,k , a5,i,j,k = 1 + vi,j,k , a6,i,j,k = 1 + ui,j,k ,
2 2 2
T T
g i,j,k = [ui,j,k , vi,j,k , wi,j,k ] , f i,j,k = [f1,i,j,k , f2,i,j,k , f3,i,j,k ] .
Moreover, ui,j,k , vi,j,k , wi,j,k , f1,i,j,k , f2,i,j,k , f3,i,j,k are the values of the func-
tions u, v, w, f1 , f2 , f3 on the grid point (ih, jh, kh), respectively. For the
nonlinear system (8), the approximate solution g i,j,k is obtained, using New-
ton method. We let sl and q l (sl ) denote l-th approximate solution and residual
vector of Newton method, respectively and define as follows:
sl and q l (sl ) are the vector of order of 1,536,000 and the Newton recurrence can
be described as
sl+1 = sl − Jl−1 (sl )q l (sl ), (9)
where Jl (sl ) is the Jacobi matrix of the vector q l (sl ). The initial guess s0 is com-
puted by using the linear Lagrange polynomial which connects the grid points
(ih, jh, 0) and (ih, jh, 1) as for ∀ i, j. In order to do one step of Newton method,
the computation of Jl−1 (sl )q l (sl ) has to be carried out once. Therefore the linear
system
Jl (sl )x = q l (sl ) (10)
are solved by BiCGStab algorithm, ML(k)BiCGStab algorithm and ML(≤ kmax )
BiCGStab algorithm. The stopping criterion of the Newton formula (9) is set to
Table 3. The numerical results for Example 2, (time: the computation time for the
linear system (10) (sec), iter: iterations for the linear system (10))
Table 4. Example 2: The occurrence of the Lanczos breakdown of ML(≤ kmax )B-
iCGStab algorithm (1st iteration of Newton recurrence (9))
kmax ψ0 ψ1 ψ2 ψ3 ψ4 ψ5 ψ6 ψ7
1 8 – – – – – – –
2 6 0 – – – – – –
4 4 1 0 0 – – – –
8 2 1 1 0 1 0 0 0
1e-00 1e-00
1e-02
1e-02 C
Residual Norm
1e-04
1e-06 1e-04
Pivot
B B
1e-08 1e-06
1e-10
1e-08
1e-12 C A A
1e-14 1e-10
0 15 30 45 0 15 30 45
Computation Time Computation Time
(a) residual norm vs. computation time (b) pivot (ψ0 ) vs. computation time
Fig. 3. Example 2: The behavior of two values vs. computation time (1st iteration
step of Newton method), A: BiCGStab algorithm, B: ML(4)BiCGStab algorithm, C:
ML(≤ 4)BiCGStab algorithm
About the numerical results, the number of iterations of the Newton re-
currence (9) is required three times for satisfying the stopping criterion (11).
Breakdown-Free ML(k)BiCGStab Algorithm 987
Therefore, as for three steps of Newton method, the computation time and it-
erations for solving the linear system (10) are shown in Table 3. The notation
“total time” in Table 3 means the total computation time for solving the lin-
ear system (10) three times. Roughly speaking, the total computation time of
ML(≤ kmax )BiCGStab algorithm is less expensive than the two algorithms. Es-
pecially, in the best case, the computation time of ML(≤ 8)BiCGStab algorithm
is required only 50% of ML(8)BiCGStab algorithm.
We now focus on the 1st iteration of the Newton recurrence (9). We ana-
lyze BiCGStab algorithm, ML(4)BiCGStab algorithm and ML(≤ 4)BiCGStab
algorithm for solving the linear system (10). The behaviors of the residual norm
and the pivot ψ0 are shown in Figure 3. Figure 3.(a) shows that the conver-
gences of ML(≤ 4)BiCGStab algorithm and BiCGStab algorithm are almost the
same about 15 seconds. However, going past about 15 second, the convergence of
ML(≤ 4)BiCGStab algorithm is more accelerated than BiCGStab algorithm. the
residual norm of ML(≤ 4)BiCGStab algorithm converges about 10% faster than
BiCGStab algorithm. On the other hand, ML(4)BiCGStab algorithm converges
more slowly than the two other algorithms. According to Figure 3.(b), the pivot
ψ0 of BiCGStab algorithm becomes less than 1.0×10−8 and finally never recover
from the Lanczos breakdown. About ML(4)BiCGStab algorithm, the pivot ψ0
is a little bit larger than BiCGStab algorithm. However, its value always lies
in near 1.0 × 10−8 . On the other hand, the pivot ψ0 of ML(≤ 4)BiCGStab
algorithm get back to 1.0 whenever the Lanczos breakdown occurs. Moreover,
it never falls down less than 1.0 × 10−8 after about 25 seconds. Therefore it
is shown that ML(≤ 4)BiCGStab algorithm is more stabilized than the two
original algorithms. The occurrence of the Lanczos breakdown is also shown in
Table 4. Just like Example 1, Table 4 illustrates that the breakdown of ψ0 is
more occurred than the other pivots ψ1 , ψ2 , . . . , ψk−1 . About the pivot ψ0 of
ML(≤ 4)BiCGStab algorithm, the condition (7) is satisfied eight times. In Ex-
ample 2, it also shown that the Lanczos breakdown is less likely to occur as the
number of the pseudo Krylov subspaces is increased.
References
1. Fletcher, R.: Conjugate Gradient Methods for Indefinite Systems, Lecture Notes
in Math., No. 506, pp. 73–89, (1976).
2. Schönauer, W.: Scientific Computing on Vector Computers, North Holland, (1987).
3. Van der Vorst, H. A.: Bi-CGSTAB: A Fast and Smoothly Converging Variant of
Bi-CG for the Solution of Non-Symmetric Linear Systems, SIAM J. Sci. Stat.
Comput., Vol. 13, pp. 631–644, (1992).
4. Yeung, M. and Chan, T, F.: ML(k)BiCGStab: A BiCGSTAB Variant based on
Multiple Lanczos Vectors, SIAM J. Sci. Comput., Vol. 21, No, 4, pp. 1263–1290,
(1999).
On Algorithm for Efficiently Combining Two
Independent Measures in Routing Paths
1 Introduction
The advanced multimedia technology with high-speed networks generates
a bunch of real-time applications. Since high end-services such as video-
conferencing, demand based services (Video, Music, and News on Demand),
Internet broadcasting, etc. are popularized, the significance of real-time trans-
mission has grown rapidly to support Quality of Service (QoS). As network users
using high-bandwidth applications increase, efficient usage of the networks is re-
quired for the better utilization of the network resources. Also, it requires that
networks offer various kinds of qualities of services, in terms of time and cost,
to satisfy users’ demands. It essentially becomes an optimization problem.
For real-time applications, the path delay should be acceptable while its cost
should be as low as possible to meet users demands. This is called the Delay
Constrained Least Cost (DCLC) path problem, which is NP-hard [4]. There are
This work was supported in parts by Brain Korea 21 and the Ministry of Information
and Communication in Republic of Korea. Dr. H. Choo is the corresponding author.
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 989–998, 2005.
c Springer-Verlag Berlin Heidelberg 2005
990 M. Kim, Y.-C. Bang, and H. Choo
a lot of heuristics to solve it; CBF [13], DCUR [8], ELS [5] and so on. But the
CBF has exponential running time and the DCUR frequently takes both the least
delay (LD) path and the least cost (LC) path from a current node to a destination
node. The LD path cost is relatively more expensive than the LC path cost, and
moreover, the LC path delay is relatively higher than the LD path delay. As we
have seen, the DCLC desires to find the path that takes into account both cost
and delay. Even though there exists a delay sacrifice for a lower cost, the delay
should be constrained by the delay bound. The negotiation between cost and
delay is important. Hence, we introduce the new parameter that simultaneously
regulates both the cost and the delay. Our proposed parameter can adjust them
by weight ω ∈ [0, 1].
The rest of paper is organized as follows. In Section 2, the network model and
the interval estimation are explained, Section 3 presents details of the new pa-
rameter and illustrates with example. Then we analyze and evaluate the perfor-
mance of the proposed parameter by simulation in Section 4. Section 5 concludes
this paper.
2 Preliminaries
2.1 Network Model
We consider that a computer network is represented by a directed graph G =
(V, E) with n nodes and l links or arcs, where V is a set of nodes and E is a set
of links, respectively. Each link e = (i, j) ∈ E is associated with two parameters,
namely link cost c(e) > 0 and link delay d(e) > 0. The delay of a link, d(e), is the
sum of the perceived queueing delay, transmission delay, and propagation delay.
We define a path as sequence of links such that (u, i) → (i, j) → . . . → (k, v),
belongs to E. Let an ordering set P (u, v) = {(u, i), (i, j), . . . , (k, v)} denote
the path from node u to node v. If all nodes u, i, j, . . . , k, v in P (u, v) are
distinct, then we say that it is a simple directed path. For a given source node
s ∈ V and a destination node d ∈ V , (2s→d , ∞) is the set of all possible paths
from s to d. We define the length of the path P (u, v), denoted by n(P% (u, v)), as
a number of links in P (u, v). The path cost of P is given by φC (P ) = e∈P c(e)
%
and the path delay of P is given by φD (P ) = e∈P d(e). (2s→d , Δ) is the set
of paths from s to d for which the end-to-end delay is bounded by Δ. Therefore
(2s→d , Δ) ⊆ (2s→d , ∞). The DCLC problem is to find the path that satisfies
min{ φC (Pk ) | Pk ∈ (2s→d , Δ), ∀ k ∈ Λ }, where Λ is an index set.
unknown θ is in the interval (θ1 , θ2 ) [7]. The 100(1 − α)% confidence interval for
S S
the sample mean X̄ of the X can be described by (X̄ − zα/2 √ , X̄ + zα/2 √ )
n n
when unknown variance and S is sample variance. If we would like to have the
95% confidence interval, then the solution of the following equation is zα/2 = 1.96
as the percentile which means:
+ zα/2
1 x2
2 √ e− 2 dx = 0.95 . (1)
0 2π
⎛ φ (P ) ⎞
100 ⎜1 − C LC ⎟ %
⎝ φC ( PLD ) ⎠ Cost Normal Distribution
post LD of LD path
C
Fig. 1. postLD
As shown in Fig. 1, postLD is the detection point to change the path cost from
LD
s to d. So, it is essential to find the percentile zα/2 . In order to obtain it, the cu-
mulative distribution function (CDF) is employed. Ideally, the PDF is a discrete
function but we assume that the PDF is a continuous function2 in convenience
@x y
through out this paper. Let the CDF be F (x) = −∞ √12π e− 2 dy. Then, the
LD
percentile, zα/2 , is a solution of the following equation:
992 M. Kim, Y.-C. Bang, and H. Choo
η x = 100 ( 1 − φφCC(P∼x )
(Px )
) %, where LD =∼ LC.
zα/2 = 3.29 if η ≥ 50.
x x
ηx x
zα/2 ηx x
zα/2 ηx x
zα/2 ηx x
zα/2 ηx x
zα/2
49 2.33 48 2.05 47 1.88 46 1.75 45 1.65
44 1.56 43 1.48 42 1.41 41 1.34 40 1.28
39 1.23 38 1.18 37 1.13 36 1.08 35 1.04
34 0.99 33 0.95 32 0.92 31 0.88 30 0.84
29 0.81 28 0.77 27 0.74 26 0.71 25 0.67
24 0.64 23 0.61 22 0.58 21 0.55 20 0.52
19 0.50 18 0.47 17 0.44 16 0.41 15 0.39
14 0.36 13 0.33 12 0.31 11 0.28 10 0.25
9 0.23 8 0.20 7 0.18 6 0.15 5 0.13
4 0.1 3 0.08 2 0.05 1 0.03 0 0.00
1 φC (PLC )
LD
F (zα/2 )− = 1− (2)
2 φC (PLD )
which means
3 φC (PLC ) φC (PLC )
LD
zα/2 = F −1 − if 100 1 − % < 50% . (3)
2 φC (PLD ) φC (PLD )
If n(PLD ) = 1, then SLD = 0. The new cost value of each link is as follow:
ω
Cf ct(e, ω) = max{ 1, 1 + (c(e) − postLD ) }, where 0 ≤ ω ≤ 1 (6)
0.5
Meanwhile, PLC (s, d) is computed by only taking the link-cost into account.
So, φD (PLC ) is always greater than or equal to φD (PLD ). If φD (PLC ) is decreased
(PLD )
by 100 1 − φφDD (PLC )
%, then the decreased value is to be φD (PLD ). Since the
new delay value of each link can be derived by the same manner used in the case
of PLD :
1−ω
Df ct(e, ω) = max{ 1, 1 + (d(e) − postLC ) (7)
0.5
On Algorithm for Efficiently Combining Two Independent Measures 993
ω
1 + (c(e) − post LD )
0.5
1 1 + (c(e) − post LD )
1 + (c(e) − post LD ) × 2
0 w 0.5 0 ≤ ω ≤1 1
MOVEMENT for w
1T w
0 0.5 1
Once the Cf ct(e, ω) and the Df ct(e, ω) are computed, we calculate the new
value Cf ct(e, ω) × Df ct(e, ω) for each link in G. Because the best reasonable
greedy method could be satisfied both the new cost value and the new delay
value. Thus, links with low value of Cf ct(e, ω) × Df ct(e, ω) should be selected.
We will now get down to the center of this new parameter. The weight ω goes
deep into the heart of this parameter. Here is the Fig. 2 which shows the role
of ω. If ω is nearly 0, then link values are concentrated on the low delay. Nearly
1 contrasts with nearly 0. One of the notable features of ω is the regulation of
path cost and delay. We use the Dijkstra’s shortest path algorithm with the new
weight parameter.
1. Compute two paths PLD and PLC for the source and a destination.
2. Compute C̄ = φn(PC (PLD )
LD )
and D̄ = φn(PD (PLC )
LC ) φD (PLD )
3. Compute F −1 32 − φφCC (P
(PLC )
LD )
and F −1 3
2 − φD (PLC ) i.e., zα/2 and zα/2 .
LD LC
6. We obtain the new value, Cf ct(e, ω) × Df ct(e, ω), for each link in G.
Fig. 3 and 4 are good illustrative examples of the new weight parameter.
Fig. 3 shows a given network topology G. Link costs and link delays are shown
to each link as a pair (cost, delay). To construct a path from the source node v0
994 M. Kim, Y.-C. Bang, and H. Choo
\ O[SX]P
]
O_SXP
OXSX`P ^
OYWS^P OXSXWP
OXZS]P
O`SXP ( cost , delay )
OX\SX`P Z OYSX]P
Y Least Cost Path
V Least Delay Path
Fig. 3. A given network G, least cost path PLC and least delay path PLD
\ X[U`Y \ XZU^X
] ]
XUWW ZU]_
YWU`Y ^ X[U`[ ^ YUZ[
XUWW YU`Y XWU__
XUWW ]U]_
XUWW [UY_
YWU`Y Z XX^U]` Z XWU^[
Y X[U`Y Y
V V
]U`Y XUWW \UX[ [U__
[ [
YU`Y X\U]\
X X
V W V W
XUWW XUWW
\ _U\X XU`Y
\
]
]
^UY[ `U`Y
]U`_ ^ ^
XUWW XUWW
Y[UW[ XU\_
X[UY[ X`U`Y ZZU`Y
_U][ XXU`Y
XX_U_` Z YZU`Y
Y \UX_ Z XUWW
Y
V V
YU^_ XWUW[ XUWW XZU`Y
[ [
YYU[\ X`U`Y
X X
V W V W
XUWW XUWW
to the destination node v4 , we consider either link cost or link delay. The paths
selected as PLC and PLD are shown in Fig. 3. Fig. 4 shows the paths computed
by the new parameter for each weight ω. The new weight parameter is obtained
as follows:
On Algorithm for Efficiently Combining Two Independent Measures 995
13 + 20 + 8 + 9
C̄ = = 12.5 (8)
, 4
(13 − C̄)2 + (20 − C̄)2 + (8 − C̄)2 + (9 − C̄)2 √
SLD = = 29.67 (9)
4−1
φC (PLC ) 8
100 1 − % = 100(1 − )% = 84%. (10)
φC (PLD ) 50
∴ zα/2
LD
≈ 3.29 (11)
√
29.67
postLD = 12.5 − 3.29 × √ = 3.54 (12)
4
ω ∀
Cf ct(e, ω) = max{ 1, 1 + (c(e) − 3.54) }, e∈E (13)
0.5
19 + 16 + 10 + 16
D̄ = = 15.25 (14)
, 4
(19 − D̄)2 + (16 − D̄)2 + (10 − D̄)2 + (16 − D̄)2 √
SLC = = 14.25 (15)
4−1
φD (PLD ) 19
100 1 − % = 100(1 − )% = 68.85% = 69%. (16)
φD (PLC ) 61
∴ zα/2
LC
≈ 3.29 (17)
√
14.25
postLC = 15.25 − 3.29 × √ = 9.04 (18)
4
1−ω ∀
Df ct(e, ω) = max{ 1, 1 + (d(e) − 9.04) }, e∈E (19)
0.5
∀
∴ Cf ct(e, ω) × Df ct(e, ω), e ∈ E. (20)
0.5 } = 4.88
In Fig. 4(b), we calculate Cf ct((v1 , v2 ), 0.3) = max{ 1, 1+(10−3.54) 0.3
and Df ct((v1 , v2 ), 0.3) = max{ 1, 1 + (4 − 9.04) 1−0.3
0.5 } = 1 at link (v 1 , v2 ) with
ω = 0.3. By the same manner, we obtain all new values in the given network.
Fig. 4 shows the paths constructed by the new parameter for each weight ω.
As indicated in Table 2, the path cost order is φC (PLC ) ≤ φC (Pω:1.0 ) ≤
φC (Pω:0.7 ) ≤ φC (Pω:0.3 ) ≤ φC (Pω:0.0 ) ≤ φC (PLD ) and the path delay order is
φD (PLD ) ≤ φD (Pω:0.0 ) ≤ φD (Pω:0.3 ) ≤ φD (Pω:0.7 ) ≤ φD (Pω:1.0 ) ≤ φD (PLC ).
Therefore, our method is quite likely a performance of a k th shortest path algo-
rithm that has the high time complexity.
4 Performance Evaluation
4.1 Random Network Topology for the Simulation
Random graphs are the acknowledged model for different kinds of networks, com-
munication networks in particular. There are many algorithms and programs,
but the speed is usually the main goal, not the statistical properties. In the last
decade the problem was discussed, for example, by B.M. Waxman (1993) [12],
996 M. Kim, Y.-C. Bang, and H. Choo
M. Doar (1993, 1996) [2, 3], C.-K. Toh (1993) [11], E.W. Zegura, K.L. Calvert,
and S. Bhattacharjee (1996) [14], K.L. Calvert, M. Doar, and M. Doar (1997) [1],
R. Kumar, P. Raghavan, S. Rajagopalan, D. Sivakumar, A. Tomkins, and E. Up-
fal (2000) [6]. They have presented fast algorithms that allow generate random
graph with different properties, similar to real communication networks, in par-
ticular. But none of them have discussed the stochastic properties of generated
random graphs. A.S. Rodionov and H. Choo [9, 10] have formulated two major
On Algorithm for Efficiently Combining Two Independent Measures 997
demands to the generators of random graph: attainability of all graphs with re-
quired properties and the uniformity of their distribution. If the second demand
is sometimes difficult to prove theoretically, it is possible to check the distri-
bution statistically. The random graph is similar to real networks. The method
uses parameters n - the number of nodes in networks, and Pe - the probability
of edge existence between any node pair.
5 Conclusion
This paper investigated the efficiency routing problem in point-to-point
connection-oriented networks with a QoS. We formulated the new weight pa-
rameter that simultaneously took into account both the cost and the delay. The
cost of least delay path is relatively more expensive than the cost of least cost
path, and moreover, the delay of least cost path is relatively higher than the
delay of least delay path. The weight ω plays on important role in combining
the two the measures. If the ω is nearly 0, then the path delay is low. Otherwise
the path cost is low. Thus, the efficient routing path can be determined once
the ω is selected. It seems reasonable to use the new weight parameter. When
network users have various QoS requirements, the proposed weight parameter
proves to be very informative.
References
1. K.L. Calvert, M. Doar, and M. Doar, “Modelling Internet Topology,” IEEE Com-
munications Magazine, pp. 160-163, June 1997.
2. M. Doar, Multicast in the ATM environment. PhD thesis, Cambridge Univ., Com-
puter Lab., September 1993.
3. M. Doar, “A Better Mode for Generating Test Networks,” IEEE Proc. GLOBE-
COM’96, pp. 86-93, 1996.
998 M. Kim, Y.-C. Bang, and H. Choo
Jae Sik Chang1, Eun Yi Kim2, KeeChul Jung3, and Hang Joon Kim1
1
Dept. of Computer Engineering, Kyungpook National Univ., Daegu, South Korea
{jschang, hjkim}@ailab.knu.ac.kr
2
Scool of Internet and Multimedia, NITRI∗, Konkuk Univ., Seoul, South Korea
eykim@konkuk.ac.kr
3
School of Media, College of Information Science, Soongsil University
kcjung@ssu.ac.kr
Abstract. This paper presents active contours based method for hand tracking
using color information. The main problem in active contours based approach is
that results are very sensitive to location of the initial curve. Initial curve far
form the object induces more heavy computational cost, low accuracy of re-
sults, as well as missing the object that has a large movement. Therefore, this
paper presents a hand tracking method using a mean shift algorithm and active
contours. The proposed method consists of two steps: hand localization and
hand extraction. In the first step, the hand location is estimated using mean
shift. And the second step, at the location, evolves the initial curve using an ac-
tive contour model. To assess the effectiveness of the proposed method, it is
applied to real image sequences which include moving hand.
1 Introduction
Vision based gesture recognition is an important technology for perceptual human-
computer interaction, and has received more and more attention in recent years [1].
Hand tracking is an essential step for gesture recognition, where location or shape of
the hand must be known before recognition.
Recently, active contour models are successfully used for object boundary detection
and tracking because of their ability to effectively descript curve and elastic property.
So, they have been applied to many applications such as non-rigid object (hand, pedes-
trian and etc.) detection and tracking, shape warping system and so on [2, 3, 4].
In the tracking approaches based on active contour models, the object tracking
problem is considered as a curve evolution problem, i.e., initial curve is evolved until
it matches the object boundary of interest [2, 3]. The curve evolution based ap-
proaches have been used due to their following advantages: 1) saving computation
time, and 2) avoiding local optima. Generally, the curve evolutions are computed in
narrow band around the current curve. This small computation area induces low com-
putation cost. And starting point of evolution (initial curve) near the global optimum
(object boundary) guarantees practically the convergence to global optimum.
∗
Next-Generation Innovative Technology Research Institute.
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 999 – 1006, 2005.
© Springer-Verlag Berlin Heidelberg 2005
1000 J.S. Chang
However the advantages are very sensitive to conditions of the initial curve such as
location, scale and shape. Among these conditions, location of the initial curve has a
high effect on the results. Initial curve far from the object induces more heavy compu-
tational cost, low accuracy of results, as well as missing the object that has a large
movement.
Accordingly, this paper proposes a method for hand tracking using mean shift algo-
rithm and active contours. The method consists of two steps: hand localization and
hand extraction. In the first step, the hand location is estimated using mean shift. And
the second step, at the location, evolves the initial curve using an active contour
model. The proposed method not only develops the advantage of the curve evolution
based approaches but also adds the robustness to large amount of motion of the ob-
ject. Additionally, we use skin color information as hand feature, which is represented
by a 2D-Gaussian model. The use of skin color information endows the proposed
method for robustness to noise.
The remainder of the paper is organized as follows. Chapter 2 illustrates how to
localize the hand using mean shift algorithm and active contours based hand detection
method is shown in chapter 3. Experimental results are presented in chapter 4. Fi-
nally, chapter 5 concludes the paper.
2 Hand Localization
The mean shift algorithm is a nonparametric technique that climbs the gradient of a
probability distribution to find the nearest dominant mode (peak) [5, 6]. The algo-
rithm has recently been adopted as an efficient technique for object tracking [6, 7].
The algorithm simply replacing the search window location (the centroid) with a
object probability distribution {P(Iij| o)}i,j=1,…,IW,IH(IW: image width, IH: image height)
which represent the probability of a pixel (i,j) in the image being part of object, where
o is its parameters and I is a photometric variable. The search window location is
simply computed as follows [5, 6, 7]:
x = M10/M00 and y = M01/M00 , (1)
where Mab is the (a + b)th moment as defined by
M ab (W ) = ¦i
i , j∈W
a
j b P( I ij | α o ).
3 Hand Extraction
Zhu and Yuille proposed a hybrid approach to image segmentation, called region
competition [8]. Their basic functional is as follows:
M
μ ½
E[Γ, {α i }] = ¦ ® ³ ds − log P({I s : s ∈ Ri }| α i ) + λ ¾ (2)
i =1 ¯ 2 ¿
Ri
where ī is the boundary in the image, P(½) is a specific distribution for region Ri, i is
its parameters, M is the number of the regions, s is a site of image coordinate system,
and μ and are two constants.
To minimize the energy E, steepest descent can be done with respect to boundary
G
ī. For any point v . On the boundary ī we obtain:
G
dv δE[Γ, {α i }]
=− G (3)
dt δv
where the right-hand side is (minus) the functional derivative of the energy E.
G
Taking the functional derivative yields the motion equation for point v :
G
dv μ G G ½
= ¦ ®− k k ( vG ) nk ( vG ) + log P ( I ( vG ) | α k )nk ( vG ) ¾ (4)
dt k∈Q( vG ) ¯ 2 ¿
where Q( vG ) = {k | vG lies on Γk } , i.e., the summation is done over those regions Rk for
G G
which v is on īk. k k (vG ) is the curvature of īk at point v and nG k (vG ) is the unit normal to
G
īk at point v .
Region competition contains many of the desirable properties of region growing
and active contours. Indeed we can derive many aspects of these models as special
cases of region competition [8, 9]. Active contours can be a special case in which
there are two regions (object region Ro and background region Rb) and a common
boundary ī as shown in follows:
G
G G
= − μk o ( vG ) no ( vG ) + (log P( I ( vG ) | α o ) − log P( I ( vG ) | α b ) )no ( vG )
dv
(5)
dt
1002 J.S. Chang
The active contour evolution was implemented using the level set technique. We
represent curve ī implicitly by the zero level set of function u : ℜ2 → ℜ, with the
region inside ī corresponding to u > 0. Accordingly, Eq. (5) can be rewritten by the
following equation, which is a level set evolution equation [2, 3]:
du ( s )
= − μk s ∇u + (log P( I s | α o ) − log P( I s | α b ) ) ∇u , (6)
dt
where
u xx y 2y − 2u y u x u xy + u yy u x2
k= .
(u x2 + u y2 ) 3 / 2
The aim of the hand extraction is to find closed curve that separates the image into
hand and background regions. The hand to be tracked is assumed to be characterized
by skin color which has a 2-D Gaussian distribution P(Is| o) in chromatic color space.
Unlike in the hand region, the background is difficult to be characterized a simple
probability distribution. The distribution is not clustered in a small area of a feature
space due to their variety. However, it is spread out across the whole space uniformly
for a variety of background regions. From that, we can assume that the photometric
variable of background is uniformly distributed in the space. Thus, the distribution
P(Is| b) can be proportional to a constant value.
Active contour model based hand boundary extraction algorithm is as follows:
1. Set up initial level values u, and repeat Steps 2 to 3 until terminal condition
is satisfied.
2. Update level values using Eq. (6) within narrow band around curve, zero
level set.
3. Reconstruct the evolved curve, zero level set.
4. Output the final evolved curve as the object boundary.
To set up the initial level values, we use a Euclidian distance mapping technique.
Euclidian distance between each pixel of the image and initial curve is assigned to the
pixel as a level value. In general active contours, the search area for optimal boundary
curve is restricted to the narrow band around curve. This not only save computational
cost but also avoid the local optima when the initial curve is near the hand boundary.
However it makes the evolving curve miss the boundary when the curve is far from
the hand.
After updating the level values, the approximated final propagated curve, the zero
level set, is reconstructed. Curve reconstruction is accomplished by determining the
zero crossing grid location in the level set function. The terminal condition is satisfied
when the difference of the number of pixel inside contour ī is less than a threshold
value chosen manually.
Real Time Hand Tracking Based on Active Contour Model 1003
4 Experimental Results
This paper presents a method for tracking hand which has a distribution over color.
This section focuses on evaluating the proposed method. In order to assess the effec-
tiveness of the proposed method, it was compared with those obtained using the ac-
tive contours for distribution tracking proposed by Freedman et al. [2].
Freedman’s method finds the region such that the sample distribution of the interior
of the region most closely matches the model distribution using active contours. For
matching distribution, the method examined Kullback-Leibler distance and Bhat-
tacharyya measure. In this experiment, we only have tested the former.
To quantitatively evaluate the performance of the two methods, The Chamfer distance
was used. This distance has been many used as matching measure between shapes
[10]. To calculate the distance, ground truths are manually extracted from images to
construct accurate boundaries of each hand. Then, the distances between the ground
truth and the hand boundaries extracted by the respective method are calculated.
The Chamfer distance is the average over one shape of distance to the closet point on
the other and defined as
1 1 n 2
C (ΓH , ΓG ) = ¦ vi
3 n i =1
(7)
where īH and īG are hand boundary detected by the proposed method and manually,
respectively. In Eq. (7), vi are the distance values from each point on īH to the closet
point on īG and n is the number of points in the curve. The distance values vi were
described in [10].
For photometric variable which describe the hands, we use skin-color information
which is represented by a 2D-Gaussian model. In the RGB space, color representation
includes both color and brightness. Therefore, RGB is not necessarily the best color
representation for detecting pixels with skin color. Brightness can be removed by
dividing the three components of a color pixel (R, G, B) according to intensity. This
space is known as chromatic color, where intensity is a normalized color vector with
two components (r, g). The skin-color model is obtained from 200 sample images.
Means and covariance matrix of the skin color model are as follows:
m = ( r , g ) = (117.588, 79.064) ,
ª σ 2
ρ X ,Y σ g σ r º ª 24.132 − 10.085º
Σ=« r
»=
σ g2 ¼» «¬− 10.085 8.748 »¼
.
¬« ρ X ,Y σ r σ g
The hand tracking result in real image sequence is shown in Fig. 1. In the first
frame, an initial curve was manually selected around the object, and then the curve
was evolved using only active contours. The proposed method is successful in track-
ing through the entire 80-frame sequence. Freedman’s method also succeeds in the
1004 J.S. Chang
hand tracking in the sequence, because the sequence has high capture rate and hand
has not a large movement. However Freedman’s method takes lager time to track the
hand than the proposed method as shown in Table 1. The Chamfer distances of the
two methods are shown in Fig. 2. In the case of the proposed method, hand localiza-
tion using mean shift is considered as the first iteration. The distance in the proposed
method decreases more dramatically and the method satisfies the stopping criteria
after less iteration than Freedman’s method.
6 proposed method
5
Freedman's method
Chamfer distance
0
0 1 2 3 4 5 6 7
Iteration
One of the problems of almost active contours is that the search areas for optima
are limited to the narrow band around curve. Because of it, the active contours have
difficulties to track objects that have large amount of motion. The other side, in the
Real Time Hand Tracking Based on Active Contour Model 1005
proposed method, the initial curve is moved near the global optimum before curve
evolution. Accordingly, the method is more effective to track the hand that have
large amount of motion. Fig.3 and 4 show the tracking results, in an image sequence
which includes hand that have large amount of motion, extracted by proposed and
Freedman’s methods, respectively. As shown in Fig.3 and 4, the proposed method
track hand boundary accurately, on the contrary, the Freedman’s method fails to
track the hand.
1st frame 2nd frame 3rd frame 4th frame 5th frame 6th frame
Feedman’s
0.192000 0.360000 0.359000 0.453000 0.188000 0.438000
method
proposed
0.192000 0.188000 0.187000 0.218000 0.156000 0.188000
method
5 Conclusions
In this paper, we have proposed an active contour model based hand tracking with
mean shift algorithm. In the approaches based on active contour models, the object
tracking problem is considered as a curve flow problem and their results are very
sensitive to condition of initial contour. Bad initial condition induces a heavy compu-
1006 J.S. Chang
tational cost, low accuracy of results, and missing the object that has a large move-
ment. Accordingly, the proposed method consisted of two steps: hand localization and
hand extraction. The first step finds the hand location using a mean shift algorithm.
And at the location, the initial curve is evolved using an active contour model to find
object boundary. The experimental results shown demonstrate that the proposed
method yields accurate tracking results despite low computational cost.
Acknowledgement
This work was supported by grant No. F01-2004-000-10402-0 from the International
Cooperative Research Program of the Korea Science & Engineering Foundation.
References
1. Shan, C., Wei, Y., Tan, T., Ojardias, F.: Real Time Hand Tracking by Combining Particle
Filtering and Mean Shift. Proceeding of the Sixth IEEE International Conference on
Automatic Face and Gesture Recognition. (2004) 669-674
2. Freedman, D., Zhang, T.: Active Contours for Tracking Distributions. IEEE Transactions
on Image Processing. Vol. 13, No. 4 (2004) 518-526
3. Chan, T. F., Vese, L. A.: Active Contours Without Edges. IEEE Transactions on Image
Processing. Vol. 10, No. 2 (2001) 266-277
4. Gastaud, M., Barlaud, M., Aubert, G.: Combining Shape Prior and Statistical Features for
Active Contour Segmentation. IEEE Transactions on Circuits and Systems for Video
Technology. Vol. 14. No. 5 (2004) 726-734
5. Kim, K. I., Jung, K., Kim, J. H.:Texture-Based Approach for Text Detection in Image Us-
ing Support Vector Machines and Continuously Adaptive Mean Shift Algorithm. IEEE
Transactions on Pattern Analysis and Machine Intelligence. Vol. 25, No. 12 (2003) 1631-
1639
6. Bradski, G. R.: Computer Vision Face Tracking For Use in a Perceptual User Interface. In-
tel Technology Journal 2nd quarter (1998) 1-15
7. Jaffre, G., Crouzil, A.: Non-rigid Object Localization From Color Model Using Mean
Shift. In Proceedings of the International Conference on Image Processing, Vol. 3 (2003)
317-319
8. Zhu, S. C., Yuille, A.: Region Competition: Unifying Snakes, Region Growing, and
Bayes/MDL for Multiband Image Segmentation. IEEE Transactions on Pattern Analysis
and Machine Intelligence. Vol. 18, No 9 (1996) 884-900
9. Mansouri, A.: Region Tracking via Level Set PDEs without Motion Computation. IEEE
Transactions on Pattern Analysis and Machine Intelligence. Vol. 24, No. 7 (2002) 947-961
10. Borgefors, G.: Hierarchical Chamfer Matching: A Parametric Edge Matching Algorithm.
IEEE Transactions on Pattern Analysis and Machine Intelligence. Vol. 10. No. 11 (1998)
849-865
Hardware Accelerator for Vector Quantization
by Using Pruned Look-Up Table
1 Introduction
VQ is an important technique for image compression, and has been proven to
be simple and efficient [1]. VQ can be defined as a mapping from k-dimensional
Euclidean space into a finite subset C of Rk . The set C is known as the codebook
and C = {ci |i = 1, 2, . . . , N }, where ci is a codeword and N is the codebook size.
To compress an image, VQ comprises two functions: an encoder and a decoder.
The VQ encoder first divides the image into Nw × Nh blocks (or vectors). Let
the block size be k (k = w × h), then each block is a k-dimensional vector.
VQ selects an appropriate codeword cq = [cq(0) , cq(1) , . . . , cq(k−1) ] for each image
vector x = [x(0) , x(1) , . . . , x(k−1) ] such that the distance between x and cq is
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 1007–1016, 2005.
c Springer-Verlag Berlin Heidelberg 2005
1008 P.-C. Wang et al.
the smallest, where cq is the closest codeword of x and cq(j) denotes the jth-
dimensional value of the codeword cq . The distortion between the image vector
x and each codeword ci is measured by the squared Euclidean distance, i.e.,
k−1
d(x, ci ) = x − ci 2 = [x(j) − ci(j) ]2 . (1)
j=0
After the selection of the closest codeword, VQ replaces the vector x by the index
q of cq . The VQ decoder has the same codebook as that of the encoder. For each
index, VQ decoder can easily fetch its corresponding codeword, and piece them
together into the decoded image.
The codebook search is the major bottleneck in VQ. From equation (1), the
calculation of the squared Euclidean distance needs k subtractions and k multi-
plications to derive k [x(j) − ci(j) ]2 s. Since the multiplication is a complex opera-
tion, it increases the total computational complexity of equation (1). Therefore,
speeding up the calculation of the squared Euclidean distance is a major hurdle.
Furthermore, an efficient hardware implementation is also attractive to reduce
the VQ computation.
Many methods have been proposed to shorten VQ encoding time [2,3,4,5,6].
These schemes emphasize computation speed, table storage and image qual-
ity. The existing schemes focus on software-based implementation to reduce the
computation. However, such schemes also incur extra computation and limit the
improvement. Moreover, these schemes did not utilize the geometrical informa-
tion implied in the codewords. In this work, we propose an adaptive scheme
“Pruned Look-Up Table” (PLUT) which selects the computed codewords. The
new scheme uses bitmaps to represent the geometric relation within codewords.
Accordingly, the search procedure could refer the information to sift unlikely
codewords easily. Since the lookup procedure is simple enough, the proposed
scheme is suitable for hardware implementation. With the bitmaps containing
the positional information to represent the geometric relation within codewords,
the hardware implementation can succinctly reduce the required computation of
VQ. Simulation results demonstrate the effectiveness. The rest of this paper is
organized as follows. The proposed scheme and implementation are presented in
Section 2. Section 3 addresses the performance evaluation. Section 4 concludes
the work.
2 PLUT Method
To compress an image through VQ, the codebook must be generated first. The
codebook is gathered through approach, like the Lindo-Buzo-Gray (LBG) al-
gorithm [7], based on one or multiple images. The quality of the compressed
images ties to whether the codebook is well trained, i.e., the squared Euclidean
distance between the tested vector and the matched codeword in the adopted
codebook is small. Thus, a well trained codebook could improve the compression
quality. As implied in the equation of squared Euclidean distance calculation,
Hardware Accelerator for Vector Quantization 1009
image, where α(i,j) and β(i,j) denote the original and quantized gray level of pixel
(i, j) in the image, respectively. A larger PSNR value has been proven to have
preserved the original image quality better. For the compressed images with bet-
ter quality, including “Lena” and “Zelda”, most of their smallest one-dimensional
distances are less than 8. Furthermore, 99% smallest one-dimensional distances
are less than 4. However, the ratio is reduced to 93% ∼ 97% for the other images
since their quality of compression is also decreased.
100,000
10,000
N um berofTested Vectors
1,000
100
10
0
0 1 2
3 4 5
6 7 8
9 10 11
M inim um O ne-D im ensionalD istance 12 13 14
betw een the Tested Vectorand its M atched C odew ord 15 16 17
18 19 20
21
Lena (PSN R :32.56) G irl(PSN R :30.75)
Airplane (PSN R :29.53) Zelda (PSN R :33.35)
Fig. 1. The Distribution of the Smallest One-dimensional Distance for Different Images
C1 C2 0 1 2 3 4
0 0 0
1 0 V1 C1 1
0 1 C2 2
0 0 V2 3
0 0 4
0 0 0 1 0 C1
Per-C odew ord
Bitm aps 0 0 1 0 0 C2
C1 C2 0 1 2 3 4
1 0 0
1 1 V1 C1 1
1 1 C2 2
0 1 V2 3
0 0 4
0 0 1 1 1 C1
0 1 1 1 0 C2
Per-Position Bitmap
Bitmap-Filling Algorithm
For each dimension j, ∀j ∈ {0, k − 1} BEGIN
For each position p, ∀p ∈ {0, m − 1} BEGIN
For each codeword i, ∀i ∈ {0, N − 1} BEGIN
If p − R ≤ ci(j) ≤ p + R, Bj,p
R
(i) = 1.
R
Otherwise, Bj,p (i) = 0.
END
END
END
N bits
B k-1 B1 B0
O R operations
DR
EN ABLE
ALU
ALU
.
.
.
C0 C1 C2
N -bitPer-Position Bitmap
for Dimension j Bi TLU T
C O D EBO O K
Fig. 6. Hardware Implementation of PLUT Scheme
3 Performance Evaluation
We have conducted several simulations to show the efficiency of PLUT. All im-
ages used in these experiments were 512 × 512 monochrome still images, with
each pixel of these images containing 256 gray levels. These images were then
divided into 4 × 4 pixel blocks. Each block was a 16-dimensional vector. We
used image “Lena” as our training set to generate codebook C. In the previous
literature [1, 2], the quality of an image compression method was usually esti-
mated by the following five criteria: compression ratio, image quality, execution
time, extra memory size, and the number of mathematical operations. All of
our experimental images had the same compression ratio, hence only the lat-
ter four criteria are listed to evaluate the performance of the proposed scheme.
The quality of the images are estimated by the PSNR, which is addressed in
Section 2. The extra memory denotes the storage needed for executing PLUT
scheme. As for the mathematical operations, the number of the calculated code-
words is also considered since the operations for each codeword are identical. In
addition, the compression time is evaluated based on software implementation
since the performance of hardware implementation can be illustrated from the
number of calculated codewords.
The decompressed images based on the PLUT scheme with different ranges
are shown in Fig. 7. Basically, the image quality of PLUT is improved gradually
as the range increases, such as the PSNR value for R = 0 is worse than that
1014 P.-C. Wang et al.
for R = 1 and R = 2. However, the quality of some area shows different trend,
as shown in the circles of Fig. 7(a),7(b),7(c). This is mainly because for several
blocks, there is no candidate derived by PLUT with R = 0, thus full search
is executed for these blocks. As the range increases to 1 or 2, some codewords
are selected for calculation of Euclidean distance. Nevertheless, the codewords
cannot yield better precision than full search. The occurrence of such faults
ties to the quality of the used codebook. Also, these faults can be alleviated by
adopting larger range or enabling full search as the squared Euclidean distance
is larger than a certain value. As shown in Fig. 7(d), the image quality is almost
identical to VQ and TLUT while PLUT range is enlarged to 4.
The performance of the software-based implementation is illustrated in Table
1. The experiments were performed on an IBM PC with a 500-MHz Pentium
CPU. VQ indicates the vector quantization without any speedup. The ranges
Hardware Accelerator for Vector Quantization 1015
for PLUT vary from 0 to 8. With a smaller range, the image quality is degraded
since the occurrence of false matches is increased. Nevertheless, the calculated
codewords are reduced by the per-position bitmaps, the execution time is less-
ened as well. Full search requires no extra storage while TLUT needs 256 bytes.
For PLUT scheme, the extra storage is 128 Kbytes for bitmap and 256 bytes for
TLUT. If the hardware implementation is considered, the bitwise operation cab
be parallelized to further shorten the vector quantizing time.
In summary, with R = 2, the proposed scheme can reduce more than 50%
computation without losing image quality. If a hardware implementation is
adopted, 25% computation can be further eliminated since only a fourth of code-
words are calculated for squared Euclidean distance. Therefore, only a fourth of
computation is required.
1016 P.-C. Wang et al.
4 Conclusion
In this study, we present a new novel algorithm “PLUT” for codebook search
in VQ. The new scheme is based on the observation that the minimal one-
dimensional distance between the tested vector and the matched codeword is
usually small. To represent the geometrical information, PLUT adopts bitwise
data structure, which is simple and storage efficient. By setting a given range,
the PLUT can sift out unfeasible codewords easily, hence it is suitable for hard-
ware implementation. A conceptual hardware implementation is also revealed.
Since the performance of PLUT ties to the quality of codebook, PLUT is suit-
able for high-quality image compression. The performance evaluation further
demonstrates that 75% computation can be reduced with an extra 128 Kbytes
storage.
References
1. Gersho, A., Gray, R. M.: Vector Quantization and Signal Compression. Boston,
MA: Kluwer (1992).
2. Chen, T. S., Chang, C. C.: An Efficient Computation of Euclidean Distances Using
Approximated Look-Up Table. IEEE Trans. Circuits Syst. Video Technol., Vol. 7
(2000) 594-599.
3. Davidson, G. A., Cappello, P. R., Gersho A., Systolic architectures for vector quan-
tization, IEEE Trans. Acoust. Speech, Signal Processing, Vol. 36 (1988) 1651-1664.
4. Park, H., Prasana, V. K.: Modular VLSI architectures for real-time full-search-
based vector quantization. IEEE Trans. Circuits Syst. Video Technol., Vol. 3 (1993)
309-317.
5. Ramamoorthy, P. A., Potu, B., Tran, T.: Bit-serial VLSI implementation nof vector
quantizer for real-time image coding. IEEE Trans. Circuits Syst., Vol. 36 (1989)
1281-1290.
6. Rizvi, S. A., Nasrabadi, N. M.: An efficient euclidean distance computation for
quantization using a truncated look-up table. IEEE Trans. Circuits Syst. Video
Technol., Vol. 5 (1995) 370-371.
7. Linde, Y., Buzo, A., Gray, R. M.: An algorithm for vector quantizer design. IEEE
Trans. Communications, Vol. 28 (1980) 84-95.
8. Chang, H. Y., Wang, P. C., Chen, R. C., Hu, S. C.: Performance Improvement of
Vector Quantization by Using Threshold. Lecture Notes in Computer Science, Vol.
3333 (2004) 647-654.
Optimizations of Data Distribution Localities in
Cluster Grid Environments
1 Introduction
One of the virtues of high performance computing is to integrate massive computing
resources for accomplishing large-scaled computation problems. The common
characteristic of these problems is enormous data to be processed. In this aspect, clusters
have been employed as a platform for a number of such applications including
supercomputing, commercial applications and grand challenge problems. The use of
cluster of computers as a platform for high-performance and high-availability computing
is mainly due to their cost-effective nature. As the growth of Internet technologies, the
computational grids become widely accepted paradigm for solving these applications.
*
The correspondence address
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 1017 – 1027, 2005.
© Springer-Verlag Berlin Heidelberg 2005
1018 C.-H. Hsu et al.
2 Related Work
PC clusters have been widely used for solving grand challenge applications due to their
good price-performance nature. With the growth of Internet technologies, the
Optimizations of Data Distribution Localities in Cluster Grid Environments 1019
computational grids [5] become newly accepted paradigm for solving these
applications. As the number of clusters increases within an enterprise and globally,
there is the need for a software architecture that can integrate these resources into
larger grid of clusters. Therefore, the goal of effectively utilizing the power of
geographically distributed computing resources has been the subject of many research
projects like Globus [7, 9] and Condor [10]. Frey et al. [10] also presented an
agent-based resource management system that allowed users to control global
resources. The system is combined with Condor and Globus, gave powerful job
management capabilities is called Condor-G.
Researches on computing grid have been broadly discussed on different aspects, such
as security, fault tolerance, resource management [10, 2, 4], job scheduling [18, 19, 20],
and communication optimizations [21, 6]. From the issue of communication
optimizations, Dawson et al. [6] and Zhu et al. [21] addressed the problems of
optimizations of user-level communication patterns in local space domain for
cluster-based parallel computing. Plaat et al. analyzed the behavior of different
applications on wide-area multi-clusters [17, 3]. Similar researches were studied in the
past years over traditional supercomputing architectures [13, 14]. Guo et al. [12]
eliminated node contention in communication step and reduced communication steps with
schedule table. Y. W. Lim et al. [16] presented an efficient algorithm for block-cyclic
data realignments. A processor mapping technique presented by Kalns and Ni [15] can
minimize the total amount of communicating data. Namely, the mapping technique
minimizes the size of data that need to be transmitted between two algorithm phases. Lee
et al. [11] proposed similar method to reduce data communication cost by reordering the
logical processors’ id. They proposed four algorithms for logical processor reordering.
They also compared the four reordering algorithms under various conditions of
communication patterns.S
There are significant improvements of the above researches for parallel
applications on distributed memory multi-computers. However, most techniques
applicable only for applications running on local space domain, like single cluster or
parallel machine. For a global grid of clusters, these techniques become inapplicable
due to various factors of Internet hierarchical and its communication latency. In this
following discussion, our emphasis is on minimizing the communication costs for data
parallel programs on cluster grid and on enhancing data distribution localities.
manner. As the algorithm goes into another phase that requires to access fine-grain
sub-block data patterns, processors might divide their own local data set into
sub-blocks locally and then exchange these sub-blocks with corresponding processors.
Figure 1 shows an example of this scenario. In the initial distribution, the global array
is evenly decomposed into nine data sets and distributed over processors that are
selected from three clusters. In the target distribution, each node divides its local data
into three sub-blocks evenly and distributes them to the same processor set in a similar
manner. Because these data blocks might be required and located in different
processors during runtime, efficient communications of inter-processors or
inter-clusters become the major subject in term of performance for these applications.
Our following emphasis is on how to reduce the inter-cluster communications of data
parallel programs when performing dynamic data realignment on cluster grid.
I n itia l D is tr ib u tio n
C lu s te r- 1 C lu s te r- 2 C lu s te r- 3
P 0 P 1 P 2 P 3 P 4 P 5 P 6 P 7 P 8
A B C D E F G H I
T a r g e t D is tr ib u tio n
C lu s te r 1 C lu ste r 2 C lu s te r 3 C lu s te r 1 C lu s te r 2 C lu ste r3 C lu s te r 1 C lu s te r 2 C lu s te r 3
P 0 P 1 P 2 P 3 P 4 P 5 P 6 P 7 P 8 P 0 P 1 P 2 P 3 P 4 P 5 P 6 P 7 P 8 P 0 P 1 P 2 P 3 P 4 P 5 P 6 P 7 P 8
a1 a2 a 3 b1 b 2 b3 c1 c2 c3 d1 d2 d3 e1 e2 e3 f1 f2 f3 g 1 g2 g3 h1 h2 h 3 i1 i2 i3
We first formulate the discussing problem in order to facilitate the explication of the
proposed approach. Given a global array and processors’ grid, the global array is
distributed over processors in BLOCK manner at the initiation of program execution.
Processors are requested to partition their local data block into K (partition factor)
equally sub-blocks and distribute them over corresponding processors in next
computational phase. Due to intricate assemblage of cluster grid, this paper also
assumes that each cluster provides the same number of nodes. According to this
assumption, we use C to denote the number of clusters in the grid; n to represent the
number of processors provided by a cluster; and P to be the total number of processors
in the cluster grid.
Now, we derive the cost model for evaluating the communication costs in cluster
grid and for demonstrating performance analysis in the following sections. Since
cluster grid is composed of heterogeneous cluster systems, the overheads of interior
communication in different clusters might different and therefore should be identified
individually. Let Ti represents the time of two processors both in Cluster-i to transmit
per unit data; Ii is the total number of interior communications within cluster i; for
external communication between cluster i and cluster j, Tij is used to represent the time
of processor p in cluster i and processor q in cluster j to transmit per unit data; similarly,
the total number of external communications between cluster i and cluster j is denoted
by Eij. According to these declarations, we can have equation
C C
Tcomm = ¦ I i × Ti + ¦ ( Eij × Tij ) . This equation explicitly defines the
i =1 i , j =1, i ≠ j
communication costs of a parallel program running on a cluster grid. However, there
Optimizations of Data Distribution Localities in Cluster Grid Environments 1021
are various factors might cause unstable communication delay over internet; it is
difficult to estimate accurate costs. As the need of a criterion for performance
modeling, integrating the interior and external communications among all clusters into
points is an alternative mechanism to get legitimate evaluation. Therefore, we totted
C
up the number of these two terms as |I| = ¦I
i =1
i , the number of interior
C
communications, and |E| = ¦ Eij , the number of external communications for the
i , j =1,i ≠ j
following discussion.
DP
P 0 P 1 P 2 P 3 P 4 P 5 P 6 P 7 P 8
SP
P 0 a1 a2 a3
P 1 b1 b2 b3
P 2 c1 c2 c3
P 3 d1 d2 d3
P 4 e1 e2 e3
P 5 f1 f2 f3
P 6 g1 g2 g3
P 7 h1 h2 h3
P 8 i1 i2 i3
C lu s te r -1 C lu s te r -2 C lu s te r -3
4.2 Algorithm
data exchange into local or group message passing. Such techniques were used in
several previous researches to minimize data transmission time of runtime array
redistribution. In cluster grid, the similar concept can be applied. In order to localize
the communication, we need to derive a mapping function produces sequence of
logical processors for grouping communications into local cluster. Figure 3 shows the
concept of our processor reordering technique. A reordering agent is used to
accomplish this process. The source data is partitioned and distributed to processors
into initial distributions (ID(PX)) according to the processor sequence derived from
reordering agent, where x is the processor id. To accomplish the target distribution
(TD(PX’)), the initial data is divided into sub-blocks and remapped to processors
according to the new processors id X’ that is also derived from the reordering agent.
Given distribution factor K and cluster grid with C clusters, for the case of K=n, the
reordering agent is functioned by the following mapping function.
F(X) = X’ = ¬ X / C¼ +(X mod C) * K
For general cases, i.e., K≠n, the reordering agent is functioned by the following
processor reordering algorithm as shown in Figure 4 .
Source Partitioning
Data Data
Alignment/
Dispatch
Master Node
SCA(x)
SCA(x)
SCA(x) Using offset
Generate decision
SD(Px) new Pid
Special Case
Exception
Reordering Handling
DCA(x)
DCA(x) SD(Px’)
DCA(x)
DD(Py) Algorithm
Reordering Agent
Fig. 3. The flow of data to logical processor mapping using processor reordering algorithm
Figure 5 shows the communication table of the same example after applying the
above reordering scheme. The source data is distributed according to the reordered
sequence of processors’ id, i.e., <P0, P3, P6, P1, P4, P7, P2, P5, P8> which is computed
by mapping function. In the target distribution, processor P0 distributes three
sub-blocks to processors P0, P1 and P2 in the same cluster. Similarly, processor P3
sends three sub-blocks to processors P3, P4 and P5 that are in the same cluster with P3;
and processor P6 sends e1, e2 and e3 to processors P6, P7 and P8 that causes three interior
communications. All other processors generate three interior communications too.
Optimizations of Data Distribution Localities in Cluster Grid Environments 1023
________________________________________________________
¬ ¼
________________________________________________________
Fig. 4. Processor reordering algorithm
DP
P 0 P 1 P 2 P 3 P 4 P 5 P 6 P 7 P 8
SP
P 0 a1 a2 a3
P 3 b1 b2 b3
P 6 c1 c2 c3
P 1 d1 d2 d3
P 4 e1 e2 e3
P 7 f1 f2 f3
P 2 g1 g2 g3
P 5 h1 h2 h3
P 8 i1 i2 i3
C lu s te r-1 C lu s te r -2 C lu s te r -3
Fig. 5. Communication table of data distribution over cluster grid with processor reordering
5 Performance Evaluation
5.1 Theoretical Analysis
without reordering
with reordering
K= 2 3 4 5 6 7
(a) (b)
Fig. 6. The number of interior communications (a) C=4 and K = n (b) C= n =3
w ith o u t re o rd e rrin g
w ith reo rd e rin g
(a) (b)
Fig. 7. Execution time of different methods to perform data realignments on cluster grid when C
=K=3
Optimizations of Data Distribution Localities in Cluster Grid Environments 1025
with I/O
Second
(a) (b)
Fig. 8. Execution time of both methods on different data sets. (a) C = K = n = 4 using mapping
function (b) C = n = 3 and K = 5 using reordering algorithm
Figures 8 (a) and 8 (b) show the results of applying mapping function and reordering
algorithm, respectively. The test-bed for case C = K = n in Figure 8 (a) is on four
clusters (NCDI). Figure 8 (b) reports the performance for generalized reordering
technique on cluster grid. The experimental results show that processor reordering
techniques provide significant improvement.
6 Conclusions
In this paper, we have presented an efficient data distribution scheme for optimizing
data localities of SPMD data parallel programs on cluster grid. The theoretical analysis
and experimental results of the distribution schemes on mapping data to logical grid
1026 C.-H. Hsu et al.
References
1. Taiwan UniGrid, http://unigrid.nchc.org.tw
2. O. Beaumont, A. Legrand and Y. Robert, ”Optimal algorithms for scheduling divisible
workloads on heterogeneous systems,” Proceedings of the 12th IEEE Heterogeneous
Computing Workshop, 2003.
3. Henri E. Bal, Aske Plaat, Mirjam G. Bakker, Peter Dozy, and Rutger F.H. Hofman,
“Optimizing Parallel Applications for Wide-Area Clusters,” Proceedings of the 12th
International Parallel Processing Symposium IPPS'98, pp 784-790, 1998.
4. M. Faerman, A. Birnbaum, H. Casanova and F. Berman, “Resource Allocation for
Steerable Parallel Parameter Searches,” Proceedings of GRID’02, 2002.
5. J. Blythe, E. Deelman, Y. Gil, C. Kesselman, A. Agarwal, G. Mehta and K. Vahi, “The role
of planning in grid computing,” Proceedings of ICAPS’03, 2003.
6. J. Dawson and P. Strazdins, “Optimizing User-Level Communication Patterns on the
Fujitsu AP3000,” Proceedings of the 1st IEEE International Workshop on Cluster
Computing, pp. 105-111, 1999.
7. I. Foster, “Building an open Grid,” Proceedings of the second IEEE international
symposium on Network Computing and Applications, 2003.
8. I. Foster and C. Kessclman, “The Grid: Blueprint for a New Computing Infrastructure,”
Morgan Kaufmann, ISBN 1-55860-475-8, 1999.
9. I. Foster and C. Kessclman, “Globus: A metacomputing infrastructure toolkit,” Intl. J.
Supercomputer Applications, vol. 11, no. 2, pp. 115-128, 1997.
10. James Frey, Todd Tannenbaum, M. Livny, I. Foster and S. Tuccke, “Condor-G: A
Computation Management Agent for Multi-Institutional Grids,” Journal of Cluster
Computing, vol. 5, pp. 237 – 246, 2002.
11. Saeri Lee, Hyun-Gyoo Yook, Mi-Soon Koo and Myong-Soon Park, “Processor reordering
algorithms toward efficient GEN_BLOCK redistribution,” Proceedings of the 2001 ACM
symposium on Applied computing, 2001.
12. M. Guo and I. Nakata, “A Framework for Efficient Data Redistribution on Distributed
Memory Multicomputers,” The Journal of Supercomputing, vol.20, no.3, pp. 243-265,
2001.
13. Florin Isaila and Walter F. Tichy, “Mapping Functions and Data Redistribution for Parallel
Files,” Proceedings of IPDPS 2002 Workshop on Parallel and Distributed Scientific and
Engineering Computing with Applications, Fort Lauderdale, April 2002.
14. Jens Koonp and Eduard Mehofer, “Distribution assignment placement: Effective
optimization of redistribution costs,” IEEE TPDS, vol. 13, no. 6, June 2002.
15. E. T. Kalns and L. M. Ni, “Processor mapping techniques toward efficient data
redistribution,” IEEE TPDS, vol. 6, no. 12, pp. 1234-1247, 1995.
16. Y. W. Lim, P. B. Bhat and V. K. Parsanna, “Efficient algorithm for block-cyclic
redistribution of arrays,” Algorithmica, vol. 24, no. 3-4, pp. 298-330, 1999.
Optimizations of Data Distribution Localities in Cluster Grid Environments 1027
17. Aske Plaat, Henri E. Bal, and Rutger F.H. Hofman, “Sensitivity of Parallel Applications to
Large Differences in Bandwidth and Latency in Two-Layer Interconnects,” Proceedings of
the 5th IEEE High Performance Computer Architecture HPCA'99, pp. 244-253, 1999.
18. Xiao Qin and Hong Jiang, “Dynamic, Reliability-driven Scheduling of Parallel Real-time
Jobs in Heterogeneous Systems,” Proceedings of the 30th ICPP, Valencia, Spain, 2001.
19. S. Ranaweera and Dharma P. Agrawal, “Scheduling of Periodic Time Critical Applications
for Pipelined Execution on Heterogeneous Systems,” Proceedings of the 30th ICPP,
Valencia, Spain, 2001.
20. D.P. Spooner, S.A. Jarvis, J. Caoy, S. Saini and G.R. Nudd, “Local Grid Scheduling
Techniques using Performance Prediction,” IEE Proc. Computers and Digital Techniques,
150(2): 87-96, 2003.
21. Ming Zhu, Wentong Cai and Bu-Sung Lee, “Key Message Algorithm: A Communication
Optimization Algorithm in Cluster-Based Parallel Computing,” Proceedings of the 1st
IEEE International Workshop on Cluster Computing, 1999.
Abuse-Free Item Exchange
Hao Wang1, Heqing Guo1, Jianfei Yin1, Qi He2, Manshan Lin1, and Jun Zhang2
1
School of Computer Science & Engineering, South China University of Technology,
Guangzhou, China 510640
{iswanghao, yjhhome, lmshill}@hotmail.com
guozhou@scut.edu.cn,
2
Computer Engineering School, Nanyang Technological University, Singapore 639798
{qihe0001, jzhang}@ntu.edu.sg
1 Introduction
The goal of fair protocols is to guarantee fairness of web-based electronic exchange in
applications like e-commerce and e-government. In other words, they should assure
that no party could falsely deny involvement in the exchange or having sent/received
the specific item1. Assuming Alice wants to exchange an item with another item be-
longing to Bob, the protocol must assure that wherever the protocol ends, both of
them either get the expected item (and non-repudiation evidences) or nothing. To take
one step further, the protocol should be abuse-free, which means before the exchange
ends, either party cannot prove to outside party that s/he can control the exchange
outcome: success or aborted. A Trusted Third Party (TTP) is involved as Pagnia and
Garner [10] have proved that no definite fairness can be achieved without a TTP.
Fairness issue has been studied in different scenarios: fair exchange [1][8], con-
tract signing [5], payment[13][14], non-repudiable message transmission [15], and so
on. But these protocols are inter-transformable, e.g., a fair exchange protocol can be
easily transformed to be a contract signing protocol.
In 1996, Asokan et al.[1] and Zhou et al.[15] proposed optimistic approach and
presents fair protocols with offline TTP, in which TTP intervenes only when an error
occurs (network error or malicious party’s cheating). But the recovered messages are
different from those produced by the sender or the recipient, which make the proto-
cols suffer from bad publicity and weak fairness, as the recovered messages may lose
some functionalities of the original ones. Invisible TTP is first introduced by Micali
[9] to solve this problem. The TTP can generate exactly the same evidences as the
sender or the recipient. In this way, judging the outcome evidences and received items
cannot decide whether the TTP has been involved, so that the recovery is done in a
transparent way.
1
Item can be a signature, electronic goods, payment, email, message, and so on.
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 1028 – 1035, 2005.
© Springer-Verlag Berlin Heidelberg 2005
Abuse-Free Item Exchange 1029
guarantee this kind of exchange to have a high success probability while assuring
fairness. Now available solution is to separate the item receiving over network and
delivering it to user by utilizing trusted hardware on user’s machine [11].
Definition 4. Non-repudiability
A fair protocol is non-repudiable if when the exchange succeeds, either exchanger
cannot deny (partially or totally) his/her participation.
Definition 5. Abuse-Freeness
A fair protocol is abuse-free if before the protocol ends, no party is able to prove to
an outside party that s/he has the power to terminate (abort) or successfully complete
the protocol.
Definition 6. Strong Abuse-freeness
A fair protocol is strongly abuse-free if before the protocol ends, no party is able to
prove to an outside party that his/her opponent is participating in the protocol.
Clearly, we can see strong abuse-freeness implies abuse-freeness as if a party can-
not prove that the other is participating, he cannot prove even he actually can control
the outcome of the protocol.
The registration protocol between the registering party (Alice/Bob) and TTP needs to be
run only once. And the resulting common parameters can be used for any number of
exchanges. Alice requests for key registration by sending her public key pair (e, n) to
the TTP. TTP checks the validity of n (by checking its certificate, the checking is de-
noted by check_pk()), if passes, it sends d1 to Alice (for security, d1 should be encrypted
some way). Then Alice chooses a reference message ω and computes PS( ω )= ω 2 and
d
send them to TTP. After TTP checks (using the function denoted by check ω ()) whether
ω ≡ PS (ω ) (mod n)
d1 e
Registration Protocol_________________________________________________
AĺTTP: fReg, TTP, pkX
TTP: if not check_pk() then stop
TTPĺA: fShare, A, EA(d1)
AĺTTP: fRef, ω ,PS( ω )
TTP: if not check ω () then stop
TTPĺA:fcert, A, certA
With the certificate, Bob can be convinced that TTP can convert the partial signa-
tures once they are signed by the same d2 as PS( ω ). Bob also need to involve such a
registration protocol to get his own certificate certB. Note that they may send the same
reference message to the TTP, which won’t affect the security of the verification
protocol.
PS ( m) = m (mod n)
d2
It works because
FS ( m) ≡ PS ( m) ≡m
≡ m(mod n)
e d2 e d1 d 2 e
holds.
Following we focus our attention on our non-interactive verification protocol. We
assume that Alice knows PSB( ω ) and Bob knows PSA( ω ).
s = ω α PSY (ω ) β mod n
°
°Ω = ω mod n
u
°
® M = m mod n
u
° v = h ( s , Ω, M )
°
° r = u + d X (v + α ) mod q
¯
The proof of the PSX(m), denoted by pf(PSX(m)), is ( α , β , Ω , M, r).
Verifying Proofs. When Y gets the PSX(m) and pf(PSX(m)), s/he will calculate
s = ω α PSY (ω ) β mod n
®
¯ v = h ( s , Ω, M )
and verifies
ΩPS X (ω ) h +α = ω r mod n
® h +α
¯ MPS X ( m) = m mod n
r
°° M = m t PS ( m) −η mod n
X
®
° v = h ( s , Ω , M)
° μ = η − h mod q
°
°̄r = (γ − μ ) dY −1 mod q
So Y cannot convince any outside party of the validity of the partial signature of
Alice.
We note these verifying operations as the predicate
verify ( pf ( PS ( m )), m, PS ( m ), ω , PS (ω )) . If the verification fails, it returns false.
X X X
Abuse-Free Item Exchange 1033
In our protocol, we denote the content to be signed by the item sender as aX=(
fNROX, Y, l, h(k), cipher, ETTP(k)), then the EOOX = PSX(aX) plus pf (PSX(aX)) and
NROX = FSX(aX). Similarly, let bX=( fNRRX, X, l), then EORX = PSY(bX) plus pf
(PSY(bX)) and NRRX = FSY(bX).
Main Protocol_______________________________________________________
AĺB: fEOOA, fEORB, B, l, h(kA), cipherA, ETTP(kA), EOOA, EORB
B: if not verify(EOOA) or not verify(EORB) then B stop
BĺA㧦fEORA, fEOOB, A, l, EORA, h(kB), cipherB, ETTP(kB), EOOB
A: if times out or not ( verify(EORA) and verify(EOOB) ) then abort
AĺB㧦fNROA, fNRRB, B, l, kA, NROA, NRRB
B: if times out then recover[X:=B,Y:=A]
BĺA㧦fNRRA, fNROB, A, l, NRRA, kB, NROB
A: if times out then recover[X:=A,Y:=B]
When one party gets the partial evidences, s/he needs to verify the partial signature.
If the verification of EOOA fails, Bob can simply quit the exchange without any risks.
But if times out or the verification in step 2 or step 3 fails, Alice and Bob need respec-
tively to run the abort protocol to prevent later recovery by the other party. If Alice
and Bob time out respectively in step 4 and step 5, they can run the recover protocol
to complete the exchange.
Recover Protocol____________________________________________________
XĺTTP: fRecX, Y, l, h(cipherA), h(kA), ETTP(kA), h(cipherB), h(kB), ETTP(kB), RecX,
EORA, EOOA, EORB, EOOB
TTP: if h(kA)h(DTTP(ETTP(kA))) or h(kB)h(DTTP(ETTP(kB))) or aborted() or recov-
ered() then stop
else recovered=true
TTPĺA: fA, A, l, kB, NRRA, NROB
TTPĺB: fB, B, l, kA, NRRB, NROA
Abort Protocol______________________________________________________
XĺTTP: fAbort, l, Y, abort
TTP: if aborted() or recovered() then stop
else aborted=true
TTPĺA: fCona, A, B, l, Cona
TTPĺB: fCona, A, B, l, Cona
1034 H. Wang et al.
4 Discussions
Following is the analysis with respect to requirement definitions in section 2. As the
proof of effectiveness, fairness, timeliness and non-repudiation requirement is similar
with those in [13], so we omit here for space reason.
Claim 1. Assuming the channel between Alice and Bob is unreliable, the protocol
satisfies the effectiveness requirement.
Claim 2. Assuming the channels between the TTP and exchangers (Alice and Bob)
are resilient and the TTP is honest, the protocol satisfies the fairness requirement.
Claim 3. Assuming the channels between the TTP and exchangers (Alice and Bob)
are resilient, the protocol satisfies timeliness requirement.
Claim 4. Assuming the channels between the TTP and exchangers (Alice and Bob)
are resilient, and the adopted convertible signature scheme is secure, the protocol
satisfies non-repudiation requirement.
Claim 5. Assuming the channels between the TTP and exchangers (Alice and Bob)
are resilient and the adopted convertible signature scheme and designated verifier
proof are secure, the protocol guarantees strong abuse-freeness.
Proof: Assume Alice is the honest one while Bob is trying to prove to gain advan-
tage. During the main protocol, before Alice sends NROA, NRRB, Bob only gets
partial evidence EOOA, EORB. And as the evidences’ proofs are designated to him
and no other can be convinced that the evidences are actually generated by Alice, so
at this stage, Bob cannot prove to outside party that Alice is in the exchange. After
Alice sends the final evidences, even Bob doesn’t send back his final evidences, Alice
still can attain them by requesting recover to the TTP and the exchange is completed
in success and Bob gets no advantage. In all, before getting the final evidences, no
party can prove to outside party that his/her opponent is participating in the protocol.
5 Conclusions
With convertible RSA signature scheme and adapted designated verifier proof, we
present a carefully built item exchange protocol satisfying many interesting require-
ments including fairness, timeliness and strong abuse-freeness.
When we consider different instantiations of item in many application scenarios,
we can achieve fair payment with electronic services, abuse-free contract-signing, and
etc. Our future work will be focused on further verification of our item exchange
protocol based on the theoretical game model and try to prove completeness.
References
1. N. Asokan, M. Schunter, and M. Waidner. Optimistic protocols for fair exchange. In Pro-
ceedings of the fourh ACM Conference on Computer and Communications Security, ACM
press, 1997.
2. C. Boyd, E. Foo. Off-line Fair Payment Protocols using Convertible Signatures. In Ad-
vances in Cryptology---ASIA CRYPT'98, SpringerVerlag, 1998.
Abuse-Free Item Exchange 1035
3. R. Chadha and M. Kanovich and A. Scedrov. Inductive methods and contract-signing pro-
tocols. In Proceedings of 8-th ACM confererence on Computer and Communications Secu-
rity(CCS-8). ACM Press, 2001.
4. R. Chadha, J. Mitchell, A. Scedrov and V. Shmatikov. Contract signing, optimism and ad-
vantage. In Proceedings of CONCUR 2003, LNCS 2761, Springer-Verlag, 2003.
5. J. Garay, M. Jakobsson, and P. MacKenzie. Abuse-free optimistic contract signing. In Ad-
vances in Cryptology - CRYPTO '99, SpringerVerlag, 1999.
6. R. Gennaro, H. Krawczyk, and T. Rabin. RSA-based undeniable signatures. In Advances
in Cryptology --- CRYPTO '97, LNCS 1296. Springer Verlag, 1997.
7. M. Jakobsson, K. Sako, R. Impagliazzo. Designated verifier proofs and their applications.
In Eurocrypt'96, LNCS 1070, Springer Verlag, 1996.
8. O. Markowitch and S. Saeednia. Optimistic fair-exchange with transparent signature re-
covery. In Proceedings of 5th International Conference, Financial Cryptography 2001,
Springer-Verlag, 2001.
9. S. Micali. Certified e-mail with invisible post offices. Available from author: an invited
presentation at the RSA’97 conference, 1997.
10. H. Pagnia and F. C. Gartner. On the impossibility of fair exchange without a trusted third
party. Tech. Rep. TUD-BS-1999-02 (March), Darmstadt University of Technology, 1999.
11. H. Pagnia, H. Vogt, F.C. Gärtner, and U.G. Wilhelm. Solving Fair Exchange with Mobile
Agents. LNCS 1882, Springer, 2000.
12. S. Saeednia, S. Kremer and O. Markowitch, An efficient strong designated verifier
scheme. In Proceedings of 6th International Conference on Information Security and
Cryptology (ICISC 2003), LNCS, Springer-Verlag, 2003.
13. H. Wang and H. Guo. Fair Payment Protocols for E-Commerce. In Proceedings of Fourth
IFIP Conference on e-Commerce, e-Business, and e-Government (I3E’04). Building the E-
Society: E-Commerce, E-Business and E-Government, Kluwer academic publishers, 2004.
14. H. Wang, H. Guo and Manshan Lin. New Fair Payment Protocols. In Proceedings of 1st
International Conference on E-business and Telecommunication Networks (ICETE’04).
INSTICC press, 2004.
15. J. Zhou and D. Gollmann. An Efficient Non-repudiation Protocol. In Proceedings of 1997
IEEE Computer Security Foundations Workshop (CSFW 10), 1997.
Transcoding Pattern Generation for Adaptation of
Digital Items Containing Multiple Media Streams in
Ubiquitous Environment
hotdigi@ssu.ac.kr , yhlim@computing.ssu.ac.kr
3 Department of computer Science, Soongsil University, Seoul, Korea
mnu@computing.ssu.ac.kr
4 Department of Computer Education, Sungkyunkwan University, Seoul, Korea
sjahn@comedu.skku.ac.kr
Abstract. Digital item adaptation (DIA) is one of main parts in MPEG21. The
goal of the DIA is to achieve interoperable transparent access to multimedia
contents by shielding users from network and terminal installation, management
and implementation issues. In general, a digital item consists of multiple dis-
crete or continuous media and adaptation process is to be applied to one of its
multiple media. Therefore in the process of adapting the given digital item, the
transcoding order of its media has great impact on the adaptation performance
because the adaptation process may stop at the point of satisfying a adaptation
QoS(Quality of Services). In order to reduce the transcoding time which result
in reducing the initial delay time, we propose a pattern based transcoding model
for DIA. Because the performance of the model is dependent on the pattern, we
also suggest a EPOB based pattern generation method. Finally a sample pattern
was suggested based on the experimental results of the method.
1 Introduction
Digital item adaptation (DIA) is one of main parts in MPEG21. The goal of the DIA
is to achieve interoperable transparent access to multimedia contents by shielding
users from network and terminal installation, management and implementation issues.
As suggested by the MPEG21 group, the combination of resource adaptation and
descriptor adaptation produces newly adapted Digital Item. In general, a digital item
consists of multiple discrete or continuous media and adaptation process is to be ap-
plied to one of its multiple media. Therefore in the process of adapting the given
digital item, the transcoding order of its media has great impact on the adaptation
performance because the adaptation process may stop at the point of satisfying a ad-
aptation QoS(Quality of Services). In this paper, firstly, digital items in ubiquitous
environment are classified into 3 types depending on its consisting media. We would
like to discuss a method of generating appropriate transcoding patterns for each type
of digital item.
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 1036 – 1045, 2005.
© Springer-Verlag Berlin Heidelberg 2005
Transcoding Pattern Generation for Adaptation of Digital Items 1037
The amount of data, a digital item requires, depends on the types of media comprising
the digital item. Each media comprising the digital item can be divided into discrete
media (image and text) and continuous media (audio and video). The total required
amount of data changes according to the percentage of each media. These digital
items may be classified into three different kinds of cases:
Case 1: where the amount of discrete media exceeds that of continuous media(PT1);
Case 2: where there is approximately equal amount of each media(PT2);
Case 3: continuous media exceeds discrete media(PT3).
Of the different kinds of media, discrete media, once loaded, does not use band-
width during continuous display. Thus, in Fig. 1, discrete media cannot be shown as it
is in Fig. 2. In terms of discrete media, loading time is the period of time in which all
the images are received, while display time is the period of time in which the images
are shown in the digital item. Bandwidth is used only during loading time. In contrast,
continuous media keeps using bandwidth during the display time. Fig. 2 shows how
much bandwidth the continuous media portion of a digital item requires.
There are several critical problems in displaying the above-mentioned digital item
through ubiquitous environment. In order to access digital items in a server via ubiq-
uitous devices, the contents should be adopted according to the system environment
device characteristics and user preferences. In ubiquitous environment, those devices
dependent adaptation requirements are not statically determined but unpredictable
until all the factors of the adaptation requirements such as the user, the terminal, net-
work path, user preference get fixed. Therefore an application specific adaptation
mechanism can not be applied to a general digital item adaptation engine.
1038 M. Hong et al.
To find a resolution to playing digital items in real time, there have been continu-
ous studies regarding the prefetch techniques [4],[5],[6],[7],[8]. The prefetch tech-
nique is a basic concept that uses common streaming services including a wired Inter-
net environment. But, for a wireless environment, an appropriate optimization is
needed for the prefetch time according to the characteristics of each wireless network.
Also, this technique has limitations when using mobile terminals because of their low
memory capacity. To relieve this problem, transcoding techniques were introduced as
[9],[10],[11],[12].Basically, digital contents contains a huge amount of multimedia
data such as images, video, sound etc., so mobile terminals are not adequate enough
to connect to the Internet directly due to limitations of bandwidths, transaction capaci-
ties and memory sizes when compared to desktop computers. To alleviate these con-
straints and deliver stable multimedia data to mobile terminals, an adaptation of digi-
tal item to the point that prefetched play is possible is required between the multime-
dia server and mobile terminal. However, transcoding all the streams in digital items
without any priority would take too much time, and this would result in an increase in
the early delay time that occurred before playing on mobile terminals.
There are many different policies in selecting one stream in a digital item to apply a
adaptation process as follow;
For a given digital item, the appropriate policy may be different depending on its
constituents. In the following, we propose a transcoding pattern based model of
DIA(digital item adaptation) and suggest a method of generating an appropriate
transcoding policy for each type of digital items.
composed of diverse streams. A digital item, which has been transformed to match the
speed of the mobile communication network and thus, has minimized initial delay
time during the display, can be delivered and played normally as following procedure.
In order not to exceed network bandwidth (N(t)), streams should be selected in an
order that will minimize transcoding time. In other words, the initial delay time of
playing a digital item can be reduced by first determining the criteria by which
streams will be prioritized for transcoding, and then scheduling them according to
their priority rankings. Thus, the process shown in Table 2 must be followed in com-
pliance with the QoS of the user’s mobile terminal.
The procedure may be depicted as the Fig. 3, in which the pattern based transcod-
ing process is more emphasized. The key idea of this model is that it has the
transcode scheduling patterns and simply select and apply an appropriate transcoding
pattern to the digital item whenever available. Then the model may reduce signifi-
cantly transcoding time by eliminating the on line and time consuming scheduling
process. Another advantage is that its transcoding patterns may be generated in off-
line mode. That means we may spend time sufficiently to generate optimized
transcoding patterns, whose performance is dependent on the transcoding elements,
called transcoders. In this section, we will briefly discuss the components, “Playbility
with prefetch test” and “Pattern Based Transcoder”. In the following chapter, we will
described the pattern generation method in great detail.
1040 M. Hong et al.
It is necessary to find out whether a digital item is playable on mobile terminals. Each
multimedia data stream of the resource in a digital item should be calculated, which
comes out as an input value for the required bandwidth per second, and then it should
be determined whether the requirements are satisfied when compared to the network
bandwidth. Therefore, playing segments should be divided for identification. Using
this playing segment, it can be determined whether a digital item is playable on mo-
bile terminals or not. If n S ≤ N (t ) is satisfied (playing segments indicate S and net-
¦ i
i =0
work bandwidth indicates N(t)), then the item is said to be playable to a mobile termi-
nal. If not, the adaptation process should be applied.
In most cases, digital items without prefetch are not playable due to the limitation of
ubiquitous network bandwidth. So we need a method of deciding the playability after
prefetch the digital item. To apply the prefetch and transcode technique to digital
item, which is determined as unplayable, the concept of EPOB(End Point Over Band-
width) will be introduced.
The EPOB can be explained as a point t, when the required amount of data of S
requires the amount of data below the network bandwidth after requiring data over the
network bandwidth. This can be defined as follows:
Definition 1. End Point of Over Bandwidth
X : Digital item, N(t): Network bandwidth, K(t): Required bandwidth of playing segment
Lim Κ (t ) > Ν (t ) and, Lim Κ (t ) ≤ Ν (t ) (1)
t → E −0 t →E +0
Time t, which satisfies formula (1), is called the EPOB, and is also written as E.
Transcoding Pattern Generation for Adaptation of Digital Items 1041
The reason to find E is that it is used as a critical unit for prefetch and transcode. It
is obvious that every unplayable digital item has at least one E. By applying the pre-
fetch to the X with E, it is possible to overcome limited memory size and overhead of
mobile terminals in comparison with the technique of prefetching the entire X.
The algorithm, which determines playability by using the E-based prefetch technique,
is as follows:
If there are more than two Es in a digital item, prefetch to E1 is applied to determine
playability. If the result is affirmative, extension of the area to E2 is applied and de-
termine playability.
Use For our model, we assume an optimized transcoding patterns for each type of
digital item are already stored in a Pattern Database. The Pattern Data consists of a
pair type of digital item and scheduling policy as (type, policy). The process of
transcoding the digital item is very simple as follow;
1) For a given digital item, analyze and decide its type PT
2) Select an appropriate scheduling policy SP, for the given PT, from the Pattern DB
3) Apply transcoding process, to the digital item, based on the scheduling policy SP
The performance of this part is dependent on the scheduling policy stored in the
transcoding scheduling pattern DB.
Now we will describe the method of generating the patterns in the following chapter.
3.1 Transcode
The following algorithm will check whether Formula 1 in Chapter 2 and the time for
transcoding are both satisfied during each transcoding level. The transcoding time of
the level, as in Formula 1, is the total transcoding time calculated by the given sched-
uling -- that is, the initial delay time. Stream selection policy used in Algorithm 2 is
as follows.
EPOBi
X = TR[ ³0 S (t )dt ] .
EPOBi
Level 5: If X ≤ ³0 N (t )dt , selection is complete.
Level 6: If the result does not satisfy level 5, start from level 1 again.
Thus, if Algorithm 2 and Table 1’s policies are applied to PT3, the following ex-
ample can be composed.
Stream :
Image1.bmp(34kbps) + Image2.bmp(44 kbps) + Image3.bmp(54bps)
+ Image4.jpg(14 kbps) + Video1.avi(100 kbps) + Video2.mpeg(68 kbps)
+ Video3.avi(103 kbps) + Video4.mpg(72 kbps) + Audio1.wav(27 kbps)
+ Audio2.wav(21 kbps)
TR : Video 3.avi(103kbps) Æ TRf,TRs[Video3ƍ.mpeg4(0.515kbps)]
EPOB : S(t) 865.06> N(t) 616
TR Time = 0.007msec
The aims of the experiment are as follows: 1) understand the composition of the
streams in the given digital items; 2) divide them according to types as in chapter 1;
3) estimate transcoding time of their streams; and 4) calculate the scheduling policy to
reduce initial delay time. Fig.8. shows the stream selection and Fig.6 shows the
transcoding time of the presentation shown in Fig.7. The results are as follows: when
the bandwidth is low (14kbps, 24kbps), selection policies 5 and 6 were less effective
in terms of selecting policies and in terms of transcoding as well. When the network
bandwidth was 56kbps, selection policy 1 by far needed the fewest numbers in
transcoding, and less transcoding time. When the network bandwidth was above
144k, overall numbers of stream selection were almost the same. But selection poli-
cies 1 and 3 showed the least time in transcoding, while Policy 2 kept transcoding
many streams without interruption and needed the most time in transcoding.
Fig. 6. Selection Policy Transcoding Time Fig. 7. Selection Policy Transcoding Stream
Results Number Results
1044 M. Hong et al.
4 Conclusion
This paper proposes a model of transcoding streams of a digital item according to
selection policies. The aim is to minimize initial delay time, which occurs when play-
ing multimedia presentations in mobile terminals. To generate a transcoding pattern,
digital items were divided into different types and 6 scheduling policies are applied in
various network bandwidths. As a result, we are able to choose an appropriate sched-
uling policy a policy for all the type of digital items. Now we have a complete
transcoding model by having the pattern in the transcoding pattern DB. For future
works, we hope to refine the type of digital items in more detail and to do experiments
to find more appropriate patterns.
Transcoding Pattern Generation for Adaptation of Digital Items 1045
Acknowledgments
This paper was supported by grant No. R01-2004-000-10618-0 from the Basic Re-
search Program of the Korea Science & Engineering Foundation.
References
1. Young-hwan Yim, Sun-hye Lee, and Myung-soo Yim, "Study on real time presentations of
multimedia mail on the internet," Journal of Korea Information Processing Society, vol. 6,
no. 4 (1999): 877-889.
2. In-Ho Lin and Bih-Hwang Lee, "Synchronization Model and Resource Scheduling for Dis-
tributed Multimedia Presentation System," IEICE TRANS. INF. & SYST., vol. 83-D, no.
4 (April 2000).
3. Dae-won Park, Maria Hong, Kyu-jung Kim, and Young-hwan Yim, “Study on sending im-
age streams to mobile phones without additional software,” Journal of Korea Information
Processing Society, vol. 3, no. 3 (2001): 55-66.
4. Javed I. Khan and Qingping Tao, "Prefetch Scheduling for Composite Hypermedia," IEEE
International Conference on Communication, vol. 3 (2001): 768-773.
5. Frank H.P. Fitzek, "A prefetching protocol for continuous media streaming in wireless en-
vironments," IEEE Journal on Selected Areas in Communications, vol. 19, no. 10 (October
2001): 2015-2028.
6. Rita Cucchiara, Massimo Piccardi, and Andrea Prati, "Temporal analysis of cache pre-
fetching strategies for multimedia applications," IEEE International Conference on Per-
formance, Computing, and Communications (2001): 311 –318.
7. Taeil Jeong, JeaWook Ham, and Sungfo Kim, "A Pre-scheduling Mechanism for Multi-
media Presentation Synchronization," Proceedings from IEEE International Conference on
Multimedia Computing and Systems (June 1997): 379-386.
8. Won-hee Choi, “Buffer prefetch method for playing multimedia in mobile terminals”
(Master’s thesis, Soongshil University, 2002), 1-25.
9. Niklas Bjork and Charilaos Christopoulos, “Trans-coder Architectures for Video Coding,”
IEEE Transactions on Consumer Electronics, vol. 44, no. 1 (1998).
10. Eui-Sun Kang, “Guided Search Method Research to convert MPEG2 P frame into H.263 P
frame under compressed condition” (Master’s thesis, Soongshil University, 2001), 1-15.
11. Jo-Won Lee, “Study on improving transcoder efficiency in reducing image size in com-
pressed segments” (Ph.D. diss., Soongshil University, 2001), 1-18.
12. Sung-Mi Jeon, “Converting path creation methods to play multimedia with different ser-
vice quality between vertical sections” (Ph.D. diss., Soongshil University, 2003), 2-31.
Identity-Based Aggregate and Verifiably Encrypted
Signatures from Bilinear Pairing
1 Introduction
The concept of ID-based public key cryptography, first introduced by Shamir [1],
allows a user to use his identity information such as name, Email address or telephone
number as his public key. It is a good alternative for certificate-based public key cryp-
tography. Ever since Boneh and Franklin gave a practical ID-based encryption
scheme from Weil pairing [2] in 2001, several ID-based signatures and short signa-
tures from bilinear pairing have been proposed [3-7].
Aggregate signatures, recently proposed by Boneh et al. [8], are digital signatures
that allow n members of a given group of potential signers to sign n different mes-
sages and all these signatures can be aggregated into a single signature. This single
signature will convince the verifier that the n players did indeed sign the n original
messages. Aggregate signatures are useful for reducing the size of certificate verifica-
tion chains (by aggregating all signatures in the chain) and for reducing message size
in secure routing protocols such as SBGP. It is also useful in other special area where
the signatures on many different messages generated by many different users need to
be compressed.
Verifiably encrypted signatures are used in online contract signing [9, 10] to pro-
vide fair exchange. When Alice wants to sign a message for Bob but does not want
him to possess her signature on the message immediately. Alice can achieve this by
encrypting her signature using the public key of a trusted third party (Adjudicator),
and sending the result to Bob along with a proof that she has given him a valid
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 1046 – 1054, 2005.
© Springer-Verlag Berlin Heidelberg 2005
Identity-Based Aggregate and Verifiably Encrypted Signatures from Bilinear Pairing 1047
encryption of her signature. Bob can verify that Alice has signed the message but
cannot deduce any information about her signature. At a later stage, Bob can obtain
the signature either from Alice or resort to the adjudicator who can reveal Alice’s
signature. Previous constructions of such scheme [9, 11] require zero knowledge
proofs to verify an encrypted signature. Boneh et al. [8] gave a verifiably encrypted
signature scheme as an application of their aggregate signature. Zhang et al. [12] also
gave a verifiably encrypted signature scheme based on their short signature scheme
from bilinear pairing [7]. Both signatures are short and can be validated efficiently.
To our best knowledge, no ID-based aggregate and verifiably encrypted signatures
schemes have been found so far.
In this paper, we first propose an ID-based signature scheme. It is in fact a variant
of the ID-based signature scheme given by Yi [4]. We show that this scheme can be
used to construct an ID-based aggregate signature. Then combining the above ID-
based signature and the short signature due to Boneh, Lynn, and Shacham [6], we
propose an ID-based verifiably encrypted signature scheme. All these signatures are
based on the bilinear pairing. Like all other pairing-based signatures, they are simple,
efficient and have short signature size.
The remaining sections are organized as follows. In the next section we will give a
brief introduction to bilinear pairing and review a short signature scheme. Section 3
presents an ID-based signature scheme and analyzes its security. We propose an ID-
based aggregate signature and give its security analysis in Section 4. Section 5 intro-
duces an ID-based verifiably encrypted signature scheme and analyzes its security.
Conclusion is drawn in the last section.
2 Preliminaries
We first briefly introduce some mathematical theory related to the following schemes.
Assuming that the discrete logarithm problem (DLP) in G1 and G2 is hard. We con-
sider the following two problems in G1 .
(1) Computational Diffie-Hellman Problem (CDHP): Given ( P, aP, bP ) , compute abP .
(2) Decision Diffie-Hellman Problem (DDHP): Given ( P, aP, bP, cP ) decide whether
c = ab(mod q ) .
1048 X. Cheng, J. Liu, and X. Wang
(3) Sign: Given a message m , the signer chooses a random number r ∈ '∗q and com-
putes R = rP , h = H1 (m, R ) and S = rPpub + hDID . The signature on message m under
ID is σ = ( R , S ) .
(4) Verify: Given a signature σ , the verifier computes QID = H 2 ( ID ) , h = H1 (m, R ) ,
T = R + hQID . He accepts the signature if e ( P , S ) = e ( Ppub , T ) .
Cha and Cheon gave a security notion of an ID-based signature scheme: Security
against existential forgery on adaptively chosen message and ID attack [3]. We refer
the readers to [3] for details.
(4) Verify: Anyone can be designated to aggregate all these single signatures. The
designated player (DP) first verifies the validity of each single signature. Having
n
received all the single signatures, DP computes R = ¦ Ri , hi = H1 (mi , R ) and Ti =
i =1
Ri + hi QID
(i)
. He accepts the signature if e( P, Si ) = e( Ppub , Ti ) .
(5) AggSign: We assume that the single signatures are all valid. DP computes S =
n
¦ Si . The aggregate signature on n different messages m1 , m2 ," , mn given by n
i =1
players P1 , P2 ,", Pn is σ = ( R, S ) .
(6) AggVerify: After receiving σ = ( R, S ) , the verifier computes hi = H1 (mi , R ) and T
n
= R + ¦ hiQID
(i )
. He accepts the aggregate signature if e( P, S ) = e( Ppub , T ) .
i =1
We allow an adversary to corrupt all but one honest signer Pn while analyzing the
security of our aggregate signature.
Theorem 3. The proposed aggregate signature is secure against existential forgery
under chosen message and ID attack in the random oracle model.
Proof: Let be a polynomial time adversary for the proposed aggregate signature
scheme. We will construct an adversary for the underlying signature scheme with
the same advantage as .
Identity-Based Aggregate and Verifiably Encrypted Signatures from Bilinear Pairing 1051
(n)
has the public key QID of Pn and access to the random hash oracle and the
(n)
signing oracle. First gives the public key QID . Then outputs the set of other
( n −1) ( n −1)
n − 1 private-public key pairs ( DID
(1) (1)
, QID (2)
),( DID ( 2)
, QID ),",( DID , QID ) . Whenever
asks Pn to join an aggregate signature generation protocol on some messages m1 ,
m2 ,", mn , forwards the query to its signing oracle and returns the reply back to .
At some point, outputs an attempted forgery σ = ( R, S ) of some messages m1 ,
m2 ,", mn . Then computes hi = H1 (mi , R )(i = 1,2,", n − 1) . He can easily generate the
single signatures σ i = ( Ri , Si ) on message mi for i = 1, 2," , n − 1 since he knows the
( n −1) ( n −1)
(1)
private-public key pairs ( DID (1)
, QID (2)
),( DID ( 2)
, QID ),",( DID , QID ) . Then, he computes Rn
n −1 n −1
= R − ¦ Ri , Sn = S − ¦ Si and obtains a forgery σ n = ( Rn , S n ) on message mn given by
i =1 i =1
A verifiably encrypted signature scheme consists of three entities: signer, verifier and
adjudicator. There are eight algorithms: Five, ParamGen, KeyGen, Sign, Verify and
AdjKeyGen are analogous to those in ordinary signature scheme. The others, VerSign,
VerVerify and Adjudicate, provide the verifiably encrypted signature capability.
(1) ParamGen: Sharing the same Params with the original ID-based signature.
(2) KeyGen: It is analogous to that in the original ID-based signature.
(3) AdjKeyGen: It is the same as that in the BLS short signature. The adjudicator’s
private-public key pair is ( x, X ) .
(4) Sign: It is analogous to that in the original ID-based signature.
(5) Verify: It is the same as that in the original ID-based signature.
(6) VerSign: Given a message m , the signer runs the Sign algorithm and obtains the
signature σ = ( R, S ) on the message m under ID . Then he randomly picks r ∈ '∗q
computes η = rP and μ = rX , where X is the public key of the adjudicator. Let
υ = S + μ . The triple ω = ( R,υ ,η ) is the verifiably encrypted signature of message
m under ID and the adjudicator’s public key X .
(7) VerVerify: Given a signature ω = ( R,υ ,η ) , the verifier computes QID = H 2 ( ID ) , h =
H1 (m, R ) and T = R + hQID . He accepts the signature if e ( P,υ ) = e ( Ppub , T )e (η , X ) .
1052 X. Cheng, J. Liu, and X. Wang
To analyze the security of the verifiably encrypted signature, the security properties of
validity, unforgeability and opacity of the scheme should be considered.
(1) Validity: VerVerify(m, VerSign(m)) and Verify(m, Adjudicate(VerSign(m))) hold
for all properly generated user’s key pairs and adjudicator’s key pairs.
(2) Unforgeability: It is difficult to forge a valid verifiably encrypted signature.
(3) Opacity: Given a verifiably encrypted signature, it is difficult to extract an ordi-
nary signature on the same message under the same identity ID .
Theorem 4. The proposed signature has the property of validity.
Proof: If ω = ( R,υ ,η ) is a valid verifiably encrypted signature of message m under
ID and X , then
e ( P ,υ ) = e ( P , S + μ ) = e ( P, S ) ⋅ e ( P, μ ) = e( Ppub , T ) ⋅ e(P, rX ) = e ( Ppub , T )e (η , X ) .
This means VerVerify(m,VerSign(m)) holds. Moreover, for a valid verifiably en-
crypted signature ω = ( R,υ ,η ) , the extracted signature σ ′ = ( R, S ′) satisfies
e ( P , S′) = e ( P,υ − τ ) = e ( P, S + μ − τ ) = e ( P, S + rX − xη ) = e ( P, S ) = e ( Ppub , T ) .
Therefore the output σ ′ = ( R, S ′) of Adjudicate is a valid signature of message m
under ID . This means Verify(m, Adjudicate(VerSign(m))) holds.
Theorem 5. The proposed signature has the property of unforgeability.
Proof: Given a forger algorithm for the ID-based verifiably encrypted signature
scheme, we construct a forge algorithm for the underlying ID-based signature.
simulates the challenger and interacts with as follows:
(1) Setup: generates a private and public keys pair ( x, X ) , which serves as the adju-
dicator’s keys.
(2) Hash Queries: requests a hash on some message m . makes a query on m to
its own hash oracle and gives the value back to .
(3) ID Queries: requests the private and public keys corresponding to some iden-
tity ID . makes a query on ID and gives the keys to .
(4) VerSign Queries: requests a signature for some message and identity pair
( m, ID ) . queries its signing oracle for ( m, ID ) , obtaining σ = ( R , S ) . It then ran-
domly chooses a number r ∈ '∗q computes η = rP , μ = rX and υ = S + μ , returns to
the triple ω = ( R ,υ ,η ) .
(5) Adjudicate Queries: requests adjudication for ω = ( R,υ ,η ) . checks that the
signature is valid, then computes τ = xη , S ′ = ω − τ and returns σ ′ = ( R, S ′) .
(6) Output: outputs a forge ω ∗ = ( R∗ ,υ ∗ ,η ∗ ) , a verifiably encrypted signature on a
message m∗ under ID∗ and adjudicator’s public key X . If is successful,
Identity-Based Aggregate and Verifiably Encrypted Signatures from Bilinear Pairing 1053
6 Conclusion
In this paper, we first proposed an ID-based signature. Based on this signature, we
constructed an ID-based aggregate signature. Combining this ID-based signature with
the BLS short signature, we presented an ID-based verifiably encrypted signature. All
these signatures are based on bilinear pairing. Just like all other pairing based crypto-
systems, they are simple, efficient and have short signature size.
References
1. Shamir, A.: Identity-Based Cryptosystems and Signature Schemes. In: Advance in cryp-
tology-Crypto’84, Lecture Notes in Computer Science, Vol. 196, Springer-Verlag, Berlin
Heidelberg New York (1987), 47-53.
1054 X. Cheng, J. Liu, and X. Wang
2. Boneh, D., Franklin, M.: Identity Based Encryption from the Weil Pairing. In: Advance in
cryptology-Crypto’01, Lecture Notes in Computer Science, Vol. 2139, Springer-Verlag,
Berlin Heidelberg New York (2001), 213-229.
3. Cha, J.C., Cheon, J.H.: An Identity-Based Signature from Gap Diffie-Hellman Groups. In:
Advance in Public Key Cryptography-PKC 2003, Lecture Notes in Computer Science,
Vol. 2139, Springer-Verlag, Berlin Heidelberg New York (2003), 18-30.
4. Yi, X.: An Identity-Based Signature Scheme from the Weil Pairing. IEEE Communica-
tions Letters, Vol. 7(2), 2003, 76-78.
5. Hess, F.: Efficient Identity Based Signature Schemes Based on Pairings. In: Proceeding of
Select Areas in Cryptography, SAC 2002, Springer-Verlag (2003), 310-324.
6. Boneh, D., Lynn, B., Shacham, H.: Short Signatures from the Weil Pairing. In: Advance in
cryptology-Asiacrypt’01, Lecture Notes in Computer Science, Vol. 2248, Springer-Verlag,
Berlin Heidelberg New York (2001), 514-532.
7. Zhang, F., Safavi, R., Susilo, W.: An Efficient Signature Scheme from Bilinear Pairings
and Its Applications. In: Advance in Public Key Cryptography-PKC 2004, Lecture Notes
in Computer Science, Vol. 2947, Springer-Verlag, Berlin Heidelberg New York (2004),
227-290.
8. Boneh, D., Gentry, C., Lynn, B., Shacham, H.: Aggregate and Verifiably Encrypted Signa-
tures from Bilinear Maps. In: Advance in cryptology-Eurocrypt’03, Lecture Notes in
Computer Science, Vol. 2656, Springer-Verlag, Berlin Heidelberg New York (2003), 272-
293.
9. Asokan, N., Shoup, V., Waidner, M.: Optimistic Fair Exchange of Digital Signatures.
IEEE J. Selected Areas in Comm., Vol. 18(4), 2000, 593-610.
10. Bao, F., Deng, R., Mao, W.: Efficient and Practical Fair Exchange Protocols with Offline
TTP. In: Proceedings of IEEE Symposium on Security and Privacy, 1998, 77-85.
11. Poupard, G., Stern, J.: Fair Encryption of RSA Keys. In: Advance in cryptology-
Eurocrypt’00, Lecture Notes in Computer Science, Vol. 1807, Springer-Verlag, Berlin
Heidelberg New York (2000), 172-189.
12. Zhang, F., Safavi, R., Susilo, W.: Efficient Verifiably Encrypted Signature and Partially
Blind Signature from Bilinear Pairings. In: Indocrypt’03, Lecture Notes in Computer Sci-
ence, Vol. 2904, Springer-Verlag, Berlin Heidelberg New York (2003), 191-204.
13. Pointcheval, D., Stern, J.: Security Arguments for Digital Signatures and Blind Signatures.
J. Cryptology, Vol. 13(3), 2000, 361–396.
Element-Size Independent Analysis of Elasto-Plastic
Damage Behaviors of Framed Structures
1 Introduction
The occurrence and growth of a number of microscopic defects such as microcracks
and microvoids in materials cause reduction of the stiffness, strength and toughness as
well as the remaining life of materials. Continuum damage mechanics (abbreviated to
CDM) is the theory that can take into account the effects of such microscopic defects
on the mechanical properties of solids in the framework of continuum mechanics.
CDM has been applied to the finite element analysis of various damage and failure
problems of structural members in many literatures [1-5]. The so-called local ap-
proach to fracture based on damage mechanics and the finite element method can
consistently model the mechanical behaviors from the initiation and evolution of
damage through the propagation of macrocracks, however, it is pointed out as a prob-
lem that the calculated results considerably depend upon the assumed finite element
mesh [4].
The damage analysis of framed structures based on CDM has been studied by
many researchers [6-16]. Krajcinovic [6] defined the isotropic damage variable (the
damage modulus) related to the fracture stress and used it to calculate the ultimate
moment carrying capacities of concrete beams. Chandrakanth and Pandey [7] carried
out the elasto-plastic damage analysis of Timoshenko layered beams. Cipollina, Lo-
pez-Inojosa and Florez-Lopez [8], Florez-Lopez [9], Thomson, Bendito and Florez-
Lopez [11], Perdomo, Ramirez and Florez-Lopez [12], Marante and Florez-Lopez
[15] presented the formulation for the damage analysis of RC frames by the lumped
dissipation model and implemented it in the commercial finite element program.
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 1055 – 1064, 2005.
© Springer-Verlag Berlin Heidelberg 2005
1056 Y. Toi and J.-G. Lee
Florez-Lopez [10] gave a unified formulation for the damage analysis of steel and RC
frame members. Inglessis, Gomez, Quintero and Florez-Lopez [13], Inglessis, Me-
dina, Lopez, Febres and Florez-Lopez [14], Febres, Inglessis and Florez-Lopez [16]
conducted the analysis of steel frames considering damage and local buckling in tubu-
lar members. However, no discussion has been made for the mesh-dependence of the
finite element solutions for the damage problem of framed structures in the existing
literatures [6-16].
The linear Timoshenko beam element is generally used in the finite element analy-
sis of framed structures considering the effect of shear deformation [17]. Toi [18]
derived the relation between the location of a numerical integration point and the
position of occurrence of a plastic hinge in the element, considering the equivalence
condition for the strain energy approximations of the finite element and the computa-
tional discontinuum mechanics model composed of rigid bars and connection springs.
The computational method identified as the adaptively shifted integration technique
[19] (abbreviated to the ASI technique) was developed, based on this equivalence
condition. The ASI technique, in which the plastic hinge can be formed at the exact
position by adaptively shifting the position of a numerical integration point, gives
accurate elasto-plastic solutions even by the modeling with the minimum number of
elements. The ASI technique has been applied to the static and dynamic plastic col-
lapse analysis of framed structures [19-22], through which the validity of the method
has been demonstrated with respect to the computational efficiency and accuracy.
In the present study, a new computational method is formulated for the elasto-
plastic damage analysis of framed structures, based on the ASI technique for the lin-
ear Timoshenko beam element and the concept of CDM. The non-layered approach,
in which the stress-strain relation is expressed in terms of the resultant stresses and
the corresponding generalized strains, is employed in order to reduce the computing
time for the large-scale framed structures. A new form of damage evolution equation,
which is expressed in terms of plastic relative rotational angles instead of plastic cur-
vature changes, is proposed in order to remove the mesh-dependence of solutions in
the damage analysis. The present method is applicable to the collapse analysis of
framed structures including elasto-plasticity, damage initiation, its evolution and frac-
ture. Numerical studies for simple frames are conducted to show accuracy, efficiency
and the mesh-independence of the proposed method.
One of the authors Toi considered an equivalence condition for the strain energy ap-
proximations of the linear Timoshenko beam element (the upper figure in Fig. 1) and
the computational discontinuum mechanics model which is composed of rigid bars
connected with two types of springs resisting relative rotational and transverse dis-
placement respectively (lower figure in Fig. 1) [18]. The strain energy approximation
of the linear Timoshenko beam element is a function of the location of a numerical
integration point s1 , while the strain energy function of the discontinuum mechanics
model depends upon the position of the connection springs r1 . As a result, the fol-
lowing relation was obtained as the equivalence condition for both discrete models:
s1 = − r1 (1)
z㩷
-1㩷 0㩷 s1 1㩷
x㩷
θ1 s 㩷㩷 θ2
u㩷
㩷 㩷
1 u2 㩷 㩷
㩷㩷 㩷㩷
-1㩷 r1 0㩷 1㩷
θ1 㩷㩷 θ2
u1 㩷 㩷 㩷㩷
u2
㩷㩷 㩷㩷
: Numerical integration point㩷
: Plastic hinge㩷
When the equivalence condition given by eq. (1) is satisfied, the linear Timoshenko
beam element and the computational discontinuum mechanics model are completely
the same. The concept of plastic hinges can be easily, explicitly and accurately taken
into account by reducing the rotational spring constant in the latter physical model.
Therefore, it is clear that a plastic hinge can be formed an arbitrary position in the
linear Timoshenko beam element by adaptively shifting the numerical integration
point according to eq. (1). When the integration point is located at the right edge in
the element, a plastic hinge is formed at the left edge and vice versa. This case is
actually important when plastic hinges are formed at member joints or concentratedly
loaded points, since they cannot be formed at exact positions when the numerical
integration point is located at the central point in each element as is usually done. The
details of the ASI technique are as follows.
1058 Y. Toi and J.-G. Lee
In equation (7b), D epd (r1 ) is the stress-strain matrix for elasto-plastic deformation
considering damage. The generalized strain increment vector is calculated as
d İ (r1 ) = B (− r1 )d u (8)
Element-Size Independent Analysis of Elasto-Plastic Damage Behaviors 1059
F = FP (R, R; D ) + FD (Y ; r , D ) (10)
where F P is the plastic potential for the evolution of plastic strains that is a function
of the effective resultant stress ( R ), the isotropic hardening stress variable ( R ) and
the scalar damage variable ( D ). F D is the damage potential for the evolution of
damage that is a function of the strain energy density release rate ( Y ), the strain of
isotropic hardening ( r ) and the scalar damage variable ( D ).
The damage increment is obtained by the following equation:
dD = d λ (∂ F ∂ Y ) = d λ (∂ F D ∂ Y ) (11)
where d λ is a proportional coefficient. The concrete form of this equation is dis-
cussed in the next subsection.
The yield function is assumed as follows:
f = σ eq − R − σ 0 = 0 (12)
σ eq 2 = (R 1 Z x 0 ) + (R 2 Z y 0 ) + (R 3 A ) + (R 4 W p )
2 2 2 2
(13)
Using the yield function of equation (10) as the plastic potential FP , the general-
ized plastic strain increment (dİp) and the strain increment of isotropic hardening
( dr ) are given by the following equations:
dİ p = d λ (∂ F ∂ R ) = d λ (∂ F P ∂ R ) (16)
R = Kr n (19)
n −1
dR = nKr dr = Hdr = H d λ A (20)
T T
§ ∂F p · ª H § ∂F p · ∂F p σ eq ∂ F D º
d λ = ¨¨ ¸¸ C d İ « + ¨¨ ¸¸ C + » (21)
© ∂R ¹ «¬ A © ∂ R ¹ ∂R 1 − D ∂Y »
¼
Substituting equation (21) into (18), the following incremental relation between
effective resultant stresses and generalized strains can be obtained:
T
ª ∂F p § ∂F p · º
« ¨¨ ¸¸ C »
« ∂R © ∂R ¹ »
d R = C d İ = C «1 − T » dİ (22)
« H § ∂ F p · ∂F p σ eq ∂ F D »
+ ¨¨ ¸¸ C +
« 1 − D ∂ Y »¼
¬ A © ∂R ¹ ∂R
d R = (1 − D ) d R − R dD = D epd d İ (23)
Element-Size Independent Analysis of Elasto-Plastic Damage Behaviors 1061
T
ª § ∂F p · º
« ¨¨ ¸¸ C »
« ∂F p ∂Fd ½ © ∂R ¹ »
= « (1 − D ) C − ® (1 − D ) C +R ¾ » dİ
¯ ∂R ∂Y ¿ H § ∂F p ·
T
∂F p σ eq ∂ F D »
« +¨ ¸¸ C +
«
¬ A ¨© ∂ R ¹ ∂ R 1 − D ∂ Y »¼
where D epd is the tangential, elasto-plastic damage matrix relating resultant stress
increments with generalized strain increments to be used in equations (7b) and (9).
The following damage evolution equation given by Lemaitre [2] is used as equation
(11) in the preceding subsection:
dD = (Y S )s dp when p ≥ pD (24a)
where
dp = dr (1 − D) (24b)
S and s in eq. (24a) are material constants. p and p D are the accumulated
equivalent generalized plastic strain and its critical value for the initiation of damage.
The equivalent generalized plastic strain increment dp (κ ) is given as follows:
R1 R2 R3 R4
dp (κ ) ∝ 2
EI x d κ x + 2
EI y d κ y + EAd ε + GAd θ z' (25)
Z x0 Z y0
A2 Wp
2
where d κ x and d κ y are the curvature change increments. d ε and d θ z' are aver-
age axial strain and the torsional rate respectively. The notation dp(κ ) indicates that
the equivalent generalized plastic strain increment dp is a function of curvature
changes here. The strain energy release rate Y is given as follows:
Y =σ 2 E (1 − D )
2 2
eq (26)
where E is the Young’s modulus. The time-independent damage that evolves with
an increase of the equivalent stress and the equivalent plastic strain is assumed in the
present analysis.
The generalized strain increment in the elasto-plastic behavior is the sum of the
elastic component and the plastic component. Therefore the relation with the nodal
displacement increment is expressed by the following equation:
dİ e + dİ p = B (du e + du p ) (27)
The relation between the curvature change increment and the nodal rotational angle
increment for the linear Timoshenko beam element is given by the following
equation:
1062 Y. Toi and J.-G. Lee
where Lelm is the element length. The subscripts 1 and 2 indicate nodes at both
edges of the element. The plastic relative rotational angle d θ p at the plastic hinge
can be accurately calculated by the application of the ASI technique, not depending
on the element length. This can be proved by the fact that the plastic collapse load of
framed structures calculated by the ASI technique coincides with the exact solution
given by the theoretical plastic analysis [24], independent of the number of elements
[19]. On the other hand, the calculated curvature changes are mesh-dependent.
The damage evolution calculated by equations (24), (25) and (26) extremely de-
pends on the element length ( L elm ) since the damage evolution equation is expressed
in terms of the curvature change increments as shown in equation (25). Then, equa-
tion (25) is replaced with the following equation:
R1 dθ x R2 dθ y R3 R4
dp (θ ) ∝ 2
EI x + 2
EI y + EAd ε + GAd θ z' (29)
Z x0 L eff , x Z y0 L eff , y A2 Wp
2
where
dθ px = dθ px 2 − dθ px 1 , dθ py = dθ py 2 − dθ py 1 (30)
where Leff , x and Leff , y are the effective element length dependent on the shape and
dimension of the cross-section and the material property, which are the parameters
relating the curvature change increments with the plastic relative rotational angles.
The plastic relative rotational angle is an important parameter in the plastic analysis of
framed structures [24], in which the plastic collapse load and the residual strength of
plastic hinges are calculated and discussed by using this parameter. The effective
element length as well as the other material constants concerning damage should be
determined in the experiments containing bending tests of frame members. However,
the tentative values are used in numerical examples in the next chapter. It is expected
that the use of dp (θ ) in equation (29) instead of dp(κ ) in equation (25) will remove
the mesh-dependence of the finite element solutions for the elasto-plastic damage
analysis of framed structures.
3 Numerical Example
Due to space limitation, only one example is illustrated in the present section.
Figure 2 shows the analyzed space frame as well as the results calculated by the finite
element method using the ASI technique based on the damage evolution equation
expressed in terms of the equivalent plastic strain increment dp (θ ) given in equation
(29). As shown in the figure, the mesh-dependence has almost been removed and the
highest computational efficiency and accuracy have been achieved by the combined
use of the ASI technique and the new damage evolution equation expressed in terms
of the plastic relative rotational angles. It should be noted that the minimum number
Element-Size Independent Analysis of Elasto-Plastic Damage Behaviors 1063
of linear Timoshenko beam elements for the subdivision of each member is two, be-
cause only one plastic hinge can be formed in the element. One-element modeling
per member is possible, when cubic elements based on Bernoulli-Euler hypothesis are
used [19].
Elasto-plastic analysis
Elasto-plastic damage analysis
40
35 F
L
30
δ
25
L
FL/Mo
20
L
No. of elements = 2
15
10 =4
=8
5 = 16
0
0 0.1 0.2 0.3 0.4 0.5
δ/L
Fig. 2. Load-displacement curves for a space frame by the ASI technique using dp(θ )
4 Concluding Remarks
A new finite element formulation for the elasto-plastic damage analysis of framed
structures has been proposed by the combined use of the ASI technique for linear
Timoshenko beam elements and the new damage evolution equation expressed in
terms of plastic relative rotational angles. It has been confirmed through some nu-
merical studies that the present method is almost mesh-independent and two-element
idealization per member is enough for practical purpose. The present computational
method can analyze the collapse behavior of large-scale framed structures considering
elasto-plasticity, damage and fracture with the highest computational efficiency and
accuracy. The tentative value was used as the effective element length. However, it
should be determined by experiments, which will be conducted in near future.
References
1. Kachanov, L. M.: Introduction to Continuum Damage Mechanics. Martinus Nijhoff Pub-
lishers, (1986)
2. Lemaitre, J.: A Course on Damage Mechanics (Second Edition). Springer, (1996)
3. Krajcinovic, D.: Damage Mechanics. Elsevier, (1996)
4. Skrzypek, J., Ganczarski, A.: Modeling of Material Damage and Failure of Structures:
Theory and Applications. Springer, (1999)
5. Kattan, P.I., Voyiadjis, G.Z.: Damage Mechanics with Finite Elements. Springer, (2001)
1064 Y. Toi and J.-G. Lee
6. Krajcinovic, D.: Distributed Damage Theory of Beams in Pure Bending. Journal of Ap-
plied Mechanics, Transactions of ASME, 46 (1979) 592-596
7. Chandrakanth, S., Pandey, P.C.: Damage Coupled Elasto-Plastic Finite Element Analysis
of a Timoshenko Layered Beam. Computers and Structures, 69 (1988) 411-420
8. Cipollina, A., Lopez-Inojosa, A., Florez-Lopez, J.: A Simplified Damage Mechanics Ap-
proach to Nonlinear Analysis of Frames. Computers and Structrures, 54 (1995) 1113-1126
9. Florez-Lopez, J.: Simplified Model of Unilateral Damage for RC Frames. J. of Structural
Engineering-ASCE, 121(12) (1995) 1765-1772
10. Florez-Lopez, J.: Frame Analysis and Continuum Damage Mechanics. European Journal
of Mechanics A/Solids, 17(2) (1998) 269-283
11. Thomson, E., Bendito, A., Florez-Lopez, J.: Simplified Model of Low Cycle Fatigue for
RC Frames. Journal of Structural Engineering-ASCE, 124(9) (1998) 1082-1085
12. Perdomo, M.E., Ramirez, A., Florez-Lopez, J.: Simulation of Damage in RC Frames with
Variable Axial Forces. Earthquake Engineering & Structural Dynamics, 28(3) (1999) 311-
328
13. Inglessis, P., Gomez, G., Quintero, G., Florez-Lopez, J.: Model of Damage for Steel Frame
Members. Engineering Structures, 21(10) (1999) 954-964
14. Inglessis, P., Medina, S., Lopez, A., Febres, R., Florez-Lopez, J.: Modeling of Local Buck-
ling in Tubular Steel Frames by Using Plastic Hinges with Damage. Steel & Composite
Structures, 2(1) (2002) 21-34
15. Marante, M.E., Florez-Lopez, J.: Three-Dimensional Analysis of Reinforced Concrete
Frames Based on Lumped Damage Mechanics. International Journal of Solids and Struc-
tures, 40(19) (2003) 5109-5123
16. Febres, R., Inglessis, P., Florez-Lopez, J.: Modeling of Local Buckling in Tubular Steel
Frames Subjected to Cyclic Loading. Computers & Structures, 81(22-23) (2003) 2237-
2247
17. Bathe, K. J.: Finite Element Procedures, Prentice Hall, (1996)
18. Toi, Y.: Shifted Integration Technique in One-Dimensional Plastic Collapse Analysis Us-
ing Linear and Cubic Finite Elements. International Journal for Numerical Methods in
Engineering, 31 (1991) 1537-1552
19. Toi, Y., Isobe, D.: Adaptively Shifted Integration Technique for Finite Element Collapse
Analysis of Framed Structures. International Journal for Numerical Methods in Engineer-
ing, 36 (1993) 2323-2339
20. Toi, Y., Isobe, D.: Finite Element Analysis of Quasi-Static and Dynamic Collapse Behav-
iors of Framed Structures by the Adaptively Shifted Integration Technique. Computers and
Structures. 58 (1996) 947-955
21. Toi, Y., Lee, J.G.: Finite Element Crash Analysis of Framed Structures by the Adaptively
Shifted Integration Technique. JSME International Journal, Series A, 43(3) (2000) 242-
251
22. Isobe, D., Toi, Y.: Analysis of Structurally Discontinuous Reinforced Concrete Building
Frames Using the ASI Technique. Computers and Structures, 76(4) (2000) 242-251
23. Toi, Y., Yang, H.J.: Finite Element Crush Analysis of Framed Structures. Computers and
Structures, 41(1) (1991) 137-149
24. Hodge, P.G.Jr.: Plastic Analysis of Structures, McGraw-Hill, (1959)
On the Rila-Mitchell Security Protocols for
Biometrics-Based Cardholder Authentication in
Smartcards
1 Introduction
A protocol [3] is a set of rules that define how communication is to be done
between two or more parties. In a common networked environment where the
communication channel is open to eavesdropping and modifications, security is a
critical issue. In this context, security protocols are cryptographic protocols that
allow communicating parties to perform mutual authentication, key exchange or
both. In [7], Rila and Mitchell proposed several security protocols intended for
use with biometrics-based smartcard systems [6]. In this paper, we attack one
of the protocols and show that it is insecure against man-in-the-middle (MITM)
attacks, contrary to the designers’ claims [7]. We also discuss security cautions,
namely how poor choices of security parameters would lead to attacks.
The second author acknowledges the Malaysia IRPA grant (04-99-01-00003-EAR).
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 1065–1074, 2005.
c Springer-Verlag Berlin Heidelberg 2005
1066 R.C.-W. Phan and B.-M. Goi
C The smartcard
R The smartcard reader
NA The nonce generated by entity A (which may be C or R)
BioData The captured fingerprint (biometric) image
EF The extracted features from BioData
Concatenation
mK (·) A MAC function keyed by secret key, K
LSBi (x) The i least significant bits (rightmost) bits of x
M SBi (x) The i most significant bits (leftmost) bits of x
x << y Cyclic shift (rotate) of x left by y bits
x >> y Cyclic shift (rotate) of x right by y bits
number. Rila and Mitchell note that this relies on the assumption that two
different measurements of the same biometric feature of the same person are
very likely to be different [7]. Further, to assure that the smartcard has not been
inserted into a hostile card reader and vice versa, Rila and Mitchell proposed a
separate authentication protocol, as follows:
Protocol 3 (Using Nonces only, without BioData).
Message 1: R → C NR
Message 2: C → R NC mK (NC NR )
Message 3: R → C mK (NR NC )
R generates a random number NR , and sends it as message 1 to C. Then C
generates a random number, NC and sends this along with a MACed value
of NC NR as message 2 to R. Next, R re-computes this MAC and verifies its
correctness. It generates a MAC of NR NC which is sent as message 3 to C.
Finally, C re-computes this MAC and verifies its correctness.
even be present at the same place, but what suffices is that the MITM attack
leads them to believe the other party is present. The hostile card and reader
would suffice to be in the stead of their legitimate counterparts. This is a failure
of mutual authentication between the legitimate card and reader, which should
both be present in one place for successful mutual authentication. Thus, Protocol
3 fails to achieve criteria 1 and 2 outlined in Section 1.1.
for r ∈ {0, 1, ..., n − 1}, then the same MAC value and hence a collision would
be obtained. This collision is formalized as:
There are n possible cases for the above generalized collision phenomenon. Let m
be size of NC NR in bits. Then, the probability that the collision in (3) occurs is
increased from 21m to 2nm . This is clearly an undesirable property since a securely
used m-bit value should only have collisions with probability 21m . Under such
cases, Protocol 1 would fail criterion 3.
We describe how this can be exploited in an attack. Let α be the previous
run of the protocol, and β the current run. The attack proceeds:
α.1 : R → C NR
α.2 : C → R NC BioDatamK (NC NR BioData)
α.3 : R → C EF mK (NR NC EF )
β.1 : R → IC NR
β.2 : IC → R NC BioDatamK (NC NR BioData)
β.3 : R → IC EF mK (NR NC EF )
1070 R.C.-W. Phan and B.-M. Goi
Then:
where b denotes the size of BioData in bits. Let m be the size of NC NR , then
since there are n cases of the above generalized collisions, the probability of such
n 1
collisions occurring is 2m+2r instead of the expected 2m+2r as in the case of an
(m + 2r)-bit value in equations (4) to (7).
We can do better than that and discard the restriction in (4). When:
this message, it would re-compute the MAC, mK (NC NR BioData ) and indeed
this will be the same value as the received MAC in message β.2. It therefore ac-
cepts the hostile smartcard as valid and fully authenticated. Protocol 1 therefore
fails in such cases to provide authentication and allows a hostile smartcard to
pass off with a fake BioData.
NR = NC . (16)
He then chooses:
NC = NR . (17)
4.4 Countermeasures
The concerns we raised on Protocols 1 and 2 are due to their designers not fixing
the length of the random numbers, NR and NC but left it as a flexibility of the
protocol implementer. We stress that such inexplicitness can result in subtle
attacks on security protocols [1, 4, 5, 10].
We also recommend to encrypt and hence keep confidential the sensitive
information such as BioData and EF rather than transmitting them in the
On the Rila-Mitchell Security Protocols 1073
clear! This prevents them from being misused not only in the current system
but elsewhere as such information would suffice to identify an individual in most
situations. This improvement also makes the protocols more resistant to attacks
of the sort that we have presented.
Figure 2 in the original Rila and Mitchell paper [7] also shows that the Yes/No
decision signal to the Application component of the smartcard system is acces-
sible externally and not confined within the card. This therefore implies that it
will always be possible for an attacker to replay a Yes signal to the Application
component regardless of whether an attacker is attacking the rest of the system.
We would recommend that for better security, this Yes/No signal as well as the
application component should be within the tamper-proof card, and not as oth-
erwise indicated in Figure 2 of [7]. However, such a requirement poses additional
implementation restrictions, especially when the application is access-control
based, for instance to control access to some premises.
5 Concluding Remarks
Our attack on Rila and Mitchell’s Protocol 3 shows that it fails to achieve the
claim of allowing the reader to verify that an inserted card is legitimate and vice
versa. Our cautions in Section 4 further serve as a general reminder to proto-
col designers and implementers that all underlying assumptions and potential
security shortcomings should be made explicitly clear in the protocol specifica-
tion, as has also been shown and reminded in [1]. We have also suggested some
countermeasures to strengthen the protocols against such problems. However,
our suggestions are not entirely exhaustive, hence further analysis needs to be
conducted on them.
It would be interesting to consider how to secure the entire smartcard system
to encompass the reader as well, since current systems only assure that the card
is tamper-resistant while the reader is left vulnerable to tampering, and the
communication line between the smartcard and the reader can be eavesdropped
easily.
References
1. M. Abadi. Explicit Communication Revisited: Two New Attacks on Authentication
Protocols. IEEE Transactions on Software Engineering, vol. 23, no. 3, pp. 185-186,
1997.
2. Y. Desmedt, C. Goutier, S. Bengio. Special Uses and Abuses of the Fiat-Shamir
Passport Protocol. In Proceedings of Crypto ’87, LNCS, vol. 293, Springer-Verlag,
pp. 21-39, 1988.
3. N. Ferguson, B. Schneier. Practical Cryptography. Wiley Publishing, Indiana, 2003.
4. ISO/IEC. Information Technology - Security Techniques ( Entity Authentication
Mechanisms Part 2: Entity authentication using symmetric techniques, 1993.
5. G. Lowe. An attack on the Needham-Schroeder public-key protocol. Information
Processing Letters, vol. 56, pp. 131-133, 1995.
1074 R.C.-W. Phan and B.-M. Goi
gbkim@silla.ac.kr
1 Introduction
The textile industries, as with any industry today, desire to produce the highest quality
goods to meet customer demands and to reduce the costs associated with off-quality
in the shortest amount of time [1], [2]. Currently, much of fabric inspection is done
manually after a significant amount of fabric is produced, removed from the weaving
machine, batched into large rolls (1,000-2,000 yards or more) and then sent to an
inspection frame. Only about 70% of defects are detected in off-line inspection, even
with the most highly trained inspectors. Off-quality sections in the rolls must be re-
rolled to remove them.
An automated defect detection and identification system enhances product quality.
It also provides a robust method to detect weaving defects. Higher production speeds
make the timely detection of fabric defects more important than ever. Newer weaving
technologies tend to include larger roll sizes, and this translates into a greater poten-
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 1075 – 1084, 2005.
© Springer-Verlag Berlin Heidelberg 2005
1076 S. Kim et al.
tial for off-quality production before inspection. Computer vision systems are free of
some of the limitations of humans while offering the potential for robust defect detec-
tion with few false alarms. The advantage of the on-line inspection system is not only
defect detection and identification, but also quality improvement by a feedback con-
trol loop to adjust setpoints.
In this paper we introduce a computer-vision-based automatic inspection system
that can be effectively used to detect and identify faults in various kinds of fabrics.
The four major textile defects and the defects of the different styles are illustrated in
Figures 1(a) and (b), respectively. Automatic inspection of textile fabrics can be
achieved by employing feature analysis algorithms. The feature extraction and identi-
fication problem is in fact a problem of classifying features into different categories
[3], [4]. It may be viewed as a process of mapping from the feature space to the deci-
sion space [5]. Product characterization is an important application area of these
algorithms.
Fig. 1. (a) Four major textile defects (b) Fabric defects of the different styles
2 Preprocessing
The proposed inspection system architecture consists of preprocessing, feature extrac-
tion and decision support systems, as shown in Figure 2.
On-line Fabric-Defects Detection Based on Wavelet Analysis 1077
Horizontal
Scanning Processing:
Feature
Padding,
N Extraction:
Image Aveaging,
2 Wavelets
1 Vertical Windowing
Scanning
Fault Fault
Control
Declaration Identification
Preprocessing should actually work together with feature extraction, or at least with
the feature extractor's objective. So, the objective of this procedure is to reduce the
search space in order to ease the operation of feature extraction, and to enhance the
real signal to improve the quality of feature extraction. Since the time requirement is
critical in an on-line inspection system, reduction of search space is the first priority
in scanning.
A projection method is proposed in consideration of the uniqueness of fabric
defects. It is not difficult to perceive that defects in clothes sit mostly either
horizontally or vertically. As a matter fact, this is determined by the way in which
fabrics are made. Since only the line-type of information is important for fabrics,
there is no need to tackle time-consuming 2-D identification unless defect details are
required to be identified to almost an extreme degree. Thus in this study, we projected
2-D images horizontally and vertically into two 1-D signals. Vertical projection is
called horizontal scan and produces horizontal signals. This type of projection is
illustrated in Figure 3. By projection, more specifically we mean that we average all
pixel values along a specific direction and use this average value (a point) to represent
all of the pixels (a line). Mathematically, we can express this kind of projection as
below:
n
horizontal signal : Ph (i ) = ¦ A(i, j ) / n
j =1
m
(1)
vertical signal : Pv (i ) = ¦ A(i, j ) / m
i =1
where A(i, j ) is the scanned image matrix and i = 1,…,m, j = 1,…,n. These 1-D
procesing approach as a preprocessing will prepare for the feature extractor.
1078 S. Kim et al.
Image
Vertical
scan
horizontal
Vertical
scan
signal
horizontal
signal
For convolution (or transform) with wavelets, we need to pad at the start and finish
ends of the 1-D signal. To avoid an edge distortion artifact the data must merge
smoothly with an appropriate padding. We have tried (1) padding a constant value;
(2) padding an average value; (3) padding a mirrored part of a signal; and (4) padding
a repeated part of a signal. We now propose to pad a rotated part of a signal. An ex-
ample of the rotational padding is shown in Figure 4. The benefits of this method are
the following:
- a part of signal not a man-made one is used;
- no high frequency area is created at the ends;
- a defect very close to the ends is amplified;
- the center of the wavelet is aligned with the start of the signal.
V-Scan
160
Start End
150 Finish End
140
130
Padding
120
0 50 100 150 200 250 300
H-Scan
160
Start End
140
120
Finish End
100
0 50 100 150 200 250 300 350 400 450
3 Feature Extraction
Automatic inspection of textile fabrics can be achieved by employing feature analysis
algorithms. The feature extraction and identification problem is in fact a problem of
classifying features into different categories. It may be viewed as a mapping from the
feature space to the decision space.
The overall block diagram of the proposed method is shown in Figure 5. The algo-
rithm consists of wavelet analysis, optimization of the wavelets' coefficients, and the
signal-to noise ratio (SNR). These components for feature extraction, detection, and
identification are discussed in the following sections.
Wavelet transform (WT) has been widely described in [6], [7] and consists of the
convolution product of a function with an analyzing wavelet. The input signal x(t ) is
in the form of a stream of 1-D data. This data undergoes preprocessing in order to
reduce its noise content and increase its usability.
WT, with different wavelet functions to extract features from the signal, is shown
in Figure 5. WT provides an alternative to classical short time Fourier transform
(STFT) and Gabor Transform [8] for non-stationary signal analysis. The basic differ-
ence is that, in contrast to STFT, which uses a single analysis window, WT employs
short windows at high frequencies and long windows at low frequencies [9]. Basis
functions, called wavelets, constitute the underlying element of wavelet analysis.
They are obtained from a single prototype wavelet via compression and shifting op-
erations. The prototype is often called the mother wavelet. The notion of scale is in-
troduced as an alternative to frequency, leading to the so-called time-scale representa-
tion.
Let x(t ) ∈ L2 ( R) be the signal to be analyzed. Let α , β ∈ R , where α is a scaling
factor and β is a translation in time. A family of signals, called wavelets, is chosen,
{ψ α ,β } ∈ L2 ( R) , for different values of α and β , given by
−
1
§t − β ·
Ψα ,β (t ) ≡ α 2ψ ¨ ¸ ∀α , β ∈ R
© α ¹ (2)
∞
³ −∞
ψ (t )dt = 0
∞
cα ,β =< x,ψ α ,β >= ³ x(t )ψ α ,β (t )dt. (3)
−∞
1080 S. Kim et al.
From
Captured Image
Vertical Scan ω2 Calculate V-SNR i
ω3
+ Calculate
V-Scan SNR i ,
H-Scan SNR i Ratio
(V/H SNR i Ratio)
ω1
ω3
Wavelets +
(2)
(1)
The transformation applied to the wavelet coefficients at the different scales in-
cludes segmentation, generation of windows, and multiresolution recombination using
a coarse-to-fine approach. We use three wavelets of different scale in Equation (5).
The wavelet coefficients are optimized based on the SNR defined in the next section.
As an optimization method, the simplex method [10] for nonlinear programming
problems is employed. The objective function is defined as
where i is the number of sampled images and j is the results of 1-D signals. The
optimized three wavelets with scale factors α =0.29, 0.58, and 0.78, are shown in
Figure 6.
-1.0026e-017
0.5
-0.5
-1
5 10 15 20 25 30
0.776437
-1.007e-017
0.5
-0.5
-1
5 10 15 20 25 30
0.581096
5.55707e-019
0.5
-0.5
-1
5 10 15 20 25 30
0.288943
The maximum and the average of the waveform can be used to calculate the SNR.
The SNR is then max(waveform)/average(waveform). This method sometimes gave
us good results. But in some other cases, this method did not work well. The reason is
that the average of the waveform includes the signal (or feature). Thus, the SNR be-
comes smaller for large signals.
The new method is proposed in order to separate the signal from the noise. A win-
dow is applied to the waveform to pick up the signal. The SNR is calculated as
F(signal)/F(noise) where F is a function that could be Max, Area, or Energy (power).
The energy consideration allows us to use more information in the signal. Hence,
the resulting gap between the SNR with signal and the SNR with no signal could be
relatively greater than that resulted from the first method. This wider SNR gap eases
thresholding and thus increases detectability. The SNR used in this paper is as
follows:
1082 S. Kim et al.
max(| si |)
SNR = i
, p j ∈ si
(¦i =1 | si | − ¦ j =1 | p j |) /( m − n)
m n
(6)
p j : sk − ( n −1) / 2 ≤ p j ≤ sk + ( n −1) / 2
pmax = max(| si |) at i = k.
i
4 Experimental Results
The captured images were tested with the optimized three wavelets that helped to
detect low-, medium-, and high-frequency defects. The images included different
defects. Also we tested the different styles of fabric. The analyzed results show that
defects were detected according to the different defect types and styles of fabric. For
example, the horizontal defect in Figure 7 was detected from the vertical scan in the
high-frequency SNR, 16.56. The vertical defect in Figure 8 was detected from the
horizontal scan in the medium-frequency SNR, 7.62. The slub defect in Figure 9 was
detected from the vertical scan in the high-frequency SNR, 9.86. These results show
the robustness of the proposed method. The decision support system for identification
was performed using these vertical and horizontal SNR information.
5 Conclusions
This paper introduces a vision-based on-line fabric inspection methodology for woven
textile fabrics. Due to the inherent periodicity, variability, and noise of textile fabrics,
it is not easy to use the traditional frequency techniques to perform an adequate analy-
sis. The proposed inspection system consists of the following modules: capturing
images, vertical and horizontal scanning algorithms, wavelet transform to extract
On-line Fabric-Defects Detection Based on Wavelet Analysis 1083
features, SNR calculation, and defect declaration routines. The optimization process
attempts to choose the best wavelet scales for a given mother wavelet. The test results
from different types of defect and different styles of fabric demonstrate the effective-
ness of the proposed inspection system.
References
1. Kim, S., Vachtsevanos, G., and Dorrity, J.L.: An intelligent approach to integration of tex-
tile processes. ASME '96 Intl. Congress & Exposition, Atlanta, GA, (1996) 73-79
2. Vachtsevanos, G., Dorrity, J.L., Kumar, A., Kim, S.: Advanced application of statistical
and fuzzy control to textile processes. IEEE Trans. on Industry Applications. 30 (1994)
510-516
3. Jasper, W.J., Garnier, S.J.,Potlapalli, H.: Texture characterization and defect detection us-
ing adaptive wavelets. Optical Engineering. 35 (1996) 3140-3149
4. Brad R. and Brad R.: Quality Assurance by Automated Defect Detection of Textile Fab-
rics. Proc. of XI-th Int. Symp. SINTES, vol. II. Craiova Romania (2003) 487-491
5. Chan C.H. and Pang G.: Fabric defect detection by Fourier analysis. IEEE Trans. Ind. Ap-
plication. 36 (2000) 1267-1276
6. Mallat, S.: Wavelets for a vision. Proceedings of the IEEE. 84 (1996) 604-614
7. Strang, G., Nguyen, T.: Wavelets and filter banks. Wellesley-Cambridge Press (1996)
8. Masters, T.: Signal and Image Processing with Neural Networks. John Wiley and Sons,
Inc. (1994)
9. Rioul, O., Vetterli, M.: Wavelet and Signal Processing. IEEE Signal Processing Magazine.
8 (1991) 14-38
10. Rao, S.S.: Optimization-Theory and Applications. New York, John Wiley Sons (1984)
292-300
Application of Time-Series Data Mining for Fault
Diagnosis of Induction Motors
Hyeon Bae1, Sungshin Kim1, Yon Tae Kim1, and Sang-Hyuk Lee1
1 School of Electrical and Computer Engineering, Pusan National University,
30 Jangjeon-dong, Geumjeong-gu, 609-735 Busan, Korea
{baehyeon, sskim, dream0561, leehyuk}@pusan.ac.kr
http://icsl.ee.pusan.ac.kr
1 Introduction
The most popular way of converting electrical energy to mechanical energy is an induc-
tion motor. This motor plays an important role in modern industrial plants. The risk of
motor failure can be remarkably reduced if normal service conditions can be arranged in
advance. In other words, one may avoid very costly expensive downtime by replacing
or repairing motors if warning signs of impending failure can be headed. In recent years,
fault diagnosis has become a challenging topic for many electric machine researchers.
The major faults of electrical machines can be broadly classified as follows [1]:
• Broken rotor bar or cracked rotor end-rings
• Static and dynamic air-gap irregularities
• Bent shaft (akin to dynamic eccentricity)
• Bearing and gearbox failure
The diagnostic methods to identify the faults listed above may involve several dif-
ferent types of fields of science and technology [1], [2]. Several methods used to
detect faults in induction motors are as follows:
• Electromagnetic field monitoring
• Temperature measurements
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 1085 – 1094, 2005.
© Springer-Verlag Berlin Heidelberg 2005
1086 H. Bae et al.
• Infrared recognition
• Radio frequency (RF) emissions monitoring
• Noise and vibration monitoring
• Motor current signature analysis (MCSA)
• AI and NN based techniques
Although the Fourier transform is an effective method and widely used in signal
processing, the transformed signal may lose some time domain information. The limi-
tation of the Fourier transform in analyzing non-stationary signals leads to the intro-
duction of time-frequency or time scale signal processing tools, assuming the inde-
pendence of each frequency channel when the original signal is decomposed. This
assumption may be considered as a limitation of this approach.
Wavelet transform is a method for time varying or non-stationary signal analysis,
and uses a new description of spectral decomposition via the scaling concept. Wavelet
theory provides a unified framework for a number of techniques, which have been
developed for various signal processing applications. One of its feature is multi-
resolution signal analysis with a vigorous function of both time and frequency local-
ization. Mallat’s pyramidal algorithm based on convolutions with quadratic mirror
filters is a fast method similar to FFT for signal decomposition of the original signal
in an orthonormal wavelet basis or as a decomposition of the signal in a set of inde-
pendent frequency bands. The independence is due to the orthogonality of the wavelet
function [3].
Winding
Winding
damage
Stator
Rotor
Rotor
Method
Bear
Vibration × ×
MCSA ×
Axial flux × ×
Lubricating oil debris × × × ×
Cooling gas × ×
Partial discharge × × × ×
Application of Time-Series Data Mining for Fault Diagnosis of Induction Motors 1087
Though almost 4~50% of all motor failures are bearing related, very little has been
reported in the literature regarding bearing related fault detection techniques. Bearing
faults might manifest themselves as rotor asymmetry faults from the category of ec-
centricity related faults [5]. Harmonic components introduced by bearing failures in
the line current spectrum are given by [4]:
f bg = f ± kf b (1)
d2 (2)
f b = Zf r / d (1 − cos 2 α )
D2
where, Z is the number of balls in the bearing, D is the diameter of the pitch circle,
and α is the contact angle in radians.
Artificial intelligence or neural networks have been researched to detect bearing
related faults on line. Also, adaptive, statistical time frequency methods have been
studied to locate bearing faults.
Rotor failures now account for 5-10% of total induction motor failures. Broken rotor
bars give rise to a sequence of side-bands given by:
f b = (1 ± 2ks) f k = 1, 2, 3, ! (3)
where f is the supply frequency and s is the slip. Frequency domain analysis and
parameter estimation techniques have been widely used to detect these types of
faults.
In practice, current side bands may exist even when the machine is healthy [6].
Also rotor asymmetry, resulting from rotor ellipticity, misalignment of the shaft with
the cage, magnetic anisotropy, and other problems shows up with the same frequency
components as the broken bars [7].
This fault is the result of an unequal air-gap between the stator and rotor. It is
called static air-gap eccentricity when the position of the minimal radial air-gap
length is fixed in space. In dynamic eccentricity, the center of rotor is not at the
center of rotation, so the minimum air-gap changes as the rotor turns. This maybe
caused by a bent rotor shaft, bearing wear or misalignment, mechanical resonance
at critical speed, or other conditions. In practice an air-gap eccentricity of up to
10% is permissible.
Using MCSA the equation describing the frequency components of interest is:
ª (1 − s) º (4)
f «(kR ± nd ) ± v»
¬ p ¼
1088 H. Bae et al.
where nd=0 (in case of static eccentricity), and nd=1, 2, 3, … (in case if dynamic ec-
centricity). f is the fundamental supply frequency, R is the number of rotor slots, s is
slip, p is the number of pole pairs, k is any integer and υ is the order of the stator time
harmonics.
Even though it is obvious, it bears stating, sometimes different faults produce
nearly the same frequency components or behave like healthy machine, which make
the diagnosis impossible. This is another reason new techniques must be developed.
Figures 1 shows the system structure.
Analog Inputs
Notch
Filter
Digital Analog
Outputs Outputs
Computer
Interface
Board
Personnel computer
3 Wavelet Transformation
j
When Wf(b, a ) is known only for a<a0, to recover f we need a complement of in-
formation corresponding to Wf(b, aj) for a<a0. This is obtained by introducing a scal-
ing function φ that is an aggregation of wavelets at scales larger than 1. ψˆ ( w) and
ϕˆ ( w) are Fourier transforms of ψ(t) and ϕ(t) respectively. ψ(t) is a band pass filter,
and ϕ(t) is a low-pass filter. Taking positive frequency into account ϕˆ ( w) has infor-
Application of Time-Series Data Mining for Fault Diagnosis of Induction Motors 1089
mation in [0, π] and ψˆ ( w) in [π, 2π]. Therefore they both have complete signal infor-
mation without any redundancy. Decomposing the signal in [0, π] using Mallat’s
algorithm gives:
h( n) = 2 − j ϕ (2 −1 t )ϕ (t − n) (8)
j = 0, 1, 2, !
g (n) = 2 ψ ( 2 t )ϕ (t − n)
−j −1
Wavelet decomposition does not involve the signal in [π, 2π]. In order to decom-
pose the signal in whole frequency bands, wavelet packets can be used for this pur-
pose. A single act of decomposition results in 2l frequency bands each with the same
bandwidth. That is:
ª (i − 1) f n if n º (9)
« 2 , 2» i = 1, 2,!, 2 j
¬ ¼
where, fn is the Nyquist Frequency, in the ith frequency band.
A wavelet can decompose an original signal that is non-stationary or stationary into
independent frequency bands with multi-resolution.
4 Experimental Results
The motor ratings applied in this paper depend on electrical conditions. The rated
voltage, speed, and horsepower are 220V, 3450RPM, and 0.5HP, respectively. Also
implemented motor specifications include the number of slots, the number of poles,
slip, and other factors. The specifications for used motors are 34 slots, 4 poles, and 24
rotor bars. Figure 2 shows the experiment equipment.
The current signals are measured under fixed conditions that consider the sensitiv-
ity of the measuring signals that is, the output of the current probes. The sensitivity of
each channel is 10mV/A, 100mV/A, and 100mV/A, respectively. The specification of
the measured input current signal under this condition consists of 16,384 sampling
1090 H. Bae et al.
numbers, 3kHz maximum frequency, and 2.1333 measuring time. Therefore the sam-
pling time is 2.1333 over 16,384. Fault types used in this study are broken rotor,
faulty bearing, bowed rotor, unbalance, and static and dynamic eccentricity.
When wavelet decomposition is used to detect faults in induction motors, the un-
synchronized current phase problem should have great influence on the detection
results. Figure 3 shows original current signals that are not synchronized with the
origin point. If the target signals are not synchronized with each other, unexpected
results will appear in wavelet decomposition as shown in Fig. 4. Therefore, the sig-
nals have to be re-sampled with the starting origin to phase zero. In this study, 64 of
128 cycles of the signals had to be re-sampled. The average value divided by one
cycle signal is used to reduce the noise of the original signals. Figure 5 shows the
synchronized and normalized signals used in data preprocessing.
In this paper, wavelet analysis was used to detect the faults of induction motors as
shown in Fig. 6. Wavelet transform is suitable for time series data mining for extract-
ing the features of faulty motors because the wavelet transform does not lose time
information while transforming. In this paper, the specific scale of wavelet decompo-
sition is considered in fault detection, as shown in the figure. Because this detail scale
contains most of the information for several faults, the 6th decomposition scale value
was analyzed for fault detection. Trial-and-error resulted in the total decomposition of
12 scales. The Coif-let wavelet function was selected based on experimental experi-
ence as providing better performance to perform the decomposition. If the mother
wavelet function is changed, the performance will also change.
Fig. 6. Details and approximate signals for full loads in wavelet decomposition
1092 H. Bae et al.
(a) Energy values of detail sixth details (b) zoom-in graph of the 6th detail
Fig. 7. Energy values of detail scale 6 for fault detection and zoom-in graph around the 4th
values of detail scale 6
The energy values of decomposed wavelets has been used to detect broken bar
faults in past studies but this approach is not useful for detecting several types of
faults. The energy values were only used to distinguish properly functioning machines
from faulty ones. The energy values are calculated by the squared sum of Wavelet
decomposition detail 6 of 18 data. The energy value of properly functioning machines
is much different from those of faulty ones, as shown in Fig. 7 (a). The collected fea-
tures are a gradient value between the 3rd and 4th values and a peak value of the 4th of
the 6th as shown in Fig. 7 (b). These features classified the faults best.
Figure 8 represents the results of wavelet analysis and Table 2 shows the results of
feature extraction using the Wavelet analysis. The decomposition results show the
Application of Time-Series Data Mining for Fault Diagnosis of Induction Motors 1093
specific features among the faults used in this study. Most faults can be detected by
wavelet analysis except for broken rotor bars and static eccentricity as shown in the
figure. This is because the original signals of those two faults have similar shapes.
Broken rotor bars and static eccentricity could not be classified by Wavelet analysis.
To solve this problem, another approach was required to detect both faults and
Fourier transform was applied to detect broken rotor bars. This analysis was suitable
for detecting broken rotor bar, because this analysis shows that broken rotor bars have
a specific side band around supply frequency, as shown in Fig. 9. Broken rotor bars
can be detected by analyzing the Fourier transform as shown in the figure. From the
analysis result, it is possible to detect the some faults using the Fourier and wavelet
analysis. Performance of fault detection and diagnosis can be improved using wavelet
analysis and Fourier analysis together.
5 Conclusion
This paper described the time-series data mining that extracts features from time-
series data such as supplied current signals of target motors. Fourier and wavelet
transform are the typical techniques for the time-series data mining.
1094 H. Bae et al.
The wavelet analysis method can detect most of the faults of induction motors. The
exception is a mechanical fault like bearing bowed fault. The gradient and peak val-
ues of the 6th detail result of 12 scales of wavelet decomposition were used.
The features of broken rotor bar and static eccentricity yield similar results in the
wavelet analysis, but were different in Fourier analysis. Therefore the use of both
types of analysis together can distinguish the faults. In future work, classification
models such as neural networks should be used to automatically classify faults.
Acknowledgement
This work was supported by “Research Center for Logistics Information Technology
(LIT)” hosted by the Ministry of Education & Human Resources Development in
Korea.
References
1. P. Vas, Parameter Estimation, Condition Monitoring, and Diagnosis of Electrical Ma-
chines, Clarendron Press, Oxford, 1993.
2. G. B. Kliman and J. Stein, “Induction motor fault detection via passive current monitor-
ing,” International Conference in Electrical Machines, Cambridge, MA, pp. 13-17, August
1990.
3. K. Abbaszadeh, J. Milimonfared, M. Haji, and H. A. Toliyat, “Broken Bar Detection In
Iduction Motor via Wavelet Transformation,” IECON’01: The 27th Annual Conference of
the IEEE Industrial Electronics Society, pp. 95-99, 2001.
4. Y. E. Zhongming and W. U. Bin, “A Review on Induction Motor Online Fault Diagnosis,”
The Third International Power Electronics and Motion Control Conference (PIEMC 2000),
vol. 3, pp. 1353-1358, Aug. 15-18, 2000.
5. Masoud Haji and Hamid A. Toliyat, “Patern Recognition-A Technique for Induction Ma-
chines Rotor Fault Detection Eccentricity and Broken Bar Fault,” Conference Record of
the 2001 IEEE Industry Applications Conference, vol. 3, pp. 1572-1578, 30 Sept.-4 Oct.
2001.
6. S. Nandi, H. A. Toliyat, “Condition Monitoring and Fault Diagnosis of Electrical Machines
– A Review,” IEEE Industry Applications Conference, vol. 1, pp. 197-204, 1999.
7. B. Yazici, G. B. Kliman, “An Adaptive Statistical Time-Frequency Method for Detection
of Broken Bars and Bearing Faults in Motors Using Stator Current,” IEEE Trans. On In-
dustry Appl., vol. 35, no. 2, pp. 442-452, March/April 1999.
Distortion Measure for Binary Document Image Using
Distance and Stroke
Abstract. This paper proposes a new objective distortion measure for binary
document images. This measure is based on flipped pixel’s immediate
neighbors. And it considers the distance between the flipped pixel and neighbor
pixels and stroke direction of the neighbor pixels. The simulation and
experiments results show that the proposed distortion measure for binary
document images matches well to subjective evaluation by human visual
perception.
1 Introduction
Distortion measures, which give a numerical measure of picture quality, play an
important role in many fields of image processing, watermarkning and data hiding.
Digital document image has been receiving more and more attention at present.
Digital document images are essentially binary images. In some binary document
image applications, visual distortion may be present, and it is very important to
measure such distortion for performance evaluation. There are two ways to measure
visual distortion [1]. One way is subjective measure, and the other is objective
measure. Subjective measure is costly, but it is important, since a human is the
ultimate viewer. On the other hand, objective measure is repeatable and easier to
implement, although such a measure do not always agree with the subjective one.
There are some objective measures giving simple mathematical deviations between
the original and the reproduced image. The most widely used such measure is the
peak signal-to-noise ratio (PSNR). Although such measures quantify the error in
mathematical terms, they do not necessarily reflect the observer’s visual perception of
the errors.
Human visual perception of document images is different from that of natural
images, which are usually continuous multiple-frequency images. Document images
are essentially binary, and there are only two levels, black and white. Moreover,
documents are mostly consisting of characters, which are more impressive symbols
rather than physical objects in natural images. Hence, the HVS models built for
natural images may not be well suited for document images. So the perception of
distortion in document images is also different from that in natural images. In a
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 1095 – 1101, 2005.
© Springer-Verlag Berlin Heidelberg 2005
1096 G. Jin and K.D. Lee
particular language, such as English, people know very well what a certain alphabetic
character should look like. Hence, distortion in document image could be more
obtrusive than distortion in natural images. And the distortion measures proposed for
natural images are not often applicable to binary document images.
Several methods for measuring distortion for document images have been proposed
in literature. Wu et al [2] measure the visual distortion in data hiding through the
change in smoothness and connectivity caused by flipping a pixel. However, the
analysis involved is too complex. DRDM method [3] uses a weight matrix to measure
the distortion, but this method does not consider the flipped pixel and the stroke
direction of character.
In this paper, we propose a new distortion measure algorithm for binary document
images. This paper is organized as follows. In section 2, the proposed algorithm is
introduced. Section 3 shows the simulation and experiment results. Finally, this paper
is concluded.
First, this scheme measures the distortion using a weighed matrix with each of its
weights determined by the reciprocal of a distance measured from the center pixel.
The weight matrix Wm is of size m × m, m =2 × n +1, n=1, 2, 3, 4, …, The center
element of this matrix is at (ic, jc), ic = jc = (m+1)/2. Wm (i, j), 1 ≤ i, j ≤ m , is defined
as follows:
W (i, j )
W Nm (i, j ) = m
m
m
. (2)
¦ i =1 ¦ j =1
W m (i, j )
See the Fig.1, if the central pixel in image a1 or image b1 is flipped, we can feel
different visual distortion level in image a2 and image b2, but the same weight matrix
value can be got in image a2 and image b2, so only using the weight matrix, we can
get the same distortion value and draw the wrong conclusion.
It takes human visual perception that the eye is most sensitive to vertical and
horizontal lines and edges in an image and is least sensitive to lines and edges with a
45_degree orientation [4], so the line finding operator [5] can be applied to a binary
text document image, and line or edge directions are obtained. One possibility is a
convolution mask of size 5 × 5, we show only four orientations of the line finding
convolution mask of this size in Fig.2. They represent vertical, horizontal, diagonal
and anti-diagonal directions.
ª0 0 0 0 0º ª0 0 0 0 0º
«0 −1 2 −1 0 »» « −1 2 −1 0 0 »
« « »
h1 = « 0 −1 2 −1 0 » h3 = « 0 −1 2 −1 0 »
« » « »
«0 −1 2 −1 0 » « 0 0 −1 2 −1»
¬« 0 0 0 0 0 ¼» ¬« 0 0 0 0 0 »¼
ª0 0 0 0 0º ª0 0 0 0 0º
«0 −1 −1 − 1 0 »» « 0 0 − 1 2 −1»
« « »
h2 = «0 2 2 2 0» h 4 = « 0 −1 2 −1 0 »
« » « »
«0 −1 −1 − 1 0 » « −1 2 − 1 0 0 »
¬« 0 0 0 0 0 ¼» ¬« 0 0 0 0 0 ¼»
If line or edge obtained from line finding computation around the flipped pixel is
horizontal or vertical direction, big influence coefficient is given to the computation
of distortion. If line or edge obtained from line finding computation around the
1098 G. Jin and K.D. Lee
Then compute the visual distortion, suppose that there are N flipped (from black pixel
to white pixel or from white pixel to black pixel) pixels in the output image g(x, y),
For the kth flipped pixel in the image g(x, y), the resulted distortion is calculated from
an m*m block Bk in original image f(x, y) that is centered at (x, y)k , The distortion
measured is given by
For the possibly flipped pixels near the image edge, where m × m neighborhood
maybe does not exist, it is possible to expand the rest of the m × m neighborhood with
the same value as the flipped pixel, which is equivalent to just ignoring the rest of the
neighbors.
Assume there is only one flipped pixel in an m × m block Bk, then we consider all
flipped pixel in the image, the image distortion is given as
N
DSD =
¦ k =1
DSD k (5)
NUBN
Where NUBN is to estimate the valid area in the image and it is defined as the
number of non-uniform (not all white pixels) 8 × 8 blocks in f(x, y). However, if the
flipped pixels aggregate some areas rather than distribute in equilibrium, different
visual distortion occurs. So we modify the formula (5) to:
N
DSD eff =
¦ k =1
DSD k
(6)
NUBN eff
In this formula, Where NUBNeff is to estimate the valid area in the image and it is
defined as the number of non-uniform (not all white pixels) 8 × 8 blocks including the
flipped pixel in g(x, y).
This DSDM scheme is an efficient and simple method to measure visual distortion
for binary document images. This result can be demonstrated by the simulation and
experiment results presented below.
Distortion Measure for Binary Document Image Using Distance and Stroke 1099
The simulations are carried out to test the distortion measure. We designed the image
converted from Microsoft Word to Photo shop with a resolution of 72 dots per inch
(dpi). The image is of size 198 × 109. First, we calculate the DRDk [3] for all pixels,
then the pixels are grouped according to the DRDk, that is, the pixels having the same
DRDk are classified to the same group, distortion generator is designed to do random
flipping in different groups. Every time 51 pixels are randomly chosen for flipping.
500 test images are generated for the simulation. And we divided test images into
three groups according to the DSD value calculated. One set of the test images
generated is shown in Fig.2.
Fig. 3. Original image and Three reproduced images having the same DRD
From the Fig.3, we can feel the different distortion in the eye. And in the table 1,
there are different DSD distortion values and we can differentiate the distortion, but
1100 G. Jin and K.D. Lee
using DRDM, we can not decide the visual distortion difference. So DSDM better
agrees with the subject measure.
Then let’s see the effect of flipped pixels distribution. See the Fig.4, we can feel
different distortion. But in the table 2, these two images have the same DRD value
and DSD value, and we can not differentiate the visual distortion. But they have
different DSDeff values and can correctly evaluate the visual distortion.
We printed the Fig. 3 and Fig. 4 using a HP LaserJet 5000 printer. And we asked the
observers to rank the visual distortion level to Fig.3 and Fig.4 according to the visual
distortion that the observers perceive when they views the images at a suitable
distance under normal lighting conditions. Text one, text two and text three are
group1 and the other two are group2. Group1 has three distortion levels (high, middle,
low) and group2 has two distortion levels (high, low). We collected the ranking data
from 50 observers and got the statistics data as table 3.
In the table 3, for Group 1, Distortion level 1 denotes the highest distortion,
Distortion level 2 denotes middle distortion and Distortion level 3 denotes the lowest
distortion. We can see 100% people consider that Text one distorts least, and 90%
people consider that Text three distorts most. For Group 2, Distortion level 1 denotes
higher distortion and Distortion level 2 denotes lower distortion. 92% people consider
that Text four distorts more than Text five. Compared with the simulation results, we
can get almost the same evaluation although objective measure does not totally agree
with the subjective measure.
4 Conclusion
In this paper, we proposed a new objective distortion measure for binary document
image. This measure is based on DRDM method, but it can evaluate more accurately.
It considers the flipped pixel influence, stroke direction near the flipped pixel and
flipped pixels distribution. And simulation and experiment results show that it
matched with human visual perception very well and it is very simple, effective and it
can be implemented on-line. This measure can be used in a wide range of applications
involving visual distortion in digital binary document images, such as watermarking
and data hiding.
References
1. Yun, Q. S. and Huifang, S.: Image and Video Compression for Multimedia Engineering:
Fundamental, Algorithm, and Standards. Boca Raton, FL: CRC, (1999).
2. Min, W. and Bede, L.: Data hiding in digital binary image. Proc. IEEE Int. Conference on
Multimedia and Expo, Vol. 1, New York City, July 31-Aug. 2 (2000) 393-396.
3. Haiping, L., Jian, W., Alex C. K. and Yun Q. S.: An objective distortion measure for binary
document images based on human visual perception. Proceeding International Conference
Pattern Recognition, vol. 4, Quebec, Canada, Aug. (2002) 239-242.
4. Taylor, M. M.: Visual Discrimination and Orientation. Journal of the Optical Society of
America A, (1963) 763-765.
5. Milan, S., Vaclav, H. and Roger, B.: Image Processing, Analysis, and Machine Vision.
Thomson-Engineering, the second edition (1998).
Region and Shape Prior Based Geodesic Active Contour
and Application in Cardiac Valve Segmentation
Yanfeng Shang1, Xin Yang1, Ming Zhu2, Biao Jin2, and Ming Liu2
1
Institute of Image Processing & Pattern Recognition, Shanghai Jiaotong University,
Shanghai 200030, P.R. China
{aysyf, yangxin}@sjtu.edu.cn
2
Xinhua Hospital, Attached to Shanghai Second Medical University,
Shanghai 200092, P.R. China
zhuming58@vip.sina.com, {king1969, lesserniuniu}@hotmail.com
1 Introduction
The algorithm presented in this paper was originally developed for a project of
reconstruction of mitral valve leaflet from 3D ultrasound images sequences, which
leads to a better understanding of cardiac valve mechanics and the mechanisms of
valve failure. And Segmenting valve efficiently could also aid surgery in diagnosis
and analysis of cardiac valve disease.
Among medical imaging techniques, ultrasound is particularly attractive because of
its real time, noninvasiveness and relatively low cost. In clinical practice,
segmentation of ultrasound images still relies on manual or semi-automatic outlines
produced by expert physicians, especially when it comes to the object as complex as
cardiac valve. And the large quantities of data of 3D volume sequences make a
manual procedure impossible. Efficient processing of the information contained in
ultrasound image calls for automatic object segmentation techniques.
Geodesic active contour is a powerful image segmentation model, but it may fail in
echocardiographic sequences. For the inherent noise, intensity similarity between
object and background, and complex movements, make it difficult to segment the
cardiac valve accurately. We could make full use of the valve prior, and segment it
under the guidance of prior knowledge to improve accuracy and reduce the manual
intervention. We can segment the valve automatically guided by the following prior:
1) The valve moves in a relatively fixed region between neighbor slices.
2) The valve has a relatively stationary shape at a certain position.
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 1102 – 1110, 2005.
© Springer-Verlag Berlin Heidelberg 2005
Region and Shape Prior Based Geodesic Active Contour and Application 1103
2 Review
When segmenting or locating an object, prior information about the subject can be a
significant help. Prior based image segmentation which incorporates the prior
information of certain object into the segmenting process makes the ambiguous,
noise-stained or occluded contour clear and the final result becomes more robust,
accurate and efficient. Snake and level set are the two models which are usually used
to incorporate prior knowledge to segment certain object.
There were some applications of prior based image segmentation under snake
framework in the past several years. The snake methodology define an energy
function over a curve as the sum of an internal and external energy of the curve, and
evolves the curve to minimize the energy[1]. Prior could be incorporated into the
function as an energy item freely. D. Cremers[2,3] established a prior PDM(Point
distribute Model) of certain object, then calculated the contour’s post Bayesian
probability and made it an Energy item to control the evolving process. I. Mikic[4]
modified the internal energy to preserve the thickness of the cardiac valve leaflet. But
in snake framework, the object is described as a point serial which makes it hardly to
deal with topology changing. The goal of valve segmentation is to study the
mechanism of movement, which makes the cardiac wall that cooperates with the
valve as important as valve. And the valve leaflet may be divided into several isolate
parts in certain slices. All these mean that the topology of contour changes when the
valve moves. So it’s too hard for snake model to be applied to our project. And what
is more, snake model needs an initial outline close to the contour which makes an
automatic segmentation process impossible.
Level set based segmentation embeds an initial curve as the zero level set of a
higher dimensional surface, and evolves the surface so that the zero level set
converges on the boundary of the object to be segmented. Since it evolves in a higher
dimension, it can deal with topology changing naturally. But it is difficult to
incorporate prior knowledge into the evolution process. M.E. Leventon[5] calculated
the difference between the zero level and the statistical prior contours, and embedded
it in the evolution process. Y.M. Chen[6] made it be applicable to linear transform.
They all got a more robust result than traditional method. But calculating the
difference between zero level and prior statistical contour at each evolution step is
time-consuming, and a scalar of contour similar metric can’t guide the evolution
directly. In the following, we present a new algorithm which represents the region and
shape prior knowledge in a form of speed field. The speed vector could drive the zero
level set directly to the ideal cardiac valve contour.
1104 Y. Shang et al.
∂φ
= u ( x )(k + v0 ) ∇φ + ∇u ⋅ ∇φ
∂t (1)
Where : u ( x ) = − ∇Gσ ∗ I
where v0 is an image-dependent balloon force added to force the contour to flow
outward. In this level set framework, the surface ϕ evolves at every point
perpendicular to the level sets as a function of the curvature at that point and the
image gradient.
New speed items are added to the evolution equation of geodesic active contour.
The new prior knowledge item forms a total force with internal and external force of
the original image and drive the zero level set converge to the ideal contour. There are
two levels of the additional prior force, one is the lower level of region prior constrain
which make the zero level evolve in certain region, the other is the higher level of
shape prior constrain which makes the final contour converges to the prior shape of
object. Then we get a new equation:
∂φ (2)
= u ( x )(k + v0 ) ∇φ + ∇u ⋅ ∇φ + ¦ Fi ⋅ ∇φ
∂t
where Fi is the region, shape or the other prior knowledge forces. The speed force is
more directly and efficient than the similarity metric of contour. But what is difficult
is how to transform the prior knowledge into a speed field. The algorithm is presented
in details in following.
The movement of cardiac valve is very complex. It goes with beating of heart, turns
around the valve root, and makes great distortion by itself. But the whole valve moves
in a relatively stationary region which is just in the ventricle. When it comes to 3D
echocardiographic sequence, the valve could share the same region in different slice
of the same time. So does it in different time at the same sample position. Then we
can segment several images under the guidance of the same region. When the zero
level set is limited to evolve in the fix region, the segmenting process will be more
robust and efficient. The whole 3D echocardiographic sequence can be segmented
guided by several prior regions.
Consider a prior region Ω within which the valve moves, there is a region function
J(x,y):
Region and Shape Prior Based Geodesic Active Contour and Application 1105
1 ( x, y ) ∈ Ω ½
J ( x, y ) = ®
¯0 (x, y ) ∉ Ω¾¿ (3)
A speed field is created outside the prior region. The force of the field is zero inside
the prior region and direct to the prior region outside it. The power of the force has
close relation to the distance from the point to the prior region. So the speed field has
a potential to drive zero level set to the prior region. And the prior force would get a
balance with the inflating force nearby the boundary of the region. When segmenting
the valve, appropriate contour could be got at the root of valve lest the zero level set
evolve to the whole cardiac wall. The distance from point X to prior region Ω is
defined as:
d ( X ) X ∉Ω
γ (X ) = ® (4)
¯0 X ∈Ω
d ( X ) = min( X − X I ) XI ∈Ω (5)
§ § d 2 ··
f r (d ) = c2 ¨¨1 − exp¨¨ − 2 ¸¸ ¸¸ (7)
© © σ ¹¹
Then a speed field is gotten which could drive the zero level set to Ω .
The final region prior based geodesic active contour equation is:
∂φ ∇γ
= u ( x )(k + v0 ) ∇φ + ∇u ⋅ ∇φ + [ f r (d ) + c1 ] ⋅ ∇φ (8)
∂t ∇γ
We could get a final result which includes the cardiac valve, the root of valve and
the raised cardiac wall which cooperates with the valve by some post-processing.
Erode the prior region Ω and get Ω' , fill the segmentation result with foreground
color outside Ω' , make an intensity reversion, and then the final result is got.
Pre-processing is very important for noises which are inevitable in the ultrasound
image. Modified curvature diffusion equation (MCDE)[9,10] is adopted to filter the
original image which could preserve the edge and smooth the noise. The equation is
given as:
1106 Y. Shang et al.
∇u
u t = ∇u ∇ ⋅ c ( ∇u ) (9)
∇u
There is an example of cardiac valve segmented by region prior based geodesic
active contour in Fig. 1.
a b c
Fig. 1. Cardiac valve segmented by region prior based geodesic active contour. (a) An image
from echocardiographic sequence and prior valve region. (b) Result of preprocessing. (c) The
final segmenting result
Because of the intrinsic noise of the echocardiographic image and the blur caused by
movement of the cardiac valve, it is unavoidable that there would be some
segmentation errors. To get a more accurate contour, we need make full use of the
prior shape of heart valve in segmenting process.
A speed field is set nearby the prior shape which directs to the nearest point of
shape. The force Fshape pulls all the points nearby to the prior shape. Consider a prior
contour C, we define the distance from point X to contour C as İ:
ε ( X ) = d ( X ) = min( X − X I ) X I ∈C (10)
k (δ − d ) d ≤δ
f s (d ) = ® (12)
¯0 d >δ
The final shape prior base geodesic active contour equation is gotten:
∂φ ∇ε
= u ( x )(k + v0 ) ∇φ + ∇u ⋅ ∇φ + f s (d ) ⋅ ∇φ (13)
∂t ∇ε
The algorithm is demonstrated on synthetic image. We find that we could get a
better result guided by prior shape field (Fig. 1). We set δ =15 in segmenting the
circle.
a b c d
Fig. 2. Circle segmented by shape prior based geodesic active contour. (a)Circle stained by a
bar and salt & pepper noise. (b) Circle segmented by Geodesic active contour. (c) Prior circle
shape. (d) Circle Segmented by shape prior based geodesic active contour
Most of segmentation results above could satisfy the needs of 3D reconstruction and
diagnosis. Because of contamination of noise and movement blur, there will be
inevitable errors in some contours, such as the eighth the twelfth, and the thirteenth
contour in Figure 3. We could segment this kind of noise-disturbed images guided by
a prior shape. The prior shape could either come from an output of neighbor slices, or
from a manual outline by expert physicians. In manual outlining process, it is
unnecessary to draw out the whole shape, but the part of stained edge is just enough.
We show some results segmented by shape prior based geodesic active contour in Fig.
4. Almost all segmentation error could be restored under the guidance of the shape
prior.
Overlapping the contour slices of the same scanning time at different scanning
position, a 3D valve could be gotten (Figure 5). These contours are segmented guided
by a rectangle prior region. A few of them are resegmented guided by prior shape
outlined by physicians. It shows that our segmenting algorithms could get approving
valve contours. To facility static display, only 9 of 60 slices were shown.
Region and Shape Prior Based Geodesic Active Contour and Application 1109
Fig. 4. Cardiac valve segmented by shape prior based Geodesic active contour. (a), (g), (k) The
initial echocardiographic image. (b), (h), (l) Result guided by region prior. (c) Segmentation
result of neighbor slice. (d) Result guided by shape prior of c. (e), (i), (m) Manual outline. (f),
(j), (n) Result guided by shape prior
Fig. 5. Cardiac valve reconstructed by rotationally scanned slices which is segmented by region
and shape prior based Geodesic Active Contour
5 Conclusions
The inherent noise, blur and the large quantity of data of echocardiographic sequences
make it difficult to segment the valve structures efficiently, which holds back the
clinical application. We present a new algorithm to incorporate prior knowledge into
geodesic active contour. The priors are expressed as a speed field which directly
draws the zero level set to the ideal contour. Region prior limits the zero level set
1110 Y. Shang et al.
evolving in certain region and shape prior draws the curve to the ideal contour. The
actual application on 3D echocardiographic sequences shows that the algorithm
segments the valve structure accurately and reduces the manual procedure greatly.
Prior based image segmentation is an active subject at present. We could express
more prior knowledge as speed field and embed them in image segmentation process
in future work. Guided by prior information, the image segmentation will be more
accurate and efficient.
Acknowledgements
This work was partially supported by National Basic Research Program of China
(No.2003CB716104) and Shanghai Science and Technology Development
Foundation (034119820).
References
1. Kass, M., Witkin, A., and Terzopoulos, D.: Snakes: Active contour models. International
Journal of Computer Vision, Vol. 1(1988) 321-331.
2. Daniel, C., Florian, T., Joachim, W. and Christoph, S.: Diffusion Snakes: Introducing
Statistical Shape Knowledge into the Mumford-Shah Function. International Journal of
Computer Vision, Vol. 50(2002) 295-313.
3. Daniel, C., Timo, K. and Christoph, S.: Shape Statistics in Kernel Space for Variational
Image Segmentation. Pattern Recognition, Vol. 36(2003) 1929-1943.
4. Ivana, M., Slawomir, K. and James D.T.: Segmentation and Tracking in
Echocardiographic sequences: Active Contour Guided by Optical Flow Estimates. IEEE
Trans. on Medical Imaging, Vol. 17(1998) 274-284.
5. Michael, E.L., Grimson, W.E.L. and Olivier, F.: Statistical Shape Influence in Geodesic
Active Contours. Computer Vision and Image Understanding, Vol. 1(2000) 316-323
6. Chen, Y., Hemant, D., Tagare, S.T. etc.: Using Prior Shapes in Geometric Active Contours
in a Variational Framework. International Journal of Computer Vision, Vol. 50(2002) 315-
328.
7. Caselles, V., Kimmel, R. and Sapiro. G.: Geodesic Active Contours. International Journal
of Computer Vision, Vol. 22(1997) 61-79.
8. Kichenassamy, A., Kumar, A., Olver, P. etc.: Gradient Flows and Geometric Active
Contour Models. In IEEE Int’l Conf. Comp. Vision, (1995) 810-815.
9. Pietro, P. and Jalhandra, M.: Scale-space and Edge Detection Using Anisotropic Diffusion.
IEEE Trans. on Pattern Analysis Machine Intelligence, Vol. 12(1990) 629-639.
10. Whitaker, R. and Xue, X.: Variable-Conductance, Level-Set Curvature for Image
Processing, ICIP, (2001) 142-145.
Interactive Fluid Animation Using Particle Dynamics
Simulation and Pre-integrated Volume Rendering
Seoul National University, San 56-1 Shinlim-dong Kwanak-gu, Seoul 151-742, Korea
hlhong@cse.snu.ac.kr
1 Introduction
An active area of research in computer graphics is the animation of natural fluid
phenomena. Recently, the demand for interactive fluid animation has increased for 3D
computer games and virtual reality applications. However, it is very difficult to
animate natural fluid phenomena at interactive speed, because their motions are so
complex and irregular that intensive simulation and rendering time is needed.
In the previous research, only off-line fluid animation methods have been reported
[1-4]. In general, fluid animation is carried out by physical simulation immediately
followed by visual rendering. For the physical simulation of fluids, the most
frequently used practices are the numerical simulation of isolated fluid particles using
particle dynamics equations and the continuum analysis of flow via the Navier-Stokes
equation. Miller et al. [5] proposed a spring model among particles to represent
viscous fluid flow. Terzopoulos et al. [6] introduced molecular dynamics to consider
interactions between particles. In these approaches, when the number of particles
increases significantly, the number of related links between particles exponentially
increases. Therefore, it takes too much time for realistic fluid simulation due to the
large number of particles for describing complex fluid motions. Stam [1] proposed a
precise and stable method to solve the Navier-Stokes equations for any time step.
Foster [3] applied a 3D incompressible Navier-Stokes equation. Above methods using
the Navier-Stokes equations yield a realistic fluid motion when properly conditioned,
but still need huge calculations of complex equations. The second limitation is the
time complexity of visual rendering. Global illumination has been widely used for
natural fluid animation. Jensen et al. [7] proposed a photon mapping method currently
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 1111 – 1119, 2005.
© Springer-Verlag Berlin Heidelberg 2005
1112 J. Lee, H. Hong, and Y.G. Shin
Two approaches, particle dynamics and continuum dynamics, have been widely used
for fluid simulation. The continuum dynamics approach is not suitable for interactive
applications due to its high time complexity of calculating the Navier-Stokes equation
[1-4]. In our approach, a simple particle dynamics approach is chosen since it is much
faster than a continuum dynamics approach based on the Navier-Stokes equation.
In particle dynamics, a spherical particle is assumed to be the basic element that
makes an object such as for solid, liquid and gas, and used for calculating interactions
between particles. For N spherically symmetric particles, the total inter-particle
potential energy ( )
E r N is the sum of isolated pair interactions according to pair-wise
addition.
( )
E r N = ¦¦ u (rij ) , i ≠ j ,
N N
(1)
i =1 j =1
where r N is the set of vectors that locate centers of mass, i.e. r N = {r1 , r2 , r3 ,..., rN }
and rij is the scalar distance between particles i and j.
The elementary potential energy u (rij ) is taken from the Lennard-Jones (LJ)
potential model [9-10]. For two particles i and j separated by a distance rij , the
potential energy u (rij ) between the both can be defined as
12 6
§§ σ · § σ · ·¸
u (rij ) = 4ε ¨¨ ¨ ¸ −¨ ¸ . (2)
¨r ¸ ¨ rij ¸ ¸
© © ij ¹ © ¹ ¹
du (rij ) § 48ε
14 8
§ § σ · ·¸
·¨ §¨ σ · 1
f ij = − =¨ 2 ¸¨ ¨ ¸ − ¨ ¸ rij . (3)
drij ©σ ¹ © rij ¸
¹ 2 ¨© rij ¸¹ ¸
© ¹
Since the inter-particle potential forces are conservative within a given potential
field, the overall potential force Fi , p acting on particle i is related to the potential by
Fi , p = −
( )
∂E r N
= miri , (4)
∂ri
1114 J. Lee, H. Hong, and Y.G. Shin
where mi is the mass of particle i. Fig. 2 illustrates the Lennard-Jones potential and
the force extended over a modest range of pair separations. The critical distance at
which the positive sign of the inter-particle force becomes negative can be considered
as the particle radius.
Fi , f = −ζri , (5)
where ζ is the friction coefficient. The governing equation of the force balance on
particle i can hence be written as
−
( )
∂E r N
+ ζri = 0 . (6)
∂ri
Eq. (6) can be used to calculate the interaction between particles by assuming them
as slightly deformable soft spheres. The soft sphere collision method is useful for
treating interactions between particles with the separation distance within a moderate
multiple of the critical distance. For the collision of particles between adjacent
particles that can be assumed as hard spheres, the velocity of particle i and j after the
collision can be given as follows.
Interactive Fluid Animation Using Particle Dynamics Simulation 1115
ui =
1
mi + m j
[
(mi − em j )ui + m j (1 + e)u j ]
uj =
1
mi + m j
[
(mi − em j )u j + mi (1 + e)ui ]
vi =
1
mi + m j
[
(mi − em j )vi + m j (1 + e)v j ]
vj =
1
mi + m j
[
(mi − em j )v j + mi (1 + e)vi ] (7)
wi =
1
mi + m j
[
(mi − em j )wi + m j (1 + e)w j ]
wj =
1
mi + m j
[
(mi − em j )w j + mi (1 + e)wi , ]
where e is the restitution coefficient.
Fluids have both particle and continuum characteristics. A particle model is used to
emphasize particle characteristics, whereas a continuum model is used to emphasize
continuum characteristics. Neither model alone is sufficient since real fluids exhibit
both characteristics. Our method overcomes this difficulty by controlling simulation
parameters – the radius and number of particles. When values of these parameters are
small, the particle characteristics are emphasized, as in a splashing effect. When
values of these parameters are large, the continuum characteristics are emphasized, as
in a flowing effect. We can interactively control the mixture ratio of particle and
continuum characteristics with two parameters for desired fluid effects.
A photon mapping method [7] accomplishes the global illumination effect using ray
tracing, which is excessively slow for interactive applications. For interactive
rendering without the loss of image quality, we use a pre-integrated volume rendering
on graphics hardware. Rendering of simulation data is accomplished in the following
three steps.
In the first step, we transform the simulation data into volume data. We divide the
3D space, in which particles of simulation data are stored, into regular cells having
unit length d. The density of each cell is determined by the volume fraction value as
Eq. (8). These density values are used for volume rendering.
4
n × πr 3
3 (8)
Volume fraction = ,
d3
where n is the number of particles in the cell and r is the radius of particles.
1116 J. Lee, H. Hong, and Y.G. Shin
3 Experimental Results
All of the implementations and tests have been performed on an Intel Pentium IV PC
containing 2.4 GHz CPU and 1.0 GB of main memory with GeForce FX 5800
graphics hardware. Fig. 4 and 5 show the animation of water flowing from a bottle to
a cup. The opacity transfer function of this animation is given in Fig. 3. Red, green,
blue color and opacity are assigned in each control point V1, V2, V3 and V4. As
shown in Fig. 4, when the number of particles (n) is 2000 and the radius of particles
(r) is 0.002 [m], particle characteristics of the water are emphasized. This animation
occurs in 7 ~ 8 fps at 730 x 520 resolution. Fig. 5 shows that when the number of
particles (n) is 10000 and the radius of particles (r) is 0.003 [m], continuum
characteristics of the water are emphasized. This animation occurs in 3 ~ 4 fps at 730
x 520 resolution.
Fire and smoke is animated in about 10 fps, as shown in Fig. 7. A realistic color of
fire and rather blurred boundary colors of fire can be achieved. If we change the color
at V1 in Fig. 6 to white ((R, G, B) = (255, 255, 255)), we can add the effect of smoke
around boundaries of fire, as shown in Fig. 8. Because boundary regions have low
value of volume data, we assign white in this region.
Interactive Fluid Animation Using Particle Dynamics Simulation 1117
(a) (b)
(c) (d)
Fig. 4. The animation of pouring water from a bottle into a cup (n = 2000, r = 0.002 [m]) (a) t =
0.12 [s] (b) t = 0.18 [s] (c) t = 0.33 [s] (d) t = 1.02 [s]
(a) (b)
(c) (d)
Fig. 5. The animation of pouring water from a bottle into a cup (n = 10000, r = 0.003 [m]) (a) t
= 0.12 [s] (b) t = 0.18 [s] (c) t = 0.33 [s] (d) t = 1.02 [s]
1118 J. Lee, H. Hong, and Y.G. Shin
(a) (b)
(c) (d)
(a) (b)
4 Conclusion
This paper presents a novel technique of fluid animation, which integrates particle
dynamics simulation and pre-integrated volume rendering. The particle dynamics
simulation can be conducted in real-time using the Lennard-Jones model.
Furthermore, pre-integrated volume rendering allowed us to avoid the unnaturalness
of images usually obtained with particle dynamics. In the animation of water, both the
particle and continuum characteristics of the water can be realistically displayed by
manipulating simulation parameters. For the animation of fire and smoke, various
effects can be generated by manipulating rendering parameters. Experimental results
show that our method can simulate and render the fluid motion at interactive speed
with acceptable visual quality.
References
1. Stam, J., Stable Fluids, ACM SIGGRAPH (1999) 121-128
2. Foster, N., Practical Animation of Liquids, ACM SIGGRAPH (2001) 23-30
3. Foster, N., Realistic Animation of Liquids, Graphical Models and Image Processing (1996)
204-212
4. Enright, D., Animation and Rendering of Complex Water Surfaces, ACM SIGGRAPH
(2002) 734-744
5. Miller, Gavin S. P., Pearce, A., Globular Dynamics: A Connected Particle System for
Animating Viscous Fluids, Computers and Graphics Vol. 13, No. 3 (1989) 305-309
6. Terzopoulos, Platt, Fleischer, From Goop to Glop: Melting Deformable Models, Graphics
Interface (1989)
7. Jensen, H.W., Christensen, P.H., Efficient Simulation of Light Transport in Scenes with
Participating Media using Photon Maps, ACM SIGGRAPH (1998) 311-320
8. Engel, K., Kraus, M., Ertl, T., High-Quality Pre-Integrated Volume Rendering Using
Hardware-Accelerated Pixel Shading, Siggraph/Eurographics Workshop on Graphics
Hardware (2001) 9-16
9. Rapaport, D.C., The Art of Molecular Dynamics Simulation, Cambridge University Press
(1995)
10. McQuarrie, D.A., Statistical Mechanics, Harper and Row (1976)
11. Rottger., S., Kraus, M., Ertl, T., Hardware-accelerated Volume and Isosurface Rendering,
In Proc. Of Visualizastion (2000) 109-116
Performance of Linear Algebra Code: Intel Xeon
EM64T and ItaniumII Case Examples
OptimaNumerics Ltd,
Belfast, United Kingdom
{tmoreland, cjtan}@OptimaNumerics.com
1 Introduction
A large number of scientific and technical computing problems can be reduced
to three classes of “basic” problems: linear algebra, Fourier transform, and ran-
domized simulation. Of these three classes, linear algebra is often the dominant
class of problems solved in many supercomputing centers.
Routines such as matrix solvers and diagonalizers find their use in a wide
range of applications: from computational chemistry to quantum physics to
structural analysis. The performance of linear algebra code are often critical in
determining the performance of the application programs. Over the years, a de
facto standard, Linear Algebra Package (LAPACK) [5], has arisen, for handling
common linear algebra operations in a portable manner.
Today, LAPACK routines are widely accepted and used as standard linear al-
gebra routines. LAPACK implementations are available from high performance
computing software vendors, OptimaNumerics included. Also, hardware manu-
facturers often provide versions of LAPACK that are intended to be specifically
tuned for the particular architecture, along with the lower level Basic Linear
Algebra Subroutines (BLAS) [1].
Also at: School of Computer Science, The Queen’s University of Belfast, UK.
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 1120–1130, 2005.
c Springer-Verlag Berlin Heidelberg 2005
Performance of Linear Algebra Code 1121
Ax = b (1)
T
GG x = b (2)
G GT x = b. (3)
2.2 LU Solver
Given a matrix A ∈ IRn×n , there exist a factorization A = LU where L, U ∈
IRn×n . L is a unit lower triangular matrix and U is an upper triangular matrix.
Therefore, the system of linear equations Ax = b can be solved as follows:
Ax = b (4)
LU x = b (5)
2.4 QR Factorization
For the matrix A ∈ IRm×n there exists a factorization A = QR, where Q ∈
IRm×m is an orthogonal matrix and R ∈ IRm×n is a upper trapezodial matrix.
2.5 Eigensolver
Eigenvalue and eigenvector computation is another core linear algebra problem.
For A ∈ IRn×n the n roots of the characteristic polynomial
Ax = λx (7)
the theory does not reflect what will be observed in practice, then the value of
the theory would be questionable.
An inherent problem in the traditional algorithms is that they do not lend
themselves easily to make use of hardware facilities such as instruction predic-
tion, data prefetching, and the various cache levels of the CPU. Mathematicians
and computer scientists who pay attention to the systems’ memory hierarchy,
Translation Look-aside Buffers, or CPU architecture while formulating new algo-
rithms remain as minorities. Significant proportion of mathematicians deriving
numerical algorithms also fail to pay attention to the capabilities and function-
alities of the compilers. If an algorithm is designed void of reality of computing
hardware, then the practical validity for algorithm would be questionable.
These deficiencies lead to algorithms which appear to be efficient in theory on
paper, but perform poorly when implemented and executed on a real machine.
4 Performance Tests
We conducted performance tests to benchmark the performance of the Cholesky
solver, QR Factorization, SVD, and Eigensolvers using using routines from the
OptimaNumerics Libraries on Intel Xeon EM64T and ItaniumII architectures.
The benchmarks were conducted with no other load on the machines.
1124 T. Moreland and C.J.K. Tan
Fig. 10. Performance of Cholesky solver from the OptimaNumerics Libraries compared
to the closest competitor on Intel ItaniumII CPU
References
1. Basic Linear Algebra Subroutines (BLAS). http://www.netlib.org/blas/.
2. Bientinesi, P., Gunnels, J. A., Gustavson, F. G., Henry, G. M., Myers,
M. E., Quintana-Orti, E. S., and van de Geijn, R. A. The Science of Pro-
gramming High-Performance Linear Algebra Libraries. In Proceedings of Perfor-
mance Optimization for High-Level Languages and Libraries (POHLL-02) (2002),
Association for Computing Machinery.
3. Goto, K., and van de Geijn, R. On Reducing TLB Misses in Matrix Multi-
plication. Tech. Rep. TR-2002-55, University of Texas at Austin, 2003. FLAME
Working Note 9.
1130 T. Moreland and C.J.K. Tan
Abstract. Association rule mining can uncover the most frequent pat-
terns from large datasets. This algorithm such as Apriori, however, is
time-consuming task. In this paper we examine the issue of maintaining
association rules from newly streaming dataset in temporal databases.
More importantly, we have focused on the temporal databases of which
storage are restricted to relatively small sized. In order to deal with
this problem, temporal constraints estimated by linear regression is ap-
plied to dataset filtering, which is a repeated task deleting records con-
flicted with these constraints. For conducting experiments, we simulated
datasets made by synthetic data generator.
1 Introduction
Since association rule mining algorithms were introduced in [1], there have been
many studies focusing on how to find frequent patterns from a given itemset such
as market basket analysis. Traditionally, Apriori algorithm [2] and FP-Growth
[3] have been the most well-known methods. These algorithms, however, have
considered only static datasets. It means that the streaming datasets like online
transactional logs are difficult to be driven by generic Apriori-like algorithms.
In fact, many applications on the Web and real world have focused on mining
sequential patterns from data streams. For example, on-line newspaper article
recommendation, web proxy server for prefetching content, and user preference
extraction for supporting adaptive web browsing can be told as the domains
relevant to analyzing data streams from many clients.
Several studies thereby have been proposed for maintaining the set of mined
association rules. FUP (Fast UPdate) is an incremental updating technique based
on Apriori and DHP (Direct Hashing and Pruning) [5]. After a set of new trans-
actions are piled up, FUP finds out new large itemsets from a new dataset and
compared them with old ones based on heuristics, in order to determine which
operation should be executed like removing losers, generating candidate sets, and
finding winners. Furthermore, FUP2 was more generalized algorithm of FUP, as
handling other maintenance problems [6]. In [4], DELI (Difference Estimation
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 1131–1139, 2005.
c Springer-Verlag Berlin Heidelberg 2005
1132 J.J. Jung and G.-S. Jo
for Large Itemsets) was proposed as a way of estimating the difference between
the association rules in a database before and after they are updated. DELI is
used as an indicator for whether the FUP2 should be applied to the database to
accurately find out new association rules. However, these algorithms are highly
time consuming, because they are basically composed of the repetition of the
same tasks such as scanning dataset, counting itemsets, and measuring their
supports in order to generate the candidate set finding out the large itemsets
iteratively.
In this paper, we have been focusing on how to update association rules in
a temporal database of which size is relatively small. Each association rule ex-
tracted from the given transaction dataset can be qualified as the rule measures
like support and confidence. We assume that the temporal transitions of these
rule measures are very important information including the trend of the stream-
ing dataset of temporal databases. With the sequence of the rule measures of
each association rule, we simply exploit linear regression method to predict the
rule measure values of association rules at the next step. Based on this predic-
tion, therefore, a certain part of dataset related to each association rule can be
determined whether it is filtered or not.
In the following section, we describe and design the problem in small-sized
temporal databases. In section 3 and 4, we address how to establish the set of
temporal constraints by using linear regression method and how to continuously
update the association rules by filtering datasets. In section 5, experimental
results will be shown, and then, we discuss several issues related to dataset
filtering. Finally, in section 6, we draw conclusions and introduce our future
work.
2 Problem Description
In this paper, we assume that the new dataset db is added to old dataset DB,
as shown in Fig. 1.
T=t i
DB(i) db
T=t i+1
DB(i+1)
a buffer for temporally storing the new dataset. The size of this buffer size(db)
depends on the rate of temporal sensitivity RT S = size(db)/size(DB). During
merging these two datasets, heuristic-based approaches such as sliding windows
are needed to remove some parts of itemsets of DB and db. We suppose that
updating association rules is the same as mining association rules from databases
merged new dataset. A set of literals, called items is represented as X. Let DB
(and db) be a set of transactions, where each transaction Ti is the i-th itemset
{x1 , x2 , . . . , xα , . . . , xn }i . By using simple data mining algorithm, we obtain the
set of association rules discovered from DB, denoted by RDB . Each element in
this set is represented as a predicate form (e.g., xi ⇒ xj ) with rule measure-
ments like support and confidence. For example, a rule “diaper ⇒ beer” should
be attached “[support=10%, confidence=80%]”. Therefore, we note the two main
issues concentrated for updating association rules from streaming dataset in this
paper, as follows.
– Dataset filtering. Conceptually, a data mining problem is dealt with simple
generate-and-test algorithm, which is the evaluation of all possible combina-
tions among items in a given database. Dataset filtering can be regarded as
pruning the search space for improving the performance of these tasks.
– Gathering information while updating. The sequential patterns of rule
measurements can be applied to predict the corresponding association rules
at the next step. While updating frequent itemsets from streaming new
dataset, the constraints may be tighter or looser, according to the predicted
rule measurements.
Users generally define the minimum support (or minimum confidence) as the
threshold value for mining frequent patterns, according to their own preferences.
In this paper, the minimum support, which is regarded as an explicit constraint
for detecting noisy patterns such as outliers, should be determined at the very
low level, because of the association rules of which supports is expectable to be
increased. Another constraint can be generated by the mathematical prediction
for dataset filtering.
where the “residual” e is a random variable with mean zero. The coefficients
a and b are determined by the condition that the sum of the square residuals
is as small as possible. Given s data points of the form (t1 , rm1 ), (t2 , rm2 ), . . . ,
(ts , rms ), then the slope coefficients b can be computed with
%s
(ti − t̄)(rmi − rm)
¯
b = i=1%s (2)
i=1 (ti − t̄)
2
DB(i-1) db(i-1)
DB(i) db(i)
DB(i+1) db(i+1)
T T
where K is the total number of frequent patterns of which supports are larger
than the minimum support. As previously mentioned, the RT S is defined by
users and means the rate of temporal sensitivity controlling the size of db. The
small RT S can make it more frequently updating association rules.
Algorithm NC
Input:
Time Window, T W = [T0 , . . . , TN ];
Old Dataset, DB; New Dataset, db;
Set of Frequent Patterns Discovered from DB, F PDB ;
Constraint Graph, CG;
Procedure:
begin
i ← N;
while i ≥ (N − size(db)) and Ti ∈ T W do
begin
for each xj ∈ Ti do
U pdate(xj );
if (not Satisf ies(xj , CG1 (xj ))) then
P rune(xj )
i ← i − 1;
end
P rune(< listofconflicteditems >, DB);
end.
Algorithm AC
Input:
Time Window, T W = [T0 , . . . , TN ];
Old Dataset, DB; New Dataset, db;
Set of Frequent Patterns Discovered from DB, F PDB ;
Constraint Graph, CG;
Procedure:
begin
k ← N;
while k ≥ (N − size(db)) and Tk ∈ T W do
begin
for each xi ∈ Tk do
N C(xi );
if (not Satisf ies(xi , CG2 (xi ))) then
P rune(xi )
k ← k − 1;
end
P rune(< listofconflicteditems >, DB);
end.
node. More importantly, the function P rune removes the transactions conflicted
with from old dataset DB. For example, let the minimum support of an item
xi be θSup (xi ). During checking NC of new dataset db, transactions including xi
can be pruned, as shown in the following equation:
count(xi , db) ≥ θSup (xi )×(size(DB)+size(db))−Supp(xi , DB)×size(DB) (5)
where count is the function for measuring the frequency of input parameter by
counting the itemset including an item in a given dataset. After NC of a certain
item, we can retrieve binary constraints by function CG2 .
3
2.5
Speedup
2
1.5
1
0.5
0
0.2 0.4 0.6 0.8 1
Ratio of Temporal Sensitivity
First experiment found out the relationship between the coefficient RT S and
the speedup of updating association rules. As shown in Fig. 3, we were able to
1
Website: http://www.almaden.ibm.com/software/quest/Resources/index.shtml
1138 J.J. Jung and G.-S. Jo
discover that RT S = 0.8 is the optimal value. With this optimal RT S , we com-
pared the amount of dataset filtered by estimated constraints and the frequency
of updating.
References
1. Agrawal, R., Imielinski, T., Swami, A.: Mining association rules between sets of
items in large databases. In Proc. of the ACM SIGMOD Conference on Manage-
ment of Data (1993) 207–216
2. Agrawal, R., Srikant, R.: Fast Algorithms for Mining Association Rules. In Proc.
of the 20th VLDB Conference (1994)
Dataset Filtering Based Association Rule 1139
3. Han, J., Pei, J.: Mining Frequent Patterns by Pattern-Growth: Methodology and
Implications. ACM SIGKDD Explorations (2000) 31–36
4. Lee, S.D., Cheung, D.W.: Maintenance of Discovered Association Rules: When to
Update? In Proc. of ACM SIGMOD Workshop on Data Mining and Knowledge
Discovery (DMKD) (1997)
5. Cheung, D.W., Han, J., Ng, V.T., Wong, C.Y.: Maintenance of Discovered Rules
in Large Databases: An Incremental Updating Technique. In Proc. of Int. Conf.
on Data Engineering (1996) 106–114
6. Cheung, D.W., Lee, S.D., Kao, B.: A General Incremental Technique for Maintain-
ing Discovered Association Rules. In Proc. of Int. Conf. on Database Systems for
Advanced Applications (DASFAA) (1997) 185–194
7. Zheng, Q., Xu, K., Ma, S.: When to Update the Sequential Patterns of Stream
Data? In: Whang, K.-Y., Jeon, J., Shim, K., Srivastava, J. (eds.): Advances in
Knowledge Discovery and Data Mining. Lecture Notes in Artificial Intelligence,
Vol. 2637. Springer-Verlag (2003) 545–550
8. Hidber, C.: Online Association Rule Mining. In Proc. of the ACM SIGMOD Con-
ference on Management of Data (1999) 145–156
9. Pudi, V., Haritsa, J.: How Good are Association-rule Mining Algorithm? In Proc.
of the 18th Int. Conf. on Data Engineering (2002)
10. Wojciechowski, M., Zakrzewicz, M.: Dataset Filtering Techniques in Constraint-
Based Frequent Pattern Mining. In: Hand, D.J., Adams, N.M., Bolton, R.J. (eds.):
Pattern Detection and Discovery. Lecture Notes in Computer Science, Vol. 2447
Springer-Verlag (2002) 77–91
11. Papoulis, A., Pillai, S.U.: Probability, Random Variables and Stochastic Processes.
4th edn. McGraw-Hill (2002)
A Comparison of Model Selection Methods for
Multi-class Support Vector Machines
1 Introduction
Support vector machine (SVM) was originally designed for binary classification
problems. It has powerful learning ability and good generalization ability. When
dealing with problems involving more than two classes, a multi-class SVM is
typically constructed by combining several binary SVMs [8].
Generally, SVM works as follows for binary classification [1]: First the training
examples are mapped, through a mapping function Φ, into a high (even infinite)
dimensional feature space H. Then the optimal separating hyperplane in H is
searched for to separate examples of different classes as possible, while maximiz-
ing the distance from either class to the hyperplane. In implementation, the use
of kernel functions avoids the explicit use of mapping functions and makes SVM
a practical tool. However, as different kernel functions lead to different SVMs
with usually quite different performance, it turns to be very important, yet very
hard, to select appropriately the type and parameter(s) of the kernel function
for a given problem.
At present, nearly all model selection researches are based on binary classi-
fication and focus on how to estimate the generalization performance of SVMs
This work is supported by the National Natural Science Foundation of China under
grant No. 60072029 and No.60271033.
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 1140–1148, 2005.
c Springer-Verlag Berlin Heidelberg 2005
A Comparison of Model Selection Methods 1141
effectively and efficiently [6, 2, 5, 4]. For multi-class SVMs, most researchers take
it for granted to select one set of hyper-parameters for all binary SVMs involved.
Though this all-in-one method works well, it has some disadvantages. The most
obvious one is that it is not flexible and all binary SVM models have to be
re-selected when new classes enter the training set or existing classes get out of
the training set. Such re-selection can be very burdensome for real life problems
where the change of classes is common.
In this paper, we investigate an alternative model selection method, the one-
in-one method, for multi-class SVMs. The new method conducts model selection
for each binary SVM involved independently and separately. Thus it is flexible
and can deal efficiently with the change of classes in the training set. Such a
virtue can be of great value to some real life problems. The rest of the paper is
organized as follows: In Section 2, we briefly review the basic theory of SVMs.
Section 3 describes the two model selection methods for multi-class SVMs and
compares them theoretically. Experimental results and corresponding analysis
are presented in Section 4. Finally, Section 5 concludes the paper.
1 l l
min LP = ||w||2 − αi yi (xi • w + b) + αi . (2)
2 i=1 i=1
Since this is a convex quadratic programming problem, we can equally solve the
Wolfe dual
l
1
l l
max LD = αi − αi αj yi yj (xi • xj ) , (3)
i=1
2 i=1 j=1
subject to
l
αi yi = 0 ,
i=1
1142 H. Li, F. Qi, and S. Wang
αi ≥ 0 ∀i ,
with the solution
l
w= αi yi xi . (4)
i=1
The above linearly separable case results in an SVM with hard margin, i.e.
no training errors occur. If the training set is nonlinearly separable, we can
first map, through a mapping function Φ, the original inputs into a high (even
infinite) dimensional feature space H wherein the mapped examples are linearly
separable. Then we search for the optimal separating hyperplane in H. The
corresponding formulas of (3) is
l
1
l l
max LD = αi − αi αj yi yj (Φ(xi ) • Φ(xj )) . (6)
i=1
2 i=1 j=1
As the only operation between mapped examples is dot product, kernel func-
tions can be employed to avoid the explicit use of the mapping function Φ via
K(xi , xj ) = Φ(xi ) • Φ(xj ). The most popular kernels include the radius basis
function (RBF) kernel, the polynomial kernel and the sigmoid kernel.
yi (w • xi + b) − 1 + ξi ≥ 0 ∀i . (9)
Two objectives exist under such cases. One is the so called L1 soft margin for-
mula:
1 l
min ||w|| + C
2
ξi , (10)
2 i=1
A Comparison of Model Selection Methods 1143
where C is the penalty parameter. The other is the so called L2 soft margin
formula:
C 2
l
1
min ||w||2 + ξi . (11)
2 2 i=1
The two formulas mainly differ in that (11) can be treated as hard margin cases
through some transformation while (10) can not. However, (11) is more easily
affected by outliers than (10). Hence we employ (10) in this paper. The kernel
employed is the RBF kernel. Thereby two parameters need to be tuned by model
selection algorithms; the penalty parameter C and the kernel parameter σ.
Three binary SVMs need to be trained; SVM12 , SVM23 and SVM31 , where
SVMij separates class i from class j. We make the following assumptions: The
chosen hyper-parameter space is S; SVM12 takes SV11 , SV12 , SV21 , and SV22
as its support vectors; SVM23 takes SV22 , SV23 , SV32 , and SV33 as its support
vectors; SVM31 takes SV31 , SV33 , SV11 , and SV13 as its support vectors. Where
SVij is the j-th support vector from class i. Then the multi-class SVM achieved
can be illustrated in Fig. 2 in a neural network form.
However when employing the one-in-one method, the binary SVM models
are chosen on the basis of their predicted performance in classifying the two
classes involved, rather than on the basis of the predicted performance of the
global multi-class classifier. Hence the obtained binary SVMs may have greater
tendency to overfit than those obtained by the all-in-one method. This may have
a bad influence on the performance of the obtained global multi-class SVM.
4 Experiments
Experiments are carried out to compare the performance of the two model selec-
tion methods on several problems from the Statlog Collection [11] and the UCI
Repository of machine learning databases [10]. Problem statistics are listed in
Table 1. Note that in our investigation, we use the scaled version of these prob-
lems as done in [8]. For problems without testing data, we divide the original
training set into two parts; 23 of the data are used for training and the rest 13
data are used for testing.
Model selection is done in the log2 -space of both parameters. The parameter
ranges are log2 C ∈ {−5, −4, . . . , 15} and log2 σ ∈ {−15, −14, . . . , 3}. Totally
five iterations are performed for the 5-fold CV algorithm. At each iteration five
points uniformly distributed in the latest range are examined. LIBSVM [3] is
employed for SVMs training and testing. The experimental results are shown
in Table 2. Where one-in-one C employs the smallest C strategy to deal with
equi-performance hyper-parameter spaces, and one-in-one M employs the largest
margin strategy. The methods are compared by their classification rate on the
testing data.
A Comparison of Model Selection Methods 1147
From Table 2, we can see that on all problems the all-in-one method per-
forms best except satimage. On most problems, the three algorithms has very
comparative performance. However, on problems glass, vowel, dna, the two one-
in-one algorithms have poorer performance. Observing Table 1, we find that,
compared with others, these three problems have more classes and/or much
more attributes. Thereby their training sets may be not representative enough.
This coincides with the analysis in Section 3.4 that binary SVMs obtained by the
one-in-one method tend to overfit the training sets. These results, from another
point of view, imply that when there are enough representative training data,
the one-in-one method works well.
It is interesting to note that the two one-in-one algorithms have very com-
parative performance on all problems except vowel. This indicates that, although
simple, the smallest C strategy is effective. We own this to the fact that a smaller
C usually leads to SVMs with larger margins.
5 Conclusion
In this paper, we study model selection for multi-class SVMs with the one-
against-one strategy. Two methods are investigated; the all-in-one method and
the one-in-one method. The former chooses all binary SVM models simultane-
ously in one hyper-parameter space, while the latter chooses models for each
binary SVM independently and separately. Both methods have advantages and
disadvantages. The all-in-one method is robust but not adaptive to changes of
training classes. On the contrary, the one-in-one method is adaptive to changes
of training classes but not that robust. Hence the decision of which method to
be used must be made according to the specific characteristics of a given prob-
lem. At present, we are investigating the two methods on much larger problems.
Corresponding results will be reported in the near future.
References
1. Burges, C.J.: A Tutorial on Support Vector Machines for Pattern Recognition.
Data Mining and Knowledge Discovery. 2 (1998) 121–267
2. Chung, K.-M., Kao, W.-C., Sun, T., Wang, L.-L., Lin, C.-J.: Radius Margin Bounds
for Support Vector Machines with the RBF Kernel. Neural Computation. 11 (2003)
2643–2681
1148 H. Li, F. Qi, and S. Wang
3. Chang, C.-C., Lin, C.-J.: LIBSVM: A Library for Support Vector Machines. (2002)
Online at http://www.csie.ntu.edu.tw/∼cjlin/papers/libsvm.pdf
4. Staelin, C.: Parameter Selection for Support Vector Machines. (2003) Online at
http://www.hpl.hp.com/techreports/2002/HPL-2002-354R1.pdf
5. Li, H.-Q., Wang, S.-Y., Qi, F.-H: Minimal Enclosing Sphere Estimation and Its
Application to SVMs Model Selection. In: Yin,F.L., Wang, J., Guo, C.G. (eds.):
Advances in Neural Networks – ISNN 2004. (2004) 487-493
6. Chapelle, O., Vapnik, V., Bousquet, O., Mukherjee, S: Choosing Multiple Param-
eters for Support Vector Machines. Machine Learning. 46 (2002) 131-159
7. Kressel, U.: Pairwise Classification and Support Vector Machines. In: Schölkopf, B.,
Burges, C., Smola, A. (eds.): Advances in Kernel Methods: Support Vector Learn-
ing. MIT Press (1999) 255-268
8. Hsu, C.-W., Lin, C.-J.: A comparison of methods for multi-class support vector
machines. IEEE Trans. on Neural Networks. 13 (2002) 415-425
9. Wu, T.-F., Lin, C.-J., Weng, R.C.: Probability Estimates for Multi-Class Classi-
fication by Pairwise Coupling. Journal of Machine Learning Research. 5 (2004)
975-1005
10. Blake, C.L., Merz, C.J.: UCI Repository of Machine Learning Databases. (1998)
Online at http://www.ics.uci.edu/$\sim$mlearn/MLRepository.html
11. Michie, D., Spiegelhalter, D.J., Taylor, C.C.: Machine Learning, Neural and
Statistical Classification. Ellis Horwood, London. (1994) Data available at
ftp://ftp.ncc.up.pt/pub/statlog
Fuzzy Category and Fuzzy Interest for Web User
Understanding
SiHun Lee† , Jee-Hyong Lee†, , Keon-Myung Lee‡ , and Hee Yong Youn†
1 Introduction
Data mining can be defined as searching high-capacity database for useful but
unknown information that cannot be drawn by simple queries [1, 5, 7, 8]. Web
mining is a searching for useful patterns in data stored in web site or web usage
data. Usually, web mining includes web structure mining, web contents mining
and web usage mining [4, 6].
Web usage mining is a research field for searching potentially useful and valu-
able information from web log file or web usage data. One of the most interesting
information to find out through web usage mining is web users’ interest fields
and the models of users who have similar interest fields. Web log file is usually
used for web usage mining. Web log file is a simple list of pages that users vis-
ited. So, it is not easy to find out which contents a user has interest in. For
example, a user visited page A, B and C many times : page A is about football,
page B baseball and page C basketball. Then what we can obtain from page
This research was supported by Ubiquitous Computing Technology Research
Institute(04A2-B2-32) funded by the Korean Ministry of Science and Technology.
Corresponding author.
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 1149–1158, 2005.
c Springer-Verlag Berlin Heidelberg 2005
1150 S. Lee et al.
visit analysis may be very simple : “The user much visited page A, B and C
than the others.” However, we may want to have much useful information such
as that the user has interest in sports rather than he has interest in page A, B
and C. So, we need to consider the contents of the page he visited in order to
understand users and users’ interest and preference.
Most of existing methods mainly use the page visit count to obtain users’
interest [2, 3]. However, since users’ interests may change as time goes on, we
need to also consider the page visit time. If a user has visited a page many times,
then it is concluded that he has interest in that page. Since a user’s interest is
changing, simply considering visit counts may not enough. For example, a user
visited page A 100 times last month and this month page B 100 times. Then
is it reasonable to conclude that he has the same interest in page A as in page
B? Even though the visit counts of both pages are the same, page B is recently
visited than page A so we may conclude that he has more interest in page B
than A. Thus, we need to consider the visit time as well as the visit count.
The purpose of our research is proposing a method analyzing web log files to
obtain better user understanding. For this we define fuzzy categories to classify
the contents of web pages and fuzzy interests in categories reflecting not only
visit counts but also visit times. That is, our method mines web user interest
fields using fuzzy categories of web contents.
We also propose a method for understanding web page visit counts and time
users based on fuzzy interests in the category vector space. We define the category
vector space as a space whose axes are the categories given by a web administrator.
We map users’ fuzzy interests onto the category vector space and analyze them in
the space to find users who have similar interest and create user models.
In section 2, we define fuzzy interests as well as fuzzy categories. The category
vector space is described in section 3 and experiments for fuzzy interests and
user analysis in the category vector space are presented in section 4. Finally we
conclude in section 5.
C1 C2 C3 C4 C5
P1 0.1 0 0 0.3 0.6
P2 0.4 0 0 0.1 0.5
P3 0.1 0 0.3 0.1 0.5
P4 0 0 0.4 0.6 0
P5 0 0 1 0 0
P6 0 0 0 0.2 0.8
P7 0.8 0.2 0 0 0
P8 0 0 0 0.1 0.9
degree (or membership degree) of each web page to each category. A web ad-
ministrator may choose categories of interests and assign membership degrees to
each page according to its contents. Table 1 is an example of fuzzy categories of
a web-site with 8 pages from P1 to P8 . The administrator chooses five categories
from C1 to C5 . In this web site, page P1 contains topics which belong to C1 with
a degree of 0.1, C4 with 0.3 and C5 with 0.6.
Table 2. Transaction 1
C1 C2 C3 C4 C5
P1 0.1 0 0 0.3 0.6
P6 0 0 0 0.2 0.8
P8 0 0 0 0.1 0.9
μCi (T1 ) 0.03 0 0 0.20 0.77
Table 3. Transaction 2
C1 C2 C3 C4 C5
P2 0.4 0 0 0.1 0.5
P3 0.1 0 0.3 0.1 0.5
P6 0 0 0 0.2 0.8
μCi (T2 ) 0.17 0 0.10 0.13 0.60
2
Count(C5 ) = μTt (C5 ) = 0.77 + 0.60 = 1.37
t=1
Count(C5 )
Interest(C5 ) = %T %T
t=1 t − t=1 {(t × μTt (C5 )) + T }
1.37
= = 0.452
3 − {1 × 0.77 + 2 × 0.60} + 2
We may say that the user has interest in C5 with a degree of 0.452.
1. If a user does not refer pages including a field, he does not have interest in
that field.
Fuzzy Category and Fuzzy Interest for Web User Understanding 1153
2. If a user refers only pages including only a field, he has the most interest in
that field.
3. The more a user visits a page, the more interest he has in the field of the
page.
4. Even if a user equally visits two pages, he has more interest in the topic of
the pages visited more recently than the other.
Attribute 1 and 2 are the boundary condition, attribute 3 is the monotonicity and
attribute 4 is the recentness. Our definition of the interest degree also satisfies
the above attributes.
Followings are the attributes rewritten in the context of our definitions:
Through those analysis, we can know that the fuzzy interest also satisfies the
basic attributes which user’s interest may have.
All users’ fuzzy interest degrees can be mapped on points in the category vector
space. For example, there are category C1 and C2 , and User 1’s fuzzy interest
degree is (0.5, 0.7) and User 2’s fuzzy interest degree is (0.7, 0.4). Then, we make
a space where C1 and C2 are axes. The interest degrees of each user can mapped
onto a point each in the space as shown in Figure 1.
If two users’ interests are similar, those will be located near from each other in
the category vector space. Thus, the distance between two points can represent
the similarity of two users’ interests.
4 Experiments
4.1 Fuzzy Interest Analysis
Our fuzzy interest is compared with the method using only visit counts. We
compare with the following count-based method:
Number of transactions that contain the P age
Interest(P age) = .
Total number of transations
It is used in [6] for finding association rules. For experiments, we assume that
we have a web log for 60 days. We use 30-day time window, that is, we use
recent 30 days web log data for interest analysis. Through the experiments, we
verify how our method reflects time factors. We performed two experiments:
simple and realistic. We assume that there are two pages A and B each of which
contains only one topic. Figure 2 shows the comparison of the simple case. A
user’s interest is changing from page A to B at time 30. He visits only page A
from time 0 to 30 and only B after 30. Figure 2(a) shows the number of visits,
(b) the interest degrees by the counter-based method and (c) our fuzzy degrees.
Since the counter-based method considers only the visit count and does not the
Fuzzy Category and Fuzzy Interest for Web User Understanding 1155
visit time. Its user’s interest slowly reflects the user’s interest change. Since our
method gives more weight on the recent visits, it reflects the interest change
more properly than the count-based method.
Figure 3 shows (a) the visit counts, (b) the interest degrees by the count-based
method and (c) the fuzzy degree. The second experiment is for the realistic case.
In the real life, a user’s interest or visit count may be changing in a complex
pattern. The user has more interest in page A at time 0 and more interest in
page B at last but the change pattern is complex. Figure 3 is the result of this
case. We may note that our method properly reflect the user’s interest change.
1156 S. Lee et al.
For describing web contents, we choose four categories: shoes, bags, sports
and brand name. Table 4 shows the category degrees of the nine pages to each
category. For example, goods in Page 1 are related to shoes with a degree of
0.7, to shoes with 0.0, to sports with 0.3 and to brand name with 0.8. Table 5
shows users’ visit ratio of each page. In this experiment, we will show how users’
interests may be analyzed, so we present only the visit ratio. A user’s visit ratio
of a page is the ratio of the number of transactions including the page to the
number of total transactions. Thus a high ratio means a high visit count.
As we see from Table 5, it is very difficult to analyze the users: which field
who has interest in, who has a similar interest field to whose, what tendency
Fuzzy Category and Fuzzy Interest for Web User Understanding 1157
the users visiting this site have, etc.. For example, can we say that User A has
the highest interest in bags just because User A’s visit ratio of Page 8 is the
highest and Page 8 contains information on bags? It is not easy. However, if
we apply our fuzzy interest and the category vector space, we can easily an-
swer to those questions. Table 6 shows each user’s fuzzy interest to the cate-
gories in Table 4. For example, User A and B have interest in brand names,
User C in shoes, etc.. If we map the fuzzy interest degrees onto the category
vector space, we can get more interesting information. Who has the most sim-
ilar interest filed to User A’s? If we evaluate the distance from User A’s fuzzy
interest, i.e., (0.11, 0.21, 0.54, 0.14) to the others’ and then select the clos-
est one to User A, we can find. User B has the most similar interest field to
User A. Also we can analyze the users’ tendency. If we use only sports and
band name as axes, plot the fuzzy interests on the two axis space and clus-
ter them, we get the tendency in the viewpoint of sports and brand name.
Figure 4(a) shows the results: Three users locates at the right-upper corner
and other three users at the left-lower corner, so we may conclude that the
users visiting the test web site have interest in brand names if they have in-
terest in sports. Figure 4(b) shows the analysis of users in the viewpoint of
shoes and bags. We can find a tendency of the users that they do not have
1158 S. Lee et al.
interest in both shoes and bags because there is no user who locates at the
right-upper corner. From the experiments, we know that our method using fuzzy
interest and the category vector space is very useful for user understanding and
analysis.
5 Conclusion
This research is for web user understanding using fuzzy category and fuzzy inter-
est. We defined fuzzy category, and presented a method to find out fuzzy interest
degrees reflecting the time factor of transactions. We identified the attributes of
interest changes through time, and proved that our fuzzy interest satisfied those.
Also we investigated how fuzzy interest reflected the time factor through the ex-
periment and compared with the existing method. For the analysis of web users,
we defined the category vector space whose axes are the categories given by a
web administrator. Users’ fuzzy interests were mapped onto the space and ana-
lyzed. We applied it to a realistic web site log file and drew interesting results.
We could easily analyze a web log file with fuzzy categories, fuzzy interests and
the category vector space. Now, we continue our research by using real web usage
data to find out valuable information from a real web site.
References
1. R. Agrawal, R. Srikant, “Fast Algorithms for Mining Association Rules, Proc. of
VLDB Conference,” pp.487-499, 1994.
2. H. Yi, Y.C. Chen, L.P. Chen, “Enabling Personalized Recommendation on the Web
Based on User Interests and Behaviors,” Proc. of 11th International Workshop,
IEEE, pp.1066-1077, 2001.
3. A. Gyenesei, “A Fuzzy Approach for Mining Quantitative Association Rules,” TUCS
Technical Reports, no. 336, 2000.
4. J.S. Jang, S.H. Jun, K.W. Oh, “Fuzzy Web Usage Mining for User Modeling,”
International Journal of Fuzzy Logic and Intelligent Systems, vol. 2, no. 3, pp.204-
209, 2002.
5. R. Cooley, B. Mobasher, J. Srivastava, “Data Preparation for Mining World Wide
Web Browsing Patterns,” Journal of Knowledge and Information System, vol. 1, no.
1, pp.8-19, 1999.
6. R. Cooley, B. Mobasher, J. Srivastava, “Web mining : Information and Pattern
Discovery on the World Wide Web,” Proc. of the 9th IEEE International Conf. on
Tools with Artificial Intelligence, pp.61-62, 1997.
7. M. Spiliopoulou, “Web Usage Mining for Web Site Evaluation,” Communications
of the ACM, 43, pp.127-134, 2000.
8. B. Mohasher, R. Cooley, J. Srivastava, “Automatic personalization based on Web
usage mining,” Communications of the ACM, vol. 43, pp.142-152, 2000.
Automatic License Plate Recognition System Based on
Color Image Processing
Abstract. A License plate recognition (LPR) system can be divided into the fol-
lowing steps: preprocessing, plate region extraction, plate region thresholding,
character segmentation, character recognition and post-processing. For step 2, a
combination of color and shape information of plate is used and a satisfactory
extraction result is achieved. For step 3, first channel is selected, then threshold
is computed and finally the region is thresholded. For step 4, the character is
segmented along vertical, horizontal direction and some tentative optimizations
are applied. For step 5, minimum Euclidean distance based template matching
is used. And for those confusing characters such as '8' & 'B' and '0' & 'D', a spe-
cial processing is necessary. And for the final step, validity is checked by ma-
chine and manual. The experiment performed by program based on aforemen-
tioned algorithms indicates that our LPR system based on color image process-
ing is quite quick and accurate.
1 Introduction
The automatic identification of vehicles has been in considerable demand especially
with the sharp increase in the vehicle related crimes and traffic jams. It can also play a
crucial role in security zone access control, automatic toll road collection and intelli-
gent traffic management system. Since the plate can identify a car uniquely, it is of
great interest in recent decade in using computer vision technology to recognize a car
and several results have been achieved [2-14].
A typical LPR system can be divided into the following modules: preprocessing
(including image enhancement and restoration), plate region extraction, plate region
thresholding, character segmentation, character recognition and post-processing (va-
lidity checking). The first two modules, which only concern the shape and back/fore
ground color of a plate and irrespective of character set in a plate, are the front end of
the system. Module 4 and 5, on the contrary, are related to character set in a plate and
regardless of the shape and back/fore ground color of a plate, so they are the back end
of the system. Module 3, however, should take the shape and back/fore ground color
of a plate as well as character set in a plate into consideration. Therefore, it is hard to
say which end it can be categorized into.
To develop an automatic recognition system of a car plate, a stable recognition of a
plate region is of vital importance. Techniques such as edge extraction [1][6], Hough
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 1159 – 1168, 2005.
© Springer-Verlag Berlin Heidelberg 2005
1160 X. Shi, W. Zhao, and Y. Shen
transformation [7] and morphological operations [8] have been applied. An edge-
based approach is normally simple and fast. However, it is too sensitive to the un-
wanted edges, which may happen to appear in the front of a car. Therefore, this
method cannot be used independently. Using HT is very sensitive to deformation of a
plate boundary and needs much memory. Though using gray value shows better per-
formance, it still has difficulties recognizing a car image if the image has many simi-
lar parts of gray values to a plate region, such as a radiator region [11][12]. Morphol-
ogy has been known to be strong to noise signals, but it is rarely used in real time
systems because of its slow operation. So in recent years, color image processing
technology [4][5] is employed to overcome these disadvantages. First, all of the plate
region candidates are found by histogram. After that, each one is verified by compar-
ing its WHR (Width to Height Ratio), foreground and background color with current
plate standard and eliminated if it is definitely not of plate region. And finally, for
each survivor, an attempt to read plate information is made by invoking the back end.
In the back end, first channel is selected and the plate region is thresholded in the
selected channel. And then, each character is extracted by histogram and some op-
timizations such as the merge of unconnected character (i.e. Chuan, or ), the re-
moval of space mark, frame and pin, the correction of top and bottom coordinates in y
direction and tilt correction are done during this phase. Next, each character is recog-
nized by using minimum Euclidean distance based template matching since it's more
noise tolerant than structural analysis based method [2][3]. And for those confusing
characters, '8' & 'B' and '0' & 'D', for instance, a special processing is necessary to
improve the accuracy. Finally, validity checking is performed against vehicle related
crimes.
while eliminating the conversion between the two color models. Hence, the pixels are
classified into 13 categories instead of 6 according to variance of illumination in the
RGB domain. They are dark blue, blue, light blue, dark yellow, yellow, light yellow,
dark black, black, gray black, gray white, white, light white and other. Here, red is not
take into account because this color appears only once in the center or right part of the
police or military vehicle plates whose dominant character color is black. Thus, it is
enough to identify the plate by checking the black pixels. The speed is increased to
0.5 second per photo while the correct extraction rate remains the same to HLS. But,
that's not enough. Actually, the dot and line interlace scan method is used and the time
cost is reduced to 1/4 of the non-interlaced one. After the plate is extracted, the region
is verified by its shape, i.e. WHR. In China mainland, there are three WHR values,
which are 3.8 for police or military vehicle plates, 2.0 for rear edition of oversize
vehicle plate and 3.6 for others. Because 3.6 and 3.8 is too close, they are merged into
one. So if the WHR of the extracted plate is sufficiently close to 3.7 or 2.0, the verifi-
cation is passed.
According to Amdahl's law, frequent case should be favored over the infrequent
case. In China mainland, the most common plate is white characters with blue back-
ground. Therefore, plate is first tried to be recognized as a white blue pair, then as a
black yellow pair, next as a white black pair and finally as a black white pair.
Taking a white blue pair for example, this process can be illustrated as follows.
As shown in Figure 1, the whole image is scanned and only the number of dark
blue pixels exceeds the given threshold, say 1000, so it can be deduced that it is a dark
blue background plate. Thereby, the plate region in vertical direction is identified by
thresholding the histogram of dark blue pixels.
It is evident that the only candidate is the middle one (For the top, the number of
lines where number of dark blue pixels exceeds the threshold is too small and thus
omitted. If two adjacent plate regions are sufficiently close, then they are merged into
one.). In addition, owing to the favor of frequent case and the fact that the plate region
is generally occurred in the lower part of an image, the scan is done from bottom to
top and hence the middle one is first found. The extracted one is in Figure 2. Simi-
larly, by thresholding in horizontal direction, the plate region is obtained, as illus-
trated in Figure 3.
1162 X. Shi, W. Zhao, and Y. Shen
3.1 Thresholding
The thresholding procedure should introduce as little noise as possible, since subsequent
steps may be seriously affected by a poor thresholding algorithm. Also, because the
lighting conditions vary widely over a plate, locally adaptive thresholding is required.
Empirical methods are devised and they succeed in thresholding the plate region.
There are a variety of threshold algorithms, but the experiments show that "simple
is the best", if considering both speed and accuracy, so bimodal histogram segmenta-
tion [13] is introduced. As Figure 4 shows, if the pixels of objects form one of its
peaks, while pixels of the background form another peak, then the histogram is called
bimodal. It is the case provided that an image consists of objects of approximately the
same gray level that differs from the gray level of the background. Fortunately, this
condition is satisfied, for the color of characters, or, the object, is almost the same and
the color of the background of the plate region is also almost the same, which makes
this simple segmentation algorithm works. Since there are three (R, G and B) chan-
nels in an image, the channel is selected by the largest standard deviation of the three.
Larger standard deviation means longer distance between the two peaks while longer
distance between the two peaks means the clearer division between background and
object and less sensitive to the noise introduced by thresholding. In the case of the
plate region in Figure 3, the standard deviations in red, green, blue channels are 74.57,
72.51, 59.98, respectively, so the red channel is selected for thresholding. This is
reasonable, because the background is blue and the object is white, which has blue
component and naturally, standard deviation in the blue channel must be the smallest.
Without loss of generality, it is assumed that the object is white and the back-
ground is black before thresholding (If not, the color is reversed and this process is
only needed for black yellow pair and black white pair). It can be proved that after
thresholding, the number of white pixel is 68%~85% of the plate region. Suppose V is
the value making 85% of the plate become white and U is the average value of the
remaining. Then threshold value is U minus DetalV, which is from 5 to 10. Correct
thresholding is accomplished by this rule of thumb.
Automatic License Plate Recognition System Based on Color Image Processing 1163
First, according to its WHR, the plate is classified as either double line or single line.
The threshold is 1/10 and 1/6 of the width of the plate for the former and the latter,
respectively. Then the line whose number of black pixels exceeds the threshold is
selected, and if two adjacent selected regions are sufficiently close, then they are
merged into one. Next, the WHR of each segmented region is verified, if it is too
large, it is discarded as frame. This process is shown in Figure 5.
Similar process (including threshold acquisition, selection, merge and discard) can
be done in horizontal direction, as illustrated in Figure 6 and 7. The characters are
segmented, but the performance is not quite satisfactory, and therefore some optimi-
zations are carried out during this stage.
Removal of Space Mark. The space of the second and the third character is much
larger than that of any other adjacent characters, which can be formalized into the
following rule of thumb:
The ratio of the largest space to the second largest space between the adjacent
characters is 1.25~1.45.
This rule is helpful in removing the space mark, as illustrated in Figure 8. After
segmentation, 8 characters are found including the space mark, the third character.
The largest space is 55 while the second largest space is 53. The ratio is 55 / 53 =
1.04, not within the range of 1.25~1.45. It is suspicious of the existence of space
mark. If it is indeed the case, 55 must be the second largest space and the largest
space is from 69 (1.25X55=68.75) to 80 (1.45X55=79.75). By addition of the adjacent
number, it is obvious that only 35+36=71 is within that range. Hence, the third char-
acter is probably the space mark. Its histogram in vertical direction shows that the
pixel is concentrated on the center part, so it must the space mark and removed.
Merge of Unconnected Character. The first one on the plate of China mainland, the
abbreviation for province, is a Chinese character and all characters are connected
except for Chuan, necessitating a special process. A case in point is shown in Figure
9. The character Chuan is segmented into its three strokes, which must be merged.
The largest space is 148 while the second largest space is 113. The ratio is 148 / 113 =
1.31 within the range of 1.25~1.45. So the fourth character should be the second char-
acter, which means the first character is a union of the first three characters. Merge is
done in right to left order until the WHR of the merged character is within
normal range. In this case, only by merge the first three characters can the WHR be
satisfied, which leads to the correct merge of the unconnected character Chuan.
Correction of Top and Bottom. Coordinates. Because plate may be tilted, the top and
bottom coordinates are probably not correct (see in Figure 7). This process is required
and the coordinates of each character are rectified by utilizing its histogram in vertical
direction. The correction result of the plate in Figure 7 is shown in Figure 10.
Removal of Frame. In Figure 10, there's some noise in the lower right part of the last
character, which comes from the frame. But the last character is a digit, which is con-
nected. This property makes the removal of frame possible and the comparison is
shown in Figure 11.
Removal of Pin. Because of the pin, on some occasions, the results of the correction
of the top and bottom coordinates are degraded, rather than upgraded, as illustrated in
Figure 12. But owing to the linearity of the top/bottom coordinates, the top/bottom
coordinate of each character must between the top/bottom coordinates of their left and
right neighbor. In Figure 12, it is beyond doubt that the top coordinate of the second is
large than that of the first and third, so the top coordinate is substituted by the average
of that of the first and third and thus the pin is successfully removed. Pin on the sixth
can be removed in the same way and the result is shown in Figure 13.
Tilt Correction. For every segmented character, there must be a top pixel whose y
value is the biggest. The x and y coordinate of top pixel of character i is xi and yi,
respectively. Owing to the linearity of the top coordinates, the relationship between x
and y can be expressed as the following formula:
y = a + bx .
By minimizing
)2 ,
N
Q = ¦ (y
i =1
i − a − bx i
We obtain:
N N
1 1
x = ¦ xi , y = ¦ yi ,
N i =1 N i =1
2 N 2
N
1 § N · N
1§ N · 1 § N ·§ N ·
L xx = x i2 − ¨ ¦ x i ¸ , L yy = ¦ yi − ¨ ¦ yi ¸ , Lxy = ¦ xi yi − ¨ ¦ xi ¸¨ ¦ yi ¸ .
2
¦
i =1 N © i =1 ¹ i =1 N © i =1 ¹ i =1 N © i =1 ¹© i =1 ¹
The coefficient a, b and fitting coefficient γ are as follows:
Lxy Lxy Lxx
b= , a = y − bx , γ = =b .
Lxx Lxx Lyy Lyy
And the top tilting degree is arctan b . By the same token, the bottom tilting de-
gree can be calculated. If the top tilting degree and the bottom tilting degree are all
positive or negative, the plate is deemed to be tilted. The tilting degree is the average
of top tilting degree and bottom tilting degree weighed by top fitting coefficient and
bottom fitting coefficient respectively. In the case of Figure 10, the top tilting degree
and bottom tilting degree is –2.46 and –1.82, respectively. The fitting coefficients are
both –1.00. So its tilting degree is:
where x' and y' are the coordinates of the new and x and y are those of the old, θ the
rotation degree and (x0 , y0 ) the rotation center. But in most cases x0 or y0 is not
integer, so linear interpolation is employed and the result is shown in Fig. 14 and 15.
If the WHR of the character is less than 1/3, it is tried to be recognized as '1'.
For '1' candidates, if its pixel fill rate is more than 0.6, it is recognized as '1', oth-
erwise discarded.
For other characters, first, its size is normalized to 32X64. Then, minimum Euclid-
ean distance based template matching is used to recognize each character [2][3]. And
for those confusing characters such as '8' & 'B' and '0' & 'D', a special processing is
necessary. Pixels do differ in the left top triangle and in the left bottom triangle of
these 4 characters. This property endows us the opportunity to distinguish '8' from 'B'
or '0' from 'D' by checking these two triangles. Also, in China mainland, the second
character is alphabetic, the third and fourth character is alphanumeric and the last
three is numeric, this can constrain the matching in the alphanumeric template set and
eliminate the unnecessary incorrect recognition from letter to digit or vice versa.
Validity is checked by machine and manual. For machine, the plate is searched in
database to see whether it indeed exists. If the matched record does exist and is re-
trieved, the color of background and foreground of the plate is compared to those in it.
If either of the former conditions fails, the vehicle will be stopped. And if the plate is
on the blacklist, say, wanted by the police, it should be detained either. For manual,
the type (oversize or light-duty), the brand (Benz or BMW) and the color of the cur-
rent car body are compared to the information in the database. Again, if it fails, the
vehicle will be held.
4 Conclusion
The experiment performed by program based on aforesaid algorithms indicates that
our LPR system based on color image processing is quite quick and accurate. Even
on a PIII 1G PC, 90% of the photos under various illuminations are read correctly
within 0.3s.
In this article, the automatic Chinese LPR system based on color image processing
is proposed. The using of color image processing instead of grayscale, the further
division from 6 colors to 13 colors to gain the robustness under various illuminations
and the selection of channel are the major breakthroughs. And there are also some
empirical rules, such as the computation of threshold value, the optimizations during
1168 X. Shi, W. Zhao, and Y. Shen
character segmentation and the special processing to distinguish '8' from 'B' or '0'
from 'D'. The end justifies the means. Last but not least, the validity check is per-
formed. It is of absolute necessity to be introduced into a practical LPR system.
References
1. D.H. Ballard, Computer vision. Prentice-Hall Inc., (1991)
2. Ahmed, M. J., Sarfraz, M., Zidouri, A., and Alkhatib, W. G., License Plate Recognition
System, The Proceedings of The 10th IEEE International Conference On Electronics, Cir-
cuits And Systems (ICECS2003), Sharjah, United Arab Emirates (UAE).
3. Sarfraz, M., Ahmed, M., and Ghazi, S. A. (2003), Saudi Arabian License Plate Recogni-
tion System, The Proceedings of IEEE International Conference on Geoemetric Modeling
and Graphics-GMAG2003, London, UK, IEEE Computer Society Press.
4. Shyang-Lih Chang, Li-Shien Chen, Yun-Chung Chung, Sei-Wan Chen, Automatic license
plate recognition, IEEE Transactions on Intelligent Transportation Systems, Vol.: 5, Issue:
1, (2004) 42-53
5. Guangzhi Cao, Jianqian Chen, Jingping Jiang, An adaptive approach to vehicle license
plate localization, IECON '03. The 29th Annual Conference of the IEEE Industrial Elec-
tronics Society, Vol.: 2 (2003) 1786-1791
6. K. Lanayama, Y. Fujikawa, K. Fujimoto, M. Horino, Development of Vehicle License
Number Recognition System Using Real-time, Image Processing and its Application to
Travel-Time Measurement. Proceedings of the 41st IEEE Vehicular Technology Confer-
ence (1991) 798-804
7. K. M. Kim, B. J. Lee, K. Lyou, G. T. Park. The automatic Recognition of the Plate of Ve-
hicle Using the Correlation Coefficient and Hough Transform, Journal of Control, Auto-
mation and Systems Engineering, Vol.3, No.5, (1997) 511-519
8. M. Shridhar, J. W. Miller, G. Houle, L. Bijnagte, Recognition of License Plate Images: Is-
sues and Perspectives. Proceedings of International Conference on Document Analysis and
Recognition, (1999) 17-20
9. Sunghoon Kim, Daechul Kim, Younbok Ryu, Gyeonghwan Kim, A Robust License-plate
Extraction Method under Complex Image Conditions, Proceedings. 16th International
Conference on Pattern Recognition, (ICPR'02) Vol. 3 (2002) 216-219
10. H. J. Choi, A Study on the Extraction and Recognition of a Car Number Plate by Image
Processing, Journal of Korea Institute of Telematics and Electronics(KITE) (1987) Vol. 24
No. 2, 309-315
11. B. T. Cheon et al, The Extraction of a Number Plate from a Moving car, Proc. of First
Workshop on Character Recognition (1993) 133-136
12. H. S. Chong and H. J. Cho, Locating Car License Plate Using Subregion Features, Journal
of the KISS (1994) Vol. 21 No. 6, 1149-1159
13. Prewitt, J.M.S. and Mendelsohn, M.L. The analysis of cell images, in Ann. N.Y. Acad.
Sci, (1966) 1035-1053
14. E. R. Lee, P. K. Kim, H. J. Kim, Automatic Recognition of a Car License Plate Using
Color Image Processing, IEEE International Conference on Image Processing, Vol. 2,
(1994) 301-305
Exploiting Locality Characteristics
for Reducing Signaling Load in Hierarchical
Mobile IPv6 Networks
1 Introduction
The tremendous growth of wireless technology and the popularization of lap-
top/notebook computers have prompted research into mobility support in net-
working protocols. Although Mobile IPv6 (MIPv6) [1] is one of the dominating
protocols that provide mobility support in IPv6 networks, it is not scalable; For
This research was supported by University IT Research Center Project.
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 1169–1179, 2005.
c Springer-Verlag Berlin Heidelberg 2005
1170 K.-S. Kong, S.-J. Roh, and C.-S. Hwang
example, if the home agent (HA) or correspondent nodes (CNs) are far from the
MN even if the MN moves across the adjacent subnet, the binding update (BU)
messages may travel across several IP networks. In addition, as the number of
the MNs increases in the networks, the number of the BU messages1 also in-
creases proportionally and this phenomenon may result in significant signaling
and processing load through the networks. In order to overcome these drawbacks,
Hierarchical MIPv6 (HMIPv6) [2, 3] has been proposed. HMIPv6 introduces a
new entity, the mobility anchor point (MAP) which works as a proxy for the
HA in a foreign network. When an MN moves into a network covered by a new
MAP, it is assigned two new care-of-addresses (CoAs): a regional CoA on the
MAP’s subnet (RCoA) and an on-link address (LCoA). If an MN changes its
LCoA within a MAP domain, it only needs to register the new address with
the MAP. In contrast, the RCoA registered with the HA and CN does not
change.
HMIPv6 has been designed to reduce the number of the BU messages in the
backbone networks and also improve handoff performance by reducing handoff
latency. However, this does not imply any change to the periodic binding refresh
(BR) message to the HA and the CN, and now an MN additionally should send it
to the mobility anchor point (MAP). In addition, the MAP should encapsulate
and forward incoming packets directly to the MN. These facts indicate that
the reduction of the number of the BU messages in the backbone networks
can be achieved at the expense of increase of the signaling load within a MAP
domain. On the other hand, it is observed that an MN may habitually stay
for a relative long time or spend much time on connecting to Internet in a
specific cell2 (i.e., home cell ) than in the rest of the cells (hereafter, ordinary
cells) within a MAP domain. Thus, when we consider the preceding facts and
observation in HMIPv6 networks, HMIPv6 may not be particularly favorable
during a home cell residence time in terms of the signaling load; In this case, it
may be preferable that the MN uses Mobile IPv6 (MIPv6), not HMIPv6, even
if the MN is HMIPv6-aware. In a large-scale wireless/mobile network, localized
mobility management scheme (e.g., HMIPv6) will be widely used. Therefore,
in such an environments, especially when HMIPv6 is applied to a large-scale
wireless/mobile network, the efforts toward reducing the signaling load in the
networks should be more emphasized because a huge number of the MNs will be
serviced by the MAP.
This paper presents an efficient mobility management scheme to reduce the
signaling load in HMIPv6 networks, while maintaining the same level of handoff
latency as HMIPv6, which enables an MN to selectively switch its mobility man-
agement scheme according to whether it is currently in its home cell or not. The
remainder of this paper is organized as follows. Section 2 briefly mentions the
1
The BU message may also imply the periodic binding refresh (BR) message, which
is generated by an MN whenever the binding lifetime is close to expiration.
2
In this paper, we assume that HMIPv6 is applied to a large-scale wireless/mobile
network, and that the coverage area of the mobile network is partitioned into cells.
Exploiting Locality Characteristics 1171
Due to the space limitation, from now on, we will mainly describe HHMIPv6
for the Case 1 only (For more details, refer to the binding update procedure
in HHMIPv6 shown in Fig.2. All the cases from Case 1 through Case 4 can be
described in Fig.2. Note that, in Fig.2, when an MN moves from the outside cell
3
The various ways to obtain a good estimate of the home cell for each MN from these
information is an important issue by itself and is beyond the scope of this paper.
4
For the description of the movement types, we refer to the cell within another MAP
domain other than home domain as outside cell.
Exploiting Locality Characteristics 1173
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
Sequence #
A H L K M O Reserved Lifetime
Mobility Options
Start
MN moves into No
a new cell?
Yes
No No
New LCoA = Any address New cell within MN sends BU containing its new LCoA
in the history of MN ? a same MAP domain ? to new MAP
Yes Yes
MN sends BU containing its new LCoA MN sends BU containing its new RCoA
No
New cell within to same MAP to HA and CN
a same MAP domain ?
Yes
MN sends BU containing its new LCoA MN sends BU containing its new LCoA
to same MAP to HA and CN
End
into its home cell located in the border of the home domain5 , it does not need
to send the BU message to the new MAP. Instead, it sends it to the new MAP,
for the first time, right after it moves from its home cell to the ordinary cell).
The binding update procedure in HHMIPv6 is described as follows. Whenever
an MN enters a new cell, it checks its home cell addresses to see if there is any
address equal to new LCoA. If the same address is found, an MN decides that
it just moved into its home cell. Once an MN knows that it just entered its
home cell, it now behaves as if it operates just like in MIPv6, not in HMIPv6,
until it leaves it. That is, after sending the BU message to the MAP just like
in HMIPv6, an MN switches its mobility management scheme to MIPv6 by
5
In this case, just like the BU procedure by the inter-MAP movement for a smooth
inter-MAP handover in HMIPv6 [2], the MN may send a BU message to the previous
MAP requesting it to forward packets addressed to the MN’s home cell. This will
allow the MN to continue to receive packets while updating the HA and the CNs.
1174 K.-S. Kong, S.-J. Roh, and C.-S. Hwang
additionally sending the BU messages containing its LCoA to the HA and the
CN. Note that the reason for sending the BU message to the MAP is to maintain
the same level of handoff latency as HMIPv6. However, neither an MN nor the
MAP sends the periodic BR message or the BR request message to each other
since they know from the BU message with O flag set to 1 that an MN will
use MIPv6 during its home cell residence time. On the other hand, when an
MN leaves its home cell, it switches its mobility management scheme back to
HMIPv6 by additionally sending the BU message containing its RCoA to the
HA and the CN after sending the BU message to the MAP.
X Mobility Management
Hmip [HMIPv6], HHmip [HHMIPv6]
Scheme
BU [binding update], BR [binding refresh],
Y Operation Type
PT [packet tunneling], Total [BU+BR+PT]
Z Network Entity ha [HA], cn [CN], map [MAP]
The values that subscripts shown in the above notations can take are summarized
in Table 1. In addition, the parameters for the analysis are shown in Table 2.
6
As already mentioned in Sect.3, in case an MN moves from the outside cell into its
home cell located in the border of the home domain, it does not need to send the BU
message to the new MAP. Thus, the signaling bandwidth generated by BU/BAck
message can be saved more than that under this scenario.
Exploiting Locality Characteristics 1175
Parameter Description
Average packet arrival rates for an MN during its home cell residence
phc
time
poc Average packet arrival rates for an MN during the i-th visited ordinary
i
cell residence time
q Probability [A single packet is routed directly to the MN without being
intercepted by the HA]
The number of cells that an MN has crossed during its MAP domain
K
residence time
Average number of the bindings for the CNs maintained in the MN’s
N
binding update list during its MAP domain residence time
Sbu Signaling bandwidth consumption generated by a BU/BAck message
Spt Signaling bandwidth consumption generated by tunneling per packet
Note that the HA and the MAP must return a BAck message to the MN, but the
CN does not need to return a BAck message to the MN. In the above%equation,
K−1
ttotal means an MN’s MAP domain residence time (ttotal = thc + i=1 toc i ),
hc oc
and t and ti are an MN’s cell residence times in its home cell and i -th visited
Hmip
ordinary cell, respectively. On the other hand, CBR can be expressed as
Hmip ttotal
CBR−ha = 2dha × Sbu × (3)
Tha
Hmip
toc
K−1
thc
CBR−map = 2dmap × Sbu × ( i + ) (4)
i=1
Tmap Tmap
Hmip ttotal
CBR−cn = N dcn × Sbu × (5)
Tcn
1176 K.-S. Kong, S.-J. Roh, and C.-S. Hwang
CTHmip Hmip
otal = CBU
Hmip
+ CBR + CPHmip
T (9)
HHmip HHmip
where C̄hc and C̄oc are the packet tunneling costs in HHMIPv6 while
an MN stays in its home cell and the ordinary cells within a MAP domain,
respectively. Therefore, these costs are as follows.
HHmip HHmip HHmip
C̄hc = {q D̄dir + (1 − q)D̄indir } × phc thc (16)
HHmip HHmip
K−1
HHmip
C̄oc = {q D̂dir + (1 − q)D̂indir }× poc oc
i ti (17)
i=1
HHmip HHmip
where D̄dir and D̄indir are the packet tunneling cost generated by a direct
packet delivery, and the packet tunneling cost generated by delivering a packet
routed indirectly via the HA, while an MN stays in its home cell in HHMIPv6,
HHmip HHmip
respectively. Similarly, D̂dir and D̂indir are the packet tunneling cost gen-
erated by a direct packet delivery, and the packet tunneling cost generated by
delivering a packet routed indirectly via the HA, while an MN stays in the i -th
HHmip HHmip HHmip
ordinary cell in HHMIPv6, respectively. Therefore, D̄dir , D̄indir , D̂dir
HHmip
and D̂indir can be expressed as follows.
HHmip
D̄dir =0 (18)
HHmip
D̄indir = dha × Spt (19)
HHmip Hmip
D̂dir = Ddir = dmap × Spt (20)
HHmip Hmip
D̂indir = Dindir = dha × Spt (21)
CTHHmip
otal
HHmip
= CBU HHmip
+ CBR + CPHHmip
T (22)
5 Numerical Results
The total signaling loads in both HMIPv6 and HHMIPv6, generated by an MN
during its MAP domain residence time, are evaluated by investigating the rel-
ative signaling load in HHMIPv6. The relative signaling load in HHMIPv6 is
defined as the ratio of the signaling load in HHMIPv6 to that in HMIPv6. For
the analysis, we set dmap , dha , dcn , q and n to be 2, 8, 6, 0.7 and 5, respectively
[9]. Tmap , Tha and Tcn are set to be 5 mins [10]. And, toc oc
i and pi are assumed
to be uniformly distributed with U [5, 60] mins and U [0.01, 0.5] kilopkt/hr, re-
spectively. Also, the size of a BU/BAck message is assumed to be equal to the
size of an IPv6 header (40 bytes) plus the size of a binding update extension
header (28 bytes), so 68 bytes (=Sbu ) [2, 3]. In addition, the additional signaling
bandwidth consumption generated by tunneling per packet is equal to the size of
IPv6 header, so 40 bytes (=Spt ). Figure 3 indicates the relative signaling load in
HHMIPv6 for K=7 and 15. In both figures, for almost all the conditions except
when both thc and phc are very small, the relative signaling load in HHMIPv6
gets smaller as thc and phc get larger. This is due to the results caused by both
no periodic BR/BAck messages between the MAP and the MN, and no packet
tunneling from the MAP to the MN during its home cell residence time.
1178 K.-S. Kong, S.-J. Roh, and C.-S. Hwang
1.05 1.05
1.00 1.00
0.95
g Load 0.95
Load
0.90 0.90
0.85
Relative Signalin
0.85
Relative Signaling
0.80 0.80
0.75 0.75
0.70 0.70
0.65 0.65
0.60 0.60
0.55 0.55
0
0
1 1
2 2 2.5
2.5
2.0 3 2.0
3
hc
1.5
hc
t
t
1.5
4 1.0
(h
4 1.0
r)
(h
r) pkt/h
r)
pkt/h
0.5
r)
0.5
5 0.0
hc (kilo 5 0.0 hc (kilo
p p
References
1. D. Johnson and C. Perkins, “Mobility Support in IPv6,” RFC 3775, Jun. 2004.
2. H.Soliman, C.Castelluccia, K.Malki, and L.Bellier, “Hierarchical Mobile IPv6 Mo-
bility Management (HMIPv6),” draft-ietf-mipshop-hmipv6-03.txt, Oct. 2004.
3. C. Castelluccia, “HMIPv6: A Hierarchical Mobile IPv6 Proposal,” ACM Mobile
Computing and Communications Review, vol.4, no.1, pp.48-59, Jan. 2000.
4. S. K. Sen, A. Bhattacharya and S. K. Das, “A Selective Location Update Strategy
for PCS Users,” ACM/Baltzer Wireless Networks, pp.313-326, 1999.
5. Mao, Z, “An Intra-LA Location Update Strategy for Reducing Paging Cost,” IEEE
Communications Letters, vol.6, no.8, pp.334-336, Aug. 2002.
6. S. Rajagopalan and B.R. Badrinath, “An Adaptive Location Management Strategy
for Mobile IP,” Proc. Mobicom’95, Nov. 1995.
7. T.Imielinski, B.R.Badrinath, “Wireless Computing: Challenges in Data Manage-
ment”, Comm. of the ACM, pp.19-28, Oct. 1994.
Exploiting Locality Characteristics 1179
8. K.-S. Kong, S.-J. Roh and C.-S.Hwang, “A Comparative Analytical Study on the
Performance of IP Mobility Protocols: Mobile IPv6 and Hierarchical Mobile IPv6,”
MoMM 2004, pp.437-446, Sept. 2004.
9. S. Pack and Y. Choi, “A Study on Performance of Hierarchical Mobile IPv6 in IP-
Based Cellular Networks,” IEICE Trans. Commun., vol.E87-B, no.3 pp.462-469,
Mar. 2004.
10. R. Ramjee, K. Varadhan, L. Salgarelli, S. Thuel, W. Yuan, T. Porta, “HAWAII:
A Domain-Based Approach for Supporting Mobility in Wide-Area Wireless Net-
works,” IEEE/ACM Trans. Networking, vol.10, no.3, pp.396-410, Jun. 2002.
11. I.F. Akyildiz, J. Xie, and S. Mohanty, “A Survey of Mobility Management in Next-
Generation All-IP-Based Wireless Systems,” IEEE Wireless Commun., pp.16-28,
Aug. 2004.
Parallel Feature-Preserving Mesh Smoothing
1 Introduction
In this paper, we devise new techniques for estimating normals and identifying ge-
ometric features for triangulated surfaces, and apply them to redistribute vertices of
surface meshes on parallel machines. Mesh smoothing is an important problem in
many computational applications [4]. It is frequently used as a post-processing step
in mesh generation, and is critical in numerical simulations with deforming geometry.
Compared to two-dimensional meshes, surface meshes are particularly difficult to opti-
mize, because curved shapes and sharp features of geometric models must be preserved,
frequently without the availability of the underlying CAD models. Therefore, feature-
aware higher-order approximations must be constructed by analyzing discrete surfaces.
In large-scale scientific simulations, the problem is even more challenging, because
meshes are partitioned and distributed across multiple processes on a parallel machine,
making it difficult to apply some traditional analytic and reconstruction techniques.
To achieve our objectives, we first develop new techniques to estimate surface nor-
mals, especially one-sided normals along ridges, and devise a new vertex-based scheme
for detecting ridges and corners of a triangulated surface. Our techniques are based on
an extension of the well-known fundamental quadric [2, 9] and tensor voting [12]. These
previous techniques provide insights into the local geometry of a discrete surface, but
suffer from ambiguities such as undetermined signs of the estimated normals and in-
distinction between near cusps and smooth surfaces. Our extension, called the medial
quadric, implicitly uses a local coordinate frame with origin approximately on the me-
dial axis to resolve these ambiguities. Utilizing the results of the medial quadric, we
then present a feature-aware higher-order reconstruction of a surface triangulation, and
integrate them to deliver a parallel method for surface mesh smoothing.
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 1180–1189, 2005.
c Springer-Verlag Berlin Heidelberg 2005
Parallel Feature-Preserving Mesh Smoothing 1181
Quadric and Tensor Voting. Another class of estimation is obtained through eigen-
decomposition of a quadric. Let γ be a plane containing a point p ∈ R3 with unit
normal vector n̂. The offset of γ from the origin is δ = −pT n̂. The signed distance of
γ from any point x ∈ R3 is then
Given a collection of planes {γi } (in particular, the tangent planes of the triangles inci-
dent on a vertex), let n̂i denote their unit outward normals, δi their offsets, and wi their
associated positive weights. The weighted sum of squared distances to γi from x is
Q(x) = wi d2 (x, γi ) = xT Ax + 2bT x + c, (2)
i
% T % % 2
where A = i wi n̂i n̂i , b = i wi δi n̂i , and c = i wi δi . The metric Q is the
well-known fundamental quadric [2, 9], which is minimized in R3 at the solution of the
3 × 3 linear system
Ax = −b. (3)
In general, A is symmetric and positive semi-definite, and its eigenvalues are all real
and nonnegative. For an introduction to eigenvalue problems, see textbooks such as [6].
Let λi be the eigenvalues of A such that λ1 ≥ λ2 ≥ λ3 , and êi their corresponding
orthonormal eigenvectors. Based on the spectrum theorem, A can be decomposed into
3
A= λi êi êTi . (4)
i=1
1182 X. Jiao and P.J. Alexander
If the neighborhood of a vertex v is smooth, then ê2 and ê3 are approximately the
principal directions at v, and ê1 approximates the normal direction [9, 12]. This ap-
proximation scheme is referred to as tensor voting [12] or normal voting [14] in the
literature. However, it has the following limitations:
– the direction of ê1 is also sensitive to weights, similar to weighted averaging
– the sign of ê1 is undetermined and may point inward or outward
– if the vertex v is on a sharp ridge with dihedral angle > π/2, then ê2 instead of ê1
provides a more meaningful approximation to the normal
– if the ridge nearly forms a right angle, then none of the eigenvectors provides a
meaningful approximation to the normal
Another popular approach, which is the dual of tensor voting, is to take the eigenvector
% T
corresponding to the smallest eigenvalue of the matrix i wi t̂i t̂i , where t̂i is a tangent
vector of the ith face [16]. This approach has limitations similar to tensor voting.
Medial Quadric. To overcome the above limitations, suppose there is a point o such
that all faces have the same negative offset δ to o. As the quadric is scale- and position-
independent, without loss of generality, we take δ = −1 and place the origin of the
coordinate frame at o. Because o is on the medial axis of the surface, we refer to this
quadric as the medial quadric. This quadric is minimized by the solution of (3) with
b=− wi n̂i . (5)
i
The unit vector of −b (i.e., the right-hand side of (3)) is the weighted-average outward
normal. The solution x is the position vector from o to v, and its unit vector x̂ delivers
another approximation to the outward normal at v. Unlike the weighted-average nor-
mals or eigenvectors, however, x̂ is independent of the weights given that the point o
exists (because if it exists, o is uniquely defined regardless of the weights).
Another geometric interpretation of the medial quadric is that the origin o is at the
intersection of the planes that are parallel to the γi with a normal distance −1. When
such an intersection does not exist exactly, the origin would then be at the intersection
in the least squares sense. When the planes γi are nearly parallel to each other, this
intersection and in turn x̂ are sensitive to perturbation. Numerically, this sensitivity
corresponds to a large condition number of A. To solve for x robustly, we constrain it
within the primary space of A, i.e. the space spanned by the eigenvectors corresponding
to relatively large eigenvalues. Let d be the dimension of the primary space, and V be
a 3 × d matrix, whose ith column is êi . The solution of Eq. (3) then reduces to finding
a vector s ∈ Rd , such that Q is minimized at x = V s. The vector s is the solution to
V T AV s = −V T b, (6)
which is an d × d linear system. The condition number of Eq. (6) is then λ1 /λd . The
solution to (6) is si = −êTi b/λi , and hence
d
d
x= si êi = −êTi bêi /λi . (7)
i=1 i=1
Parallel Feature-Preserving Mesh Smoothing 1183
Fig. 1. Demonstration of effect of imbalance of weights. From left to right, arrows indicate esti-
mated normals from averaging, tensor voting, and medial quadric, all weighted by area
In particular, when d = 1 (i.e., for smooth points), x is along the direction of ê1 where
the sign is determined by the weighted average. For d ≥ 2 (such as at a ridge or cor-
ner), x is then a linear combination of the eigenvectors and delivers an approximation
mean normal, which is insensitive to weights. Fig. 1 compares the normal estimations
from weighted-averaging, tensor voting, and medial quadric. Only the medial quadric
delivers consistent weight-insensitive approximation along features.
Fig. 2. Differing behavior of eigenvalues at smooth, ridge, and corner points. Eigenvalues and
eigenvectors are depicted by ellipsoids, whose axes are aligned along eigenvectors, with semi-
axes proportional to their corresponding eigenvalues
Vertex Classification. The relative sizes of eigenvalues of the matrix A of Eq. (3) are
closely related to the local smoothness at a vertex v, as illustrated in Fig. 2. More for-
mally, A can be expressed as the linear combination of
r = λ3 / max{λ1 − λ2 , λ2 − λ3 }
as the corner saliency and consider a vertex as a corner if s is larger than a threshold
β. A tiny (nearly zero) β would classify all vertices as corners and a huge (nearly
infinity) β would classify no corners. Given a user-specified ridge-angle threshold ψ,
as a rule of thumb, we take β ≈ cot ψ. When r is small, unlike previous methods,
we consider λ3 and its corresponding eigenvector as noise in the model, and hence
classify a ridge by comparing λ2 /λ1 against a threshold α. This approach leads to
a more reliable classification for ridges in practice than previous methods. For a ridge
with dihedral angle θ ≤ π/2, the eigenvalues satisfy λ2 /λ1 ≈ tan2 (θ/2), and therefore
we set α = tan2 (ψ/2).
Because matrix A is independent of the signs of normals, the proceeding approach
may falsely classify a sharp ridge (e.g., a near cusp) as a smooth surface and clas-
sify a sharp corner as a ridge. To resolve this issue, we observe
that acute angles are
T T
accompanied by the reversal of the order of x êi = si b /λi (c.f. Eq. (7)), and
this order
T is nearly independent of the weights. Therefore, we introduce a safeguard
gi = b̂ êi / min{ελ1 , λi }, where ε (say 10−7 ) avoids potential division by zero. In
summary, a vertex is classified as follows:
To demonstrate the robustness of this new method, Fig. 3 highlights the ridge vertices
detected by our approach with ψ = 20◦ and by the normal-voting scheme [14] with
Parallel Feature-Preserving Mesh Smoothing 1185
Fig. 3. Comparison of ridge detection with our new Fig. 4. Features on fandisk de-
method (left) and normal voting (right) tected by our method
(λ1 − λ2 )/(λ0 − λ1 ) ≥ cos ψ/ sin2 (ψ/2) for ψ = 19◦ (because all vertices would be
classified to be smooth with ψ ≥ 20◦ ). Our scheme is clearly more reliable and less
sensitive to perturbation.
Edge Classification. If vertex v is a ridge vertex, then the eigenvector ê3 is approxi-
mately tangential to the ridge, and its incident ridge edges are nearly parallel to ê3 . In
addition, the other vertex of either of its incident ridge edges is most likely also a ridge
or corner vertex. Therefore, we identify ridge edges as follows. Let t̂τ denote the unit
tangent of an edge τ incident on v pointing away from v. For each ridge vertex, com-
pute the largest (positive) and the smallest (negative) values of sτ ≡ mτ êT3 t̂τ , where
mτ is the number of incident ridge or corner vertices of τ . An incident edge is on the
ridge if its associated sσ has either of the two extreme values and |sτ | ≥ 2 cos ψ, i.e.,
τ is nearly parallel to ê3 . After classifying all ridge edges, a ridge vertex is upgraded
to a corner if it is incident on more than two ridge edges or |sτ | < 2 cos ψ for either of
its extreme values of sτ . Fig. 4 shows the corners and ridges after these adjustments for
the fandisk model, where even weak features were detected accurately by our method.
4 Feature-Preserving PN Triangles
Utilizing normal estimation and feature detection, we now develop a feature-aware
higher-order approximation of a surface triangulation suitable for parallelization. In
particular, we employ curved point-normal triangles, or PN triangles [18], which pro-
vide a simple and convenient way to construct a piecewise cubic approximation of a
surface with triangular Bézier patches from vertex coordinates and normals. The re-
sulting approximation is C 1 continuous at vertices and C 0 continuous everywhere else,
and a separate quadratic approximation of normals recovers continuity of normals. PN
triangles are constructed triangle-by-triangle, without using additional neighbor infor-
mation, and therefore make a good candidate for distributed meshes.
Fig. 5. Construction of control points along edges for feature-preserving PN triangles at smooth,
ridge, and corner vertices, respectively
Feature Treatments. To deliver a systematic treatment at sharp ridges and corners for
the geometric construction of PN triangles, we leverage the results of our medial quadric.
Given an edge τ , let p be a control point on τ , vertex v the end-point of τ closer to p,
and vector v its coordinates. Suppose τ and its end-points have been classified by fea-
ture detection. As illustrated in Fig. 5, we evaluate the displacement f at p as follows:
The first two cases are equivalent to the projections in [18], but Cases 3 through 5 are
introduced here to avoid large errors near features. In Case 5, the mirroring operation
allows higher-order reconstruction at a corner.
Fig. 6. Before and after smoothing of fandisk model Fig. 7. Parallel performance
Smoothing Algorithm. Given a smooth or ridge vertex v, we project its incident faces
(i.e., its star) onto its tangent space, i.e., the space spanned by ê2 and ê3 if v is at
a smooth point, or ê3 if v is on a ridge. Let T be a rectangular matrix, whose column
vectors form the orthonormal vector base of the tangent space. We perform a coordinate
transformation locally so that v becomes the origin. The projection of a neighbor vertex
(denoted by ui ) of v onto the tangent space is T T (ui − v). We compute the center of
the star of v in the tangent space, where the definition of center depends on the specific
metric in use, but is typically a weighted sum of the vertices in its star [4], i.e.,
& '
d= wi T (ui − v) /
T
wi , (10)
i i
where the wi are metric-dependent weights. If v is at a smooth vertex, we set the weights
to the sum of the edge angles at v in the incident faces of edge vui . If v is a ridge vertex,
then we set the weights for its neighbor ridge vertices along the ridge to 1 and those for
its neighbor smooth vertices to 0.
After obtaining d, in general we move v for a fraction of d, say ad. To avoid fold-
over of triangles, we choose a to be ≤ 0.5 and to be small enough so that the barycen-
tric coordinates of ad corresponding to the other two vertices in each triangle are no
greater than c/3 for some c ∈ (0, 1) (say c = 0.5). To utilize the higher-order construc-
tions, in particular the PN triangles, we locate the triangle σ that contains the new point
p = v +ad and then map p onto the Bézier patch constructed by feature-preserving PN
triangles. Because the new positions of smooth vertices may depend on those of ridge
vertices but not vice versa, we first perform vertex redistribution within ridges and then
redistribute smooth vertices using the new locations of ridge vertices. A simple Jacobi
iteration is adopted within either redistribution stage. When performing smoothing for
multiple iterations, we interpolate the normals using the quadric reconstruction for bet-
ter efficiency. Fig. 6 shows the fandisk model (c.f. Fig. 4) near the junction before and
after smoothing, where the dark curves indicate the detected features. The shapes of the
triangles were improved noticeably without distorting the features.
cally localized their calculations, of which the most noteworthy are classification of fea-
ture vertices and calculation of one-sided normals. These operations are difficult to com-
pute for vertices along partition boundaries using traditional methods, unless a process
has access to the remote faces, vertices, and feature edges next to its boundary vertices.
Our algorithms do require a few communication steps, all of which are reduction
operations on the vertices shared by more than one process along partition boundaries.
These include the summation operations in the construction of A and b for the medial
quadric and in the numerator and denominator in Eq. (10) for vertex redistribution. In
addition, classification of ridge edges requires reduction to the maximum and minimum
values of sσ for shared vertices. To broadcast the displacements of each shared vertex
in its containing PN triangle, we first zero out the displacements for shared vertices
without a local containing triangle on each process, and then reduce to the values of the
largest magnitude for each component.
Fig. 7 shows the scalability results of our straightforward parallel implementation
for a fixed problem with a total number of 30768 vertices and 59236 triangles. The
experiments were conducted on a Linux cluster with dual 1GHz Pentium III processors
per node and Myrinet interconnection, and on a faster Mac cluster with dual 2GHz G5
processors per node and also Myrinet interconnection, both located at the University
of Illinois. Our method delivers nearly linear scalability for this modest size problem
up to 128 processors, and better scalability was achieved on the Linux cluster due to
higher ratio of bandwidth to processing power. Better scalability is expected for larger
problems and further optimization of the implementation.
6 Conclusion
We have developed a parallel method for surface mesh smoothing based on a new con-
cept called the medial quadric. This quadric facilitates the solution of a number of geo-
metric primitives, including a reliable vertex-based scheme for feature detection, which
is easier to parallelize than edge-based schemes, and accurate one-sided normal estima-
tion. These primitives are then used to construct feature-aware higher-order approxima-
tion for surface triangulations based on PN triangles. We presented some preliminary
but promising experimental results of our surface mesh smoothing algorithm. We are
currently conducting more tests, especially for distributed meshes on parallel machines,
and integrating our methods into large-scale scientific simulations at the Center for Sim-
ulations of Advanced Rockets at University of Illinois [7, 8]. Future directions include
more extensive experimental study of our algorithms, detailed comparison against other
methods, systematic analysis of normal estimation and feature detection schemes, and
extension to estimation of curvatures.
Acknowledgments
Supported by the U.S. Department of Energy through the University of California under
subcontract B523819, and in part by NSF and DARPA under CARGO grant #0310446.
We thank Prof. John Hart for helpful discussions and references on curved PN triangles,
Parallel Feature-Preserving Mesh Smoothing 1189
Prof. Michael Garland for discussions on quadrics, and Prof. Herbert Edelsbrunner for
suggestions on enhancing the rigorousness of the paper.
References
1. T. Baker. Identification and preservation of surface features. In 13th Int. Meshing
Roundtable, pages 299–310, 2004.
2. H. Edelsbrunner. Geometry and Topology for Mesh Generation. Cambridge University Press,
2001.
3. G. Farin. Smooth interpolation to scattered 3D data. In R. E. Barnhill and W. Boehm, editors,
Surfaces in Computer-Aided Geometric Design, pages 43–63, 1983.
4. P. J. Frey. Mesh Generation: Application to finite elements. Hermes, 2000.
5. H. Gouraud. Continuous shading of curved surfaces. IEEE Trans. Computers, 20:623–629,
1971.
6. M. T. Heath. Scientific Computing: An Introductory Survey. McGraw–Hill, New York, 2nd
edition, 2002.
7. M. T. Heath and W. A. Dick. Virtual prototyping of solid propellant rockets. Comput. Sci. &
Engr., 2:21–32, 2000.
8. M. T. Heath and X. Jiao. Parallel simulation of multicomponent systems. In 6th Int. Conf.
on High Performance Computing for Computational Science, Valencia, Spain, 2004.
9. P. S. Heckbert and M. Garland. Optimal triangulation and quadric-based surface simplifica-
tion. Comput. Geom., pages 49–65, 1999.
10. X. Jiao and M. T. Heath. Feature detection for surface meshes. In Proc. of 8th Int. Conf. on
Numerical Grid Generation in Computational Field Simulations, pages 705–714, 2002.
11. N. Max. Weights for computing vertex normals from facet normals. J. Graphics Tools,
4:1–6, 1999.
12. G. Medioni, M.-S. Lee, and C.-K. Tang. A computational framework for segmentation and
grouping. Elsevier, 2000.
13. D. Meek and D. Walton. On surface normal and Gaussian curvature approximations of given
data sampled from a smooth surface. Comput. Aid. Geom. Des., 17:521–543, 2000.
14. D. L. Page, A. F. Koschan, Y. Sun, J. K. Paik, and M. A. Abidi. Robust crease detection and
curvature estimation of piecewise smooth surfaces from triangle mesh approximations using
normal voting. In Proc. Intl. Conf. on Computer Vision, volume 1, pages 162–167, 2001.
15. S. Petitjean. A survey of methods for recovering quadrics in triangle meshes. ACM Comput.
Surv., 34:211–262, 2002.
16. G. Taubin. Estimating the tensor of curvature of a surface from a polyhedral approximation.
In Proc. of Int. Conf. on Computer Vision, pages 902–907, 1995.
17. G. Thürmer and C. A. Wüthrich. Computing vertex normals from polygonal facets. J.
Graphics Tools, 3:43–46, 1998.
18. A. Vlachos, J. Peters, C. Boyd, and J. L. Mitchell. Curved PN triangles. In Proc. of 2001
Symposium on Interactive 3D graphics, pages 159–166, 2001.
On Multiparametric Sensitivity Analysis in
Minimum Cost Network Flow Problem
1 Introduction
The minimum cost flow problem is the most fundamental of all network flow
problems defined as: To determine a least cost shipment of a commodity through
a network in order to satisfy demands at certain nodes from available supplies at
other nodes. This problem has number of familiar applications: the distribution
of a product from manufacturing plants to warehouses ; or from warehouses to
retailers ; the flow of raw material and intermediate goods through the various
machine stations in a production line ; the routing of automobiles through an ur-
ban street network ; and the routing of calls through the telephone system besides
a number of indirect applications; see Ahuja et. al. [1] for the state of the art.
In practice one would like to know ‘how the output of a model varies as a
function of variation in the input data and the model parameters’ using sensitiv-
ity analysis. The purpose of studying sensitivity analysis for minimum cost flow
problem is to determine changes in the optimal solution resulting from changes in
the data (supply/demand vector or the capacity or the cost of any arc). There are
Corresponding Author: Flat No-01, Kamayani Kunj, Plot No-69, I.P.Extension,
Delhi-110092, India. Email:pankaj gupta15@yahoo.com
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 1190–1202, 2005.
c Springer-Verlag Berlin Heidelberg 2005
On Multiparametric Sensitivity Analysis 1191
Definition 2.2 ([1]). For any feasible solution, x, an arc (i, j) is a free arc if
0 < xij < uij and the arc (i, j) is a restricted arc if xij = 0 or xij = uij .
A spanning tree solution partitions the arc set A into three subsets (i) T , the
arcs in the spanning tree; (ii) L, the non-tree arcs whose flow is restricted to
zero (iii) U , the non-tree arcs whose flow is restricted in value to the arc’s flow
capacities. We refer to the triple (T, L, U ) as a spanning tree structure.
Since the minimum cost flow problem is a linear programming problem, we
can use linear programming optimality conditions to characterize optimal solu-
tions to the problem (MCF). As the linear programming problem formulation
(MCF) has one bundle constraint for every arc (i, j) of the network and one
mass balance constraint for each node, the dual linear program has two types of
dual variables: a price wij on each arc (i, j) and a node potential π(i) for each
node i. Using these dual variables, we define the reduced cost cπij of arc (i, j) as
follows :
The minimum cost flow optimality conditions for the problem (MCF) are stated
as under:
Let x = (xij ) be the spanning tree solution associated with the spanning tree
structure (T, L, U ). A spanning tree structure (T, L, U ) is an optimal spanning
tree structure if it is feasible and for some choice of node potentials π, the arc
reduced costs cπij satisfy the following conditions:
%
H %
H %
H
where Δcij = αijh thΔ
, b(i) = βih th , Δuij = γijh th are the multi-para -
h=1 h=1 h=1
metric perturbations defined by the perturbation parameter t = (t1 , t2 , . . . , tH )T .
Here H is the total number of parameters.
Let S be a general notation for a critical region. In the following propositions,
we construct critical regions for simultaneous and independent perturbations
with respect to cij , uij and b(i).
Proposition 2.1. When cost cij , arc capacity uij of a non-tree arc (i, j) and
supply/demand b(i) at node i are perturbed simultaneously and independently,
the critical region S of the problem (PMCF) is given by
(
H
S = t = (t1 , t2 , · · · , tH )T |cπij + αijh th ≥ 0 f or (i, j) ∈ L;
h=1
H
H
βih th = 0, βih th ≤ δ,
i∈N h=1 h=1
H
H *
γjjh th = 0, γijh th ≤ δ .
i∈N h=1 h=1
or
(
H
S= t = (t1 , t2 , · · · , tH )T |cπij + αijh th ≤ 0 f or (i, j) ∈ U ;
h=1
H
H
βih th = 0, βih th ≤ δ,
i∈N h=1 h=1
H
H *
γjjh th = 0, γijh th ≤ δ .
i∈N h=1 h=1
Proof. Let x = (xij ) denote an optimal solution of the minimum cost flow
problem. Let (T, L, U ) denote a corresponding spanning tree structure and π be
some set of node potentials.
Cost Sensitivity Analysis. In this case, changing the cost of the non-tree arc
(i, j) does not change the node potentials of the current spanning tree structure.
For the current optimal solution to remain optimal, modified reduced set ĉπij of
the non-tree arc (i, j) must satisfy the optimality condition (b) or (c) whichever
is appropriate,
i.e.,
ĉπij ≥ 0 f or (i, j) ∈ L
=⇒
(cij + Δcij ) + wij − π(i) + π(j) ≥ 0
=⇒
%H
ĉπij + αijh th ≥ 0 f or (i, j) ∈ L.
h=1
1194 S. Singh, P. Gupta, and D. Bhatia
or
ĉπij ≤ 0 f or (i, j) ∈ U
=⇒
(cij + Δcij ) + wij − π(i) + π(j) ≤ 0
=⇒
%H
ĉπij + αijh th ≤ 0 f or (i, j) ∈ U.
h=1
uij − xij if (i, j) ∈ P
δij =
xij if (i, j) ∈ P
Arc Capacity Sensitivity Analysis: When the capacity of an arc (i, j) in-
creases by Δuij units, the current optimal solution remains feasible; to determine
whether this solution remains optimal, we check the optimality condition (a). If
the non-tree arc (i, j is at its lower bound, increasing its capacity uij by Δuij
does not affect the optimality condition for this arc. However, If the non-tree arc
(i, j) is at its upper bound and its capacity increases by Δuij units, this creates
an excess of Δuij units at node j and deficit of Δuij at node i. To achieve fea-
sibility, we must send Δuij units from node j to node i. This objective can be
achieved using supply/demand sensitivity analysis as follows:
Let P1 be unique tree path from node j to node i in the optimal spanning
tree structure. Let P 1 and P 1 respectively denote the sets of arcs in P1 that are
along and opposite to the direction to the path. The maximum flow change δij
on an arc (i, j) ∈ P1 that preserves the flow bounds is
uij − xij if (i, j) ∈ P 1
δij =
xij if (i, j) ∈ P 1
On Multiparametric Sensitivity Analysis 1195
Let δ = min{δij
: (i, j) ∈ P1 }. Therefore to maintain the feasibility of the
%
H
current solution, Δuij must to less than δ i.e., γijh th ≤ δ . Also the net flow
h=1
% %
H
from the node i and j should sum to zero i.e., γijh th = 0.
i∈N h=1
Proposition 2.2. When cost cij , arc capacity uij of a tree arc (i, j) and sup-
ply/demand b(i) at node i are perturbed simultaneously and independently, the
critical region S1 of the problem (PMCF) is given by
(
H
S1 = t = (t1 , t2 , · · · , tH )T |cπij + αijh th ≥ 0 f or (i, j) ∈ L ∪ [D(j), D(j)] ,
h=1
H
H
H
cπij + αijh th ≤ 0 f or (i, j) ∈ U ∪[D(j), D(j)] ; βih th = 0, βijh th ≤ δ,
h=1 i∈N h=1 h=1
H
H *
γjjh th = 0, γijh th ≤ δ .
i∈N h=1 h=1
Proof. Cost Sensitivity Analysis: In this case, changing the cost of arc (i, j)
changes some node potentials. If arc (i, j) is an upward pointing arc in the
current spanning tree, potentials of all the nodes in D(i) changes by Δcij and
if (i, j) is a downward pointing arc, potentials of all the nodes D(j) changes
%
H
by αijh th . Now these changes in node potentials modify the reduced costs
h=1
of those non-tree arcs that belong to the cut [D(j), D(j)]. Therefore the cur-
rent spanning tree structure remains optimal if the following conditions are
satisfied;
H
cπij + αijh th ≥ 0 f or arcs (i, j) ∈ L ∪ [D(j), D(j)]
h=1
H
cπij + αijh th ≤ 0 f or arcs (i, j) ∈ U ∪ [D(j), D(j)].
h=1
Remark 2.1. It follows from Propostions 2.1 and 2.2 that t = 0 belongs to S,
and thus we have d ≥ 0.
subject to |L |k ≤ d
k ≥ 0 .
On Multiparametric Sensitivity Analysis 1197
Fig. a.
Fig. b.
The following are the node potentials computed from the minimal spanning
tree in figure c.
π = (0, −1, −1, −2, −5, −7, 12, −21)
1198 S. Singh, P. Gupta, and D. Bhatia
Fig. c.
Also, T = {(1, 4), (2, 3), (3, 4), (3, 5), (5, 6), (5, 7), (7, 8)}
L = {(2, 1)} , U = {(2, 6), (4, 7), (6, 8)}
The optimal solution of the above problem is k ∗ = (0.2161, 0.1904, 0.2951, 1.638).
MVR (BS ) = {t = (t1 , t2 , t3 , t4 )T ||t1 | ≤ 0.2161, |t2 | ≤ 0.1904, |t3 | ≤ 0.2951, |t4 |≤
1.638}.
Vol(BS ) = 24 (0.2161).(0.1904).(0.2951).(1.638) = 0.3182.
On Multiparametric Sensitivity Analysis 1199
3 Extension
Multicommodity network flow models provide optimization problems whose so-
lution gives the best routing of a set of k different types of flows (the com-
modities) through the arcs of a network. This kind of problems arise naturally
when modelling applications in, e.g., routing, telecommunications networks and
transportation networks.
In this section, we will deal with fairly general formulation, where arcs are
considered to have a capacity for each commodity, and a mutual capacity for
all the commodities. The general multicomodity flow problem (MMCF) can be
formulated as follows:
p
(MMCF) Min ck xk
k=1
subject to Ak xk = bk ∀ k; 1 ≤ k ≤ p ,
p
xkij ≤ uij ∀ (i, j) ∈ A ,
k=1
xkij ≥ 0 , ∀ k; 1 ≤ k ≤ p , ∀ (i, j) ∈ A .
Here xkij is the flow of commodity k on arc (i, j) with unit cost ckij , uij is the
mutual capacity of arc(i, j), Ak is the node-arc incidence matrix for commodity
k, bk is the vector of supplies/demands for commodity i at the nodes of the
network. We shall assume that the flow variables xkij have no individual flow
bounds; that is, each ukij = +∞.
Remark 3.1. For a given directed graph with m number of nodes, n num-
ber of arcs and k number of commodities, the multicommodity flow problem
is a linear programming problem with km + n constraints and (k + 1)n vari-
ables. In some real-world models, k can be very large e.g., k = n2 . For in-
stance, in many telecommunication problems we have a commodity for the flow
of data/voice to be sent between each pair of nodes of the network. Thus, the
resulting linear programming problem can be huge even for graphs of moderate
size.
Let π k (i), the node potential for commodity k on node i, and wij , which is
the arc price, be the dual variables corresponding to the arc (i, j) ∈ A, 1 ≤ k ≤ p.
Using these dual variables, we define the reduced cost as follows :
c̄π,k
ij = cij + wij − π (i) + π (j) ,
k k k
∀ (i, j) ∈ A , 1 ≤ k ≤ p.
%p
(a) wij k=1 xkij − uij = 0 , ∀ (i, j) ∈ A.
(c) c̄π,k
ij ≥ 0 , ∀ (i, j) ∈ A.
Now, we construct critical region S, where the index set of optimal basic
variables remains optimal.
Max V (k) = k1 · k2 · k3
subject to 2k1 + k2 + 3k3 ≤ 8 , k1 + k2 + 2k3 ≤ 6
4k1 + 2k2 + 3k3 ≤ 6 , 3k1 + k2 + k3 ≤ 6
k1 , k2 , k3 ≥ 0 .
References
[1] Ahuja, R.K., Magnanti, T.L. and Orlin, J.B.: Network Flows: Theory, Algorithms
and Applications, Prentice Hall, Englewood Cliffs, New Jersey (1980).
1202 S. Singh, P. Gupta, and D. Bhatia
[2] Liebman, J., Ladson, L., Scharge, L. and Waren, A.: Modeling and optimization
with GINO, The Scientific Press, San Francisco, CA (1986).
[3] Ravi, N. and Wendell, R.E.: The tolerance approach to sensitivity analysis in net-
work linear programming, Networks 18 (1988) 159–171.
[4] Wang, H.F. and Huang, C.S. : The maximal tolerance analysis on the constraint
matrix in linear programming, Journal of the Chinese Institute of Engineers
15(5)(1992) 507–517.
[5] Wang, H.F. and Huang, C.S.: Multi-parametric analysis of the maximum tolerance
in a linear programming problem, European Journal of Operational Research 67
(1993) 75–87.
[6] Wendell, R.E.: A preview of a tolerance approach to sensitivity analysis in linear
programming, Discrete Mathematics 38 (1982) 121–124.
[7] Wendell, R.E.: Using bounds on the data in linear programming: The tolerance
approach to sensitivity analysis, Mathematical Programming 29(1984) 304–322.
[8] Wendell, R.E.: The tolerance approach to sensitivity analysis in linear programming,
Management Science 31 (1985) 564–578.
Mining Patterns of Mobile Users Through Mobile Devices
and the Musics They Listen
Abstract. Mobile data mining [8-11] is about the analysis of data generated by
mobile activities, in search for useful patterns in order to support different types
of decision making requirement. Mobile devices are loaded with features such
as the capability to listen to radio from a mobile phone. Mobile users who listen
to radios on their mobile phones are a source of data generated from mobile
activities. The location dependent data [9] and the song they listen to can be
combined and analysed in order to better understand the behaviour of mobile
users. This paper shows how this can be done by using taste template, which
categorises a behaivoural type in order to match mobile users into one of these
categories. Conclusion from this research project confirms a new way to
learning behaviour of mobile users.
1 Introduction
Mobile data mining [8-11, 18] is an emerging field of research that focuses on
analysing the data generated by mobile users. The data generated by mobile users
include: communication history among mobile users, physical location visit history of
mobile users, and the activities done by mobile users using their mobile devices, such
as surfing a particular type of website. This research project develops two ways to
analyze the listening behavior of mobile users through their radio or mp3 players on
their mobile phone in order to predict their psychological nature for the purpose of
supporting other activities that requires psychological knowledge of the mobile users.
One such example will be the sending of relevant and useful marketing materials in
contrast to irrelevant and annoying marketing materials may be viewed as spam.
As mobile devices are getting more and more popular with the penetration rate of
mobile devices in many developing and developed countries increasing every year
[1], many data are generated from these mobile activities. From these mobile
activities, comes an interesting opportunity to search for useful knowledge by means
of analysis of these data. The analysis of these data have the potential to support
different decision making requirements from different fields, especially marketing,
whereby mobile data mining enables the marketers to better understand their potential
consumers.
As mobile users changes channel or changes the musis he or she is listening to, it
can be due to personal preference such as whether the song is suitable for what he or
she is currently doing. The change of channel is the source of selection, whereby the
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 1203 – 1211, 2005.
© Springer-Verlag Berlin Heidelberg 2005
1204 J. Goh and D. Taniar
change of channel tells the data mining machine whether the mobile user likes or
dislikes the particular type of song. By implementing a way to separate the likes and
dislikes and match the mobile user into a particular group of behaviour, it allows
better prediction of their preference over a certain product to another.
Mobile devices these days are incorporated with multiple functions. One trend that
is getting popular is the incorporation of radio function for listening to public radios.
Some of the mobile phones have even television function incorporated. Another trend
of the mobile phone technology is the incorporation of functionalities from personal
digital assistant (PDA) in order for the device to work as both mobile phone and
personal digital assistant at the same time. The functionalities incorporated from
personal digital assistant includes the date planning functions, the ability to surf the
internet with WiFi speed, the ability to incorporate large amount of software and
functionalities such as encyclopedia and global positioning system by using secure
digital (SD) cards easily into the card slots.
2 Background
Music is defined as “a brief composition adapted for singing” in dictionary.com.
Music has existed from many thousands of years since ancient times, and all natives
seem to have developed their own style of music. Music is a way for human being to
express their emotions, from happy ones to sad ones. There are music created in the
history of mankind for all kinds of ocassions: celebration of a nation (national
anthemn), expressing a happy moment (love songs), expressing a sad moment (sad
love songs), and even teaching kids how to learn a language (the famous ABC song).
It can be established that music is an important part of all human being’s life [19].
With the technology of radio receiving capability installed in newer versions of
mobile phones, mobile users can listen to different songs when they are on their
move. The current technology allows the access to current location of mobile user and
the music that they are currently listening to.
Music can be separated into different genres [19], such as ancient music, band
music, blues, children’s music, choral music, country music, dance music, electronic
music, film music, folk music, jazz, opera, orchestral music, rap / hip hop, reggae /
ska, religious music, rock / pop / alternative, seasonal music, wedding music [19]. In
each different genre, the words in the music express the emotions and the message of
the composer. A person who likes to listen to the music indicates a degree of empathy
to the subject of the music, that is, the emotions conveyed. Music can also be
separated technically by means of their rhtym, and loudness, which can be translated
into engineering terms of frequency of sound and amplitude.
Mobility has the advantage in the data mining field [8]. Based on the fact that
mobile devices follows the owner everywhere they go [9], and the owner uses the
mobile device to interact with many other contacts, there are two major sources of
dataset which are volumous. First, the source dataset that describes the physical
locations which the mobile device has been through. Second, the source dataset that
describes the list of contacts that the mobile device have contacted [9]. The reason
that these source datasets are volumous is that activities are performed at every
minute and datasets that describes these activities are continuously formed. Therefore,
when dealing with source datasets drawn from mobile environment, care must be
Mining Patterns of Mobile Users Through Mobile Devices and the Musics 1205
taken to ensure either a proper strategy is in place to manage the volumous data or
that the dataset is reduced to a degree that is less volumous but still acceptably
accurate for mobile data mining purposes.
Data mining is a wide research field with the main objective of finding patterns from
a source of raw dataset, so that knowledge or prepositions can be verified. In the area of
analyzing the market basket that are the transactions generated by a customer checking
out from a grocery shop, association rules [2, 14, 15, 17] and sequential patterns [3] has
been developed. Source data comes in different sizes, such as time series [4, 12, 13],
geographical [5, 15] based datasets. When it comes to mobility, another related field is
location dependency [6, 16] which concerns the context in a particular location itself.
Data mining further extends itself to mine web log datasets [7].
Idealist Traditionalist
Conscientious Leisurely
Sensitive Serious
Vigilant Self-Sacrificing
Dramatic Devoted
Rationalist Hedonist
Aggressive Self-Confident
Idiosyncratic Adventurous
Inventive Mercurial
Solitary Artistic
1206 J. Goh and D. Taniar
In order to speed the process up, the song can be passed into a system that analyses
it’s frequency and amplitude that represents whether the song is a fast song or the
song is an active song such as rock songs that is louder than other songs, in order to
determine the type of song and place them into different personality types. This
process, however have inaccuracies traded off with performance. The algorithm for
classifying is shown below. The program code is predefined with the following
personality definitions: idealist.frequency = 100, idealist.amplitude = 100,
traditionalist.frequency = 200, traditionalist.amplitude = 200, rationalist.frequency =
300, rationalist.amplotide = 300, hedonist.frequency = 400, hedonist.amplotude =
400.
Fig. 1. Algorithm to Classify Musics
In this step, both the songs mobile users’ likes and dislikes are important to be
identified. The likes builds stronger confidence into a particular personality, and the
dislikes removes the inaccurate confidence into a particular personality by reducing
the proabability of the mobile user being matched to the inaccurate personality type.
In a music listening process, a mobile user can potentially act the following:
Only when the mobile user have listened the majority part of the song, only then
the mobile user is considered showing empathy to the song. This can be handled by
using the following variables, namely song_start, song_end, song_duration,
listen_start, listen_stop, listen_duration. The following table describes the variables.
Mining Patterns of Mobile Users Through Mobile Devices and the Musics 1207
In order to ensure that only the songs that mobile users have shown a sufficient
degree of empathy are selected as “likes”, separting itself from the “dislikes” an
algorithm is required. The algorithm below shows filters out the “likes” and “dislikes”
by using the above variables, which looks at the degree of empathy shown by a
mobile user to a particular song.
Likes_Or_Dislikes (Music) {
Return Likes If {
Music.listen_duration >= 0.8(Music.song_duration);
Music.listen_stop <= Music.song_duration – 5;
}
Return Dislikes If {
Music.listen_duration <= 0.8(Music.song_duration);
Music.listen_stop <= Music.song_start + 5;
}
}
User {1, 2, 3, …, n}
Likes:
Song {1, 2, 3, … , n};
Dislikes:
Song {1, 2, 3, …, n};
The personality match repository format is shown in the following diagram, and is
matched against the result repository from above diagram in order to predict the
personality of the mobile users.
Personality.Idealist:
Song {1, 2, 3, …, n};
Personality.Traditionalist:
Song {1, 2, 3, …, n};
Personality.Rationalist:
Song {1, 2, 3, …, n};
Personality.Hedonist:
Song {1, 2, 3, …, n};
Personality.Unknown_To_Be_Classified:
Song {1, 2, 3, …, n};
The end result of this mobile data mining method can be summarised in the
following diagram. The songs that mobile users have listened to are checked with the
Mobile User
Finished
Listening A Song
Like / Dislike
Mark Mark
Song As Song As
Like Dislike
Personality
Definition
Updates Mobile
Users Personality
Database
degree of empathy, and selected as likes or dislikes. The personality and song
matching is done before hand by using either qualitative measures by human being or
quantitative measurs by measuring the frequency and amplitude. The final outcome is
to match every single mobile user into one of the personality category.
4 Performance Evaluation
Performance evaluation is done on Pentium IV machine with 256MB of RAM and
10GB of hard disk space. Different songs from different genre will be gathered in
appropriate format and analysed using Matlab. The objective of performance
evaluation is to compare the qualitative definition of song personality done by human
being and the quantitative definition of song personality done by computers using
frequency and amplitude. Four songs are selected and their personality is
predetermined by using a personal that is neutral to this project. The songs are then
fed into Matlab for frequency and amplitude analysis and determine their personality
matching as if they were fed for technical personality selection. The chart below
shows the result whereby samples are taken from each song and their amplitude are
graphed in order to show both the amplitude and frequency. The chart illustrates that
each song have different level of amplitude and frequency.
0.15 0.1
0.08
0.1
0.06
0.05 0.04
0.02
0
Amplitude
Amplitude
0
-0.05
-0.02
-0.1 -0.04
-0.06
-0.15
-0.08
-0.2 -0.1
0 500 1000 1500 2000 2500 3000 3500 0 1000 2000 3000 4000 5000 6000
Sample Sample
0.5 0.25
0.4 0.2
0.3 0.15
0.2 0.1
Amplitude
Amplitude
0.1 0.05
0 0
-0.1 -0.05
-0.2 -0.1
-0.3 -0.15
-0.4 -0.2
0 1000 2000 3000 4000 5000 6000 0 1000 2000 3000 4000 5000 6000
Sample Sample
The analysis above tells whether does technical result is good enough compared to
human result. After the comparison between the result generated by the technical
analysis and the result generated by the human being who actually listened to the
song, the results from computer and human appear to differ completely. There is no
single matching of result. This can only be caused by two ways: imperfection of the
technical algorithm or the personality bias of the human being. Nevertheless, the point
is that, the effort for using human result would be more cost effective in viewing of
the charting of song titles, and the ability for users to vote their favourate songs.
Therefore, although technical analysis can be a possibility, it is more realistic to use
human analysis.
References
1. Bloomberg.com.2004-11-03. Nokia's Ollila Says Global Mobile-Phone Users Reach 1.7
Billion.
http:// quote.bloomberg.com/apps/news?pid=71000001&refer=europe&sid=aatIQhKrl1,
2004
2. R. Agrawal and R. Srikant. Fast Algorithms for Mining Association Rules. In Proc. 20th
Int. Conf. Very Large Data Bases, pp. 487-499, 1994.
3. R. Agrawal and R. Srikant. Mining Sequential Patterns. In Proc. 11th Int. Conf. on Data
Engineering, pp. 3-14, 1995.
Mining Patterns of Mobile Users Through Mobile Devices and the Musics 1211
1 Introduction
A cluster of processing units can be either dedicated or non-dedicated, with
regards to the execution of parallel application. Dedicated clusters of processing
units are useful for running parallel applications since the computing power is
all available for them without being slowed down by any sequential processes
(except OS processes) [4]. However, dedicated clusters, may get underused if
there aren’t enough parallel applications that will keep such systems busy.
In a non-dedicated cluster environment, the processing unit (e.g., a worksta-
tion) may belong to particular owners, who have agreed to share the computing
resources of their workstations. Parallel applications running on such systems
may get their parallel tasks allocated to specific workstations (WSs) and sub-
jected to contentions (for the CPU and other resources) with the local owners’
Interactive Processes (IPs).
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 1212–1221, 2005.
c Springer-Verlag Berlin Heidelberg 2005
Scheduling the Interactions of Multiple Parallel Jobs and Sequential Jobs 1213
significantly degrades the performance of the parallel job. This approach avoids
process migration but does not guarantee a good performance of parallel jobs.
Our approach is more conservative than the above ones with regards to the
response time of interactive processes, while ensuring dynamic and adaptive
harvesting of available CPU cycles depending on the presence and number of
IPs in the system. In addition, our approach ensures a proportional partitioning
of the available CPU cycles among the parallel tasks according to their priorities.
The remainder of this paper is organized as follows: section II gives a for-
mulation of the problem. Section III describes the analytical model. Section IV
summarizes the analytical and simulation environments and main results. Con-
clusions and future extensions are given section V.
2 Problem Formulation
Our target is to design a new processor allocation scheme to achieve a reasonable
speedup for parallel jobs, while preserving a maximum bound of response time
for the interactive sequential processes, subject to the number of IPs in the
system.
In order to achieve a good performance for both types of jobs, an efficient
scheduling technique is needed to handle the interactions between them. We pro-
pose a local scheduling technique where each workstation schedules its processes
independently.
Due to the interactive nature of the workstations owners’ jobs, the response
time of those jobs should be minimized. Thus, our scheme is based on using
the MRT measure (explained above) as the CPU scheduling cycle. This cycle
is divided into two major quanta. One reserved for the available interactive
processes and the remaining is allocated to the parallel tasks (that are running
as part of several tasks of the parallel jobs executed on the cluster). We make
following assumptions:
N PJ
0 ≤ Nip
i
≤ (τ − (qpp ∗ P rj ))/qmin (1)
j=1
Thus, the maximum number of interactive processes per cycle should leave
at least one unit of work qpp for the execution of each parallel task at each cycle.
This implies that M axiip in a cycle i should be set as:
N PJ
M axiip = (τ − (qpp ∗ P rj ))/qmin (2)
j=1
%N P J
Hence, the quantum reserved for a parallel tasks q2 is bounded by j=1 P rj ∗
%N P J
qpp and τ . It is equal to j=1 P rj ∗ qpp in a heavily loaded cycle when only one
unit of each parallel task is executed. It is equal to τ when there are no IPs in
i
the cycle (Nip = 0), that is:
N PJ
P rj ∗ qpp ≤ q2 ≤ τ (3)
j=1
If the above condition is not met, that is, if the number of IPs becomes
big, then the proposed scheme becomes not applicable and migration should
be considered. The processing time Jx of any parallel task x allocated to a
computing node is equal to the total parallel job execution time demand Lx
(where x is in [1..N P J]) divided by the number of homogeneous workstations
in the cluster m and is given by:
Jx = Lx /m (4)
Note that the above requirement can be easily relaxed, and still have the
approach applicable. However, the overall speedup may differ depending on the
granularity level considered.
Using the desirable quantum for an interactive process qdip and the number
i
of IPs in a cycle i, Nip , the quantum for IPs q1i can be computed as
After computing q1i , we check whether it allows the parallel tasks to execute
%N P J
their minimum requirement, i.e., qpp ∗ j=1 P rj . If not, then the quantum
reserved for IPs is reset to the minimum quantum qmin , as follows:
1216 A.B. Mnaouer
N PJ
if (q1i > (τ − (qpp ∗ P rj ))) then qip = qdip
j=1
else qip = qmin (6)
Here, we assume for simplification purposes that qpp is set in a way that
allows any parallel task to execute at least one unit of work.
Then, given the quantum for an interactive process qip and the number of
i
IPs in a cycle i, Nip , the quantum for all IPs q1i can be computed as
P rx
q2i,x = q2i ∗ %N P J (9)
j
j=1 P r
Therefore, the total time needed by a parallel task x during its lifetime is
given by
k
q2i,x = Jx (10)
i=1
Where k is the last cycle in which the parallel task completes its execution.
Then, the time required for running a parallel task x up to completion can
be approximated as
k
k
k
Tpx = (q1i + q2i ) = q1i + q2i
i=1 i=1 i=1
k
k N
P J−1
= q1i + Jx + q2i,j (11)
i=1 i=1 j=1
where j = x
It follows that, the time needed for running the parallel task x is approximately
bounded by:
k N
P J−1
Jx
Jx + q2i,j + β ≤ Tpx ≤ τ ∗ ( )+α (12)
i=1 j=1
qpp∗ % P rx
N P J P rj
j=1
Scheduling the Interactions of Multiple Parallel Jobs and Sequential Jobs 1217
ensure a feasible solution for the parallel task (Alternatively, a migration can be
considered at this point), that is:
i
if (ENip > M axiip ) then ENip
i
= M axiip (14)
i
if (ENip ∗ qip ) > τ then qip = qmin else qip = qdip (15)
The total number of cycles needed by a parallel task x can be estimated by:
Jx
N Cx = x (16)
[(τ − qip ∗ ENip ) ∗ % NPPrJ j]
j=1 P r
Where (τ − qip ∗ ENip ) represents q2 , i.e., the time quantum allocated to the
%N P J
parallel tasks per cycle. Whereas P rx / j=1 P rj represents a normalization
factor needed for allocating the parallel task quantum to the parallel tasks pro-
portionally with respect to their priorities.
In case of a single parallel task x present, equation (14) is reduced to
Jx
NC = (17)
(τ − qip ∗ ENip )
αx = (ENip + N P J − 1) ∗ N C x ∗ CS (18)
α = ENip ∗ N C ∗ CS (19)
Tpx = τ ∗ N C x + αx (20)
Finally the speedup, σ can be computed by taking the ratio of the total time
needed to execute the parallel job on a single dedicated sequential workstation
to the time needed to execute the same job on the cluster as:
Procedure: f indSpeedup
(q2i
if < PT) then P T = P T − q2i
else P T = 0// If remaining time is less than the
// allocated quantum, then set PT to zero
} // end inner-while
} // end outer-while
The detailed description of the CPN models can be found in [5]. Interested
readers may consult [13] for details and literature about Colored Petri Nets.
Intheperformanceanalysis,variousscenariosfortheparalleljobswereconsidered
(combinations of mixed priorities with mixed task sizes), and the performance of
each parallel job is evaluated based on the analytical model and the corresponding
CPN based simulation. Each parallel job is assigned a priority and proportionally to
this priority the scheduler allocates to this job, the proper portion from the parallel
jobs’ quantum. All the simulations are performed using the same settings of case 1.
We have evaluated the effect of the cluster size on the speedup of the parallel
jobs. The results illustrated first, the agreement between analytical and simulation
studies. They also showed how the proposed scheme could allow a parallel job to
adapt to the load conditions of the WS and strive to achieve a minimum speed up
that commensurate with its priority and maximizes its speedup adaptively.
The analytical and simulation studies were omitted for lack of space.
References
1. A. Acharya, G. Edjlali, and J. Saltz, The Utility of Exploiting Idle Workstations for
Parallel Computation, Proc. of ACM SIGMETRICS Intl. Conf. on Measurement and
Modeling of Computer Systems, June 15-18, Seattle, pp. 225-236,1997.
Scheduling the Interactions of Multiple Parallel Jobs and Sequential Jobs 1221
2. R.Arpaci,A.Dusseau,A.Vahdat,L.Liu,T.AndersonandD.Patterson,TheInteraction
of Parallel and Sequential Workloads on a Network of Workstations, Proc. of the 1995
ACM SIGMETRICS Intl. Conf. on Measurement and Modeling of Computer Systems,
pp. 267-278, May 1995.
3. A. Baratloo, M. Karaul, H. Karl, and Z. M. Kedem, An Infrastructure for Network
ComputingwithJavaApplets,Proc.oftheACMWorkshoponJavaforHigh-Performance
Computing, Feb. 1998.
4. R. Buyya, High Performance Cluster Computing: Architictures and System; and Pro-
gramming and Application, Vol 1, and Vol 2, Prentice Hall, 1999.
5. A. B. Mnaouer and B. Al-Riyami: Colored Petri Nets Based Modeling and Simulation
of Mixed Workload Interaction in a Nondedicated Cluster, proc. of the 7th Intl. Conf.
on High Performance Computing and Grid in Asia, HPC Asia 2004, pp.294-303, July
20-22, 2004, Tokyo, Japan.
6. A. B. Mnaouer and B. Al-Riyami: Effective Scheduling of Local Interactive and Parallel
Processes in a Non-Dedicated Cluster Environment, Accepted in the JPDC Journal
(to appear).
7. L. Vanhelsuwe, Create your own Supercomputer with Java, JavaWorld 2(1), 1997.
8. X. Du and X. Zhang, Coordinating Parallel Processes on Network of Workstations,
Journal of Parallel and Distributed Computing, 46, 2,pp. 125-135, 1997.
9. D. Finkel, C. E. Wills, M. J. Chiaraldi, K. Amorin, A. Covati, and M. Lee, An Applet
based Anonymous Distributed Computing System, In Internet Research: Electronic
Networking Applications and Policy, Vol. 11, No. 1, 2001.
10. K. Jensen, Coloured Petri Nets: Basic Concepts, Analysis Methods and Practical Use,
Vol.1 and Vol.2, Monographs in Theoretical Computer Science, Springer-Verlag, 1992,
1994.
11. K. Jensen, S. Christensen, P. Huber, and M. Holla, Design/CPN: A reference Manual,
Computer Science Dept, University of Aarhus, Denmark, 1996.
12. S. Leutenegger and X. Sun, Limitations of Cycle Stealing for Parallel Processing on
a Network of Homogeneous Workstations, JPDC, 43, 2, pp. 169-178, June 1997.
13. A comprehensive site about Colored Petri Nets at http://www.daimi.au.dk/ cpn/,
online as per June 1st 2003.
Feature-Correlation Based Multi-view Detection
1 Introduction
Because in many machine learning settings, unlabeled examples are significantly
easier to come by than labeled ones [1], recently, there has been interest in multi-view
learning algorithms, such as Co-EM and Co-training, that utilize unlabeled data to
improve classification performance. When learning from both labeled and unlabeled
examples, multi-view algorithms explicitly leveraging natural multiple views, i.e.,
several disjoint subsets of features, may outperform single-view algorithms that do
not. For instance, one can classify web pages based on two views, one of which is the
words occurring in the pages, and the other is the words occurring in the hyperlinks
pointing to the pages. The Co-EM algorithm [2][3] combines multi-view learning
framework with the semi-supervised EM approach. The semi-supervised EM (Expec-
tation Maximization) algorithm [4] is probably the most prominent single-view ap-
proach to learning from labeled and unlabeled data [3], in which an initial classifier h
is learned from a small set of labeled examples with Naive Bayes as underlying
learner first, and then repeatedly performs a two-step procedure: (1) use h to probabil-
istically label all the unlabeled examples; (2) learn a new maximum a posteriori
(MAP) hypothesis h from the examples labeled in step (1). Co-EM algorithm runs
EM in each view first and, before each new EM iteration, inter-changes the probabil-
istic labels generated in each view.
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 1222 – 1230, 2005.
© Springer-Verlag Berlin Heidelberg 2005
Feature-Correlation Based Multi-view Detection 1223
The multi-view setting applies to learning tasks that have a natural or artificial way to
partition their features into subsets, each of which is called a view [6]. In such tasks,
each example is described by different sets of features. For instance, in a domain with
two views V1 and V2, any example x can be presented as a triple [x1, x2, l], where x1
and x2 are descriptions of x in V1 and V2, and l is its label [5].
It has proved that using two views to bootstrap each other, a target concept can be
learned from a small set of labeled examples and a large set of unlabeled examples
given that the views are uncorrelated and compatible enough [6]. The uncorrelated
means that for any example [x1, x2, l], x1 and x2 are independent given l. The intuition
1224 K. Zhang et al.
behind this is that when views are independent, the training sets derived from each
other are selected randomly.
Definition 1. Views V1 and V2 are uncorrelated when x1 V1, x2 V2 : p(x1, x2|l) =
p(x1|l)p(x2|l) [2].
The compatible means that the target concepts in the two views label all the exam-
ples with the same value. Otherwise the classifiers may get worse and worse when
training each other for several times.
Definition 2. Views V1 and V2 are compatible with target concept t : x ĺ y when there
are hypotheses h1 : V1 ĺ {−1, +1} and h2 : V2 ĺ {−1, +1} such that, for all x = (x1,
x2), f1(x1) = f2(x2) = t(x) [2].
One way to reduce the amount of labeled examples required is to use algorithms that
combine labeled and unlabeled examples when learning [7]. Algorithms learn from
both labeled and unlabeled examples are called semi-supervised algorithms. Semi-
supervised learning can significantly reduce the amount of labeled data when remain-
ing high accuracy. EM and Co-training are two famous semi-supervised algorithms,
and both of them have proved effective on reducing amount of labeled data [6][7][8].
3 Multi-view Detection
In some real world problems, because of lacking of natural feature split, it is neces-
sary to partition the features according to their correlation and compatibility. Tradi-
tional methods use a strategy of random feature partition to generate multiple views,
and prove useful in several specific domains. However, it is not always true since the
views generated by random partition can’t always be sufficiently uncorrelated and
compatible. In this section, we introduce a view detection algorithm CCFP: for a
given problem, our algorithm partitions the features into two views, which are uncor-
related, compatible and sufficient enough. Multi-view algorithms can perform effec-
tively on the views generated by our algorithm.
In order to calculate the correlation between features given class labels, it is re-
quired that large amount of examples should be labeled first. In our approach, only
the examples labeled with high confidence prediction will be used. Figure 1 shows the
pseudo-code of CCFP. From the 2nd line to the 3rd line the conditional Symmetric
Uncertainty (a measure to feature correlation) between every pair of features are cal-
culated. The 4th line and the 5th line compute the Information Gain of each feature
given class labels. In the 6th line, features are partitioned into two subsets (F1, F2)
according to the correlation between features and the information gain of features.
Features with high correlation are preferred to be divided into the same view. And
both feature sets should include informative features, therefore, the views can be
guaranteed sufficient and compatible enough. In the 7th line, the two views (F1, F2)
are tested weather or not sufficient and compatible enough. If they are not, our algo-
rithm adjusts the weight for IG, and re-partitions the feature set.
Feature-Correlation Based Multi-view Detection 1225
The entropy of X after giving another random variable is called conditional en-
tropy, which is defined as:
H ( X | Y ) = −¦ P( y j )¦ P ( xi | y j ) log 2 ( P ( xi | y j )) (2)
j i
Where p(xi) is the prior probability for random variable X = xi, and p(xi|yj) is the con-
ditional probability of xi given the variable Y = yj. The amount by which the entropy
of variable X decreases reflects additional information about X provided by Y and is
called Information Gain [9][10]. As proved in [9], information gain is symmetrical for
two random variables X and Y. So a feature is more informative for the classification
problem if it has larger information gain given class labels:
IG ( f | C ) = H ( f ) − H ( f | C ) (3)
1226 K. Zhang et al.
ª H ( f1 | C ) − H ( f1 | f 2 , C ) º
SU ( f1 , f 2 | C ) = 2 « » (4)
¬ H ( f1 | C ) + H ( f2 | C ) ¼
This measure needs all of the features to be nominal to normalize its values to range
[0, 1]. In our approach, continuous features are I$R{$9I properly in advance to
apply this measure method.S
As for feature partitioning, we here mainly address three problems: (1) how to gener-
ate two views low correlated enough; (2) how to ensure that the views are compatible;
and (3) how to ensure that the views are sufficient. We develop an algorithm to deal
with these questions. To simplify the following description, we assume that the num-
ber of views needed to detect is two.
The input of this step are a feature set F = {f1, f2, … , fn}, where n is the number of
features, the conditional symmetric uncertainty SU(fi, fj|C) between every pair of fea-
tures, where 1 i, j n, and the information gains IG(fk|C), where 1 k n.
We first choose two features (fa, fb) with the lowest conditional symmetric uncer-
tainty as initial centers of the two target feature sets.
Once feature set centers have been selected, let the first feature set or view be F1 =
{fa}, and the second be F2 = {fb}. Let feature set Fleft be the collection of features left,
i.e. Fleft= { f | f ∈ F , f ∉ F1 , f ∉ F2 } .
Then each view Fm (m = 1 or 2) picks a new feature fnew from Fleft which is both
correlated to Fm and informative to add to Fm. For each view, fnew will be selected
according to:
§
¨
¦
f j ∈Fm
SU ( f i , f j | C ) ·
¸
f new = arg max ¨ + IG ( f i | C ) ∗ w ¸ (m=1, 2) (6)
fi ∈Fleft
¨ Fm ¸
© ¹
Where w is used to adjust the weight between correlation and compatibility. Each
time we let Fleft = Fleft – {fnew}, Fm = Fm + {fnew}. CCFP iterates this pickup until Fleft is
empty. Then feature set F is partitioned into two subsets F1 and F2.
One view of F1 and F2 got from the partitioning algorithm may be too weak to suf-
ficiently learn the target concept. In this case, they are not compatible and the weak
view may hurt the overview performance while training them each other in multi-
view learning.
Feature-Correlation Based Multi-view Detection 1227
To cope with this problem, CCFP learns two classifiers from both views using sin-
gle-view EM algorithm and labels all the examples with the two classifiers. Then we
use the percentage of examples labeled identically by both of the views to determine
whether the views are compatible and sufficient or not. If the percentage is smaller
than a threshold , the feature set F will be re-partitioned with a bigger weight w for
information gain until the percentage is bigger than . Now we just determine this
threshold empirically.
4 Empirical Results
The objective of this section is to evaluate CCFP in terms of accuracy with various
numbers of labeled examples.
Where Ne is the number of examples miss classified, and Nt is the total number of
examples in testing set.
Experiment Setup. We compare three algorithms: Naive Bayes, EM and Co-EM. On
each of the ten pairs of newsgroups, all of these three algorithms run five times. For
Naive Bayes algorithm, one of the folders is used as test set, and the other four folders
are used as training set every time. For EM and Co-EM, one of the folders is used for
test, with n (n=2,4,8,16,32,64,128) labeled examples and (800-n) unlabeled examples
for training every time. The n labeled examples are chosen randomly from the other
four folders. In order to study the influence of view compatibility and correlation to
the performance of multi-view learners, when testing Co-EM, we use three different
feature splits: (1) B-W (Best and Worst) splits the best half of features (with high
information gain) into a best view, and the worst half of features into a worst view.
This can be regarded as the worst possibility of random feature split. (2) BG (Both
Good) splits the features into two views which are comparative (both have features
with high and low information gain). This can be regarded as the best possibility of
random feature split. (3) CCFP splits features using our approach.
1228 K. Zhang et al.
Table 1. Classfication error rates on the newsgroups dataset. Each error rate is the average of
50 runs (ten pairs of newsgroups and each for five runs)
Co-EM
NaiveBayes EM
B-W BG CCFP
Labeled 800 2 2 2 2
Unlabeled 0 798 798 798 798
Error Rate 3.1 ± 0.2 29.66 ± 11.9 31.05 ± 3.9 13.66 ± 5.5 10.35 ± 4.2
Labeled 4 4 4 4
Unlabeled 796 796 796 796
Error Rate 14.21 ± 5.6 28.95 ± 2.2 6.25 ± 1.3 3.82 ± 0.5
First, views generated by CCFP outperform that generated by BG. Intuitively, the
power comes from that CCFP splits features into two views which are sufficient,
compatible and low correlated while the views generated by BG are only sufficient
and compatible but not low correlated. For instance, when a view labels an example
as class1 by mistake, the second view is more likely to predict the same example as
class2 given it is low correlated with the first one. Then the first view may be cor-
rected. Otherwise, if the other view is high correlated, it is more likely for the second
view to predict the example as the same mistake class, too.
Second, even though they has the best view which consists of the best half of all
the features, the views generated by B-W perform very badly due to their incompati-
bility. The intuition behind this is that the bad view is not sufficient, so that it may
give wrong information to the good view.
Fig. 2. Error rates for different number of labeled examples. Each error rate is the average of
50 runs
Feature-Correlation Based Multi-view Detection 1229
5 Related Work
Blum and Mitchell [6] provided the first formalization of learning in multi-view
framework. They show that PAC-like guarantees on learning with labeled and unla-
beled data hold under the assumptions that each view is sufficient for classification
and the views are weak correlated. Blum and Mitchell also introduced the Co-
training, which is the first general-purpose, multi-view algorithm. Nigam and Ghani
[3] use Expectation Maximization for multi-view learning. Co-EM can be seen as the
closest implementation of the theoretical framework proposed in [6]. Ghani [8] uses
Error-Correcting Output Codes to allow Co-training and Co-EM to scale up well to
problems with a large number of classes. Muslea et al. [14] extend the Co-EM to
incorporate active learning and show its robust behavior on a large amount of prob-
lems. All of these works are based on existing views or the views generated by split-
ting features randomly.
Muslea et al. [5] developed an adaptive view validation algorithm, which is the
first meta-learning approach to deciding whether or not multi-view learning is appro-
priate for new, unseen tasks. The view validation algorithm uses several solved prob-
lem instances to train a classifier that discriminates between instances for which the
views are sufficiently/insufficiently compatible for multi-view learning. But, it can
not automatically partition the domain’s features into views that are adequate for
multi-view learning.
6 Conclusion
The results described in this paper lead us to believe that multi-view detection
approach is indeed useful for learning with few labeled examples. When there is no
natural feature split, it is necessary to partition the features according to their correla-
tion and compatibility. The views generated based on symmetric uncertainty and
information gain by our approach are low correlated, compatible and sufficient. We
have shown that multi-view learner with views generated by our approach outper-
forms learner with views generated by other means. When the amount of labeled
examples is small, it also outperforms single-view learner clearly.
There are still several limitations in our approach, which we plan to cope with in
the near future work. First, views generated by our approach always have the same
1230 K. Zhang et al.
number of features, so some correlated features may be partitioned into the same
view. Second, once the views have been generated, how to assign the weight of each
view properly? Third, we assign the value of mentioned in section 3.3 manually
now, so how to assign the value automatically?
References
1. D. Yarowsky. Unsupervised word sense disambiguation rivaling supervised methods.
Proceedings of the 33rd Annual Meeting of the Association for Computational Linguistics,
pages 189-196, 1995.
2. Ulf Brefeld, Tobias Scheffer. Co-EM support vector learning. Proceedings of the 21st in-
ternational conference on Machine learning, 2004.
3. Nigam, K., Ghani, R. Analyzing the effectiveness and applicability of co-training. Pro-
ceedings of Information and Knowledge Management, 2000.
4. Dempster, A., Laird, N., & Rubin, D. Maximum likelihood from incomplete data via the
EM algorithm. Journal of the Royal Statistical Society B, 39, 1977.
5. Muslea, Ion, Steven Minton, & Craig Knoblock. Adaptive view validation: A first step to-
wards automatic view detection. In The 19th International Conference on Machine Learn-
ing (ICML-2002), pages 443–450, 2002.
6. Blum, A., & Mitchell, T. Combining labeled and unlabeled data with co-training. Proceed-
ings of the Conference on Computational Learning Theory, pages 92–100, 1998.
7. Ghani, Rayid. Combining labeled and unlabeled data for text classification with a large
number of categories. Proceedings of IEEE Conference on Data Mining. 2001.
8. Ghani, Rayid. Combining labeled and unlabeled data for multiclass text classification. Pro-
ceedings of the 19th International Conference on Machine Learning (ICML-2002), pages
187–194. 2002.
9. Lei Yu, Huan Liu. Feature Selection for High-Dimensional Data: A Fast Correlation-
Based Filter Solution. Proceedings of the 19th International Conference on Machine
Learning (ICML-2003), pages 856-863, 2003.
10. Quinlan, J. C4.5: Programs for machine learning. Morgan Kaufmann. (1993).
11. Press, W. H., Flannery, B. P., Teukolsky, S. A., & Vetterling, W. T. Numerical recipes in
C. Cambridge University Press, Cambridge, 1988.
12. T. Joachims. A probabilistic analysis of the Rocchio algorithm with TFIDF for text catego-
rization. In Proceedings of ICML '97, 1997.
13. Miller. G. WordNet: An online lexical database. International Journal of Lexicography.
MIT Press, 1990.
14. Muslea, Ion, Steven Minton, & Craig Knoblock. Active + Semi-supervised Learning =
Robust Multi-view Learning. In The 19th International Conference on Machine Learning
(ICML-2002), pages 435–442, 2002.
BEST: Buffer-Driven Efficient Streaming
Protocol
1 Introduction
The Internet has recently been experiencing an explosive growth in the use of au-
dio and video streaming applications. Such applications are delay-sensitive, semi-
reliable and rate-based. Thus they require isochronous processing and Quality-
of-Service(QoS) from the end-to-end viewpoint. However, today’s Internet does
not attempt to guarantee an upper bound on end-to-end delay and a lower
bound on available bandwidth. As a result, most of multimedia applications
use UDP(User Datagram Protocol) that has no congestion control mechanism.
However, the emergence of non-congestion-controlled real-time multimedia appli-
cations threatens unfairness to competing TCP(Transmission Control Protocol)
traffic and possible congestion collapse [1, 2].
Studies on the congestion controlled streaming protocol has been increas-
ingly done since the 1990s [2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13]. These works attempt
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 1231–1240, 2005.
c Springer-Verlag Berlin Heidelberg 2005
1232 S. Lee et al.
to guarantee the network stability and fairness with competing TCP traffic.
However, by considering only the stability aspect of network, these works ig-
nore the characteristics of multimedia streaming applications. Moreover, most
of the previous works have no consideration on the longer-delay characteristics
in high-speed networks.
In this paper, we propose a new streaming protocol called BEST(Buffer-
driven Efficient STreaming). The BEST protocol takes a hybrid viewpoint that
considers both user viewpoint and network viewpoint. Therefore it maintains
the network stability as previous works and achieves the smoothed playback by
controlling the sending rate and the video quality. Our protocol is also designed
to consider the longer-delay characteristics of high-speed networks for a better
performance.
The rest of this paper is organized as follows. In Section 2, we review some of
the related works and in Section 3, we present various algorithms of the BEST
protocol. Detailed description of our simulation results are presented in Section
4. Finally, Section 5 concludes the paper and discusses some of our future work.
2 Related Work
While data applications such as Web and FTP(File Transfer Protocol) are mostly
based on TCP, multimedia applications will be based on UDP due to its real-
time characteristics. However, UDP does not support congestion control mecha-
nism. For this reason, UDP-based streaming protocols cause the unfairness with
competing TCP traffic and the starvation of congestion controlled TCP traffic
which reduces its bandwidth share during overload situation. Several congestion
controlled streaming protocols have been developed recently.
Previous works can be classified into user viewpoint and network viewpoint.
With the network viewpoint, the network stability and the fairness with compet-
ing TCP traffic are seeking. With the user viewpoint, they pursue the smoothed
playback in a receiver side.
Previous works with the network viewpoint can be further categorized into
three different approaches. The first approach mimics TCP’s AIMD(Additive In-
crease Multiplicative Decrease) algorithm to achieve TCP-friendliness. Stream-
ing protocols in this category were discussed in [2, 3, 4, 5, 6, 7]. The second ap-
proach adjusts its sending rate according to Padhye’s TCP throughput equa-
tion. Streaming protocols in this category were presented in [8, 9, 10]. The third
approach uses bandwidth estimation scheme that was employed in the TCP
Westwood. This approach was presented in [11, 12].
A typical example of the network viewpoint protocol is the TFRC(TCP-
Friendly Rate Control) for unicast streaming applications which uses the TCP
throughput equation [14]. Padhye et al. presents an analytical model for the
available bandwidth share(T ) of TCP connection with S as the segment size,
p as the packet loss rate, tRT T as the RTT(Round Trip Time), tRT O as the
RTO(Retransmission Time-Out). The average bandwidth share of TCP depends
mainly on tRT O and p as shown in (1):
BEST: Buffer-Driven Efficient Streaming Protocol 1233
S
T = (1)
2p
tRT T 3 + tRT O (3 3p 2
8 )p(1 + 32p )
The TFRC is responsive to network congestion over longer time period and
changes the sending rate in a slowly responsive manner. Therefore, it is consid-
ered to be compatible to TCP flows and to reduce packet loss occurrence. But it
has some disadvantages which are oscillations of sending rate and possibility of
buffer underflow. Moreover, according to recent researches, the TCP throughput
equation is influenced by the throughput model employed, the variability of loss
events, and the correlation structure of the loss process. Also, revealed itself not
to be friendly toward TCP since it mimics only the long term behaviour of TCP
[15].
Unlike the network viewpoint protocol discussed above, the buffer-driven
scheme is a streaming protocol with the user viewpoint. This scheme scales
video quality and schedules data of transmission based on receiver buffer oc-
cupancy and sender buffer occupancy. Therefore, the buffer-driven scheme pro-
vides smoothed playback by preventing buffer underflow or overflow. More in
details, during underload periods, the video quality is increased, which results
in higher information rate, whereas during overload periods, the video quality
is decreased. However, the buffer-driven scheme is inherited the unstability and
unfairness from the UDP-based streaming protocols because it has no concern
about network situation [13].
z y
} k
k
ڤ
x
ک k
l گ
t
ڠ
ڭ
i ک
t ڠ i
گ
u
y{wVy{jw y{wVy{jw
t
Receiver Buffer
BT
RI(t) RC(t)
From Network To Application
BC(t)
rate of video streams. The sender can estimate the receiver buffer state(BE ) as
follows:
BE (t + 1) = BC (t) + {RI (t) − RC (t)} × RT T (3)
BC (t) ≈ BE (t) (4)
Number of Packets × P acketSize
RI (t) = (5)
RTCP Period
RC (t) = Encoding Rate at Time (t) (6)
After updating the next sending rate and video quality, BC (t) is re-calculated on
the basis of the new sending rate and video quality. In (3), the BEST protocol
predicts one-RTT-early the receiver buffer state. This scheme efficiently pre-
vents buffer underflow or overflow with no additional overhead in a high-speed
networks with longer delay.
TH ~ (100-TH) % -α +β
Figure 4 shows the scheme to controlling the sending rate and the video
quality. For the congestion state, the sender has to reduce the sending rate for
1236 S. Lee et al.
the network stability. But, if the receiver buffer state is estimated as (0 ∼ T H%),
we decrease the video quality for preventing buffer underflow. For {(100-T H) ∼
100%} of buffer occupancy, the video quality is increased to prevent the buffer
overflow. However, for the buffer state {T H ∼ (100-T H)%}, it simply reduces the
sending rate by α for the network stability. Parameter α, the data reduction rate,
is supposed to be less than differences among various levels of video qualities.
In this paper, α is set to 1Mbps because we use five different video qualities(20,
16, 12, 8, 4Mbps) and the difference among them is 4Mbps.
For (0 ∼ T H%) of the buffer occupancy in the stable state, the sender de-
creases the video quality. However, for {(100-T H) ∼ 100%}, it increases the
video quality. In the case of {T H ∼ (100-T H)%}, the BEST protocol increases
the sending rate by β for competing with other traffics. Parameter β, the data
increasing rate, is calculated as follows:
Number of Packets/sec
β =α× (7)
Number of Packets/Congestion Period
S1 BEST Traffic R1
. .
. 50Mbps 15ms 30Mbps 20ms
R1 R2 50Mbps 15ms .
. .
Router
Sn Rn
Other Protocols Traffic
iGGOtP
ͤ͡ ͨ͡
·ΚΕΖΠ͑ΦΒΝΚΥΪ
΄ΖΟΕΚΟΘ͑ΒΥΖ ͧ͡
ͦ͡
ͣ͡
ͥ͡
ͤ͡
͢͡
ͣ͡
͢͡
͡ ͡
͢ ͢͢ ͣ͢ ͤ͢ ͥ͢ ͢ ͢͢ ͣ͢ ͤ͢ ͥ͢
{GOP
network state, it suffers more packet losses than our BEST protocol. However,
the number of packet loss for the BEST and the TFRC are about the same.
From this result, it is shown that the BEST protocol has the approximately same
performance with the TFRC in the network stability aspect. Figure 8 (b) shows
the buffer occupancy changes. The TFRC experiences a serious buffer underflow,
because it has no control on the video quality upon the buffer occupancy state.
But, the BEST protocol and the buffer-driven scheme are successfully preventing
the buffer underflow or overflow.
5 Conclusion
Most of streaming protocols are based on UDP with no end-to-end congestion
control. For this reason, wide usage of multimedia applications in Internet might
lead to congested networks. To avoid such a situation, several congestion con-
trolled streaming protocols were proposed recently. However, by considering only
the stability aspect of network, most of previous works ignore the characteristics
of multimedia streaming applications.
In this paper, in order to overcome limitations of the previous streaming
protocols, we propose a new streaming protocol, the BEST(Buffer-driven Effi-
cient STreaming). Our protocol takes a hybrid viewpoint that considers both
user viewpoint and network viewpoint. It controls the sending rate or the video
quality on the basis of the buffer occupancy and the network state. Therefore,
the BEST protocol improves the network stability by reducing the packet loss
and it also provides the smoothed playback by preventing buffer underflow or
overflow. Simulation results have shown that our BEST protocol has a better
performance than previous approaches.
In the future, we will further enhance the BEST protocol for TCP-friendliness.
Acknowledgement
This research was supported by the MIC(Ministry of Information and Com-
munication), Korea, under the ITRC(Information Technology Research Center)
support program supervised by the IITA(Institute of Information Technology
Assessment)
References
1. S. Floyd and F. Kevin: outer mechanisms to support end-to-end congestion control.
Technical Report, LBL-Berkeley. (1997)
2. S. Cen, C. Pu, and J. Walpole: Flow and congestion control for internet streaming
applications. Multimedia Computing and Networking. (1998)
3. R. Rejaie, M. Handley, and D. Estrin: RAP: An end-to-end rate based conges-
tion control mechanism for real-time streams in the Internet. IEEE INFOCOMM.
(1999)
4. B. Mukherjee and T. Brecht: Time-lined TCP for the TCP-friendly delivery of
streaming media. International Conference on Network Protocols. (2000)
5. S. Na and J. Ahn: TCP-like flow control algorithm for real-time applications. IEEE
International Conference. (2000)
6. I. Rhee, V. Ozdemir, and Y. Yi: TEAR: TCP emulation at receivers - flow control
for multimedia streaming. Technical Report, NCSU. (2000)
7. D. Bansal, and H. Balakrishnan: Binomial Congestion Control Algorithms. IEEE
INFOCOMM. (2001)
8. J. Padhye, J. Kurose, D. Towsley, and R. Koodli: A model based TCP-friendly
rate control protocol. NOSSDAV. (1999)
9. Q. Zhang, Y. Zhang, and W. Zhu: Resource allocation for multimedia streaming
over the Internet. IEEE Transactions on Multimedia. (2001)
1240 S. Lee et al.
10. B. Song, K. Chung, and Y. Shin: SRTP: TCP-friendly congestion control for multi-
media streaming. 16th International Conference on Information Networking. (2002)
11. N. Aboobaker, D. Chanady, M. Gerla, and M. Sanadidi: Streaming media conges-
tion control using bandwidth estimation. IFIP/IEEE Internation Conference on
Management of Multimedia Networks and Services. (2002)
12. A. Balk, D. Maggiorini, M. Gerla, and M. Sanadidi: Adaptive MPEG-4 video
streaming with bandwidth estimation. QoS-IP. (2003)
13. D. Ye, X. Wang, Z. Zhang, and Q. Wu: A buffer-driven approach to adaptively
stream stored video over Internet. High Speed Networks and Multimedia Commu-
nications 5th International Conference. (2002)
14. J. Padhye, V. Firoiu, D. Towsley, and J. Kurpose: Modeling TCP throughput: A
simple model and its empirical validation. ACM SIGCOMM. (1998)
15. L. Grieco and S. Mascolo: Adaptive rate control for streaming flows over the In-
ternet. ACM Multimedia Systems Journal, Vol. 9. (2004)
16. H. Schulzrinne, S. Casner, R. Frederick, and V. Jacobson: RTP: A transport pro-
tocol for real-time applications. IETF, RFC 1889. (1996)
17. UCB LBNL VINT: Network Simulator ns (Version 2).
http://www-mash.cs.berkeley.edu/ns/
A New Neuro-Dominance Rule for Single Machine
Tardiness Problem
Tarık Çakar
1 Introduction
Because of the fact that companies should struggle to survive in a strongly
competitive commercial environment, a big emphasis is required to be placed on the
coordination of the priorities of the companies through the functional fields. Jensen at
al. [1] has stated the importance of a customer depending on a variety of factors; (i)
the length of relationship of companies with the costumer, (ii) how frequently they
provide business to the company, (iii) how much of the capacity of the companies
they fill with orders and the potential of a costumer to provide orders in the future.
Avoiding delay penalties and meeting due dates are the most important aims of
scheduling in many applications. Tardy delivery costs, for example, costumer bad
will, lost future sales and rush shipping costs, change significantly over orders and
costumers, and in a job priority the implied strategic weight should be reflected. An
extensive majority of the job shop scheduling literature is full with rules, which do not
consider information about costumer importance or job tardiness penalty. Thus, the
strategic priorities of the companies need the information related to costumer
importance be incorporated into its shop floor control decisions. Furthermore, it may
not be sufficient to measure the performance of shop floor by employing unweighted
performance measurements alone that treat each job in the shop in the same
importance in the presence of job tardiness penalties. In this paper, a novel superior
rule for the single machine total weighted tardiness problem with penalties depending
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 1241 – 1250, 2005.
© Springer-Verlag Berlin Heidelberg 2005
1242 T. Çakar
on job has been presented and implemented in lower and upper bounding schemes.
Lawyer [2], presented total weighted tardiness problem as 1 || wiTi is strongly and
gives pseudo polynomial algorithm for the total tardiness problem, wiTi. For
weighted and unweighted tardiness problems, a few various solution methods were
presented in [3][4][8]. Emmons’s study [4] is based on deriving several superior rules
that limits the search for an optimum solution to the 1||Ti problem. The rules in
stated study are used in both branch and bound (B&B) and dynamic programming
algorithms (Fisher [5] and Potts and Van Wassenhove [6,7]). These results were
extended to the weighted tardiness problem by Rinnooy Kan et al. [8]. Chambers et
al. [3] presented a study based on improving novel heuristic superior rules and a
flexible decomposition heuristic. Abdul-Razaq et al. [9] has tested the exact
approaches, which are used in solving the weighted tardiness problem, and Emmons’s
superior rules were used in their paper to form a precedence graph to find upper and
lower bounds. They demonstrated that the most promising lower bound both in time
consumption and quality is the linear lower bound method by Potts and Van
Wassenhove [6], obtained from Lagrangian slacking of the machine capacity
constraints. Hoogeveen et al. [10] presented a study based on reformulating the
problem using slack variables and demonstrated that better Lagrangian lower bounds
could be used. Swarc has presented a study [11] based on proving the existence of a
special ordering for the single machine earliness- tardiness (E/T) problem with job
independent penalties where the arrangement of two adjacent jobs in an optimal
schedule depends on their start time. A two-stage decomposition mechanism to 1 ||
wiTi problem when tardiness penalties are proportional to the processing time is
presented by Szwarc and Liu [12]. As stated above the importance of a costumer
depends on different factors, however it is important for manufacturing in the
reflection of these priorities in the decisions of scheduling. For this reason, a new
superior rule for the most general case of the total weighted tardiness problem is
presented by us. Our proposed rule extends and also covers the Emmon’s results and
generalizations of Rinnooy Kan et al. under consideration of the time dependent
orderings between each pair of jobs. Miscellaneous heuristics and dispatching rules
were proposed, because of the fact that the implicit enumerative algorithms may need
important computer resources both in terms of memory and computation times. With
specified due dates and delay penalties for the weighted tardiness problem,
Vepsalainen and Morton [13] has developed and tested efficient dispatching rules. An
adequate condition for local optimality is provided by their proposed superior rule,
and it generated schedules, which cannot be developed by adjacent job interchanges.
In this paper, a trained BPANN to show how the proposed superior rule can be used
to develop a sequence given by a dispatching rule. We also gave the proof of that if
any sequence disturbs the proposed superior rule, and then switching the disturbing
jobs either lowers the total weighted tardiness or leaves it unchanged. Because of the
comprehensive computational requirements, according to the literature the weighted
tardiness problem is NP-hard and the lower bounds do not have practical applications.
Akturk and Yildirim[16] proposed more practical application about weighted
tardiness problem and computing lower bound. A study of Potts and Van Wassenhove
based on the linear lower bound is rather a weak lower bound, however the most
promising one was presented by Abdul-Razaq et al.. His study is in contradiction with
the conjecture about this subject that one should limit the search tree as much as
A New Neuro-Dominance Rule for Single Machine Tardiness Problem 1243
possible with using the sharpest possible bounds. The linear lower bound
computations are based on an initial sequence. In this paper, a solution that has a
better upper bound value, which is near to optimal solution, is presented. Out solution
also improves the lower bound value obtained from the linear lower bound method.
Sabuncuoglu and Gurgun [14] proposed a new neural network approach to solve the
single machine mean tardiness scheduling problem and the minimum makespan job
shop scheduling problem. The proposed network by Sabuncuoglu and Gurgun
combines the characteristics of neural networks and algorithmic approaches.
Recently, Akturk and Ozdemir [15] proposed a new dominance rule for 1 | rj | wiTi
problem that can be used in reducing the number of alternatives in any exact
approach. Akturk and Yildirim used a interchange function, Δij(t), is used to specify
the new dominance properties, which gives the cost of interchanging adjacent jobs i
and j whose processing starts at time t. Akturk and Yildirim found three breakpoints
using the cost functions and obtained a number of rules by using the breakpoints.
R
A APLLY THE
N HEURISTICS
D AND META
O HEURISTICS APPLY
M THE NEURO
L DOMINANCE
Y
ATC
RULE
COVERT COMPARE THE
G
IMPROVEMENTS
E
AFTER USING
N EDD NEURO
E
DOMINANCE
R SPT RULE
A
T
E
WSPT
D
LPT
D
A SA
T
A GA
Fig. 1. Steps of the study from obtaining randomly data to comparison of the results
In this study, instead of extracting rules finding break point using cost functions, an
artificial neural network was trained using sufficient number of data different from
Aktürk and Yıldırım. When the necessary inputs were given, according to the total
weighted tardiness problem criterion, it is decided that which job will come firstly
among the adjacent jobs. This paper organized as follows; In the section 2, used
parameters, modeling of the problem and how the proposed NDR works are
discussed. In the section 3, used lower and upper bound schemes are explained. In the
section 4, all of computational results and analysis are reported.
1244 T. Çakar
2 Problem Definition
The single machine problem may be explained as follows. Each job, which is
numbered from 1 to n, should be processed with no interruption on a single machine,
which can use only one job at a time. All of the jobs will be available to be processed
at time “0”. If a job is presented with i, it has parameters as pi, di, and wi, which refer
to an integer processing time, a due date and a positive weights, respectively. The
N
problem can be defined as finding a schedule S, which minimizes f ( S ) = ¦ wi Ti
i =1
function. The dominance rule may be introduced by considering schedules, where Q1
and Q2 are two disjoint subsequences the rest n-2 jobs, S1=Q1ijQ2 and S2=Q1jiQ2.
pi
di
(jĺi) (1)
wi
(iĺj) (0)
pj
dj
wj
Fig. 2. Structure of the used BPANN. There are 7 input and 1 output
A New Neuro-Dominance Rule for Single Machine Tardiness Problem 1245
1 2 3 ΣwiTi=100
0 7 12 21
INPUT
T =0
pi =7 NEURO DECISION:
di =5 DOMINANCE OUTPUT=1 SWITCH
wi=3 RULE THE JOBS
pj =5
dj =6
wj=7
2 1 3 ΣwiTi=73
0 5 1 2
2 1
INPUT
T =5
pi =7 NEURO DECISION:
di =5 DOMINANCE SWITCH
OUTPUT=1
wi=3 RULE THE JOBS
pj =9
dj =8
wj=4
2 3 1
ΣwiTi=72
0 5 14 21
This situation shows that the total weighted completion time problem solution gets
a lower bound on the total weighted tardiness problem. For any given v value, the
optimal solution of the total weighted completion problem may be realized by the
WSPT rule in which the jobs are sequenced in non-increasing order of vi/vp. An initial
sequence is needed in the determination of the job completion time Ci to obtain the
linear lower bound. Afterwards, v, refers to the vector of linear weights, is chosen to
maximize LBLin(v) with the condition of that viwi for each job i. In Abdul-Razzaq’s
study, several lower bounding approaches have been compared and according to the
their computational results the linear lower bound is found superior to others, which
were given in the literature, because of the its quick computability and low memory
requirement. In this paper, the impact of an initial sequence on the linear lower bound
value will be tested and tried to present having a better, i.e. near optimal, upper bound
value will improve the lower bound value. This linear bound scheme also was used by
Akturk and Yildirim.
4 Computational Results
In this study, each lower bounding scheme was tested on a set of randomly generated
problems. We have tested the lower bounding scheme on problems with 50, 70 and
100 jobs, which were generated as: for each job i, pi, and wi were generated from two
uniform distributions, [1, 10] and [1, 100] to create low or high variation,
respectively. Here as stated early, pi and wi refers to an integer processing time and an
integer weight, respectively. The proportional range of due dates (RDD) and average
tardiness factor (TFF) were selected from the set {0.1, 0.3, 0.5, 0.7, 0.9}. di, an integer
due date from the distribution [P(1-TF-RDD/2), P(1-TF+RDD/2)] was produced for
n
each job i, here, P refers to total processing time, ¦p
i =1
i . As summarized in Table 2,
A New Neuro-Dominance Rule for Single Machine Tardiness Problem 1247
we considered and evaluated 300 example sets and took 100 replications for each
combination resulting among 30.000 randomly generated runs.
To find an initial sequence for the linear lower bound, a number of heuristics were
selected and their priority indexes were given as a summary in Table 3. The WSPT,
EDD, LPT and SPT can be given as examples of static dispatching rules, where as
ATC and COVERT are dynamics ones. Vepsalainen and Morton [13] have mentioned
in their paper as: the ATC rule is superior to other sequencing heuristics and they
defined it close to the optimal for the ¦wT i i problem.
SA has some weak points such as long running time and difficulty in selecting
cooling parameter when the problem size becomes larger. A geometric ratio was used
in SA as Tk+1 = ĮTk, where Tk and Tk+1 are the temperature values for k and k+1
steps, respectively. Geometric ratio is used more commonly in practice. In this study,
the initial temperature was taken 10000 and 0.95 was used for cooling ratio (Į).
In this study, when preparing initial populations in genetic algorithm, for any given
problem, the solutions obtained from COVERT, ATC, EDD, WSPT, LPT; and SA
methods, were also used. Others were randomly generated. Total weighted tardiness
was taken as a fitness function. The parameters used in genetic algorithm were as
given below.
Linear Order Crossover (LOX) method has been applied to each chromosome
independently. LOX works as follows:
heuristic over 10,000 runs for 50, 70 and 100 job states were tested by us and given in
Table 5. As stated above, (>) denotes number of runs in which sequence gotten from
Heuristic+NDR gives a higher linear lower bound value than the sequence gotten
from the heuristic, where as (=) denotes number of runs in which Heuristic+NDR
executes as well as heuristic, and (<) denotes number of runs in which
Heuristic+NDR executes worse. For instance, the combination of EDD+NDR
executed 4596 times better (>) than EDD rule. According to the large t-test values on
the average improvement, the proposed dominance rule provides an important
improvement on all rules and the amount of improvement is noteworthy at 99.5%
confidence level for all heuristics.
5 Conclusion
decision of which job should precede. The proposed neuro-dominance rule provides a
sufficient condition for local optimality. Therefore, a sequence obtained by the
proposed neuro-dominance rule cannot be improved by adjacent job interchanges.
Computational results over 30,000 randomly generated problems indicate that the
amount of improvement is significant. For the future research, single machine total
weighted tardiness problem with unequal release dates can be modeled by using
artificial neural networks.
References
1. Jensen, J.B., Philipoom, P.R., Malhotra, M.K., Evaluation of scheduling Rule s with
commensurate customer priorities in job shops, Journal of operation management,1995,
13, 213-228.
2. Lawler, E. L., A “Pseudopolynomial” algorithm for sequencing job to minimize total
tardiness, Annals of Discrete Mathematics, 1997, 1, 331-342.
3. Chambers, R. J., Carraway, R.L., Lowe T.J. and Morin T.L., Dominance and
decomposition heuristics for single machine scheduling, Operation Research,1991, 39,
639-647.
4. Emmons, H., One machine sequencing to minimize certain functions of job tardiness.
Operation Research, 1969, 17, 701-715.
5. Fisher M.L., A dual algorithm for the one-machine scheduling problem, Mathematical
Programming, 1976, 11, 229-251.
6. Potts, C.N. and Van Wassenhove, L.N., A Branch and bound algorithmfor total weighted
tardiness problem, Operation Research, 1985, 33, 363-377.
7. Potts, C.N. and Van Wassenhove, L.N., Dynamic programming and decomposition
approaches for the single machine total tardiness problem, European Journal of Operation
Research, 1987, 32, 405-414.
8. Rinnooy Kan, A.H.G., Lageweg B.J. and Lenstra, J.K., Minimizing total costs in one
machine scheduling, Operations Research, 1975, 23, 908-927.
9. Abdul-Razaq, T.S., Potts, C. N. And Van Wassenhove, L.N., A survey of algorithms for
the single machine total weighted tardiness scheduling problem, Discrete Applied
Mathematics, 1990, 26, 235-253.
10. Hoogeveen, J.A. and Van de Velde, S.L., Stronger Lagrangian bounds by use of slack
variables: applications to machine scheduling problems. Mathematical Programming, 195,
70, 173-190.
11. Szwarc,W., Adjacent orderings in single machine scheduling with earliness and tardiness
penalties, Naval research Logistics, 1993, 1993, 40, 229-243.
12. Szwarc,W., and Liu, J.J., Weighted Tardines single machine scheduling with proportional
weights, Management Science, 1993, 39, 626-632.
13. Vepsalainen, A.P.J., and Morton, T.E., Priority rules for job shops with weighted tardiness
cost, management Science, 1987, 33, 1035-1047.
14. Sabuncuoglu, I. And Gurgun, B., A neural network model for scheduling problems,
European Journal of Operational research, 1996, 93(2), 288-299.
15. Akturk, M.S., Ozdemir, D., A new dominance rule to minimize total weighted tardiness
with unequal release date, European Journal of Operational research, 2001, 135, 394-412.
16. Akturk, M.S., Yidirim, M.B., A new lower bounding scheme for the total weighted
tardiness problem, Computers and Operational Research, 1998, 25(4), 265-278.
Sinogram Denoising of Cryo-Electron
Microscopy Images
1 Introduction
Structural biology studies how biological systems are built. Especially, deter-
mining three-dimensional electron density maps of macromolecular complexes,
such as proteins or viruses, is one of the most important tasks in structural
biology [1, 2].
Standard techniques to obtain three-dimensional density maps of such par-
ticles (at atomic resolution) are by X-ray diffraction (crystallography) and by
nuclear magnetic resonance (NMR) studies. However, X-ray diffraction requires
that the particles can form three-dimensional crystals and the applicability of
NMR is limited to relatively small particles [3]. There are many well-studied
viruses that do not seem to crystallize and are too large for NMR techniques.
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 1251–1261, 2005.
c Springer-Verlag Berlin Heidelberg 2005
1252 T. Mielikäinen and J. Ravantti
Fig. 1. Noiseless projections (top) of the density map from random directions and their
sinograms (bottom)
Sinogram Denoising of Cryo-Electron Microscopy Images 1255
3 Sinogram Denoising
According to the Common Line Theorem, for each two projections pi and pj
there are angles αi and αj such that p̂i (x, αi ) = p̂j (x, αj ) for all x. Due to
discretization errors and high level of noise in cryo-electron microscopy images,
the images of identical macromolecular complexes satisfy the theorem only ap-
proximately: the sinogram rows ki and kj corresponding to the true common
line between projections p̂i and p̂j should be quite similar in the sinograms si of
pi and sj of pj if the noise level is not too high. Thus, the most similar sinogram
rows in the sinograms si and sj are good candidates to determine the common
line between the projections pi and pj .
The standard approach to reduce the noise in cryo-electron microscopy images
is to compute averages of several images. The same idea of computing averages
can be exploited also without assuming the clusterability of the projection di-
rections since there is always a common line between each two sinograms si and
sj of projections pi and pj of the same density map D. Thus, if ki and kj are the
indices of the sinograms si and sj corresponding to the common line between pi
and pj , the sinogram rows si [ki ] and sj [kj ] can be replaced by (si [ki ] + sj [kj ]) /2.
In general, when there are n% projections from the same particle, a sinogram
n
row si [ki ] can be replaced by j=1 sj [kj ]/n where the sinogram rows sj [kj ]
correspond to the common lines with si [ki ].
The method is described more precisely by Algorithm 1. The algorithm inputs
n sinograms s1 , . . . , sn of size l×m and outputs their denoised versions t1 , . . . , tn .
Clearly, the effectiveness of this method depends on how well we are able to
detect the (almost) true common lines between the sinograms of the projections.
1256 T. Mielikäinen and J. Ravantti
In the next section we experiment the method using correlation as the measure
of the similarity between the rows.
4 Experiments
We tested the effectiveness of the proposed denoising scheme with an artificial
density map of size 64 × 64 × 64 voxels. The density map consists of balls with
different weights, radii and locations. We projected the density map to 6300
random directions, computed sinograms of these projections, added to the pro-
jections Gaussian noise with different variances, and computed the sinograms of
noiseless and noisy projections (see Figure 1 and Figures 2–5, respectively) with
angular step-size of 4 degrees. Furthermore, we denoised the sinograms of the
noisy projections using the proposed denoising method. The similarity measure
used between the sinogram rows was the correlation coefficient.
The results are shown in Figures 2, 3, 4, and 5. Denoising seems to work
reasonably well, at least visually. Twilight zone of the straightforward imple-
mentation of the method is between signal-to-noise ratios 0.5 and 0.3. Note that
the low contrast of the sinograms in Figure 5 is due to the normalization of
intensity values.
Fig. 2. Projections with signal-to-noise ratio 2 (top), noisy sinograms (middle) and
denoised sinograms (bottom)
Sinogram Denoising of Cryo-Electron Microscopy Images 1257
Fig. 3. Projections with signal-to-noise ratio 1 (top), noisy sinograms (middle) and
denoised sinograms (bottom)
Fig. 4. Projections with signal-to-noise ratio 0.5 (top), noisy sinograms (middle) and
denoised sinograms (bottom)
1258 T. Mielikäinen and J. Ravantti
Fig. 5. Projections with signal-to-noise ratio 0.3 (top), noisy sinograms (middle) and
denoised sinograms (bottom)
closer to the maximum correlation (i.e., correlation 1) for all signal-to-noise ratios
except the signal-to-noise ratio 0.3.
Overall, the results are very promising, especially as the implementation used
in the experiments is a straightforward implementation of Algorithm 1; for ex-
ample, no additional filtering nor more sophisticated estimation of sinogram row
similarities were used.
5 Conclusions
In this paper, we proposed a novel denoising method for cryo-electron microscopy
images that, unlike the previously known approaches, does not assume anything
about imaging directions of the images.
The described approach is based on denoising the sinograms of the cryo-
electron microscopy images and thus it is directly applicable within several
orientation search methods that determine the orientations using the pairwise
similarities between sinogram rows [9, 10, 13, 14, 15, 16, 17]. We showed experi-
mentally that even a straightforward implementation of the denoising approach
is able to reduce noise even when the signal-to-noise ratios are very low.
Although the denoising method seems very promising, there is still plenty
of room for improvements. The effectiveness of the method relies on reasonably
robust common line detection which could clearly be improved. For example, as
the common lines fix the relative orientations of the cryo-electron microscopy
images, these constraints could be used to expose false common lines. Further-
more, the possible information about symmetry could be used to improve the
signal-to-noise ratio. As future work we plan to study the improvements sug-
gested above and other heuristics to further facilitate the effectiveness of the
sinogram denoising approach proposed in this paper. Also, more sophisticated
methods to evaluate the success of the denoising shall be investigated. The qual-
ity of the reconstruction of the density map depends also on the reconstruction
method. Thus, the suitability of different reconstruction algorithms to be used
in conjunction with the sinogram denoising is also of our interest.
Acknowledgements
We wish to thank Dennis Bamford, Teemu Kivioja and Esko Ukkonen for helpful
discussions on sinograms and cryo-electron microscopy.
References
1. Baker, T.S., Olson, N.H., Fuller, S.D.: Adding the third dimension to virus life cy-
cles: Three-dimensional reconstruction of icosahedral. Microbiology and Molecular
Biology Reviews 63 (1999) 862–922
1260 T. Mielikäinen and J. Ravantti
19. Brady, M.L.: A fast discrete approximation algorithm for the Radon transform.
SIAM Journal on Computing 27 (1998) 107–119
20. Brandt, A., Dym, J.: Fast calculation of multiple line integrals. SIAM Journal on
Computing 20 (1999) 1417–1429
21. Lanzavecchia, S., Tosoni, L., Bellon, P.L.: Fast sinogram computation and the
sinogram-based alignment of images. Cabios 12 (1996) 531–537
Study of a Cluster-Based Parallel System Through
Analytical Modeling and Simulation
1 Introduction
Nowadays, due to a great demand for parallel processing systems in many high
performance applications, there is a subtle need for tools and techniques to properly
evaluate and analyze the performance of these systems. Such a performance study
may be used to: select the best architecture platform for an application domain,
predict the performance of an application on a large scale configuration of an existing
architecture, select the best algorithm for solving the problem on a given hardware
platform and identify application and architectural bottlenecks in a parallel system to
suggest application restructuring and architectural enhancements [1].
In this paper we intend to propose a model to evaluate a parallel processing system
based on commodity clustering. Each node in this system is modeled with a Queuing
Network Model (QNM). The model proposed here is scalable and can be used in any
similar system. We estimate parameters of this model using data extracted from
benchmark behaviors on a real parallel system. In other words, measurement
technique is used for obtaining the model parameters. This model is solved
analytically using QNAT [2]. We also developed a software model for our simulation
studies which is performed with OMNeT++ [3]. The results obtained through these
studies are used to validate the model.
There are few prior researches and papers on analytical modeling of cluster
computing systems [4], [5]. In [4], a distributed shared memory system is considered
which is different from our message passing cluster system. In [5] analytic modeling
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 1262 – 1271, 2005.
© Springer-Verlag Berlin Heidelberg 2005
Study of a Cluster-Based Parallel System Through Analytical Modeling and Simulation 1263
2 System Model
In this part, we introduce a model that has been designed to evaluate the Beowulf
cluster systems. This model is a general class of cluster systems which can represent
various configurations. For instance, we choose the Hypercube topology in which
there exists 2d nodes where d is the dimension of cube and each node has d-
connection to the adjacent nodes. Since there is a network switch to connect the
dispatcher to all nodes, therefore each node has a dedicated network interface for
connection to the switch. The network switch is only used for the dispatch operations.
In the following sections, we introduce the system under study and present the model
of a node in the system in detail as well.
The system used in this study, is called AkuCluster. This is a Beowulf-class [6]
system that is made in Amirkabir University of Technology for academic studies.
This system has 32 Pentium III Processing Elements with Red Hat Linux operating
system and Fast Ethernet communication network in a flexible interconnection
network. Flexible topology gives the capability to choose the best topology for
various applications. By changing the topology, proper routing tables will
automatically be assigned to the nodes. Although, the routing tables are static but
routing algorithm is designed to balance the network load.
There are two phase for executing a parallel program on this system. First phase,
the Dispatch Phase, each jobs distribute to the each node. Then, the Processing Phase
will be started, and nodes process the jobs and communicate to each other up to end
of execution. That is, the Dispatcher node performs at dispatch phase and don’t has
any role in the processing phase. After that execution complete the program results
gather in the dispatcher node to represent to user. It’s obvious we don’t have a
master/slave environment for parallel processing. There is cluster management
software which can be use at two execution phases. This machine provides the
opportunity to test all of our ideas.
Our model is designed on the basis of Queuing Network Model. Fig. 1 depicts a
primitive structure of our model for d=2 which is a Multi-Chain Open Queuing
1264 B. Javadi, S. Khorsandi, and M.K. Akbari
Network with two classes of customers. One class is for jobs (class number one) and
another class is for data (class number two). As we know the dispatcher node
distributes workload to all nodes and collects the results. So, in this model the
dispatcher generates jobs and dispatches to each node. These jobs enter the Network
Interface (NI) queue and then CPU queue for the processing. Due to probable data
dependency of parallel jobs during processing, they may need to communicate with
each other. Therefore, the process which is exited from CPU queue has a probability
to be sent to other nodes or to the dispatcher when is a completed job. P is the
probability when it’s sent to other nodes and 1-P when goes back to the dispatcher. In
this case, the model will have a loop for the chain of class number one (Fig. 1). In the
each iteration of the loop, a part of job proceeds and communicates with other nodes
through NI queue. When class number one processes reach the output the NI queues
(queues 5 and 6) they get duplicated, one copy goes toward feedback path to CPU
queue and another proceeds to neighbor nodes.
Chain 1 Loop
λ1
1 5
μi P/2
4 μo
From μc
Nodes (λ 2) 2 6
μi P/2 μo
sink
3 7
From μi 1-P μo
Dispatcher (Λ)
NI Chain 1
CPU Chain 2
In other words, processes of class number one (jobs) after getting service from
CPU queue are sent to a neighbor node with data format and P probability. Also, there
is one additional path to CPU queue (feedback path), for continuing the process of
jobs along with data which has come from neighbor nodes. It has been shown that in
the real system, average input workload is nearly same as output workload and our
model considers this equality. In the mean time, the processes of class number two
(data) are consumed in the CPU queue (sink point).
In our model, we didn’t employ any disk systems. Because, disks are originally
designed for initial/temporary data storage, in addition applying disk systems for
virtual memories diminishes the system performance dramatically. In the model, the
dispatcher node is simply modeled as a generator and sinker. It generates jobs and
sinks completed jobs. The network switch model is a delayed bi-directional buffer,
which redirects received packets to their destinations.
To have estimations for the parameters in the model, we must estimate service rate for
NI queues, CPU queue and routing probability P. For this, we applied measurement
techniques on a real system using a benchmark suite included NAS Parallel
Study of a Cluster-Based Parallel System Through Analytical Modeling and Simulation 1265
Benchmarks (NPB) [7] and High Performance Linpack (HPL) [8] benchmarks. NPB
benchmarks are compiled for A and B classes and HPL is compiled for problem size
of equal to 5k and 10k, so the benchmark suite has 16 programs. We ran these
benchmarks on our real system (AkuCluster) and monitored status of the programs on
one node and the dispatcher node. Measurement tool, which was used for monitoring
of network traffic and execution time was ProcMeter-3.0 [9]. This tool can be run as
background process and log the status of a node in specific intervals
Fig. 2 shows input/output network traffic, as average byte was transmitted/received
on instance node of the real system. This figure shows that average network input
and output traffic to/from a node in this system is nearly equal. This fact confirms our
model assumption.
Network Traffic
4000
3500
3000
Bytes Tx/Rx
2500
Byte Tx (KB)
2000
Byte Rx (KB)
1500
1000
500
0 ge
ep 16
0k
is k
lu 6
m .16
6
cg 6
cg 6
ep 6
hp 6
lu 6
m 16
sp 6
sp 6
Av .16
is 6
l.5
.1
.1
1
.1
.1
.1
.1
.1
.1
.1
ra
l.1
.
A.
B.
.A
.A
.B
.A
.B
.A
.B
.B
.B
.A
.B
.A
hp
ge
g.
g.
bt
bt
Benchmarks
To compute the service time of NI queue, the average packet size of each NI has to
be divided by the line bit rate. Since the system uses Fast Ethernet standard, so the
typical bit rate of line should be 100Mbps. To have an accurate result, we measured
real bit rate of line with ping-pong test and variable packet size. As a result the
maximum bit rate was measured for 88Mbps with packet size above 2Mbytes. To
measure the packet size distribution, the IPTraf-2.7.0 network monitoring tool [10]
was used and its measurements show that the average size of sending and receiving
packets of all benchmarks is about 733.1848396 bytes. Since average input network
traffic is nearly equal to output network traffic, therefore the average bit rate of
sending/receiving packets should be half of the total line bit rate. Thus,
733.1848396 Bytes
Average Packet Tx/Rx Time = 1 = 0.000133306 sec ,
88× Mbps
2
The CPU queue service time is the inter-arrival time between two consecutive
packet transmissions. Average packet transmission rate for each benchmark can be
obtained from ProcMeter output log file which is depicted in Fig. 3. Inter-arrival time
is reverse of this rate, but this computed values don’t give the exact value of CPU
service time, because the whole CPU time isn’t dedicated for execution of
benchmarks. Thus, the exact CPU queue service time is average of numbers which is
computed as follows:
1266 B. Javadi, S. Khorsandi, and M.K. Akbari
Now, all the system parameters are ready and we can analyze the model.
A v e ra g e P a c k e t T ra n s m is s io n R a te (/s )
400 0
350 0
300 0
250 0
Packets
200 0
150 0
100 0
500
0
ge
6
0k
6
6
16
16
16
6
16
l.5
.1
.1
.1
.1
.1
.1
.1
.1
.1
.1
ra
l. 1
B.
A.
B.
A.
.A
.B
.A
.B
.A
.B
.A
.B
.A
.B
hp
ge
hp
is.
g.
g.
is.
ep
lu
lu
cg
cg
ep
sp
sp
bt
bt
Av
m
B e n ch m a r ks
In the previous sections, we presented the node model and its parameter estimation.
We will now give an analytical solution for this model. Based on Jackson queuing
network theory [11], we apply a product form solution where each node is analyzed in
isolation. We assume the following assumptions in our analysis:
1. All queues in the model are M/M/1.
2. The service time of Network Interface input, output and CPU queues have
exponential distribution with parameters μ i, μ o and μ c respectively.
3. Input rate of chain one and two are λ1 and λ2 respectively. Also, generation rate
of the dispatcher is Λ.
In Fig. 1 you can see the model with mentioned assumptions. So we can obtain
following equations:
1 = 2
(1)
1 = 1− P
Study of a Cluster-Based Parallel System Through Analytical Modeling and Simulation 1267
To analysis this model, the utilization of CPU queue ( ) was chosen as a metric.
Now, the utilization equation can be given as follows:
= 2 . μ1 + ( + 1 ). μ1 (2)
c c
and with equations (1), we can obtain:
ª º
= . 1 + «(1- P). 1 + 1 »
2 μ 1 μc μc ¼
c ¬ (3)
= .(3. 1 − P. 1 )
1 μc μc
However, after assigning a value for utilization of CPU queue, λ1, λ2 and Λ can be
calculated from equations (3) and (1) respectively. In this regard, Table 1 depicts the
above rates based on three given values of ȡ with the assumption of μc=0.03511 and
P=0.894. Then the QNAT (Queuing Network Analysis Tool) [2] was used to analyze
our model using the values of Table 1 and also obtain the metrics of each queue.
ρ λ1=λ2 Λ
0.3 4.1 0.43
0.6 8.11 0.89
0.9 12.17 1.29
The first output metric is the average delay in each chain of the model. These
delays can be obtained as follows:
4 Numerical Results
To verify the system model, we compared simulation and analytical results. For this,
we did run two different simulations. In the first simulation runs, we assume that all
queues in the system have inter-arrival times with exponential distribution, and the
probability distribution of the service time, also exponential with mean 1/μ second. In
the mean time, to have an accurate simulation, we need the network switch delay.
Fineberg et al. in [12] have measured the delay of Fast Ethernet switches about 10μs.
Now, all the model parameters can be listed as in Table 3. Simulations are done for
each value of Λ and this parameter is obtained from analytical modeling. In other
words, the dispatcher node generates a specific workload for the system, with this the
simulation continues until no job remains unprocessed. Finally, the completed
processes are captured by sink in the dispatcher node.
We run each simulation for 20,000 jobs which are generated by dispatcher. Our
experiment has shown that no considerable changes in the output values would be
observed if the number of jobs is increased. These jobs have exponential distribution
with parameter Λ. Output results from this simulation for three values of dispatcher
generation rate are shown in Table 4. The outcome of comparison of analytical
modeling results (Table 2) with simulation results proved the validation of our model.
The difference between average delay of chains in the simulation runs and analytical
modeling results is due to the switch delay.
Study of a Cluster-Based Parallel System Through Analytical Modeling and Simulation 1269
That is, the distribution of X is G(x). The G(x) is a mapping function which is
resulted from measured data of section 2.3, and is used to provide the distribution
functions for NI and CPU queues distinctively. We applied these functions, and rerun
the first simulation to provide the results which are shown in Table 5. By comparing
the results of two simulations, we come to the point that average delay of two chains
in the second run has been increased and in the same time the CPU queue utilization
is increased too, which is completely rational. It should be noted that the utilization
rates of the second simulation runs are closer to the analytical modeling results.
To have a concrete proof for the validity of our model, we extend our experiment
by defining one more parameter, called CPU queue length Probability Distribution
Function (PDF). In this regard, we calculated CPU queue length PDF for three values
of utilization (ρ). For each value of the utilization, we provided PDFs from two
previous simulations and the analytical formula in [11]. It has been shown that the
queue length PDF of a simple M/M/1 queue is geometric with parameter ρ, and can
be written as follows:
P (n) = ρn. (1- ρ) (6)
The values of ρ were obtained from Table 2 of analytical solution. The results of
this experience are shown in the Fig. 4 for the CPU queue utilizations of 0.85. As it
can be seen, these figures have similar geometric shapes and this is a strong proof for
the validity of our model. To justify the extra delay times of each chain in the
1270 B. Javadi, S. Khorsandi, and M.K. Akbari
simulation runs, one has to consider that the probability of CPU queue length is more
than correspondence probability in analytical model curve, especially for low quantity
of queue lengths.
0.3
0.25
0.2
PDF Exponential
P(n)
0.05
0
0
3
7
11
15
19
23
27
31
35
39
n
5 Conclusions
In this paper we developed a new model based on the Queuing Networks to evaluate
the cluster-based parallel systems. We run a benchmark suite on a real system to
measure the required data. These data were used for estimation of model parameters.
We used QNAT to get the analytical solution of the model and then OMNet++ for
simulation. This gives a good flexibility for any modification and future
expandability. Verification of the model is done by comparing analytical results with
two different simulation runs. A close match can be observed between analysis and
simulations. Therefore, we can use the same approach for other parallel
configurations and performance studies.
References
1. Lei Hu and Ian Gorton. Performance Evaluation for Parallel Systems: A Survey, in
Technical Report No. UNSW-CSE-TR-9707, Department of Computer Systems, School of
Computer Science and engineering, University of NSW, Oct. 1997.
2. D. Manjunath, D.M. Bhaskar, Hema Tahilrmani, Sanjay K.Bose, M.N. Umesh. QNAT: A
Graphical Tool for the Analysis of Queuing Networks, IEEE TENCON'98 International
Conference, New Delhi, India, Dec. 1998.
3. Nicky van Foreest. Simulation Queuing Networks with OMNet++, in Tutorial of
OMNnet++ Simulator, Department of Telecommunications, Budapest University of
Technology and Economics, Apr. 2002.
4. Xing Du, Xiaodong Zhang, Zhichun Zhu. Memory Hierarchy Consideration for Cost-
Effective Cluster Computing, IEEE Transaction on Computers, Vol.49, No. 9, Sep. 2000.
Study of a Cluster-Based Parallel System Through Analytical Modeling and Simulation 1271
J.H. Abawajy
1 Introduction
Grid computing [6] has emerged as a global platform for coordinated sharing
of services (i.e., compute, communication, storage, distributed data, resources,
applications, and processes). Recent trends in grid computing development is
moving towards a service-oriented architecture as exemplified by the Open Grid
Services Architecture (OGSA) [7]. Such platforms connect service providers and
consumers of services and data, while shielding them from details of the underly-
ing infrastructure. As a result, service-oriented grid computing is attracting in-
creasing attention from the grid computing research community. Although Grid
computing systems can potentially furnish enormous amounts of computational
and storage resources to solve large-scale problems, grid computing systems are
highly susceptible to a variety of failures including node failure, inter-connection
network failure, scheduling middleware failure, and application failure. Due to
these vulnerableness, achieving large-scale computing in a seamless manner on
grid computing systems introduces not only the problem of efficient utilization
and satisfactory response time but also the problem of fault-tolerance.
There are numerous grid scheduling policies (e.g., [15]). Unfortunately, fault-
tolerance have not been factored into the design and development of most exist-
ing scheduling strategies. Research coverage of fault tolerant scheduling is lim-
ited as the primary goal for nearly all scheduling algorithms developed so far has
been high performance by exploiting as much parallelism as possible. One of the
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 1272–1281, 2005.
c Springer-Verlag Berlin Heidelberg 2005
Robust Parallel Job Scheduling Infrastructure 1273
reasons for this is that achieving integrated scheduling and fault-tolerance goal
is a difficult proposition as the job scheduling and fault-tolerance are difficult
problems to solve in their own right. However, with the momentum gaining for
the service-oriented grid computing systems, the issue of deploying support for
integrated scheduling and fault-tolerant approaches becomes paramount impor-
tance [2], [19]. Moreover, as grids are increasingly used for applications requiring
high levels of performance and reliability, the ability to tolerate failures while
effectively exploiting the variably sized pools of grid computing resources in an
scalable and transparent manner must be an integral part of grid computing
systems [9],[21], [8]. To this end, we propose a fault-tolerant dynamic scheduling
policy that loosely couples dynamic job scheduling with job replication scheme
such that jobs are efficiently and reliably executed. The novelty of the proposed
algorithm is that it uses passive replication approach under high system load and
active replication approach under low system loads. The switch between these
two replication methods is also done dynamically and transparently.
The rest of the paper is organized as follows. In Section 2, a formal definition of
the fault-tolerant scheduling problem is given. This section also establishes the fact
that, to a large extent, the problem considered in this paper has not been fully ad-
dressed in the literature. Section 3 presents the proposed fault-tolerant scheduling
policy. Finally, the conclusion and future directions are presented in Section 4.
Given: A set of n jobs, J={J1 , ...,Jn }, where each job, Ji , arrives in a stochastic
manner into a system composed of m independent clusters, S= {C1 ,...,Cm }.
1. Each job, Ji , can be decomposed into t tasks, T={T1 ,...,Tt }. Each task Ti executes
sequential code and is fully preemptable.
2. Each cluster, Cj , is composed of P shareable (i.e., community-based) processors.
Each processor may fail with probability f, 0 ≤ f ≤1, and be repaired indepen-
dently.
fraction. We also assume that node failures are independent from each other [21].
In addition, we assume that every cluster scheduler in the system is reachable
from any other cluster scheduler unless there is a failure in the network or the
node housing the cluster scheduler. A scheme to deal with node, scheduler and
link failures is discussed in [3].
[1] augmented with a scheme that automatically replicates jobs and tasks over
several sites and processors, keep track of the number of replicas, instantiate
them on-demand and delete the replicas when the primary copies of the jobs and
tasks successfully complete execution. In DFTS, the core system architecture is
designed around L-levels of virtual hierarchy, which we refer to as a cluster tree,
as shown in Figure 2. At the top of the cluster tree, there is a system scheduler
while at the leaf level there is a local scheduler (LS) for each node. In between
the system scheduler and the local schedulers, there exists a hierarchy of cluster
schedulers (CS).
User Layer
Resource Layer SS
CS CS CS
CS CS CS CS CS CS CS CS CS
LS LS LS LS LS LS LS LS LS LS LS LS
P1 P2 P3 P4 P1 P2 P3 P4 P1 P2 P3 P4
Fig. 2. An example of cluster tree (SS: System scheduler; CS: Cluster scheduler; LS:
Local scheduler; and Pi : workstation i)
We refer to all processors reachable from a given node in the cluster tree as its
partition-reach. We associate a parameter called base load level with each node in
the cluster tree. For non-leaf nodes, the base load level is set to zero. For all the
leaf-level nodes, the base load level is the same as the multiprogramming level
(MPL) of the node. The MPL parameter of a node controls the maximum number
of tasks that can concurrently execute at any given time. Since the processors
may have different processing speed, the MPL of processor Pi is determined as
follows:
E F
speed(Pi ) × Base MPL
M P L(Pi ) = (1)
speed(Pslow )
where speed(Pslow ) is the speed of the slowest workstation in the system.
Robust Parallel Job Scheduling Infrastructure 1277
The DFTS policy has two main components namely; Fault Management com-
ponent and Job and Task Scheduling component. Without lose of generality, we
assume that all incoming jobs are submitted to the system scheduler where they
are placed in the job wait queue until a placement decision is made. As in [20],
the user specifies if fault-tolerance is required and the number of desired replicas
t the time of job submission. We now describe these two components in detail.
Job Replication
The replica creation and placement ensures that a job and its constituent task
are stored in a number of locations in the cluster tree. Jobs are replicated over
clusters while tasks are replicated over processors. Specifically, When a job with
fault-tolerance requirement arrives into the system, DFTS undertakes the fol-
lowing steps:
Replica Management
The DFTS monitors applications at job-level (between non-leaf nodes and their
parents) and at task-level (between leaf nodes and their parents). A monitoring
message exchanged between a parent and a leaf-level node is called a report while
that between non-leaf nodes is called a summary. A report message contains sta-
tus information of a particular task running on a particular node and sent every
REPORT-INTERVAL time units. In contrast, the summary message contains a
collection of many reports and sent every SUMMARY-INTERVAL time periods
such that REPORT-INTERVAL < SUMMARY-INTERVAL.
When a processor completes execution of a task, the report message contains
a FINISH message. In this case, the receiving scheduler deletes the corresponding
replica and informs the backup scheduler to do the same. When the last replica
of a given job is deleted, the job is declared as successfully completed. In this
case, the cluster scheduler immediately sends a summary message that contains
the COMPLETED message to the parent scheduler, which deletes the copy of
1278 J.H. Abawajy
the job and forward the same message to its parent. This process continues
recursively until all replicas of the job are deleted.
Replica Management
After each assignment, the children periodically inform their parents the health
of the computations as discussed above. If the parent does not receive any such
message from a particular child in a given amount of time, then the parent
suspects that the child has failed. In this case, it notes this fact in the AST and
sends a request for report message to the child. If a reply from the child has
not been received within a specific time frame, the child is declared dead. The
replica of a job is then scheduled on a helath node.
References
1. Jemal H. Abawajy and Sivarama P. Dandamudi. Parallel job scheduling on multi-
cluster computing systems. In Proceedings of IEEE International Conference on
Cluster Computing (CLUSTER’03), pages 11–21, 2003.
1280 J.H. Abawajy
19. Namyoon W., Soonho C., Hyungsoo J., and Park Y. & Park H. Jungwhan M., Heon
Y. Y. Mpich-gf: Providing fault tolerance on grid environments. In Proceedings
of 3rd IEEE/ACM International Symposium on Cluster Computing and the Grid,
2003.
20. J. B. Weissman. Fault-tolerant wide area parallel computation. In Proceedings of
IDDPS’2000 Workshops, pages 1214–1225, 2000.
21. Jon B. Weissman. Fault tolerant computing on the grid: What are my options? In
HPDC ’99: Proceedings of the The Eighth IEEE International Symposium on High
Performance Distributed Computing, page 26. IEEE Computer Society, 1999.
22. Ming Q. Xu. Effective metacomputing using LSF multicluster. In CCGRID ’01:
Proceedings of the 1st International Symposium on Cluster Computing and the
Grid, pages 100 – 106. IEEE Computer Society, 2001.
SLA Management in a Service Oriented
Architecture
School of Computing,
University of Leeds,
Leeds LS2 9JT, UK
1 Introduction
The Grid [1] offers scientists and engineering communities high performance com-
putational resources in a seamless virtual organisation. In a Grid environment,
users and resource providers often belonging to multiple management domains
are brought together. Users must be given some form of commitments and assur-
ances on top of the allocated resources (this is sometimes referred to as Quality
of Service), and it is the resources provider responsability to deal with erroneous
conditions, fail over policies etc. A key goal of Grid computing is to deliver the
commitments and assurances on top of the allocated resources which include,
for example, availability of resources (compute resources, storage etc), security
and network performance (latency, throughput) [7].
Commitments and assurances are implemented through the use of Service
Level Agreements (SLA), which determine the contract between the user and
the Grid Service provider. A SLA is defined as an explicit statement of expec-
tations and obligations that exist in a business relationship between the user
and the Grid Service provider. A formalised representation of commitments in
the form of SLA documents is required, so that information collection and SLA
evaluation may be automated. At any given point in time many SLAs may exist,
and each SLA in turn may have a number of objectives to be fulfilled. In the con-
text of a Grid application consolidation of management information is required
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 1282–1291, 2005.
c Springer-Verlag Berlin Heidelberg 2005
SLA Management in a Service Oriented Architecture 1283
when resources are spread across geographically distributed domains. SLAs may
be distributed, and their validation depends on local measurements. With this
is mind, the paper presents a SLA management architecture for automated SLA
negotiation, monitoring and policing mechanisms. The current Open Grid Ser-
vices Architecture (OGSA) [6] specification is moving towards a Web service
derived technology, following the convergence of standards from the Grid and
Web Services communities, most notably through the Web Services Resource
Framework [3]. SLA management is defined as a high level service supporting
SLAs within the Grid. Thus, a Grid user accessing Grid services on demand
and with quality of service agreements enabling commitments to be fulfilled is
a primary requirement. The SLA Manager negotiates a SLA for the rights to
execute a Grid service, management of SLA involves monitoring achieved using
performance measurement data obtained from a set of Grid monitoring tools.
Policing is performed using violation data obtained through automated monitor-
ing of the SLA against real-time performance measurement data. SLA policing
mechanisms must enforce changes to the execution to meet SLA guarantees.
The aims of this paper are: 1) to present a Grid SLA management architec-
ture and show how a SLA can be specified in a service oriented architecture; 2)
taking a SLA for a compute service as a motivation, discuss how the interac-
tion between the SLA manager and a resource broker is performed in order to
guarantee the allocation of compute resources, and 3) to present the design and
implementation of a resource broker which provides the means to negotiate and
acquire resources that meet the user’s requirements through SLAs. The resource
broker incorporates a three-phase commit protocol that provides services to en-
sure decisions are made with up-to-date information, resources are differentiated
and the nominated resources are secured before jobs are submitted.
The structure of the paper is as follows: in section 2, the Grid SLA man-
agement architecture to formalise QoS requirements between users and resource
providers is presented. Section 3 describes the interaction between the SLA man-
ager and different resource brokers. Section 4 provides an overview of the archi-
tecture and design of a resource broker within the Service Negotiation and Acqui-
sition Protocol (SNAP) framework. In section 5 a SLA specification is presented
using a compute service as an example. Section 6 presents some experiments
involving the performance evaluation of the resource broker, and discusses the
experimental results obtained on a Grid testbed. Related work is described in
section 7, followed by a conclusion and discussion on future work.
Portal
Grid Middleware
Grid Service
Provider
Grid Service
Task
user can interact with the underlying Grid service. Interaction between the SLA
interface and the Grid execution interface is maintained throughout the agree-
ment life cycle to enforce the SLA guarantees. Service level negotiation takes
place through the SLA Manager Factory interface using SNAP [4], which pro-
vides negotiation and acquisition of resources. The requirements will be formally
captured in a number of Service Level Objectives (SLO). The type of reservations
made can be resource based or service based and will be executed through the
Reservation Engine. Once an agreement has been reached the SLA is formalised
by a SLA Manager Grid service instance. This Grid service has a number of
service data elements which hold metadata relating to the negotiated SLA. The
SLA Manager Grid service instance has a service interface through which the
SLA is enforced. All the functionality contained within the SLA manager is ac-
cessed through the service interface. Once an agreement is signed it is stored in
the SLA repository where it can be called whenever validation is needed. The
SLA Customiser has the ability to make changes to the signed SLA after the
agreement has been signed. This could include changes to the state of the SLA to
record violations. Based on the service requirements of the signed SLA, the reser-
vation engine will attempt to acquire the resources needed to guarantee them.
Its responsibility is to make reservations and control the reservation status. Once
a SLA has been agreed and reservation of the selected resources has occurred,
the managed Grid service can begin execution. The SLA Manager contains an
SLA management engine which is tasked with automated monitoring of the met-
rics needed to enforce the guarantees in the Service Level Objectives. It uses an
external Grid Monitoring Service [17] to select the Grid monitoring tools which
SLA Management in a Service Oriented Architecture 1285
will be needed to monitor the SLA. Guarantees that can be offered fall into
three categories: performance, usage, and reliability. For performance guaran-
tees considered in this work, the service requirements are specified in the SLOs.
The Service Level Indicators (SLI) specify the level at which the SLOs have to
be maintained. Guaranteeing service performance is important in maintaining
perceived QoS during Grid service execution. SLI specification vary, and can be
expressed as a min/max threshold or as a distribution. The SLA policing engine
will adapt the execution of the managed Grid service, either in response to a vio-
lation or to prevent violation from occurring. The method used to adapt the Grid
service execution is set down in the SLA and based on the policies of local re-
sources. Adaptation has the potential to significantly improve the performance of
applications bound with SLAs. An adaptive application can change its behaviour
depending on available resources, optimising itself to its dynamic environment.
Matchmaker
Knowledge
Bank
BSLA
Grid Middleware
Grid Resources R R R R
the user’s requirements as specified in the SLA (e.g. number of CPUs, operat-
ing system) and job description and contacts resources that may support these
requirements to gather information on their current state (e.g. current load). A
decision is made as to which resource(s) will be used to run the job and this
is followed by a negotiation with these resources. This negotiation is based on
the framework provided by SNAP [4], whereby guarantees are obtained that the
user’s requirements will be fulfilled by the use of an SLA. Three types of SLA
are used within the SNAP framework: 1) Task Service Level Agreement (TSLA)
in which a clear objective specification of the task and its resource requirements
is given; 2) Resource Service Level Agreement (RSLA), which involves the ne-
gotiation for the right to consume a resource. An RSLA characterises a resource
in terms of its capabilities, without necessarily specifying what the resource will
be used for, and 3) Binding Service Level Agreement (BSLA) associates the task
with the resources.
The broker’s architecture is shown in Figure 2. A Matchmaker uses the parsed
user requirements to contact a Knowledge Bank (KB). The latter is a repository
that stores static information on all resources. The broker can access this in-
formation on behalf of the user for each resource he/she is entitled to use. The
information stored in the KB as attributes include the number of CPUs, the
operating system, memory, storage capacity and past behaviour performance of
a resource. The KB stores a history profile of past performance of resources, to
enable the broker to differentiate and categorise resources into different levels.
An analogy to the KB is a telephone directory where information stored directs
to a particular service that caters for the users’ needs. Further it could also
be used to store economic accounting details. Details on the Decision Maker,
the Resource Gatherer, the Co-ordinator and the Dispatcher are found in [8].
SLA Management in a Service Oriented Architecture 1287
Once the resources are secured the final procedure (binding) is executed by the
Dispatcher by submitting the task and binding it to the resources.
Two versions of the broker are developed: 1) Broker with reservation: this bro-
ker adopts a mechanism that secures resources for utilisation through the means
of immediate reservation, and 2) Three-phase Commit broker: the motivation
here is that the Grid is dynamic and not centralised with a signal administrator
such as some traditional systems. Thus at a single point in time there might be
several users competing for the same resources without each others knowledge
of their existence or interest. Because the resource status is constantly chang-
ing, as a consequence the process of contacting the information provider could
lead into an infinite oscillation between the broker and the information provider
without a successful job submission. This is why a three-phase commit protocol
is adopted that acknowledges this fact. As a result it sets up probes during the
information gathering process to ensure rapid update of any status change of a
resource. Details on the three-phase commit protocol are found in [8].
Globus MDS (Monitoring and Directory Service) [5] is used in the broker’s
architecture to gather dynamic information. However the information service
provision offered by the default Globus installation has been extended. Specif-
ically, the MDS is deriving information from the local resource manager, Sun
Grid Engine (SGE) [16].
Component Observation
Purpose Run a Grid job with guarantees to ensure user’s requirements are met
Parties The user, the resource broker, the compute resources
Scope Compute service
Service Level Ensure availability of a certain number of resources that satisfy
Objective user’s requirements for the duration of the job execution
SLO AttributesCPU count, CPU type, CPU speed, Operating system and version
SLIs For each SLO attribute, its value is a service level indicator
AdministrationThe SLA’s objectives are met through resource brokering and
adaptation (Section 4)
1288 J. Padgett, M. Haji, and K. Djemame
SLA Manager
SLA
JAXB
Task Requirements <name> Grid ... Reservation
SLO </consumer> Resource
Client </parties> Broker x
........ ....
SLA Signing ........
....
</sla> Reservation
Confirmation
JAVA XML
Fig. 3. Compute Service SLA Specification and Interaction with Resource Broker
be used are (1) a parameter distribution where the value of the SLI must be in
a range or (2) a list where the parameter must equal a definite value.
The SLA document is XML based, whereas the SLA is represented internally
by a content tree made up of Java objects. The SLA Manager supports a number
of service guarantees through differentiated classes of service; best effort, best
effort with adaptation, reservation, reservation with adaptation.
6 Experimental Results
The experiments’s objective is a comparison of the performance of a SNAP bro-
ker that incorporates the three-phase commit protocol and one that only uses
reservation as a means to secure the nominated resources once an SLA has been
specified. This is in terms of the time interval between submission (to the bro-
ker) of user requirements and the job beginning execution. The experiments are
performed on a Grid test-bed consisting of 10 machines running Linux 2.4 with
kernel 2.4.20-18.8. Globus 2.4 is installed on all machines and a Grid Resource
Information Service (GRIS) is associated with each of them. Communication
occurs with a fast (100 Mbps) Local Area Network. The SLO is to ensure the
availability of 3 resources prior to job execution. Each of the two brokers is con-
sidered in turn. Each is given access to only 3 of the resources and on each of
these, another job is running for a fixed duration. The experiments performed
are based on this scenario. In the experiment, the additional job that is submit-
ted so that the resources are unavailable has a fixed duration of 30 seconds. This
job is submitted immediately before the broker is executed. The information
provider response time (i.e. the GRIS response time) is then varied between 10
and 90 seconds to reflect real Grid systems. On the Grid testbed the information
provider response time is fairly stable at 8 seconds for the GRIS on each machine
but the response time was varied by adding a synthetic delay into the code. The
SLA Management in a Service Oriented Architecture 1289
time taken between the broker beginning execution and the broker becoming
aware that the resources are free is then recorded, in addition to the time taken
before the job begins execution. Further the number of contacts made to the
information provided is also recorded.
Time broker Knows Resources are Free Job Execution Start Time
200 350
140 250
120
200
100
80 150
60
100
40
20 50
10 20 30 40 50 60 70 80 90 10 20 30 40 50 60 70 80 90
MDS Response Time (sec) MDS Response Time (sec)
Fig. 4. (1) Time taken for broker to determine resources are free, as a function of MDS
response time; (2) Time taken for job to begin execution
The results of the experiments are shown in Figure 4: 1) time taken between
the broker beginning execution and the broker becoming aware that the resources
are free, as a function of the information provider response time, and 2) time
taken between the broker beginning execution and the jobbeginning execution.
Clearly, the three-phase commit SNAP broker becomes aware that the status of
the resources has changed, much faster than the broker with reservation only,
as a consequence of the use of probes. Consequently, the job begins execution
sooner when the three-phase commit SNAP broker is used. Usually, the longer
the response time, the longer it takes before either broker is aware that the
resources are free. For the three-phase commit SNAP broker, there is only one
contact with the information provider. Hence increasing the response time has
little effect until it exceeds the 30 second period for which the resources are
taken. For the broker with reservation, the effect is apparent even for faster
response times. However, note that the time taken before this broker becomes
aware of the change in resource status is shorter when the response time is 40
seconds than when the response time is 30 seconds. This is due to the fact
that when the response time is 30 seconds, the broker with reservation needs to
contact the information provider four times before it is aware of the change in
status, while if the response time is 40 seconds, only three contacts are required.
These experiments demonstrate that the three-phase commit protocol ensures
that the broker has access to fast updates on the status of the resources enabling
a performance enhancement.
1290 J. Padgett, M. Haji, and K. Djemame
7 Related Work
There have been a number of attempts at defining an SLA management archi-
tecture for both Web and Grid services. Architectures from Hewlett-Packard
Laboratories [12] and IBM T.J. Watson Research Center [10] concentrate on
service level agreements within commercial Grids. The service level agreement
language used is that presented by Ludwig et al in [11]. The Global Grid Forum
have defined a draft of OGSI-Agreement [2] which is an agreement-based Grid
service management specification designed to support Grid service management
during the lifetime of a service instance. Two other important works are related
to automated SLA monitoring for Web services [9] and analysis of service level
agreements for Web services [13].
Resource management and scheduling in the Grid is receiving increased at-
tention [14]. However, to the best of our knowledge, there has been no work on
the specific problems addressed here, namely implementation of SNAP-based
resource brokering and protocols for securing resources before job submission.
An overview of some current Grid scheduling efforts is found in [15]. Overall the
brokers found in the literature have not shown ways to secure resources before
job submission, which is essential for SLAs in the dynamic environment of the
Grid.
8 Conclusion
SLA management is important in formalising QoS implementation within Grid
services. In this paper, an Grid SLA management architecture is presented. Mak-
ing simplifying assumptions in the prototype developed, this work considers CPU
type resources, and the interaction between the SLA manager and a resource
broker that is designed to guarantee the resource allocation is discussed . Ex-
perimental results on a Grid testbed show that the resource broker is a viable
contender for use in future Grid implementations. Future work in SLA manage-
ment will involve monitoring and policing which are achieved using performance
measurement data obtained from a set of monitoring tools. Observed data needs
to be validated against commitments specified in SLAs. As the Grid integrates
heterogeneous resources with varying quality and availability, this places impor-
tance on its ability to monitor the state of these resources and adapt to changes
in their availability over time. Although this work within the field of SLA man-
agement targets CPU type resources, research is under way to exploit other types
of resources such as data storage and network bandwidth.
References
1. F. Berman, G.C. Cox, and A.J.G. Hey, editors. Grid Computing - Making the
Global Infrastructure a Reality. Wiley, 2003.
2. K. Czajkowski, A. Dan, J. Rofrano, S. Tuecke, and M. Xu. Agreement-based Grid
Service Management (OGSI-Agreement) Version 0. Global Grid Forum, Aug 2003.
SLA Management in a Service Oriented Architecture 1291
1 Introduction
Authentication has been an issue in communications security, as it is the mech-
anism that allows principals to identify each other involving some kind of oper-
ations prior to communication with each other. As we see, authentication is the
“access point” to the communication, so it is a potential target for an attacker.
This means the whole authentication process must be secured using protocols
and mechanisms that allow each principal to verify each other’s identity. Tradi-
tionally it has been said that authorization should rely on something the princi-
pal knows (such as a password or a pass phrase [10]), something the principal is
(such as biometric values [1]), and/or something the principal has (e.g. a smart
card [1]).
Port knocking [4] authorization mechanism relies on something the principal
knows. In this case, the password is not a character sequence but a port sequence:
The server we are willing to communicate keeps all of its network ports closed
and these ports must be “knocked” in the correct sequence in order for the server
to open the desired communication port. The procedure for “knocking” a port
consists of sending a packet to that port, so the server will notice a connection
attempt against a closed port and log it.
The main advantage of port knocking is that, as knocked ports are closed
during the authentication procedure, it should not be possible to identify whether
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 1292–1300, 2005.
c Springer-Verlag Berlin Heidelberg 2005
Attacks on Port Knocking Authentication Mechanism 1293
Figure 1 shows an example of the whole process where the client computes
the sequence to use a service (SSH in this example) based on its IP address (500,
850, 771,. . . , 1840). After that, the client starts making connections to those
ports, in order to generate entries in the server’s log. A process in the server is
parsing that log, and when it detects a valid sequence it computes the service port
1294 A. Izquierdo Manzanares et al.
(port 22 in this example) and the client’s address, and modifies the connection
policies in order to open the requested port for that client. Consequently, from
the client’s point of view, the ports it has to “knock” on can be calculated as:
needs to wait until the service port is open to have access to it without know-
ing the authentication sequence. An example can be seen in Table 1: Client
172.16.8.102 is the authorized user that authenticates using port knocking with
server 163.117.149.93 requesting the opening of port 80. We can see all the
knocks sent to the server (frames 1 to 24) and how after that the client is able
to connect to port 80 and proceeds with normal communication (frames 25 to
30). However, client 172.16.8.102 is using NAT, and another client in the same
Fig. 2. Sample NAT configuration, with two hosts A and B sharing the same network
address
network (172.16.8.100) can connect to the service opened by the authorized user
without performing the knock sequence (frames 31 to 35).
1
Even if we select a reduced range of port to watch instead of considering the whole
range of 65.535 ports as “knocking-available” we still need a large amount of them
to provide the system with a minimum security level.
Attacks on Port Knocking Authentication Mechanism 1297
Table 2. Status of the port knocking server as reported by vmstat during the proposed
DoS-Knocking attack, with time interval between measures being 5 seconds
would have to create a buffer for each one of the addresses, making this process
to consume high amounts of memory. In the Appendix is included the source
code to generate an attack consisting of sending packets with random fake source
addresses to random ports on the target.
Another two considerations about DoS attacks on port knocking are about
parameter encryption and the parser performance. [4] recommended parameter
encryption so that integrity and confidentiality can be achieved, and [9] proposed
a solution based on one-time-passwords to avoid replay attacks. However, when
using encryption the server must decrypt the contents of the authorization se-
quence for all the clients that try to authenticate using port knocking. This can
lead to high CPU loads, as shown in Table 2, where a Pentium-class computer
(166 MHz and 32 MB of RAM) could overload a Pentium III-class server (500
MHz and 192 MB of RAM). Rows in bold are the status when the attack (60.000
packets with different forged source address aimed at random ports) took place.
Last two bold rows of the table show status when the attack had finished, but
the server was still processing the fake knocks. Furthermore, we should consider
1298 A. Izquierdo Manzanares et al.
whether having a process parsing logs in real time is something our system can
handle, or maybe that will heavily decrease its performance.
In order to prevent this kind of attacks it could be necessary to use port
knocking just for the range of addresses that would use it and, if possible, to
have separate logs for those knocks that come from those addresses and those
that don’t, so we reduce the work of the parser. Additionally, we should consider
using a fast encryption algorithm that doesn’t require a lot of CPU cycles to
decrypt the contents of the port sequence, such as TEA [8].
5 Conclusions
The analysis of port knocking authentication method has revealed both some
design flaws and implementation problems that could provide access to unau-
thorized users and/or cause a DoS attack on the port knocking server. We have
described the NAT-Knocking attack and stated that the problem of access con-
trol based on network address when NAT is used cannot be solved as long as
network address is the only identifier used. Regarding this, port knocking does
not improve the security offered by other network-level devices and mechanisms,
such as firewalls.
We have also described the DoS-Knocking attack and we have proven that a
low-end computer is able to take a much more powerful server to the limits of its
computing capabilities. We have seen that encryption and the clients-tracking
mechanism tend to exhaust both memory and CPU, so it is possible that under
peaks of work legitimate users could perform a DoS attack without pretending to.
Finally, partly due to the implementation and partly due to the design, we
have shown how traffic analysis is possible for an attacker with enough data cap-
tured from the network, so she could have information about the authentication
procedure. This fact attacks directly the basis of port knocking: being an stealth
authentication scheme.
References
1. Anderson, R.: Security Engineering: A Guide to Building Dependable Distributed.
J. Wiley & Sons (2001)
2. Claerhout, B.: http://cs.ecs.baylor.edu/~donahoo/NIUNet/hacking/hijack/
3. Knowles, D., Perriot, F., Szor, P.: W32.Blaster.Worm Report. Symantec Security
Response (2003)
4. Krzywinski, M.: Port Knocking: Network Authentication Across Closed Ports.
SysAdmin Magazine 12 (2003) 12-17
5. Narayanan, A.: A critique of Port Knocking NewsForge, August 8 (2004)
http://software.newsforge.com/software/04/08/02/1954253.shtml
6. Schneier, B.: Port Knocking. Crypto-Gram Newsletter, March 15 (2004)
http://www.schneier.com/crypto-gram-0403.html#5
7. Srisuresh, P., Egevang, K.: Traditional IP Network Address Translator (Traditional
NAT). RFC 3022 (2001)
8. Wheeler, D., Needham, R.: TEA, a Tiny Encryption Algorithm. Fast Software
Encryption 1994: 363-366
9. Worth, D.: CÖK - Cryptographic One-Time Knocking. BlackHat 2004.
10. Yan, J., Blackwell, A., Anderson, R., Grant, A.: The Memorability and Security
of Passwords. Some Empirical Results. Technical Report No. 500, Computer Lab-
oratory, University of Cambridge (2000)
1300 A. Izquierdo Manzanares et al.
DEV_PREFIX = INTERFACE_PREFIX;
memset(SOURCE,0,16);
memset(DEST,0,16);
srand(time(NULL));
strncpy(DEST,argv[1],15);
quantity = atoi(argv[2]);
starting_port = atoi(argv[3]);
range = atoi(argv[4]);
fd_send = open_sending();
for (i=0;i<quantity;i++)
{
snprintf(SOURCE,15,"%d.%d.%d.%d"
,1+(int)(254.0* rand()(RAND_MAX+1.0))
,1+(int)(254.0*rand() / (RAND_MAX+1.0))
,1+(int)(254.0*rand() / (RAND_MAX+1.0))
,1+(int)(254.0*rand() / (RAND_MAX+1.0)));
SOURCE_P=1024+(int)(60000.0*rand() / (RAND_MAX+1.0));
DEST_P=starting_port+(int)(((float)range)*rand() /
(RAND_MAX+1.0));
transmit_TCP (fd_send, SOURCE, SOURCE_P,DEST, DEST_P,SYN);
}
return 0;
}
(Example based on Brecht Claerhout’s ipspoof and sniper-rst code [2], modified to
improve packet-sending performance)
Marketing on Internet Communications Security
for Online Bank Transactions
Abstract. Everyday more companies extend the use of Internet apart from in-
formational uses. The progression to more sophisticated Internet usage will
need that customers trust on the security of the online transactions and on the
security mechanisms involved in this protection. For that reason, moreover the
common marketing techniques, some special marketing on Internet security will
be needed. In fact, customers already are not satisfied with existing protections
in Internet e-commerce services and the future of this potential global market-
place will depend on security.
1 Introduction
In certain sense, the economics of the world are driven by developments in Informa-
tion and Communications Technologies (ICT). In the last years, the exponential
growth of Internet users has shown the e-commerce potential but at the same time
some problems have also arisen. The continuous success of hacker’s attacks and the
dissemination of this type of news in the media have contributed to the customers
distrust. Companies are aware about how these issues can affect to the expansion of e-
commerce companies and they are disposed to assume a more important role in the
protection of their systems and concerning customers about the security measures
applied.
The reality appears to be that market forces will continue to fuel the rapid expan-
sion of e-commerce, regardless of concerns over security. Additionally, it is difficult
to encourage private sector investment in security solutions in the absence of a clear
relationship between security and profitability.
Some of the solutions address to the standardization of Internet security and the in-
troduction of legal measures that force companies to apply enough protection and to
reinforce the punishment of electronic crime. Among the first option many standards
have rise in recent years, ISO-IEC 17799 is the most accepted internationally; and for
the legal measures, most of countries have developed specific legislation for the pro-
tection of e-commerce customers and companies, i.e. the European Union created the
EU directive 2000/31/CE which established the protection needed for e-commerce
companies and customers.
Organizations need to take responsibility for their own protection and understand
that they are facing an increasingly dangerous e-commerce environment requiring
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 1301 – 1308, 2005.
© Springer-Verlag Berlin Heidelberg 2005
1302 J.M. Sierra et al.
them to have knowledge of the weaknesses of the systems that the firm is dependent
on. The marketing of commercially viable e-commerce initiatives must promote cus-
tomers trust on security and watch over how they perceive the security measures
applied.
• The way to ensure that customer is who say they are. For example in the
first step of their relationship, opening an account.
• Although a public network infrastructure is used, the protection of the
communication must ensure the privacy of all contents transmitted.
• The technology involved, the Internet Communications Technology
(ICT) is far of being understood by their customers, so the protections
measures established by banks cannot be completely assimilated by their
users.
Rose [13] evaluated the service quality of 23 USA Internet Banks, including 12
Internet-only banks, in terms of seven service categories:
1. Opening an account
2. Deposits and withdrawals
1
For example, NetBank opened its virtual doors in February 1996 with a business model com-
pletely different to the landscape of the banking industry. http://www.netbank.com/about.htm
Marketing on Internet Communications Security for Online Bank Transactions 1303
She found that most of the sampled banks showed an unsatisfactory level of service
quality and argued that: “ online banking today is often a maddening frustrating affair
that can cause as many problems as it solves”.
Our work is focus on the security issues of e-banking. Our aim is to determine the
key issues of Internet security marketing that would facilitate that customers trust on
e-banking. However, there are important security problems in the Internet technology
and these problems can be inherited by the e-banking.
The social impact of the Internet security flaws or Internet hacking attacks is very
important. The causes that provoke the broad dissemination of this type of news are
difficult to determine, but it is a fact that the media use to emphasize their impact and
this does not contribute in customers trust on Internet technology.
In this way, and although insecurity is an intrinsic feature of the Internet, is also
true that the use of security measures can reduce the risk under assumable levels. The
use of digital signature technology for the authentication and non-repudiation of enti-
ties solves one to the most important security problems. Ciphering can ensure the
privacy of communication and finally the integrity can be obtained by the digital
signature of the contents or by the use of other cryptographic algorithms. The stan-
dard “de facto” for the protection of online banking is the SSL Protocol (Secure
Socket Layer) that supplies the authentication, integrity and confidentiality services
for the contents exchanged by those types of connections.
1304 J.M. Sierra et al.
However there are other Internet Security Problems that, for the moment, cannot be
technologically solved. The clearest example are the Denial of Service attacks, or
more properly, the Distributed Denial of Service attacks (DDoS) which in several
occasions has disturbed the normal development of e-commerce companies.
Although banks, in real world, are usually associated to high level of security, it is
also true that real world banks use certain technologies that are widely consider inse-
cure. An example are common electronic cards (Magnetic Stripe Cards); the security
of these devices has been broken in numerous occasions, but however public still use
them and not many consumers reject its use in favor of the known “smart cards”. So,
something happens because consumers are more concerned about flaws of their secu-
rity and privacy in the cyber world. The information and communications technolo-
gies are a variable world where the fight between the security flaws and the protection
mechanisms is very evident.
Banks are in an unsurpassable situation to encourage consumers to trust not only in
their physical world but also in their online services. There is no doubt that they must
achieve an important effort to explain to their customers the protection measures
supplied. Nowadays, not many people believe that insecurity suspicion could hold up
the e-commerce expansion, but we think that the marketing on Internet security is a
duty for every single company, which is offering online services.
Customer’s ICT
knowledge
Transitive trust
-
Quantitative Qualitative
Marketing Marketing
trust in an indirect mode. We call transitive trust when other organization, which the
customer trusts on, certifies the security level supplied by an online company. This is
the case of well-known Verisign, or could be the case of a certification made by the
government, etc. Customer’s trust on this third party is transmitted to certain online
service by the exhibition of the certification.
What is shown in figure 3, is that when the customer’s knowledge on ICT is too
low, the only way of gaining his trust is by the use of other entity, which allows to
transmit customer’s trust to our service.
The second dimension we have identified is the Service Potential Risk. It is rea-
sonable that customers demand more information when the service used is subjected
to more risk. In this way, when the potential risk is too high it will be practical to
increase the marketing intensity, supplying to the customer the security information
that confirms that always is under control. By the contrary, if the potential risk is very
low, not much security information will be needed and the marketing intensity can be
reduced (fig. 4).
Transitive trust
Service
Potential Risk
-
Marketing
- Intensity +
Nevertheless, if marketing intensity is increased too much, the customer can get the
perception of a very heavy service. So, trying to avoid elevated rates of marketing
intensity, transitive trust can be used to reduce the marketing effort by the use of other
third party.
5 Conclusions
The expansion of e-commerce will require widespread faith in the ability of the tech-
nological systems that carry electronic transactions to function in a flawless mode.
However, surveys all indicate that both customers and commercials users are in doubt
concerning the security of the basic systems. The problem is no easy to solve, because
the technological complexity of the cryptographic techniques and the ignorance of
certain sectors of society do not facilitate trust of customers.
Online banks are everyday more worried about the security image of their services.
In the following years, banks will give important investments on security for the im-
provement of their information systems and their online services. Furthermore, banks
should attack new approaches to prompt customers to trust on it.
Our work tries to improve the success of marketing techniques on the online envi-
ronment. We outline two dimensions to take into account in the designing of Internet
security marketing. The first dimension identified is the Customer Knowledge on ICT
and the second one is the Service Potential Risk, in both cases different marketing
strategies must be applied. Finally our work explains how the transitive trust can
modify the two dimensions commented.
References
[1] Arnott, D. C. and Bridgewater S. “Internet, interaction and implications for marketing”.
Marketing Intelligence & Planning, vol. 20, n. 2, pp. 86-95. 2002
[2] Barczak, G., Ellen, P. and Pilling B. “Developing Typologies of Consumer Motives for
Use of Technologically Based Banking Services” Journal of Business Research, vol. 38
pp. 131-139. 1997.
[3] Forcht, K.A. “Doing business on the Internet: marketing and security aspects”. Informa-
tion Management & Computer Security. vol. 4, n.4. 1996
[4] Gerlach, D. “Put the money where your mouse is” PC World, March, pp. 191-199. 2000
[5] Heinen, J. “Internet marketing practices”. Information Management & Computer Secu-
rity. vol. 4, n.5. 1996
[6] Jayawardhena,C and Foley, P. “Changes in the banking sector – the case of Internet back-
ing in the UK”. Internet Research: Electronic Networking applications and Policy. Vol.
10, n. 1, pp. 19-30. 2000
[7] Johnston, R. “The Determinants of service quality: satisfiers and dissatisfies” Interna-
tional Journal of Service Industry Management, vol. 6, n.1, pp.19-30. 1995
[8] Jun, M. And Cai, S. “The key determinants of Internet banking service quality: a content
analisys”. International Journal of Bank Marketing, vol. 19, n.7. 2001
[9] Liao, Z. and Cheung, M. T. “Internet-based e-banking and consumer attitudes: an empiri-
cal study”. Information and Management, vol. 39, pp. 283-295. 2002
1308 J.M. Sierra et al.
[10] McCrohan, K. F. “Facing the threats to electronic commerce”. Journal of Business and
Industrial marketing, vol. 18, n. 2, pp. 133.145. 2003
[11] Ponce E. et al. “Security Consequences of Messaging Hubs in Many-to-Many E-
procurement Solutions”. ICCSA 2004.
[12] Roboff, G. and Charles, C. “Privacy of Financial Information in Cyberspace”. Journal of
Retail Banking Services; Autumn; vol. 20, n. 3, 1998
[13] Rose, S. “The truth about online banking”. Money, vol. 29, n. 4, pp. 114-122. 2000
A Formal Analysis of Fairness and
Non-repudiation in the RSA-CEGD Protocol
1 Introduction
Interest in protocols for fair exchange of information with non-repudiation stems
from its importance in many applications where disputes among parties can oc-
cur. Assurance of these properties enables the deployment of a wide range of
applications, such as certified e-mail or business transactions through communi-
cation networks. As a result, fair non-repudiation has experienced an explosion
of proposals in recent years (see [9] for an excellent survey).
Nevertheless, fairness and non-repudiation have not been so extensively stud-
ied as other classic issues, such as confidentiality or authentication. Previous
experience in these contexts has shown that designing security protocols is an
error-prone task, and that formal analysis can aid in detecting weaknesses. How-
ever, many of the protocols proposed to achieve fair non-repudiation have not
been subject to a formal security analysis. In the field of security protocols,
formal methods have mainly focused on the analysis of authentication and key-
establishment protocols. These techniques, however, cannot be directly applied
to reasoning about properties such as fairness or non-repudiation without a pre-
vious formalization of what the protocol goals are. Furthermore, many assump-
tions usually done for other protocols are no longer valid in these environments.
For instance, most of the analysis models developed consider the existence of an
attacker with different capabilities, e.g. control over the communication chan-
nels, though the protocol parties are assumed to trust each other and behave
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 1309–1318, 2005.
c Springer-Verlag Berlin Heidelberg 2005
1310 A. Alcaide et al.
The RSA-CEGD protocol makes use of a novel VRES method based on the
RSA system, hence its name. The idea stems from the so-called theory of cross-
decryption [13], which establishes that an RSA encrypted text can be decrypted
by using two different keys if both pairs of secret/public keys are appropriately
chosen. Party B is enforced to use a key of this kind to encrypt the VRES, while
the TTP retains the other. This way, if subsequently B refuses to provide A with
his signature, the TTP is able to recover it from the VRES.
1312 A. Alcaide et al.
• If Pb has got the goods, then Pa has the authorization token and the item
recb rb :
Pb ! Da
(1)
Pa |≡ sb , Pa ! recb rb
Pa ! recb
(2)
Pb ! Da
Pb ! {hash(Da )}ska
(3)
Pb |≡ Pa |≡ {hash(Da )}ska
Pb ! {hash(Da )}ska
(4)
Pa |≡ {hash(Da )}ska
Pa ! {hash(Da )}skb
(5)
Pa |≡ Pb ! Da
Here, the item {hash(Da )}skb does link the entity Pb and the e-goods Da .
On the other hand, CertDa will join together the e-goods Da and the originator
entity Pa .
4 Security Analysis
The entire validation process is described in detail in [1]. In what follows, only
the necessary steps for analyzing the objectives are shown.
Therefore, the formula {hash(Da )}ska itself does not prove that Pa is the
sender as well as the originator. The item {hash(Da )}ska could have been used
before, i.e. in another instance of the same protocol. An entity, different from Pa ,
could have been part of a genuine run of the protocol and could now be reusing
such a formula with malicious purposes (replay attack).
Furthermore, neither the implication (4) can be verified with the items pro-
vided by each party during the protocol execution, nor confidentiality of com-
munications can assists in the validation process of implication (4). Pa cannot
know whether Pb can obtain a proof of origin from a different source. In fact,
the formula {hash(Da )}ska may not belong to the current protocol execution.
Pb could be reusing the item {hash(Da )}ska obtained from an entity which par-
ticipated with Pa in a previous run of the protocol. In such a case, Pb was not
meant to be the receiver of item {hash(Da )}ska , even though it is possible that
Pb could make Pa responsible for having sent a proof of origin that Pa never sent
to Pb . As a result, NRO is not preserved.
5 Discussion
5.1 On the Analysis Process
The strong fairness and non-repudiation protocol RSA-CEGD has been formally
analyzed using a BAN-like logic. The entire validation and analysis processes are
described in [1]. BAN and related logics were never designed to validate secu-
rity properties such as fairness or non-repudiation, but authentication and key-
exchange protocols. However, the modifications and new rules added to BAN
to pursue our goals have been minimal. Only new concepts as public keys cer-
tificates or VRES signatures have been described using new rules in order to
formalize their definitions and behaviors.
A new operator has also been introduced to define the double implication “if
and only if” between formulae. The double implication has been represented as
a double line between formulae within the same rule.
Extended rules
Extended rules
VerificationsA ResultsA
VerificationsA ResultsA HA
Verifications’A
HA
(a) (b)
Extended rules
VerificationsA ResultsA
HA
A would have
Verifications’A ¬ResultsA ¬VerificationsA aborted the
execution
(c)
6 Conclusions
In the approach outlined in this paper, we have attempted to reasoning formally
about some security properties of a complex protocol, such as it is the case of
RSA-CEGD. Formalization provides us with an useful framework for identifying
weaknesses that can get easily unnoticed during an informal study. Moreover, the
very process of analysis serves frequently not only to point out possible attacks,
but also aids to understand how the protocol can be improved.
1318 A. Alcaide et al.
References
1. A. Alcaide and J. M. Estévez. “Formal Analysis of the RSA-CEGD protocol”.
Technical Report, January 2005.
2. G. Bella and L. Paulson. “Mechanical Proofs about a Non-repudiation Protocol”.
Proc. 14th Intl. Conf. Theorem Proving in Higher Order Logic. LNCS, pp.91–104.
Springer-Verlag, 2001.
3. D. E. Denning. “The Limits of Formal Security Models”. National Computer
Systems Security Award Aceptance Speech. October, 1999. Available online at:
http://www.cs.georgetown.edu/∼denning/infosec/award.html.
4. D. Dolev and A. C. Yao. “On the Security of Public Key Protocols”, IEEE Trans.
Inf. Theory, IT-29(12):198–208, 1983.
5. S. Gürgens and C. Rudolph. “Security Analysis of (Un-) Fair Non-repudiation
Protocols”, FASec 2002, LNCS 2629, pp. 97–114. Springer-Verlag, 2002.
6. R. Kailar. “Reasoning about accountability in protocols for electronic commerce”.
Proc. IEEE Symp. Security and Privacy, pp. 236–250. IEEE Computer Security
Press, 1995.
7. R. Kailar. “Accountability in electronic commerce protocols”. IEEE Trans. Soft-
ware Engineering, 5(22):313–328, 1996.
8. P. Louridas. “Some guidelines for non-repudiation protocols”. Computer Commu-
nication Review, 30(5):29–38. October, 2000. ACM Press.
9. S. Kremer, O. Markowitch, and J. Zhou. “An intensive survey of fair non-
repudiation protocols”. Computer Comunications, 25(17):1606–1621. Elsevier Sci-
ence B.V., 2002.
10. S. Kremer and J. F. Raskin. “A game approach to the verification of exchange
protocols - application to non-repudiation protocols”. Workshop on Issues in the
Theory of Security (WITS’00), July 2000.
11. S. Kremer and J. F. Raskin. “A Game-Based Verification of Non-Repudiation and
Fair Exchange Protocols”. Journal of Computer Security, 11(13):399–429, 2003.
12. A. Nenadić, N. Zhang, S. Barton. “A Security Protocol for Certified E-goods De-
livery”, Proc. IEEE Int. Conf. Information Technology, Coding, and Computing
(ITCC’04), Las Vegas, NV, USA, IEEE Computer Society, 2004, pp. 22–28.
13. I. Ray and I. Ray. “An Optimistic Fair Exchange E-commerce Protocol with Auto-
mated Dispute Resolution”. Proc. Int. Conf. E-Commerce and Web Technologies,
EC-Web 2000. LNCS 1875, pp. 84–93. Springer-Verlag, 2000.
14. S. Schneider. “Formal Analysis of a Non-repudiation Protocol”. IEEE Computer
Security Foundations Workshop. IEEE Computer Society Press, 1998.
15. P. Syverson and I. Cervestato. “The Logic of Authentication Protocols”, R.
Forcardi and R. Gorrieri, Eds.: Foundations of Security Analysis and Design
(FOSAD’00), Tutorial Lectures, LNCS 2171, pp. 63–136. Springer-Verlag, 2000.
16. J. Zhou and D. Gollman. “A fair non-repudiation protocol”. Proc. 1996 Symp. on
Research in Security and Privacy, pp. 55–61. Oakland, CA, USA. IEEE Computer
Society Press, 1996.
17. J. Zhou and D. Gollman. “Towards verification of non-repudiation protocols”. Proc.
1998 Intl. Refinement Workshop and Formal Methods Pacific, pp. 370–380. 1998.
Distribution Data Security System Based on Web
Based Active Database
Abstract. The electric utility has the responsibility to provide a good quality of
electricity to their customers. Therefore, they have introduced
DDSS(Distribution Data Security System) to automate the power distribution
data security. DDSS engineers need a set of state-of-the-art applications, eg.
managing distribution system in active manner and gaining economic benefits
from a flexible DDSS architectural design. The existing DDSS functionally
could not handle these needs. It has to be managed by operators whenever feeder
faults data are detected. Therefore, it may be possible for propagating the feeder
overloading area, if operator makes a mistake. And it utilizes closed architecture,
therefore it is hard to meet the system migration and future enhancement
requirements. This paper represents web based, platform-independent, flexible
DDSS architectural design and active database application. The recently
advanced internet technologies are fully utilized in the new DDSS architecture.
Therefore, it can meet the system migration and future enhancement
requirements. And, by using active database, DDSS can minimize feeder
overloadings area in distribution system without intervening of operator,
therefore, minimizing feeder overloadings area can be free from the mistake of
operator.
1 Introduction
The electrical utility has the responsibility to provide a good quality of electricity to
their customers. Therefore, the DDSS (Distribution Data Security System) is
introduced to control and operate complex power distribution system in an economical
and reliable fashion. It includes important functions such as data security, feeder
automation, load control and telemetering. In korea, the electrical utility company is
now facing deregulation and privatization. Several privatized distribution companies
will be appear in few years. And they will require new way of thinking and new
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 1319 – 1330, 2005.
© Springer-Verlag Berlin Heidelberg 2005
1320 S.-Y. Choi et al.
solutions for open-access competitive electricity market. But the existing DDSS could
not meet these new requirements, because it has to be managed by passive manner and
it utilizes closed system architecture.
In closed system architecture, DDSS has utilized proprietary software which is
tightly coupled to a particular operating environment. Therefore, system integration
and data migration in a heterogeneous environment give pressures to DDSS developers
and operators. And, due to the passive DDSS management, DDSS is always exposed to
unintentional mistake from operators. Therefore, whenever feeder overloadings and
faults data are detected, inexperienced operator may get worse feeder overloadings
situation.
Despite of the above defects, a closed architecture and a passive management have
been successfully applied to DDSS until the present time. However, under open-access
competitive market environment, data migration in a heterogeneous environment and
reliable system management by active manor become critical issues to distribution
utility companies. This environment gives DDSS engineers require a set of
state-of-the-art applications, eg using internet application for convenient data exchange
and system openness and adopting active database application for reliable system
management by active manor. Based on these requirements, the authors present new
DDSS architecture based on open system and an active rule application. An open
DDSS system architecture utilizes recently matured internet technology and relational
active database.
An active database system is the result of combination of active techniques and DBMS,
Production rules in active database system allow specification of data manipulation
operations that are executed automatically whenever certain events occur or conditions
are satisfied. Active database rules provide a general and powerful mechanism for
maintaining many database features, including integrity constraint, data consistency,
and so on, in addition, active database system provide a convenient platform for large
and efficient knowledge bases and expert system [1]
The heart of active database systems is active database rule. In general form, active
database rule consist of three parts.
Ɣ Event : External_operation
Ɣ Condition : Condition
Ɣ Action : Action .
Each part can be expressed as follows:
Ɣ Event
It specifies the rule to be triggered. Events are data modification operations
( ”Update”“Insert”, “Delete”) data retrieval, and general application procedures.
Distribution Data Security System Based On Web Based Active Database 1321
Ɣ Condition:
It is checked when the rule is triggered. If condition is true then the rule’s action is
executed. Conditions are database predicates, restricted predicates and database
queries.
Ɣ Action:
It is executed when the rule is triggered and its condition is true. Actions are data
modification operations, data retrieval operations and general application procedures.
Once a set of rules is defined, the active database system monitors the relevant
events. For each rules
On signaling of an event, a condition is evaluated and if this evaluation is true, an
action is executed. The relation between DDSS and active database system is that
active database technology can ideally used to solve typical tasks within DDSS
database system : Using appropriate rules, we can satisfy the radial distribution systems
topology constraint and integrity constraints during data modification operations, and
minimize line losses when distribution feeders are overloaded. The example of
appropriate rule for minimizing line losses is as follows.
Assumption. Feeder reconfiguration program for minimizing line losses is executed
when feeder loadings exceed 80 [%] of line capacity.
This assumption can define the following rule
<Rule for line>
Event : Update to loadings
Condition : Updated (line (L)),
NEW L.loadings> L.capacity * 0.8
Action : Reconfiguration ()
In the above rule, if the attribute loadings value is updated, and updated value is 80
[%] over than the attribute capacity value then feeder reconfiguration is executed to
minimize line losses. If updated loadings value is lower than 80 [%] of feeder capacity
then action can not be executed because condition is false.
Active database system architecture be usually specified as three ways : Layered
architecture, built-in architecture, compiled architecture.
In this paper, layered architecture and built-in architecture are used.
In fig.1, integrity manager is in the between application program and DBMS, and it
detects data modification signals from application program. If data modification signals
violate integrity constraints then integrity manager sends signals to active rule
manager. Active rule manager determines which rules to be fired, and it sends back
another signals to integrity manager. Integrity manager checks if signals sending from
active rule manager satisfy the integrity constraints or not. If data operation signals are
satisfied then it goes to DBMS .
1322 S.-Y. Choi et al.
In ECA rules, one event may triggers several defined rules, and some actions of
triggered rules may trigger another rules. Therefore, forward-chaining rules can be
fired by one event.
Active rule manager controls the firing of rules. It interfaces with integrity manager,
which is used to check if integrity constraints are satisfied or not. It also responsible for
aggregating composite primitive events that are signaled from integrity manager, and
determine which rules are to be fired. When integrity manager sends signals, rules are
fired.
Data requirements for DDSS database are substation, transformer, feeder, feeder
section, switch, and information. And attributes of these requirements have to be easily
applied to feeder reconfiguration program.
After feeder reconfiguration is executed, resulted data are restored to information
table.
Ɣ SUBSTATION
Substation number(psn), transformer number(tsn)
Ɣ TRANSFORMER
Transformer number(tsn), substation number (psn), transformer capacity(tac),
feeder number1 (fsn1), Feeder number2(fsn2), feeder number3 (fsn3), transformer
loadings(premva), open/close status(close : 1, open : 0)
Transformer is connected to three feeders, and attribute transformer loadings value
is sum of all feeder loadings of feeder number1, 2, 3 .
Ɣ FEEDER
Feeder number(fsn), connected transformer number (tsn), feeder loadings
(fsnmva),Start feeder section number (fsnsec), close/open status (close:1, open:0).
Ɣ FEEDER SECTION
Feeder section number (fsnsec), switch number (ssn), feeder capacity 1(fnc), feeder
capacity 2 (fanc), Resistance(rr), reactance(xx), feeder number(fsn), fault flag
Distribution Data Security System Based On Web Based Active Database 1323
Rule 6) If attribute voltage value of switch is updated then the attribute voltage value
of appropriate feeder section is updated
Rule R6 for switch
Event : update vv
Condition : updated(switch(S)), TRUE
Action : update feeder section.vv =
switch.vvʊVdrop
where, feeder section.ssn = switch.ssn
Where, Vdrop : Voltage drop of feeder section
Rule 7) If updated voltage value of feeder section is lower than minimum voltage
value of feeder section then feeder reconfiguration program is executed to minimize
line losses and relive overloadings.
The execution of a rule’s action may trigger another rule, whose action may trigger
other rule’s event. Active rule manager coordinates active rule interaction and the
execution of active rules during transaction execution by interfacing constraint
manager. In this paper, rule interaction is represented by means of Triggering Graph[2].
DEFINITION : Let R be an arbitrary active rule set. The triggering Graph is a directed
graph {V,E}, where each node vi ∈ V corresponds to a rule ri ∈ R, A directed arc
<jrj , rk > ∈ E means that the action of rule rj generates events which trigger rule rk .
Fig 3 represents rule interaction using Triggering Graph.
The architecture can be expressed by subdividing two parts in fig.4The one is web
based architecture which support open system and the other is active database
architecture which support DDSS feeder automation
For web based architecture, Its structure can be divided into three tiers[3]
Client tier : It provides user interface
Middle tier: It is subdivided into the Web server and the application server.
Data tier: It handles the information storage
In the middle tier, application server is transferring request from the web into
appropriate functions in the system and also provide for interfacing different kinds of
database. Web server acts as the gateway for Web-based clients to access the database.
Distribution Data Security System Based On Web Based Active Database 1329
Power distribution engineers and operators sent HTTP requests to Web server
through the industrial standard web browser. If requested web page containing database
SQL command, the database interprets SQL commands and returns matched data in the
database back to Web server. Matched data is formulated as a web page and displayed
web page in the client window[4].
For active database architecture shown in the right-side of fig.4.
Its structure can be expressed specifically by dividing into three parts
- Event detector :
It checks telemetered data and sends signal to production rule manager if integrity
constraints are violated.
- Production rule manager
It accept signal from event detector and determines which rules to be fired.
- Production rule
It allows specification of data manipulation operations that are executed
automatically whenever certain events occur or conditions are satisfied.
Data acquisition system located in distribution network detects switch’s close/open
status, current, voltage and loadings, and it sends a detected data to central DAS
database system.
In DDSS database system, event detector accepts detected data sending from data
acquisition system and sends data modification operation to database. If integrity
constraints is violated because of data modification then event detector send signal to
production rule manager. By using production rule manger, production rules are fired
and resulted data is updated in database. After updating values in database, event
detector checks if updating values satisfies integrity constraints or not. If integrity
constraints are violated then event detector sends signals to production rule manager.
And, when Rule R10 and Rule R5 are triggered, close/open signals are send to
appropriate intelligent switch located in distribution networks.
4 Conclusion
This paper presents a new Web-based active database architectural design to the
Distribution data security system applications. This architecture includes web-based
architecture and active database parts. For web based parts, the authors utilize the Java
2 Enterprise Edition architecture for open system, which will easy in the continuing
development and maintenance of the software package. Therefore, it is easy to meet
open-access competitive market environment. For active database architecture, the
author design production rule and production rule manager for DDSS feeder
automation By utilizing proposed rules, distribution network can be operated reliably
with minimum operators intervening
Acknowledgment
This work has been supported by 2004-0726-000, which is funded by Gyeonggi
Province, Korea.
1330 S.-Y. Choi et al.
References
1. J. Widom, S.Ceri, “Active Database Systems : Triggers and rules for Advanced Database
Processing”, MORGAN KAUFMANN PUBLISHERS”
2. E. Baralis, S. Ceri and S.Paraboshi, “Compile-Time and Runtime Analysis of Active
Behavior”, IEEE Trans, On Knowledge and Data Engineering, Vol. 10, No.3, pp 353 – 370,
1998
3. S.Chen, F.Y. LU, “Web-Based Simulations of Power Systems”, IEEE Computer Application
in Power, January, 2002, pp35-40
4. J.T. Ma, T. Liu, L.F. Wu, “New Energy Management System Architectural Design and
Intranet/Internet Applications to Power Systems” Conference Proc. Power industry computer
application conference, 1995, pp 207- 212
5. E.Baralis, A.Bianco, “Performance Evaluation of Rule Execution Semantics in Active
Database” Tech. Rep. DAI.EB. 96.1, Aug. 1996
6. IEEE Task Force on Power System Control Center Database, “Critical Issues Affecting
Power System Control Center Database”, IEEE Trans. On Power System, vol, 11, no.2 , May,
1996
7. G..S. Martire, D.J.H. Nuttall, “Open Systems and Database”, IEEE Trans, On Power System,
Vol. 8, NO. 2, May. 1993.
Data Protection Based on Physical Separation:
Concepts and Application Scenarios
1 Introduction
In the last few years, we have experienced a steadily growing interest in using
the Internet as a vehicle for e-banking, e-commerce, virtual company networks,
telephony, live TV, and other applications requiring secure communication. To
this end, network security has become pivotal for the future of the Internet and
Internet-based solutions.
Currently, network security is almost exclusively accomplished through en-
cryption. For example, e-banking and e-commerce typically take place over Se-
cure Sockets Layer (SSL) [9] or Transport Layer Security (TLS) [6] connections.
However, although encryption gives adequate protection, it may lead to severely
degraded network performance in terms of latency and throughput. Specifically,
Apostolopoulos et al. [2] demonstrated a throughput reduction of more than
90 % when TLS (using RC4 and MD5) was used to access Netscape and Apache
Web servers as compared to no encryption at all. Furthermore, Burke et al. [3]
showed that applications running on high-end microprocessors are not even likely
to saturate a T3 (approximately 45 Mbps) line. To this end, various selective
encryption schemes [12, 19, 23, 24] that produce less overhead compared to or-
dinary encryption schemes, such as RC4, DES, and AES, have recently been
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 1331–1340, 2005.
c Springer-Verlag Berlin Heidelberg 2005
1332 S. Lindskog, K.-J. Grinnemo, and A. Brunstrom
1
The same principle is in [17] referred to as the principle of timeliness.
Data Protection Based on Physical Separation 1333
Data protection services are used to achieve data confidentiality, data in-
tegrity, data authenticity, and/or non-repudiation [25]. A data confidentiality
service ensures that transmitted data are accessible only for reading by autho-
rized parties, while a data integrity service ensures that only authorized parties
are allowed to modify transmitted data. A data authenticity service ensures
that the origin and/or the source of data are correctly identified. Finally, a non-
repudiation service ensures that neither the sender nor the receiver of a message
can deny the transmission.
Data protection for network transfers has traditionally been implemented ex-
clusively through cryptographic separation, and various cryptographic systems
are widely used today. The major disadvantage of cryptographic separation,
however, is that it requires adequate computational resources (at least) at the
endpoints. For this reason, we propose the use of physical separation as a com-
plement to existing cryptography-based data protection services for applications
with lightweight security requirements. Cryptography and physical separation
may also be combined to achieve protection diversity.
The idea of physical separation is to simultaneously send messages belonging
to the same data stream on multiple physical paths. Protection is thus provided
by the geographical fragmentation and scattering of data. Figure 1 shows two
communicating hosts, A and B. In this case, host A is the sender and host B the
receiver. Both hosts are multi-homed and equipped with two physical network
interfaces, A1 and A2 , and B1 and B2 , respectively.
$ 3DWK, %
1HWZRUN
$ 3DWK,, %
+RVW$ +RVW%
Fig. 1. Physical separation of two communication paths
Two distinct paths can be obtained, Path I and Path II, by using the differ-
ent network interfaces, which is illustrated in Fig. 1. These two paths are then
used simultaneously during transmission of data. Specifically, when connecting a
multi-homed host to the network, each network interface is bound to a separate
IP address. An application running on a multi-homed host can thus select the
network interface on which to send data. Different strategies for distributing data
on these paths can be used depending on the application. An even distribution
of data on the different paths is suitable in some situations, while, in other situa-
tions, it is not. For example, when multimedia data are transferred, the amount
of traffic sent on the different paths may need to be adjusted with respect to
path characteristics such as bandwidth, delay, jitter, etc. The distribution may
also be affected by security considerations. Imagine, for example, a map with a
secret target marked with an “X”. Neither the map nor the mark is sensitive by
1334 S. Lindskog, K.-J. Grinnemo, and A. Brunstrom
itself but together they are. Increased security may thus be achieved by simply
sending the map and the “X” mark on two physically separate paths.
3 Threat Model
The specific threat considered in this paper is malicious interception of network
traffic through so-called eavesdropping attacks. Eavesdropping attacks are a se-
rious threat to the confidentiality (or secrecy) of data transferred in a network.
The person conducting such an attack is referred to as an eavesdropper. In this
paper, our hypothesis is that an eavesdropper needs to acquire access to all or
at least most of the data sent over the different paths to successfully perform an
eavesdropping attack. This means that an attacker must identify all used paths,
gain access to the traffic, and finally decode the data.
An eavesdropping attack on a particular victim is most easily performed near
the victim’s physical network connection. If the wire that connects the victim’s
computer is accessible, a protocol analyzer can be used to intercept all traffic
that passes through the wire. Another option is to use a so-called network sniffer.
When a network sniffer is used in a broadcast network, such as a non-switched
Ethernet network or an IEEE 802.11 wireless network, the network interface
card (NIC) on the computer executing the sniffer is configured in promiscuous
mode. Promiscuous mode implies that all traffic sent over the broadcast network
is intercepted by the NIC and forwarded to the sniffer for further processing.
Interception of traffic to and/or from a particular user is much more com-
plicated if the point for eavesdropping is many hops away from the end nodes.
In the core network, traffic from a large set of users will pass. Thus, the data
processing necessary to filter out the relevant traffic will require a great deal
of computational resources. In addition, traffic to and/or from the victim may
be routed on different paths from session to session and can also be re-routed
within a session due to network failures etc. Furthermore, if proxies or network
address translators (NATs) are used, it might not be evident who is actually
communicating.
When data on multiple communication paths are fragmented and scattered,
eavesdropping attacks become much more difficult. The highest degree of pro-
tection through physical separation is achieved when data are routed on fully
distinct communication paths all the way from the sender to the receiver. How-
ever, in many IP-based network architectures, fully distinct paths can not easily
be guaranteed. Still, since the endpoints are the most susceptible parts to eaves-
dropping attacks, we believe that it is satisfactory in many real situations to
guarantee physical separation of the traffic closest to the endpoints.
4 Application Scenarios
It is evident that physical separation as a mean to achieve security is more ap-
plicable in some situations than others. In the following, we give some examples
of application scenarios in which physical separation may be used to provide
Data Protection Based on Physical Separation 1335
lightweight data protection and outline how physical separation can be realized
in these scenarios.
4.1 SS7 over IP
Logically, the Public Switched Telephone Network (PSTN) comprises two net-
works: one call-traffic network for the transmission of speech, data, fax etc.,
and one signaling network for the transfer of control or signaling information.
Specifically, the signaling network enables transfer of control information in be-
tween nodes in connection with: traffic control procedures such as call set-up,
supervision, and release; services such as toll-free (800/888) and toll (900) wire-
line services, and roaming in wireless cellular networks; and, finally, network
management procedures such as blocking and de-blocking of trunks.
The predominant signaling system used in today’s PSTN is Signaling System
#7 (SS7) and, with VoIP emerging as a competitive alternative to the PSTN, it
has become increasingly important to enable interworking between SS7 and IP.
To this end, the IETF Signaling Transport (SIGTRAN) working group has de-
fined a framework architecture, the SIGTRAN architecture [15], that describes
how to transport SS7 signaling information over an IP-based network. The SIG-
TRAN architecture defines a set of adaptation protocols that insulate the upper
layers of the SS7 protocol stack from IP and thus make it possible to run SS7,
essentially unaltered, over an IP-based network. Furthermore, the SIGTRAN
architecture defines a new transport protocol, the Stream Control Transmission
Protocol (SCTP) [26].
SCTP is the common denominator for all SIGTRAN networks and, although
SCTP is now considered a general transport protocol on a par with TCP and
UDP, it is still true that SCTP evolved from the SIGTRAN working group
and the requirements of SS7 signaling. Similar to TCP, SCTP is a connection-
oriented, reliable transport protocol offering ordered (sequential) delivery of user
messages. However, contrary to TCP, SCTP is message oriented and provides
support for multi-streaming and multi-homing. Multi-streaming enables SCTP
to send separate transactions as independent units and thereby avoid so-called
head-of-line blocking, which happens when a lost message in one transaction
effectively blocks one or several other transactions.
Support for multi-homing was included in SCTP to provide quick failure de-
tection and recovery, which is particularly important for SS7 signaling. Network-
level timers running in today’s SS7 networks monitor message delivery perfor-
mance and may generate alarms that trigger message re-routing if they expire
as a result of extraordinary delays. Thus, this network monitoring functionality
must extend to VoIP networks to maintain end-to-end, carrier-grade telecom-
munications quality.
Figure 2 illustrates how the SCTP multi-homing support works. SEP-A and
SEP-B are two dual-homed signaling endpoints. Each combination of source
and destination IP addresses, e.g., (P1 ,P2 ), (A1 ,A2 ), (P1 ,A2 ) etc., constitutes a
network path. One network path is always selected as the primary path, and
(P1 ,P2 ) functions as the primary path in Fig. 2. Provided the primary path is
available, all packets are sent on this path. The remaining paths function only
1336 S. Lindskog, K.-J. Grinnemo, and A. Brunstrom
3ULPDU\SDWK
3 3
6,*75$1QHWZRUN
$ $
$OWHUQDWHSDWK
6(3$ 6(3%
way as discussed in Section 4.1, and thus provide explicit label-switched paths
between endpoints. However, application-controlled multi-homing also opens the
way for application specific routing strategies through the use of so-called overlay
networks [16].
An overlay network can be viewed as a logical network implemented on top
of a real physical network. Each node in the overlay also exists in the underlying
physical network. However from the viewpoint of the overlay, the nodes are not
only capable of routing packets on the basis of their destination address, but
are also able to process and forward packets in application-specific ways. Thus,
an overlay network could assist a multi-homed endpoint in enforcing distinct
paths. For example, a technique similar to the one proposed for Resilient Overlay
Networks (RONs) [1] could be used. In a way similar to a RON, nodes could
reside in a variety of routing domains and cooperate with each other to forward
data. Since routing domains or Autonomous Systems (ASs) rarely share interior
links, flows routed through different ASs are likely, but not guaranteed, to be
forwarded on distinct paths.
Another technique for enforcing distinct paths when using overlay networks
may be to employ a routing underlay network as suggested by Nakao et al. [14].
They propose a new architectural element, a routing underlay, that sits between
an overlay network and the underlying IP network. The overlay network queries
the routing underlay when it makes routing decisions. The routing underlay
in turn extracts and aggregates topology information from the underlying IP
network and answers the queries of the overlay network. Specifically, one of the
services that could be offered to the overlay by the underlay network is to return
a distinct path between an originating and destination endpoint. In fact, this is
one of three services that are actually proposed in [14].
Finally, it can be mentioned that recent developments in routing technolo-
gies make possible new alternatives, apart from MPLS and overlay routing, to
obtain distinct paths even though the paths cross several ASs. Examples of
this include route controllers, such as the Peer Director [7], which assists BGP
in routing traffic through multi-homed routing domains (domains connected to
several ISPs), and the BANANAS framework [10], which permits source-based
multipath inter-domain routing.
5 Conclusions
In this paper, we propose the use of physical separation as a complement to
encryption for delay-sensitive applications that require only lightweight security.
A threat model is presented. Further some application scenarios are highlighted,
and alternative solutions for providing separate paths in these scenarios are
discussed.
Since establishing physically distinct paths is a non-trivial task in IP net-
works, a large part of the description of application scenarios addresses this
issue. Transport layer controlled multi-homing using SCTP in conjunction with
either redundant networks or MPLS are suggested as feasible solutions. MPLS
Data Protection Based on Physical Separation 1339
Acknowledgments
This research is supported in part by grants from the Knowledge Foundation of
Sweden and from the CMIT research platform at Karlstad University in Sweden.
The second author would also like to thank TietoEnator AB for their support
of his research.
References
1. D. Andersen, H. Balakrishnan, Frans Kaashoek, and Robert Morris. Resilient
overlay networks. In Proceedings of the 18th ACM Symposium on Operating System
Principles (SOSP 2001), pages 131–145, Chateau Lake Louise, Canada, October
2001.
2. G. Apostolopoulos, V. Peris, and D. Saha. Transport layer security: How much
does it really cost? In Proceedings of the Conference on Computer Communications
(IEEE INFOCOM), volume 2, pages 717–725, New York, New York, USA, March
1999.
3. J. Burke, J. McDonald, and T. Austin. Architectural support for fast symmetric
cryptography. ACM SIGOPS Operating Systems Review, 34(5):178–189, December
2000.
4. D. B. Chapman and E. D. Zwicky. Building Internet Firewalls. O’Reilly & Asso-
ciates, 1995.
5. Y. Deswarte, L. Blain, J. C. Fabre, and J. M. Pons. Security. In D. Powell, editor,
Delta-4: A Generic Architecture for Dependable Distributed Computing, chapter 13,
pages 329–339. Springer-Verlag, 1991.
6. T. Dierks and C. Allen. RFC 2246: The TLS protocol version 1.0, January 1999.
7. Radware: Peer Director. http://www.radware.com/content/products/pd, January
2, 2005.
8. A. A. El Al, T. Saadawi, and L. Myung. LS-SCTP: A bandwidth aggregation
technique for stream control transmission protocol. Computer Communications,
27(10):1012–1024, June 2004.
9. A. Frier, P. Karlton, and P. Kocher. The SSL 3.0 protocol. Netscape Communi-
cation Corporation, November 1996.
10. H. Tahilramani Kaur, S. Kalyanaraman, A. Weiss, S. Kanwar, and A. Gandhi.
BANANAS: An evolutionary framework for explicit and multipath routing in the
Internet. In Proceedings of the ACM SIGCOMM Workshop on Future Directions
in Network Architecture (FDNA 2003), pages 277–288, Karlsruhe, Germany, 2003.
11. S. Kent and R. Atkinson. RFC 2401: Security architecture for the Internet protocol,
November 1998.
1340 S. Lindskog, K.-J. Grinnemo, and A. Brunstrom
1 Introduction
Let X and Y be real Banach spaces with Y partially ordered (Definition 2.1
below), A : X → Y be a linear map and a, b ∈ Y with a ≤ b. Let φ be a
linear functional on X. A class of linear programs of considerable study known
as interval linear programs denoted by ILP (a, b, φ, A) are problems of the form:
Maximize φ, x
subject to a ≤ Ax ≤ b.
Ben-Israel and Charnes were the first to investigate ILP’s [1]. They considered
the case X = Rn and Y = Rm where they assumed that the matrix A is of full
row-rank. Explicit optimal solutions for such problems were given in terms of the
O. Gervasi et al. (Eds.): ICCSA 2005, LNCS 3483, pp. 1341–1348, 2005.
c Springer-Verlag Berlin Heidelberg 2005
1342 K.C. Sivakumar and J.M. Swarna
generalized inverses of A. These were later extended in [8 & 9] to the case when
the restriction on A was removed. Kulkarni and Sivakumar [2, 3 & 4] investigated
interval linear programs in the infinite dimensional setting and showed how some
of the results in the finite dimensional case can be extended. This work is also
reported in [6].
We now motivate the concept of a Ben-Isreal-Charnes space. Consider the
linear equation Ax = u, Equivalently, x = T u + y, y ∈ N (A), where T is a
{1}- inverse of A. Suppose that φ, y = 0, ∀ y ∈ N (A). Then ILP (a, b, φ, A) is
equivalent to the problem ILP (a, b, ψ, I):
Maximize ψ, u
subject to a ≤ u ≤ b,
where ψ, u = T ∗ φ, u, where T ∗ is the adjoint map of T . It is well-known
that, under certain assumptions ILP (a, b, ψ, I) is explicitly solvable [2, 3 & 6].
This in turn can be used to obtain explicit optimal solutions to ILP (a, b, φ, A). A
partially ordered real Banach space where ILP (a, b, ψ, I) has an optimal solution
∀a, b ∈ X, a ≤ b and φ ∈ X is called a Ben-Israel- Charnes space in [6], in
recognition of the work of these authors on finite interval linear programs. It must
be mentioned that a class of production-planning and input-output problems
have been shown to have explicit solutions in the setting of B-C spaces. This
work appears in [4] and is the first instance of the use of the nomenclature B-C
spaces in the literature.
In this paper we identify new classes of Banach spaces that are B-C spaces.
We also address the following questions:
We present sufficient conditions under which the answers are in the affirma-
tive. We organize the paper as follows. In section 2 we present the preliminary
concepts and examples that will be used throughout. This also helps to fix the
notation. Section 3 presents the idea of a Ben-Israel-Charnes space, where nu-
merous examples are given as illustrations. The main results are Theorem 3.2,
Theorem 3.5, Theorem 3.7, Theorem 3.15 and Theorem 3.19.
2 Preliminaries
This section serves to fix the notation in this paper and to review the notions of
cones and lattices. The treatment is as found in [5].
Definition 2.1. Let X be a real vector space. Then X is called a partially ordered
vector space if X has a partially order ≤ defined on it satisfying the following:
For x, y ∈ X with x ≤ y, we have x + u ≤ y + u for all u ∈ X and αx ≤ αy for
all α ≥ 0.
Some Results on a Class of Optimization Spaces 1343
Definition 2.2. Let X be a partially ordered real vector space. Then the subset
C := {x ∈ X : x ≥ 0} is called the positive cone of X. C is called a pointed cone
if the partial order ≤ is also antisymmetric, viz., x ≤ y and y ≤ x imply x = y
for every x, y ∈ X.
Definition 2.3. A vector space is said to be a partially ordered Banach space
if it is a partially ordered vector space and also a Banach space with respect to
some norm.
Example 2.4. Rn the Euclidean space is a partially ordered real Banach space
with Rn+ := {x = (x1 , x2 , · · · , xn ) ∈ Rn : xi ≥ 0∀i = 1, 2, · · · , n} as a pointed
positive cone.
Example 2.5. Let μ be a σ-finite positive measure on a σ-algebra in a nonempty
set Y and for 1 ≤ p < ∞, let X = Lp (Y, μ) denote the space of (equivalent classes
of ) measurable p-integrable functions on Y . Then X is a partially ordered Banach
space with the pointed positive cone
C := {f ∈ X : f ≥ 0a.e.(μ)}. In particular lp , 1 ≤ p < ∞ is a partially or-
dered Banach space with the pointed positive cone P := {x ∈ lp : xi ≥ 0∀i}.
We next review the concept of vector lattices. Here the partial order is
assumed to satisfy the antisymmetry condition also (Definition 2.2).
Definition 2.6. A real vector lattice V is a partially ordered real vector space
such that sup{x, y} and inf {x, y} exist for all x, y ∈ V .
Definition 2.7. Let V ba a vector lattice. A norm . on V is called lattice
norm if |x| ≤ |y| ⇒ x || ≤ y for all x, y ∈ V . Here |x| := x+ + x− , where
x+ := sup {x, 0} and x− := sup {−x, 0}. A normed lattice (V, .) is called a
Banach lattice if the norm is complete.
Example 2.8. The vector lattice of example ?? is a Banach lattice under the
norm f := sup { |f (b)| : b ∈ B}.
Example 2.9. C([0, 1]), the space of continuous real functions on [0, 1] with the
usual order and supremum norm is a Banach lattice.
Definition 2.10. A nonempty subset D of a vector lattice V is called directed if
∀(x, y) ∈ D × D there exists z ∈ D such that x ≤ z and y ≤ z. Let D be directed.
Let Dx := {z ∈ D : x ≤ z}. Then the family {Dx : x ∈ D} is called the section
filter of D. Let D be a directed subset of V such that x0 := sup D exists. Then
? V generated by D is the family of order intervals { [x, x0 ] : x ∈ D}
the filter in
such that x∈ D [x, x0 ] = {x0 }. Here [x, x0 ] := {y ∈ V : x ≤ y ≤ x0 }. A filter
F on V is said to order-converge to x ∈ V if F contains a family of order
intervals with intersection {x}. A normed vector lattice is said to have an order
continuous norm if every order convergent filter in V converges with respect to
the norm on V .
Example 2.11. For 1 ≤ p < ∞, Lp (μ) are Banach lattices that have order
continuous norms. c0 the Banach lattice of real convergent sequences converging
to zero has order continuous norm. It is well known that with the supremum
norm C([0, 1]) is not order continuous. See [5] for more details.
1344 K.C. Sivakumar and J.M. Swarna
3 Ben-Israel-Charnes Spaces
Definition 3.1. Let X be a partially ordered real Banach space. Let I denote
the identity map on X. We say that X is a Ben-Israel-Charnes space or a B-C
space, in short if ILP (a, b, φ, I) has an optimal solution for all a, b ∈ X with
a ≤ b and for all bounded linear functionals φ on X.
Theorem 3.2. Let X be a partially ordered real Banach space such that every
interval [a, b] := {x ∈ X : a ≤ x ≤ b} is weakly compact. Then X is a B-C
space.
Proof. Since [a, b] is weakly compact, for any bounded linear functional φ on X,
sup {φ, x : a ≤ x ≤ b} < ∞ and there exists x0 such that a ≤ x0 ≤ b with
φ, x0 ≥ φ, x∀x ∈ [a, b]. Hence X is a B-C space.
Remark 3.3. The question of whether the converse of Theorem 3.2 holds, re-
mains open. It follows from the above theorem that c0 , the Banach lattice of all
real convergent sequences converging to zero is a B-C space. (Also see example
6, pp 92, [5]).
Corollary 3.4. Let X be a Banach lattice with order continuous norm. Then
X is a B-C space.
It can be shown that the Banach lattice C([0, 1]) of all real-valued continuous
functions on [0, 1] is not a B-C space. It may be observed that the supremum
norm on C([0, 1]) is not order continuous.
Remark 3.6. It follows from Theorem 3.5 that Rn , the n-dimensional real Eu-
clidean space is a B-C space. Also lp , the space of real p-summable sequences
for 1 ≤ p < ∞ is a B-C space. This follows by taking Y = N and μ to be the
counting measure on N.
Some Results on a Class of Optimization Spaces 1345
Theorem 3.7. (Lemma 4,[3]) Let H be a partially ordered real Hilbert space with
P as the positive cone such that there exists an orthonormal basis
{uα : α ∈ J}, J an index set, of H with uα ∈ P ∀α ∈ J. Then H is a B-
C space.
Remark 3.8. Theorem 3.5, Remark 3.6 and Theorem 3.7 are all concerned with
classes of Banach spaces that are B-C spaces. Even though the validity of these
follow from Theorem 3.2, constructive proofs are available, (See for instance [3],
[6]) whereas the proof of Theorem 3.2 is existential. (See also Remark 3.10.)
Theorem 3.9. The cartesian product of a finite number of B-C spaces is a B-C
space with component wise operations.
Maximize φ, x
subject to a ≤ x ≤ b
x ∈ X,
Maximize ψ, x
subject to a ≤ x ≤ b,
The next example demonstrates that the converse of Theorem 3.15 is not
true.
We next give a sufficient condition to show that the second question in the
introduction has an affirmative answer. We need the following definition.
Proof. Let y 1 , y 2 ∈ R(A) with y 1 ≤ y 2 and φ ∈ R(A) , where R(A) denotes the
space of all bounded linear functionals on R(A). We show that ILP (y 1 , y 2 , φ, I)
has an optimal solution. Consider ILP (y 1 , y 2 , φ, I):
Maximize φ, x
subject to y 1 ≤ y ≤ y 2 , y ∈ R(A).
Maximize A∗ ψ, x
subject to x1 ≤ x ≤ x2 ,
Example 3.21. Let X1 = R2 with the usual cone P1 . Then X1 is a B-C space.
Consider X2 = R3 with the cone P2 = {x ∈ R3 : x1 ≥ 0, x3 ≥ 0} and ⎛ {2x⎞ 1 x3 ≥
1 1
x22 }. Then X2 is a B-C space. Let A : R2 → R3 be defined by A = ⎝ 0 −1 ⎠ and
1 1
a 1 1−a
let Y = where a, b ∈ R. Then A is positive, Y A = I, (Y is the
b −1 −b
most general left-inverse of A). R(A) is a B-C space with the cone Q = {x ∈
R3 : x1 = x3 ≥ 0} and {2x21 ≥ x22 }. But Y is not a positive operator. Thus there
is no positive left-inverse for A.
Remark 3.22. In the light of Theorem 3.19 and Example 3.12 it follows that
there cannot exist a nonnegative matrix having a nonnegative inverse from R2
with the lexicographic order into R2 with the usual cone. The reasoning is as
follows. Let u = (1, 1) and v = (1, −1), then u and v both belong to the lexico-
graphic cone in R2 . If A is such that Au and Av are nonnegative then the first
two columns of A are identical. Hence A is not invertible.
1348 K.C. Sivakumar and J.M. Swarna
References
1. Ben-Israel, A. and Charnes, A., An explicit solution of a special class of linear
programming problems, Operations Research, 16, 1166-1175, 1968.
2. Kulkarni, S. H. and Sivakumar, K. C., Applications of generalized inverses to interval
linear programs in Hilbert spaces, Numer. Funct. Anal. and Optimiz., 16(7&8), 965-
973, 1995.
3. Kulkarni, S. H. and Sivakumar, K. C., Explicit solutions of a special class of linear
programming problems in Banach spaces, Acta. Sci. Math. (Szeged), 62, 457-465,
1996.
4. Kulkarni, S.H. and Sivakumar, K. C., Explicit Solutions of a special class of linear
economic models, Ind. J. Pure Appl. Math., 26(3), 217-223, 1995.
5. Schaefer, H. H., Banach lattices and positive operators, Springer-verlag, 1970.
6. Sivakumar, K. C., Interval linear programs in infinite dimensional spaces, Ph.D.
Dissertation, Indian Institute of Technology, Madras, 1994.
7. Wolkowicz, H., Explicit solutions for interval semidefinite linear programs, Lin. Alg.
Appl., 236, 95-104, 1996.
8. Zlobec, S. and Ben-Israel, A., On explicit solutions of interval linear programs, Israel
J. Math., 8, 12-22, 1970.
9. Zlobec, S. and Ben-Israel, A., Explicit solutions of interval linear programs, Oper-
ations Research, 21, 390-393, 1973.
Author Index