Electronic negotiations concern transactions on the basis of electronic media, such as the Internet. Platforms have been developed to aid participants in electronic markets during the agreement phase. The key activity in this is the matching of offers and requests, for which we need a ranking of the alternatives. In this book the author defines a framework in which a ranking can be generated in order to acquire an optimal decision for a desired transaction - this process is called matchmaking.

The author introduces a generic framework for multidimensional, multiattribute matchmaking, its implementation, and an analysis of it. The genericity of the author’s approach means that the implementation, realized as a multiagent system, can represent both offering and requesting agents, and the framework can be applied to a huge variety of applications. The use cases in the book are derived from the human resources domain, and thus involve quite complex matchmaking.

The author’s presentation is thorough and self-contained. He provides definitions of the relevant business and computer science terms, and detailed explanations of the underlying mathematical tools and software implementations.

You can write a book review and share your experiences. Other readers will always be interested in your opinion of the books you've read. Whether you've loved the book or not, if you give your honest and detailed thoughts then people will find new books that are right for them.

Lecture Notes in Artificial Intelligence
Edited by J. G. Carbonell and J. Siekmann
Subseries of Lecture Notes in Computer Science
2882
3
Berlin
Heidelberg
New York
Hong Kong
London
Milan
Paris
Tokyo
Daniel Veit
Matchmaking
in Electronic Markets
An Agent-Based Approach
towards Matchmaking in Electronic Negotiations
13
Series Editors
Jaime G. Carbonell, Carnegie Mellon University, Pittsburgh, PA, USA
Jörg Siekmann, University of Saarland, Saarbrücken, Germany
Author
Daniel Veit
University of Karlsruhe (TH)
Information Management and Systems
Englerstrasse 14
76131 Karlsruhe
Germany
E-mail: veit@iw.uka.de
Based on Dissertation 2003 DA 27, University Library at University of Karlsruhe
Title figure based on:
D.J. Veit, J.P. Müller, Ch. Weinhardt (2002)
Multidimensional Matchmaking for Electronic Markets
Journal of Applied Artificial Intelligence, 16(9-10), 2002, p. 858, Figure 1.
Cataloging-in-Publication Data applied for
A catalog record for this book is available from the Library of Congress.
Bibliographic information published by Die Deutsche Bibliothek
Die Deutsche Bibliothek lists this publication in the Deutsche Nationalbibliografie;
detailed bibliographic data is available in the Internet at <http://dnb.ddb.de>.
CR Subject Classification (1998): I.2.11, I.2, K.4.4, J.1, H.3, H.4, C.2.4
ISSN 0302-9743
ISBN 3-540-20500-4 Springer-Verlag Berlin Heidelberg New York
This work is subject to copyright. All rights are reserved, whether the whole or part of the material is
concerned, specifically the rights of translation, reprinting, re-use of illustrations, recitation, broadcasting,
reproduction on microfilms or in any other way, and storage in data banks. Duplication of this publication
or parts thereof is permitted only under the provisions of the German Copyright Law of September 9, 1965,
in its current version, and permission for use must always be obtained from Springer-Verlag. Violations are
liable for prosecution under the German Copyright Law.
Springer-Verlag is a part of Springer Science+Business Media
springeronline.com
c Springer-Verlag Berlin Heidelberg 2003
Printed in Germany
Typesetting: Camera-ready by author, data conversion by Boller Mediendesign
Printed on acid-free paper
SPIN: 10967317
06/3142
543210
Foreword
Electronic negotiations concern the transaction of agreements on the basis of
electronic media, usually the Internet. They play an essential role within a
growing number of domains in the modern economy. Within recent years
in consumer-to-consumer, business-to-consumer as well as in business-tobusiness scenarios electronic platforms for all these ﬁelds have been established, and these support the participants in the information, the agreement
or in the settlement phase of their transactions.
The degree to which the user is supported varies from platform to platform.
At the low end, lists of hyperlinks at a Website provide support to the user.
Therefore, many authors deﬁne such platforms as electronic markets. However, this deﬁnition does not seem to be very reasonable, because under this
deﬁnition all online catalogue systems form electronic markets. Since a market deﬁnes a location – even a virtual location – in which oﬀers and requests
meet and perform, several authors deﬁne an electronic market as a platform,
in which at least all core phases – information, agreement and settlement –
are electronically assisted.
A central component of electronic transactions is the matching of oﬀering and
requesting parties within a market – the key issue in the above-mentioned
agreement phase. Therefore, initially, knowledge has to be generated on which
participants are potential transaction partners. There can be several candidates. For the ﬁnal decision on which transaction partner to choose, it is
essential to evaluate the alternatives. A so-called ranking of the alternatives
along with the preference of the participants is desirable.
Within his work, Mr. Veit is focusing exactly on this problem: How can incoming oﬀers be matched regarding a speciﬁc request. He deﬁnes a framework
in which a ranking can be generated in order to acquire an optimal decision for a desired transaction. This ranking procedure within the framework
is called matchmaking. Hereby, the matchmaking procedure gets more and
more complex, particularly when not only ﬂat structures are compared but
multidimensional or multiattribute oﬀers and requests meet, i.e., the transaction decision depends on several decision criteria.
In this book Mr. Veit introduces a generic framework for multidimensional
matchmaking, its implementation, and an analysis of it. The use cases de-
VI
Foreword
scribed in the book stem from the human resources domain. In this particular
application, ideally suited persons are matched against vacant positions. It
is obvious that such a decision should not be made by just comparing one
attribute. Therefore, like in many analogous domains, several attributes and
dimensions are matched.
One of the highlights in this book is the genericity of Mr. Veit’s approach,
based on which matchmaking can be performed over arbitrary types and
oﬀer-request structures. The implementation – which has been realized as a
multi-agent system – can represent both oﬀering and requesting agents. This
framework can be applied within a huge variety of application domains of
electronic negotiations within electronic markets.
Therefore, this book is an essential contribution to the e-market/e-negotiation
literature and I wish the best success for its publication, for its author, and
most of all for its readers.
September 2003
Christof Weinhardt
University of California, Berkeley, USA
Universität Karlsruhe, Germany
Preface
In the ﬁrst place I would like to thank Prof. Christof Weinhardt from the
University of Karlsruhe who signiﬁcantly contributed with his ideas to the
quality of this book. Also I would like to thank Prof. Rudi Studer, Prof.
Werner Rothengatter and Prof. Andreas Geyer-Schulz from the University of
Karlsruhe for supporting my work.
I would like to especially say “thank you” to my wife Gudrun and my two
little children Jonathan and Helena for the evenings which they spent without
me and thereby enabled me to ﬁnish this book.
Rudi Kober, Dr. Jörg P. Müller and Martin Schneider from Siemens AG in
Munich also deserve special thanks for their support of my work.
For their inspirations, I would also like to thank Prof. Thomas Eiter from
the University of Technology, Vienna, Prof. V.S. Subrahmanian from the
University of Maryland, College Park, USA, and Prof. Bernhard Seeger from
the University of Marburg.
I would like to thank the human resources departments of Lufthansa AG in
Frankfurt, the University Hospital in Giessen, and Siemens AG in Munich
for their contribution to the use cases in this book.
Last but not least I would like to thank all my colleagues in Karlsruhe for their
continuous support during the writing of this book. I would especially like
to thank Dr. Miroslav Budimir, Clemens Czernohous, Michael Grunenberg,
Jörg Sandrock and Ilka Weber for proofreading the manuscript.
August 2003
Daniel J. Veit
Universität Karlsruhe, Germany
Contents
Part I Fundamentals & Related Work
1
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.1 Motivation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.2 Reader’s Guide . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.2.1 Structure of This Work . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.2.2 Historical Perspective . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3
4
5
5
6
2
Terminology and Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.1 Terminology . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.1.1 Economic Concepts Used in This Work . . . . . . . . . . . . .
2.1.2 Concepts from Computer Science . . . . . . . . . . . . . . . . . . .
2.2 General Field . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.2.1 Electronic Markets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.2.2 Electronic Negotiations and Electronic Auctions . . . . . .
2.2.3 Multi-Agent Systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.3 Matchmaking in Electronic Negotiations . . . . . . . . . . . . . . . . . . .
2.4 Phases of Matchmaking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.5 Application Domains for eNegotiations . . . . . . . . . . . . . . . . . . . .
2.5.1 Matchmaking in Multi-attribute Auctions . . . . . . . . . . .
2.5.2 Multidimensional Matchmaking in Human Resources
Negotiation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.6 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9
9
10
12
22
23
24
25
26
28
30
30
Related Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.1 Matchmaking Approaches . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.1.1 Application Oriented Matchmaking Mechanisms . . . . . .
3.1.2 Matchmaking in the SHADE and COINS Approach . . .
3.1.3 Service Classiﬁcation in Agents’ Societies . . . . . . . . . . . .
3.1.4 Matchmaking versus Brokering . . . . . . . . . . . . . . . . . . . . .
3.1.5 Middle Agents – Role Deﬁnitions for Mediating Agents
3.1.6 LARKS: Interoperability among Heterogeneous
Software Agents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.1.7 Matchmaking Approaches for Heterogeneous Active
Agents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
37
38
38
39
41
42
45
3
33
34
46
51
X
Contents
3.1.8 The InfoSleuth Approach . . . . . . . . . . . . . . . . . . . . . . . . . .
3.2 Electronic Negotiation Approaches . . . . . . . . . . . . . . . . . . . . . . . .
3.2.1 Electronic Negotiation – The Montreal Taxonomy . . . .
3.2.2 Electronic Negotiation Approaches with Information
Systems Focus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.2.3 Electronic Negotiation Approaches with Multi-Agent
Systems Focus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.2.4 Electronic Auctions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.3 Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.4 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
55
56
57
60
68
71
72
75
Part II The Multidimensional Matchmaking Approach
4
5
Matchmaking Architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.1 Concepts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.2 Generic Matchmaking Framework – Overview . . . . . . . . . . . . . .
4.2.1 Grappa Matchmaking Engine . . . . . . . . . . . . . . . . . . . . .
4.2.2 Grappa Matchmaking Library . . . . . . . . . . . . . . . . . . . . .
4.2.3 Grappa Toolkit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.3 Modelling Multidimensionality . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.4 The Grappa Framework . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.4.1 The Oﬀer and Request Description Language
(ORDL) of Grappa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.4.2 Basic Types in Grappa . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.4.3 Heterogeneous Oﬀer and Request Proﬁles . . . . . . . . . . . .
4.5 Distance Functions and Metrics . . . . . . . . . . . . . . . . . . . . . . . . . .
4.5.1 Metric Deﬁnition and Properties . . . . . . . . . . . . . . . . . . .
4.5.2 Distance Functions for the Basic Type FreeText . . . . . .
4.5.3 Distance Computations for Numbers, Intervals,
Dates, and Times . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.5.4 Aggregate Functions for Complex Types . . . . . . . . . . . . .
4.5.5 Weighting Paradigms for Complex Matchmaking . . . . .
4.6 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
79
79
80
81
82
83
83
84
108
111
114
117
Matchmaking Implementation . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.1 Scope . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.2 Applied Technology . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.2.1 JAVA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.2.2 RMI Server – Remote Method Invocation . . . . . . . . . . .
5.2.3 EJB – Enterprise Java Beans . . . . . . . . . . . . . . . . . . . . . .
5.3 Implementation of GRAPPA . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.3.1 Basic Entities and Processes . . . . . . . . . . . . . . . . . . . . . . .
5.3.2 Conﬁguration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
119
119
120
121
122
122
123
123
124
85
89
95
97
98
100
Contents
XI
5.3.3 Matchmaking JAVA-library
de.siemens.zt.ik6matching . . . . . . . . . . . . . . . . . . . . . . 127
5.3.4 Deployment as Enterprise Java Beans Component . . . . 130
5.4 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131
Part III Application, Evaluation & Outlook
6
Application in a Real-World Market . . . . . . . . . . . . . . . . . . . . . .
6.1 Scope . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.1.1 Human Resource Information Systems . . . . . . . . . . . . . .
6.1.2 Job Exchanges and Corporate Networks . . . . . . . . . . . . .
6.2 Project Background . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.3 HrNetAgent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.3.1 Adaption of Grappa for HrNetAgent . . . . . . . . . . . .
6.3.2 Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.4 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
135
135
135
136
137
138
139
140
140
7
Empirical Evaluation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143
7.1 Domain Independent Experiments with Grappa: Performance 143
7.2 Domain Speciﬁc Experiments . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
7.2.1 Method for Case Studies . . . . . . . . . . . . . . . . . . . . . . . . . . 145
7.2.2 Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
7.2.3 Measures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
7.2.4 Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148
7.2.5 Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151
7.3 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160
8
Conclusions and Outlook . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8.1 Review of This Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8.2 Future Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8.2.1 Limitations of This Approach . . . . . . . . . . . . . . . . . . . . . .
8.2.2 Extension of Multidimensional Matchmaking Using
Ontologies and Learning . . . . . . . . . . . . . . . . . . . . . . . . . .
8.2.3 Further Application of Multidimensional
Matchmaking in the Finance Domain . . . . . . . . . . . . . . .
8.2.4 Multidimensional Matchmaking, Web Services, and
the Grid . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
161
162
164
164
165
165
166
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169
Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177
List of Figures
1.1
Structure of this Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6
2.1
2.2
2.3
Example: Multidimensional and Multi-attribute Structure . . . .
Brokering, Matchmaking and Blackboarding . . . . . . . . . . . . . . . .
Electronic Auctions, Electronic Negotiations and Electronic
Markets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Intention and Agreement Phase . . . . . . . . . . . . . . . . . . . . . . . . . . .
Phases in Multidimensional Matchmaking – Deﬁnition and
Execution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
14
21
2.4
2.5
25
27
29
3.1
Interaction Phases of Electronic Negotiations . . . . . . . . . . . . . . . 57
4.1
4.2
Grappa Matchmaking Framework . . . . . . . . . . . . . . . . . . . . . . . . 81
Example RDS and ODS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
5.1
5.2
5.4
Simpliﬁed Example Candidate and Centroid Proﬁle. . . . . . . . . .
Simpliﬁed Example Candidate and Centroid Mapped and
Orthogonalized. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Class-Diagram for an Excerpt of Classes in
de.siemens.zt.ik6matching. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Grappa Implementation Overview. . . . . . . . . . . . . . . . . . . . . . . . .
6.1
HrNetAgent System Overview . . . . . . . . . . . . . . . . . . . . . . . . . . 139
7.1
7.2
7.3
7.4
Grappa Performance in the HrNetAgent Application . . . . . 144
Precision and Recall . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148
HrNetAgent: GUI for Centroid Speciﬁcation . . . . . . . . . . . . . . 149
Evaluation of Applicant Data for Assistants at Siemens AG:
AV HR Department vs. Grappa Matchmaker . . . . . . . . . . . . . . . 152
Evaluation of Applicant Data for Assistants at Siemens AG:
AV HR Department vs. MS Index Server (TM) . . . . . . . . . . . . . 152
Evaluation of Applicant Data for Communication Engineers
at Siemens AG: AV HR Department vs. Grappa Matchmaker 153
Evaluation of Applicant Data for Communication Engineers
at Siemens AG: AV HR Department vs. MS Index Server (TM)153
5.3
7.5
7.6
7.7
124
125
129
130
XIV
List of Figures
7.8
7.9
7.10
7.11
7.12
7.13
7.14
7.15
7.16
7.17
Evaluation of Applicant Data for System Architects at
Lufthansa Cargo AG: AV HR Department vs. Grappa
Matchmaker . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Evaluation of Applicant Data for System Architects at
Lufthansa Cargo AG: AV HR Department vs. MS Index
Server (TM) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Evaluation of Applicant Data for Procurement Referees at
Lufthansa Cargo AG: AV HR Department vs. Grappa
Matchmaker . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Evaluation of Applicant Data for Procurement Referees at
Lufthansa Cargo AG: AV HR Department vs. MS Index
Server (TM) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Evaluation of Applicant Data for Medical Doctors at
University Hospital Giessen: AV HR Department vs. Grappa
Matchmaker . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Evaluation of Applicant Data for Medical Doctors at
University Hospital Giessen: AV HR Department vs. MS
Index Server (TM) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Evaluation of Applicant Data for Laboratory Assistants at
University Hospital Giessen: AV HR Department vs. Grappa
Matchmaker . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Evaluation of Applicant Data for Laboratory Assistants at
University Hospital Giessen: AV HR Department vs. MS
Index Server (TM) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Correlation of ﬁve HR Experts Ranking the same Set of Data .
Evaluation of Applicant Data for Assistants at Siemens AG:
AV HR Department vs. MS Index Server (TM), Revised . . . . .
154
154
155
155
156
156
157
157
159
159
List of Tables
3.1
3.2
3.3
3.4
3.5
3.6
Speciﬁcation Slots in LARKS . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Five Steps of Matching in LARKS . . . . . . . . . . . . . . . . . . . . . . . . .
k-nearest-neighbor Algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Range-algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Comparison of Negotiation Approaches . . . . . . . . . . . . . . . . . . . . .
Comparison of Matchmaking Approaches . . . . . . . . . . . . . . . . . . .
48
50
54
55
73
74
4.1
4.2
4.3
4.4
4.5
Basic Types for Concrete Matchmaking in the Grappa ORDL
Sample XML-DTD Using Grappa . . . . . . . . . . . . . . . . . . . . . . . .
Sample OSI as XML-Instance . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Sample RSI as XML-Instance . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Document Frequencies and Weights in the Example Text. . . . .
90
93
94
95
102
5.1
5.2
5.3
5.4
Example Conﬁguration Instance for the Grappa Matchmaker
de.siemens.zt.ik6matching Components . . . . . . . . . . . . . . . . .
JAVA-Interface ”Match” . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
JAVA-Interface ”Conﬁgure” . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
126
127
128
128
1 Introduction
Negotiation is a key component of e-commerce.
In automated negotiation, computational agents
ﬁnd and prepare contracts on behalf of the
real-world parties they represent.
Tuomas Sandholm (1999)
The research domain of electronic negotiations – a new and interdisciplinary
area – has become more and more important within the last years. Electronic
negotiations are a fundamental mechanism to support automated decisionmaking among two or more involved parties by determining the best ﬁtting counterpart for a mutually beneﬁcial deal. Electronic negotiations and
multidimensional matchmaking deﬁne important building blocks within the
research area of electronic markets.
The topic of this work is multidimensional matchmaking, a process to determine quality rankings between oﬀers and requests in electronic coordination
scenarios. Especially in electronic negotiations matchmaking plays a central
role. The general idea deﬁning matchmaking methodologies is to provide automated mechanisms which allow a detailed and precise ranking on a set of
oﬀers to determine which oﬀer ﬁts a concrete request best (see Sycara et al.
1999).
At the same time, intelligent software agents start to evolve and gain importance in the research areas of automated negotiation. Since the discipline
of intelligent software agents has become an integral component within the
Distributed Artiﬁcial Intelligence (DAI) research, approaches which combine
software agent technology with electronic negotiation capabilities from economic disciplines are presented (see Varian 1995).
Within the relationship between intelligent agents and electronic negotiations
multi-attribute and – to the understanding of this work – multidimensional
scenarios are of prime interest. Over the past few years these issues have
become a central research aspect in economics and computer science research
(see Bichler and Kalagnanam 2002; Sandholm 2000).
D. Veit: Matchmaking in Electronic Markets, LNAI 2882, pp. 3-7, 2003.
 Springer-Verlag Berlin Heidelberg 2003
4
1 Introduction
1.1 Motivation
The mission of this work is to contribute to the application, integration and
impact of economic mechanisms and their design in modern, IT-based market
infrastructures. A lot is to be done, applying fruitful research results from
computer science areas to economic problems. This work contributes to this
integration process which is gaining speed within the last years.
In electronic markets, services, goods and more generally said commitments
are traded. In contrast to traditional markets, no human traders or human
marketmakers are present to determine the best ﬁtting counterparts for a
deal. Instead, intelligent autonomous software individuals are authorized to
enable market transactions on behalf of the human participants.
Many problems have to be faced when traditional markets are moving to electronic media. One central problem is multidimensional matchmaking among
oﬀer and request instances as a phase of complex multidimensional electronic
negotiations. In markets oﬀers and requests are representing the positions of
the participants. Taking a look at diﬀerent markets in diﬀerent domains parallels can be drawn facing the matchmaking problem. In most cases, instances
of texts, dates, prices and their domains have to be compared using intelligent
mechanisms. After that, the ratings of these instances need to be combined.
The central research question in this work is the
•
•
•
•
•
•
conception,
deﬁnition,
modelling,
implementation,
application and
evaluation
of intelligent matchmaking mechanisms for electronic markets. The work provides a generic and domain independent modelling of the multidimensional
matchmaking problem in electronic markets. This model is then applied to a
speciﬁc market for which the generic matchmaking framework was adjusted.
Several promising results have been derived.
In 1999 Siemens Business Services1 and the Siemens AG Corporate Technology, Competence Center for Intelligent Autonomous Systems2 initialized
a project with the target customer Federal German Employment Agency3
to develop an intelligent matchmaking component for electronic, web-based
negotiations in the german human resources market.
1
2
3
http://www.sbs.siemens.com (06/25/2002)
http://www.ct.siemens.com (06/25/2002)
http://www.arbeitsamt.de (06/25/2002)
1.2 Reader’s Guide
5
This project background was ideally suited to develop a generic, conﬁgurable
and intelligent matchmaking framework Generic Request Architecture for
Passive Provider Agents, short Grappa , together with Siemens AG CT.
Grappa has been patented internationally (China, Japan, USA and several
countries in Europe) under publication number WO02/06974 (ﬁle number
PCT/DE01/02407 and DE10034694.4) and applied in a large scale commercial prototype.
1.2 Reader’s Guide
This work contributes a deﬁnition of matchmaking fundamentals, an overview
on matchmaking research as well as a structured and formal deﬁnition of a
generic matchmaking framework. An implementation of this framework is
introduced as well as a real-world application of the framework to a real
life market. This market application is evaluated in comparison to human
resources specialists’ opinions as well as state-of-the-art indexing methods.
1.2.1 Structure of This Work
Figure 1.1 illustrates the structure
duction in this chapter as well as
in Chapter 2. Chapter 3 presents
Chapter 2 which provides next to
key deﬁnitions.
of this work. Part I comprises the introthe overview, deﬁnition and framework
related work. The reader may focus on
terminology, general understanding and
Part II provides the multidimensional matchmaking model and implementation. In Chapter 4 a formal model for the Grappa matchmaking system
is introduced. The implementation issue is described in Chapter 5. For implementation details on the framework the reader is referred to the javadoc
documentation of the Grappa framework.
Finally, Part III contains the real-world application of Grappa in the human
resources domain – the HrNetAgent project. Here, human resources information systems (HRIS) and HR-based enterprise resource planning (ERP)
systems are introduced in Chapter 6. Chapter 7 contains the empirical evaluation of the Grappa framework in three branches:
• Siemens AG Corporate Technology HR, Munich, Germany.
• Lufthansa Cargo AG HR, Frankfurt, Germany.
• University Hospital Giessen Internal Medicine HR, Giessen, Germany.
The results of the evaluations are presented in Chapter 7. Finally this work
is reviewed and an outlook on the future work is given in Chapter 8.
6
1 Introduction
Part I Fundamentals & Related Work
Introduction
Motivation
Thesis context
Terminology, Overview and Framework
Terms and Definitions Research Domain
Related Work
State-of-the-Art
Research Areas
Part II Multidimensoional Matchmaking Approach
Matchmaking Architecture
Formal Definition of the Architecture
Matchmaking Implementation
Implementation of the Framework
Part III Application, Evaluation & Outlook
Application in a Real World Market
Application in a specific domain
Domain Background
Empirical Evaluation
Evaluation of the Approach
Conclusions and Outlook
Thesis review
Outlook
Figure 1.1. Structure of this Work
1.2.2 Historical Perspective
The most important research results from the Grappa project have been
published within the past two years in several articles. In Eiter et al.
1.2 Reader’s Guide
7
(2001) the general understanding of multidimensional matchmaking as well
as matchmaking for arbitrary objects is introduced. The focus is concentrated
on matchmaking in electronic marketplaces in Veit et al. (2001). The application of multidimensional matchmaking mechanisms in electronic markets is
analyzed in Veit et al. (2002b). Finally the Grappa framework is empirically
evaluated in Veit et al. (2002a).
The work on hand incorporates the research results derived from the Grappa
project so far and embeds them into a formal overall basis for matchmaking
in electronic negotiations. Several important details have been published in
the articles described above.
2 Terminology and Overview
The terms and deﬁnitions from the research areas of economics and computer
science are not homogenous. The aim of this part of the work is to deﬁne a
terminology which provides a basis for the deﬁnition of a multidimensional
matchmaking framework.
In the economic research area negotiations and electronic negotiations within
today’s electronic markets are investigated. In computer science the areas of
Information Retrieval (IR) and Distributed Artiﬁcial Intelligent (DAI) with
the notion of Multi-Agent Systems (MAS) are concerned. It is the mission of
this chapter to provide deﬁnitions from these areas which refer to each other
and combine the potential of all three ﬁelds of research to provide a solution
to an important problem within today’s electronic markets.
The chapter is structured as follows: Focussing on the applied terminology
in Section 2.1 as well as shaping the approach by deﬁning the general ﬁeld in
Section 2.2 opens the chapter.
These topics are followed by Section 2.3 outlining the role of matchmaking
in multidimensional electronic negotiations. Subsequent to this section the
phases of the multidimensional matchmaking process are outlined.
These constituent contributions are followed by sections which deal with an
overview on the applications of matchmaking: In Section 2.5 some domains for
multi-attribute negotiations are introduced. These domains are outlined here
and one of those, the domain of matchmaking in human resources negotiation,
is discussed in more detail preparing Chapter 5.
2.1 Terminology
The central deﬁnitions and terms which are used in this work are presented
here. The creation of the multidimensional matchmaking framework which
has been developed within the last three years is driven by two main directions.
In Economic research a phase oriented sight is considered. Within this research area the concept of an electronic market and its phases play a central
D. Veit: Matchmaking in Electronic Markets, LNAI 2882, pp. 9-35, 2003.
 Springer-Verlag Berlin Heidelberg 2003
10
2 Terminology and Overview
role for this work. There exist diﬀerent approaches to the notion of an electronic market. This term is discussed in detail in the following.
Electronic negotiations play a very important role within today’s applications
of electronic markets. Research on electronic negotiations is a very important
and up to date topic and currently engages a wide variety of researchers from
many diﬀerent disciplines. The deﬁnitions which lead to the term electronic
negotiation as they are presented here focus, generally spoken, on the role
that electronic negotiations play in markets. Electronic negotiations are understood as a mechanism to coordinate among oﬀers and requests in economic
markets.
2.1.1 Economic Concepts Used in This Work
The central economic concepts for this work are deﬁned in a bottom up
way. Starting from electronic media the concept of an electronic market and
electronic negotiation is introduced.
As Ströbel and Weinhardt (2002) state in the Montreal Taxonomy for eNegotiations the notion of electronic negotiations is based on the deﬁnition of
the term media and the media reference model (MRM, see Schmid 1998). In
this context the term medium (pl. media) is deﬁned as follows:
Deﬁnition 2.1.1 Media
Media are (software) platforms where interaction among entities is
applied to coordinate the exchange of services or goods. An electronic medium (eMedium) is a medium of electronic (digital) channels which transport data.
Based on this deﬁnition of media the notion of a transaction can be introduced:
Deﬁnition 2.1.2 Transaction, Agent
A transaction is deﬁned as the process of transferring one or more
services or goods from one entity to another, called agents.
Here, entities are system participants. It is currently insigniﬁcant which kind
of they are. Transactions are mostly not performed in a stand alone way. The
term deal is introduced to enable clusters of transactions.
2.1 Terminology
11
Deﬁnition 2.1.3 Deal
The clustering of a set of transactions which belong together, performed at a certain point in time by two or more entities on a medium
constitute a deal.
In a deal at least two parties play a role. One is supporting a service or good
and one is requesting it. These roles are speciﬁed in the following deﬁnition.
Deﬁnition 2.1.4 Oﬀer, Request
An oﬀer is a speciﬁcation of an entity which is interested in supporting
its capabilities, a good or service to another entity (counterpart) for a
mutually calculated gain (win). A request deﬁnes a certain demand,
specifying the capabilities, the good or service needed to fulﬁl the
needs of the requesting agent. On eMedia, oﬀers and requests are
formalized in a machine readable and understandable way.
After deﬁning what a deal is and how oﬀers and requests are arranged into
these concepts, now the notion of an electronic market can be introduced:
Deﬁnition 2.1.5 Electronic Market (eMarket)
If the deals, executed on the medium are economic goods, the medium
is deﬁned to be an electronic market (eMarket).
The foundations are now layed to deﬁne the understanding of electronic negotiations in this work. Before a deal can take place in an electronic market,
the counterparts have to agree on the deal’s content. This means that an
oﬀer and a request have to be speciﬁed and a commitment has to be agreed
on. The requester commits on accepting the oﬀer under the given conditions
and the supplier commits on the conditions of the requester.
Deﬁnition 2.1.6 Electronic Negotiation (eNegotiation)
An electronic negotiation is an oﬀer and request based communication
and decision making process within an eMedium with at least one or
more explicit and enforced rule(s), where at least one communication
or decision-making task is assisted.
This deﬁnition of electronic negotiations in the sense it is used in this work
is referring to the deﬁnition given by Ströbel and Weinhardt (2002) in the
Montreal Taxonomy. More precisely, it covers the deﬁnition of electronic negotiations in the narrow sense. A wider sense of deﬁning eNegotiations would
12
2 Terminology and Overview
include oﬀer and request exchanging via an unstructured communication
medium such as a chat room.
Now the term electronic auction is considered which is seen as a special type
of eNegotiations. The following deﬁnition is related to the deﬁnitions given
by Weinhardt (2002) and Bichler et al. (2002).
Deﬁnition 2.1.7 Electronic Auction (eAuction)
An auction is a mechanism to sell an object (good, service, etc.) under
application of a bidding process with concurring bidders. The bidding
process underlies a strict protocol which enables the participants only
limited kinds of interaction.
EAuctions play a major role in todays electronic commerce applications on
the Internet. The main reason is the fact that auction protocols are suited for
easy implementation in programming languages due to the strictness of the
auction protocols. Beam and Segev (1998) give an overview on the spread of
usage of protocols for negotiations on the Internet. Hence, many classical auction protocols have been implemented in electronic commerce applications.
Auction mechanisms and, consequently, eAuction implementations provide a
narrow negotiation paradigm. The term eNegotiation aims on a wider ﬁeld
of negotiations to be represented in electronic media.
The domain of eNegotiations is an active and ongoing research area. Many
diﬀerent groups are involved into the deﬁnition, the development and the
usage of eMedia for negotiation purposes. There is the Information Management and Systems domain in which currently the above mentioned Montreal
Taxonomy is developed which classiﬁes and analyses the aspects and issues
which are important, deﬁning eNegotiations.
In Chapter 3 research directions and concrete applications are discussed in
more detail. In the following the key deﬁnitions for multidimensional matchmaking are presented.
2.1.2 Concepts from Computer Science
Two research issues are focussed here: Firstly, the notion of multidimensional
matchmaking is introduced. Secondly, the domain of Multi-Agent Systems
(MAS) and within those the notion of intelligent autonomous agents is deﬁned. In this work MAS and intelligent autonomous agents are used as a
modelling paradigm to realize multidimensional matchmaking mechanisms
in electronic negotiations.
Terms and Deﬁnitions for Matchmaking The notion of matchmaking
is introduced in a bottom up way. Starting from the common concept of an
information object matchmaking is deﬁned via several auxiliary concepts.
2.1 Terminology
13
Deﬁnition 2.1.8 Atomic Type, Complex Type
An atomic type is a well deﬁned type which is semantically not further
separable: E.g. integer, real, free text, identiﬁcation number, time,
date, etc.
A complex type is always compound from atomic types. The complex
type constructors which are mainly used are
(i) List: A list of elements is a (possibly empty) row of elements
which ends with a terminating symbol.
(ii) Set, multiset: A set of elements is an unordered collection of elements of the same type. A multiset is a set in which two or more
elements can be identical.
(iii) Record: A record of elements is a consecutive row of a ﬁxed number of n elements of possibly heterogeneous type.
(iv) Array: An array of elements is a consecutive row of a ﬁxed number
of n elements of the same type.
A complex type is deﬁned by inserting one or more atomic types into a
complex type constructor. The types can be cascaded by recursively calling
one or more complex type constructors after one another.
Deﬁnition 2.1.9 Attribute, Dimension
(1) An attribute is a concrete element of a structure, having a speciﬁc atomic type. Depending on semantics which the current application demands atomic types can be deﬁned either strictly or
in a more relaxed way. If the attribute is deﬁned strictly, only instances of the speciﬁc atomic type are allowed as instances. If the
relaxed deﬁnition is chosen, the semantics of this speciﬁc aspect
of the description of the good or service are not binding, i.e. the
attribute represents a container.
(2) A dimension is a ﬁeld which can be addressed separately and
consists of several attributes. Designing structures dimensions
are created from attributes which are topologically belonging together. Also lists, records, sets, multisets or arrays, which are
the main complex type constructors can be used to compose a
dimension from attributes.
Deﬁnition 2.1.10 Multidimensional, Multi-attribute
(1) With the term multidimensional the structures with more than
one dimension are described. Dimensions can contain attributes
or subdimensions themselves. Subdimensions can again consist of
subdimensions or attributes.
(2) The term multi-attribute is weaker than the term multidimensional. Multi-attribute eNegotiations or multi-attribute match-
14
2 Terminology and Overview
making is performed on more than one attribute. Hence a multiattribute matchmaking or eNegotiation process is a process which
performs a negotiation or distance computation on records or sets
of attributes. In multi-attribute structures no substructures are
allowed.
Multidimensional
Multi-attribute
Dimension 1
Attribute 1
Dimension 2
Attribute 2
List of Attribute 1
Dimension 3
Set of
Attribute 2
Attribute 3
Attribute 4
Attribute 5
Attribute 6
Dimension 4
Subdimension 1
Subdimension 2
Attribute 1
Figure 2.1. Example: Multidimensional and Multi-attribute Structure
In Figure 2.1 a simple example for both, multidimensional and multi-attribute
negotiation object structures is given.
In applications an important issue is the semantic dependence or independence of attributes and dimensions. This issue – which corresponds to the
deﬁnition of orthogonality in Mathematic contexts – is focussed in Chapter 4.
Deﬁnition 2.1.11 Information Object (IO)
An information object is an object which speciﬁes the information of
an oﬀer or a request. An information object can be composed from one
or more attributes or dimensions. Consequently an information object
is called multidimensional or multi-attribute. It has an Information
Object Structure (IOS) which is the form describing the structure of
2.1 Terminology
15
the content which is encapsulated by a concrete object. This structure
is well deﬁned and can be instantiated by information objects.
Between an oﬀer and a request information object a distance can be computed. This is done in a recursive procedure which computes a distance on attribute level and continues computing complex distances on dimension level.
Finally, an overall distance is computed on information object level. This
distance deﬁnes the distance or score the concrete oﬀer information object
has reached regarding the current request information object.
Deﬁnition 2.1.12 Attribute Distance Function, Complex Distance
Function, overall Distance Function
Generally a distance function is a function which takes as input two
elements from their value domains and maps them to a distance value
v ∈ [0; 1). There are three types of distance functions considered in
this work:
(i) Attribute distance function: An attribute distance function
takes as input two attribute instances, one from the request and
one from the oﬀer, and computes a distance value vatt ∈ [0; 1)
which reﬂects the distance. This value reﬂects the distance of the
attribute from the oﬀer instance to the regarding attribute of the
request instance.
(ii) Complex distance function: A complex distance function
takes as input the results of all attribute distance functions which
occur in a dimension. These are aggregated and a complex distance value vcom ∈ [0; 1) is computed which reﬂects the distance
of the dimension of the oﬀer instance towards the current request
instance.
(iii) overall distance function: Finally an overall distance function represents the function, which aggregates all dimension (or
top level attribute) distance values to one overall distance value
voverall ∈ [0; 1). This overall distance value represents the distance of the current oﬀer information object towards the respective dimension of the request information object.
(ii) is not needed in case the considered scenario is a multi-attribute
scenario. Then in (iii) the so called top level dimensions composed to
the overall distance.
Now the foundations are layed to focus on the deﬁnition of matchmaking.
Deﬁnition 2.1.13 Matchmaking
Let O be a set of oﬀers and r ∈ R be one request from a possible set
of diﬀerent requests. Matchmaking is seen as the task to compute the
16
2 Terminology and Overview
best ﬁtting potential counterparts for a transaction execution. The
matchmaking procedure computes
(i) an order
ordr : O × O → {−1, 0, 1}
on O where for o1 , o2 ∈ O: ord(o1 , o2 ) = −1 means that o1 is less
relevant to r than o2 , ord(o1 , o2 ) = 0 means that o1 and o2 are
equally relevant to r and ord(o1 , o2 ) = 1 means that o1 is more
relevant to r than o2 as well as
(ii) a distance
relr : R × O → [0; 1)
for each tuple (r, o), i.e. one request r ∈ R and one oﬀer o ∈ O.
The distance is a real value between 0 and 1 (distance value) and
is computed under application of an overall distance function,
recurring to atomic distance functions.
Overall, the matchmaking procedure takes as input a tuple (r, O),
where r is one concrete request and O is a set of oﬀers. The same
tuple is given as output, where the set O is ordered, i.e., for each
o ∈ O a distance value relro is computed and assigned to the oﬀer
o. So the output tuple is deﬁned as (r, Oranked ). Depending on the
applications properties the roles of oﬀers and requests can also be
swapped (one oﬀer matched against a set of requests).
This deﬁnition of matchmaking speciﬁes the procedure which is performed
semantically. It is a non trivial task to realize matchmaking in multi-attribute
or even multidimensional scenarios. The challenge is to deﬁne and realize a
matchmaking component which is conﬁgurable, implementing arbitrary multidimensional information object structures as well as supporting several distance functions for distance calculation. This is done in Grappa which is in
detail introduced in Chapter 4 and Chapter 5. In Chapter 3 also the correlation between matchmaking and the matching phase in electronic negotiations
is focussed.
The Domain of Multi-Agent Systems Software techniques and paradigms which are used conventionally for implementation of complex systems
do not meet the demands which are needed to model generic matchmaking
processes. In matchmaking processes two or more counterparts take part. To
model an electronic market eﬃciently it is straightforward to assign each oﬀer
and each request to an autonomously acting market participant. Each oﬀer
and each request should be represented by a software entity which knows
about the properties and is able to represent the will of its owner.
2.1 Terminology
17
Deﬁnition 2.1.14 Properties, Will
(1) The properties of the owner of an oﬀer or a request are the oﬀer
and request speciﬁcations which are determined in the oﬀer and
request representations.
(2) The will of the owner is deﬁned within the concrete oﬀer or request instance by specifying negotiation thresholds for each dimension or attribute as well as importance weights. These values
indicate the direction in which the oﬀer can be degraded or upgraded in the view of the owner.
When an owner of a software entity which represents an oﬀer or a request
inserts his or her speciﬁcation into an electronic market, this owner is called
market participant.
The properties of the oﬀers and requests can be mapped into an information
object structure which is designed for a market application. Another important issue is the scaleability. An electronic market approach should be able
to deal with few, more or even a huge amount of oﬀers and requests.
Multi-Agent Systems (MAS) are based on a paradigm which is developed in
the research domain of Distributed Artiﬁcial Intelligence (DAI) and meets
the desiderata listed above. The research domain of MAS has been focussed
by many diﬀerent groups in various ﬁelds. The deﬁnition of a software agent
– one autonomously acting unit in a MAS – has been discussed in depth
in literature but no uniform deﬁnition has been agreed on. Wooldridge and
Jennings (1995) and Wooldridge et al. (1996) give a deﬁnition which is used in
wide areas of DAI. The Foundation of Intelligent Physical Agents (FIPA) also
presents a deﬁnition in the FIPA 1997 speciﬁcation FIPA Members (1997).
Further speciﬁcations have been proposed. Also Subrahmanian et al. (2000)
present a related view of heterogeneous agents which communicate using a
uniform language.
Deﬁnition 2.1.15 Agent Communication Language (ACL)
An agent communication language is a language with precisely deﬁned syntax, semantics and pragmatics that is the basis of communication between independently designed and developed software
agents.
The most prominent example for an ACL is the FIPA-ACL deﬁned in depth
in the current FIPA standard. Based on the properties and deﬁnitions given
above the notion of a software agent with respect to its application in this
work is deﬁned. See Wooldridge and Jennings (1995) and Weiss (1999) (p.32).
18
2 Terminology and Overview
Deﬁnition 2.1.16 Software Agent
A software agent is a piece of software which has the following properties:
• Autonomy: A software agent should be able to fulﬁll the majority of their tasks without explicit permission of its owner. It
should control, decide and execute its tasks without further communication with its owner, i.e. autonomously.
• Proactiveness/Consciousness: A software agent should be
proactive, i.e. it should be able to initiate an action in order to
solve the tasks it is designed to.
• Reactiveness: A software agent should be able to respond, based
on its knowledge and cooperation model on actions of other agents
participating in the system. An agent should be able to recognize
changes in its environment and take these into its consideration
for future actions.
• Social behavior: A software agent should be able to communicate, interact and cooperate with other software agents in order
to solve its tasks. These communication and interaction processes
include cooperative and competitive behavior.
The ﬁrst three of these properties describe the properties of a single agent.
Consequently it is possible to implement those more or less directly. The
fourth property is a property which focuses on the entire Multi-Agent System.
Wooldridge and Jennings (1995) describe this property as a weak notion of
agency which has to be made explicit.
Deﬁnition 2.1.17 Multi-Agent System (MAS)
A Multi-Agent System is a software system which consists of a set of
software agents (two or more) exchanging goals (solution of a task)
for a mutual beneﬁcial cooperation. The (autonomous) agents which
are the elements of a MAS can have diﬀerent degrees of autonomy.
The degree of the autonomy of an agent depends on the amount of decision
space the agent’s owner is providing to its agent. An agent has only a low
degree of autonomy when the user has to decide each step, before the agent
is allowed to commit to another agent. Whereas an agent has a high degree
of autonomy if the user passes on a big amount of decision capability to its
agent (see Faratin 2000). Furthermore it is distinguished between open and
closed MAS.
2.1 Terminology
19
Deﬁnition 2.1.18 Closed MAS
A closed MAS is referred to as a system which is characterized by a
central designer undertaking the following steps in the system design
methodology:
1. Deﬁnition of the global problem(s).
2. Mapping and assigning subproblems and resources to software
agents, either dynamically at run-time or statically at designtime.
3. Central conﬁguration of all agents, specifying their agent’s behaviors in ongoing interactions with other software agents.
4. Using an agent communication language (ACL) to allow the
agents to solve the problems in step 1.
A closed agent system is also referred to as a distributed problem solving
(DPS) system (see Durfee and Rosenschein 1994). This methodology is problem centered and refers to an approach, applying agent technology for the
solution of problems which usually have been solved in centered systems before.
In this context the problem to be solved is speciﬁed in step 1. A central
designer creates a ﬁxed and static society of computational agents in step
2, who interact repeatedly (exchanging subproblems, plans and information)
using the ACL in step 4. In this manner, they collectively solve a well structured and objective global problem. Here, agents are often homogeneous in
architecture, languages and reasoning, see step 3, and act cooperatively, i.e.
they are motivated to help one another to solve the global problem.
Deﬁnition 2.1.19 Open MAS
An open MAS is a Multi-Agent System, which is characterized by a
number of designers undertaking the following steps in the systems
design methodology (see also Faratin 2000):
1. Either deﬁne a global problem or allowing the problem to dynamically emerge.
2. Nominating/selecting (pre-existing) autonomous agents to enter
interactions.
3. Conﬁguration of the agents the designers want to use.
4. Using an agent communication language (ACL) to allow the
agents to identify conﬂicting issues and solve problems in step
1.
Open MAS are also characterized as encounters, where pre-existing agents
come together infrequently to solve a problem, trade goods, commitments or
services, or, alternatively where problems emerge dynamically in the course
of interactions. This interaction is centered to the individual agents’ beneﬁt
20
2 Terminology and Overview
which makes one main diﬀerence towards closed agent systems where the individual agents subordinate to the solution of the common problem. Any agent
is free to come and go. It is also possible for external entities to cooperate
with heterogeneous software agents, which are designed using diﬀerent software platforms. Coordination in heterogeneous software agent applications is
studied in detail by Subrahmanian et al. (2000).
Now speciﬁc kinds of agents in open MAS are introduced. In an eMarket
there are diﬀerent roles which have to be covered. On the one hand there
are the participating parties represented by software agents as deﬁned above.
These agents communicate on a platform using a common ACL. In order
to implement an eﬃcient eMarket using software agents certain agents, who
are not taking part in the actual eMarkets business are needed to mediate
between the market participants. This leads to the notion of middle agents,
see also Decker et al. (1997). The term middle agent is an umbrella term
referencing diﬀerent types of agents playing diﬀerent roles.
Deﬁnition 2.1.20 Middle Agent
A middle agent is an agent which mediates between oﬀering and
requesting agents. There are several diﬀerent middle agent roles possible.
Deﬁnition 2.1.21 Broker Agent, Matchmaker Agent and
Blackboard Agent
See also Figure 2.2.
(1) Broker agents collect both, oﬀers and requests. A broker agent
plays two roles: It represents the centroid for all candidates as
well as the candidate for all centroids.
(2) Matchmaker agents collect oﬀers. A matchmaker agent only
plays one ﬁxed role. It collects oﬀers and provides ranked lists of
appropriate oﬀers to centroids.
(3) Blackboard agents collect requests. A blackboard agent works
inversely to the matchmaker agent and, therefore, also plays only
one ﬁxed role.
Deﬁnition 2.1.22 Centroid, Candidate
(1) A centroid is deﬁned as an agent carrying a request.
(2) A candidate is deﬁned as an agent carrying an oﬀer.
This deﬁnition is chosen due to the fact that in the matchmaking applications in this work, always 1 : n matchmaking processes are considered. Consequently, the centroid is always a single representant of one matchmaking
side.
2.1 Terminology
Brokering
Request
Centroid
Broker
Reply ranked offers
Request for Service
Candidate
Place offer
Matchmaking
Request
Centroid
Reply Candidate
Matchmaker
List
Direct
Communication
Candidate
Place offer
Blackboarding
Request
Candidate
Reply Centroid
Blackboard
List
Direct
Communication
Centroid
Place offer
Figure 2.2. Brokering, Matchmaking and Blackboarding
21
22
2 Terminology and Overview
Obviously, all three middle agent approaches from above hold certain advantages and disadvantages. Brokers provide a maximum in privacy: The
centroid and the candidates are not known to each other because all communication is running over the broker. On the other hand the broker represents
a communication bottleneck. Matchmakers on the other hand are well suited
for markets providing high liquidity on the oﬀer side. They are in this way
computationally more eﬃcient but provide only limited privacy.
Blackboards are on the other hand well suited for markets providing high
liquidity on the request side. But also provide only little privacy.
In the economic sense, agents are deﬁned as entities in market scenarios. Regarding the deﬁnitions from Section 2.1.1 in transactions at least two counterparts play a role. These counterparts are deﬁned as agents.
Deﬁnition 2.1.23 Agent
An agent is deﬁned as an acting entity in the market scenario. This
might e.g. be a human negotiator, an organization or an autonomous
software agent. It is the fundamental actor in a domain. It combines
one or more service capabilities or encapsulations of goods or services
into a uniﬁed and integrated execution model which can include access to external software, human users and communication facilities.
In this work, the role of an agent in a market scenario – deﬁned in the economic sense – is mapped to a software agent to represent market participants
in a partially automated electronic medium.
2.2 General Field
In many areas of electronic information processing matchmaking plays a crucial role. The term matchmaking often addresses diﬀerent procedures.
In the last section detailed deﬁnitions were provided which are now used to
integrate the heterogeneous disciplines from economics and computer science
to this work.
In the context of electronic negotiations, the term matchmaking is used when
a request and an oﬀer of a service, a good or a property are compared using
automated techniques. These techniques vary strongly from domain to domain. The matchmaking procedure is mostly divided into many steps, subprocedures and uses several tools. In this work many of these techniques
applied in matchmaking are introduced. The main application domain is the
modelling of eMarkets using the paradigm of Multi-Agent Systems (MAS).
Within eMarkets a strong focus are multidimensional electronic negotiations.
This special type of negotiation which has recently gained interest in the
2.2 General Field
23
research community is illuminated in detail in this work. The matchmaking
concepts developed in this research contribution are not exclusively bound to
Multi-Agent Systems. The mechanisms can be applied to any computational
domain.
As an application on which the capabilities of the matchmaking approach will
be demonstrated, the prototype implementation of a generic multidimensional matchmaking component is introduced. This prototype implements
the theoretic multidimensional matchmaking framework Grappa in a JAVA
package.
2.2.1 Electronic Markets
As to Schmid (1993) electronic markets are deﬁned following three phases.
When combined, these phases deﬁne an electronic market.
Deﬁnition 2.2.24 Electronic Market
An electronic market is a coordination mechanism by which a transaction is supported in three phases:
(i) Information and Approach phase: In this phase possible
transactions are approached. Possible actors exchange information on the goods, services or contracts which are oﬀered or requested.
(ii) Intention and Agreement phase: In this phase oﬀers and
requests of the market participants are coordinated and the conditions are negotiated.
(iii) Clearing and Settlement phase: Finally, the transfer of services or goods is performed according to the negotiated conditions.
This formalization of electronic markets is very open and allows a wide range
of technologies and methodologies to be applied for coordination among oﬀers
and requests. Firstly it is diﬀerentiated which technologies can be applied in
electronic markets, regarding this deﬁnition.
An electronic market is a system based on information technology which
covers all or at least one phase of the market transaction process. From these
deﬁnitions some relevant properties of electronic markets can be derived.
• Because of the application of information technology in electronic markets
neither goods (traded items) nor actors have to be geographically concentrated.
• Electronic markets assist the participants in exchanging digital goods, services or, more general, property rights and to lead in an eﬃcient way to a
conclusion of a contract.
24
2 Terminology and Overview
In traditional markets there are numerous sub-problems which are solved
by humans and applied to make the market work properly. Switching to the
paradigm of electronic markets makes it necessary to solve these sub-problems
in electronic procedures.
Many of these problems can be addressed straightforward. Communications
which take place face to face among humans can be mapped to electronic networks. Information about oﬀers and requests can be stored on highly eﬃcient
storage media.
But there remain sub-problems which are hard to formalize and solve in electronic markets. One of these is the coordination among oﬀers and requests.
The two major coordination problems which have to be considered are
(i) The selection of (a subset) of all available oﬀers for a request with
whom a negotiation would be possible (in the information and approach
phase).
(ii) The automatic comparison of oﬀers and requests to determine the best
oﬀer for a given request in each step of a negotiation (in the intention
and agreement phase).
Both of these problems are addressed with the matchmaking approach in this
work.
2.2.2 Electronic Negotiations and Electronic Auctions
The intention and agreement phase in electronic markets is addressed by
diﬀerent market coordination mechanisms. The main roles play electronic
negotiations and electronic auctions. In current electronic market approaches
electronic auctions are mainly applied for the determination of the counterparts of a contract.
But auctions and so electronic auctions have certain disadvantages and limitations. One main problem is the reduction to price. While it is easy to implement and formalize auction mechanisms for single-attribute applications
like in most scenarios where highly standardized products are traded, where
only the price has to be negotiated, it is hard and computationally costly to
formalize auction mechanisms for multi-attribute or even multidimensional
domains. E.g. applications in which attributes besides the price have to be
agreed on.
While electronic auctions are applied in practice since several years, electronic
negotiations research is at the very beginning of intense research. They try
to implement real life negotiations applying programming paradigms. Regarding the view of this work electronic auctions ar a subﬁeld of electronic
negotiations, i.e., every electronic auction is an electronic negotiation but not
vice versa. This is also shown in Figure 2.3.
2.2 General Field
eAuctions
eNegotiations
25
eMarkets
Figure 2.3. Electronic Auctions, Electronic Negotiations and Electronic Markets
2.2.3 Multi-Agent Systems
Within coordination approaches for Multi-Agent Systems in computer science
several concrete matchmaking approaches have been proposed so far. These
approaches are studied in depth in this work in order to derive some of the
expertise which has been gained in this ﬁeld. However, the approach presented
in this work exceeds the known approaches in several areas. Most approaches
presented in literature, like Sycara et al. (1999) or Subrahmanian et al. (2000)
and Arisha et al. (1999) focus on matchmaking procedures which have a given,
non-ﬂexible object structure and are designed for a speciﬁc problem.
The most important aspect is to diﬀerentiate in which application level the
matchmaking procedure is applied in an agent system. Agent based approaches can be divided into approaches where agents are used as implementation technique as well as into approaches where the properties of software
agents are used to incorporate business logic. Corresponding to these two
directions, matchmaking within agent systems can be seen in two diﬀerent
ways.
(1) In MAS, on the one hand matchmaking can be used for the comparison of service descriptions of agents. This type of matchmaking is a task
which is integrated into the technical foundation of Multi-Agent Systems.
Agents can ﬁnd other agents via their service description which every
agent carries. This matchmaking enables distributed problem solving using services of other agents. An approach which is tending towards this
direction is presented by Sycara et al. (1998) in their approach Language
for Advertisement and Request for Knowledge Sharing Larks.
(2) On the other hand matchmaking in agent systems can be used to perform
a determination of distance among proﬁles which contain application
and user speciﬁc information. This matchmaking enables the application
of the Multi-Agent Systems paradigm for solving real-world problems
such as ﬁnding the right oﬀer for a request in a market scenario. Using
26
2 Terminology and Overview
this type of matchmaking the programming paradigm of Multi-Agent
Systems is only used as a tool to model market coordination mechanisms
with heterogeneous market participants. The focus here is not on the
internal coordination among the individuals in the Multi-Agent System
itself, but on the application of the multi-agent paradigm for real-world
problem solving, e.g. market coordination. An approach which shows the
potential of multi-agent technology for this issue is given by Weinhardt
and Gomber (1999) with their agent mediated trading approach Agent
Mediated TRAding System Amtras.
Of course, a real-world scenario must not use any software platform as a pure
service for problem solution yet. System dependent properties are immanent
to every programming paradigm. For this reason it is not possible to choose
one of the extremes mentioned above. Actual implementation paradigms always tend between these two alternatives and try to be as close as possible
both aspects (1) and (2). The main intention which is focussed on is to avoid
system immanent factors which inﬂuence the proper and system independent
logic of the application which is intended to build.
In the context of multidimensional matchmaking the multi-agent paradigm
is used to encapsulate the oﬀers and requests of market participants. Each
entity of a market is wrapped by an agent carrying the information the owner
is willing to release to participate in the market. The matchmaking procedure
involves functions which are designed to mirror human judgement of an expert
as realistic as possible.
2.3 Matchmaking in Electronic Negotiations
eNegotiations are executed in the intention and agreement phase of an eMarket. In Figure 2.4 the authors Ströbel and Weinhardt (2002) (p. 8) show
the phases an eNegotiation process can be divided into. To deﬁne the term
matchmaking in eNegotiations more precisely the deﬁnitions of Ströbel and
Weinhardt (2002) are adopted to the generic matchmaking model. The single
steps inside the intention phase have the following characteristics:
• Oﬀer and request speciﬁcation: The agents have to specify oﬀers and
requests indicating their constraints and preferences towards the transaction object. This speciﬁcation may also include the provision of signatures
or the deﬁnition of timestamps (to express validity). This speciﬁcation can
be executed instancing a centroid or a candidate information object which
has been designed for this speciﬁc market.
• Oﬀer and request submission: To submit an oﬀer or a request, the agent
can actively send the oﬀer or request to a speciﬁc agent (middle agent) or
just notify the middle agent of the completion of the speciﬁcation.
2.3 Matchmaking in Electronic Negotiations
Intention phase
27
Agreement phase
Offer and request
specification
Offer and request
submission
Offer and request
validation
Offer and request
matching
Offer and request
allocation
Offer and request
acceptance
Figure 2.4. Intention and Agreement Phase
• Oﬀer validation: When the middle agent receives the oﬀer or request,
the information object is checked for completeness and the compliance
with certain rules.
The single steps in the agreement phase have the following characteristics:
• Oﬀer and request matching: The aim of this phase is to ﬁnd pairs of
oﬀers and requests which stratify potential conterparts for a transaction
execution. This includes the identiﬁcation of all oﬀers which match a given
request. The matching phase may also include a scoring procedure. The
aim of the scoring procedure is to identify the best matching oﬀer for a
request. In the matchmaking framework in this phase a ranking of all oﬀers
with respect of the current request is computed and returned as a ranked
list to the centroid (requesting agent).
• Oﬀer and request allocation: In this task the counterparts for a possible transaction are determined using the information from the matching
and scoring phase. The duties of the single agents are determined and assigned. If the selected oﬀers and requests still feature certain value ranges
or options the ﬁnal conﬁguration has to be determined in this phase.
• Oﬀer and request acceptance: This ﬁnal task serves the acceptance of
the terms and conditions which have been determined above. The agents
have to accept the conditions in order to execute the transactions and
complete the deal.
The generic multidimensional matchmaking mechanism which is developed
in this work to cover the matching and scoring phase in eNegotiations. The
Grappa framework is deﬁned and the implementation described in Chapter 4 and Chapter 5. In these chapters a generic and adaptive matchmaking
component which is easily integrated into any eNegotiation framework is provided.
28
2 Terminology and Overview
2.4 Phases of Matchmaking
The matchmaking process itself clusters into two phases: the deﬁnition and
the execution phase. Each phase is divided into three steps again. The idea in
the deﬁnition phase in multidimensional matchmaking is that the designer of
the application creates the matchmaking procedure using a generic toolset.
Firstly, oﬀer and request structures have to be speciﬁed. This is done by determining the attributes which describe the oﬀer and the request best. These
attributes have to be clustered into dimensions which belong together semantically. The dimensions and – in case there are – subdimensions have to
be composed to an overall structure of the request and the oﬀer information
object. Then, a mapping between the oﬀer and the request has to be deﬁned.
This is due to the fact that oﬀer and request may be of heterogeneous structure. Hence, it might be not the identity mapping oﬀer to request structure.
In this procedure also the distance functions have to be speciﬁed, which will
be applied to determine the distance among the instances of the atomic and
complex types.
The single steps within the deﬁnition phase of multidimensional matchmaking
(see Figure 2.5) are deﬁned as follows:
• Identiﬁcation of matchmaking attributes: In this step the attributes,
which describe the objects to be oﬀered and requested, are identiﬁed.
Atomic types are assigned to the attributes. Value domains are created.
• Clustering of attributes to dimensions: The attributes which have
been identiﬁed in the last step are clustered to dimensions. This is done
separately for the request and the oﬀer structure. The clusters should contain attributes which belong semantically together. Here, the orthogonality
and preferential independence among the attribute clusters are important.
This issue is treated in Section 4.3.
• Mapping between oﬀer and request dimensions: The oﬀer and request structure may be heterogeneous. For this reason a mapping has to
be deﬁned which covers the semantic structure of the oﬀer and the request.
The mapping has the following properties:
(i) It maps each set of dimensions of the oﬀer to a set of dimensions of
the request. Note: the sets can possibly contain only one dimension.
(ii) It is surjective and complete, i.e., it covers all dimensions of the request and the oﬀer. Consequently, no information which has been
provided in the oﬀer or the request is omitted.
(iii) It contains each dimension and each attribute of the oﬀer and the
request structure. For each attribute pair – one attribute from the
oﬀer structure and one attribute from the request structure – an
atomic distance function is speciﬁed in the mapping. Also for each
pair of dimension sets (see (i)) a complex distance function is speciﬁed.
Now the single steps in the execution phase of multidimensional matchmaking
also shown in Figure 2.5, are described:
2.4 Phases of Matchmaking
executed 1 time per matchmaking process
Definition phase
Identification of
attributes
Clustering of
attributes
Mapping of
offer and request
29
executed n times per matchmaking process
Execution phase
Computation of
atomic distances
Recursive comp.
of complex dist.
Computation of
over-all dist.
Figure 2.5. Phases in Multidimensional Matchmaking – Deﬁnition and Execution
• Computation of atomic distances: In this step the atomic elements
of the request and oﬀer information object are considered. The distances
among the instances of the attributes are computed using the atomic distance functions which are assigned in the mapping deﬁned between the
oﬀer and request structure.
• Recursive aggregation of dimension distances: The atomic distances
from the last step are the basis for the aggregation to the dimension distances. For this step complex distance functions are applied which compute
aggregated distances between the dimensions. Dimension distance values
represent a lower degree of information compared to the sum of atomic
distance values. The amount of information lost in the aggregation process
depends on the choice of the so called complex distance function applied.
Concrete examples of complex distance functions such as weighted average
or hausdorﬀ distance are given in Section 4.5.
• Computation of overall distance: Finally an overall distance value is
computed using a complex distance function. This distance value represents
the distance of one complete complex oﬀer to a given complex request. The
same complex distance functions like for dimension distances can be applied
here. Diﬀerent thoughts such as the completeness of information and k.o.criteria play an important role for the choice of the overall distance function
applied. In Section 4.5, also diﬀerent approaches to this subproblem are
proposed.
These phases depict the matchmaking application in arbitrary scenarios. In
eNegotiations the designer of a negotiation framework can arbitrarily deﬁne
the structures of the oﬀers and requests. Of course, the oﬀer and request
structure must represent the application logic.
30
2 Terminology and Overview
In the next section, application domains for eNegotiations are investigated.
Special attention is payed to the domain in which the multidimensional
matchmaking component is related to the human resources domain.
2.5 Application Domains for eNegotiations
As shown in the last sections, multidimensional matchmaking is a central
task in electronic negotiations. As the Internet and electronic coordination
mechanisms are continuously gaining importance in the modern economy,
eNegotiations begin to establish in many domains.
In procurement and ﬁnancial markets eNegotiations have already succeeded
in major projects. Many companies switched their entire procurement processes to eMedia and many ﬁnancial marketplaces are run on these media.
Scientists and practioners are actually making signiﬁcant eﬀort to formalize and implement eNegotiation scenarios enhance the range of transactions
being possible enormously. The eMediator prototype by Sandholm (2000)
is, e.g., an up-to-date eNegotiation prototype which implements negotiation
concepts far beyond the common auction protocols, such as combinatorial
auction protocols. Relevant contributions within this domain are also provided by Lo and Kersten (1999) with the INSPIRE system as well as the
contributions of Schoop (2002).
In many diﬀerent domains such as the trading of derivative ﬁnancial instruments (see Bichler 2000a), the energy market domain (see Strecker and
Weinhardt 2001) or the human resources domain (see Maier et al. 2000),
ﬁrst approaches have been made to electronize the markets and integrate
eNegotiation mechanisms. Within the ﬁnacial market domain the Amtras
approach (see Weinhardt and Gomber 1999) and the Virtual Trading Room
(Vtr) approach (see Budimir and Holtmann 2001) are to be mentioned.
There is a central problem which is common to all current eNegotiation approaches. While it is wide-spread to deﬁne strict trading rules for homogenous
goods it is much harder to formalize abstract negotiation protocols to apply
on heterogeneous goods as well as on personal needs and wishes. Actual eNegotiation approaches often use a highly domain dependent terminology and
negotiation mechanisms.
2.5.1 Matchmaking in Multi-attribute Auctions
Matchmaking plays a central role within multi-attribute electronic auctions.
In the deﬁnition of an electronic auction which is given in Section 2.1.1 the
notion of an auction in the economic sense is referred to. Bichler et al. (1999)
focus on this issue as follows: ”An auction is an economic mechanism for determining the price of an item. It requires a methodology which is announced
2.5 Application Domains for eNegotiations
31
beforehand, one or several bidders who are interested in the item and the aim
to sell the item to the highest bidder.” (see Bichler et al. 1999, p. 155).
As also shown in the phases of an intention and agreement phase of an electronic negotiation, an auction mechanism also checks a bid for its validity
and updates the active bids by the highest one. There are several diﬀerent
auction protocols. These are further considered in Section 3 in more detail.
In this section, the meaning of matchmaking within electronic auctions is
considered.
Multi-attribute Utility Computation A central role in electronic auctions and, generally spoken, electronic negotiations play functions which determine the value of an item for the bidder, i.e. the party requesting an item.
The function is called utility function and takes as input the properties of the
supplied items. These properties are mapped to a score which indicates the
value of the item to the bidder, i.e. requester. In case of single-attribute auctions this is obvious. The utility function takes as input the item’s attribute
instance and maps this to a score.
In case of a multi-attribute scenario this is not as trivial. In this case a utility
function must map each property of an oﬀered item to a virtual currency
or score and combine the virtual currency or score results of each attribute
to an overall value. This overall value is called the overall utility of an item
for a requester. Finally this overall utility decides which item wins. The item
i.e. the candidate with the highest overall utility for the centroid should win
due to the Pareto eﬃciency. An allocation is called Pareto eﬃcient if it is
impossible, by using them diﬀerently, to makye any one centroid or candidate
better oﬀ without making at least one other centroid or candidate worse oﬀ
(see also Lipsey 1989)
Deﬁnition 2.5.25 overall Utility Function Uniﬁed Weight
An easy and straightforward way to express the overall utility function is the following:
U (xj ) =
n
Ui (xij )
i=1
Where Ui (x) indicates the utility function for the individual attribute
i of an item j and xj = (x1j , x2j , . . . , xnj ), j ∈ {1, . . . , m} indicates the
instance vector of attribute instances which item j supplies.
The result of this overall utility function is a non weighted sum of the attribute utilities. For practical application it is useful to combine this overall
utility function with weights for the attributes. In this case, each attribute
utility function is weighted with a real number wi ∈ [0; 1) before summing
32
2 Terminology and Overview
up to an overall utility. This sum of weighted attribute utility functions is
divided by the sum of all weights for normalization.
Deﬁnition 2.5.26 overall Utility Function Distributed Weight
The following overall utility function is obtained:
n
wi Ui (xij )
n
U (xj ) = i=1
i=1 wi
Ideally the weights wi for i = 1, . . . , n can be modiﬁed by each requester. So each requester is able to indicate its own preferences to
an attribute.
The aim is now to allocate the deal to the suppliers of oﬀers by maximizing the
overall utility of the requester. Finally the supplier with the highest overall
utility for the requester wins the auction:
max U (xj )
Where j ∈ {1, 2, . . . , m}. If several oﬀers reach the identical overall utility for
a request they are treated indiﬀerent and can be substituted by one another.
These functions take as input an attribute instance and provide a value in
the score or virtual currency value domain. This value must represent the
preference of the requester best possibly. Consequently it is useful to let the
requesters deﬁne their attribute utility functions individually.
Now, requesters have two possibilities of inﬂuencing the result of the overall
utility computation. The ﬁrst is the deﬁnition of the attributes’ weights. This
measure is made to assign the importance to an attribute in comparison to
the other attributes. The second possibility consists of the determination of
the attribute utility function itself. This would be possible if the attribute
has a discrete value domain. An example for such an attribute would be the
color of an item. A requester can easily deﬁne a personalized attribute utility
function for such an item. Here, the idea is to assign a personal score to each
possible color.
Matchmaking for Utility Computation Some authors started to work
on the domain of multi-attribute utility computation for multi-attribute electronic auctions.
In the application scenario of multi-attribute electronic auctions the term
matchmaking is deﬁned and understood in this work as follows: According to
the deﬁnition from Section 2.1.2 matchmaking is a procedure of identifying
the oﬀers which are closest to a request. It is straightforward to apply the
matchmaking approach to multi-attribute electronic auctions. The attribute
2.5 Application Domains for eNegotiations
33
utility functions Ui are represented by the attribute distance functions deﬁned for matchmaking. The overall utility function, which is the sum or the
weighted sum of the single attribute utility function values is represented by
the overall distance function within the matchmaking approach. The score
which is used to determine quality measures as results from attribute utility
functions is represented by the real values in the interval [0; 1).
In the next section the application of multidimensional matchmaking in electronic human resources markets is described. In these eMarkets the implementation and evaluation of the generic multidimensional matchmaking component Grappa is done.
2.5.2 Multidimensional Matchmaking in Human Resources
Negotiation
The human resources market is a central ﬁeld in economics and management
science. Researchers from Operations Research (OR), microEconomics, sociology and many other ﬁelds have been investigating this topic in depth (see
Maier and Gollitscher 2001 for a collection of views from diﬀerent research
areas). Diﬀerent skill matching methods have been developed. Also on the
Internet a number of job portals have been established. E.g. in Monster1 or
Stepstone2 it is possible for the applicants to submit a resume and to establish
a request which searches the job databases in regular time intervals. However, the procedures available for matching the own resume against vacant
positions are fairly rude and can hardly be personalized. As far as human
resources marketplaces have been evaluated for this work the procedures are
mainly based on matching keywords which are supported by the applicant
against the given positions and vice versa.
Though the current applications for the electronization of the human resources market are simple, it takes intense eﬀort to increase the quality of
such applications. Like in many other electronic market domains, valuable
information is lost during this process. When a person applies for a job not
only the measurable factors such as skills, work experience, languages, degrees, etc. are important. In contrast, often persons are judged as qualiﬁed
for a position by their personality or their character. Additionally, at an application also the form and structure of the domain play a central role. Factors
such as correctness of the style, to make the right impression and last but
not least the outﬁt of the person play an important role.
All these factors are soft factors which cannot or only partially be measured
using mathematic or electronizable distance functions. Also the approach
which is provided in this work does not support these features but still, much
better matchmaking results compared to the actual methods are achieved
1
2
http://www.monster.com (06/25/2002)
http://www.stepstone.com (06/25/2002)
34
2 Terminology and Overview
(see also Chapter 7). Consequently the computation of distances between
persons who are looking for a job can only be modelled by taking the factors
that are at least partially measurable. These factors are
•
•
•
•
•
•
skills,
work experience,
free text description,
salary,
entry date,
language skills.
These factors are modelled as dimensions of a request and an oﬀer information
object structure.
A proﬁle structure for vacant positions as well as for the applicants is derived. The information object structures are now equipped with the atomic
and complex distance functions. To perform matchmaking centroids and candidates the generic multidimensional matchmaking framework which is developed in this work is applied. The matchmaking procedure which is executed
on the framework covers the matching section within the intention and agreement phase in a human resources market.
This approach does not yet go to an extent to tackle soft factors in human
resources matchmaking; however, it is shown that the results achieved are
considerably better than those of existing methods.
2.6 Summary
In this chapter the terminological basis for this work is deﬁned. The key
concepts from the disciplines in computer science and economics which play
a major role for the research are examined. In Section 2.1 the terminological
aspects are focussed. In Section 2.2 the terms and notions are integrated into
the relevant reseach ﬁelds in economics and computer science. The key notions
of ”electronic negotiation” as well as ”software agent” and ”multidimensional
matchmaking” are framed by application directions in current research.
Section 2.3 combines the electronic negotiation research with multidimensional matchmaking and gives evidence on the application of matchmaking
mechanisms in this very actual research domain. In Section 2.4 the matchmaking procedure is presented as a phase oriented process which provides
mechanisms to apply matchmaking in electronic markets.
Finally in Section 2.5 diﬀerent real-world application domains for multidimensional matchmaking are discussed and introduced. The human resources
domain is selected as central domain for this work.
2.6 Summary
35
The contribution of this chapter is to
• presenting an overall-view for the work, including a brief presentation of
the Grappa framework.
• deﬁning the key terminology and research ﬁelds, the work is inﬂuenced by.
In the next Chapter 3 the related work which is relevant for the work is
introduced. Here, special focus in spent to concrete research projects and –
especially in the matchmaking ﬁeld – to concrete matchmaking algorithms.
3 Related Work
Since electronic business has become an integral component of today’s economic processes, many electronic markets have been established and distinguished (see Neumann et al. 2002). The need for further automation of
procurement, logistics, human resources planning, ﬁnance and many other
domains is obvious. Scientiﬁc approaches for the automation of these processes are more and more applied in practice. In this chapter two main pillars
which lead towards a stronger automation of electronic business processes are
introduced:
• Matchmaking
• Electronic Negotiation
The aim of this chapter is to provide an overview on several research activities
in electronic negotiation and matchmaking.
The chapter is structured as follows: In Section 3.1 the most prominent
matchmaking approaches are outlined. Some contributions are presented in
high detail because of their relevance to the Grappa project. This enables
an easier comparison with the new approach presented in this work. In Section 3.2 several negotiation approaches are outlined. There exists a high number of negotiation approaches in diﬀerent scientiﬁc communities. Hence, most
approaches are introduced in less detail compared to the matchmaking approaches. In Section 3.3 the matchmaking approaches and the negotiation
approaches are brieﬂy compared. The results motivate the deﬁnition of the
Grappa framework.
The content of this chapter is derived from the cited publications. The validity of deﬁnitions, examples and theorems is often limited to the concrete
approach and not valid for the view in this work. The theoretic model and
implementation framework which is developed in this work is based on the
deﬁnitions given in Chapter 2. The views of other researchers who are working
in the area of electronic negotiation and matchmaking and which are considered to be relevant for this work are presented here. The focus is to broaden
the reader’s understanding of the questions arising in electronic negotiation
and matchmaking.
D. Veit: Matchmaking in Electronic Markets, LNAI 2882, pp. 37-75, 2003.
 Springer-Verlag Berlin Heidelberg 2003
38
3 Related Work
3.1 Matchmaking Approaches
In this section several existing ”pure matchmaking approaches” are introduced. These systems focus on providing matchmaking mechanisms and provide no or only little negotiation support.
The notion of ”matchmaking” is inﬂuenced by the idea of the ”mediator”
which has been introduced by Wiederhold (1993) and consecutive work. Several approaches which are proposed here – especially the approach of Subrahmanian et al. (2000) references Wiederhold’s work.
In Section 3.1.4 preparing Section 3.1.5 the Sycara and coauthors’ sight on
matchmaking for and in multi-agent systems is shown. The results they
present are enriched by technical aspects, which are in detail considered
in Section 3.1.6. Section 3.1.7 which concludes the pure matchmaking approaches by providing another very important model by Subrahmanian and
coauthors. This approach is based on a very simple oﬀer and request structure but supports powerful matching mechanisms based on Σ-hierarchies.
Complexity considerations are also a central point in the authors work.
3.1.1 Application Oriented Matchmaking Mechanisms
The authors Ströbel and Stolze (2001) develop a matchmaking component
for the discovery of agreement and negotiation spaces in electronic markets.
They present an Extended Matchmaking Component (EMC) which is designed
to identify negotiable agreements in the case where genuine constraint matching does not provide successful matches. Another scenario where it is applied
to is when buyers and/or sellers are willing to relax some of their constraints.
Technically the EMC is based on sets of constraints which are formulated on
the buyers and sellers side. The constraints are matched using an extended
matchmaking operation. This operation takes the notion of negotiable constraints into account. They state that an agreement value range exists, if two
constraint instances of a seller and a buyer, respectively, propose a distance
so that an agreement space is left. E.g., a buyer deﬁnes the constraint price
< $2000 and the seller deﬁnes price > $1800. The resulting agreement value
range would be $1800 < price < $2000.
If no constraints or only constraints from one side – seller or buyer – are
deﬁned, null-properties are the consequence. The authors suggest several alternatives to resolve these null-properties:
• Avoid situation
• Domain constraints are required by the participants
• Null-properties are marked as open issues and only properties with domain
constraints are regarded
3.1 Matchmaking Approaches
39
• Default properties are initialized which may include best practices or common trade standards
The matchmaking process generally aims on the identiﬁcation of agreement
candidates. These are candidates which are most likely the counterparts for
a transaction execution based on a mutual beneﬁcial deal. But the matchmaking process does not substitute the negotiation process. It is a one-shot
process to determine potential counterparts for negotiations in situations
where many potential negotiation counterparts are available.
3.1.2 Matchmaking in the SHADE and COINS Approach
The understanding of matchmaking underlying the approach of Kuokka and
Harada (1995) and Kuokka and Harada (1996) (p. 263) and following is
reﬂected in the following condensed deﬁnition.
Matchmaking: Matchmaking is an approach based on emerging information
integration technologies where potential providers and demanders of information or goods send messages describing their information (or goods) capabilities and needs. These descriptions are taken (represented in rich machineinterpretable description languages), are uniﬁed by the matchmaker to identify potential matches and are presented to the user.
The authors of this work claim that the main purpose of matchmaking are
the domains of electronic commerce and engineering.
SHADE – SHAred DEpendency Engineering The SHADE matchmaker (see Kuokka and Harada 1996) is a matchmaker which operates over
logic-based and structured text languages. The aim is to dynamically connect
information sources. The matchmaking process is based on KQML (see Finin
et al. 1994) communication. Content Languages of SHADE are a subset of
KIF (see Genesereth and Fikes 1992) as well as a structured logic representation called MAX.
KIF is a form of full ﬁrst order predicate calculus. MAX is a conjunctive
predicate logic augmented to support frames, which are conjunctive sets of
literals, as well as strings as ﬁrst class terms. The actual matching of advertised and subscribed content ﬁelds is performed by a prolog-like uniﬁcation
algorithm. If logic formed strings are present, a regular expression pattern
matcher is used for term uniﬁcation.
Matchmaking is realized solely by matching the content of advertisements
and requests. There is no knowledge base and no inference performed. The
SHADE matchmaker is implemented entirely as a forward-chaining rulebased program also using MAX, deﬁned in Kuokka (1990). This allows to
add features dynamically as new rules.
40
3 Related Work
Advertisements and requests can contain more than a set of ground literals.
In addition the SHADE matchmaker supports meta-level queries about its
operation. These queries allow other agents to subscribe to the message level
actions of the matchmaker in addition to content level information.
An important precondition of matchmaking is a shared ontology. Shared ontologies are needed to ensure that terms have clear and consistent semantics.
Otherwise, a match may be found or missed based on an incorrect interpretation of the requests.
COINS – COmmon INterest Seeker COINS (see Kuokka and Harada
1996) is a matchmaker which operates over free text. The motivation for
the COINS matchmaker is the serious need for matchmaking over the huge
amount of unstructured text on the WWW and other WANs. A reason for
this is that it is impossible in practice to express all these texts in KIF.
Instead one has to use traditional matchmakers for an implementation on
free text.
Initially the free text matchmaker was implemented as the central part of
the COINS System, which was designed to allow users to easily advertise and
request information on their interests. It turned out that this matchmaker is
also useful as a general purpose facilitator.
Like in SHADE, access language is also KQML. The COINS matchmaker does
not use the KQML brokering performatives ”advertise” and ”recruit” but
uses the content-based routing paradigm where clients send ”tells”, ”asks”
and ”subscribes”. It handles two content languages: Free text and document
vectors. Document vectors are weighted lists of stemmed words which occur in
a document. The main advantage of document vectors is the space eﬃciency.
The COINS matchmaker immediately converts any incoming free text into
document vectors. Hence, document vectors and free text are isomorphic from
the matchmaker’s point of view.
With the subscribe command a client subscribes a document (-vector) to the
matchmaker. As soon as a tell command comes in with a matching document
(-vector) the match will be forwarded to the subscriber. Instead of whole
documents the COINS matchmaker saves only the document vector which
contains the name of the document, the owner as an email address. For that
reason the matchmaker forwards only the document vector and the strength
of the match to the subscriber. In order to obtain the whole document the
subscriber has to contact the tell-agent directly.
To process and match free text and document vectors the System for the
Mechanical Analysis and Retrieval of Text (SMART) (see Salton 1989) information retrieval system is used. The ﬁrst input is free text. This text is
converted into a document vector using the SMART’s stemming and noise
word removal. Then the document vectors are compared using an inverse
document frequency algorithm.
3.1 Matchmaking Approaches
41
For this purpose the frequency of a concept in a document is divided by
the frequency in the entire corpus to determine its information content – i.e.
how well the concept describes the document with respect to the corpus. An
adjustable cutoﬀ measure is used to make the comparison binary.
For the purpose of determining the information content of words the COINS
matchmaker collects a corpus. A corpus is a database which consists of words
which appeared in former queries. The semantics of the words is implicitly
given by the selection of the corpus. When the matchmaker receives any
new advertisement, it revises its corpus to obtain better estimates of the
future computed information content of words. In practice it is the COINS
matchmaker’s attempt to incrementally learn the ontology already shared by
its clients.
3.1.3 Service Classiﬁcation in Agents’ Societies
The authors Weinstein and Birmingham (1997) deﬁne service classiﬁcation
as a task that helps agents to select services in large and dynamic agent
societies. This approach uses a Service Classiﬁcation Agent (SCA) that is
capable of:
•
•
•
•
•
Dynamic ontology maintenance
Usage of description logic
Runtime organization of deﬁned services
Constructing taxonomy of services
Usage of a dynamic ontology from which concepts can be used to deﬁne
additional services
• Subsumption taxonomy using description logic (i.e. application of description logic to insert descriptions into a hierarchy)
In this approach the SCA takes over the role of the matchmaker/broker. An
agent queries the SCA in order to ﬁnd a service to complete its task. The
SCA decides using the above mentioned methods which services to return to
the querying agent.
The authors see an organic society of agents as a large, dynamic, evolving
and terminologically heterogeneous agent community. Such a society is called
proto-organic when it is a prototype for an organic society.
The subsumption taxonomy is being used to reason services with the aim
to ﬁnd the best service available to meet a need. The expressiveness and
reasoning power of description logics may enable translation between ontologies. Ontologies are implemented because declarative descriptions of complex
agent services have to be encoded. Declarative descriptions are required to
establish a space of services which is independent of the implementation of
the current set of agents.
42
3 Related Work
Descriptions are translated manually to LOOM. For the future an automatic
translation service from natural language to KIF and further to LOOM and
other representative languages is integrated. The description-logic system
maintains the ontology of agent services. It automatically places new concepts
in taxonomies. The SCA gets a service description from a registering agent.
This is classiﬁed and a label is returned, recommending to classify the service
as described on the label. If the service description is new to the SCA a new
concept will be introduced to the ontology. For this reason the ontologies are
called dynamic.
The matchmaking process in the SCA proto-organic society approach is based
on four diﬀerent types of agents:
1. The Query Planning Agent (QPA) as an instantiation of the taskplanning-agent, which is a generalized, goal pursuing procedural reasoner.
2. The User Interface Agent (UIA) which purchases the services. This
happens using two diﬀerent strategies: increasing generality (most-speciﬁcsubsuming) or increasing speciﬁcity (most-general-subsumed).
3. The Auction Manager Agent (AMA) deﬁnes markets and maintains
an appropriate number of auctions to service each market.
4. The Service Classiﬁcation Agent (SCA) classiﬁes services described
by a QPA and classiﬁes requests given by UIAs.
The nested ontologies in form of a concept taxonomy are located in the
knowledge base of the SCA. The idea of