Follow me

Showing posts with label navigation planning. Show all posts
Showing posts with label navigation planning. Show all posts

Friday, October 5, 2012

Trajectory Prediction for Moving Objects Using Artificial Neural Networks


Pierre Payeur, Hoang Le-Huy, Clement M.
Human Factors: The Journal of the Human Factors and Ergonomics Society
Summary
                  Prediction of objects trajectory and position is very important for industrial robots and servo systems, where this kind of information might be used for control, capture and other observation issues.
Parts’ trajectories are often unknown and catching object problem can be useful for example in a typical loading/unloading problem of a robot grasping an object (for instance s box) from a slide or a conveyor.
In such a condition of course accuracy is strictly important, both for achieving the goal and for safety purposes.
An optimum off-line method is path planning based on cubit polynomials with dynamics added (G. Sahar, Hollerbach, 1986), but this method involved a lot of computation and it is done off-line, being not flexible.
The authors propose the use of Artificial Neural Networks (ANN), which can be computed faster and most of all can learn the system, being adaptable and flexible. The problem can be defined as the prediction of the trajectory of a moving object in real time, with minimum error, with no collision on an arbitrary path.
·       Model
Time t0 is defined as the time in which the manipulator starts moving, the prediction is done with the period of time T. The trajectory model is defined with a cubic function: χ(t)=1/6α0t3+1/2β0t20t+χ0, where χ represents the position, orientation, velocity or acceleration according on needs.
Neural network are trained to define the values of the coefficients α0, β0, γ0 at each change of trajectory for which they have to be recalculated, the presence of pre- and post-conditioning allows the need of a long network so that in the end there are 3 inputs, two layers of 20 hidden cells each and one output cell.
The global predictive structure is a multiplication of this basic topology by the number of d.o.f. .The Network is modeled so that it basically obtains information about the change in position and not the exact position, this method ensures reduction of calculations, but pre and post conditioning are then of course required in order to ensure the start and continuation of the calculations. Sampling period T too many times also should be avoided, so the preconditioning module computes differences between the known positions and feeds the network is pseudo-displacement value, so the network will process it and generates the anticipated pseudo-variation of the position or orientation, the post-conditioning module finds then velocity and acceleration through kinematics. The processed data from the neural nets is normalized so that the maximum value is lower than the activation function maxima (in this case a bipolar sigmoidal activation function with a range from -1.0 to 1.0). Between two successive sampling there is a maximum coordinate variation ∆pmax, while limitation in resolution is the minimum detection possible (∆presolution), so that the number of possible steps to consider is STsingle=2∆pmax/∆presolution+1, which must be globally should be powered by three for each of the inputs. The size of the data can be reduced since two successive position or orientation variation are always of a similar amplitude with a constant sampling rate, so it can be assumed hat there is a maximum difference, tables (Appendix C) help for calculations shown at page 151. Once the input triplet is processed with the cubic model already introduced (to ensure that the output data presented to the network are exact), these are normalized between ±0.8 to avoid extremes, at that point the back-propagation algorithm and the pseudo-random presentation order are used for training the data (triplets are not presented in a fixed order, but the entire set must be used within one epoch).
Key Concepts
Artificial Neural Network, Path Planning, Trajectory Prediction
Conclusion
The method appear to be optimal and working as the polynomial trajectory model but being more flexible. Anticipated values are also more reliable and variances are more similar between axis so that errors could be improved and controlled.

Thursday, October 4, 2012

Fuzzy-GA-Based Trajectory Planner for Robot Manipulator Sharing a Common Wokspace


Emmanuel A. Mechan-Cruz, Alan S. Morris
IEEE Transactions on Robotics, VOL. 22, NO.4, August 2006
Summary
                   Artificial Potential Fields (APF) are useful in describing workspace of manipulators for implementation of fuzzy collision-avoidance strategies. APF is capable of collision avoidance and trajectory planning simultaneously, but has a high risk of being stuck in local minima conditions in certain conditions, therefore in the literature, following Khatib studies, many solutions to avoid local minima have been performed. The authors present a novel fuzzy genetic algorithm (GA) approach to make trajectory planning of two manipulators sharing a common workspace. The application of fuzzy logic for information generation to drive a manipulator to a certain goal was first investigated by Althoefer (1996), but the system appear to no be feasible for two manipulators working simultaneously with a one of them in static condition nearby the goal.
·       Model
The fuzzy-GA-based trajectory planner (FuGABTP) is a simple Genetic Algorithm (GA) trajectory planner (GABTP) where individual fuzzy units provide correction to the displacement of each articulation. Manipulators are modeled as obstacles using a APF method, calculated only for the near vicinity (being a local approach).
The outline see initial configurations being input in both manipulators, which in parallel start first the GABTP and then implement the fuzzy corrections, at that point trajectories are updated and goal is verified if check or not, repeating the sequence if goal is not reached.
The GABTP carries an initial estimation of the motion without considering the presence of possible obstacles, in  free workspace the degree of extension of the manipulator is considered in order to minimize unnecessary displacements of the links (refer to Appendix A): f=1/(e(error/R)), where the error is the distance between goal coordinated and actual coordinate, R is the distance between initial coordinates and actual current coordinates.
Fuzzy correction is achieved by individual Mamdami-type fuzzy units that provide collision avoidance. The obstacle direction can be right is the APF increased or left in the other case. μi are the fuzzy sets, used for mapping μp(d): D à [0;1]. The function to represent the fuzzy sets is asymmetrical triangular functions since these are easily computable. The correction is given according to the fuzzy rules: 1) obstacle on the left and small  APF then SN correction, 2) obstacle on the left and med APF then MN correction; 3) obstacle on the left and medbig APF then MBN correction; 4) if obstacle is on the left and APF is big then BN correction; 5) if obstacle is on the left and APF is 0 then zero correction; 6) if obstacle is on the right and APF is small then correction is SP; 7) if the obstacle is on the right and APF is small then correction is MP; 8) if the obstacle is right and APF is medbig then correction is MBP; 9) is obstacle is right and APF is bit then correction is BP; 10) if obstacle is right and APF is 0 then correction is 0; 11) if obstacle is left and error is 0 then correction is 0; 12) if obstacle is right and error is 0 then correction is 0. The fuzzy set for output correction showing the each acronym graph is report at page 616.
Key Concepts
Fuzzy-GA-Based Trajectory Planner, Planning, Workspace sharing
Key Results
The simulation has been carried on with a 3 d.o.f. and a 7 d.o.f. manipulator both in static and dynamic case, showing success in reaching the goal. The FuGABTP took generally more segment movement but an overall less time to reach the goals if compared with simple GABTP.
The approach demonstrates to be robust and stable, from the set of outputs coming from the model it is further own easy to computer trajectory, velocity and acceleration through kinematics. The parallel planning avoids the need of any further planning.

Tuesday, October 2, 2012

Human – Centered Robot Navigation – Towards a Harmoniously Human – Robot Coexisting Environment


Chi-Pang Lam, Chen-Tun Chou, Kuo
IEEE Transaction on Robotics, Vol. 27, No.1, February 2011
Summary
                  Harmonious coexistence of robots with humans is an in interest for improving HRI and the navigation of robots in human environments is rarely studies. Two are the main issue to be addressed: the robot should be able to move autonomously and safely in a human – robot environment in order to complete a specific task and the robot should behave in both human and robot friendly manner during operations, this last issue is the one covered in the authors research. In the literature there are different proposed solutions as traffic rules (which would require to regulate humans’ behavior, which of course is not possible), artificial potential fields (which risk to stuck in local minima), nearness diagram (ND) navigation (which is a reactive navigation approach based on laser scanner), people tracking and so on. The authors propose a human-centered sensitive navigation (HCSN), imposing 6 harmonious rules for human and robot coexistence in the same environment: 1) Collision-free rule; 2) Interference-free rule; 3) Waiting rule; 4) Priority rule; 5) Intrusion rule; 6) Human rule (human have the highest priority). Robots may then have there own internal rules. Also 6 sensitive field have to be defined. The Human Sensitive Field is around the human and assumes an egg shape, bing longer ahead of the human (elliptic) and shorter behind (circle) since it must consider human motion, this field has the highest priority. The Stationary Robot Working Field is the robot working (or just waiting) in a fixed location and has the scape of a disc, it is second in the priority rule. The Movable Robot Working Field is the robot working while moving, it is third in the priority rule and also has a donut shape. The Robot Normal Field is the idle o not working robot, it presents a disc shape and has lowest priority. The Human-Robot Stationary Joint Field present both human and robot working together in stationary position, it assumes a circle shape with the center in the middle between the human and robot. The Human-Robot Moving Joint field also assumes an egg shape (whit longest axis facing the operator). The two combination fields assume the same priority as the Human Sensitive Field, for simplicity the 6 states are denominated as follow in the same order: H1, R1, R2, R3, HR1, HR2. The HCSN design consist of a VLH (Virtual Laser Histogram) which collects all the virtual distance data within 5 meters, this information is used for sensitive-field sensing, while situation identification, together with sensitive field sensed information inputs the motion planner, which then inputs the controller, providing in the end a final output.
Unluckily humans are not easy to localize and paradoxically information regarding them is much less than the ones regarding robots. The motion planner involved the use of ND navigation to fin out a suitable free walking area, while the potential field approach is later used to establish different potential field near the walking area we choose. Different cases are presented, it must be noted that in the priority rule, highest priority may not necessary be assigned to the closed to obstacle, but there is a risk factor applied in order to under preview future closest obstacles, in order to ensure smooth motion.
The priority rule is then used in the calculation of the potential field, which its negative gradient is taken to define the attractive force. Similar computation are then obtained for repulsive force and for repulsive force associated with the soft field (which is the flexible field regarding R2 and R3). The overall force is then the sum of the three and this will determine the sub-goal position, with a matter of a D0 factor which is a look-ahead distance which is kept smaller into the sensitive field, while the gain is kept smaller for more effective look ahead distance.
Key Concepts
Navigation, Human-Robot Cooperation, Human-Robot Interaction
Key Results
The method, although being complex, can be performed smoothly in real-time environments.

Saturday, September 29, 2012

Adaptive Neural Network Control of Robot Manipulators in Task Space


Shuzhi S. Ge, C.C. Huang, L.C. Woon
IEEE Transactions on Industrial Electronics, VOL.44, NO.6, December 1997
Summary
                  Flexibility is one of the main issues in a production facility and several researches have been done to enable it in control system. Computed Torque Control is an intuitive scheme which has the objective of cancelling non linear dynamics of the manipulator system, but it requires the exact dynamic system which mean that is wouldn’t be flexible enough, so this is why adaptive control methods have been searched to overcome the problem of requiring a priori knowledge. Interesting is the application of Neural Networks, they work well in many systems and if use with parameterized variables, they can be used in different environments. The problem is extended I Task Space (Cartesian Space) and controlled must be the end effector position and it’s force. In order to create the model the GL (Ge-Lee) Matrix and its operator are introduced (page 746-747).
·       Model
In the field of control engineering, neural networks are used for approximating a given non linear function f(y) up to a small error tolerance. The neural network is based on 3 layers: input layer (n nodes), hidden layer (l nodes) and output layer (m nodes). For each hidden layer a Gaussian function is defined: ai=exp(-(y-μi)T(y-yi)/σi2), with μ being the center vector and σ2 being the variance of the gaussian distibution. The output appears to be the Gaussian Functin coming out from the hidden layer weigheted by W. It has been proven that any continuos function can uniformly be approximated by a linear combination of Gaussians.
In modelling a robot’s manipulator the kinematics would be described in the following manner: D(q)q’’+C(q,q’)q’+G(q)=τ, where D os the symmetric positive definite inertia matrix, C is the Coriolis matrix, G is the vector for gravitational forces and τ is the joint torque vector. D(q) and G(q) are function of only q, therefore the are considered as static neural networks and the equation previously introduced can be adapt for their description (page 748), while C is described as a dynamic neural network and therefore q’ is needed to model it, a parameter z=[qTq’T]∈R2n is used. A general controller can then be constructed demonstrating that no Jacobian matrix is required (for the function please refer to page 749); Kr is introduced to give the proportional derivative type control and kssgn(r) is indicating the tracking error. In a closed loop system with positive derivative and tracking signal error, e and e’ tend to be stably 0 with t going to infinite, the presence of sgn(.) function denotates chattering which needs to be minimized.
Key Concepts
Artificial Neural Networks, Control Systems
Key Results
The model of a Neural Network for robot controlling has been applied in simulation in comparison with a basic PD controller (non adaptive control). The simulation involved a two link manipulator and vector M, P and L where introduced. The vector M is: M=P+plL, where P is the vector for payloads, pl is payload at lth link and L is [l21 l22 lll2 l1 l2]T. For D and G function a 100-node static neural network is used, for C we use a 200-node dynamic neural network.
In the simulation non adaptive control appears to have a significant tracking error and cannot handle changes, using adaptive control allows to reduce a lot the tracking error thanks to the learning mechanism which is provided by the neural network methodology.
Actual D and actual C are shown to not converge to optimal D and C, which actual G converges to its optimal value, this is due to the fact that the desired trajectory is not persistently exciting as for real-world applications.
In conclusion the model allows a good control system without the need of time-consuming computations for obtaining the Jacobian, which describes the necessary inverce kinematics for traditional control systems.