Fuzzy Logic for Optimal Robot Motions

by H. Jack and F.Stewart






To control robots many compromises are made. For example, the simplicity of the control technique is quite often put ahead of efficiency and speed. The computational requirements for complexcontrol schemes require either extensive computation time, or prohibitively expensive computers. Many of the problems encountered with exact methods can be overcome using approximate techniques.


Some exact methods for robot control have been explored. For example, a paper by Rajan [1985] describes a method where robot paths are modelled in joint space using splines. He then uses Bobrow’s algorithm [1983][1985] to determine the optimal trajectories along that path, and thus the optimal path time. Then, to obtain the optimal motion (path and trajectories together), Bobrow adjusts the path splines using a gradient descent technique. This approach will produce good results if a good initial path is suggested. But, this method is plagued by calculation times that are to long, and with varying computation time. This means that while the method is valid, and produces good results, it is not suitable for real-time control in non-repetitive motions. The same problem occurs with other iterative methods.


Miller et. al. [1990] mentions that methods exist for learning to improve a path every time it is traversed. The methods can be useful when attempting long-term optimal control, without exect mathematical models, but are not suited to non-repetitive tasks. Jack [1991] used a feedforward neural network to approximate the optimal motion. The training data for the neural network was developed using numerical optimization of robot joint positions modelled with splines. This method showed great promise, but the neural network solution was not able to extrapolate outside the provided training examples.


This paper describes a method for approximating the highly non-linear time optimal robot motions using fuzzy logic.




The non-linear nature of robots makes it difficult to develop exact techniques for control. Linear control systems are well understood, and can be applied for robot control, but a worst-case dynamic configuration must be used to linearize the controllers. This leads to robot controllers that overshoot in some regions of the workspace, and are overdamped in others. To compensate for this the modern approach is to use non-linear control schemes, such as MRAC (Model Reference Adaptive Control) to adjust the control parameters over the robot workspace. This results in a form of locally-optimal control. While the robot follows the given path in an optimal method, there is an assumption that the path is optimal. This will produce globally sub-optimal motions.


The case in point is seen in Rajan [1985]. He develops optimal motions for the robot, as pictured below in Figure 1. Notice that the only one joint angle is changed in global terms, but the optimal solution also bends the elbow joint to reduce the inertial effects of the arm. This results in a path time reduction from 7.38 to 4.37 seconds. Rajan’s results are important in indicating the optimal path, but this method is hindered by the computational time required.


Figure 1 - Optimal Robot Motion.


The robot control problem chosen for this research is the 2 degree of freedom planar manipulator, as done by Rajan [1985]. This provides results for comparison to numerically optimal values. The 2 degree of freedom manipulator is complicated enough to incorporate the non-linear dynamics of the arm, as well as allowing future addition of other factors such as gravity, and variable payloads. The robot model uses the parameters as given below, with joint torque control (with maximum torque limits).




Figure 2 - Robot Model and Parameters




When possible, mathematical methods will always provide excellent solution. In some cases there are non-exact properties that make a problem impractical with exact mathematical techniques. The original concept of fuzzy logic was formalized by Lofti Zadeh in the mid-1960s [1965]. The application of fuzzy logic to control problems was first tried in the mid-1970s to control of cement manufacturing kilns. This application was tried with mathematical rules with varying success, but when Mamandani et. al. [1985?] applied fuzzy logic the results we immediate and successful. Since then there have been a number of equally succesful applications. The main application characteristic is that the problem should have non-crisp rules that are easy to understand, but hard to express mathematically. This feature makes fuzzy logic well suited to the optimal control problem described above. This is obvious when trying to describe the optimal motion of the robot. In particular, a computer would require a few minutes to develop the path above, but all the optimal motion is doing is “bending the elbow to reduce the inertial effects”.


The basic theory of fuzzy logic is very well described in a number of sources and will not be described here [????][??????].




A set of rules was developed to describe the optimal motion of a robot arm. In summary these rules capture the ideas that joint torques are turned on fully for large moves. The smaller joint motions result in lesser torques. In addition. Over large motions the elbow will be bent forward or back for a majority of the motion to reduce inertia. The decision variables for the rules are,

• θ1 base joint angle

• θ2 elbow joint angle

• eθ1 global shoulder path error

• eθ2 global elbow path error

• eiθ1 current shoulder path error

• e1θ2 current elbow path error

• θd1, θd2 the desired joint posiitons


The control variables are,

• T1, T2 joint torques for the shoulder and elbow joint


As can be seen the definitions are similar to those used in traditional controllers. The definitions for the error is,


e = θd - θact


where e is the error angle, θd is the desired joint position, and θact is the actual joint position. Positive angles and torques are in the counter-clockwise direction.


The controller rules are split hierarchically to address the various general states of the arm,


1. Steady state error minimization - the arm is near the goal, and only needs simple joint correction.

2. Elbow - regular control for simple arm movements of the elbow only.

3. Long moves with shoulder - reduce dynamic effects. Add a dynamic reduction factor to elbow joint.

4. Stability - recover when the arm is moving too fast.


Each of these states calls for different movement strategies. For example, when the elbow is the only joint to be moved, the robot motion can use a simple linear control scheme. When the arm is near steady state, the linear control laws schemes are still useful, but the should joint parameters must be tuned to adapt for various elbow angles. Long moves involving the soulder of the robot should bend the elbow to move it to a lower dynamic position during the move. By reducing the dynamic effects, the arm can move faster.


----Paragraph on rules

--- paragraph on sets

----- paragraph on implementation



----- describe the results of simulation, and compare to Rajan



------ Discuss complete success, and future work.



----- Ryerson etc.




Bobrow, J.E., Dubowsky, S., and Gibson, J.S., “On the Optimal Control of Robotic Manipulators with Actuator constraints”, 1983 Proceedings of the American Controls Conference, 1983.


Bobrow, J.E., Dubowsky, S., and Gibson, J.S., “Time-Optimal Control or robotic Manipulators Along Specific Paths”, The International Journal of Robotics Research, 1985.


Jack, H., “Application of Neural Networks to Robot Motion Planning and Control”, A Masters Thesis at the University of Western Ontatio, Canada, 1991.




Miller, W.T., Hewes, R.P., Glanz, F.H., and Kraft L.G., “Real-Time Dynamics Control of an Industrial Manipulator Using a Neural-Network-Based Learning Controller”, IEEE Transactions on Robotics and Automation, Vol. 6, No. 1, 1990.


Rajan, V.T., “Minimum Time Trajectory Planning”, IEEE Conference on Robotics and Automation, 1985.


Zadeh, L, “ “