Minimally allocating resources on the grid to maximize the grid service reliability with trust integration using deterministic state space search. ⢠This project deals ...
Reliability and Trust Computations in Grid Gutha Jaya Krishna 08MCMI02 M.Tech.(Artificial Intelligence)
Abstract • Minimally allocating resources on the grid to maximize the grid service reliability with trust integration using deterministic state space search. • This project deals with developing modeling and evaluation algorithms to evaluate the grid service reliability. • Based on the grid service reliability evaluation, we present a model for the grid resource allocation problem which uses trust to effectively solve it.
Introduction • Grid is a network of n computing nodes say G1, G2, ... Gn capable to perform Services say, {S1, S2, ..... Sm} by exploiting h resources say, {R1, R2, ......Rh}. • Grid Computing (or the use of computational grids) System is the combination of computer resources (R1,R2,..,Rn) from multiple administrative domains applied to perform tasks, usually scientific, technical or business problems.
What is Reliability? • In general, reliability is the ability of a network or system or program to perform and maintain its functions in routine circumstances, as well as hostile or unexpected circumstances. • Here reliability is a probability(In range 0 to 1). One means high reliability and zero means low reliability. • Reliability of Grid computing systems depends upon 1. Task processing time. 2. Communication time. 3. Rate of failure of grid elements
What is Trust? • Trust is the firm belief in the entity to behave as expected and this firm belief is a dynamic value which may change with behavior and context of time. • Here trust is in range of 0 to 1.
Important Terms : • • • • •
L(i,j) : Link between nodes Gi and Gj. D(i,j) : Total size of data exchanged through the link L(i,j). S(i,j) : Mean speed of data exchange through the link L(i,j). T(i,j) : D(i,j)/S(i,j) , communication time between node i and j. Assumption Made:The failure occurring at node and link both follow the Poisson process.
λi : Rate of failure of node i. λi, j : Rate of failure of link L(i, j).
Related Work on Reliability Computations :[1] 1.Reliability of root node : e -
n (t(m)
e-
2.Reliability of links :
T(n))
i , j .Tc(i, j)
L(i, j) MRST
3.Reliability of non - root nodes :
e-
j .T(j)
Gj MRST j n
4.Reliability of MRST : Rroot RLinks Rnon - root nodes 5.Grid Service Reliability (GSR) : Pr(E1) Pr(E2) Pr(E1 E2) Pr(EN ) ( E1 where GSR
EN - 1 EN ) Pr(atleast one MRST of a service is reliable)
6.Overall Grid Service Reliability (OGSR) : Pr(E1) Pr(E2) Pr(E1 E2) Pr(EN ) Pr(E1 where OGSR
EN - 1 EN) Pr(atleast one MRST of all services is reliable).
Related work on Trust Computations :[2] 1. We assume T represents trust of available free resources Minimum number of available free resourcessatisfying need 2. X Total number of free resources 3. T 1 - X 4. TV T(1 ) (Rel_OGSR) where between 0 and 1. 5. TV
TV k (1
where
) TV K
1
between 0 and 1.
Deterministic State Space Search • State space search is a process used in the field of artificial intelligence (AI) in which successive configurations or states of an instance are considered, with the goal of finding a goal state with a desired property. • State space search as used in AI differs from traditional computer science search methods because the state space is implicit: the typical state space graph is much too large to generate and store in memory. Instead, nodes are generated as they are explored, and typically discarded there after. • A solution to a combinatorial search instance may consist of the goal state itself, or of a path from some initial state to the goal state.
General Search Process
Search Strategies Used Brute-Force Search
Speeding Up Brute-Force Search • • • • • •
Avoiding Repeated States Forward Search Backward Search Bi-directional Search 2-Way Split Backward Search M-Way Split Backward Search
Avoiding Repeated States One way to speed up a brute-force algorithm is to reduce the search space, that is, the set of candidate solutions. This reducing the search space is achieved by avoiding repeated states by following strategies: • Do not return to state just came from. • Do not create path with cycles in them(do not create a node same as any ancestor). • Do not generate any state that was ever generated before.
Forward Search
Backward Search
Bi-directional Search
2-Way Split Backward Search 2-Way Split Backward Search is an algorithm proposed to improve the search process by dividing the search space into two parts one at the back and one in the middle. These are explained in steps below: 1. If the mid-way search yields better results than at the back then start from the middle and split the other half from middle to front and repeat the process. 2. Else start from back ignore the search space from mid-way and split the half from backward point to mid-way into another half and repeat the process.
M-Way Split Backward Search • We can increase the number of splits(M=2,3,4,...,N/2) to speed up the search process where M < N/2(N is total number of plys in the search space) at the cost of increased computations. • Generally 2,3 Way split are optimal in terms of computations and search speed when number of plys are less.
Proposed System
Example illustrating proposed system Initial Allocation Matrix for considered example
Grid Configuration and an Instance Links
L(1,2)
L(1,3)
L(2,3)
L(2,4)
L(3,4)
Speed
30
20
40
50
45
Failure Rate(λ)
0.001
0.002
0.003
0.004
0.005
Service
Processing Time (Sec)
Necessary Resources
Exchanged Information
S1
30
1110
500,400,300
S2
50
0011
200,600
Node
G1
G2
G3
G4
Failure rate(λ)
0.001
0.002
0.003
0.004
Example illustrating proposed system Step-1 : Generate the Resource Allocation Matrix with all possible free resources from Initial Allocation Matrix
Initial Resource Allocation for considered example
Step-1 : Generate the Resource Allocation Matrix with all possible free resources from Initial Allocation Matrix Initially we take an assumption that resource allocation with all possible free resources allocated. This approach helps the search procedure to search backward. The algorithm for this assumption is given below.
Algorithm : Resource Allocation Matrix with all possible free resources allocated
Step-2 : Compute Overall Grid Service Reliability(OGSR): Step-2(a) : Generate all possible MRST’s(Minimum Resource Spanning Tree) of each service. Service S1 needs R1,R2,R3 resources for the resource allocation shown below:
Step-2(a) : Generate all possible MRST’s(Minimum Resource Spanning Tree) of each service.
Step-2(a) : Algorithm to Generate all possible MRST’s
Explanatio n of the algorithm in three steps : 1.Generate the Sub - Trees(RST' s) satisfying the need and insert these RST' s into a list; 2.Remove the links of RST' s such that ( j)RSTj
RST i;
3.if((RST no. of nodes - 1)
RST no. of links)
{ possible MRST} else{remove the RST from list}
Step 2(b) : Compute reliability of MRST’s Computing Reliability for MRST-4 . To compute reliability of whole MRST-4 compute the reliability of its individual elements like: • Communication Links. • Root Node. • Non-Root Nodes.
Step 2(b) :Algorithms to compute reliability of MRST’s
Reliability of Communication links of MRST-4:
Reliability of Donor nodes of MRST-4:
Reliability of Root node of MRST-4:
Reliability of MRST-4:
Step 2(c) : Compute the Conditional Probability for the MRST’s of services Conditional Probability is reformulated as below:
Algorithm for above mentioned reformulated conditional probability is given above
Working times of MRST-1 and MRST-2 are given below
Conditional elements that can fail MRST-1 and MRST-2 and keep MRST-3 to be operational.
Probability that MRST-1 succeeds is given by:
Probability that MRST-2 succeeds is given by:
Step 2(d) : Compute reliability of the services Algorithm for Calculation of Reliability for the services is given below
Step 2(e) : Repeat step 2(b)(ii), 2(c), 2(d) to compute the Overall Grid Service Reliability(OGSR) of all services Algorithm for Calculation of Overall Grid Service Reliability(OGSR) is given below:
The working times of MRST’s of services S1 and S2 are given below
Working times for OGSR(i.e S1 and S2 combined) is calculated by summing up the working times of MRST’s of services S1 and S2.
After calculating the working times for OGSR(i.e S1 and S2 combined) steps 2(b), 2(c), 2(d) are repeated to compute OGSR.
Step 3 : Use 2-Way Split Backward Search with trust integration to find the minimal resource allocation with maximal reliability Step 3(a) : Generate possible resource allocation matrices using 2-Way Split Backward Search algorithm Following number of combination’s of free resource allocations for a split of each iteration
In first iteration for total 8 free resources(-1) 8 possible combination’s of resource allocations are generated(i.e. 8C7 = 8 where 7 is number of free resources allocated(1) while keeping remaining one resource not allocated(0)) for Mth ply and 70 possible combination’s of resource allocations are generated(i.e. 8C4 = 70 where 4 is number of free resources allocated(1) while keeping remaining 4 resources not allocated(0)) for Lth = M/2 ply. Similarly for remaining iterations.
Algorithm for generating possible resource allocation matrices using 2-Way Split Backward Search algorithm
Step 3(b) : Repeat step-2 to compute the Overall Grid Service Reliability for possible resource allocation matrices Compute OGSR using step-2 For the Resource Allocation Matrices generated using 2-Way Split Backward Search.
Step 3(c) : Use trust computations to find out the minimal allocation with maximal reliability
Algorithm for using trust computations to find out the minimal allocation with maximal reliability
So, the minimal resource allocation for the example considered is shown below:
Future work • We can use multiple copies of resources at particular grid node, upgrade to real time system, etc. • We can use M-way split where M < n/2 for generating minimal resource allocation with maximal reliability using trust. • We can simulate on GRIDSIM or we can do it real time on PRAGMA Grid.
References [1] Poh K.L. Dai Y.S., Xie M. “Reliability analysis of grid computing systems”. In IEEE Pacific Rim International Symposium on Dependable Computing(PRDC2002), pages 97–104, June 2002. [2] Kam-Wing Ng Woodas W.K. Lai.“ A time frame based trust model for grids". In Grid and Cooperative Computing(GCC),pages190-195,December 2005.
[3] Foster I., “The anatomy of the grid: Enabling Scalable Virtual Organizations”. Proceedings International Symposium on Cluster Computing and the Grid, 15-18 May 2001 pages 6-7. [4] Yuan-Shun Dai , Xiao-Long Wang.“Optimal resource allocation on grid systems for maximizing service reliability using genetic algorithm”. Reliability Engineering and system safety 91 (2006) 1071-1082.