Keywords

1 Introduction

The new technologies have changed the way that people perform their daily processes, these are already ubiquitous in the daily work. For this reason, organizations have incorporated these new technologies in their computer systems, in order to guarantee their permanence in an increasingly competitive market. These systems provide the set of services that employees and users require, improving the quality of their products and increasing the efficiency of their processes.

New technologies have had a positive impact on the way that systems perform their functions. This is the case of online shopping systems and some search engines, which have incorporated in their applications the ability to guide users in a personalized way, presenting objects of interest, where objects are in a wide space of options possible [1]. These applications are known as Recommender Systems (RSs).

Educational environments have not been out of these changes, technologies have improved the educational process. In technology-enhanced learning (TEL), its objective is to design, develop and test socio-technical innovations that support and improve the learning practices of both individuals and organizations. It can be found a variety of applications in this domain, some of these systems have been developed as virtual platforms for teaching, this is the case of Blackboard [2], Moodle [3], Schoology [4], Mahara [5]. Other applications were oriented to the development of Intelligent Tutorial Systems (ITS), among this category are Aspire [6], ITSpoke [7], AGT (Advanced Geometry Tutor) [8]. ITSs are systems of mass teaching, so do not contemplate modes of learning that adequately adapt to the previous knowledge and ability of evolution of each student. In recent years, as a branch of research in the field of intelligent environments (IE) has been working on the development of Intelligent Classrooms (IC).

Intelligent Classrooms (IC) are spaces enriched with electronic devices that perceive their environment, because they are sensitive environments, that respond and are adapted to the needs of the present users, they are transparent, ubiquitous and intelligent. In summary, it can be said that the IC are spaces equipped with devices and sensors that communicate, with the purpose of adapting both the environment and the teaching contents according to the needs of each person in the classroom. It creates more comfortable and pleasant spaces, improving productivity and satisfaction, all in a transparent and non-intrusive way. Among this area is ClassMate, an open framework for Intelligent Environments in Education proposed by Leonidis et al. [9]; the conceptual models for designing multiagent systems (MAS) architectures for intelligent rooms can be found in [10,11,12], and works oriented to the perception of the environment in [13].

A MAS is a system consisting of a set of intelligent agents, with autonomy and proactivity that collaborate with each other using a communication protocol to reach some global objective, these systems are used in various fields (robotics, simulation, mathematics, among others). In the educational environments are aimed at the control of their environment and the management of the teaching-learning process.

The search for learning resources is a fundamental element in TEL, so RSs have become an important element in teaching systems, allow more personalized systems, because identifying the characteristics of each student they can suggest courses and learning activities according to their profile [14, 15]. There are also RSs that suggest changes to teachers in order to improve the effectiveness of education systems using web environments [9]. An improvement to RSs in education environments is found in those, which suggest learning objects (LO) based on the student profile [16].

The literature in this area is broad, different methods and recommendation techniques are proposed. Some authors use multi-attribute collaborative filters with fuzzy matching methods for selecting learning objects [17]; other authors focus on the use of collaborative filters [18, 19] or use content-based method implemented using case-based reasoning (CBR) [20, 21] or using the attribute-based technique [22]. Each work offers a solution to the classic RS problems, which are the “Cold Strat”, and the scattered LO.

This paper presents a MAS that emulates activities in the teaching process in intelligent educational environments. The MAS integrates two systems: (1) a course planning system, whose function is to schedule each course and, if it does not reach an objective in the estimated approving rate, re-schedule its programming; (2) an RS in charge of suggesting to the students, based on their profile and the established plan, the learning objects to be selected that are most suitable to that profile. The RS was designed as a hybrid architecture, in which teachers and students can rate the quality of LO.

The presented system gives a solution to the “Cold Start” problem of each method: For the search method based on content, it starts from the tags found in the analysis of the contents and the LO/teacher matrix that contains the score of each LO suggested by the teacher in the planning phase. In the collaborative method, student profiles are established and the LO/profile matrix is used, which is debugged with the allocated LO utility defined value.

The work is organized as follows, section two presents the objective of this work and the basic concepts. In section three, it’s presented the design of the teaching agent with its two components: the planning and recommendation system. Finally, section four presents the conclusions and future work.

2 Objectives of the Work and Basic Concepts

This work aims to develop a more personalized teaching system, therefore, the learning agent is defined as a system that, knowing the students in classroom, find their profile and based on their level of knowledge, learning characteristics, course syllabus and level of learning achieved, suggest the most appropriate learning objects. The design of the agent required, for its design, the concepts and foundations associated with the recommending systems, planning systems and learning object management systems.

2.1 Recommender Systems (RSs)

The RSs are information systems that provide suggestions of objects that are more likely to be of interest to a particular user [23]. Suggestions require a decision-making process such as: what type of learning objects are most appropriate according to the characteristics of the individual since the individual does not have enough knowledge to decide or evaluate the objects that could be of interest.

The RSs distinguish three important elements: the items that are the elements to be recommended, the users who are the individuals who are identified their needs and preferences and the transactions that are the interactions between the user and the system and can be collected implicitly or explicitly. A RS should be able to predict the expected utility of each item in order to select those that are of interest and classify them based on some mechanism of comparison.

According the way the recommendations are classified, there are three methods [24]:

  • Content-based Recommendations.

  • Collaboration recommendations.

  • Hybrid approaches.

2.1.1 Content-Based Method

In the content-based RSs, it’s calculated a utility function u (ci, sj) of item “ci” for the user “sj” which is calculated on the basis of the utility u(c, sk) assigned by user “sk” to items c ∈ C that are “similar” to the item ci.

This approach emerges from information recuperation systems and information filtering. The main differences from recovery systems is that it uses user profiles that contain information about tastes, preferences and needs. Profile information can be obtained from users explicitly, through questionnaires, or implicitly learned from their transactional behavior over time. It focuses mainly on recommending items that contain textual information, such as documents.

It basically uses two vectors: one that contains the set of attributes that characterize an item and is used to determine the suitability of the item for recommendation purposes; and a second to store the preferences or tastes of the user - The contents are usually keywords (k) and indicate by weight the importance of ki in document j (dj).

2.1.2 Collaborative Method

The collaborative method tries to predict the usefulness of the elements for a given user based on elements previously qualified by other users. In this method the utility u(c, s) of the item s for user c is estimated based on the utilities u(cj, s) assigned to the element s by those users cj ∈ C that are “similar” to the user c.

The algorithms for collaborative recommendations can be grouped into two categories: (1) memory-based or heuristic-based making predictions based on the complete collection of previously-qualified elements by users; (2) based on models that use the collection of scores to learn a model, which is then used to make score predictions.

2.1.3 Hybrid Method

Combine the content-based method and the collaborative method, there are four ways to combine these methods: (1) implement collaborative and content-based methods separately and combine their predictions, (2) incorporate some content-based features into a collaborative approach, (3) incorporate some collaborative features into a content-based approach and (4) build a general unifying model that incorporates content-based and collaborative features.

2.2 Planning

Planning is a searching and articulating process for a sequence of actions (tasks, activities, processes) that achieve an objective [25]. A plan is generally described by the set of states, the goal to achieve and a set of actions. Each action contains the name of the action that moves from one state to another, the preconditions that must be met to reach the state, the effect that describes how the state changes when the action is executed.

One method to perform task planning is through graphs, this method provides better heuristic estimates. It consists of a sequence of levels corresponding to time steps in the plan, and where the level 0 is the initial state. Each level contains a set of literals that indicates the state that is reached if the actions were executed and a set of actions for the next level. A plan selects “the best sequence of actions” in order to reach the final state (target or goal).

2.3 Learning Objects (LO)

A LO is any digital or non-digital entity that can be used, reused or referenced for technology-supported learning [26]. An LO is characterized because they are small units (low granularity) and reusable. Other features are their customization, the sequence of how to present the LO can vary, their flexibility adaptable to different learning styles and because they are modular. There are several standards to define the structure of LO, some of them are NET Learnactivity and SCORM [27, 28], the latter is the most used model in the creation of learning objects, due to its ease of interchange between platforms or teaching environments and offers the possibility of dynamic content.

3 Teaching Agent Design

For the design of the teaching agent, it was necessary to perform an analysis. First, the processes, activities and objects involved in the teaching process were identified. It was worked with a group of teachers from different university (Pontificia Universidad Católica del Ecuador, Universidad de Los Andes), it was identified which processes were executed and how each was performed. From this study we identified the activities that can be assumed by an agent. Then, in a second phase, it was analyzed the collaboration between this teaching agent with the rest of the agents specified in the platform conceptual model [12].

As a result of the first phase, a process model was obtained, this model allows to specify the processes that are performed, as well as the objective, the inputs (data or events), the products that are generated at the output and the resources and information required in each process. Figure 1 presents the teaching process model using the model proposed by Eriksson and Penker [29]. In the model three processes are distinguished, two of them are fundamental processes (planning of the content of the course and selection of course support material), the other is a support process (management of support material). The support process is transversal to the two previous processes, it is responsible for maintaining the register of books, guides, videos, among others, related to each course content and to support students.

Fig. 1.
figure 1

Teaching process model using UML business.

After knowing that activities that are carried out in each process, the services that the intelligent platform had to support were identified. Finally, the services were grouped into three subsystems [30]: A Planning Agent, a Recommendation System and a LO Management System. Figure 2 presents the component model of the teaching agent, which shows the components and functions of each of them as well as their collaboration on the intelligent platform.

Fig. 2.
figure 2

Components diagram of the teaching agent.

3.1 Planning Agent

The planning agent is responsible for the planning, re-planning and follow-up of the course. The agent is activated when it’s received the message changePeriodo() (see Fig. 2), this message notifies the teachers of each subject of the new period that they must update or create the course planning. The planning is done in three stages: first the teacher, using the analytical program of the subject, establishes the contents of the course (setContentData()). These data are: the content identifier, the specific content to be taught (derived from the analytical plan and/or competences to be developed), time dedicated to content (indicated in hours), hours taught (0 by default), type of activity (theory or practice, evaluation), descriptor 1 of content, descriptor 2 of content, content priority over the entire course, content status (not taught by default), minimum approval percentage.

Subsequently, the teacher enters the data sequence in which the contents will be taught (setSequenceContent ()), this is the plan itself. The data describing the sequence of contents are: the state indicated by the content to be taught (content identifier), the preconditions to be fulfilled to teach a certain content, that is, the contents previously seen and the effects caused at the end of the content, these are the contents that can be taken later. These data represent an unguided graph where the nodes represent the state and the arcs represent the preconditions and effects.

Finally, the teacher will be able to upload the LOs, scoring each according to the LO properties. Each learning object is scored in terms of its relation to the characteristics of the content of the subjects to be imparted, these data (LO Attributes), is stored in a matrix (LO x ContentPropierty). Table 1 shows the structure of this table.

Table 1. Score of the characteristics of the LO vs the characteristics of a learning content

The process of monitoring the plan is activated with the arrival of the event that indicates the start of a class session (ChangeClass()), this event activates the schdulePlan() method and causes the agent to send a message to the recommending system to proceed to search for the appropriate LOs for the content being sent (ChangeCourse()). In addition, the system updates the course plan (updatePlan()), modifying the total number of hours given for the content that is taught, which allows to know the progress and status of a course.

Finally, the planning system, based on the learning results of each content (sent by teaching agent newEvaluation()), calculates the percentage of students who have approved the content and based on this value makes the decision to re-plan the course. If so, modify the time dedicated to that content (replanning()). To do this, the agent uses the graph storing the plan and for calculating the possible sequences contained, it applies a variant of algorithm Graphplan [25], these scenarios are presented to the teacher (getSequenceContent ()) so that the new plan should be selected.

3.2 Recommender System (RSs)

This system is responsible for finding the LOs that best fit the characteristics of each student. The RSs designed uses the hybrid method with a combined approach, where the recommendations generated by the collaborative method and the content-based method are combined into a single recommendation [23], as shown in Fig. 3.

Fig. 3.
figure 3

Activity diagram of the recommendation hybrid strategy for the Recommender System

The recommendation system is made in two phases, in the first one the students’ learning profiles are constructed and all the LOs that are associated to the set of characteristics of the content to be taught are searched, this search is done using the algorithm that calculates the similarity of cosines [31] that indicates the percentage of similarity that exists between the descriptors of the subjects and a LO. It’s selected the LO with value greater than 50%; in the second, the recommendation process is carried out.

To identify the learning profiles, an array of learning characteristics (reflective, intuitive, active, logical, visual, reading, acoustic, prior knowledge, among others) vs students is defined, which stores the score of those characteristics for each student test results. This matrix is used to find student groups. It’s used the EM clustering algorithm, this algorithm belongs to a family of models known as Finite Mixture Models [32]. For each profile a selection of LO is done.

The content-based method uses the characterization of Table 1, the characteristics of the course content and the characteristics of each group of students. First it’s combined the last two tables and then is used this result to find the LO groups that are close to the profile.

For the collaborative method it’s used the characteristics of each group of students and the matrix of LO valued by the students in previous sessions. There are selected the groups of LO most appropriate. For both methods, the cosine similarity algorithm is used.

There are combined the recommendations resulting from each method in order to obtain the final list of LO suggested by profile and students. In this version of the system only the LOs found in both recommendations are selected.

Finally, an attribute is attached to the LOs scored by the students, this attribute measures the usefulness of each LO, it is calculated as the ratio between the numbers of times that has been suggested among the number of suggestions. If the value tends to 1 LO has a high probability of being suggested.

4 Conclusions and Future Work

In this work, it has been presented a mutiagent systems-based design for a Recommender System to be used in an intelligent classroom.

This design aims to obtain learning objects according to the environment and to the knowledge and skills of each student, obtaining customized learning activities that can be used by the teacher for each of the students.

The designed recommender systems based on multiagent system framework is composed of three services: Planning Agent, a Recommendation System and a Learning Object Management System. All this services have to collaborate in order to guarantee the appropriate selection of the customized learning objects.