04.11.2014 Views

elektronická verzia publikácie - FIIT STU - Slovenská technická ...

elektronická verzia publikácie - FIIT STU - Slovenská technická ...

elektronická verzia publikácie - FIIT STU - Slovenská technická ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

184 Selected Studies on Software and Information Systems<br />

The aim of web service composition is to solve problems like the creation of the meteorological<br />

forecast maps described above. We have no service to achieve our goal, but we can<br />

compose it from sub-services. There are two ways in web service composition. In first, the<br />

composition is created manually, i.e. somebody creates it. The second way is the automatic<br />

composition of services. Here, the composition method automatically creates a composed<br />

service based on a defined goal. These approaches use AI (Artificial Intelligence) planning<br />

techniques [68].<br />

The approaches based on AI planning convert the web service composition problem to<br />

AI planning problem [67]. Then several existing approaches can be used to solve it. Using<br />

these approaches we can create a plan which determines the action sequence leading from<br />

the initial state to the goal state. The creation of the plan does not solve the whole problem.<br />

The found sequence does not need to bring the desired results. We are successful only if we<br />

get the required output data by execution of this sequence. This means that also the data flow<br />

between the actions must be correct, i.e. the successive services are compatible on I/O data<br />

level and input data for each service has defined source. To summarize, we are looking for<br />

a composite service which execution in the initial state leads to the goal state and desired data.<br />

The composers work with different formalisms to encode and solve the planning problem<br />

[58]. Here belong the pure backward chaining, any of the search space algorithms or the<br />

most trivial shortest path search. Real semantic web service composers usually combine and<br />

enhance these algorithms. Their aim is to reduce the search space to find a plan in acceptable<br />

time. In the following we take a brief overview of the approaches formalizing the web service<br />

composition problem or are used to find its solution.<br />

State-Space Based Planning<br />

The web service composition problem based on state-space planning is described by a fivetuple<br />

〈S, s 0 ,G,A,Γ〉, where S is a set of the possible states of the world, s 0 is the initial state,<br />

G denotes the goal state which we want to reach, A is the set of actions the planner can use<br />

to change one state to other, and Γ is the set of translation relations Γ ⊆ S × A × S defining<br />

the preconditions and effects for the execution of each action, it maps one state into another.<br />

The goal of the planning is to find such a sequence of actions which when are applied<br />

to the initial state, will lead to the goal state. Formally, we look for a sequence a 0 ,...,a n ,<br />

where a i ∈ A, ∀i =0,...,nwhich generates a state trajectory s 0 ,...,s n+1 , where s i ∈ S, ∀i =<br />

0,...,n+1and s n+1 = G. In each step, there must exist γ i ∈ Γ,γ i =(s i ,a i ,s i+1 ), ∀i =<br />

0,...,n.<br />

The transition relations can by related to a cost function c(a, s) > 0. This function<br />

measures the cost of execution the action a in state s. The aim is to find the plan with the<br />

lowest cumulative cost computed from the costs of each state transition of the plan.<br />

State-space based search can use any of the space search algorithms. The aim of these<br />

algorithms is to reduce the search space which has 2 p states, where p is the number of<br />

propositions. To find a state transition path a simple shortest path algorithm can by used<br />

solving the problem in O(m log m) time, where m =2 p [21]. Considering a problem where we<br />

have 20 propositions, the search space consists from 2 20 = 1 048 576 states. In reality, we often<br />

have more hundreds of propositions. This seriously increases the number of states. Hence,<br />

the simple algorithms are not usable. A lot of known algorithms try to reduce the search

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!