Control of autonomous robot behavior using data filtering through adaptive resonance theory

Control of autonomous robot behavior using data filtering through adaptive resonance theory Vietnam J Comput Sci (2018) 5:85–94 https://doi.org/10.1007/s40595-017-0103-7 REGULAR PAPER Control of autonomous robot behavior using data filtering through adaptive resonance theory 1 1 1 Adam Barton · Eva Volna · Martin Kotyrba Received: 1 August 2017 / Accepted: 7 October 2017 / Published online: 2 November 2017 © The Author(s) 2017. This article is an open access publication Abstract The aim of the article is to use neural networks cial intelligence. An interesting topic is the human brain as a to control autonomous robot behavior. The type of the con- model for such an intelligent system. Inspired by the structure trolling neural network was chosen a backpropagation neural of the human brain, an artificial neural network emerges. Like network with a sigmoidal transfer function. The focus in this the brain, the artificial neural network contains many sim- article is put on the use adaptive resonance theory (ART1) for ple computational units, neurons, interconnected mutually data filtering. ART1 is used for preprocessing of the training to allow the transfer of the signal from the neuron to neu- set. This allows finding typical patterns in the full training set rons. These local interactions between neurons then result in and thus covering the whole space of solutions. The neural execution of global functions. Artificial neural networks are network adapted by a reduced training set has a greater ability used to solve various problems with good results compared of generalization. The work also discusses the influence of to other decision algorithms. vigilance parameter settings for filtering the training set. The There are many different artificial neural networks, but we proposed approach to data filtering through ART1 is exper- focus on feedforward networks. Through them, we control imentally verified to control the behavior of an autonomous the behavior of a robotic device that should be able, on the robot in an unknown environment with varying degrees of basis of defined behavior, to derive an appropriate response to difficulty regarding the location of obstacles. All obtained unknown situations. To build a physical robotic equipment, results are evaluated in the conclusion. we used Lego Mindstorms EV3. Keywords Adaptive resonance theory (ART) · Big data · 1.1 Important statement Control neural network · Data filtering This paper is an extended version of our conference paper [3], which was at least 30% new. We have extended the abstract 1 Introduction and the text of chapter 5 and 6. Chapters 1, 2, and 4 were added. We have also added corresponding references. Nowadays, we recognize a wide range of robotic devices. It is still the subject of research their program part, namely artifi- 2 Autonomous robot control B Eva Volna eva.volna@osu.cz This work focuses on autonomous robots. Such a system can Adam Barton be defined as follows: “The robot is an autonomous system adam.barton@osu.cz existing in the physical world that can detect the environment Martin Kotyrba and take action to achieve the goal” [5]. martin.kotyrba@osu.cz The word “autonomous” expresses that such a system can make its own decisions without any intervention or control Department of Informatics and Computers, of a person in the real world. The perception of the environ- University of Ostrava, 30. dubna 22, 70103 Ostrava, Czech Republic ment of the system is ensured by various sensors providing 123 86 Vietnam J Comput Sci (2018) 5:85–94 data. For such a system to make a decision, there is a need 3 Data filtering using adaptive resonance theory for a cognitive element that assures the “thinking” of the robot. 3.1 Big data Each robot should contain the following components [4]. Big data have been one of the current and future research frontiers. Big data concern large-volume, complex, growing • Physical structures existing in the real universe, i.e., the data sets with multiple, autonomous sources. With the fast body of the robot, through which it can move, manipulate development of networking, data storage, and the data col- objects, etc. lection capacity, big data are now rapidly expanding in all • Sensors, i.e., an environmental sensing device providing science and engineering domains, including physical, bio- information about the robot itself and the environment logical, and bio-medical sciences. around it. The most fundamental challenge for the big data applica- • Effectors, which perform actions in the environment, tions is to explore the large volumes of data and extract useful allow movements of the robot, interactions with the envi- information or knowledge for future [7]. In many situations, ronment, etc. the knowledge extraction process has to be very efficient • Control system defining a decision system, esp. autonomy and close to real time, because storing all observed data is of the system. nearly infeasible. Four things are required to mine data effec- tively [9]: high-quality data, the “right” data, an adequate sample size, and the right tool. There are many tools avail- The control system provides a tool that creates autonomy of able to a data mining practitioner. These include decision a robotic system, using available information, data for event trees, various types of regression, and neural networks. In planning, and execution of events. This is the “brain” of the more practical terms, neural networks are non-linear statisti- robot, which may not be the only one (different sensors may cal data modeling tools. They can be used to model complex be used by different control systems). relationships between inputs and outputs. Using neural net- The control architecture provides organization of the works as a tool, we can harvest information from big data control system and allows defining the behavior of the [6]. robot. It uses algorithms to solve problems. The tools for This article describes an effective way of data filtering implementing the control architecture are programming lan- through adaptive resonance theory, which is experimentally guages, while the architecture itself only describes the verified to control the behavior of an autonomous robot in an frame. unknown environment. An autonomous robot must be able to process sensor data, define the state of the outside world, and plan future actions to 3.2 Adaptive resonance theory carry out the action in real time with limited resources. These operations are described by a control architecture defining the Adaptive Resonance Theory (ART1) is composed of two elements required to achieve the desired behavior, especially layers and a control neuron R,Fig. 1. Layer F includes in the following areas [1]: computational neurons X from the input layer F (a) and i 1 neuronsI from the interface layer F (b). Neurons Y form i 1 i • Programmability—the robot should not be able to per- layer F . Synapses between F and F are oriented bottom– 2 1 2 form only one specific task, it should be able to achieve up, and synapses between F and F are oriented top–down. 2 1 more tasks, and a set of tasks defined by one global goal. This approach enables to control the degree of similarity • Autonomy and adaptability—the robot should be able to between weight values of synapse top–down and the input adapt the required tasks, actions, and behavior to meet vector. Deciding is provided by neuron R (reset), which the defined global goal. that separates states of neurons in F three possibilities: • Reactivity—the robot should be able to decide at the right active, inactive—acceptable for competition, and inactive— time and respond to events requiring an immediate or near unacceptable for another competition [8]. immediate reaction. Using a heuristic of self-organizing networks for prepro- • Robustness—a robot’s architecture should be able to cessing of the training set, we are able to find typical patterns handle unexpected problems in its functionality, task pri- and thus cover the entire space. We utilize ART1 to filter a orities, behavior, activities, conflict resolution, etc. training set, which works with a binary input. The present • Scalability—the implementation of new functionalities input is compared based on parameter vigilance ρ ∈ [0, 1] should not negatively affect the performance of the with stored patterns in the network. If it differs significantly, architecture; it should be easily expandable and under- this pattern is stored in the network as a new class. ART1 is standable. able to create groups of patterns and the user has the oppor- 123 Vietnam J Comput Sci (2018) 5:85–94 87 8. Test for gradual addition of input vectors into a reduced training set (RTS): (a) If there is no vector in the given group of RTM yet, the currently presented vector x is stored as a typical representative of the group. (b) In the case that the group is not empty and also the currently submitted vector x carries a greater amount Fig. 1 ART1 of information than the vector stored, as the repre- sentative of the group, vector x will replace it. tunity to influence the level of relative similarity of patterns 9. Checking the termination condition. If it is satisfied, the stored in the same group. algorithm proceeds to step 11. To create a filtered training set, the basic algorithm ART1 10. Suppression of neurons which were inhibited and the [8] is modified as follows: algorithm proceeds to step 2. 11. Stopping the algorithm. 1. Initialization of synaptic weights, bottom–up b , top– ij down t , and parameter vigilance ρ ∈ [0, 1]: ij The key step in the modified algorithm ART1 is Step 8, where the reduced training set (RTM) is compiled based on the classification of the network. The user chooses a rule setting b = , t = 1,ρ ∈ [0, 1] , (1) ij ij (1 + n) of a vector with a higher content of carried information. In this work, we accept vectors containing more critical states, where n is the number of input neurons. i.e., elements with value 1. 2. The submission of input x = [x ,..., x ] to input layer 1 n F . 3.3 Impact of vigilance 3. Activation of neurons in layer F and calculation the response according to: ART1 requires parameter vigilance ρ, which defines the degree of similarity for assigning the pattern to the same y = b x , (2) class. This parameter is defined by the user. Figure 2 j ij i i =1 shows the effect of parameter ρ on pattern matching p = [ p ,..., p ] ∈ {0, 1} into classes c. 1 n where y is the response of the jth neuron in F and x j 2 i If a low value of ρ is set, it can lead to the classification is the ith element of input vector x. of different patterns in the same class and the number of 4. Selection of the neuron with the greatest response y = max classes is small. On the contrary, a big value of ρ results in max y . the formation of a large number of classes. In this work, ρ is 5. Calculation of similarityδ of input pattern with back set, so that its value is from the interval [0.5; 0.7]. This leads weighting factor t regarding the neuron y : imax max to the creation of a big number of groups or to an inadequate classification of the input pattern. t x imax i δ =  . (3) 4 Related works 6. If δ ≥ ρ, a resonance of input with expectations occurs and the candidate y is accepted, the algorithm pro- max Thework[11] presents the electronic design and motion ceeds to step 7. Otherwise, the candidate is rejected and planning of a robot based on decision-making regarding its its output is set to −1 and other suitable candidate will straight motion and precise turn using artificial neural net- be chosen and the algorithm proceeds to step 3. work (ANN). The ANN helps in learning of robot, so that it 7. Weights’ adaptation b at of neuron y accord- imax imax max performs motion autonomously. The robot was designed to ing to formulas (Weber Law): work in real time. The weights calculated were implemented Lt x imax i in microcontroller. The learning algorithm was backpropa- b = , (4) imax L − 1 + t x gation with hyperbolic tangents activation function, and the imax i network was adapted through Easy NN-plus. The training t = t x , (5) imax imax i set consisted of five inputs and one output determining the where L is a constant (excelling unit), its value is usually action: right, left, forward, and stop. It contained 14 designs L = 2. expertly assembled, but the article does not mention values 123 88 Vietnam J Comput Sci (2018) 5:85–94 Fig. 2 Influence of the vigilance parameter on the training set clustering of other parameters. An autonomous robot has been tested while goal reaching controller helps the mobile robot in in a maze environment to avoid obstacles. The performance reaching the destination. Both these controllers are trained has been tested to be excellent. offline with the data obtained during experimental run of Thework[12] presents the development and control of a the robot, but the approximation of the activation function disc-typed one-wheel mobile robot, called GYROBO. Two generated an error, and therefore, an increasing number of actuators are used for balancing control by virtue of gyro neurons could be worse outcome neuronal controller. The effect and one actuator for driving movements. To compen- vehicle with the proposed controllers was tested in outdoor sate for uncertainties in robot dynamics, a neural network was complex environments and is found to reach the set targets added to the non-model-based PD-controlled system. The successfully. reference compensation technique was used for the neural This article [15] shows how to develop a robot that can network controller to help GYROBO to improve balanc- learn using the backpropagation algorithm, a basic neural net- ing and tracking performances. Experimental studies of a work, and implementing it on a Lego Roverbot. Using both selfbalancing task and a line tracking task are conducted to the algorithm and Java, the Roverbot, a Lego robot vehicle, demonstrate the control performances of GYROBO. Exper- can learn some basic rules for moving forward, backward, iments with a PD controller and a neural network showed left, and right. The aim of the project was also to examine that the generalization ability of the neural network can be a the emergent behavior of the robot, and therefore, the train- powerful tool. In this case, the robot was not controlled by ing set was consisted with only four patterns. This approach the neural network itself. allowed for the robot to achieve complex behavior, but at the The work [13] describes the concept of the navigation cost of time that was needed for calculations. The program system for a mobile robot. The system is using a navigation itself should always be uploaded to Lego brick after editing. algorithm based on self-learning neural network, necessary The project OpenWorm [16] mapped the connection of the to form a movement plan for a robot. The algorithm is adapted nematode worm neurons and transferred his perception and and implemented to navigate real platform of a mobile robot resulting behavior to the robotic body. Although the simula- equipped by two independent wheel drives, encoders and tion itself is not accurate due to software simplification, the a set of short-range sonars. Navigation algorithm is placed neural network mimics the brain of the given worm without into a PC, which is connected to mobile robot by wireless and the need for learning or programming. wired links. Experiments have shown ability of collision-free navigation of mobile robot in real time. The designed robot scanned its surrounding with a collection of sensors from which it was able to represent this surrounding in a two- dimensional map that was also the input to a self-learning 5 Control of autonomous robot behavior using neural network. The robot needs a defined goal to move and neural networks then manages the optimal path in real time. In this work [14], design of an intelligent autonomous In the centralized control [4], the robot has information from vehicle is presented that can navigate in noisy and unknown sensors and the base of stored knowledge. Based on this environments without hitting the obstacles in its way. The information, it creates a plan of action. It scans potentially vehicle is made intelligent with the help of two multilayer appropriate plans and it tries to predict. This is also the rea- feed forward neural network controllers. Hurdle avoidance son why this approach of “strategic thinking” requires a lot controller ensures collision-free motion of mobile robot, of memory and time. 123 Vietnam J Comput Sci (2018) 5:85–94 89 Fig. 3 Assembled robot. a a view from above; b asideview When searching for appropriate control architecture for an with the problem of creating a training set more specifically autonomous robot, it is necessary to compromise and con- that is its automatic generation and filtration. The proposed sider the fact that [2]. model of the controlling neural network is then able to realize real output, such as the speed for each robot engine. • Planning requires computing performance. • The reaction must be fast. 5.1 Model of an autonomous robot • Important information is needed for planning. • Planning allows you to avoid making mistakes. The proposed model of the robot is assembled from Lego • The environment varies and the planning result becomes Mindstorm EV3 [3], see Fig. 3. The robot uses LeJOS oper- inaccurate in time. ating system. The robot uses two large engines that propel a tracked chassis on which is placed a programmable brick. A sensory head with four infrared sensors is attached to the The type of the used neural network (structure of units, topol- chassis. The sensors emit infrared signals and detect reflec- ogy, and learning algorithm) significantly depends on the tions from an object which is located in front of the encoder. solved problem. The most widespread artificial neural net- The strength of the reflected signal indicates the distance works are multilayered networks that can handle complex from the object in the range from 0 to 100 units. data for non-trivial problems. The basic problem, not only in the management of autonomous robot, is finding the weights of the connections between neurons, either on the basis of the 5.2 Controlling neural network data (supervised learning) or finding dependencies in the data (unsupervised). When creating more complex structures, the The type of the controlling neural network was chosen a disadvantage is the amount of interconnections between neu- three-layer feedforward network with a sigmoidal transfer rons and the non-existent process for creating such structures. function, which has been adapted by backpropagation. Here An important aspect of neural network adaptation is the train- are the input neurons labeled X , hidden neurons Z , and out- i i ing set itself, which is expertly constructed on the basis of put neurons Y . Hidden and output neurons have a threshold past experience of solving similar problems. equaled to value “1”. For experimental purposes, a mobile tracked robot with Considering that the robot model has four infrared sensors two motors and a set of sensors using Lego Mindstorms capable of detecting a distance of 0–100 cm, it is appropriate was built. As a suitable neural network, a feedforward neu- to divide this interval into several parts that could be charac- ral network was chosen and its function, global objective, terized by words, for example, very close, close, medium-far, respectively (i.e., avoid obstacles in the space), was decom- far, very far etc. to obtain a larger variability for robot’s posed using a low-level description into individual patterns adaptation. We will, therefore, expand the network in width, in a training set. One problem area is just to build such a based on the method of distribution of the detected interval training set for artificial neural networks. Next, we will deal of sensors into subintervals. For outputs, the use of the same 123 90 Vietnam J Comput Sci (2018) 5:85–94 Fig. 4 Control neural network Fig. 5 Scanning area procedure would mean that the complexity of network adap- tation would grow as the number of speeds (outputs) and, w (t ) = α [(o − y ) λy (1− y ) v ] λz 1−z x j i i i i i j j j i =1 depending on them, the number of hidden neurons. If we use +μw (t − 1) , (9) a real-number vector, we are able to reduce the number of output neurons to four, as shown in Fig. 4, due to the use of two motors—two for each engine (forward and reverse). where v is the weight of the outgoing connection and z is the i j For the transformation of the input signal to the output, we output of the hidden layer neuron. For the weight increment use the sigmodial function S (x ) : R → (0, 1) expressed by between the hidden and the output layer, Eq. (10) is obtained Eq. (6): by adjusting (8): w (t ) = α (o − y ) λy (1 − y ) x +μw (t − 1) . (10) i i i i i i i S (x ) = , (6) −λx 1 + e where the constant λ is the slope parameter. We use the 5.3 The training set filtering through ART1 backpropagation algorithm to adapt the network. The aim of the adaptation is to find the minimal error E in the space The training set is automatically generated. If we consider of weights for all patterns 1,..., p defined by four output that the model of the robot has four infrared sensors that are neurons as the mean square error (7): able to detect the distance from 0 to 100 cm, it is appropriate to decompose this input interval into several parts. We have p 4 decomposed the input interval into five parts. Therefore, the E = y − o , (7) ij ij training set contains 20 inputs (each of the four sensors is i =1 j =1 associated with five terms) and four outputs. Then the number 4×5 20 of possibilities (input patterns) that can occur is 2 = 2 . where y is an actual output of the network after inserting The output vector consists of real numbers, and thus, we have the input x and o is an expected output from the training i i been able to reduce the necessary number of output neurons set after inserting the input x . to four, due to the use of two motors—two neurons for each During adaptation, we minimize this error by adjusting the motor (forward and reverse). weight values w by an increment according to the following We describe the principle of training set generating using equation: an example. We consider four infrared sensors, each of which is able to detect the distance 0–100 cm. We split this distance ∂ E w (t ) =−α + μw (t − 1) , (8) i i in five equal parts, see Fig. 5. We express these parts using ∂w a set of terms: vc—very close (0–19 cm), c—close (20–39 where α ∈ (0, 1] is the learning rate and the parameter μ ∈ cm), mf —medium-far (40–59 cm), f —far (60–79 cm), and [0, 1] reflects the increase in time t − 1 and thus maintains v f —very far (80–100 cm). the trend during the adaptation [8]. After adjustment (8), the Each sensor is associated with those five terms that repre- increment of the weight between the input and the hidden sent obstacles in the sensor range for the given interval. Value layer is expressed as follows (9): “1” indicates the presence of obstacles in a given interval, 123 Vietnam J Comput Sci (2018) 5:85–94 91 Table 1 Input patterns of Sensor 1 Sensor 2 Sensor 3 Sensor 4 reduced training set I I I I I I I I I I I I I I I I I I I I 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5 …………………………………………………… Table 2 Number of groups Vigilance ρ Minimal value of Maximal value of The average Mean ERTM depending on ρ the number of the number of number of groups number of classes classes groups 06 12 8.67 0.1 5 11 7.85 0.2 5 10 7.88 0.3 365346.951 0.4 36 54 46.247 0.5 40 51 46.350 0.6 177 188 182.6 188 0.7 179 192 184.9 184 0.8 625 625 625.0 625 0.9 625 625 625.0 625 1 625 625 625.0 625 and value “0” represents a blank space. The value 100 cm is Table 3 Training set for the adaptation of the neural network considered as an obstacle in the relevant interval. Pattern Evaluation of sensors Setting the engine speed We focus only on the part of the training set, which with use of terms for forward and reverse degrees (per second) describes inputs. The given training set, based on the robot S4 S3 S2 S1 BF BB AF AB configuration and the distribution of the scanned area into five parts, comprises 1,048,576 patterns. The training set also 1 vb d vd b 350 0 300 0 contains patterns that admit a possibility of the existence of 2 ds s vb 300 0 350 0 obstacles in several given intervals. Therefore, it is neces- 3 bds vd 350 0 300 0 sary to specify a group of inputs I belonging to a given …… … … … … … … … sensor. In the case that the group comprises more than one 51 vb b vb d 100 0 0 100 value of „1“, such a pattern is not included in the training set. 52 vd vd vd vd 500 0 500 0 The reduced training set (RTS) comprises 1296 patterns, see Table 1. After performing exclusion of groups with zero values, the reduced training set is reduced into 625 patterns (ERTS). best results due to the consequent need for setting output Unfortunately, the resulting training set will increase depend- values to these patterns manually. Therefore, ρ = 0.5is ing on the number of sensors and on the distribution of the used in this work. The resulting filtered training set contains scanned areas. Therefore, we will process further filtration. 51 patterns. The impact of vigilance setting for this training set is shown For clarity, columns of associated intervals of individ- in Table 2. Characteristics of groups reflect ten filtering ERTS ual sensors are combined into themselves, i.e., that each using ART for each vigilance setting. five binary input representing an obstacle in a given inter- The number of groups of the filtered training set is variable val are replaced with only one linguistic value representing due to mixing of samples before their submission to ART1. the distance for each sensor. For the adaptation of the neu- This step influences the final training set significantly. From ral network, the training set is expanded backwards. Table 3 the view of the user, it was experimentally verified that the describes outcomes of the training set, where S , S , S , and 1 2 3 given training set of 625 patterns and ρ> 0.5 achieves the S indicates sensors in a given port; B and A indicates the 4 F F 123 92 Vietnam J Comput Sci (2018) 5:85–94 generated filtrated of the training set’s outputs. Adaptation lasted for 109 s and ART1 control NN TS/RTS/ERTS TS/RTS/ERTS included 14393 cycles. The model of the autonomous robot was placed in a space Fig. 6 Lifecycle of the training set which consists of squares 15 cm . Motor acceleration was set to 600 degrees/s for all experiments. Scanning of a space was carried out once per 500 ms. The following data are recorded speed of motors for forward, B and A indicates the speed B B for the purposes of evaluation of the experimental part. of motors for backward of ports A and B. Speed settings for individual run of both of engines were set experimen- • Number of primary collisions (direct collisions of the tally with regard to limitation of maximum speed at 500 robot with an obstacle, i.e., running into obstacles), degrees/sec because of skidding belts on the smooth surface • Number of secondary collisions (collision only some at higher speeds. parts of the robot such as the sensor cables, etc.), Pattern number 52, which defines the default behavior for • Number of deadlocks, moving forward, was added subsequently at the end of the • Duration of the experiment, training set. By adding the pattern, the robot is prevented • Trajectory of the robot’s movement. from going a different direction than straight if no obstacle has been detected. Experimental outcomes are shown in Table 4. The robot The life cycle of the training set is shown in Fig. 6.Inthis has completed all objectives defined in individual exper- way, we are able to find typical patterns and thus cover the iments without deadlocks as well as without a primary entire space of solutions. Filtration of the training set using collision with obstacles. In some cases, it is apparent that ART1 adjusts the input vectors, so that these patterns are the signal from sensors reflects the way leading to an erro- mixed pseudo-randomly. neous evaluation of the measured distance, see cases of corner collision (Fig. 7). The last experiment represents free movement of the robot 6 Experimental verification in the environment 195 × 195 cm, which contains a num- ber of obstacles placed, so that they form extra “rooms”, in The aim of the experimental study is to verify the behavior which the robot may become trapped or cause collision by its of the robot controlled by artificial neural networks. This moving inside, Fig. 5. The experiment was conducted for 30 controlling neural network is adapted by the training set that min, i.e., 3603 cycles of environment scanning. During the is filtered through ART1. An experimental study runs in the experiment, there were a total of ten secondary collisions, no following steps: primary collisions, and no deadlocks. The robot explored the whole experimental environment. There were the following 1. Define the division of the sensed sensor interval and collisions: determine the number of inputs for the complete training set. • A secondary collision marked as “1” occurred three 2. Generate a training set. times, always after the turn round in the space behind the 3. Filtration of the training set using ART1. barrier and coming out, when the robot touched bands on 4. Adjustment of the output vector elements of the training the corner of obstacles. set to the desired values of engine speed with respect to • A secondary collision marked as “2” occurred twice when forward or reverse, ranging from 0 to 600 degrees/sec. the robot traveled around the obstacles left. 5. Create the corresponding neural network topology. • A secondary collision marked as “3” occurred twice when 6. Adapt this neural network with a filtered training set. the robot came out from the room and its sensors touched 7. Connect EV3 robot to the application if not already done. the barrier. 8. Set the experiment parameters and response of the net- • A secondary collision marked as “4” occurred once, i.e., work inputs to the given sensor values. collision of a sensor with a corner when the robot came 9. Run the experiment. out from the environment behind the barrier. • A secondary collision marked as “5” occurred twice, i.e., The topology of the controlling neural network had the fol- collision of belt when the robot traveled around the obsta- cles left and during rotation. lowing configuration: 20 input, 20 hidden, and 4 output neurons. Other parameters were set as follows: learning rate A video showing the progress of the experiment is placed α = 0.85, momentum factor μ = 0.9, and the steepness parameter λ = 1. The termination condition for adaptation on https://www.youtube.com/watch?v=r-joFp3vh1k under a has been set as E ≤ 0.0001, Eq. (6), due to normalization title “EV3 Neural Network Controller”. 123 Vietnam J Comput Sci (2018) 5:85–94 93 Table 4 Experimental Average Number Number outcomes (secondary collisions Number duration of of pri- of sec- Movement of the robot in the are represented by points) of dead- the exper- mary ondary environment locks iment (in collisions collisions second) 01 0 17.7 01 0 28 02 0 25 01 0 24 01 0 36.3 00 0 47.3 01 0 49.7 00 0 67 7 Conclusions The whole training set included 1048576 patterns. We obtained 51 patterns after the training set filtration using ART1. Pattern 52 was added to them, which defines the default behavior for forward movement. Vigilance parame- ter ρ was set to 0.5. The control neural network was adapted by this reduced training set. Experimental outcomes are the following: • The speed of each motor was adjusted appropriately, con- sidering the situation in which the robot is found. • The robot moved effectively in all environments, where precision of movement was not required too much. Fig. 7 Experimental environment for free movement of the robot 123 94 Vietnam J Comput Sci (2018) 5:85–94 • The ability of the robot to move backwards was observed 4. Dudek, G., Jenkin, M.: Computational Principles of Mobile Robotics. Cambridge University Press, Cambridge (2010) during the experiment. Reversing was always imple- 5. Mataric, ´ M.J.: The Robotics Primer. Mit Press, London (2007) mented only for a short path, e.g., when the robot had 6. Mironovova, M., Bíla, J.: Fast fourier transform for feature extrac- little space to turn on the spot. This ability was not a part tion and neural network for classification of electrocardiogram the training set. signals. In: 2015 Fourth International Conference on Future Gener- ation Communication Technology (FGCT), pp. 1–6, IEEE (2015) • It has been observed that the robot is able to move too 7. Rajaraman, A., Ullman, J.: Mining of Massive Datasets. Cambridge close to obstacles without running into them. University Press, Cambridge (2011) 8. Rojas, R.: Neutral Networks: A Systematic Introduction. Springer, The use of self-organizing networks heuristic (ART 1) for Berlin (1996) 9. Singh, Y., Chauhan, A.S.: Neural networks in data mining. J. Theor. preprocessing of the training set allows to find typical pat- Appl. Inf. Technol. 5(6), 36–42 (2009) terns, and thus cover the whole space. There is used, based on 10. Volná, E., Kotyrba, M., Žácek, ˇ M., Barton, ˇ A.: Emergence of an the results of previous work [3,10], the ability of generaliza- autonomous robot‘s behavior. In: Proc. 29th European Conference tion of neural networks, to reduce the possibility of user error on Modellingand Simulation, ECMS 2015, Albena, Bulgaria, pp. 462–468 (2015) to achieve better results compared to a complete training set. 11. Tripathi, G.N., Rihani, V.: Motion planning of an autonomous It can be stated that ART1 is a good tool for data filtering. mobile robot using artificial neural network. arXiv:1207.4931 (2012) (preprint) Acknowledgements The research described here has been financially 12. Kim, P.K., Jung, S.: Experimental studies of neural network control supported by the University of Ostrava Grant SGS07/PˇrF/2017. Any for one-wheel mobile robot. J. Control Sci. Eng. 2012, 12 (2012) opinions, findings, and conclusions or recommendations expressed in (Article ID 194397) this material are those of the authors and do not reflect the views of the 13. Markoski, B., Vukosavljev, S., Kukolj, D., Pletl, S.: Mobile sponsors. robot control using self-learning neural network. In: 7th Interna- tional Symposium on Intelligent Systems and Informatics, 2009. Open Access This article is distributed under the terms of the Creative SISY’09, IEEE, pp. 45–48 (2009) Commons Attribution 4.0 International License (http://creativecomm 14. Farooq, U., Amar, M., Asad, M.U., Hanif, A., Saleh, S.O.: Design ons.org/licenses/by/4.0/), which permits unrestricted use, distribution, and implementation of neural network based controller for mobile and reproduction in any medium, provided you give appropriate credit robot navigation in unknown environments. Int. J. Comput. Electr. to the original author(s) and the source, provide a link to the Creative Eng. 6(2), 83–89 (2014) Commons license, and indicate if changes were made. 15. Reynoso, J.S.C.: A neural network for Java Lego robots. Learn to program intelligent Lego Mindstorms robots with Java. Javaworld. [Online] 16 April 2005. https://www.javaworld.com/article/ 2071879/enterprise-java/a-neural-network-for-java-lego-robots. References html (2005) 16. Black, L.: A worm’s mind. In a lego body. I Programmer. [Online] 1. Alami, R., Chatila, R., Fleury, S., Ghallab, M., Ingrand, F.: An 16 Nov 2014. http://www.i-programmer.info/news/105-artificial- architecture for autonomy. Int. J. Robot. Res. 17(4), 315–337 intelligence/7985-a-worms-mind-in-a-lego-body.html (1998) 2. Barton, ˇ A.: Control of Autonomous Robot Using Neural Networks (in Czech), Master thesis, University of Ostrava, Czech Republic Publisher’s Note Springer Nature remains neutral with regard to juris- (2015) dictional claims in published maps and institutional affiliations. 3. Barton, A., Volna, E., Kotyrba, M.: Big data filtering through adaptive resonance theory. In: Asian Conference on Intelligent Information and Database Systems ACIIDS 2017, pp. 382–391. Springer, Cham (2017) http://www.deepdyve.com/assets/images/DeepDyve-Logo-lg.png Vietnam Journal of Computer Science Springer Journals

Control of autonomous robot behavior using data filtering through adaptive resonance theory

Free
10 pages
Loading next page...
 
/lp/springer_journal/control-of-autonomous-robot-behavior-using-data-filtering-through-GenZRzW3K1
Publisher
Springer Berlin Heidelberg
Copyright
Copyright © 2017 by The Author(s)
Subject
Computer Science; Information Systems and Communication Service; Artificial Intelligence (incl. Robotics); Computer Applications; e-Commerce/e-business; Computer Systems Organization and Communication Networks; Computational Intelligence
ISSN
2196-8888
eISSN
2196-8896
D.O.I.
10.1007/s40595-017-0103-7
Publisher site
See Article on Publisher Site

Abstract

Vietnam J Comput Sci (2018) 5:85–94 https://doi.org/10.1007/s40595-017-0103-7 REGULAR PAPER Control of autonomous robot behavior using data filtering through adaptive resonance theory 1 1 1 Adam Barton · Eva Volna · Martin Kotyrba Received: 1 August 2017 / Accepted: 7 October 2017 / Published online: 2 November 2017 © The Author(s) 2017. This article is an open access publication Abstract The aim of the article is to use neural networks cial intelligence. An interesting topic is the human brain as a to control autonomous robot behavior. The type of the con- model for such an intelligent system. Inspired by the structure trolling neural network was chosen a backpropagation neural of the human brain, an artificial neural network emerges. Like network with a sigmoidal transfer function. The focus in this the brain, the artificial neural network contains many sim- article is put on the use adaptive resonance theory (ART1) for ple computational units, neurons, interconnected mutually data filtering. ART1 is used for preprocessing of the training to allow the transfer of the signal from the neuron to neu- set. This allows finding typical patterns in the full training set rons. These local interactions between neurons then result in and thus covering the whole space of solutions. The neural execution of global functions. Artificial neural networks are network adapted by a reduced training set has a greater ability used to solve various problems with good results compared of generalization. The work also discusses the influence of to other decision algorithms. vigilance parameter settings for filtering the training set. The There are many different artificial neural networks, but we proposed approach to data filtering through ART1 is exper- focus on feedforward networks. Through them, we control imentally verified to control the behavior of an autonomous the behavior of a robotic device that should be able, on the robot in an unknown environment with varying degrees of basis of defined behavior, to derive an appropriate response to difficulty regarding the location of obstacles. All obtained unknown situations. To build a physical robotic equipment, results are evaluated in the conclusion. we used Lego Mindstorms EV3. Keywords Adaptive resonance theory (ART) · Big data · 1.1 Important statement Control neural network · Data filtering This paper is an extended version of our conference paper [3], which was at least 30% new. We have extended the abstract 1 Introduction and the text of chapter 5 and 6. Chapters 1, 2, and 4 were added. We have also added corresponding references. Nowadays, we recognize a wide range of robotic devices. It is still the subject of research their program part, namely artifi- 2 Autonomous robot control B Eva Volna eva.volna@osu.cz This work focuses on autonomous robots. Such a system can Adam Barton be defined as follows: “The robot is an autonomous system adam.barton@osu.cz existing in the physical world that can detect the environment Martin Kotyrba and take action to achieve the goal” [5]. martin.kotyrba@osu.cz The word “autonomous” expresses that such a system can make its own decisions without any intervention or control Department of Informatics and Computers, of a person in the real world. The perception of the environ- University of Ostrava, 30. dubna 22, 70103 Ostrava, Czech Republic ment of the system is ensured by various sensors providing 123 86 Vietnam J Comput Sci (2018) 5:85–94 data. For such a system to make a decision, there is a need 3 Data filtering using adaptive resonance theory for a cognitive element that assures the “thinking” of the robot. 3.1 Big data Each robot should contain the following components [4]. Big data have been one of the current and future research frontiers. Big data concern large-volume, complex, growing • Physical structures existing in the real universe, i.e., the data sets with multiple, autonomous sources. With the fast body of the robot, through which it can move, manipulate development of networking, data storage, and the data col- objects, etc. lection capacity, big data are now rapidly expanding in all • Sensors, i.e., an environmental sensing device providing science and engineering domains, including physical, bio- information about the robot itself and the environment logical, and bio-medical sciences. around it. The most fundamental challenge for the big data applica- • Effectors, which perform actions in the environment, tions is to explore the large volumes of data and extract useful allow movements of the robot, interactions with the envi- information or knowledge for future [7]. In many situations, ronment, etc. the knowledge extraction process has to be very efficient • Control system defining a decision system, esp. autonomy and close to real time, because storing all observed data is of the system. nearly infeasible. Four things are required to mine data effec- tively [9]: high-quality data, the “right” data, an adequate sample size, and the right tool. There are many tools avail- The control system provides a tool that creates autonomy of able to a data mining practitioner. These include decision a robotic system, using available information, data for event trees, various types of regression, and neural networks. In planning, and execution of events. This is the “brain” of the more practical terms, neural networks are non-linear statisti- robot, which may not be the only one (different sensors may cal data modeling tools. They can be used to model complex be used by different control systems). relationships between inputs and outputs. Using neural net- The control architecture provides organization of the works as a tool, we can harvest information from big data control system and allows defining the behavior of the [6]. robot. It uses algorithms to solve problems. The tools for This article describes an effective way of data filtering implementing the control architecture are programming lan- through adaptive resonance theory, which is experimentally guages, while the architecture itself only describes the verified to control the behavior of an autonomous robot in an frame. unknown environment. An autonomous robot must be able to process sensor data, define the state of the outside world, and plan future actions to 3.2 Adaptive resonance theory carry out the action in real time with limited resources. These operations are described by a control architecture defining the Adaptive Resonance Theory (ART1) is composed of two elements required to achieve the desired behavior, especially layers and a control neuron R,Fig. 1. Layer F includes in the following areas [1]: computational neurons X from the input layer F (a) and i 1 neuronsI from the interface layer F (b). Neurons Y form i 1 i • Programmability—the robot should not be able to per- layer F . Synapses between F and F are oriented bottom– 2 1 2 form only one specific task, it should be able to achieve up, and synapses between F and F are oriented top–down. 2 1 more tasks, and a set of tasks defined by one global goal. This approach enables to control the degree of similarity • Autonomy and adaptability—the robot should be able to between weight values of synapse top–down and the input adapt the required tasks, actions, and behavior to meet vector. Deciding is provided by neuron R (reset), which the defined global goal. that separates states of neurons in F three possibilities: • Reactivity—the robot should be able to decide at the right active, inactive—acceptable for competition, and inactive— time and respond to events requiring an immediate or near unacceptable for another competition [8]. immediate reaction. Using a heuristic of self-organizing networks for prepro- • Robustness—a robot’s architecture should be able to cessing of the training set, we are able to find typical patterns handle unexpected problems in its functionality, task pri- and thus cover the entire space. We utilize ART1 to filter a orities, behavior, activities, conflict resolution, etc. training set, which works with a binary input. The present • Scalability—the implementation of new functionalities input is compared based on parameter vigilance ρ ∈ [0, 1] should not negatively affect the performance of the with stored patterns in the network. If it differs significantly, architecture; it should be easily expandable and under- this pattern is stored in the network as a new class. ART1 is standable. able to create groups of patterns and the user has the oppor- 123 Vietnam J Comput Sci (2018) 5:85–94 87 8. Test for gradual addition of input vectors into a reduced training set (RTS): (a) If there is no vector in the given group of RTM yet, the currently presented vector x is stored as a typical representative of the group. (b) In the case that the group is not empty and also the currently submitted vector x carries a greater amount Fig. 1 ART1 of information than the vector stored, as the repre- sentative of the group, vector x will replace it. tunity to influence the level of relative similarity of patterns 9. Checking the termination condition. If it is satisfied, the stored in the same group. algorithm proceeds to step 11. To create a filtered training set, the basic algorithm ART1 10. Suppression of neurons which were inhibited and the [8] is modified as follows: algorithm proceeds to step 2. 11. Stopping the algorithm. 1. Initialization of synaptic weights, bottom–up b , top– ij down t , and parameter vigilance ρ ∈ [0, 1]: ij The key step in the modified algorithm ART1 is Step 8, where the reduced training set (RTM) is compiled based on the classification of the network. The user chooses a rule setting b = , t = 1,ρ ∈ [0, 1] , (1) ij ij (1 + n) of a vector with a higher content of carried information. In this work, we accept vectors containing more critical states, where n is the number of input neurons. i.e., elements with value 1. 2. The submission of input x = [x ,..., x ] to input layer 1 n F . 3.3 Impact of vigilance 3. Activation of neurons in layer F and calculation the response according to: ART1 requires parameter vigilance ρ, which defines the degree of similarity for assigning the pattern to the same y = b x , (2) class. This parameter is defined by the user. Figure 2 j ij i i =1 shows the effect of parameter ρ on pattern matching p = [ p ,..., p ] ∈ {0, 1} into classes c. 1 n where y is the response of the jth neuron in F and x j 2 i If a low value of ρ is set, it can lead to the classification is the ith element of input vector x. of different patterns in the same class and the number of 4. Selection of the neuron with the greatest response y = max classes is small. On the contrary, a big value of ρ results in max y . the formation of a large number of classes. In this work, ρ is 5. Calculation of similarityδ of input pattern with back set, so that its value is from the interval [0.5; 0.7]. This leads weighting factor t regarding the neuron y : imax max to the creation of a big number of groups or to an inadequate classification of the input pattern. t x imax i δ =  . (3) 4 Related works 6. If δ ≥ ρ, a resonance of input with expectations occurs and the candidate y is accepted, the algorithm pro- max Thework[11] presents the electronic design and motion ceeds to step 7. Otherwise, the candidate is rejected and planning of a robot based on decision-making regarding its its output is set to −1 and other suitable candidate will straight motion and precise turn using artificial neural net- be chosen and the algorithm proceeds to step 3. work (ANN). The ANN helps in learning of robot, so that it 7. Weights’ adaptation b at of neuron y accord- imax imax max performs motion autonomously. The robot was designed to ing to formulas (Weber Law): work in real time. The weights calculated were implemented Lt x imax i in microcontroller. The learning algorithm was backpropa- b = , (4) imax L − 1 + t x gation with hyperbolic tangents activation function, and the imax i network was adapted through Easy NN-plus. The training t = t x , (5) imax imax i set consisted of five inputs and one output determining the where L is a constant (excelling unit), its value is usually action: right, left, forward, and stop. It contained 14 designs L = 2. expertly assembled, but the article does not mention values 123 88 Vietnam J Comput Sci (2018) 5:85–94 Fig. 2 Influence of the vigilance parameter on the training set clustering of other parameters. An autonomous robot has been tested while goal reaching controller helps the mobile robot in in a maze environment to avoid obstacles. The performance reaching the destination. Both these controllers are trained has been tested to be excellent. offline with the data obtained during experimental run of Thework[12] presents the development and control of a the robot, but the approximation of the activation function disc-typed one-wheel mobile robot, called GYROBO. Two generated an error, and therefore, an increasing number of actuators are used for balancing control by virtue of gyro neurons could be worse outcome neuronal controller. The effect and one actuator for driving movements. To compen- vehicle with the proposed controllers was tested in outdoor sate for uncertainties in robot dynamics, a neural network was complex environments and is found to reach the set targets added to the non-model-based PD-controlled system. The successfully. reference compensation technique was used for the neural This article [15] shows how to develop a robot that can network controller to help GYROBO to improve balanc- learn using the backpropagation algorithm, a basic neural net- ing and tracking performances. Experimental studies of a work, and implementing it on a Lego Roverbot. Using both selfbalancing task and a line tracking task are conducted to the algorithm and Java, the Roverbot, a Lego robot vehicle, demonstrate the control performances of GYROBO. Exper- can learn some basic rules for moving forward, backward, iments with a PD controller and a neural network showed left, and right. The aim of the project was also to examine that the generalization ability of the neural network can be a the emergent behavior of the robot, and therefore, the train- powerful tool. In this case, the robot was not controlled by ing set was consisted with only four patterns. This approach the neural network itself. allowed for the robot to achieve complex behavior, but at the The work [13] describes the concept of the navigation cost of time that was needed for calculations. The program system for a mobile robot. The system is using a navigation itself should always be uploaded to Lego brick after editing. algorithm based on self-learning neural network, necessary The project OpenWorm [16] mapped the connection of the to form a movement plan for a robot. The algorithm is adapted nematode worm neurons and transferred his perception and and implemented to navigate real platform of a mobile robot resulting behavior to the robotic body. Although the simula- equipped by two independent wheel drives, encoders and tion itself is not accurate due to software simplification, the a set of short-range sonars. Navigation algorithm is placed neural network mimics the brain of the given worm without into a PC, which is connected to mobile robot by wireless and the need for learning or programming. wired links. Experiments have shown ability of collision-free navigation of mobile robot in real time. The designed robot scanned its surrounding with a collection of sensors from which it was able to represent this surrounding in a two- dimensional map that was also the input to a self-learning 5 Control of autonomous robot behavior using neural network. The robot needs a defined goal to move and neural networks then manages the optimal path in real time. In this work [14], design of an intelligent autonomous In the centralized control [4], the robot has information from vehicle is presented that can navigate in noisy and unknown sensors and the base of stored knowledge. Based on this environments without hitting the obstacles in its way. The information, it creates a plan of action. It scans potentially vehicle is made intelligent with the help of two multilayer appropriate plans and it tries to predict. This is also the rea- feed forward neural network controllers. Hurdle avoidance son why this approach of “strategic thinking” requires a lot controller ensures collision-free motion of mobile robot, of memory and time. 123 Vietnam J Comput Sci (2018) 5:85–94 89 Fig. 3 Assembled robot. a a view from above; b asideview When searching for appropriate control architecture for an with the problem of creating a training set more specifically autonomous robot, it is necessary to compromise and con- that is its automatic generation and filtration. The proposed sider the fact that [2]. model of the controlling neural network is then able to realize real output, such as the speed for each robot engine. • Planning requires computing performance. • The reaction must be fast. 5.1 Model of an autonomous robot • Important information is needed for planning. • Planning allows you to avoid making mistakes. The proposed model of the robot is assembled from Lego • The environment varies and the planning result becomes Mindstorm EV3 [3], see Fig. 3. The robot uses LeJOS oper- inaccurate in time. ating system. The robot uses two large engines that propel a tracked chassis on which is placed a programmable brick. A sensory head with four infrared sensors is attached to the The type of the used neural network (structure of units, topol- chassis. The sensors emit infrared signals and detect reflec- ogy, and learning algorithm) significantly depends on the tions from an object which is located in front of the encoder. solved problem. The most widespread artificial neural net- The strength of the reflected signal indicates the distance works are multilayered networks that can handle complex from the object in the range from 0 to 100 units. data for non-trivial problems. The basic problem, not only in the management of autonomous robot, is finding the weights of the connections between neurons, either on the basis of the 5.2 Controlling neural network data (supervised learning) or finding dependencies in the data (unsupervised). When creating more complex structures, the The type of the controlling neural network was chosen a disadvantage is the amount of interconnections between neu- three-layer feedforward network with a sigmoidal transfer rons and the non-existent process for creating such structures. function, which has been adapted by backpropagation. Here An important aspect of neural network adaptation is the train- are the input neurons labeled X , hidden neurons Z , and out- i i ing set itself, which is expertly constructed on the basis of put neurons Y . Hidden and output neurons have a threshold past experience of solving similar problems. equaled to value “1”. For experimental purposes, a mobile tracked robot with Considering that the robot model has four infrared sensors two motors and a set of sensors using Lego Mindstorms capable of detecting a distance of 0–100 cm, it is appropriate was built. As a suitable neural network, a feedforward neu- to divide this interval into several parts that could be charac- ral network was chosen and its function, global objective, terized by words, for example, very close, close, medium-far, respectively (i.e., avoid obstacles in the space), was decom- far, very far etc. to obtain a larger variability for robot’s posed using a low-level description into individual patterns adaptation. We will, therefore, expand the network in width, in a training set. One problem area is just to build such a based on the method of distribution of the detected interval training set for artificial neural networks. Next, we will deal of sensors into subintervals. For outputs, the use of the same 123 90 Vietnam J Comput Sci (2018) 5:85–94 Fig. 4 Control neural network Fig. 5 Scanning area procedure would mean that the complexity of network adap- tation would grow as the number of speeds (outputs) and, w (t ) = α [(o − y ) λy (1− y ) v ] λz 1−z x j i i i i i j j j i =1 depending on them, the number of hidden neurons. If we use +μw (t − 1) , (9) a real-number vector, we are able to reduce the number of output neurons to four, as shown in Fig. 4, due to the use of two motors—two for each engine (forward and reverse). where v is the weight of the outgoing connection and z is the i j For the transformation of the input signal to the output, we output of the hidden layer neuron. For the weight increment use the sigmodial function S (x ) : R → (0, 1) expressed by between the hidden and the output layer, Eq. (10) is obtained Eq. (6): by adjusting (8): w (t ) = α (o − y ) λy (1 − y ) x +μw (t − 1) . (10) i i i i i i i S (x ) = , (6) −λx 1 + e where the constant λ is the slope parameter. We use the 5.3 The training set filtering through ART1 backpropagation algorithm to adapt the network. The aim of the adaptation is to find the minimal error E in the space The training set is automatically generated. If we consider of weights for all patterns 1,..., p defined by four output that the model of the robot has four infrared sensors that are neurons as the mean square error (7): able to detect the distance from 0 to 100 cm, it is appropriate to decompose this input interval into several parts. We have p 4 decomposed the input interval into five parts. Therefore, the E = y − o , (7) ij ij training set contains 20 inputs (each of the four sensors is i =1 j =1 associated with five terms) and four outputs. Then the number 4×5 20 of possibilities (input patterns) that can occur is 2 = 2 . where y is an actual output of the network after inserting The output vector consists of real numbers, and thus, we have the input x and o is an expected output from the training i i been able to reduce the necessary number of output neurons set after inserting the input x . to four, due to the use of two motors—two neurons for each During adaptation, we minimize this error by adjusting the motor (forward and reverse). weight values w by an increment according to the following We describe the principle of training set generating using equation: an example. We consider four infrared sensors, each of which is able to detect the distance 0–100 cm. We split this distance ∂ E w (t ) =−α + μw (t − 1) , (8) i i in five equal parts, see Fig. 5. We express these parts using ∂w a set of terms: vc—very close (0–19 cm), c—close (20–39 where α ∈ (0, 1] is the learning rate and the parameter μ ∈ cm), mf —medium-far (40–59 cm), f —far (60–79 cm), and [0, 1] reflects the increase in time t − 1 and thus maintains v f —very far (80–100 cm). the trend during the adaptation [8]. After adjustment (8), the Each sensor is associated with those five terms that repre- increment of the weight between the input and the hidden sent obstacles in the sensor range for the given interval. Value layer is expressed as follows (9): “1” indicates the presence of obstacles in a given interval, 123 Vietnam J Comput Sci (2018) 5:85–94 91 Table 1 Input patterns of Sensor 1 Sensor 2 Sensor 3 Sensor 4 reduced training set I I I I I I I I I I I I I I I I I I I I 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5 …………………………………………………… Table 2 Number of groups Vigilance ρ Minimal value of Maximal value of The average Mean ERTM depending on ρ the number of the number of number of groups number of classes classes groups 06 12 8.67 0.1 5 11 7.85 0.2 5 10 7.88 0.3 365346.951 0.4 36 54 46.247 0.5 40 51 46.350 0.6 177 188 182.6 188 0.7 179 192 184.9 184 0.8 625 625 625.0 625 0.9 625 625 625.0 625 1 625 625 625.0 625 and value “0” represents a blank space. The value 100 cm is Table 3 Training set for the adaptation of the neural network considered as an obstacle in the relevant interval. Pattern Evaluation of sensors Setting the engine speed We focus only on the part of the training set, which with use of terms for forward and reverse degrees (per second) describes inputs. The given training set, based on the robot S4 S3 S2 S1 BF BB AF AB configuration and the distribution of the scanned area into five parts, comprises 1,048,576 patterns. The training set also 1 vb d vd b 350 0 300 0 contains patterns that admit a possibility of the existence of 2 ds s vb 300 0 350 0 obstacles in several given intervals. Therefore, it is neces- 3 bds vd 350 0 300 0 sary to specify a group of inputs I belonging to a given …… … … … … … … … sensor. In the case that the group comprises more than one 51 vb b vb d 100 0 0 100 value of „1“, such a pattern is not included in the training set. 52 vd vd vd vd 500 0 500 0 The reduced training set (RTS) comprises 1296 patterns, see Table 1. After performing exclusion of groups with zero values, the reduced training set is reduced into 625 patterns (ERTS). best results due to the consequent need for setting output Unfortunately, the resulting training set will increase depend- values to these patterns manually. Therefore, ρ = 0.5is ing on the number of sensors and on the distribution of the used in this work. The resulting filtered training set contains scanned areas. Therefore, we will process further filtration. 51 patterns. The impact of vigilance setting for this training set is shown For clarity, columns of associated intervals of individ- in Table 2. Characteristics of groups reflect ten filtering ERTS ual sensors are combined into themselves, i.e., that each using ART for each vigilance setting. five binary input representing an obstacle in a given inter- The number of groups of the filtered training set is variable val are replaced with only one linguistic value representing due to mixing of samples before their submission to ART1. the distance for each sensor. For the adaptation of the neu- This step influences the final training set significantly. From ral network, the training set is expanded backwards. Table 3 the view of the user, it was experimentally verified that the describes outcomes of the training set, where S , S , S , and 1 2 3 given training set of 625 patterns and ρ> 0.5 achieves the S indicates sensors in a given port; B and A indicates the 4 F F 123 92 Vietnam J Comput Sci (2018) 5:85–94 generated filtrated of the training set’s outputs. Adaptation lasted for 109 s and ART1 control NN TS/RTS/ERTS TS/RTS/ERTS included 14393 cycles. The model of the autonomous robot was placed in a space Fig. 6 Lifecycle of the training set which consists of squares 15 cm . Motor acceleration was set to 600 degrees/s for all experiments. Scanning of a space was carried out once per 500 ms. The following data are recorded speed of motors for forward, B and A indicates the speed B B for the purposes of evaluation of the experimental part. of motors for backward of ports A and B. Speed settings for individual run of both of engines were set experimen- • Number of primary collisions (direct collisions of the tally with regard to limitation of maximum speed at 500 robot with an obstacle, i.e., running into obstacles), degrees/sec because of skidding belts on the smooth surface • Number of secondary collisions (collision only some at higher speeds. parts of the robot such as the sensor cables, etc.), Pattern number 52, which defines the default behavior for • Number of deadlocks, moving forward, was added subsequently at the end of the • Duration of the experiment, training set. By adding the pattern, the robot is prevented • Trajectory of the robot’s movement. from going a different direction than straight if no obstacle has been detected. Experimental outcomes are shown in Table 4. The robot The life cycle of the training set is shown in Fig. 6.Inthis has completed all objectives defined in individual exper- way, we are able to find typical patterns and thus cover the iments without deadlocks as well as without a primary entire space of solutions. Filtration of the training set using collision with obstacles. In some cases, it is apparent that ART1 adjusts the input vectors, so that these patterns are the signal from sensors reflects the way leading to an erro- mixed pseudo-randomly. neous evaluation of the measured distance, see cases of corner collision (Fig. 7). The last experiment represents free movement of the robot 6 Experimental verification in the environment 195 × 195 cm, which contains a num- ber of obstacles placed, so that they form extra “rooms”, in The aim of the experimental study is to verify the behavior which the robot may become trapped or cause collision by its of the robot controlled by artificial neural networks. This moving inside, Fig. 5. The experiment was conducted for 30 controlling neural network is adapted by the training set that min, i.e., 3603 cycles of environment scanning. During the is filtered through ART1. An experimental study runs in the experiment, there were a total of ten secondary collisions, no following steps: primary collisions, and no deadlocks. The robot explored the whole experimental environment. There were the following 1. Define the division of the sensed sensor interval and collisions: determine the number of inputs for the complete training set. • A secondary collision marked as “1” occurred three 2. Generate a training set. times, always after the turn round in the space behind the 3. Filtration of the training set using ART1. barrier and coming out, when the robot touched bands on 4. Adjustment of the output vector elements of the training the corner of obstacles. set to the desired values of engine speed with respect to • A secondary collision marked as “2” occurred twice when forward or reverse, ranging from 0 to 600 degrees/sec. the robot traveled around the obstacles left. 5. Create the corresponding neural network topology. • A secondary collision marked as “3” occurred twice when 6. Adapt this neural network with a filtered training set. the robot came out from the room and its sensors touched 7. Connect EV3 robot to the application if not already done. the barrier. 8. Set the experiment parameters and response of the net- • A secondary collision marked as “4” occurred once, i.e., work inputs to the given sensor values. collision of a sensor with a corner when the robot came 9. Run the experiment. out from the environment behind the barrier. • A secondary collision marked as “5” occurred twice, i.e., The topology of the controlling neural network had the fol- collision of belt when the robot traveled around the obsta- cles left and during rotation. lowing configuration: 20 input, 20 hidden, and 4 output neurons. Other parameters were set as follows: learning rate A video showing the progress of the experiment is placed α = 0.85, momentum factor μ = 0.9, and the steepness parameter λ = 1. The termination condition for adaptation on https://www.youtube.com/watch?v=r-joFp3vh1k under a has been set as E ≤ 0.0001, Eq. (6), due to normalization title “EV3 Neural Network Controller”. 123 Vietnam J Comput Sci (2018) 5:85–94 93 Table 4 Experimental Average Number Number outcomes (secondary collisions Number duration of of pri- of sec- Movement of the robot in the are represented by points) of dead- the exper- mary ondary environment locks iment (in collisions collisions second) 01 0 17.7 01 0 28 02 0 25 01 0 24 01 0 36.3 00 0 47.3 01 0 49.7 00 0 67 7 Conclusions The whole training set included 1048576 patterns. We obtained 51 patterns after the training set filtration using ART1. Pattern 52 was added to them, which defines the default behavior for forward movement. Vigilance parame- ter ρ was set to 0.5. The control neural network was adapted by this reduced training set. Experimental outcomes are the following: • The speed of each motor was adjusted appropriately, con- sidering the situation in which the robot is found. • The robot moved effectively in all environments, where precision of movement was not required too much. Fig. 7 Experimental environment for free movement of the robot 123 94 Vietnam J Comput Sci (2018) 5:85–94 • The ability of the robot to move backwards was observed 4. Dudek, G., Jenkin, M.: Computational Principles of Mobile Robotics. Cambridge University Press, Cambridge (2010) during the experiment. Reversing was always imple- 5. Mataric, ´ M.J.: The Robotics Primer. Mit Press, London (2007) mented only for a short path, e.g., when the robot had 6. Mironovova, M., Bíla, J.: Fast fourier transform for feature extrac- little space to turn on the spot. This ability was not a part tion and neural network for classification of electrocardiogram the training set. signals. In: 2015 Fourth International Conference on Future Gener- ation Communication Technology (FGCT), pp. 1–6, IEEE (2015) • It has been observed that the robot is able to move too 7. Rajaraman, A., Ullman, J.: Mining of Massive Datasets. Cambridge close to obstacles without running into them. University Press, Cambridge (2011) 8. Rojas, R.: Neutral Networks: A Systematic Introduction. Springer, The use of self-organizing networks heuristic (ART 1) for Berlin (1996) 9. Singh, Y., Chauhan, A.S.: Neural networks in data mining. J. Theor. preprocessing of the training set allows to find typical pat- Appl. Inf. Technol. 5(6), 36–42 (2009) terns, and thus cover the whole space. There is used, based on 10. Volná, E., Kotyrba, M., Žácek, ˇ M., Barton, ˇ A.: Emergence of an the results of previous work [3,10], the ability of generaliza- autonomous robot‘s behavior. In: Proc. 29th European Conference tion of neural networks, to reduce the possibility of user error on Modellingand Simulation, ECMS 2015, Albena, Bulgaria, pp. 462–468 (2015) to achieve better results compared to a complete training set. 11. Tripathi, G.N., Rihani, V.: Motion planning of an autonomous It can be stated that ART1 is a good tool for data filtering. mobile robot using artificial neural network. arXiv:1207.4931 (2012) (preprint) Acknowledgements The research described here has been financially 12. Kim, P.K., Jung, S.: Experimental studies of neural network control supported by the University of Ostrava Grant SGS07/PˇrF/2017. Any for one-wheel mobile robot. J. Control Sci. Eng. 2012, 12 (2012) opinions, findings, and conclusions or recommendations expressed in (Article ID 194397) this material are those of the authors and do not reflect the views of the 13. Markoski, B., Vukosavljev, S., Kukolj, D., Pletl, S.: Mobile sponsors. robot control using self-learning neural network. In: 7th Interna- tional Symposium on Intelligent Systems and Informatics, 2009. Open Access This article is distributed under the terms of the Creative SISY’09, IEEE, pp. 45–48 (2009) Commons Attribution 4.0 International License (http://creativecomm 14. Farooq, U., Amar, M., Asad, M.U., Hanif, A., Saleh, S.O.: Design ons.org/licenses/by/4.0/), which permits unrestricted use, distribution, and implementation of neural network based controller for mobile and reproduction in any medium, provided you give appropriate credit robot navigation in unknown environments. Int. J. Comput. Electr. to the original author(s) and the source, provide a link to the Creative Eng. 6(2), 83–89 (2014) Commons license, and indicate if changes were made. 15. Reynoso, J.S.C.: A neural network for Java Lego robots. Learn to program intelligent Lego Mindstorms robots with Java. Javaworld. [Online] 16 April 2005. https://www.javaworld.com/article/ 2071879/enterprise-java/a-neural-network-for-java-lego-robots. References html (2005) 16. Black, L.: A worm’s mind. In a lego body. I Programmer. [Online] 1. Alami, R., Chatila, R., Fleury, S., Ghallab, M., Ingrand, F.: An 16 Nov 2014. http://www.i-programmer.info/news/105-artificial- architecture for autonomy. Int. J. Robot. Res. 17(4), 315–337 intelligence/7985-a-worms-mind-in-a-lego-body.html (1998) 2. Barton, ˇ A.: Control of Autonomous Robot Using Neural Networks (in Czech), Master thesis, University of Ostrava, Czech Republic Publisher’s Note Springer Nature remains neutral with regard to juris- (2015) dictional claims in published maps and institutional affiliations. 3. Barton, A., Volna, E., Kotyrba, M.: Big data filtering through adaptive resonance theory. In: Asian Conference on Intelligent Information and Database Systems ACIIDS 2017, pp. 382–391. Springer, Cham (2017)

Journal

Vietnam Journal of Computer ScienceSpringer Journals

Published: Nov 2, 2017

References

You’re reading a free preview. Subscribe to read the entire article.


DeepDyve is your
personal research library

It’s your single place to instantly
discover and read the research
that matters to you.

Enjoy affordable access to
over 18 million articles from more than
15,000 peer-reviewed journals.

All for just $49/month

Explore the DeepDyve Library

Search

Query the DeepDyve database, plus search all of PubMed and Google Scholar seamlessly

Organize

Save any article or search result from DeepDyve, PubMed, and Google Scholar... all in one place.

Access

Get unlimited, online access to over 18 million full-text articles from more than 15,000 scientific journals.

Your journals are on DeepDyve

Read from thousands of the leading scholarly journals from SpringerNature, Elsevier, Wiley-Blackwell, Oxford University Press and more.

All the latest content is available, no embargo periods.

See the journals in your area

DeepDyve

Freelancer

DeepDyve

Pro

Price

FREE

$49/month
$360/year

Save searches from
Google Scholar,
PubMed

Create lists to
organize your research

Export lists, citations

Read DeepDyve articles

Abstract access only

Unlimited access to over
18 million full-text articles

Print

20 pages / month

PDF Discount

20% off