Hierarchical Optimization for Fast Resource Allocation

Particular problem in the management of distributed systems is the optimal resource allocation among the subsystems. When several subsystems of the distributed system use or compete for the use of a common resource, the limited capacity of the resource can give rise to constraint system behavior. Respectively, the fast solution of the resource problems strongly influences the application area of their implementation in real live solutions. This situation occurs in every day situations: queue at a counter in supermarket; congestion in road traffic; products’ delays in machines during their production process; messages wait for access to a common transmission channel and computer jobs for the use of set of processors.


Introduction
Particular problem in the management of distributed systems is the optimal resource allocation among the subsystems. When several subsystems of the distributed system use or compete for the use of a common resource, the limited capacity of the resource can give rise to constraint system behavior. Respectively, the fast solution of the resource problems strongly influences the application area of their implementation in real live solutions. This situation occurs in every day situations: queue at a counter in supermarket; congestion in road traffic; products' delays in machines during their production process; messages wait for access to a common transmission channel and computer jobs for the use of set of processors.
The implementation of the optimization methodology in distributed and hierarchical systems resulted to development of multilevel optimization technique used to analyze decision making. In (Sandell at al., 1978) is presented a good survey of approaches and contributions in the area of large scale systems. The field of multilevel optimization has become a well known and important research field (Pardalos, 1997;Jorgen Tind , 1998).
Due to the complexity of the multilevel optimization problems both to their definition and solution, practical interest is driven to the bi-level programming, which constraints the decision making system to two hierarchical levels (Bard, 1999). The bi-level programming problem is a hierarchical optimization problem, where a subset of the variables is constrained to solution of given optimization problem, parameterized by the remaining variables. The hierarchical optimization structure appears naturally in many applications, when lower level actions depend on upper level decisions. The applications of bi-level and multilevel programming include transportation (taxation, network design, trip demand estimation etc.), management (coordination of multidivisional firms, network facility location, credit allocation etc), planning (agricultural policies, electric utility) and optimal design (Vicente, 1994).
The paper considers problems, motivated by the optimal allocation of heterogeneous (vector) resources in the optimization problems of subsystems in bi-level hierarchical system. This chapter works out a model implementing predictive coordination strategy with www.intechopen.com Time Management 32 non-iterative influences for fast resource allocation as important management policy in hierarchical and decentralized systems.

Multilevel systems' theory and noniterative coordination
The Multilevel theory develops decomposition approaches for solving both mathematical programming and variation problems allowing the original complex optimization problem to be reduced to set of low order optimization sub-problems. The solution of the complex problem is found as vector of the sub-problems solutions. The local sub-problems are influenced (coordinated) by the coordination problem to generate the components of the global solution of the original problem. This approach is a natural extension of the multilevel optimization modelling. Such methodology, consisting of decomposition to subproblems and coordination among them, leads to the model of hierarchical multilevel systems operation (Mesarovich et al., 1970).
Two main coordination strategies have been worked out (Aliev&Liberson, 1987;Mesarovich et al., 1970;Mladenov et al., 1989): goal coordination and predictive coordination. The "goal" coordination influences the local performance indices of the sub-problems. The "predictive coordination" assumes constant values for the global arguments or for parts of the global constraints. The coordinator performs all these influences by iterative manner insisting multiple data transmissions from the lower levels to the coordinator and vice versa, spending time for calculations and data transmissions and preventing the reactions of the hierarchical system in real time.
The coordination in bi-level hierarchical systems consists of iterative data transfer between the levels, Figure 1. The coordinator defines a coordination parameter λ, which influences the subsystem optimization sub-problems. With λ, the optimization sub-problems Z i (λ), i=1,n, representing the subsystem management become well defined. For given λ, the subsystems solutions are found. Next, the solutions x i (λ), i=1,n of Z i (λ), are sent back to the coordinator. The last, having evidence of the subsystem reactions x i (λ), i=1,n, improves the coordination from λ to λ* , λ*=λ*(x i (λ)), i=1,n, by means the local subsystems to find the global optimal solution. Next λ* is returned to the subsystems for implementation. Coordinator

www.intechopen.com
Hierarchical Optimization for Fast Resource Allocation

33
When the coordination parameters λ influence the performance indices of the subsystems, this coordination is called "goal coordination". If the coordination influences the constraints o f t h e s u b s y s t e m s , t h i s c o o r d i n a t i o n i s " p r e d i c t i v e " o n e . I n t h a t m a n n e r , a n i t e r a t i v e communication-computing sequence is performed till finding an optimal coordination λ opt , which results in optimal local solutions x iopt (λ opt ), i=1,n.
Thus, the multilevel system operates on optimal manner by solving a global optimization problem. The iterative coordination results in management delays which do not allow the hierarchical system to cope fast environmental changes. To overcome the iterative multilevel management the non-iterative coordination has been worked out (Stoilova&Stoilov, 1995;Stoilov&Stoilova, 1999). It reduces the information transfer between the system's levels, applying 'proposition -correction' protocol. The local subsystems solve and send to the coordinator their propositions x(0) found with lack of coordination. The coordinator modifies x(0) towards the global optimal solution opt x and transmits it to the subsystems for implementation. The operation of the hierarchical system with non-iterative coordination strategy consists of two steps: -the coordinator sends to the subsystem initial coordination λ 0 ; -using λ 0 the subsystems solve their problems and evaluate the propositions x(λ 0 ); -the coordinator corrects x(λ 0 ) to the global optimal x opt or evaluate the optimal coordination λ opt without iterative computations; the subsystems evaluate/implement x(λ opt ).
This non-iterative concept can be applied both for "goal" coordination strategy and for "interaction prediction" strategy. The non-iterative coordination has been developed for the case of goal coordination principle where the coordinator influences by the coordination variables the goal functions of the subsystems (Stoilov and Stoilova, 1999). This influence changes the performance indices of the local sub-problems, by means to coordinate the local optimizations and to find the solution of the global optimal problem, solved by the whole hierarchical system. For the predictive coordination the coordinator uses constraints or part of them as coordination influences in the local sub-problems. Assuming constant values for the parts of the constraints, the coordinator "predicts" and coordinates the solutions of the local optimization sub-problems (Stoilova&Stoilov, 2002;Stoilova, 2010). This chapter applies "predictive coordination strategy" in multilevel systems for fast solution of resource allocation as management policy by solving appropriate optimization problem.

Resource allocation by predictive coordination
The scenario of the resource allocation problem, which is under consideration, concerns the case when the hierarchical system operates on steady state with available resources C and a request arise to allocate additional resources d. The problem of the fast management and optimal resource allocation is how to distribute these additional recourses, having information from the current system behavior with amount of resources C. The trivial case is to resolve the optimization problem of resource allocation with new amount of global resources C+d. It is worth to find control policy, which deals only with the allocation of the new extra amount d of the available resources.
The optimization problem is stated in the form where С (the current available resources) and d (new amount of resources, which must be allocated per subsystems) are given vectors.
For convenience it is supposed that the hierarchical system has two subsystems and the initial problem (1) becomes The optimization problem (2) for the bi-level hierarchical system is Subproblem 1 Subproblem 2 11 1 11 where Y 1 + Y 2 =C 1 +C 2 + d =D, By changing Y i , the solution x i of the subproblem i is an inexplicit function x i (y i ).
If analytical relations can be derived for these functions, the decision making for the resource allocation can be considerable accelerate. Even for the case of nonlinear optimization problem, such an approximation can benefit the decision process. To find an explicit analytical description, the relation x i (y i ) is approximated in Taylor series in the point y i =C i , which refers to the current system state dealing with the resources C i where Using the results of noniterative coordination (Stoilov&Stoilova, 1999) x i0 can be expressed as an explicit analytical relation For the linear quadratic case, using the substitutions the matrix i i dx dY , expressed in the terms of the resource allocation problem (1) is Hence, the components x i0 and i i dx dY of (4) are explicitly defined. If the optimal resource distribution opt i Y can be found, the optimal subsystems solutions and respectively the resource allocation problem () = opto pt i ii xx Y of (1) will be evaluated by substitution of opt i Y in (4). The evaluation of opt i Y is found from the coordination problem.

Coordination problem
The coordination problem of the resource allocation problem (2) where () ii xY is analytically determined according to (4), (5) and (8) and 0 () Substituting (10) in (9) an explicit description of w(Y) is found The components of w(Y), which do not contain Y i , do not influence the coordination problem and they can be omitted. Thus, using that Q i are symmetric matrices the analytical description of the coordination problem becomes Using (6) and (8) and it is valid Applying (13) the coordination problem is Taking into account the equalities the coordination problem (14), expressed in terms of the initial problem (2), is The analytical solution of this problem is (Stoilov&Stoilova, 1999

YA Q R A Q A A Q A AQ A AQ R AQ R C C d
The optimal solution x(Y) is expressed as Taylor series at the point x i =C i and according to (4) it follows and after transformations it follows (Stoilova, 2010) ( ) ( ) These relations, derived for the case of allocation of additional resources for bi-level system allow to be implemented bi-level control policy for fast resource allocation. The subsystems send to the coordinator their steady state values x i0 . The coordinator defines the appropriate coordination problem (15) and evaluates the corresponding solutions Y for the resource allocation. The final subsystems solutions are found by merely substitutions of Y in (4). Thus, the global problem of the resource allocation (2) is solved faster, using the current steady states control solutions of the subsystems.
Then, additional resources d have to be allocated, d new =j.d old , j=0,1,2,3,4 . The scale of the resource problem (N) is increased from N=4 (which corresponds to subsystems' dimensions n 1 =n 2 =2) to N=6, n 1 =n 2 =3 ; N=8, n 1 =n 2 =4; N=10, n 1 =n 2 =5; N=12, n 1 =n 2 =6. For each of these cases problem (2) is solved, applying three methods: evaluation without using the steady state subsystem solutions; evaluation applying goal coordination; evaluation, using the steady state subsystem solutions. Comparison of the computational performance is done. Thus, the most computational effective approach is identified.
The initial resource allocation problem is in the form It is necessary to allocate additional resource 1 1 d has 5 values: d=j.d, j=0,1,2,3,4 b. In this case the problem dimension is increased to: The problem's data is It is necessary to allocate additional resource 1 The data of the problems is:

Problem's solution
Each problem is solved by three methods: 1. Using the Optimization Toolbox of MATLAB, the function QP for solving linearquadratic problems is applied. The computational efficiency is assessed by the number of the operations with floating point (flops), performed by the processor during the solution of the resource allocation problem. This assessment is performed for several increases of the additional resources: from j=0 (without additional resource), to j=1 (the additional resources are d), j=2 (the additional resources are 2d), respectively for j=3 and j=4. 2. The resource allocation problem is solved, applying the non-iterative goal coordination. The computational efficiency is assessed also by the number of "flops", performed by the processor. The problem is solved, according to the relation (Stoilov&Stoilova, 1999) . For j=2, j=3, j=4 the algorithm follows the case of j=1 3. The resource allocation problem is solved with non-iterative predictive co-ordination, applying relation (17)  It is evident that having off-line evaluations of the parameters ,,, α βγδ iiii , i=1,2 , the solution of the resource allocation problem is easily found for each variation of the resources d . This follows from the explicitly derived relation x i (Y i ) , which does not insist to solve appropriate optimization problem. c. The number of "flops" is assessed.
For j=2, j=3, j=4 the algorithm follows the case of j=1.

Conclusions
Using MATLAB algorithm, the resource allocation problem is solved, without using the intermediate states of the subsystems, when they use resources C i . In that manner, each optimization problem, parameterized by the resource variation d is solved in independent way as a fully new problem. Thus, the evaluation performance, assessed as number of flops is poorly preserved.

Time Management
For the case of non-iterative goal coordination it is possible to use previously calculated coefficients, defined for the case of the steady-state subsystem management with initially allocated resources C i . Thus, the influence of the additional resources d to the computational workload of the processor is lower, compared with the case of MATLAB implementation. The increase of flops from the problem's dimension N is presented in Figure 3. The curve "QP" refers to the implementation of MATLAB's QP function. "Goal I calc" and "Predict I calc" are the curves, resulting from the calculation of Goal and Predictive coordination approaches, which lack with additional resources, d=0 (j=0). For the cases with additional resources, j>0, the evaluation performance is very high because the intermediate results for j=0 are used and the amount of the new calculations are very few. Thus, the relation flops (N) is situated near by the N axis.
The comparison, between the algorithms in solving the resource allocation problem gives preference to the method of the non-iterative goal coordination. For that case the amount of calculations are nearly 50% less than MATLAB's QP implementation for the initially resource allocation, j=0.
For the case j≠0 when additional resources have to be allocated, the non-iterative coordination's approach give quite better results because the optimization is not solved again, but the previously defined solutions for j=0 are used and the new additional calculations are quite few. Thus, the amount of flops decreases dramatically.
A comparison between the amount of flops, performed by the predictive non-iterative coordination algorithm and the MATLAB QP function, according to the frequency of the resource variation j=0,1,2,3,4 is illustrated in Figure 4. It is evident that for the case of QP implementation, its curve preserves the flops number as a constant value, because of the resource variation, the resource allocation problem has to be solved repetitively. Applying Goal and Predictive coordination algorithm, only for the initially evaluation of the steady state resource allocation, j=0, flops are performed, but they are nearly half of the QP's value. Then for resource variations, j=1,2,3,4, the additions of flops is very few, which results to close behaviour of the curves towards N axis. However, in both cases, according to the problem's dimensions and towards the frequency of the resource variations, the algorithms of the predictive coordination strategy is better and preferable because of its efficiency and rapidity.
Hierarchical bi-level model for initial separable linear-quadratic problem is developed. The coordinator's and sub-systems problems are defined. The coordinator's problem is determined like linear-quadratic one with definition area less than the definition area of initial problem. It is supposed that there is known resources and additional ones have to be allocated among the sub-systems. The inexplicit function x i (y i ) is developed in Taylor series in the point of known resources. Using the non-iterative predictive coordination for each sub-system the coordinating influences are realized. An example, illustrating the advantage of this model is presented.
The solution of the source problem using bi-level hierarchical system is preferable for online cases. Thus the time for management of a hierarchical or distributed systems decreases considerably. www.intechopen.com