A Game Theoretic Solution for the Optimal Selection of Services

A Game Theoretic Solution for the Optimal Selection of Services

Salah Merad (Office for National Statistics, UK), Rogério de Lemos (University of Kent, UK) and Tom Anderson (Newcastle University, UK)
DOI: 10.4018/978-1-4666-4301-7.ch072
OnDemand PDF Download:
$37.50

Abstract

This chapter considers the problem of optimally selecting services during run-time with respect to their non-functional attributes and costs. Commercial pressures for reducing the cost of managing complex software systems are changing the way in which systems are designed and built. The reason behind this shift is the need for dealing with changes efficiently and effectively, which may include removing the human operator from the process of decision-making. In service-oriented computing, in particular, the run-time selection and integration of services may soon become a reality since services are readily available. Assuming that each component service has a specific functional and non-functional profile, the challenge now is to define a decision maker that is able to select services that satisfy the system requirements and optimise the quality of services under cost constraints. The approach presented in this chapter describes a game theoretic solution by formulating the problem as a bargaining game.
Chapter Preview
Top

Introduction

Services are normally characterised in terms of their functional and non-functional properties. In general terms, the functional properties describe what the system does, while the non-functional properties impose restrictions on how the system does it. The latter are usually expressed in terms of some observable attributes, such as dependability, usability and performance, and together specify the quality of a service. Depending on the service to be delivered by the system, component services need to be selected according to their functional and non-functional properties. Although there are several techniques that allow fixing functional mismatches between required and provided services (DeLine 1999), the same cannot be said about the non-functional properties since there are no simple techniques that easily permit adapting the non-functional profile of a service (except by changing the component providing the service). For example, if the performance of a particular service does not meet what is required, the solutions are either revaluate what is required or change the component providing the service. The problem is further exacerbated if we consider that we are dealing with multiple dimensional mismatches of non-functional properties. Hence, novel approaches have to be sought if support for self-adaptation in service-oriented computing becomes a reality.

In this chapter, a game theoretic approach is proposed for optimally selecting, at run-time, component services with respect to their non-functional attributes. We consider the problem of selecting component services that have similar functionality, but differ in their non-functional attributes (NF-attributes). In addition to the NF-attributes mentioned above, we also consider the cost associated with a service. That is, in the process of selecting component services, we seek to “optimise” the quality of service provided by the overall system, subject to cost constraints. In such circumstances, it might be the case that depending on the cost, we are able to select more than one component service that have distinct, though complementary, NF-attributes. The advantage of selecting more than one component service is that the quality of services that can be obtained will be higher than what could be achieved by employing any single service from a repository of component services.

The proposed game theoretic approach for the optimal selection of component services is based on the Nash solution for bargain games, which relies on a decision maker that delegates the decision process to self-interested rational agents, each representing a non-functional attribute of the service. In this setting, where each attribute is a player represented in terms of a utility, the optimal solution can entail selecting more than one component service if no single component service were able to meet the non-functional requirements of the system. The solution proposed yields a selection of services, which is optimal in some well-defined sense, without relying on the decision maker’s (DM) subjective value trade-offs. For every attribute there is a certain preference pattern over the available alternatives. If we try to optimise simultaneously all the attributes, then the solution will be a compromise between the preference patterns of all the attributes. This solution is obtained when the DM delegates the decision process to self-interested rational agents, each representing an attribute. The agents will then have to bargain with each other to reach agreement on which alternative should be selected. This solution will yield the alternative that is as satisfactory as possible for each attribute. In this formulation, the DM’s value trade-offs between the attributes are not incorporated into the structure of the game.

Complete Chapter List

Search this Book:
Reset