Issue #9/2018
Vinogradov Artem N., Terentyev Alexey I., Petrov Oleg V.
Model of Fuzzy Controller for Controlling the Movement of a Mobile Robot
Model of Fuzzy Controller for Controlling the Movement of a Mobile Robot
The paper presents a model of motion control of a mobile robot based on fuzzy logic, as well as its input/output variables and membership functions. A comparison with a model built on the basis of a classical regulator has been made.
Теги: fuzzy logic labview mamdani algorithm mobile robot алгоритм мамдани мобильный робот нечеткая логика
One of the problems of controlling mobile robots is the construction of the trajectory of motion. This task is one of the most important, since the construction of the optimal trajectory of motion makes it possible to increase the efficiency of the mobile robot operation. It should be noted that this problem can be solved using a control system based on the classical regulator [1]. However, the results do not always ensure a high performance of the robot.
At the same time, in conditions of autonomous control (lack of communication with the operator) the robot cannot receive corrective control from outside. Thus, the task must be solved from the beginning to the end directly by the robot control system. This solution should be made under certain limitations on the technical component (compactness, low power consumption), which affects the algorithmic support being used.
The object of control in this work is a robotic chassis. The chassis control system consists of electric motors and drives, as well as a computing device. Sensors are also a necessary part of the mobile robot. This paper features the work of the navigation system responsible for determining the orientation of the robot in space, taking into account the navigation system work’s error.
Let us consider the solution of the problem of controlling the movement of a mobile robot from the point A with coordinates (xn, yn, αn) to the point B with coordinates (xn+1, yn+1, αn+1) ), where x is the robot coordinate along the abscissa axis; y is the coordinate of the robot along the ordinate axis; α is the orientation angle of the robot (Fig. 1). The motion of a robot in a two-dimensional space without obstacles in real time is being modeled. The coordinates of the robot are determined in the Cartesian coordinate system, chosen for convenience reasons with further mapping of the trajectory. The peculiarity of the problem being solved is the consideration of the robot’s orientation at the destination. The angle of the robot’s orientation is the difference between the robot’s motion vector and the abscissa axis in the chosen coordinate system. The trajectory of the movement will be constructed depending on the position of the robot at the end of the movement. This will make it easy to scale the control system for more complicated traffic cases among obstacles, narrow aisles and corridors.
One of the solutions to this problem is the use of fuzzy logic. This concept was proposed in 1965 by the mathematician Lotfi Zadeh and consists in using fuzzy sets [2 – 4]. That is, sets whose characteristic function can take not only certain values — 0 or 1, but also any others within the interval [0,1].
It is suggested to use the following variables to implement a fuzzy algorithm:
Input variables. Let us denote the set of input variables V = {β1, β2}, where β1 and β2 are the variables “angular orientation error” and “sector”.
Variable 1: β1 is error of the robot’s angular orientation. It is defined as the difference between the current orientation angle of the robot and the required one. In contrast to the task of trajectory [5], this variable should cover the whole range of values from –180 to 180. Thus, the following terms will be used: a1 — very strongly negative, a2 — strongly negative, a3 — negative, a4 — slightly negative a5 — close to zero, a6 — slightly positive, a7 — positive, a8 — strongly positive, a9 — very strongly positive. Fig. 2 shows the graph of the membership functions of this variable.
The form of membership functions does not have a serious effect on the control result, as demonstrated in [6]. In this way, you can use a common version of triangular and trapezoidal membership functions.
Variable 2: β2 is sector. Let us visualize the coordinate system adopted in such a way that the position of the mobile robot is the origin of coordinates. Then the direction in which the destination is located (take the following terms: b1 — rear-left, b2 — left-rear, b3 — left, b4 — front-left, b5 — front, b6 — front-right, b7 — right, b8 — right-rear, b9 — rear-right), will be given a fuzzy variable. Sizes of sectors will be taken as 30 degrees for the sectors “front” and “rear”, 60 degrees for the sectors “left” and “right” and 75 degrees for the others. This concept is illustrated in Fig. 3.
To determine the value of a fuzzy variable, we need to calculate the angle between the direction of the robot’s movement and the direction towards the destination point. To do this, we transform the coordinates of both points into the reference frame connected with the location of the robot (1) using the rotation matrix (2):
Eqn001.eps,(1)
where
Eqn002.eps.(2)
Then the angle can be defined as (3):
Eqn003.eps.(3)
The graph of the membership functions of this variable is shown in Fig. 4.
Output variables. Let us denote the set of input variables V = {w1, w2}, where w1 and w2 are the variables “desired angular velocity” and “desired speed”.
Variable 1: w1 is the desired angular velocity (take the following terms: c1 — fast left, c2 — left, c3 — smoothly left, c4 — straight, c5 — fast right, c6 — right, c7 — smoothly right). Fig. 5 shows the graph of the membership functions of this variable.
Variable 2: w2 is desired speed (take the following terms: d1 — full back, d2 — back, d3 — small back, d4 — stop, d5 — small forward, d6 — forward, d7 — full forward). Fig. 6 shows the graph of the membership functions of this variable.
Formation of the fuzzy system rules base is the formation of a number of utterances of the form [7]:
IF “β1 is ai” AND “β2 is bj” THEN “w1 is cp” AND “w2 is dq”,
where a and b are the terms of the input variables, c and d are the terms of the output variables, i, j, p and q are the indices of the corresponding terms.
The base of rules should cover the mutual relations of all the terms of all input variables and describe the reaction of the system to certain conditions.
For the problem to be solved, the rule base consisted of 81 rules, some of which are given below:
…
11 IF “angular orientation error” is “strongly negative” AND “sector” is “rear” THEN “desired angular velocity” is “fast right” AND “desired speed” is “back”
…
48 IF “angular orientation error” is “close to zero” AND “sector” is “front-right” THEN “desired angular velocity” is “right” AND “desired speed” is “forward”
…
71 IF “angular orientation error” is “positive” AND “sector” is “rear-right” THEN “desired angular velocity” is “fast right” AND “desired linear speed” is “forward”
…
There are several fuzzy algorithms, each of which has its own peculiarities. The main algorithms are four:
Mamdani algorithm [8];
Takagi-Sugeno algorithm;
Tsukamoto algorithm;
Larsen’s algorithm.
A number of limitations inherent in each of the algorithms make it possible to determine the most suitable for the problem being solved [9].
In particular, the Tsukamoto algorithm is used only for monotonic membership functions of the output parameter. This automatically makes it unsuitable under the conditions described, when one of the variables is the angular velocity, whose value varies from negative to positive values [10].
The Takagi – Sugeno algorithm is used when the weight coefficients are known for the unknown form of the output variables of membership functions. Since in our case we can choose the form of the functions, there is no need to use the fuzzy derivation of Sugeno [11].
The algorithms of Mamdani and Larsen are similar in their structure and differ only in the way they choose the implication. Let us consider the Mamdani algorithm in detail (Fig. 7).
The essence of fuzzification is to bring into correspondence the precise values that are fed to the input of the fuzzy system and the terms of the required input variable. Thus, a number of statements of the form “β1 is a1”, “β1 is a2” etc. are entered. For each of them, the truth of a*n is established by substituting the values of an in the membership function µ(x). After all the values of a*n = µ(an) for all terms of all input variables are found, the phase of fuzzification is considered complete.
At the stage of aggregation, the degree of truth for each rule from the database is determined. Since the rules in the database consist of simple statements “β1 is an”, the results of fuzzification are used.
Activation is the process of determining the degree of truth for each of the elementary logical sub-clauses, which are calculated on the basis of the output variables. There are various methods of activation:
min-activation — μ’(c) = min{fi, μ(c)}
prod-activation — μ’(c) = fi · μ(c)
average-activation — μ’(c) = 0.5(fi + μ(c)),
where F = (f1, f2, …, fq) is the set of truth degrees for each of the rules; q is the total number of sub-clauses in the rules database; μ(c) is the membership function of the term, which is the value of some output variable.
In the Mamdani algorithm, min-activation is used, in the Larsen algorithm — prod-activation. The paper [12] shows that in a number of cases the Larsen algorithm is more accurate than the Mamdani algorithm, but it requires more multiplication operations.
Accumulation is finding the membership function for each of the output variables by combining all the degrees of truth of the sub-clauses obtained earlier.
The final part of any fuzzy algorithm is the transition from the function of the output variables to their numerical (precise) values. Thus, the results of the fuzzy algorithm can be used in subsequent precise calculations.
Simulation of the movement of the mobile robot and fuzzy control system was carried out in the LabView programming environment. LabView supports the work with fuzzy systems by default, which makes it unnecessary to directly implement fuzzy algorithms from scratch, while leaving all the possibilities for upgrading these algorithms.
The block diagram of the model is shown in Fig. 8. In addition to the directly fuzzy system (Fig. 9), there are sector determination blocks, orientation errors, position errors, coordinate transformations, and navigation error emulation.
Let’s consider the results of simulating the robot’s moving from point to point. The operation of the fuzzy controller was compared with the model from [1]. The simulation shows (Fig. 10) that a robot controlled by both models reaches the specified point. It can be seen that the second model moves along a curvilinear trajectory, which complicates control and stabilization, and also results in the faster wear of the actuators. Most of the way the fuzzy model adheres to the movement along straight lines, which is its advantage.
Fig. 11 shows the movement of the robot along a straight line from point with coordinates (0; 0) to point with coordinates (200; 0). In this experiment, a comparison was also made with the model from [1]. In both cases, the robot reaches the target, but the fuzzy system shows a smaller deviation (0.5 meters vs. 1.0 meter for the classic regulator) from the straight line.
Fig. 12 shows the results of simulating a robot turn from point (0; 0) with an orientation of 180 degrees to point (10; 0) with an orientation of 0 degrees. The peculiarity of this maneuver is that the distances to be covered do not exceed 10 meters in both directions. Thus, the error of the navigation system (NS) plays an important role. The global NS of the robot has an error of up to 5 meters. In the case of moving to much larger distances, this, as can be seen from previous experiments, does not play a major role. But in the case of a turn around, the orientation of the robot with such an error becomes impossible, since the actual position of the robot and the position determined by the NS can be so different that they will be on different sides of the destination. This leads to the fact that the robot can’t reach the target and randomly moves around the starting point. The trajectory of the robot’s movement when trying to turn around under such conditions is shown in the graph 1 of Fig. 12.
Therefore, the mobile robot should also have autonomous means of orientation (for example, inertial navigation systems, laser rangefinders) with an error of the order of tens of centimeters. The use of such NS at maneuvers near the destination will allow more precise orientation of the robot and achieve the goal, which is illustrated in graph 2 of Fig. 12.
As a result of the work, a model of a regulator controlling a mobile robot based on fuzzy logic has been constructed, input fuzzy “angular orientation error” and “sector” variables have been chosen. Computer simulation in LabView’s graphical programming environment has been carried out. The results of comparison of the work of models on the basis of a fuzzy controller and a classical regulator have been presented, as well as various trajectories of the robot’s movement.
The authors consider novel the model of a fuzzy regulator based on fuzzy variables “angular orientation error” and “sector”. With the help of this model, we have obtained the results of comparison of functioning of a classical regulator and that of a regulator constructed using fuzzy logic. The development of the model and the conduct of computer experiments were carried out in the LabView graphical programming environment. The obtained results have confirmed the adequacy of the model used and the developed set of rules for the operation of the fuzzy controller.
The work was carried out with the financial support of the Ministry of Education and Science of Russia, project No. № 8.8952.2017/8.9.
REFERENCES
1. Vinogradov A., Terentev A., Petrov V. and Petrov O. “Development of Mathematical Model of Moving Wheeled Robot Using Visual Programming Platform Labview”, 2017 IEEE Conference of Russian Young Researchers in Electrical and Electronic Engineering (EIConRus), St. Petersburg, 2017, pp. 1056–1059.
2. Finaev V. I., Ignat'ev V. V. Sistemy upravleniya na osnove ob"edineniya klassicheskoi i nechetkoi modelei ob"ekta. M.: Fizmatlit, 2013. 158 p. (In Russian).
3. Khodashinskii I. A. Identifikatsiya nechet¬kikh sistem: metody i algoritmy // Problemy upravleniya, 2009, № 4. (In Russian).
4. Tsyui Dun'yue. Razrabotka metoda planirovaniya traektorii peremeshcheniya mobil'nogo avtonomnogo robota v trekhmernoi srede na osnove apparata nechetkoi logiki // Inzhenernyi vestnik Dona, № 4, 2015. (In Russian).
5. Tsyui Dun'yue. Upravlenie mobil'nym robotom na osnove nechetkikh modelei // Rossiiskaya Akademiya Estestvoznaniya, 2007, № 6. (In Russian).
6. Chernov V. G. Modifikatsiya algoritmov upravleniya, ispol'zuyushchikh pravila nechetkogo uslovnogo vyvoda // Informatsionno-upravlyayushchie sistemy, № 3, 2013. P. 23–29. (In Russian).
7. Semenova N. G., Semenov A. M., Kry¬lov I. B. Baza znanii intellektual'noi obuchayushchei sistemy tekhnicheskoi dis¬tsipliny // Vestnik Orenburgskogo go¬su-darstvennogo universiteta, 2013, № 9. P. 232–239. (In Russian).
8. Semchenko P. N. Osnovannye na pravilakh ekspertnye sistemy // Elektronnoe nauchnoe izdanie “Uchenye zametki TOGU” 2014, Tom 5, № 4. P. 1249–1266. (In Russian).
9. Ledeneva T. M., Kashko V. V. O razlich¬nykh realizatsiyakh mekhanizma nechet¬kogo logicheskogo vyvoda // Aktual'nye problemy prikladnoi informatiki, infor¬matiki i mekhaniki: sbornik trudov Mezh¬dunarodnoi nauchno-tekhnicheskoi konfe¬rentsii, Voronezh, 2016. P. 391. (In Russian).
10. Tkach S. N. Nastroika parametrov adaptivnogo kontrollera s ispol'zovaniem nechetkoi neironnoi seti // Programmnye produkty i sistemy. 2001. № 3. (In Russian).
11. Semenova N. G., Krylov I. B. Razrabotka agentno-orientirovannoi intel¬lektual'¬noi obuchayushchei sistemy na osnove nechetkoi neironnoi seti Takagi – Sugeno – Kanga // Vektor nauki TGU, 2015, № 2-1 (32-1). (In Russian).
12. Melkov D. A. Sravnenie algoritmov nechet¬kogo vyvoda s ispol'zovaniem yazykov standarta MEK // Molodoi uchenyi, 2013, № 5. P. 74–79. (In Russian).
At the same time, in conditions of autonomous control (lack of communication with the operator) the robot cannot receive corrective control from outside. Thus, the task must be solved from the beginning to the end directly by the robot control system. This solution should be made under certain limitations on the technical component (compactness, low power consumption), which affects the algorithmic support being used.
The object of control in this work is a robotic chassis. The chassis control system consists of electric motors and drives, as well as a computing device. Sensors are also a necessary part of the mobile robot. This paper features the work of the navigation system responsible for determining the orientation of the robot in space, taking into account the navigation system work’s error.
Let us consider the solution of the problem of controlling the movement of a mobile robot from the point A with coordinates (xn, yn, αn) to the point B with coordinates (xn+1, yn+1, αn+1) ), where x is the robot coordinate along the abscissa axis; y is the coordinate of the robot along the ordinate axis; α is the orientation angle of the robot (Fig. 1). The motion of a robot in a two-dimensional space without obstacles in real time is being modeled. The coordinates of the robot are determined in the Cartesian coordinate system, chosen for convenience reasons with further mapping of the trajectory. The peculiarity of the problem being solved is the consideration of the robot’s orientation at the destination. The angle of the robot’s orientation is the difference between the robot’s motion vector and the abscissa axis in the chosen coordinate system. The trajectory of the movement will be constructed depending on the position of the robot at the end of the movement. This will make it easy to scale the control system for more complicated traffic cases among obstacles, narrow aisles and corridors.
One of the solutions to this problem is the use of fuzzy logic. This concept was proposed in 1965 by the mathematician Lotfi Zadeh and consists in using fuzzy sets [2 – 4]. That is, sets whose characteristic function can take not only certain values — 0 or 1, but also any others within the interval [0,1].
It is suggested to use the following variables to implement a fuzzy algorithm:
Input variables. Let us denote the set of input variables V = {β1, β2}, where β1 and β2 are the variables “angular orientation error” and “sector”.
Variable 1: β1 is error of the robot’s angular orientation. It is defined as the difference between the current orientation angle of the robot and the required one. In contrast to the task of trajectory [5], this variable should cover the whole range of values from –180 to 180. Thus, the following terms will be used: a1 — very strongly negative, a2 — strongly negative, a3 — negative, a4 — slightly negative a5 — close to zero, a6 — slightly positive, a7 — positive, a8 — strongly positive, a9 — very strongly positive. Fig. 2 shows the graph of the membership functions of this variable.
The form of membership functions does not have a serious effect on the control result, as demonstrated in [6]. In this way, you can use a common version of triangular and trapezoidal membership functions.
Variable 2: β2 is sector. Let us visualize the coordinate system adopted in such a way that the position of the mobile robot is the origin of coordinates. Then the direction in which the destination is located (take the following terms: b1 — rear-left, b2 — left-rear, b3 — left, b4 — front-left, b5 — front, b6 — front-right, b7 — right, b8 — right-rear, b9 — rear-right), will be given a fuzzy variable. Sizes of sectors will be taken as 30 degrees for the sectors “front” and “rear”, 60 degrees for the sectors “left” and “right” and 75 degrees for the others. This concept is illustrated in Fig. 3.
To determine the value of a fuzzy variable, we need to calculate the angle between the direction of the robot’s movement and the direction towards the destination point. To do this, we transform the coordinates of both points into the reference frame connected with the location of the robot (1) using the rotation matrix (2):
Eqn001.eps,(1)
where
Eqn002.eps.(2)
Then the angle can be defined as (3):
Eqn003.eps.(3)
The graph of the membership functions of this variable is shown in Fig. 4.
Output variables. Let us denote the set of input variables V = {w1, w2}, where w1 and w2 are the variables “desired angular velocity” and “desired speed”.
Variable 1: w1 is the desired angular velocity (take the following terms: c1 — fast left, c2 — left, c3 — smoothly left, c4 — straight, c5 — fast right, c6 — right, c7 — smoothly right). Fig. 5 shows the graph of the membership functions of this variable.
Variable 2: w2 is desired speed (take the following terms: d1 — full back, d2 — back, d3 — small back, d4 — stop, d5 — small forward, d6 — forward, d7 — full forward). Fig. 6 shows the graph of the membership functions of this variable.
Formation of the fuzzy system rules base is the formation of a number of utterances of the form [7]:
IF “β1 is ai” AND “β2 is bj” THEN “w1 is cp” AND “w2 is dq”,
where a and b are the terms of the input variables, c and d are the terms of the output variables, i, j, p and q are the indices of the corresponding terms.
The base of rules should cover the mutual relations of all the terms of all input variables and describe the reaction of the system to certain conditions.
For the problem to be solved, the rule base consisted of 81 rules, some of which are given below:
…
11 IF “angular orientation error” is “strongly negative” AND “sector” is “rear” THEN “desired angular velocity” is “fast right” AND “desired speed” is “back”
…
48 IF “angular orientation error” is “close to zero” AND “sector” is “front-right” THEN “desired angular velocity” is “right” AND “desired speed” is “forward”
…
71 IF “angular orientation error” is “positive” AND “sector” is “rear-right” THEN “desired angular velocity” is “fast right” AND “desired linear speed” is “forward”
…
There are several fuzzy algorithms, each of which has its own peculiarities. The main algorithms are four:
Mamdani algorithm [8];
Takagi-Sugeno algorithm;
Tsukamoto algorithm;
Larsen’s algorithm.
A number of limitations inherent in each of the algorithms make it possible to determine the most suitable for the problem being solved [9].
In particular, the Tsukamoto algorithm is used only for monotonic membership functions of the output parameter. This automatically makes it unsuitable under the conditions described, when one of the variables is the angular velocity, whose value varies from negative to positive values [10].
The Takagi – Sugeno algorithm is used when the weight coefficients are known for the unknown form of the output variables of membership functions. Since in our case we can choose the form of the functions, there is no need to use the fuzzy derivation of Sugeno [11].
The algorithms of Mamdani and Larsen are similar in their structure and differ only in the way they choose the implication. Let us consider the Mamdani algorithm in detail (Fig. 7).
The essence of fuzzification is to bring into correspondence the precise values that are fed to the input of the fuzzy system and the terms of the required input variable. Thus, a number of statements of the form “β1 is a1”, “β1 is a2” etc. are entered. For each of them, the truth of a*n is established by substituting the values of an in the membership function µ(x). After all the values of a*n = µ(an) for all terms of all input variables are found, the phase of fuzzification is considered complete.
At the stage of aggregation, the degree of truth for each rule from the database is determined. Since the rules in the database consist of simple statements “β1 is an”, the results of fuzzification are used.
Activation is the process of determining the degree of truth for each of the elementary logical sub-clauses, which are calculated on the basis of the output variables. There are various methods of activation:
min-activation — μ’(c) = min{fi, μ(c)}
prod-activation — μ’(c) = fi · μ(c)
average-activation — μ’(c) = 0.5(fi + μ(c)),
where F = (f1, f2, …, fq) is the set of truth degrees for each of the rules; q is the total number of sub-clauses in the rules database; μ(c) is the membership function of the term, which is the value of some output variable.
In the Mamdani algorithm, min-activation is used, in the Larsen algorithm — prod-activation. The paper [12] shows that in a number of cases the Larsen algorithm is more accurate than the Mamdani algorithm, but it requires more multiplication operations.
Accumulation is finding the membership function for each of the output variables by combining all the degrees of truth of the sub-clauses obtained earlier.
The final part of any fuzzy algorithm is the transition from the function of the output variables to their numerical (precise) values. Thus, the results of the fuzzy algorithm can be used in subsequent precise calculations.
Simulation of the movement of the mobile robot and fuzzy control system was carried out in the LabView programming environment. LabView supports the work with fuzzy systems by default, which makes it unnecessary to directly implement fuzzy algorithms from scratch, while leaving all the possibilities for upgrading these algorithms.
The block diagram of the model is shown in Fig. 8. In addition to the directly fuzzy system (Fig. 9), there are sector determination blocks, orientation errors, position errors, coordinate transformations, and navigation error emulation.
Let’s consider the results of simulating the robot’s moving from point to point. The operation of the fuzzy controller was compared with the model from [1]. The simulation shows (Fig. 10) that a robot controlled by both models reaches the specified point. It can be seen that the second model moves along a curvilinear trajectory, which complicates control and stabilization, and also results in the faster wear of the actuators. Most of the way the fuzzy model adheres to the movement along straight lines, which is its advantage.
Fig. 11 shows the movement of the robot along a straight line from point with coordinates (0; 0) to point with coordinates (200; 0). In this experiment, a comparison was also made with the model from [1]. In both cases, the robot reaches the target, but the fuzzy system shows a smaller deviation (0.5 meters vs. 1.0 meter for the classic regulator) from the straight line.
Fig. 12 shows the results of simulating a robot turn from point (0; 0) with an orientation of 180 degrees to point (10; 0) with an orientation of 0 degrees. The peculiarity of this maneuver is that the distances to be covered do not exceed 10 meters in both directions. Thus, the error of the navigation system (NS) plays an important role. The global NS of the robot has an error of up to 5 meters. In the case of moving to much larger distances, this, as can be seen from previous experiments, does not play a major role. But in the case of a turn around, the orientation of the robot with such an error becomes impossible, since the actual position of the robot and the position determined by the NS can be so different that they will be on different sides of the destination. This leads to the fact that the robot can’t reach the target and randomly moves around the starting point. The trajectory of the robot’s movement when trying to turn around under such conditions is shown in the graph 1 of Fig. 12.
Therefore, the mobile robot should also have autonomous means of orientation (for example, inertial navigation systems, laser rangefinders) with an error of the order of tens of centimeters. The use of such NS at maneuvers near the destination will allow more precise orientation of the robot and achieve the goal, which is illustrated in graph 2 of Fig. 12.
As a result of the work, a model of a regulator controlling a mobile robot based on fuzzy logic has been constructed, input fuzzy “angular orientation error” and “sector” variables have been chosen. Computer simulation in LabView’s graphical programming environment has been carried out. The results of comparison of the work of models on the basis of a fuzzy controller and a classical regulator have been presented, as well as various trajectories of the robot’s movement.
The authors consider novel the model of a fuzzy regulator based on fuzzy variables “angular orientation error” and “sector”. With the help of this model, we have obtained the results of comparison of functioning of a classical regulator and that of a regulator constructed using fuzzy logic. The development of the model and the conduct of computer experiments were carried out in the LabView graphical programming environment. The obtained results have confirmed the adequacy of the model used and the developed set of rules for the operation of the fuzzy controller.
The work was carried out with the financial support of the Ministry of Education and Science of Russia, project No. № 8.8952.2017/8.9.
REFERENCES
1. Vinogradov A., Terentev A., Petrov V. and Petrov O. “Development of Mathematical Model of Moving Wheeled Robot Using Visual Programming Platform Labview”, 2017 IEEE Conference of Russian Young Researchers in Electrical and Electronic Engineering (EIConRus), St. Petersburg, 2017, pp. 1056–1059.
2. Finaev V. I., Ignat'ev V. V. Sistemy upravleniya na osnove ob"edineniya klassicheskoi i nechetkoi modelei ob"ekta. M.: Fizmatlit, 2013. 158 p. (In Russian).
3. Khodashinskii I. A. Identifikatsiya nechet¬kikh sistem: metody i algoritmy // Problemy upravleniya, 2009, № 4. (In Russian).
4. Tsyui Dun'yue. Razrabotka metoda planirovaniya traektorii peremeshcheniya mobil'nogo avtonomnogo robota v trekhmernoi srede na osnove apparata nechetkoi logiki // Inzhenernyi vestnik Dona, № 4, 2015. (In Russian).
5. Tsyui Dun'yue. Upravlenie mobil'nym robotom na osnove nechetkikh modelei // Rossiiskaya Akademiya Estestvoznaniya, 2007, № 6. (In Russian).
6. Chernov V. G. Modifikatsiya algoritmov upravleniya, ispol'zuyushchikh pravila nechetkogo uslovnogo vyvoda // Informatsionno-upravlyayushchie sistemy, № 3, 2013. P. 23–29. (In Russian).
7. Semenova N. G., Semenov A. M., Kry¬lov I. B. Baza znanii intellektual'noi obuchayushchei sistemy tekhnicheskoi dis¬tsipliny // Vestnik Orenburgskogo go¬su-darstvennogo universiteta, 2013, № 9. P. 232–239. (In Russian).
8. Semchenko P. N. Osnovannye na pravilakh ekspertnye sistemy // Elektronnoe nauchnoe izdanie “Uchenye zametki TOGU” 2014, Tom 5, № 4. P. 1249–1266. (In Russian).
9. Ledeneva T. M., Kashko V. V. O razlich¬nykh realizatsiyakh mekhanizma nechet¬kogo logicheskogo vyvoda // Aktual'nye problemy prikladnoi informatiki, infor¬matiki i mekhaniki: sbornik trudov Mezh¬dunarodnoi nauchno-tekhnicheskoi konfe¬rentsii, Voronezh, 2016. P. 391. (In Russian).
10. Tkach S. N. Nastroika parametrov adaptivnogo kontrollera s ispol'zovaniem nechetkoi neironnoi seti // Programmnye produkty i sistemy. 2001. № 3. (In Russian).
11. Semenova N. G., Krylov I. B. Razrabotka agentno-orientirovannoi intel¬lektual'¬noi obuchayushchei sistemy na osnove nechetkoi neironnoi seti Takagi – Sugeno – Kanga // Vektor nauki TGU, 2015, № 2-1 (32-1). (In Russian).
12. Melkov D. A. Sravnenie algoritmov nechet¬kogo vyvoda s ispol'zovaniem yazykov standarta MEK // Molodoi uchenyi, 2013, № 5. P. 74–79. (In Russian).
Readers feedback