PHYSICAL VISUALIZATION OF MATH CONCEPTS USING LEGO MINDSTORMS

Educational robotics has become one of the most effective methods to teach STEM concepts in a practical and didactic way at all educational level. In this context, the LEGO Mindstorms robotic platforms have been widely used due to their versatility ease of use and modularity. Despite this, most of the papers focus on K-12 and undergraduate levels, with little information reported in the literature about educational experiences at the graduate level. This article deals with the use of educational robotics for the teaching of mathematical concepts at the graduate level, and more specifically on the physical visualization of metrics (Euclidean, Taxicab, and Infinity), and the convergence of Cauchy sequence using a mobile robots LEGO Mindstorms NXT. The educational experience was applied to a group of graduate students who offered good comments on this type of educational activity and its usefulness to understand the mathematical concepts addressed. It was observed that this type of educational experiences motivates students to use mathematical concepts in interdisciplinary problems and encourages them to understand their functionality and application in the real world.


Introduction
Robotics is a multidisciplinary field that includes the design, assembly and use of robots applying principles of engineering, computation, mathematics, physics, among others (Afari & Khine, 2017;Souza, Andrade, Sampaio, & Araujo, 2018). These characteristics make robotics attractive for students and researchers to use as a tool to develop cognitive and social skills for K-12 students, as well as for learning its operational principles and other interdisciplinary subjects (Afari & Khine, 2017). The use of robots in educational experiences is a kind of constructivist approach that promotes a way of student learning in which the teacher is not responsible for transferring all information; instead, it plays a role as a facilitator of the group's learning and leadership. Thus, students improve their knowledge through the manipulation and construction of physical objects (Bilotta, Gabriele, Servidio & Tavernise, 2009).
Educational robotics (ER) is a widely used strategy for teaching STEM (science, technology, engineering and mathematics) subjects to students from the K-12 to the graduate education level (Souza et al., 2018;Xia & Zhong, 2018). It has emerged as a valuable learning tool that can offer practical and fun activities in attractive environments, fueling students' curiosity and interests (Afari & Khine, 2017;Eguchi, 2010). ER is a suitable technique for teaching computational thinking, programming, electronics and robotics, reason why, it has gained popularity in several curricula around the world (Chaudhary, Agrawal, Sureka & Sureka, 2016). Robotics motivates students, offers tangible materials for learning and offers challenges that make possible the development of cognitive and social skills such as group work, problem solving, critical thinking, creativity, communication and collaboration (Afari & Khine, 2017;Chaudhary et al., 2016;Jung & Won, 2018;Souza et al., 2018). All these skills play a crucial role in the personal and professional development of students in the 21st century (Afari & Khine, 2017).
The benefits of using the robotics in learning environments can be applied to all educational levels (Afari & Khine, 2017;Zygouris, Striftou, Dadaliaris, Stamoulis, Xenakis & Vavougios, 2017). However, most of the educational experiences reported in the literature are carried out with students from 13 to 18 years old, mainly in the framework of K-12 Education (Souza et al., 2018;Xia & Zhong, 2018).
One of the most commonly used robotic platforms for educational purposes is the LEGO Mindstorms because they are versatile and attractive to students, have a graphic programming environment and include a wide variety of sensors and actuators that facilitate the testing of robotic applications (Afari & Khine, 2017;Chaudhary et al., 2016;Souza et al., 2018). These kits have been used mainly in the development of applications in K-12 Education and, to a lesser extent, for the teaching of robotics, control, modeling, programming and integrated systems at the undergraduate education level (Ding, Li, & Pan, 2017;Kim, Oh, Choi & Tsourdos, 2014;Wu, de Vrie, & Dunsworth, 2018). During our research for related work, we observed little evidence of the use of these kits for the teaching of basic science subjects such as mathematics and physics. Likewise, the works that report ER as an educational resource at the graduate level are very scarce in the literature.
On the other hand, graduate students have a high level of knowledge and experience, generally manage their time better, are more autonomous in the development of laboratory experiences and some of them have prior knowledge in robotics and programming. These characteristics allow these students to face in a more flexible and dynamic way the development of experiences that are outside their area of knowledge.
In this context, this article presents the result of the application of an educational experience for graduate students in engineering at the Universidad Pedagógica y Tecnológica de Colombia (UPTC), in Sogamoso-Colombia. The designed experience is focused on the teaching of mathematical concepts through their physical visualization on robotic platforms. In particular, we center on the teaching of the Euclidean, Taxicab and Infinity metrics, as well as the convergence of Cauchy's sequence. In this work, we analyze the opinion of a group of graduate students about the use of ER in the classroom as a starting point for a broader study on the implications of the use of robots for the teaching of concepts in this education level.
The rest of the work is organized as follows: Section 2 shows the studies found in Educational Robotics with LEGO Mindstorms NXT and EV3. Section 3 explains the basic concepts of Euclidean, Taxicab and Infinity metrics; and the visualization of these concepts for the particular case of the LEGO Mindstorms NXT robot. In section 4, we repeat the previous process for the concept of the Cauchy's sequence and the demonstration of its convergence. Section 5 presents an analysis of the opinion of a group of graduate students about the development of the experiences described and the learning results achieved. Finally, section 6 concludes the article.

Application of LEGO Mindstorms in Educational Robotics
As mentioned before, educational robotics is a pedagogical approach that involves social and educational skills (Souza et al., 2018) and draws the attention of students due to it is focused on practical activities and tasks (design, build, and program) that make learning fun and challenging (Afari & Khine, 2017;Chaudhary et al., 2016). In addition, ER promotes acceptance and adaptation to constant changes driven by complex environments and the use of knowledge in real situations and in different contexts (Eguchi, 2014). This leads students to increase their level of commitment to the development of experiences, to learn fundamental skills and to take initiatives as co-builders of learning, instead of being passive receivers of information (Afari & Khine, 2017;Chaudhary et al., 2016;Jung & Won, 2018).
In educational experiences with robots, it is necessary to select a physical system that meets the academic and practical requirements for the teaching of concepts. LEGO Mindstorms is a flexible and affordable tool that allows the development of educational experiences in different education levels taking into account it includes physical components (block construction) and software (programming) (Souza et al., 2018), which motivates students and improves the success rate in the teaching of concepts (Ding et al., 2017).
Taking into account the above, we conducted a search of articles in databases on the application of LEGO Mindstorms NXT and EV3 in ER. Then, the most significant works found during the review are briefly described, in which the first two talk about the application of this type of robots in ER, while the other works were classified according to the level of education in which they are applied. Jung and Won (2018) carry out a systematic review of the existing literature in RE using robotic kits. The study investigates the definition of educational robotics, thematic patterns, and theoretical and methodological characteristics. The authors propose a change in the focus of research in ER, passing from the technology and capabilities of robots to the pedagogy of experiences, students, their learning and their opinion about these experiences. On the other hand, Souza et al. (2018) identify the environments and programming languages, the educational experiences based on robots and the education level.
For the K-12 education level, Afari and Khine, (2017) explore the educational use of LEGO Mindstorms in schools and their integration in the curriculum. In addition, they suggest strategies for the use of robotics as an effective tool for teaching STEM subjects and their impact on students. Xia and Zhong (2018) reviewed the literature on the teaching and learning of robotics and discussed future research on this topic. The authors also noted that most of the studies they analyzed lasted less than two months and were applied to small groups of students. Chaudhary et al. (2016) use LEGO Mindstorms EV3 robots for the teaching of computational thinking, problem solving, teamwork and project management skills. Finally, Zygouris et al. (2017) use LEGO Mindstorms NXT robots to teach 12-year-old students basic geometry concepts.
In all of these works, LEGO Mindstorms robots are used at K-12 education level for the teaching of robotics, programming and the development of teamwork and communication skills. However, it is less common to find them effectively applied to the teaching of subjects related to physics and mathematics, even though several works mention the potential of this technology for the teaching of these subjects.
For the undergraduate level, Álvarez and Larrañaga (2016) present the results of a two-year experiment using LEGO Mindstorms robots in the teaching of basic programming with around 100 students, evidencing a significate improvement in the motivation and perception of the students in the learning process. Kipp and Schneider (2017) describe how to create a social robotics class where students interact with LEGO Mindstorms EV3. Additionally, Ding et al. (2017) and Wu et al. (2018) use LEGO Mindstorms NXT to teach control subjects such as the design of a PID controller for line tracking (Ding et al., 2017), and dynamic systems (analysis of first and second order systems) and the design of a PD controller (Wu et al., 2018). The RE at the undergraduate level focuses mainly on the teaching of programming, robotics, modeling, and control. However, we did not find works reporting the teaching of mathematics at this education level.
For the graduate level, only one work was found where LEGO Mindstorms robots are used for RE. Kim et al. (2014) propose a practical project to teach orientation and control with LEGO Mindstorms NXT and a webcam for a course of graduate students. The authors conclude that these tools are efficient to improve the assimilation of complex issues at this education level. It is worth mentioning that there are few works in the literature reporting educational experiences with robots at the graduate level. In addition, the authors only use surveys to know the level of student satisfaction on the implications of learning concepts with robots.
Taking advantage of the fact that in some engineering careers graduate students have programming skills and robotics knowledge, robots can be easily used to teach other subjects to these students. In addition, taking into account the critical view and maturity of graduate students, their perspective constitutes good feedback about the developed educational experiences applicability and usefulness.
Bearing this in mind, the following sections will give a perspective from the graduate students' point of view on two educational experiences using LEGO Mindstorms robotic platforms. The experiences comprise the use of LEGO Mindstorms NXT robots programmed on NXT-G (a block-based language) to perform a physical representation of the Euclidean metric, the Taxicab metric, and the Infinity metric, as well as to demonstrate the convergence of Cauchy sequence. Sections 3 and 4 include a general description of the targeted mathematical concept, the development of the program to visualize it, and the results of the application of each educational experience. To the best of our knowledge, an original contribution of this work is the use of mobile robots (more specifically LEGO Mindstorms) to teach concepts of metrics and the Cauchy sequence.

Physical Visualization of Metrics
This section present the proposed educational experience centered on the programming of the Lego Mindstorms NXT robots for the observation of the Euclidean, Taxicab and Infinity metrics. To perform the implementation of the metrics, the robot must turn on itself in the position (0,0) of a Euclidean plane until detecting an object (by using an ultrasonic sensor). When this happens, the robot measures the distance and angle to the object and moves towards it using one of the proposed metrics. The robot behavior programming is performed in the LEGO Mindstorms EV3 Home Edition software.
To facilitate the explanation of the proposed approach, this section introduces a conceptual description of the mentioned metrics, and the graphs (based on experimental measurements) used to describe the robot behavior (sensors and actuators) and the adjustments introduced to have greater precision in the movements of the robot during metrics tracking. Finally, this section presents the programming of the robots and the results obtained in real experiments.

Fundamental Concepts of the Euclidean, Taxicab and Infinity Metrics 3.1.1. Metric Space
A metric space is a pair (X, d) where X is a set whose elements are called points, and a function 'distance' or metric application, d: X × X → ℝ , that verifies the following properties:

Euclidean Metric
Also called usual metric. The distance between two points is the square root of the sum of the squares of the differences in the coordinates of the points. This metric is governed by Equation (1) for X = ℝ 2 . Otherwise, it is the length of the hypotenuse of the right triangle defined by the two points. (1)

Taxicab Metric
Also called Manhattan Metric. The distance between two points is the sum of the absolute values of the differences between their coordinates.
(2) Equation (2) defines the taxi driver's metric for X = ℝ 2 . The name taxicab metric comes from the interpretation of the length of a taxi's route, which in a gridded city -Manhattan style-, goes from one point to the other with a single turn of the steering wheel.

Infinity Metric
Also called maximum or chess metric. The distance between two points is the maximum of the absolute values of the differences between their coordinates. This metric is governed by the Equation (3) for X = ℝ 2 . (3) The name chess metric comes from the following interpretation: think of a chessboard and in it a single piece, the king. The king can reach in a single movement the eight squares that surround him. Distance between two squares is the minimum number of movements that the king must make to go from one square to the other. Figure 1 shows the behavior of each of the metrics in a two-dimensional space. All three are generalizations of the metric of the absolute value of the difference.

Parameterization of the Robot's Orientation.
LEGO Mindstorms NXT do not have sensors to measure directly the orientation of the robot, therefore, we implement a series of measurements from the robot encoders. To take these measurements, the robot rotates on itself to the right and left different values -in degrees-using the rotation block available in the NXT-G language (see Figure 2). It is important to bear in mind that these measures must be adjusted by performing a linearization to reduce the errors that can affect the correct tracking of the metrics. The adjustment process is shown in Figures 3 and 4, and in Equations (4) to (7).   Figure 3 shows the data of the rotation sensors obtained during the program execution (presented in Figure 2) vs. the experimentally verified robot orientation data. The data in blue correspond to the measurements taken when the robot turns to the right, while the data in orange correspond to the measurements taken when the robot turns to the left. Equations (4) and (5) are obtained by adding trend lines to the data for both rotation directions, and describe the relationship between the data of the robot encoders and its actual orientation data. (4) In Equation (4), α r represents the value (in degrees) of the orientation when the robot turns to the right, Sensor A is the encoder measurement for the right wheel, Sensor B is the encoder measurement for the left wheel, and k r1 = 0.2723 and k r2 = -4.5162 are constants experimentally defined for the employed robot using the above-mentioned methodology. Equation (5) has a similar behavior than in Equation (4), where α l represents the value (in degrees) of the orientation when the robot turns to the left, and constants k l 1 = 0.2704 and k l 2 = 1.6739. In Figure 4, the data in blue corresponds to the orientation of the robot taken when it turns to the right and the data in orange corresponds to the orientation taken when the robot turns to the left. Equations (6) and (7) model the behavior of the robot orientation. Constants g r1 = 1.9997, g r2 = -1.8879, g l 1 = 1.7824, and g l 2 = 1.6558 were experimentally obtained for the robot employed in this case. (6) In Equations (6) and (7), G r and G l represent the value in degrees to be entered in the program for the robot change its orientation α r degrees to the right, or α l degrees to the left, respectively.
Ideally, turning to the left or to the right should not have an influence on the robot behavior, but when comparing Equations (4) and (6) with Equations (5) and (7), we observe that constants are different depending on the direction of the robot's rotation. A considerable improvement in the orientation error of the robot is observed when applying the adjustment equations. For instance, when turning the robot in any direction the accumulated orientation error was nearly 30° for each 360° robot turn (e = 8.33%). When applying Equations (4) to (7), this error was approximately 5° for each 360° turn (e = 1.38%).

Detection of the Object Coordinates
For the Taxicab metric and the infinity metric, we can consider the Euclidean distance (d 2 (x,y)) to the object as the hypotenuse of a triangle, while the legs of the triangle are calculated with the angle (α) of the object with respect to the x-axis. For these calculations, it is necessary to implement the sine and cosine functions as shown in Equations (8) and (9). It is worth remembering that for the mentioned metrics implementation, the robot must move following the legs. (8) LEGO Mindstorms NXT robots do not have the sine and cosine functions. Therefore, it is necessary to implement the x and y calculation bearing in mind the limitations of the robotic platforms. In this case, students must use Taylor series to approximate the sine and cosine functions as shown in Equations (10) and (11), respectively. (10) Furthermore, these robots do not have factorial or potentiation functions, so it is not possible to implement the sum directly as shown in Equations (10) and (11). Due to the robot constraints, we use only the first nine sums of the series seeking to have a good enough approximate value to the sine and cosine functions (see Equations (12) and (13)).
In this case, Equations (12) and (13) are implemented through a block (called SenoCoseno) in the NXT-G language. This block takes as input the angle of orientation (in radians) and calculates its sine and cosine values. With these ones and the ultrasonic sensor measurement, Equations (8) and (9) generate the coordinates to which the robot must arrive following the metrics. In order to calculate the absolute value of the object coordinates, it is necessary to create a block (called CoordXY).

General Program Structure for the Physical Visualization of the Metrics
Next, we describe a sequence of steps for the implementation of the program in the NXT-G language for the physical visualization of the metrics studied: i. Place the robot at the origin of the coordinate plane. The value of the rotation sensors of motor C and motor B is set to zero to ensure the proper calculation of the orientation of the robot. Then, a block (called PORTADA) prints on screen the name of the student conducting the experience and the metric. The robot rotates on itself to the left (at a low speed to have greater precision in the measurement of the sensor) continuously until the detection of an object within a predefined range (60 cm maximum).
ii. When the robot detects an object it saves the values of the encoders of the B and C motors in global variables and stops its rotation. At this point, the robot should be directly facing the object. A block (called CalcularOrientacion) calculates the orientation angle of the robot.
iii. The robot control makes the calculation of the orientation, the sine and cosine of the orientation angle, and the coordinates of the object.
iv. The robot stores the values of the coordinates and the orientation angle in global variables and then follows the desired metric.
v. Finally, when the robot reaches the calculated coordinates, a block (called VALORESMEDIDOS) prints on the screen the ultrasonic measurement value, the angle of orientation and the value of the coordinates (x, y) to verify that the program execution was successful. Figure 5 presents a program that allows the robot to follow the metrics studied. The same program is used for the visualization of the three metrics, with the only difference in the implementation of the block enclosed in black (called "HacerMetrica"). Next, we briefly describe this block for each metric.

Implementation of the Euclidean Metric
Once the robot detects an object within the established range, it advances a certain distance measured by the ultrasonic sensor. The program measures the displacement of the robot from the number of rotations of the wheels. The robot moves 17.5 cm (on average) when both wheels rotate simultaneously in the same direction. From this parameter, the program converts the robot's displacement reference value (in centimeters) to an equivalent value in the rotations of the wheel.

Implementation of the Taxicab Metric
The robot determines, by means of a switch block, in which quadrant of the coordinate plane the object is located. According to this, it calculates the angle to be rotated leftward up to reach one of the axes (y for the I and III quadrants, and x for II and IV quadrants) according to Equation (7). When the robot reaches an axis, it moves the distance in x or y calculated for Equations (8) and (9). Then, the robot makes a 90°t urn to the right using Equation (6) and moves the distance corresponding to the other axis using again Equations (8) and (9).

Implementation of the Infinity Metric
The robot settles the quadrant in which the object is located in the same way as performed in the Taxicab metric. Next, it compares the calculated values of the x and y axes to determine which one is greater. Then, it proceeds to orient itself in the axis corresponding to the highest value using Equations (6) or (7) depending on the case. Finally, the robot moves the distance corresponding to the highest value.

Fundamental Concepts of Cauchy Sequence
In mathematics, a Cauchy sequence (named after the French mathematician Augustin Louis Cauchy) is a sequence that, for any small positive distance, all but a finite number of elements of the sequence are less than that given distance from each other. Let {x n } nℕ be a sequence. We will say that {x n } nℕ is from Cauchy, if for every real number ε > 0 there exists a positive integer N such that for all natural numbers m, n > N, |x m -x n |< ε. Where the vertical bar denotes the norm (which in the particular case of the real field would be the absolute value). A metric space (X, d ) is said to be complete if every convergent Cauchy sequence has its limit within the X space.
Cauchy sequence of real numbers have the following properties: i) every convergent sequence is a Cauchy sequence; ii) every Cauchy sequence is bounded; and iii) a sequence of real numbers is convergent if and only if it is a Cauchy sequence. That is, the set of real numbers is a complete metric space.

Convergence of Cauchy Sequence
Equation (14) is an expression of Cauchy sequence. Furthermore, Equation (15) is an expression of Cauchy sequence as a real geometric series of initial non-null term a ℝ and ratio r ℝ. Where a = 1 and . It is worth mentioning that for a geometric series to be a Cauchy sequence, it must have a positive initial term and ratio. That is, not every geometric series is considered a Cauchy sequence. (14) A geometric series of this type is said to be convergent if and only if |r|< 1. In this case, so the sequence converges. To find where it converges we use the following equation: Using Equations (15) and (16) we can find where the Cauchy sequence converges by replacing the corresponding values. As presented in Equation (17), it is twice the initial displacement value of the robot. (17)

Physical Implementation of the Cauchy Sequence
To implement Cauchy sequence, it is necessary to program Equation (14) using the NXT-G language. This equation determines the movement of the robot in the following way: the robot starts from an arbitrary point in the coordinate plane. Then, it moves a distance x 0 , after that, it moves a distance x 0 /2, then a distance of x 0 /4, and so on. In the algorithm, the x 0 distance is a random number in the range of 2 to 20 rotations of the wheel. This ensures that the initial displacement of the robot is different for each experiment. The random value is stored in a variable name X and then converted into centimeters. A block (called PORTADA) prints the X value in centimeters on the screen. Then, the program performs a cycle that in each iteration moves the robot according to X and performs the operation X = X/2. The cycle ends when X < 0.01 since from this value the displacement is not reachable for the robot mechanical constraints. Figure 6 shows the described program.
To verify that the convergence of the sequence is twice the initial displacement we modify the program for the Cauchy sequence as follows. The robot starts from an arbitrary point in the coordinate plane. Next, the robot rotates on itself looking for detecting an object with the ultrasonic sensor (in a range of 250 cm). When the robot detects an object, it subtracts 10 cm from the value of the ultrasonic sensor (distance between the ultrasonic sensor and the front of the robot) and divides it by two. This result is the X value in the program of Figure 6. When performing this operation, the X value is half of the distance between the detected object and the robot. Thus, if Equation (17) holds, the robot should reach the detected object. We perform several experiments to check the convergence of Cauchy sequence by visualizing the displacement of the robot. Figure 7 shows the program described above.

Survey Development and Application
A survey was applied to the graduate students who participate in the educational experience application, devoted to measuring the impact of the use of LEGO Mindstorms on teaching the mathematical concepts specified above. Section 5.1. presents the survey design methodology and section 5.2. shows the results obtained by applying the it to a graduate course at UPTC.

Survey Design Methodology
During the survey design, two main aspects were considered: i) the learning of mathematical concepts by employing the traditional education method and when robots are used to reinforce the learning process, and ii) the impact of robotics as a teaching tool in the classroom.
Regarding the aspect i), Q1 seeks to gather the student's preference on the teaching of mathematical concepts, including an open response. Q2 pursues to know the students experience with the use of educational robotics. Q3, Q4, and Q5 look to establish by means of a Likert scale the learning outcomes reached by students regarding the teaching of mathematical concepts with LEGO Mindstorms. Regarding aspect ii), Q6 gather the students' opinion about the impact of the teaching of mathematical concepts by using robotics. Q7 to Q12 employ the Likert scale (1 disagree 5 agree) to evaluate the opinion of students regarding the advantages and pertinence of educational robotics based on their own experience. In the following, we present the survey questions applied to the graduate students in the proposed approach framework.
Q1: In your experience, the concepts related to metrics and Cauchy sequence are better understood when: a) Readings of a specialized book are carried out individually.
b) The concepts presented in the book are discussed with classmates. c) The concept is represented through the use of technology.
d) The concepts are taught using a master class conducted by the professor. e) Other.
Q2: In the educational processes in which you have participated as a student, has technology been included as a tool for learning concepts?
Q11: In your opinion, does the use of Educational Robotics increase students' interest in learning processes by developing practical exercises?
Q12: In your opinion, does the use of Educational Robotics allows learning concepts of computational thinking, electronics and robotics in a practical way?

Survey Results
The survey applied through Google Forms to a group of 18 graduate students of the UPTC, from which 14 students answered it. The opinion of such students is summarized below: 85.7% of the students think that the concepts of metrics and Cauchy sequence are better understood when these concepts are represented through the use of technology. 85.7% of the students never had an educational experience using technology as a learning tool. 92.9% of students think that the use of LEGO Mindstorms positively influenced their learning of metrics and Cauchy sequence, while the remaining 7.1% expressed that, although the experience was well developed, the robots lacked flexibility. Table 1 shows the average of the responses for Q3 to Q5 and Q7 to Q12.
From the responses to Q3, students state that the theoretical explanation was not clear enough for them, reason why Q3 was evaluated with the lowest average (3.28) in the survey. From Q4 and Q5 we can conclude that the experience have a positive impact in the students' understanding of the concepts of metrics and Cauchy sequence. The students evaluated its own comprehension level of these concepts before (3.85) and after (4.78) the use of LEGO Mindstorms. This evaluation results allow evidencing an improvement in the students' understanding of the mathematical concepts of metrics and Cauchy sequence.
From the information of Q7 to Q12, we can conclude that the graduate students involved in this experience consider ER as a good tool for teaching through the assembly and manipulation of physical objects and that contributes to develop social skills. In addition, they expressed that ER makes easy to learn computation, electronics, robotics and mathematical concepts, and improves programming skills and students' interest in the learning process. It is worth mentioning that the minimum average of responses Q7 to Q12 is 4.57, that shows a good perception of the students regarding the advantages and pertinence of Educational Robotics.

Discussion
LEGO Mindstorms robotic platforms constitute an educational tool that offers many advantages in the teaching of multidisciplinary topics. Specifically, LEGO Mindstorms NXT have been widely used in several experiences at different education levels. However, these platforms have some limitations for the developing of math algorithms as the missing of sine, cosine, potentiation or factorial functions. As observed in the implementation of the metrics and Cauchy sequence, it is necessary to take alternative strategies to calculate these functions like the Taylor series using basic operations such as addition, subtraction, multiplication and division. When calculating the sine and cosine using this strategy, we obtain values with an error lower than 0.001%. In this way, the robot executes its movements precisely, which facilitates the visualization of the metrics studied. On the upside, these limitations challenge students to generate alternative solutions to allow the implementation of the metrics taking into account the robot constraints and potentialities, thus contributing to their learning process.
On the other hand, LEGO Mindstorms NXT robotic platforms do not have sensors to directly measure the orientation of the robot, so it is necessary to use other sensors (e.g. encoders or accelerometers) to measure the robot orientation indirectly. By applying the equations described in section 3, the error in the measurement of the orientation of the robot is reduced by 6.95%, which reduces by 60% the error in the final position of the robot regarding the position of the object.
When students use robots to study metrics, they can observe in detail their characteristics and properties for X = ℝ 2 , which are not intuitively noticeable until they are applied in real experiments. Because the students who carry out this experience are engineers, a constructivist pedagogical approach (as the one used in this case) allows them to assimilate these concepts better, and to visualize their possible applications in different areas such as robotics, multi-agent systems, telecommunications, systems modeling, and control, among others.
Traditionally, the study of the convergence of sequences is carried out through an analytical demonstration. As shown at the beginning of section 4, the convergence of the Cauchy sequence is twice the value of the initial distance. Thanks to the proposed educational experience application, students can observe and verify the convergence of this sequence. It also allows students to observe possible applications of this concept in digital signal processing, robotics, parameter estimation, among others. The final error in the convergence for the execution of the robot program is less than 1%, which is attributable to the fact that the program calculation cycle iterates a finite number of times (while the sequence is infinite) and to the sliding of the wheels of the robot.
The proposed educational experience was applied to a group of Master in Engineering students at UPTC. The students responded favorably to the experience since they consider that it improves their understanding of mathematical concepts, enrich their attention, and favorably influenced their desire to learn more on these concepts, as well as on its possible applications in specific fields (according to the student's formation and background).
Another important result is that students learn and/or reinforce the concepts of electronics, instrumentation, and robotics, such as the characterization of sensors, measurement errors, sensor noise, and signal processing. A clear application of these concepts leads to improve the accuracy and precision in the movement of the robot during the implementation of relevant mathematical concepts in engineering such as metrics. In addition, students learned a new block-based programming environment (NXT-G) and they had a multidisciplinary learning experience observing how various fields of knowledge work together to solve a problem.
The use of LEGO Mindstorms robots mainly focuses on K-12 and undergraduate education levels. The learning outcomes reached with the proposed experience application, show us that it is important further developing research regarding the application of robotic platforms at the graduate level since it helps students to understand more easily complex concepts in various fields of knowledge with a constructivist approach. Additionally, students at this educational level usually have several skills that allow them to develop the proposed activities in a more efficient way.

Conclusions
The use of robots as teaching tools in educational experiences is widely used for researches nowadays. One of the most used robots for educational robotics is the LEGO Mindstorms due to its versatility and ease of use. However, most of the educational experiences using robots apply to students at the K-12 and undergraduate levels, employing this technology to teach concepts of robotics, control, modeling, among others. Within the search for related works, no educational experiences were found devoted to teach or reinforce concepts of mathematics at the graduate level. In this article, we present the development of an educational experience for the learning and physical visualization of the Euclidean, Taxicab and Infinity metrics, and the convergence of Cauchy sequence, using LEGO Mindstorms NXT robots and the NXT-G programming language. This experience was applied to a group of students in a master's course. Students reported that they gained a better understanding of the equations and properties related to these mathematical concepts. Likewise, they could observe the behavior of these concepts in real experiments and visualize their possible applications in the field of engineering. In addition to the learning of mathematical concepts, the educational experience allows them to reinforce concepts of robotics, programming, signal processing, instrumentation, among others. Due to the level of education of the students, they developed the experience efficiently, taking full advantage of the potential of this technology. Robots provide important advantages for the development of educational experiences, so it is important to continue with research in this field, taking into account different types of platforms, levels of education and points of view.