Professional Documents
Culture Documents
Keywordsweb
services, service
ofservice; service selection; GA
I.
composition;
quality
INTRODUCTION
II.
RELATED WORK
:
A. QoS Properties Description
The most important QoS properties are response time,
execution time, availability, reputation and successful
execution rate. Response Time can be defined in several ways.
Due to simplicity we measure it as the time between receiving
a request by service provider and sending a respond to service
requester. This time includes the queuing and execution time
which are only affected by web service work load. This value
must be continuously updated for each web service because
the work load of a web service may change during the work
time. Execution cost is a fee received by service provider from
service requesters for each execution. This fee is determined
by service provider and may change according to web service
providers financial policy. Availability is the degree that a
web service is accessible and ready for immediate use. This
value can be defined as [uptime/ (uptime + downtime)].
Downtime includes the time that web service is inaccessible
and time taken to repair it. This value should be updated by
service provider. Reputation is the average reputation score of
a web service evaluated by the clients. The individual
reputation scores are likely to be subjective, but the average
score becomes trustable as the total number of the usages
increases [20]. Successful Execution Rate is the percentage of
requests which a web service performs successfully when it is
available and accessible. It is computed by dividing the
number of successfully performed requests by the total
number of requests. The QoS properties used in this paper are
summarized in Table I.
QoS features
Response Time
Execution Cost
Availability
Successability
Reputation
Throughput
Accuracy
Latency
Description
Time
difference
between
request sent and response has
been fully received.
Execution cost per request.
UpTime(UpTime+DownTime)
Services yield successful results
over request messages.
Reputation is the average
reputation score of aweb service
evaluated by the clients.
Amount of processable data per
time unit.
Error rate that produces a
service. It is calculated as the
number of errors divided by the
total number of executions.
Difference between time when
request was sent and time when
response has started to be
Received.
IV.
A. Genetic Algorithm
Genetic algorithms (GA) are possibly the first algorithmic
models developed to simulate genetic systems. First proposed
by Fraser [4], and later by Bremermann [2], it was the
extensive work done by Holland [6] that popularized GAs. It
is then also due to his work that Holland is generally
considered the father of GAs. GAs model genetic evolution,
where the characteristics of individuals are expressed using
genotypes .
A basic GA consists of three operators. These are a Selection
operator, Crossover Operator and Mutation Operator.
Crossover and Mutation operators are used in the reproduction
of the new population. The main driving operators of a GA are
selection (to model survival of the fittest) and recombination
through application of a crossover operator (to model
reproduction). The working of a GA can be simply described
as follows. The initial population is a set of number strings
generated by the random generator. Each string is a
V.
A. Experimental Setup
GA and iGA as introduced in the previous section were
implemented. Experiments were designed to measure the
overall fitness value and the execution time of both the
approaches. The data sets used for the experiment are taken
from amazon EC3 web services. We generated workflows
consisting of up to 8 services. Please note that we assumed
that a particular service can be used in serial workflows. The
parameters choose for the CR=0.9 and MR=0.01 and have
been chosen due to their superior performance on previous
runs of the workflow selection problem, balancing between
accuracy and execution time. The experiments were conducted
on an Intel core i3 (3.0GHz) and coded in python (version
2.6).
Fig. 2 Fitness-Iteration
[4]
[5]
[6]
[7]
[8]
[9]
[10]
[11]
[12]
[13]
[14]
[15]
[16]
[17]
[18]
[19]
[20]
[1]
[2]
[3]
[21]