^{1}], [

^{2}], [

^{3}]. In MiGen, we are adopting a constructionist approach [

^{4}], allowing students to create and manipulate patterns and algebraic expressions and to perceive the relationships between them. The idea of “seeing the general through the particular” has been shown to be a powerful way of introducing students to generalization [

^{1}]. Following [

^{5}], MiGen is based on the premise that learners build knowledge structures particularly well in situations where they are engaged in constructing public entities—in our context, these are 2D patterns and algebraic rules about these patterns that they will share with other students. The MiGen system acts as a mediator of social interaction between students, and also between the teacher and the students, through which shared algebraic expressions are constructed and observed. The system provides not only a means by which students construct their own problem space but also a communicative function through which algebraic interpretations are made explicit and can be discussed with others.

^{6}]. The exploratory nature of our learning environment requires that personalized feedback is provided to students by the system during their construction process. Also, since students are undertaking loosely defined rather than structured tasks, teachers need to be assisted in monitoring their students' actions and progress by appropriate visualization and notification tools [

^{7}].

^{2}], [

^{8}].

**eXpresser**, a mathematical microworld [

^{9}], [

^{10}] which supports students in undertaking algebraic generalization tasks. As part of a possibly larger activity sequence (see the Activity Tool below), students are asked to construct “generalized models out of patterns” (see below) using the eXpresser. Figs. 1a and 1b show two instances of an example model. Instances of a model such as these are presented to students and they are asked to construct the model in the eXpresser and to derive a general rule for the total number of tiles required for any instance of the model. For this task, they are prompted to create and use different patterns made out of different colored tiles, depending on their perceptions of the model's structure. Every pattern can be made of a single square tile or group of tiles repeated a number of times. Tiles and groups of tiles can be repeated horizontally, vertically, or diagonally with or without spaces in between its repeated components (for more details, the reader is referred to [

^{2}]). The eXpresser supports students not only in their construction of the model using patterns, but also in deriving algebraic expressions underpinning the model, for example, referring to Figs. 1a and 1b, the number of green tiles (light gray) required given the number of red tiles (dark gray).

*general*, and changing the current value of will lead to the student's current instance of the model changing accordingly too.

^{9}], [

^{10}]. The tasks that students are asked to undertake are usually open ended in nature, have multiple possible solutions, and encourage students to explore the construction environment and follow a variety of construction strategies. Through such interactions, they make explicit the mathematical relationships between and within these objects and in this process identify the variant and invariant components in their constructions, express relationships between these components, form semialgebraic expressions with the eXpresser language and consequently engage with mathematical concepts, such as variables, constants, the expression of relationships and algebraic generality. Mavrikis et al. [

^{11}] describe MiGen's multilayered learner model which, as well as modeling the attainment of concepts in the subject domain, also includes a “layer” of knowledge comprising microworld-specific concepts that operationalize the concepts of the subject domain, as well as encompassing the affordances of the microworld itself. In MiGen, tasks are designed to contextualize students' interaction with the eXpresser, including specific learning objectives that the learner should achieve as they undertake a task, e.g., “find a general expression to color your pattern”—see Fig. 2G.

*indicators*are automatically detected or inferred by the system, which can then be notified to the teacher via the Teacher Assistance tools (which we will discuss shortly). There are two categories of indicators. First,

*task-independent*(TI) indicators refer to aspects of the student's interaction that are microworld related but do not require knowledge of the specific task the student is currently working on. They always refer to single actions undertaken by the student, e.g., “student has placed a tile on the canvas,” “student has made a building block,” “student has unlocked a number.” In contrast,

*task-dependent*(TD) indicators require access to knowledge about the specific task the student is working on. They can relate to individual actions or to the result of sequences of actions, and they require a level of intelligent reasoning to be applied by the system. In some cases, their detection may have a degree of uncertainty associated with it. Examples of TD indicators include: “student has made a plausible building block” (i.e., a building block that can potentially lead to a valid solution), which requires knowledge of the set of possible solutions to a task; “student has unlocked too many numbers,” which requires knowledge about how many variables a task needs; “student has colored their model generally,” which requires reasoning on the student's expression. We discuss TI and TD indicators in more detail in Section 3. We also list the full set of indicators currently supported in the Appendix, which can be found on the Computer Society Digital Library at http://doi.ieeecomputersociety.org/10.1109/TLT.2012.19.

**Activity Tool**presents students with activity sequences targeting algebraic generalization, as designed by the activity designer or the teacher. These activity sequences include phases such as introduction to an exploratory learning task, undertaking a task using the eXpresser, reflecting on their interaction, and sharing and discussing their constructions and rules with other students.

*Task Design Tool*is currently under development. This will allow the designer or teacher to describe new algebraic generalization tasks, and to input into the system a set of possible solutions for them, i.e., possible constructions and their associated algebraic expressions. Currently, the set of possible solutions for a task is input into the system by the research team using the eXpresser. Part of the description of a task is the set of goals that students need to achieve as they work on the task (e.g., “make a building block,” “color a pattern,” “write an expression for the number of tiles of each color in your model”), and the set of learning objectives supported by the task (ranging from microworld-related knowledge such as “knowledge on how to animate” or “knowledge about names for numbers” to domain knowledge such as “understanding the connection between the construction structure and its associated prealgebraic expression” or “understanding the use of animation to validate the generality of models”). The Task Design Tool will allow the designer/teacher to select these from the overall sets of goals and learning objectives supported by the system. Currently, such information describing tasks are entered directly into the MiGen database by the research team. The total sets of task goals, learning objectives and indicators detectable by the system are easily extensible with new ones as the system is developed and extended over time.

*eGeneraliser*is a suite of intelligent components which take as their input information from the eXpresser as students undertake tasks, as well as information in the MiGen database relating to students (their learner model) and to tasks (the task description and set of possible solutions). These intelligent components analyze the interaction of the students with the eXpresser, generate real-time feedback for students (prompts to help students engage with a task, improve their solutions, and generalize their solutions), infer the occurrence of TD indicators, and update students' learner models during, and at the end of, each student's usage of the eXpresser tool. A hybrid of case-based and rule-based reasoning is used in the eGeneraliser in order to infer the occurrence of TD indicators and to update students' learner models. We discuss some of the techniques employed in Section 3.

*Teacher Assistance Tools*is a suite of tools aiming to assist the teacher in monitoring students' interactions and progress and in intervening as she decides appropriate. An extensive requirements analysis for these tools has been undertaken since early 2010 with the teachers involved in the MiGen project, and this has driven the iterative specification and codesign of these tools.

^{8}], [

^{12}]. The client software is executed on each student's computer (without the Teacher Assistance and Task Design tools) and on the teacher's computer (the whole suite of tools), while the server software is executed on one server computer. As students interact with the Activity Tool and with the eXpresser, these tools post information about students' actions to the MiGen Server, including the occurrence of TI indicators. The MiGen server stores this data in the MiGen Database which is implemented in JavaDB.

^{14}]. The eGeneraliser may also generate updates to the student's learner model, which are also posted to the MiGen Server.

*interaction indicators*serve as an abstract representation of the interaction between the student and the system. An appropriate visualization of these indicators allows the teacher to be informed of important aspects of the student's construction, including the evolution of students' strategies during the lesson, possible learning trajectories followed by students, the feedback they received from the system, and how this influenced their subsequent actions.

*events*. There are three types of TD events: Feedback-related events are generated when feedback is produced for students by the eGeneraliser or is explicitly requested by them, through the eXpresser. Goal-related events are produced when there is a change relating to the goals of the current task, e.g., the student considers they have achieved a goal, or the system detects that a goal has been achieved even if the student has not realized it yet. Finally, a third type of TD event involves the detection of some particular feature in the interactions of the student, e.g., that their actions follow a rhythmical pattern.

*states*are indicators relating to some aspect of the student's interactions that can be observed continuously as they work on a task. Some of the state indicators refer to instantaneous information (e.g., whether the construction is being animated at the moment) while others refer to historical information (e.g., whether the student has been able to construct a general solution at some point during their interaction). There are two types of TD state indicators: Some are related to the

*verification*of a Boolean condition, e.g., whether a plausible building block is being used by the student, or whether their color allocation is correct. The others involve the

*detection*of some particular feature in the actions of the student, e.g., “clutter” being detected on the canvas by the system (those tiles that are not being used in the student's model, and may be distracting the student). Tables 2 to 7 in the Appendix, available in the online supplemental material, list all these different subsets of interaction indicators.

^{15}], [

^{16}], [

^{17}] for further details.

**3.2.1 Rhythm Detection**In the early stages of the development of their thinking about generalization, students may find it difficult to perceive the structure of models in their minds. One strategy that teachers can exploit is observing the way in which students describe patterns, or how they construct them using tiles. Sometimes students will have some implicit structure in their minds and this will be evident in their actions, even if they cannot make it explicit. The teacher can at this point encourage students to focus on their implicit structure, thus providing scaffolding toward students making their structure explicit and understanding how it relates to the generality of a pattern [

^{18}].

To support the teacher in this aim, one of the modules of the eGeneraliser is responsible for detecting “rhythm” in the way that students place tiles onto the canvas of the eXpresser. When a repetitive sequence of tile placements is detected in the actions of the student, this can be used by the system in order to provide feedback to the student suggesting the creation of such a building block in order to construct their model in a more structured way (repeating the building block to create their model, rather than using single tiles at a time). At the same time, an instance of the corresponding indicator is also inferred by the eGeneraliser (this is the seventh indicator in Table 4 of the Appendix, available in the online supplemental material).

In order to detect these regularities in students' actions, the tile placements made by a student are converted internally by the system into a sequence of positions on the canvas. The sequence of tile positions is analyzed using two sliding windows containing subsequences from the whole sequence. The sliding windows traverse the sequence and, for each pair of positions, the distance between the windows is calculated using a string similarity metric. The use of a similarity metric, rather than a precise comparison, allows for small differences in consecutive repetitions of the same structure (for example, to allow for students' “slips” in using the eXpresser). Those windows that exhibit a higher number of repetitions of high similarity to other subsequent windows are selected as possible indications of rhythm in the actions of the student. We refer the interested reader to [ ^{17}] for more details of the process.

**3.2.2 Apparent Solution on Canvas**One important challenge when providing feedback to students is understanding whether the student's current construction is a valid solution. The answer to this question has ramifications for the system's entire strategy for providing support and many other considerations depend on this one: Is the student's construction general or not? How does it relate to the student's final expression? Are the local expressions correct (i.e., the rules about how to color individual patterns within the overall model)? Have they been combined correctly to obtain to the global expression (i.e., the final expression for coloring the whole model)?

Comparing two constructions made up from square tiles is relatively easy, but there are several difficulties in our case. The first difficulty stems from the fact that the construction of patterns using the eXpresser is highly exploratory. Given a task model, it can generally be constructed in large numbers of different ways, e.g., using large or small patterns, with or without overlaps between patterns, on different parts of the canvas, etc. The second difficulty arises from the dynamicity of task solutions. Students are expected to make constructions that “animate,” i.e., that generalize correctly for any values of the task variables; but our studies have shown that many students are content to make just one instance of the model and they expect the system to do all the rest of the work for them. Detecting that they have “finished” their construction has two aspects therefore: first, the system needs to detect that they have created a correct solution; and second, the system needs to evaluate the generality of the solution.

Regarding the first of these aspects, a module of the eGeneraliser is responsible for detecting constructions that have the same appearance as a valid solution. In this context, having “the same appearance” means looking the same from the point of view of the student, regardless of internal structure or actual equality tile-by-tile. For example, students will perceive a “stepping stones” model with five red tiles as looking the “same” as a model with four red tiles (see Figs. 1a and 1b). Our algorithm is based on constructing a “mask” based on each of the known solutions to the task (we recall that known solutions are identified using the Task Design Tool). This mask is projected onto the student's construction to see if there is a match for some value of the task variables. If a match is found, then the indicator Apparent Solution on Canvas is turned “on”; otherwise, it is turned as “off” (this is the first indicator in Table 7 of the Appendix, available in the online supplemental material).

There is also another intelligent module that is responsible for evaluating whether the construction built by the student is general, meaning that it is a correct solution for any value of the task variables and not only for some, i.e., that it cannot be “messed up” by changing the variables (c.f. the concept of “messing up” in dynamic geometry learning environments [ ^{19}]). The algorithm used is again based on superposition of masks onto the student's construction for different values of the task variables. The number of values that need to be tested depends on the type of the task, e.g., for a linear task that has just one task variable, only two values need to be tested. If a match is found for all the sampled values, the student's construction qualifies as “unmessable.” If the student checks the generality of a model that is “unmessable” by using the animation features of the eXpresser to explore several possible values for the task variables, the indicator Unmessable Model Animated is turned “on”; otherwise, it remains “off” (this is the fourth indicator in Table 7 of the Appendix, available in the online supplemental material).

^{12}] and show it to teachers through their computer in the classroom or a mobile terminal (e.g., a tablet). Teachers can therefore continue their usual routine in the classroom and increase gradually their use of the teacher tools as they become more confident with this new source of information.

^{1}This view shows the sequential occurrence of indicators for a group of students during their interaction with the eXpresser. Each column represents the progress of the student named at the top of the column. A colored horizontal cell indicates that a particular event indicator has occurred for a particular student. Each event indicator occurrence is positioned according to the time at which it occurred (with time increasing downwards). The color of the cell indicates whether the indicator is regarded as being “positive,”, “negative,” or “neutral,” as described in Table 1. By hovering with the cursor over an indicator the teacher can obtain additional information (e.g., a complete description of the indicator, the time at which it occurred, etc.).

Table 1. Types and Colors of Interaction Indicators as Represented in the ST Tool

^{13}]).

*state*rather than being single events— e.g., whether the students were active or inactive, whether all shapes they were currently using were patterns, etc. The teacher suggested that this family of indicators would be better visualized as vertical bars that change color when their status changes. It also became evident that feedback-related events should also be visualized within the ST tool. Up to that point, we had focused on presenting the

*student's*actions, but during the post-lesson interview it became apparent that teachers would also find it helpful to know what feedback is being generated for students by the

*system*as they are using the eXpresser, because this has an impact on students' subsequent actions. Since feedback-related indicators are neither positive nor negative, and moreover they need to be distinguished from the other “neutral” indicators, they are displayed in a different color (blue) in the current ST tool. We codesigned with this teacher these additional functionalities, and the resulting user interface is illustrated in Fig. 4.

1. define and view “higher level,” derived indicators from the current set of “low-level” indicators, for example, occurrences of sequences of indicators;

2. see how many times a particular indicator has occurred, for example, the level of achievement of each task goal over the whole class, so that the teacher can reinforce in the next lesson those aspects of the task that students found difficult.

^{13}]) but at that time its development was deprioritized on the advice of our teacher collaborators in favor of the more detailed view presented in Fig. 4. This sometimes conflicting advice received from the teachers who have been working with us serves to underline the novelty of the tools that we are aiming to provide, the teachers' lack of familiarity with such tools (and hence their difficulty in evaluating their own needs in the classroom), and the necessity of an iterative codesign process.

^{20}]. However, to our knowledge, there are no other tools that assist teachers in tracking their students' progress during constructionist learning activities. This novelty has had several implications for our work, ranging from computational aspects such as developing appropriate techniques for inferring each of the TD indicators, to the iterative codesign process with our teacher collaborators that we have reported on above.

^{21}] which uses weblog data generated by course management systems (WebCT in their case) to help instructors be aware of students' activities in distance learning classes; [

^{22}] which presents tools for helping teachers understand students' behavior in adaptive tutorials through post-analysis of the system's data logs; [

^{23}] which presents tools for teachers to visualize students' progress through simulation-based practical work sessions, and [

^{24}] which provides awareness information to teachers so as to support their role as moderators of multiple e-discussions.

^{21}] use techniques from information visualization to represent multidimensional student tracking data; and our Student Tracking tool has a similar representation to some of their visualizations. However, they do not focus on detecting and visualizing the occurrence of indicators in open-ended constructionist learning tasks but rather on visualizing students' social and behavioral aspects, their progress with respect to the course schedule, and their performance on quizzes and assignments and the level of knowledge achieved for each domain concept of the course. Another important difference is that their approach is at a higher level of granularity (i.e., information about a whole course over several days or weeks), while we focus on helping teachers supporting exploratory activities both

*in*the classroom and

*after*the class session, and therefore our level of granularity needs to be at the same time finer and broader than theirs. We have therefore had to undertake an iterative process to elicit from teachers which indicators were appropriate for different usages, as reported in Section 4. We refer the reader to [

^{21}] for an extensive review of other work in visualization of data collected by course management systems, some of which also uses data mining and intelligent techniques to analyze student data and generate feedback to users—though, again, none of this earlier work focuses on constructionist learning.

^{22}] adopt a hybrid approach whereby part of the data mining effort is teacher driven and part is automated, but like much other work in educational data mining it does not focus on monitoring students' ongoing progress through constructionist learning tasks. Their map-based approach is not feasible for tasks where there is a high degree of freedom and uncertainty in the students' interactions (as is the case with the eXpresser), as the number of states needed in the map would quickly become unmanageable.

^{23}] compose a practical work session from a sequence of simulation-based problems. Their focus on simulation-based learning in classrooms has some similarities with our work with microworlds: their simulators of electric circuits would be analogous to our eXpresser tasks, although the level of exploration granted to students is more limited. In their approach, there are explicit conditions on simulation states that evaluate to correct/incorrect and there are explicit requests by learners for validation of conditions, neither of which is the case with our more open-ended constructionist learning tasks in MiGen. Additionally, in our case, the set of indicators were identified with our teacher collaborators through an iterative process. Different indicator visualizations are needed in different situations, and also different teachers may wish to select different subsets of indicators at different times, and hence our Student Tracking tool includes such a customization facility to allow this.

^{24}] has some similarities with the work presented here as it also aims at increasing the awareness of the teacher about what their students do. The difference is in focus: while we concentrate in reporting information about what students do in the context of individual constructionist tasks, they target discussion moderation.

# Acknowledgments

*S. Gutierrez-Santos, D. Pearce-Lazard, and A. Poulovassilis are with the London Knowledge Lab, Birkbeck, University of London, 23-29 Emerald St., WC1N 3QS London, United Kingdom.*

*E-mail: sergut@lkl.ac.uk, darren.pearce@gmail.com, ap@dcs.bbk.ac.uk.*

*E. Geraniou is with the Institute of Education, University of London, 20 Bedford Way, WC1H 0AL London, United Kingdom.*

*E-mail: E.Geraniou@ioe.ac.uk.*

*Manuscript received 4 Apr. 2011; revised 8 Aug. 2011; accepted 30 Sept. 2011; published online 11 Sept. 2012.*

*For information on obtaining reprints of this article, please send e-mail to: lt@computer.org, and reference IEEECS Log Number TLT-2011-04-0044.*

*Digital Object Identifier no. 10.1109/TLT.2012.19.*

1. All students' names (both screenshot and text) have been changed.

#### References

**Sergio Gutierrez-Santos**received the telecommunications engineering degree in 2002 and the PhD degree in computer science in 2007 from University Carlos III of Madrid. Since then, he has been with the London Knowledge Lab. His research interests center on artificial intelligence (especially emergent technologies) and its application to problems in teaching and learning.

**Eirini Geraniou**received the MSc degree in mathematics from the University of Crete and the PhD degree in mathematics education from the University of Warwick. She is a lecturer at the Institute of Education, University of London. Her research interests include educational design of material and activities for mathematics, teaching and learning mathematics with ICT, algebraic ways of thinking, students motivation in learning mathematics, and advanced mathematical thinking.

**Darren Pearce-Lazard**received the MA degree in mathematics from Cambridge University and the PhD degree in computer science from the University of Sussex. He is interested in collaborative learning and task state-space navigation, especially in combination with sophisticated approaches to collaboration. Currently, he is a visiting research fellow at the Ideas Lab at the University of Sussex.

**Alexandra Poulovassilis**received the MA degree in mathematics from Cambridge University and the MSc and PhD degrees in computer science from Birkbeck. Her research interests center on information management, integration, and personalization. Since 2003, she has been the codirector of the London Knowledge Lab, a multidisciplinary research institution which aims to explore the future of knowledge and learning with digital technologies.

| |||