Currently I'm using the Robotics-Toolbox python library by Peter Corke to perform inverse kinematics calculations for a 6 DOF (non-spherical wrist) robot arm. I'm using the robotics-toolbox ctraj function to create a path for the arm to follow. The IK are then performed on each 'point' along the path for the joint angles to be found. I'm getting a lot of singularity errors and believe it could be due to the nature of using a numerical solution. I also understand there are tools online that provide analytical solutions for an arm such as the pyikfast tool that generates an analytical solution using the IKFast Kinematics Solver.
How does the performance compare when creating trajectories using a numerical solution approach such as the Robotics-Toolbox one and an analytical solution such as IKFast. I understand the speed of analytical solutions are much better than numerical ones, but what about frequency of failing to find solutions for general paths?
Secondly, am I running into these IK errors because numerical solutions can be lackluster or can the consistency of finding viable solutions be good with numerical solutions? In other words, maybe I could improve my code and deal with finding IK errors and planning trajectories 'around' them and the issue isn't the numerical solution at all but with my implementation. I'd like advice on what kind of methods are preferred by the community.