# A Collaborative Framework for Customized E-Learning Services by Analytic Hierarchy Processing
## 4 The Framework Based on Analytic Hierarchy Process
### An Illustrative Example  
In the following, we present an illustrative example to demonstrate our proposed concepts. Suppose learner \(S\) wants to allocate 20 hours for a customized course, intermixed with the courses of _JavaScript Programming_, _HTML_ and _XML_, and _Internet Computing_, as described in Figure 10.  
Suppose the pairwise comparison matrix of _JavaScript Programming_ (denoted \(a_{i}\)) has been defined by the instructor in the second to sixth columns in Table 2. By applying the geometric normalization by means of the rows:  
\[w_{i}=\frac{\sqrt[n]{\prod_{j=1}^{n}a_{ij}}}{\sum_{i=1}^{n}\prod_{j=1}^{n}a_{ ij}},\ i,\ j=1,\ 2,...,\ n \tag{2}\]  
Figure 10: An example two-stage AHP illustration. Figure 9: The Generalized two-stage AHP framework. The related computation can be derived in the seventh to eighth columns in Table 2. We can derive the priority order from the vector in the ninth column as: Degree of Difficulty (DoD) > Importance > Relevance > Sequence > Bloom's Taxonomy. Besides, based on the derived \(\lambda_{\max}=5.183396\), we can compute the Consistency Index, CI = \((\lambda_{\max}-n)/(n-1)\) = \((5.183396-5)/(5-1)\) = \(0.183396/4\) = \(0.045849\), and derive the Random Index, using RI = 1.12 by mapping to the Random Consistency table suggested by [PERSON] (1980) [2]. Then, verify the Consistency Ratio, CR = CI/RI = \(0.045849/1.12\) = \(0.040937<0.1\), which passes the consistency check. Similarly, we can apply the same process to _HTML_ and _XML & Internet Computing_ to derive their preference orders as listed in Tables 3 and 4, respectively. Their consistency ratios have been checked and listed below the tables, respectively. We then move forward to the pairwise comparisons of the three courses on the third level, comparing them pairwise in satisfying each criterion on the second level. The involved instructors are responsible for this task. They need to generate five \(3\times 3\) matrices of judgments (since there are five elements on level two, and three courses to be pairwise compared for each element) through the interface provided by the system, as listed in Table 5. This is supposed to be done just once for each pair of courses. The next step is to synthesize the priorities. By employing the distributive mode to establish the composite or global priorities of the courses, the instructors may need to provide the weighting values for all the course units, as shown in Tables 6 and 7. If the instructors can patiently define the criteria weighting of their own course units (to be done just once), then the system can derive the fine-grained weighting of each unit and determine the unit priority orders as shown in Table 8.  
However, assigning the weighting values for each course unit is tedious work. If the instructors are only responsible for assigning coarse-grained weights on the course level (instead of unit level), then the system can still use these course weights to compute the inter-course weight for each unit. For example, assume in Figure 11:  
1. The weights of course \(x\) and \(y\) are 0.4 and 0.6, respectively denoted \(w(x)\) = 0.4 and \(w(y)\) = 0.6,
2. The weight of unit 1 of course \(x\) is 0.3, denoted \(w(x.1)\) = 0.3,
3. The weight of unit 1 of course \(y\) is 0.2, denoted \(w(y.1)\) = 0.2, \begin{table}
\begin{tabular}{c c c c c c c c c c} \hline DoD & 1 & 3 & 1 & 5 & 9 & 2.66727 & 0.3770 & 1 & 1.9700 & 5.22538 \\ \hline Relevance & 1/3 & 1 & 1/3 & 1 & 7 & 0.95098 & 0.1344 & 3 & 0.6834 & 5.08535 \\ \hline Importance & 1 & 3 & 1 & 3 & 9 & 2.40822 & 0.3403 & 2 & 1.7271 & 5.07438 \\ \hline Sequence & 1/5 & 1 & 1/3 & 1 & 7 & 0.85862 & 0.1213 & 4 & 0.6332 & 5.21817 \\ \hline Bloom Taxonomy & 1/9 & 1/7 & 1/9 & 1/7 & 1 & 0.19066 & 0.0270 & 5 & 0.1432 & 5.31370 \\ \hline Sum & & & & & 7.07576 & 1 & & & \(\lambda_{\max}\) = 5.183396 \\ \hline \end{tabular}
\begin{tabular}{c} CR = CI/RI = \(0.045849/1.12\) = \(0.040937<0.1\) \\ \end{tabular}
\end{table} 
Table 2: The Pairwise Comparison Matrix for _JavaScript Programming_.