Click here to Skip to main content
Rate this: bad
good
Please Sign up or sign in to vote.
See more: C# GimmeCode
What is the best way to solve inverse kinematics of a robot? Neural network (fuzzy logic) or analytical? Do you have a source code of inverse kinematics solved by neural network? Thank you.
 
I have already implemented it using analytical way. Recently I have read papers stating that neural network is more efficient in solving inverse kinematics. I need a source code since, I do not have time anymore to revise my work. I do not understand neural networks that much and I believe it will greatly help my project for it to be efficient. I'm sorry if I am asking too much.
Posted 1-Feb-11 4:04am
Edited 1-Feb-11 5:56am
v4
Comments
Sandeep Mewara at 1-Feb-11 10:15am
   
What effort have you made? Why you need a source code?
CompSciLover at 1-Feb-11 11:10am
   
I have already implemented it using analytical way. Recently I have read papers stating that neural network is more efficient in solving inverse kinematics. I need a source code since, I do not have time anymore to revise my work. I do not understand neural networks that much and I believe it will greatly help my project for it to be efficient. I'm sorry if I am asking to much.
Sandeep Mewara at 1-Feb-11 11:15am
   
Posting the details now will surely help.
 
If you just ask for code without any detail, you mostly don't get it.
All the best for this and your project.
CompSciLover at 2-Feb-11 2:48am
   
Tnx for the advice. This is my first time to post here, that is why. With further research, I now know how to use fuzzy logic as an inverse kinematic solver for a robot. i just don't know how to implement a fuzzy inteference system that solves inverse kinematics of my robot. actually , the robot I am implementing right now has 29 DOF. It is human like actually. Tnx for the post.
Sandeep Mewara at 2-Feb-11 4:27am
   
Sounds interesting! :)
Henry Minute at 1-Feb-11 11:01am
   
The OP has replied.
Abhinav S at 1-Feb-11 13:18pm
   
What have you tried so far?
Rate this: bad
good
Please Sign up or sign in to vote.

Solution 2

Your question looks very strange; so I feel a bit confused. My first reaction of the question on robot kinematics was: it's not even "analytical", it's elementary school geometry! And this would be true if you consider simple industrial robots I worked with: 2-3 joints in one plain plus one more... As I could see, this is a majority. However, I do understand, there can be complex system; and I know about the use of neural networks, but that's for really complex systems and ill-posed problems that actually exist.
 
What I don't understand, is why are you asking about neural network approach while saying "I have already implemented it using analytical way". It you already did it and did correctly, this is an indicator of simplicity of your problem. How can you even think of applicability of neural network approach in this case? Moreover, how can you hope for any definitive answer if you conduct no idea of your robot problem and the complexity of your robot? I have an unpleasant feeling that you poorly understand this matter yourself. I would be very happy if you prove me wrong. To me, it looks like the presence of analytical solutions makes everything else an absurd. What for? Just to be "fashionable"?
 
I also cannot understand using brackets in "Neural network (fuzzy logic)". Are you talking about so called "neuro-fuzzy" approach. Normally, neural network and fuzzy logic (fuzzy sets and all that) are different branches of mathematics; I'm poorly familiar with neural networks, but fuzzy sets and logic is relatively easy stuff to learn. Again, I'm confused with your question. If there is a potential of using such advanced formalism in your problem, you would learn this stuff anyway, but if your were familiar with the backgrounds, your questions would be different. Do you really understand what are you asking about. Again, I have a feeling your problem is not a technical one but a whole methodical approach to knowledge and its application. And again, I would be very happy if you prove me wrong.
 
Best specialist I know in neural network, genetic and perhaps fuzzy methods in robotics is Anrew Kirillov, author of AForge.NET Framework: AForge.NET open source framework[^], http://en.wikipedia.org/wiki/AForge.NET[^]. He is a CodeProject author, you may want to contact him directly through CodeProject.
 
I saw other more or less relevant works on CodeProject, but you need to perform your search yourself.
 
—SA
  Permalink  
v2
Comments
CompSciLover at 2-Feb-11 3:04am
   
For simple structures like the two-joint robotic arm, it is possible to mathematically deduce the angles at the joints given the desired location of the tip of the arm. However with more complex structures like n-joint robotic arm operatin in 3D space deducing a mathematical solution for the inverse kinematics becomes difficult.
 
(base from my research)Using fuzzy logic, we can construct a Fuzzy Ingerence System that deduces the inverse kinematics if the formward kinematics of the poblem is known, hence there is no need to undergo an analytical solution. Fuzzy solution is more efficent than analytical solution.
 
Now, I don't know how to implement a fuzzy inference system. And our adviser requires me to use fuzzy logic. I don't have time anymore to study about it. If you could just provide me with even the pseudocode, i would appreciate it. Thank you.
SAKryukov at 2-Feb-11 3:50am
   
I've updated my answer; remembered works by Andrew Kirillov, please see.
I'm more familiar with his works on vision though, you won't find much in kinematics.
Good luck.
--SA
Espen Harlinn at 2-Feb-11 16:02pm
   
Interesting framework, something to remember 5+
SAKryukov at 2-Feb-11 16:48pm
   
Than you, Espen.
A bit obsolete because vision is based on WinForms only, but this can be re-worked. Some problems with build, but I managed. Good quality and unbelievable diversity of methods.
--SA
Rate this: bad
good
Please Sign up or sign in to vote.

Solution 3

My two cents on:

"if there is an analytical solution then it will outperform the neural network one".
Smile | :)
  Permalink  
Comments
SAKryukov at 1-Feb-11 13:23pm
   
Well, it looks obvious to me (well, 5 anyway). However, do you have a "proof link"?
--SA
CPallini at 1-Feb-11 14:01pm
   
Thank you. Nope, I haven't such a link, anyway, it looks obvious to me, it looks obvious to you, ... :-)
Rate this: bad
good
Please Sign up or sign in to vote.

Solution 4

The best solution I've seen for many DOF and a limited development budget is to take advantage of the cheap game physics engines available. 'Pin' the body of a 'ragdoll'. 'Pick' an end effector and move it. You will see joint positions being calculated. All of the heavy lifting is done. There is pseudo code and more info here.
  Permalink  
v2

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

  Print Answers RSS
0 OriginalGriff 534
1 Gihan Liyanage 298
2 ChintanShukla 295
3 RyanDev 250
4 Richard Deeming 250
0 Sergey Alexandrovich Kryukov 8,906
1 OriginalGriff 7,771
2 CPallini 2,603
3 Richard MacCutchan 2,121
4 Abhinav S 1,928


Advertise | Privacy | Mobile
Web04 | 2.8.140827.1 | Last Updated 17 Feb 2013
Copyright © CodeProject, 1999-2014
All Rights Reserved. Terms of Service
Layout: fixed | fluid

CodeProject, 503-250 Ferrand Drive Toronto Ontario, M3C 3G8 Canada +1 416-849-8900 x 100