Professional Documents
Culture Documents
DOI 10.1007/s11227-011-0625-1
D. Ergu
Southwest University for Nationalities, Chengdu 610200, China
Y. Shi
College of Information Science & Technology, University of Nebraska at Omaha, Omaha,
NE 68182, USA
Y. Shi
Research Center on Fictitious Economy and Data Sciences, Chinese Academy of Sciences,
Beijing 100190, China
D. Ergu et al.
1 Introduction
Over the past years, High Performance Computing (HPC) has been extensively stud-
ied by researchers and applied to a variety of fields ranging from science, engineer-
ing, and business [5, 9, 18, 24, 27, 38]. With the development of HPC, there are many
computing paradigms including Cluster computing [12], Grid computing [19, 34],
Peer-to-Peer (P2P) computing [25, 42], Service-oriented computing [15], Market-
oriented computing [1], and Cloud computing [11, 13]. Cloud computing is regarded
as the 5th utility services after water, electricity, gas, and telephony service [2].
A Cloud is a type of parallel and distributed system consisting of a collec-
tion of interconnected and virtualized computers that are dynamically provisioned
and presented as one or more unified computing resources based on service-level
agreements established through negotiation between the service provider and con-
sumers. [2]. The computing resources, either software or hardware, are virtualized
and allocated as services from providers to users. The computing resources can be
allocated dynamically upon the requirements and preferences of consumers.
Traditional system-centric resource management architecture cannot process the
resource assignment task and dynamically allocate the available resources in a cloud
computing environment. Fujiwara et al. [10] proposed a market-based mechanism to
allocate resources in a cloud computing environment, where the resources are virtual-
ized and delivered to users as services. Since the consumers may access applications
and data of the Cloud from anywhere at any time, it is difficult for the cloud service
providers to allocate the cloud resources dynamically and efficiently.
In this paper, a task-oriented resource allocation model is proposed. The tasks
provided by the users are ranked by reciprocal pairwise comparison matrix and the
Analytic Hierarchy Process (AHP). The cloud resources are assigned for the tasks
according to the weight of each task determined by reciprocal pairwise comparison
matrix of user preferences. Since different users could have conflicting preferences,
there might be inconsistent elements in the reciprocal pairwise comparison matrix.
Because weights and the rank of tasks will be unreliable if inconsistency exists, many
studies have been focused on the inconsistency problem in decision making [3, 4,
16, 2123, 2833, 35, 36]. However, most of the existing methods are not accurate
enough to improve the consistency ratio. For instance, the inconsistency identification
method embedded in the AHP software Expert Choice needs to identify the incon-
sistent element by calculating the weights vectors from the inconsistent matrix [37].
Likewise, Cao et al. [3] develop a heuristic approach that autogenerates a consistent
matrix based on the original inconsistent to modify the inconsistent comparison ma-
trix. However, the revision process stops at the requirement that CR 0.1, which
may not obtain a superior CR. Therefore, an induced bias matrix (IBM) only based
on the original inconsistent comparison matrix is proposed to identify the inconsis-
tent elements and improve the consistency ratio (CR) when the CR is more than 0.1
while it preserves most of the original comparison information [6]. In this paper, the
IBM is used to further identify the inconsistent elements and improve the consistency
ratio even the CR is less than 0.1, which is important for task-oriented resource allo-
cation in a cloud computing environment since the weights of tasks will be different
if the acceptable CR is different. For instance, the weights of tasks with CR = 0.01
The analytic hierarchy process: task scheduling and resource
and with CR = 0.08 are different, which will lead to different computing resource
allocation.
The remaining parts of this paper are organized as follows. The next section briefly
describes the resource allocation and tasks scheduling in a cloud computing envi-
ronment. In Sect. 3, the induced bias matrix method for inconsistency identification
in a cloud computing environment and the inconsistency identification steps are in-
troduced. Two numeric examples are illustrated using the proposed method and the
weights of tasks are compared with different values of CR in Sect. 4. Section 5 con-
cludes the paper and discusses future research directions.
Resource allocation is a hot topic and key factor in distributed computing and grid
computing [10, 14, 17, 26, 39, 40]. For distributed computing, processing capacity re-
sources are homogeneous and reserved. However, for grid computing, the resources
are highly unpredictable. The computers are heterogeneous, their capacities are typi-
cally unknown and changing over time, which may connect and disconnect from the
grid at any time. Therefore, the same task is sent to more than one computer in Grid
computing, and the user receives the output of the computer that completes the task
first [20]. Dynamic allocation of tasks to computers is complicated in the grid com-
puting environment due to the complicated process of assigning multiple copies of
the same task to different computers. Likewise, the resource allocation is also a big
challenge in cloud computing.
Cloud computing not only enables users to migrate their data and computation
to a remote location with minimal impact on system performance, but also easy ac-
cess to a cloud computing environment to visit their data and obtain the computa-
tion at any time and anywhere [13]. Cloud computing is attempting to provide cheap
and easy access to measurable and billable computational resources comparing with
other paradigms such as distribute computing, Grid computing, etc. Therefore, Yazir
et al. [41] proposed a new approach for dynamic autonomous resource allocation in
computing clouds through distributed multiple criteria decision analysis. In a cloud
computing environment, the tasks are distributed across distinct computational nodes.
In order to allocate cloud computing resources, nodes with spare computing power
are detected, and network bandwidth, line quality, response time, task costs, and re-
liability of resource allocation are analyzed. Hence, the quality of cloud computing
service can be described by resources such as network bandwidth, complete time, task
costs, and reliability, etc. The framework of task scheduling and resource allocation
in a cloud computing environment is shown in Fig. 1.
In the proposed framework, computing tasks are collected in the Task Pool. Tasks
are ranked and submitted to computing resources distributed in Cloud Computing
Nodes. The computing resources are allocated according to the weights of tasks. The
proposed framework will be further illustrated in the following section.
D. Ergu et al.
C = AA nA
Step 2: Identify the largest absolute value(s) of elements deviating farthest from zero
in the induced matrix C, and record the location. For instance, suppose cij is
such an element in matrix C and the location is ith row and j th column.
Step II: Identify the potential inconsistent elements by the bias identifying
vector.
Step 3: Let the ith row of the original pairwise comparison matrix A be represented
as a row vector ri = (ai1 , ai2 , . . . , ain ) and the j th column of the same ma-
trix as a column vector cjT = (a1j , a2j , . . . , anj )T . Where cjT is the transpose
vector of column vector cj .
Step 4: Calculate the scalar product of the vectors ri and ciT in n dimension. The dot
product b of the two vectors becomes:
Step 5: Compute the deviation elements which are far away from aij in vector b by
the following formula. Let f be the bias identifying vector henceforth.
f = b aij = (ai1 a1j aij , ai2 a2j aij , . . . , aik akj aij ,
. . . , ain anj aij )
Step III: Identify the inconsistent elements using the identification method
and the method of matrix order reduction.
Step 6: Identify the error elements in pairwise matrix A that might cause the incon-
sistency by bias identifying vector f .
Step 7: Find the values of cik and ckj in the induced matrix C and identify the corre-
sponding elements aik and akj .
The above seven steps can not only be used to identify inconsistent elements when
the CR of a comparison matrix is more than 0.1, but also be used to identify the
inconsistent elements even the CR of a comparison matrix is less than 0.1, which is
important for cloud computing environment to derive the weights of the tasks and
task scheduling. The following section will illustrate such applications in a cloud
computing environment.
4 Illustrative example
When the CR is more than 0.1, the reciprocal comparison matrix needs to be adjusted
until the CR is less than 0.1. Saaty has proved that the final priority vectors remain
The analytic hierarchy process: task scheduling and resource
the same as long as the CR is less than 0.1, therefore, in most cases, a reciprocal
comparison matrix is valid if the CR is less than 0.1. However, it is different for tasks
priorities in cloud computing since the computing resources are allocated according
to the weights of the requested tasks, and the charges are also paid in terms of what
kinds of computing resources are used to fulfill the tasks. To illustrate the strict con-
sistency requirement for tasks which computing resources should be allocated, two
examples with four requested tasks and with eight requested tasks are used in the
following.
Example 1 Assume there are four tasks applying for the cloud computing resource,
the comparison matrix with respect to the response time is:
T1 1 4 2 6 0.5301
1
T2 4 1 2 4 0.2339
1 1
T3 2 2 1 2 0.1643
1 1 1
T4 6 4 2 1 0.0716
CR = 0.0736
Apply the proposed consistency identification method to further improve the con-
sistency ratio.
Step 2. The largest value in matrix C is 8, where location is 1st row and 4th column.
Step 3. Identify all the values in 1st row and 4th column of pairwise matrix A, that is
Step 4. The scalar product b of the vectors r1 and c4T in the dimension 4, that is,
b = r1 c4T = (6 16 4 6)
D. Ergu et al.
f = b a14 = (0 10 2 0)
Step 6. The value, 10, is the largest one far from zero, and others are zero or close to
zero. It indicates that a14 = 6 is probably correct while 10 = a12 a24 a14 is
the inconsistent element. a12 a24 may have a problem.
Step 7. As c12 = 5.5 < 0 and c24 = 2.5 < 0, the corresponding elements a12 and
a24 are too large.
Suppose the a12 is decreased to 2, then the revised comparison matrix A becomes:
1 2 2 6
1
2 1 2 4
A=1 1
2 2 1 2
1 1 1
6 4 2 1
T1 1 2 2 6 0.4578
1
T2 4 1 2 4 0.2910
1 1
T3 2 2 1 2 0.1738
1 1 1
T4 6 4 2 1 0.0775
CR = 0.0172
Compare the final priorities of four tasks with respect to response time with CR =
0.0736 and CR = 0.0172, respectively, which is shown as follows:
T1 0.5301 0.4578
T2 0.2339 0.2910
T3 0.1643 0.1738
T4 0.0716 0.0775
It is shown that the weight of task 1 decreases, and the weights of task 2, task 3,
and task 4 increase slightly. Although the ranking results do not change, the weights
The analytic hierarchy process: task scheduling and resource
of tasks have changed. In the cloud computing resource allocation, there are massive
computers linked together to executive the corresponding tasks with different prefer-
ences and requirement. The tasks with different weights will be assigned to different
cloud computing nodes, which may lead to different computing resources usages and
expenses. Therefore, the further inconsistency identification even the CR is already
less than 0.1 is becoming important and meaningful.
From the revised comparison matrix A, there still have some inconsistent judg-
ments, such as a13 a34 = 4 = a14 = 6 and a12 a24 = 8 = a14 = 6, although the CR is
equal to 0.0172. In order to further improve the consistency ratio, the induced bias
matrix again can be used to identify the inconsistent elements.
Step 1. The induced matrix C = A A 4 A is
0 1.5 3 0
0.66 0 1 1
0.416 0.5 0 1
0.041 0.0833 0.166 0
Step 2. The largest value in matrix C is 3, where location is 1st row and 3rd column.
Step 3. Draw out all the values in 1st row and 3rd column of pairwise matrix A, that
is
r1 = (1 2 2 6), and c3T = (2 2 1 1/2)
Step 4. The scalar product b of the vectors r1 and c3T in the dimension 4, that is,
b = r1 c3T = (2 4 2 3)
f = b a13 = (0 2 0 1)
Step 6. The values, 2, is the largest one. Because 2 = a12 a23 a13 , it shows that a13
might be slightly small or the elements a12 , a23 , may be slightly large.
Step 7. As c13 = 3 > 0, c12 = 1.5 < 0, c23 = 1 < 0, the corresponding element
a13 is too small, the corresponding elements a12 , a23 , are too large. The
method of matrix order reduction [6] is applied to identify the elements a13 ,
a12 , a23 . When the task 1 was removed from the matrix A, namely, the first
row and first column are deleted, the induced matrix C becomes:
0 0 0
0 0 0
0 0 0
It shows that the inconsistent elements are a12 , a13 , namely, a13 is too small and
a12 is too large. It explains that both of the elements have affected c14 = 0.
The results of the identification explain the reasons why the following inequalities
occur. That is,
Suppose the a13 is increased to 3, and calculate the eigenvalue, consistency ratio,
and eigenvector for the second revised comparison matrix, we can get
The weights of task 1 increased from 0.4578 to 0.4899 while the weights of task 3
decreased from 0.1738 to 0.1516. The weights of task 2 and task 4 changed slightly.
Task T1 T2 T3 T4 T5 T6 T7 T8 Priorities
Expenses
The inconsistent values in the comparison matrix are identified by the IBMM
model [7], namely, a32 is too small while a23 is too large. Let us assume the a32
is increased to 1/3 from 1/4, and a23 is decreased to 3 from 4, then calculate the
corresponding CR and priority vectors of tasks, we get:
Task T1 T2 T3 T4 T5 T6 T7 T8 Priorities
Expenses
Further change a32 to 4 from 1/4, and a23 to 1/4, and calculate the CR and priority
weights of all tasks, we get
Task T1 T2 T3 T4 T5 T6 T7 T8 Priorities
Expenses
When the CR = 0.1055, the weights of task 5 and task 7 both are 0.2183, the
weight of task 3 is 0.1669, while the weights of task 2 and task 1, are 0.1238 and
0.1091, respectively. However, the weights of task 4, task 6, and task 8 are identical,
0.0546.
When the CR is decreased to 0.0504, the weights of task 5 and task 7 both in-
creased to 0.2228. The weight of task 3 also increased to 0.1825, and the weight
of task 1 increased slightly to 0.1114. However, the weight of task 2 decreased to
0.0933. The weights of task 4, task 6, and task 8 increased slightly to 0.0557 from
0.0546.
When the CR is decreased to 0, namely, the comparison matrix is completely
consistent. The priority weights have been changed. The weights of task 3, task 5,
and task 7 become 0.2222, the weights of task 2, task 4, and task 6 are 0.0556, and
the weight of task 1 is 0.1111.
Therefore, the computing resource allocation will be different for the tasks under
different consistency ratios.
D. Ergu et al.
5 Conclusions
This paper proposes a model for task-oriented resource allocation in cloud comput-
ing environment. The tasks are pairwise compared according to network bandwidth,
complete time, task costs, and reliability of task. The weights of tasks are then cal-
culated using the AHP method and the corresponding computing resources are al-
located in terms of the weights of tasks. The focus of this paper is the consistency
issue of a reciprocal comparison matrix, and the induced bias matrix is applied to
further identify the inconsistent elements and improve the consistency ratio under
the case that the consistency ratio is already less than 0.1. The two illustrative ex-
amples show that the weights are changed with different values of CR which are
less than 0.1. The results indicate that it is meaningful to further identify the incon-
sistent elements and improve the consistency ratio when the weights of tasks are
used to allocate dynamically the computing resources in cloud computing environ-
ment.
Although the weights of tasks can be derived accurately by improving the con-
sistency ratio, allocating the corresponding computing resources dynamically and
accurately for the tasks still remains to be studied, which is a research direction in the
future.
Acknowledgements This research has been partially supported by grants from the National Natural
Science Foundation of China (#70901011, #70901015, and # 70921061).
References
1. Broberg J, Venugopal S, Buyya R (2008) Market-oriented grids and utility computing: the state-of-
the-art and future directions. J Grid Comput 6(3):255276. doi:10.1007/s10723-007-9095-3
2. Buyya R, Chee SY, Venugopal S, Roberg J, Brandic I (2009) Cloud computing and emerging IT
platforms: vision, hype, and reality for delivering computing as the 5th utility. Future Gener Comput
Syst 25(6):599616
3. Cao D, Leung LC, Law JS (2008) Modifying inconsistent comparison matrix in analytic hierarchy
process: a heuristic approach. Decis Support Syst 44:944953
4. Despotis DK, Derpanis D (2008) A minmax goal programming approach to priority derivation in
AHP with interval judgements. Int J Inf Technol Decis Mak 7(1):175182
5. Dongarra J, Sterling T, Simon H, Strohmaier E (2005) High-performance computing: clusters, con-
stellations, MPPs, and future directions. Comput Sci Eng 7(2):5159. doi:10.1109/MCSE.2005.34
6. Ergu D, Kou G, Peng Y, Shi Y (2011) A simple method to improve the consistency ratio of the pair-
wise comparison matrix in ANP. Eur J Oper Res 213(1):246259. doi:10.1016/j.ejor.2011.03.014
7. Ergu D, Kou G, Shi Y, Shi Y (2011) Analytic network process in risk assessment and decision analysis.
Comput Oper Res. doi:10.1016/j.cor.2011.03.005
8. Fang YQ, Wang F, Ge JW (2010) Task scheduling algorithm based on load balancing in cloud com-
puting. In: Web information systems and mining. Lecture Notes in Computer Science, vol 6318,
pp 271277. doi:10.1007/978-3-642-16515-3_34
9. Fey D, Schneider M, Jahns J, Knuppertz H (2010) Optical multiplexing techniques for pho-
tonic CLOS networks in high performance computing architectures. J Supercomput. doi:10.1007/
s11227-010-0496-x
10. Fujiwara I, Aida K, Ono I (2009). Market-based resource allocation for distributed comput-
ing. IPSJ SIG Technical Report, vol. 2009-HPC-121, No 34. http://www.alab.ip.titech.ac.jp/papers/
swopp2009-fujiwara.pdf
11. Garg S, Vecchiola CH, Buyya R (2011) Mandi: a market exchange for trading utility and cloud com-
puting services. J Supercomput. doi:10.1007/s11227-011-0568-6
The analytic hierarchy process: task scheduling and resource
12. Hababeh I (2010) Improving network systems performance by clustering distributed database sites.
J Supercomput. doi:10.1007/s11227-010-0436-9
13. Hayes B (2008) Cloud computing. Commun ACM 51(7):911
14. Huang YF, Chao BW (2001) A priority-based resource allocation strategy in distributed computing
networks. J Syst Softw 58(3):221233
15. Huhns MN, Singh MP (2005) Service-oriented computing: key concepts and principles. IEEE Internet
Comput 9(1):7581
16. Iida Y (2009) Ordinality consistency test about items and notation of a pairwise comparison matrix in
AHP. In: Proceedings of the international symposium on the analytic hierarchy process
17. Ismail L, Mills B, Hennebelle A (2008). A formal model of dynamic resource allocation in grid
computing environment. http://www.irml.uaeu.ac.ae/hpgcl/images/Publications/snpd2008.pdf
18. Jang J, Seo E, Jo H, Kim J (2010) A low-overhead networking mechanism for virtualized high-
performance computing systems. J Supercomput. doi:10.1007/s11227-010-0444-9
19. Khanli LM, Analoui M (2009) Active grid information server for grid computing. J Supercomput
50(1):1935. doi:10.1007/s11227-008-0250-9
20. Koole G, Righter R (2007). Resource allocation in grid computing. Journal of Scheduling.
doi:10.1007/s10951-007-0018-8
21. Kou G, Lou C (2010) Multiple factor hierarchical clustering algorithm for large scale web page and
search engine clickstream data. Ann Oper Res. doi:10.1007/s10479-010-0704-3
22. Kou G, Liu X, Peng Y, Shi Y, Wise M, Xu W (2003) Multiple criteria linear programming to data min-
ing: models, algorithm designs and software developments, Part 2. Optim Methods Softw 18(4):453
473
23. Kou G, Peng Y, Shi Y, Wise M, Xu W (2005) Discovering credit cardholders behavior by multiple
criteria linear programming. Ann Oper Res 135(1):261274
24. Liu Y, Li J, Liao W, Choudhary A, Shi Y (2010) High utility itemsets mining. Int J Inf Technol Decis
Mak 9(6):905934. doi:10.1142/S0219622010004159
25. Milojicic DS, Kalogeraki V, Lukose R, Nagaraja K, Pruyne J, Richard B, Rollins S, Xu ZC (2003).
Peer-to-peer computing. http://www.hpl.hp.com/techreports/2002/HPL-2002-57R1.pdf
26. Moschakis I, Karatza H (2010) Evaluation of gang scheduling performance and cost in a cloud com-
puting system. J Supercomput. doi:10.1007/s11227-010-0481-4
27. Peng Y, Kou G, Shi Y, Chen Z (2008) A descriptive framework for the field of data mining and
knowledge discovery. Int J Inf Technol Decis Mak 7(4):639682
28. Peng Y, Hou G, Shi Y, Chen Z (2008) A multi-criteria convex quadratic programming model for credit
data analysis. Decis Support Syst 44(4):10161030
29. Peng Y, Wang G, Wang H (2010) User preferences based software defect detection algorithms selec-
tion using MCDM. Inf Sci. doi:10.1016/j.ins.2010.04.019
30. Peng Y, Kou G, Wang G, Shi Y (2011) FAMCDM: A fusion approach of MCDM methods to rank
multiclass classification algorithms. Omega. doi:10.1016/j.omega.2011.01.009
31. Peng Y, Kou G, Wang G, Wu W, Shi Y (2011) Ensemble of software defect predictors: an AHP-based
evaluation method. Int J Inf Technol Decis Mak 10(1):187206
32. Peng Y, Wang G, Kou G, Shi Y (2011) An empirical performance metric for classification algorithm
selection in financial risk management. Appl Soft Comput 11(2):2906915
33. Peng Y, Zhang Y, Tang Y, Li S (2011) An incident information management framework based on
data integration, data mining, and multi-criteria decision making. Decis Support Syst 51(2):316327.
doi:10.1016/j.dss.2010.011.25
34. Qureshi K, Khan F, Manuel P, Nazir B (2010) A hybrid fault tolerance technique in grid computing
system. J Supercomput. doi:10.1007/s11227-009-0345-y
35. Saaty TL (1986) Axiomatic foundation of the analytic hierarchy process. Manag Sci 32(7):841855
36. Saaty TL (1990) How to make a decision: the analytic hierarchy process. Eur J Oper Res 48(1):926
37. Saaty TL (2003) Decision-making with the AHP: Why is the principal eigenvector necessary. Eur J
Oper Res 145(1):8589
38. Schroeder B, Garth AG (2006) A large-scale study of failures in high-performance computing sys-
tems. In: International conference on dependable systems and networks (DSN06), pp 249258
39. Shu WN (2007) Optimal resource allocation on grid computing using a quantum chromosomes ge-
netic algorithm. In: Second workshop on digital media and its application in museum and heritage
(DMAMH 2007), pp 303306
D. Ergu et al.
40. Wei G, Vasilakos AV, Zheng Y, Xiong N (2009) A game-theoretic method of fair resource allocation
for cloud computing services J Supercomput 54(2):252269. doi:10.1007/s11227-009-0318-1
41. Yazr Y.O., Matthews C., Farahbod R., Neville S., Guitouni A., Ganti S., Coady Y. (2010). Dy-
namic resource allocation in computing clouds through distributed multiple criteria decision analysis.
http://dspace.library.uvic.ca:8080/bitstream/1828/2420/1/cloud2010.pdf
42. Zhao H, Li X (2011) VectorTrust: trust vector aggregation scheme for trust management in peer-to-
peer networks. J Supercomput. doi:10.1007/s11227-011-0576-6