Toward E-Content Adaptation : Units ’ Sequence and Adapted Ant Colony Algorithm

An adapted ant colony algorithm is proposed to adapt e-content to learner’s profile. The pertinence of proposed units keeps learners motivated. A model of categorization of course’s units is presented. Two learning paths are discussed based on a predefined graph. In addition, the ant algorithm is simulated on the proposed model. The adapted algorithm requires a definition of a new pheromone which is a parameter responsible for defining whether the unit is in the right pedagogical sequence or in the wrong one. Moreover, it influences the calculation of quantity of pheromone deposited on each arc. Accordingly, results show that there are positive differences in learner’s passages to propose the suitable units depending on the sequence and the number of successes. The proposed units do not depend on the change of number of units around 10 to 30 units in the algorithm process.


Introduction
The content adaptation and the personalized path to learners are satisfied by a recommended sequence of units using adapted ant colony algorithm.However, there are several e-learning platforms in the market.Furthermore, they only meet the need of training guidelines to design online courses and to develop assessments.Rare are those that integrate content adaptation among their features.Thus, in previous studies, the proposed adaptive e-learning system was designed, and its components were specified [1].The learner's profile was computed using Fuzzy logic method [2], while the proposition of the adapted ant colony algorithm was discussed and was initialized.The parameters of the algorithm were explained, especially how the fitness value was obtained [3].The objective was to personalize and to integrate the adapted system into a Learning Management System.Therefore, in this present paper, two cases are analyzed through a specific graph and predefined units.The importance of Cp criterion in the algorithm behavior is discussed and argued.In reference [4], the author proposes an approach that improves learning achievement and its efficiency.We have developed a specific course to make our tests on a predefine graph with units.
The learners who benefit from this adaptation are all adults in higher education or/and in the IT services sector.This adaptation is designed for learners who wish to deepen their knowledge in a computer language programming.Three profiles are concerned by this adaptation: beginners, familiars with the course and experts.The objective is to improve their knowledge during their learning path, to give them the opportunity to validate the course easily, and to keep them motivated till the end.In fact, the learner needs to get motivated.To this end, we need to personalize the course and to propose to him/her the most pertinent units in the right sequence.The course is composed of several units.These units are categorized in five parts: "awareness", "exposition", "appropriation", "assimilation" and "production".These categories are put in a pedagogical order, the proposed course is inspired by Bloom's taxonomy [5,6] and it consists firstly of making learners aware of the content and its importance.Secondly, the knowledge that learners require to master.Thirdly, the concepts previously exposed are associated to their uses in a special context.For example in Java course, the outcome of the learning course is to code by using tables and matrixes.In this category, the code that creates matrixes and tables using pointers is shown.The assimilation category is composed of information that will deepen knowledge of learners.In this category, the way to solve problems and the specific techniques used are explained.The production is the last category that completes the knowledge.It proposes to the learner complex information, like project application, binary three codes, list codes, interfaces, graphs, web applications and its needs.It is worth noting that there is a possibility to go back in case of failing.
There are several techniques of adaptations in e-learning [7,8].In fact, ant colony algorithm is one of the optimization methods that respond to our need, which is to find an adequate learning path [9].There are a collective ants or agents in the algorithm.First, they explore a space and search for food.Then, during their exploration, every time an ant finds food, it deposits in its way a chemical drug substance named pheromone [10].This pheromone may be positive or negative.When there is a high quantity of pheromone on the arc, ants follow the path.Second, for the infrequently visited arcs, the quantity of pheromone gets evaporated with time.Then the closer arcs accumulate the deposited quantity of pheromone.Finally, based on the historic of visited arcs, the arcs that lead ant to the food are known.At first, the objective was to find food while now the aim becomes to find the shortest path.In analogy, the units are represented in a graph where learners are guided to explore in purpose to validate a course.In each passage, the value of success and failure are increased or/and decreased.In our case the new parameter of sequence is computed too.The value of deposited pheromone is positive when a learner succeeds in the current unit.Yet, the value of deposited pheromone is negative when a learner fails.In the literature, the algorithm was applied in several areas including e-learning area, sometimes, in some works the algorithm is applied with combination of other methods.For instance, in a work the algorithm was used with both the reinitialize-guidance-updating and current-guidance-updating methods to change the distribution of pheromone [11].The algorithm was applied in e-learning environment and adapted as a swarm intelligent technique [12].Moreover, researchers may propose a new pheromone that is responsible for example of controlling the algorithm to improve the search performance and to reduce the processing steps [13].Very often, the works on the application of the ant colony algorithm on the famous NP-hard combinatorial optimization inspire researchers in their contribution in the adaptive e-learning systems [14].In a recent work, the ant colony algorithm, Semantic Networks and Spreading Activation mechanisms were combined to demonstrate the distracting objects, and used as a technique to focus the robot's attention to the significant aspects of the demonstration [15].Furthermore, they concluded that based on their experimental study the learners and the lecturers agreed that the style-based ant colony system is able to provide useful supplementary learning paths [16].Several designs are also proposed to speed using ant colony algorithm [17].In addition, the successful application of the algorithm is "Paraschool", the leading French e-learning company [18].Besides, the ant colony algorithm should absolutely go through a learning phase.This phase starts by following the highest value assigned by trainers' staff to each arcs in a descending order.Those assigned values are weights.The learner has to identify himself/herself.After the profile definition, the adapted course is proposed automatically.The representation of adaptation is proposed as a sequence of units for each profile.
After the introduction, the adapted ant colony algorithm is provided within the definition of the new pheromone in the second section.In the third section, the test cases are defined.In the fourth section, the results obtained based on the two test cases are discussed.Then, the conclusion and future possible works are cited.

The Adapted Ant Colony Algorithm
Ant colony algorithm is applied on units.For each visited unit a learner must take a mini test at the end.He may fail or succeed.The history of all passages through this unit is recorded.This information helps in defining the quantity of pheromone deposited on the arc.A new pheromone is proposed to influence the behavior of the algorithm and to adjust the quantity of pheromone in two ways.The first way is to increase this quantity of pheromone to encourage the algorithm then to propose a unit rather than another because of the right sequence and the few successes.The second way is to decrease this quantity of pheromone to discourage the algorithm then to propose a unit rather than another because of the wrong sequence and the several failures.The wrong or the right sequence is defined in the model of the categorization of units.For instance, the wrong sequence is when the unit is proposed from the category of assimilation while the previous unit visited was in awareness category.For example, the right sequence is when a unit from appropriation is proposed to a learner while the previous unit proposed was from the exposure category.
In this section, the focus is on the model of units' grouping which is the reference to define the sign of the value of Cp criterion.The Cp criterion is the new pheromone that is taken into consideration in the fitness value calculation.If a unit is in the right sequence then the Cp value is positive.If the visited unit is in the wrong sequence then the Cp value is negative.However, the fitness function is the main calculation that influences the proposed units to the learner.It is in this function where the adaptation is made by adding the calculation of Cp criterion.

New Pheromone
The new pheromone is proposed to improve ant colony algorithm behavior.When the current unit is recognized as in the right pedagogical sequence, then the algorithm is encouraged to propose this unit.If not, the quantity of pheromone deposited is decreased by this new pheromone on the arc leading to that unit.
In addition, five categories are defined to develop the course.Returns are possible in case a learner fails in a unit that belongs to a category (Figure 1).These returns are defined in the implementation of the procedure that verifies whether the proposed unit is in the right pedagogic sequence or not.The proposed model defines all the passages that are recommended.For instance, if a unit is proposed from "appropriation" and the previous unit was from "exposure" then the unit is in the right sequence.This case demonstrates that a learner succeeds in the unit in the exposure category and the system proposes to him a unit from the appropriation category.Moreover, if a unit from the exposure category is proposed and the previous unit was in production category then the unit is in the right sequence.This last case demonstrates that this previous unit in the production unit was not succeeded by the learner.

Fitness's Value
In a graph, fitness value is one of the algorithm parameters.Fitness's value F defines which arc we will be taken.In addition, it defines the priority in visiting the arcs.The arc with the highest fitness value is used first.The standard formula for calculating the fitness is composed of two types of parameters, which are related to a learner like the profile, the historic passages on units and the collective parameters that are in common and are related to the units like the number of successes and failures (1): In the previous work, four criteria were taken into consideration to define learner's profile: elapsed time in the placement test, the score obtained in that placement test, elapsed time in unit's consultation and the score obtained in that test's unit.Moreover, a learner's profile is represented by a global score obtained from fuzzy logic method application.
Historic value H, time value T, global score P, new pheromone Cp, pheromone of success S, pheromone of failure F, and all weights are considered.Thus, the formula of fitness value is obtained (2) [3]: H represents the history of the l learners during their passages over n units.T represents the elapsed time during the n unit consultation that spends l learner.P the score obtained to define the learner level.β1, β2, β3 are the weights of the parameters H, T and P, respectively.Ѡw, Ѡp, Ѡs, Ѡf are the weights of the weight, the pedagogical sequence, the success and the failure parameters.Values of weights are determined by the decision makers to favor one factor or parameter over another.In this study we consider all weights are equal to "1".W is the weight represented by a value assigned by the course designer on each arc.The values of weights are assigned depending on the experience of the trainer.These values of weights are necessary to initiate the process of learning stage at ant colony algorithm.This means that, based on these assigned values of weights, the algorithm starts his process of generating paths and propose units to learners.In this study, we asked experts in java course about the content, design and the values of weights.The calculation of the value of success "S" is represented by α1/k knowing that k is the number of steps made by a learner and α1is a constant defined by the decision makers.The calculation of the value of failure "F" is represented by α2/k knowing that k is the number of steps made by a learner and α2 is a constant defined by the decision makers.After each unit's consultation by a learner, a positive or negative pheromone is computed on the arc that lead to the unit in the pedagogical sequence.α3 is the constant value that concerns the unit in the pedagogical sequence.The Cp criterion is represented by the following (3) [3]: In the case that the unit is not in the right pedagogical sequence then the computed Cp value is negative.The negative value is computed on purpose to decrease the total quantity of pheromone deposited on the arc.In fact, the algorithm proposes the unit linked to the arc that has a high value of deposited pheromones.To influence or to adjust the algorithm behavior the negative value is added to decrease the total of the deposited quantity of pheromone then to discourage the unit proposition.Besides, the positive value is added to increase the total of the deposited quantity of pheromone then to encourage the unit proposition.

Test Cases
Based on the model of units' categorization, the simulation is required to discuss and to prove the pertinence of the new pheromone Cp.It is also required to discuss its positive impact on the algorithm behavior.The objective is to encourage the algorithm to propose the unit in the right sequence as it is defined in the model in which many learners succeed.In other words, that the algorithm behavior is influenced in proposing units.This is through increasing pheromones' values on the arcs where the units are in appropriate sequence and where learners succeed.In addition, it is through decreasing pheromones' values on arcs where units are not in right sequence and where the learners fail.
A succession of units is considered from each category of pedagogical course's representation.First, 10 units in total are tested and designed (Figure 2) in the graph in Table 1.Second, 30 units are considered in the other test case Table 2 including units used in Table 1.Both graphs in Tables 1 and 2 are represented by "units' start", "units' destination" and the weight deposited initially on the arcs that link the two units.These units are represented by n list of units {n1, n2, n3, n4, n5, n6, …, n29, n30}.In case 1 {n1, …, n10} are considered while in case 2 {n1, n2, …, n29, n30} are all processed.Each unit is referred to an external grain in OpaleSup (Figure 3).Based on the formula (2), β1 = β2 = β3 = 1 and Ѡw = Ѡp = Ѡs = Ѡf = 1 are considered in the process of the simulation.The constant α1 = 0.6 is for the success computation parameter.The constant α2 = −0.4 is for the failure computation parameter.The constant α3 = 0.8 is for pedagogical sequence computation.K is the number of passages that the learner made to attain the unit we are calculating the number of successes or/and failures or/and pedagogical sequence criteria.The first part, related to the learners' parameters, is a constant from a list of predefined values.The calculation of the profile was done by using the fuzzy logic method but it is not yet included in the ant colony algorithm to make the adaptation as a hybrid method.We are now interested in simulating the adapted ant colony algorithm behavior that considered the new parameter of pedagogical sequence.
(H(n,l) + T(n,l) + P) = {0.2,0.5, 0.6, 0.8, 0.1, 0.25} The units in pedagogical sequence are defined, in Tables 1 and 2. In cell of sequence, units that are in good pedagogical sequence are represented by "ok", in Tables 1 and 2. In a cell of sequence units that are not in pedagogical sequence are represented by "no".The weights in Tables 1 and 2 are randomly defined.Two cases are considered in this paper to compare the plots obtained and to discuss results.The difference between the two cases is the number of units.For case one, 10 units are fixed while in case two the number is fixed to 30 units.Moreover, the number of generations is "100" and the number of learners is 10 for both the tests' cases.The objective is to know whether the number of units influences the ant colony algorithm behavior to propose units in the right sequence and where many learners succeed.

Case 1
In the first case, we consider 10 units previously defined in Figure 2 to make the simulation.In Figures 4 and 5, two functions are represented for the learner number 3 and the learner number 10 respectively.The learner number 3 and 10 made 100 generations through the graph of ni units in Table 1.Weights are chosen randomly to give more chance to some units to be visited instead of others.Besides, weights are the initial values that the algorithm is based on to propose units.After a few processes the algorithm starts to compute a new value of the quantity of pheromone based on the success of learners, their failures and the sequence of units.To impose to the algorithm how to choose the best unit we must define the adapted formula of fitness calculation (2).Figures 4 and 5 show the changes and the fluctuations that happened in each generation of the quantity of pheromones.These generations are the learners' passages from an arc that has a high pheromone value in ascending order.Two plots are shown in the two figures one blue with Cp criterion and one red without Cp criterion.Once the integration of the new pheromone which is Cp criterion is done, then the fluctuations change.When the plot, in blue, with the integration of Cp criterion is higher, in a specific generation, means that the quantity of pheromone is important.If it is important, then the probability to propose the arcs increases.In the opposite case, when the plot, in blue, with the integration of Cp criterion is lower, in a specific generation, means that the quantity is less important.If it is less important, this means that the probability to propose arcs in this generation is decreased.
In the generation number 19, for both Figures 4 and 5 the pheromones' values are higher in plot in blue comparing with the plot in red.Consequently, with Cp criterion the algorithm is encouraged to go through that arc and to propose the unit in the right pedagogical sequence.
In the generation number 25 in Figure 5, the plot in blue is lower than the plot in red; that is, the pheromone value is decreased and the algorithm is discouraged to go through an arc so it does not propose the unit linked to this arc.
In the generation number 49, the plot in blue for both Figures 4 and 5 shows that the algorithm is encouraged to propose to the learners number 3 and number 10 to go through an arc that has an important pheromone's value.
Cp criterion effectively plays a considerable role in encouraging the algorithm to propose the best unit in the right sequence.Yet, the integration of the part that defines the learner's profile using Fuzzy logic method within the adaptation of the content is important.

Case 2
The same parameters are considered in this case.Yet, the number of units which is set to 30 instead of 10 units in case one is different.Two plots for both Figures 6 and 7 are representing the plot for 30 units with Cp criterion in blue and the plot in red without Cp criterion for, respectively, learner number 3 and learner number 10 (Figures 6 and 7).In Figure 6 and in the generation number 49, the plot in blue with Cp criterion marks the importance of the quantity of pheromone.Besides, in Figure 6 the importance is reduced for the same number of generation in plot blue.Comparing with previous results using 10 units, it can be concluded that the increased number of units did not influence the results for the generation number 49 in both cases.
In generation 28 in Figure 7, the quantity of pheromone is more reduced in red plot than it is in red plot in Figure 6 for the same generation.Comparing with the previous case, in generation 28, the reduction is proportionally almost the same.The change of 30 units does not influence the results.

Conclusions
The new pheromone to determine pedagogic sequence of units is the additional parameters which improves the proposed units.Consequently, the Cp criterion responsible to define unit in sequence improves the Ant algorithm behavior.More the distribution of pheromone with Cp criterion on an arc is important more the probability of choosing the unit in its extremity is important too.However, two cases were tested in the present paper.These cases had different numbers of units: one case was tested with 10 units and the other case was tested with 30 units.Results showed that using the Cp criteria, the pertinence of the units is achieved.The results were not affected by the number of units around 10 to 30.
A similar study is in process to compare between using Cp criterion in the adapted ant colony algorithm and between using Cp criterion in an adapted genetic algorithm to propose the most pertinent and personalized unit to the learner.Four criteria are considered to define learner's profile with fuzzy logic [2].The developed content's units are grouped into five categories in a pedagogic sequence.Based on the model of categorization the algorithm is adapted to be integrated into ACAEL system Ant Colony Adaptive E-Learning [1].As a prospective project, the combination of the two methods (fuzzy logic method and adapted ant colony algorithm) is planned.

Figure 1 .
Figure 1.Possible backs and progression for a learner.

Figure 2 .
Figure 2. Units of java course and their titles.

Figure 3 .
Figure 3. External grains' representation used in our test case.

Table 1 .
Weights on arcs that are linking between units' start and units' destination units used in case 1.

Table 2 .
Weights on arcs that link units' start and units' destination used in case 2.Sequence ok ok Ok no no ok ok ok ok no no ok no ok ok ok no Ok ok -