2015 Asia-Pacific Conference on Computer Aided System Engineering
Basic features of a Reflective Middleware for Intelligent Learning Environment in the Cloud (IECL) Manuel Sánchez Universidad Nacional Experimental del Táchira San Cristóbal, Venezuela
[email protected]
Jose Aguilar Universidad de Los Andes, Mérida, Venezuela Prometeo researcher, Universidad Técnica Particular de Loja, Ecuador
[email protected]
Jorge Cordero Universidad Técnica Particular de Loja, Ecuador
[email protected]
Prisila Valdiviezo Universidad Técnica Particular de Loja, Ecuador
[email protected] Combining C-Learning with IE brings great benefits to the teaching-learning process, as it will not only count on the services provided by C-Learning, but the environment will be able to determine when it is appropriate for the user to make use of these services, and what devices or smart objects available in the environment must be integrated. Thus, we propose a new concept called IE for C-Learning (IECL), defined as: IECL combines educational services available in the cloud with objects (which can be intelligent or not) found in an educational environment, in order to achieve a learning process adapted to the student’s learning style.
Abstract— In this paper is proposed an architecture of a Reflective Middleware, which aims to manage an Intelligent Environment of Learning based in cloud learning, which is modeled using a Multiagent system. The Middleware is able to monitor the environment consisting of physical and virtual objects, intelligent or not, based on the context. The middleware manages educational services in the cloud to enhance the learning experience of students, either collaboratively or individually. Keywords— Intelligent Environment; Cloud Learning; Virtual Learning Environment; MASINA; Reflective middleware
I.
INTRODUCTION
II.
In educational environments, the use of intelligent environments can bring huge benefits, to provide solutions tailored to the needs of teaching and learning of users [1]. Some of these advantages are: recommend digital contents based on the student’s learning style, monitor the student performances and decide whether they are adequate; link students studying similar topics to encourage collaborative learning; etc. On the other hand, cloud learning (C-Learning [2]) is a system that allows maintaining and using educational contents in a distributed manner, using the mechanisms and tools that provides cloud computing. C-Learning includes activities and seeks to promote collaborative learning through the cloud. In short, C-Learning is a type of E-Learning that provides available services in the cloud, and in particular, it means that resources are stored in a virtual environment, which can be accessed in different ways and locations.
A Reflective Middleware is a distributed system that acts as an intermediate layer between applications and services [4], which is able to change the behavior of the applications according to their implementation’s needs, through selfawareness and self-reference, based on two processes [5]: i) Introspection: The program’s ability to observe and reason about their status [5], ii) Intersection: The program's ability to change its own execution state. A Reflective Middleware consists of two or more levels [4, 5]: i) Base level is where the applications run, ii) Meta level implements the reflectivity and verifies that the system operation is the expected or required. Autonomic computing is a model of self-management inspired by the human’s nervous system [5]. It incorporates sensors and actuators for observing the environment and acting accordingly. Autonomic computing defines an architecture composed of 6 levels: i) Resources Management: It can be any type of resources (hardware or software) that can be managed, and may have embedded self-managing attributes; ii) Touch Point: Link to the sensors and/or actuators; iii) Autonomic Manager: Implements intelligent control ties that automate the tasks of self-regulation/selfmanagement; iv) Orchestrating Autonomic Managers: this level provides the communication channel for the coordination between several autonomic managers; v) Manual Handler: Allows humans to configure the autonomic managers to perform its task of self-management; vi) Knowledge Resource:
The fundamental point of this article is the integration of the Intelligent Environment (IE) and C-Learning paradigms. An IE is defined as "one which uses computer technology to control its operation automatically, so as to optimize user comfort, consumption of resources (energy for example), safety and efficiency of work" [3]. C-Learning refers to learning models that use all digital resources existing on the Internet to streamline the training process. In this type of learning, a set of tools and services in the cloud, that contribute to the student learning process, is incorporated, with no need for students and teachers converge physically in a classroom.
978-1-4799-7588-4/15 $31.00 © 2015 IEEE DOI 10.1109/APCASE.2015.8
REFLECTIVE MIDDLEWARE AND AUTONOMIC COMPUTING
1
Provide access to the knowledge required to perform autonomic management of the system.
IE Logical Management Layer (ILL)
VA
SPA
CA
TA
MAS Management Layer (MMAL)
AMA
IECL SPECIFICATION
CCA
DMA
CEA
CMA
DA
Services Management Layer (SML)
RMA
ApMA A
SMA
MAP
III.
Meta
The Autonomic Manager performs an intelligent control loop known as MAPE [5], composed by four phases: i) Monitor: Gathers through sensors events/details of what is happening in the managed resources; ii) Analyzer: Provides mechanisms to analyze patterns/symptoms provided by the monitor; iii) Planner: Generates a set of operations to perform on the managed resources; iv) Executer: Interact with the actuators to perform the set of actions contained in the Plan.
IE Physical Management Layer (IPL)
WSA
Physical Layer (PL)
IECL differs from other similar researches, in the way that combines IE with academic services that provides cloud learning paradigm (C-Learning). In IECL, academic cloud services are combined with intelligent and non-intelligent objects in the environment, to adapt and respond to the teaching and learning needs of users, through environmental self-consciousness. This enables to make available to users intelligently services deemed appropriate to perform some activity at a specific time, or use them automatically (the IE) when it require it.
Sensors
Actuators
Intelligent Objects
Others
E
Base
A. Characterization of IECL
Fig. 1. IECL Proposed architecture. the educational services (locals and in the cloud), to take advantage of learning resources available, to adapt the IE to current learning conditions required by its users. The MMAL and SML layers provide operational services to ILL and IPL layers, which will allow agents of these two layers to meet the objectives for which they were designed. Some of their services are based on [6], but others are derived from the extension of SML to support the cloud learning paradigm (particularly, the SMA and WSA agents).
Our IECL architecture is based on a Multiagent System (MAS). Basically, the Autonomic Reflective Middleware enables the integration of objects (intelligent or not) in the educational environment with educational resources in the cloud, in a flexible an adaptive way, so that objects can adjust their behavior according to the context, and the requirements and needs that users have in a given time (see Fig. 1, the multilayer architecture for IECL). However, the MAS that models the IECL are agents of the top layers (ILL and IPL).
4) IE Logical Management Layer (ILL): It is the responsible for providing intelligence to the IECL. This layer is where all the applications (Software Objects) and persons present in the IE are characterized. Basically, each application/person is characterized by an agent that contains metadata that defines its properties. In this layer there are different types of agents (VA, CMA, SPA, TA, CA and CEA) as element types that can appear in the IE, they are later explained.
B. IECL multilayer architecture. 1) Physical Layer (PL): contains the physical and virtual components present in the IE (how this is an educational environment, in principle, they would be objects of a classroom), such as: a) Sensors, b) Intelligent Objects (for examples, a StudentBoard, where students and teachers connect virtually to the environment); c) Other Objects that lack intelligence and cannot communicate with other elements in the environment d) Software Objects, like the educational applications for managing educational contents, virtual learning environments, among others (for examples, Moodle, EVA, Joomla, etc.).
5) IE Physical Management Layer (IPL): This layer has characterized the physical elements of the environment, to facilitate the use and communication with each of them. Thus, each physical device is characterized by an agent that contains metadata that defines its properties. Some of these physical devices are smart (Intelligent Objects), so that the properties of learning, autonomy, reasoning, among other, are crucial to characterize them. This layer communicates with the distributed operating system, as it is through it that has access to physical hardware devices.
2) MAS Management Layer (MMAL): This layer is adapted from FIPA standard proposed by [6], which defines the rules and agents that allow a society of agents to exist, operate and be managed. AMA manages the agents on the MAS, CCA the communication among them, and DMA the data on the MAS.
C. Characteristics of the System's Agents. The MMAL has three agents, whose general characteristics are detailed in [6]. At the SML coexist four agents, two classics of FIPA, such as RMA and ApMA ( [6]), and two new for the IECL (they are the bridge between IE and the clouds):
3) Services Management Layer (SML): As MMAL, this layer is an adaptation of FIPA standard proposed by [6], by noting that in this case it is extended because the layer not only handles the resources and applications, but also manages
1) Services Management Agent (SMA): Controls, records and manages web services available on the system (whether they are in the cloud or locally); so that when an agent requires a specific service it should contact this agent to locate the Web Service Agent (WSA) that characterizes that service in the
2
according to the needs of the environment. In IECL, this level is composed by the ILL, IPL, MMAL and SML layers.
MAS. The SMA would characterize what in web services is known as UDDI (Universal Description, Discovery and Integration), which is a standard on web services.
Regarding the autonomic capacity, according to the MAPE model, it is specified in IECL as:
2) Web Service Agent (WSA): it is the logical representation of a web service. This agent characterizes the web services, for that reason, it is who knows how to invoke (it has its interface) and which are the requirements necessary to access the web service. The WSA has access to the services description file (WSDL). There is one instance of this agent for each web service on the SMA.
1) Monitor: This occurs in the ILL and IPL layers. This task is carried out specifically by VA, DA, TA and SPA agents, which are in constant communication with the sensors and smart objects in the environment, to know the current state of the environment and the activities that users are developing in it. It answers questions like: how? , and when?. To establish communication among the smart objects, the ontological component plays a critical role (explained below).
RMA and ApMA manage the resources and applications on the MAS. The agents of the IE Logical Management Layer are: 1) Vision Agent (VA): The main function of this agent is to provide services of identification of physical and virtual users.
2) Analyzer: This is carried out on the ILL and IPL layers, for the agents TA, SPA, CA, CMA and DA agents (when they are intelligent objects). This component analyzes the data arriving through these agents to determine, among other things, changes in the learning process, inclusion of new items, incorporation of new learning goals, etc. Tasks such as pattern recognition, trend analysis, inference, etc., are critical.
2) Student’s Profile Agent (SPA): This agent is an abstract representation of students, it models both student activity in the environment and their personal data, such as academic profile and usage history of objects in the environment. There is an agent of this type for each student in the environment. 3) Collaborative Agent (CA): Its function is essential to promote collaborative learning, because this agent is responsible for locating students studying the same subject or performing similar activities, to put them in communication through applications of collaborative environments.
3) Planner: In this step, the agents evaluate actions to be taken in respond to the situation detected by the analyze phase. Specifically, the tasks/services to be performed, or applications to be run, are determined, with the sequence between them, and who must performed it (agents, educational services in the cloud, etc.). The TA, CMA, SPA and CA agents are the planners of the solution.
4) Tutor Agent (TA): This agent is a representation (abstraction) of the Professor, or of a manager learning processes (Intelligent Tutorial System [7], Virtual Learning Environment [8]) which guides the learning processes. There is one instance of this agent per each tutor in the environment.
4) Executer: the plans done in the previous phase are sent to the various abstractions of agents present in the IE (IPL and ILL layers), or are invoked some SAs for the specific services involved in the plans. The abstractions invoke the components of the physical layer for the execution (for example, intelligent object or software).
5) Content Management System Agent (CMA): Model the characteristics of different types of content management systems (CMS [9, 10]), learning processes (LMS, CLMS) [9, 10], etc. in an educational environment. There is an instance of this agent for each one in the IECL.
Regarding the ontological component, IECL requires 3 ontologies: Component ontology defines the users and entities that make up the environment. In addition, each user or entity should be described semantically in a domain ontology. Finally, it is important to maintain the contextual information in a context ontology that allows characterizing the contextual properties for the entities of the environment (see [4]).
6) Collaborative Environments Agent (CEA): represents applications of collaborative work and collective learning, so that they can be accessed by the Collaborative Agent when is required. For each application of a collaborative environment that is required in the IECL, there is an instance of this agent. The IE Physical Management Layer is composed of a single type of agent, and its detailed description is as follows:
IV.
IECL SPECIFICATION AS MAS USING MASINA
For the design of the MAS that models to the IECL, we use the MASINA methodology [11]. As mentioned above, the agents of the ILL and IPL Layers model the IECL. The design and specification of the AMA, CCA, DMA, RMA and ApMA agents have already been made in previous work [12]. The agents that make up the MAS that models to the IECL are SPA, VA, TA, CA, CEA, CMA and DA. Here we show only the design of SPA agent. The SPA is responsible for defining the services that improve student academic activity. This agent is activated by TA agent when an academic activity begins, allowing the agent SPA start reasoning about the services that must be provided to the student according to the activity to perform and to the student profile. The behavior of this agent is as follows: When an academic activity is initiated, SPA
1) Device Agent (DA): Represents a logical abstraction of a device in the real environment, which allows modeling the interaction with these objects. There is an instance of this agent for each device in the environment. D. IECL Architecture based on Autonomic Reflective Middleware. The levels that make the IE reflective middleware are: i) Base level: At this level are the applications with the system functionalities and the physical devices in the IE (the elements of the Physical Layer of IECL). ii) Meta Level: is where the middleware has its ability to reflect, generally, it observes, reasons and adapts its internal structure and behavior
3
TABLE V. SPA LEARNING MECHANISM SPA Learning Mechanism Name: offering web services. Type: Supervised Representation technique: Based on Rules Source Learning: users log . Update mechanism: Feedback
begins monitoring the student activity, and accordingly, makes the decision to propose student services to enhance the development of his activity. When the student ends the activity, SPA updated the student academic information, among other things. 1) SPA Agent Model. The description of this agent, as well as its objectives and one of the services offered, are shown in Tables I to 0. In particular, this agent provides services related to maintain updated the student’s profile, etc. (see section III). Here, we are going to describe one of them (see table III).
TABLE VI. SPA REASONING MECHANISM SPA Reasoning mechanism Source: rules that represent how services have been used. Inference technique: rules engine. Knowledge Representation Language: OWL Relationship task-inference: satisfactory academic results requirement according to the services offered. Strategies of reasoning: deductive
TABLE I. SPA DESCRIPTION Profile Student Agent Type: Software Agent Roles: monitor student activity on the environment, and defines services (cloud or other agents) to assist the student learning process. Description: This agent represents the actual student in the environment. Monitors activity, characterizes their profile, in order to offer services that can help the development of their academic activities.
activity
4) IECL Coordination model In IECL, the TA, SPA, SMA and the WSA Agents, among others, must act cooperatively to discover and deliver services that help students to develop their academic activities and improve their learning process. To perform this, each agent requires information that can only be provided by another agent of the MAS, so they must be coordinated and synchronized. On the other hand, the access to the resources in IECL will be coordinated by the RMA, which allocates the resources to the agents, thus avoiding conflicts of access to them. However, when the conflict that arises does not give access to the resources and communication, coordination in IECL is individual, and agents must solve these conflicts. Below are listed some conversations, in which the SPA Agent participates (IECL has a lot of conversations):
The SPA also should be aware of the new events in the environment (presence or absence of new objects, tutors, etc.). All this, to find the right services for the educational needs. TABLE II. OBJECTIVES OF SPA Objectives of SPA Facilitates the teaching-learning process that characterizes real student. Input parameters: N / A Output parameters: Services to offer, Trigger Condition: Start of academic activity. Condition of completion: end of academic activity. Success Condition: Services found. Fault Condition: Not services are offered. Description: monitors the environment to determine the activity performed by the user, determines under what context that activities take place and in what domain, and finally it locates services.
• • •
TABLE III. SPA SERVICE SPA Services Name: Monitor student activity and the environment. Input parameters: contextual information Output parameters: the specific event detected
Monitoring user/environment activities. Development of an Academic activity. Location of Educational web services.
In Tables VII and VIII are described the last conversation. TABLE VII. CONVERSATION: “REQUEST FOR LOCATION OF EDUCATIONAL WEB SERVICES”. Request for location of educational web services conversation Objectives: Lets locate educational web services (eg, content recommender system) that will be offered to the user. Participating agents: SMA, CCA, SPA, TA, WSA, VA, AMA Initiator: SPA Speech Acts: Determine academic activity carried find SMA, Locate services by context and activity, offer web services to student, etc. Pre-condition: activated by SPA when it determined that necessary help to the student to develop their activities on the environment. End Condition: services found or failure in plan. Description: allows to discover the services that will be offered to students according to academic activity that is developing and the current context.
2) SPA Task Model. Some of the tasks of SPA are of: 1. Context recognition. 2. Assessment of the Profile and academic activity. 3. Requirement identification. 4. Services search. 5. Planning the web services to offer. Table IV describes one of these tasks. TABLE IV. PLANNING OF WEB SERVICES TO OFFER Task of Planning web services to offer Objective: Determines which web services should be offered to the student. Pre-condition: need to provide student services to meet an activity. Frequency: Every time the student has a need for his academic activity. Description: It allows planning task the kind of services that should be used to enable the student to meet an academic activity.
TABLE VIII. COORDINATION SCHEME FOR THE CONVERSATION DESCRIBED IN TABLE VII. Coordination Scheme Objective: coordinate communication between the agents involved in the conversation. Coordination default: Negotiation between SPA and TA agents. Language: ACL Ontologies: domain-specific, components and context ontologies [4].
3) SPA Intelligence Model. This agent has a learning mechanism that allows a quick response to similar situations (contexts and domains) arisen previously (see Tables V, VI).
4
V.
STUDY CASE
activities, when the student has doubts (IE must have mechanisms to detect that, for example, SPA analyzing information about the student), the TA starts a process of digital contents recommendation to help the student with his task. In general, we can observe the proactivity and autonomy of the agents of IECL, as SPA which automatically decides when is necessary to provide help to the student, in accordance with the student’s interaction in the environment. This would arise because the SPA determines, through the DA agent, when a student does not perform any activity on the computer for a time period. The same proactivity and reflective capacity is shown in the previous example, when the TA determines the current class and prepares the smart board to start the class.
In order to show the performance of the architecture of IECL, its application is studied in an intelligent classroom. A. Intelligent classroom A case study is when a teacher gives a class and proposes some practical activities to students, to be developed in class. IECL must be able to act proactively to help users to develop their activities, and access to academic resources available in the environment, combining cloud services with IE. For this case, it is assumed that in the intelligent classroom there is a smart board to project slides, a Student Board which can display the image of students virtually connected, cameras and microphones to capture images and sounds. In addition, each student has access to a computer where he develops certain activities proposed by the teacher. The computer is used to monitor the student activity. Similarly, the environment has a LCMS (Moodle) application and web content recommendation services that use IECL to help students to develop their academic activities. Finally, context aware services will identify the current context, carry out some recognitions (voice, gesture and face), among other things.
Where does the C-Learning and cloud services appear? In this case of study, the profile of users and digital resources are stored either on a LCMS (see [9, 10]) or in a file storage service, which is one of the requirements of C-Learning (to keep the information on the cloud). Moreover, agents invoke scholar web content recommendation services, and virtual learning environments as web services, such as Moodle, to upload the test results, or show to the student the details of the practice to be developed. In these cases, academic cloud web services have been invoked automatically to users of IECL, by agents of our middleware.
B. Example of Operation of the Midlleware Considering the conversation of Fig. 2, called "initialization of educational environment", it is here where the learning environment begins, identifying users that enter to the environment. The conversation is activated when a sensor agent (DA) which is working for the VA, detects user entry, reporting that situation to VA. At that time, VA must identify the user that is entering to the classroom, for which it uses a recognition service (voice, face, gesture) located through SMA. Once VA has the UID of the user, it instantiates the corresponding agent (TA or SPA) for each user, depending on the profile data retrieved by the DMA and register it on AMA. If user is a teacher, a TA that characterizes it is created; then through the autonomic manager of IECL the system is able to self-adapt to the needs of the TA, determining if the context is a class. IECL determines that it must prepare the smart board available in the intelligent classroom. Thus, AT locates the course data and plan of the class; with that information, it locates today class’ slides through a storage service (in the course plan, it is indicates where the slides are stored). The slides file (managed through the RMA) is sent to the smart board, then the DA (Smart Board) is prepared to begin class when teacher ordered. If the user is a student, his academic data is retrieved to determine the learning style and usage history of the environment. With this data the MAS may propose activities, digital contents and services to the student.
VI.
CONCLUSIONS
In this work, the development of a Reflective Middleware for Intelligent Environment in Cloud Learning has been proposed, from which a new concept, called IECL, has emerged. IECL mixes the benefits and capabilities such as reflective, autonomous and context aware of IE, with capabilities that provide a learning environment in the cloud with academic services that can be accessed from anywhere. This results in a better use of resources and academic services in a learning environment, whether physical, virtual or hybrid, and moreover allows adapting the environment to the academic needs of users. In particular, our system allows the invocation of educational web services, and therefore be executed by smart objects in the IE, in transparent manner to users, to improve and adapt their operations to the requirements of these users. In addition, the reflective and contextual awareness capabilities of IECL allow the system to adapt itself to the needs of the environment, acting intelligently to every situation that arises. More precisely, these capabilities allow IECL to meet the academic needs of users by making efficient use of objects in the environment to improve the teaching-learning process, to extend these objects with cloud services. Thus, IECL exploits intelligent capabilities related to reflection and analysis of the context of middleware, to act appropriately to situations and requirements that occur in the environment. The future work aims at implementing the autonomic model of IECL, which will allow the environment to adapt to the needs of learning of users. Additionally, the design of the ontologies that describe the knowledge inside of IECL, is one of the next tasks.
C. Analysis of the Operation of the Midlleware. In the case study presented is shown how IECL is able to adapt its internal structure to the needs of the environment, since it acts according to the context in which the activities take place and to the type of activity itself. If the activity was a test, the IECL would be aware of that fact and would not propose any digital content to the student. But for practical
5
Fig. 2. Conversation "initialization of educational environment" ACKNOWLEDGMENT
[7]
Dr Aguilar has been partially supported by the Prometeo Project of the Ministry of Higher Education, Science, Technology and Innovation of the Republic of Ecuador. [8]
VII. BIBLIOGRAPHY [1]
[2]
[3]
[4]
[5]
[6]
J. G. Hernández Calderón, E. Benítez Guerrero y C. Mezura Godoy, «Ambientes inteligentes en contextos educativos: modelo y arquitectura,» Research in Computing Science, vol. 77, pp. 55-65, 2014. Y. Bai, S. Shen, L. Chen y Y. Zhuo, «Cloud learning: A new learning style,» de 2011 International Conference on Multimedia Technology, 2011. H. Hagras, V. Callaghan, M. Colley y G. Clarke, «A Hierarchical Fuzzy Genetic Multi-Agent Architecture for Intelligent Buildings Sensing and Control,» de Developments in Soft Computing, 2001. M. Mendonça, J. Aguilar y N. Perozo, «Middleware Reflexivo Semántico para Ambientes Inteligentes,» de CoNCISa 2014, Caracas, 2014. J. Vizcarrondo, J. Aguilar, E. Exposito y A. Subias, «ARMISCOM: Autonomic Reflective MIddleware for management Service COMposition,» de GIIS 2012, Choroni, Venezuela, 2012. J. Aguilar, A. Rios, F. Hidrobo y M. Cerrada, Sistemas MultiAgentes y sus aplicaciones en Automatización Industrial, Mérida: Universidad de Los Andes, 2013.
[9]
[10]
[11]
[12]
6
D. A. Ovalle y J. A. Jiménez, «Ambiente Inteligente Distribuido de Aprendizaje: Integración de ITS y CSCL por medio de Agentes Pedagógicos,» Revista Escuela de Ingeniería de Antioquía, pp. 89-104, 2006. W. F. McComas, «Virtual Learning Environment,» de The Language of Science Education, Springer, 2014, pp. 110-110. A. Cañellas Mayor, «CMS, LMS y LCMS. Definición y diferencias,» Centro de Comunicación y Pedagogía, [En línea]. Available: http://www.centrocp.com/cms-lmsy-lcms-definicion-y-diferencias/. [Último acceso: 17 02 2015]. N. M. García, «Diferencias entre CMS, LMS, LCMS y EVA (elearning),» E-Ducación, 27 11 2013. [En línea]. Available: http://e-ducacion.info/e-learning/diferenciasentre-cms-lms-lcms-y-eva-elearning/. [Último acceso: 17 02 2015]. J. Aguilar, I. Bessembel, M. Cerrada, F. Hidrobo y F. Narciso, «Una Metodología para el Modelado de Sistemas de Ingeniería Orientada a Objetos,» Revista Iberoamericana de Inteligencia Artificial, nº 20, pp. 3452, 2003. J. Aguilar, A. Rios, F. Hidrobo y M. Cerrada, Sistemas MultiAgentes y sus aplicaciones en Automatización Industrial, Mérida: Universidad de Los Andes, 2013.