Follow me

Showing posts with label Online programming. Show all posts
Showing posts with label Online programming. 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.

Tuesday, September 25, 2012

On responsiveness, safety, and completeness in real-time motion planning


Kris Hauser
Autonomous Robots, 2012
Summary
                  Replanning appears to be a powerful mechanism for controlling robot motion under hard constraints and unpredictable disturbances, involving a tradeoff between the planning horizon and its responsiveness to disturbances. A method commonly used is reactively replan at fixed time steps, with the risk of creating a myopic system, therefore adaptive time steps are proposed using “adaptive time stepping with exponential back-off” (ATS-EB), which learn a suitable time step according on whether the planner is able to make progress within the time limit. In order to perform research in this area, key aspect are: correctness, completeness and optimality (with this left for future research). Safety is a big concern in the literature (together with bounded rationality, time stepping issue and speed), Feron et al. introduced the notion of τ-safety, for which a trajectory results safe for at least time τ, establishing a hard deadline for replanning. Petti and Fraichard introduced the notion of “inevitable collision states” (ICS): a state for which no possible control can recover from a collision (using virtual obstacles is can prevent unnecessary explorations).
·       Model
In deterministic environment we the planner generated iteratively subsets of feasible states starting from an initial state at time t0, planning can be stopped at any time when the trajectory that attains the least value of cost functional C(y) is found, if the planner is given no time limit on any query that admits a solution trajectory, then the planner find a solution in expected finite time. The ATS+EB algorithm (page 38) is supported by two theorems which ensure safety, completeness and competitiveness. The ATS+EB will never drive the robot to unfeasible state and the in a deterministic and perfectly modeled environment, with a reachable goal, it will always find the solution trajectory in finite expected time (which is demonstrated to be loosely bounded at 4NTmac, where N are the iterations and Tmax is the expected running time). Failures of type I are the one which go against the first theorem, therefore for which the global minima may alternate between to locally easy but globally difficult problems, type II errors are those for which the robot gets inadvertently into a dead-end.
In the case of uncertainty no safety guarantees are logically possible, therefore the “time to potential failure” (TTPF) is introduced in the ATS+C algorithm, which manages the replanning time step using this new parameter, keeping the robot safe as long as planning can increase TTPF faster than it is consumed (algorithm at page 43).
If the robot may seek to optimize the potential function V(x), then some degree of safety must sacrificed, since the algorithm seeks to both increase TTPF and improving V(x). The proposed algorithm (page 44) maintains both optimistic and pessimistic trajectory (the role of the pessimistic one, which is followed by default, is to optimize the TTPF, while the the optimistic one guides towards the goal).
In this case again there are two possible failures: type I, consisting of states for which escaping failure is difficult for the planner, type II, consisting in inevitable failure. Increasing the computational power these two errors can be considerably resuced.
Key Concepts
Adaptive time step, replanning
Key Results
The experiments and results prove that using fixed cutoff with windows which are too short provoke unrealiability, since escaping can be possible on local minima, but also an extended windows my be problematic under the point of view of time to achieve the goal. The adaptive strategy appears to be the best except for narrow passages for which it is 45% slower than the best constant cutoff. Replanning is demonstrated to be a viable mechanism for real-time navigation and obstacle avoidance in dynamic environments.

Saturday, September 22, 2012

Intelligent control of robotic manipulators: experimental study using neural networks


Pramod Gupta, Naresh K. Sinha
Mechatronics, No. 10, 2000
Summary
                  The papers is about the application of neural networks for “model-free” controllers, so that they can learn online the composition of the system improving constantly their performance.
Today robotics face the challenge of flexibility, requiring to operate in real-time, pick up novel payloads and be expandable to accommodate many joints. Traditional control methods (direct program control, teaching pendants, inverse kinematics) are not adaptive and may work well in highly repetitive environments, but not in the case of uncertainties. Recent studies have demonstrated important characteristics of learning by neural networks, this methods appears to be adaptive and therefore ideal for a general robotic system.
·       Model
The papers goal is to perform an experimental model to get the real-time features and numerical characteristics of the proposed neuro-control schemes. Basically the neural network is trained offline to approximate the inverse dynamic model of the manipulator; the errors during operations can be used to train the neural network online (through the modified delta-bar rule) The fundamental steps of the learning algorithm are: weight update rule, learning rate update and gain update rule.
The weight update rule is: w1ji(n+1)=w1ji(n)+ji(n+1)δlj(n)yi(l-1)(n)+αΔwlji(n-1) where δljejl(n)fl(wlj(n)), w1ji(n) is the synaptic weight connecting neuron ith in the previous layer to the jth neuron in the lth layer, η is the learning rate, which is following Jacob’s heuristics (please refer to paper).
The learning rate depends on Dji(n) and Sji(n), the former being the partial derivative of the error surface with respect to wji(n) and the latter being an exponentially weighted sum of the current and past derivatives of the error surface with respect to wji(n) and with a constant indicating the base and iteration number n as the exponent.
The general procedure for control systems development involved: control task definition, contro system hardware setup, modeling parametric identification, control scheme selection and simulation test, real-time control code programming and implementation and system testing (the authors analyze only the last 2, since they use a robot, FLEXROD, where the former steps have already been done.
·       Experiment
The experiment involved FLEXROD, which has the following characteristics: a mechanical arm with two DC motors, one encoder per motor, transmission gear and light weight aluminum structure, a controller amplifier package, a personal computer interface for communication and programming. The joint velocities are obtained by differentiation of the join angles, due to noise in the differentiation a Butterworth filter is used with a cutoff frequency at 100Hz.
Key Concepts
Controlling by learning, Neural Networks, Online programming, Intelligent Robots
Key Results
It has been observed that the qualitative behavior is very close to that obtained in the simulation phase. The same tasks performed with a PID controller demonstrated results with a larger error.
Creating control system based on the neural network producing the largest part of the control input with a linear compensator generating small compensations is then effective. Compared with PD controllers it has been demonstrated that there are less oscillations and a neural network based scheme is then capable to handle unmodeled factors. Neural Networks can lead to the definition of intelligent robots as: “being one which trained for a certain class of operations, rather than one which is trained for virtually all possible applications”.