Hello
http://code.google.com/p/fanntool/
I wrote to the developers and they can support cross-compiling into Arduino board, and I believe they rare not compute intensive for our purposes.
100% OPEN SOURCE + GUI visual programming
There are several more when I hear from the developers I will post here.
Dara
Tags:
Permalink Reply by robert bouwens on February 24, 2012 at 1:04pm :-)
would that run on a beaglebone?
what do you think about cpu performance needed?
best
robert
Permalink Reply by Dara Shayda on February 24, 2012 at 1:10pm Hello Sir
I will ask the developers, but I do not see any reason since they must have made similar applications cross-compile.
Performance: If we use the CMAC hash-table based model for the evaluation of the NN then I fathom it will run real-time for the copters we are flying. Since most of the them hashing is done addressing memory little computation.
But to be on the safe side, I will make a small sample code working to demonstrate.
The example of I have in mind is to balance a stick in the middle, if that is real-time I guesstimate the quad copter code will be 8 times more compute intensive.
I suspect the worst case scenario one order of magnitude. But we need to code and experiment for sure
I get back to you on that soon
D
Permalink Reply by Dara Shayda on February 24, 2012 at 1:32pm > At over 1.5 billion Dhrystone operations per second and vector floating point arithmetic operations, the BeagleBone is capable of not just interfacing to all of your robotics motor drivers ...
At 1.5 billion operations a second and vector calc, I have a strong confidence it can balance the copter
D
Permalink Reply by Dara Shayda on February 25, 2012 at 1:02am Ok from the developers of this toolkit: (IF THINGS GOT ROLLING I DO NOT MIND SENDING THIS FELLOW SOME BOARDS but we need to make sure this is the right tool)
Core library FANN written C there is no dependency so most probably it works over beagble board
FANNTool isa GUI for FANN and main purpose is training of ANN
FANNTool requires a FLTK GUI library ( FLTK 1.1.10 )
FLTK also a cross-platform GUI
for Linux version OS over beagleborad, i think FannTool work.
but i dont try it because i have no beagle board :(
Permalink Reply by robert bouwens on February 25, 2012 at 1:26am the fanntool is the reason to buy a beaglebone.
i am thinking of having a more powerfull cpu as assistant to the regular flightcontroller.
will try to organize one of these boards.
best robert
Permalink Reply by Dara Shayda on February 25, 2012 at 1:31am Got you!
Let me play around more and I can work something out, if all works out with this tool I will send the developer of fanntool APM and Beagleboard to help us to understand how their tool should run.
I think in general it is good idea to have another powerful cpu to assist APM board, I can see many applications e.g. foraging requires serious calculations for a swarm of arducopters flying in formation.
More soon....
D

Good idea, this is a very useful tool...
Jean-Louis

Here a source code of a basic example of multi-layer backpropagation neural network with bias terms and momentum which works on Arduino (tested on my APM board...). It is used to detect structure in time-series, which is presented to the network using a simple tapped delay-line memory. The program learns to predict future sunspot activity from historical data collected over the past three centuries. To avoid overfitting, the termination of the learning procedure is controlled by the so-called stopped training method.
The original C code from Karsten Kutza used for Prediction of the Annual Number of Sunspots is now re-writen for the Arduino board and I have tested it on my APM board.
Enjoy and good coding...
Jean-Louis
Permalink Reply by Dara Shayda on February 25, 2012 at 1:18am I will look at this very carefully, at first glance this code will run real-time on beaglebone and APM no problem. I assume even an order of magnitude more complexity still will be real-time on APM.
If and when ready, hope you teach me how to upload the code into the APM board and test.
So I am very happy with this development, it is along the ways my mind thinks.
Let's do some more due diligence, I do not mind hacking some code for arducopte.
My first most important application of NN is a safer take-off by arducopter for the beginners (like myself) who crashed the poor arducopter into piles of snow all over Ontario :), also a safer take-off indoors since no matter what I do I cannot take off without a drift by the eddies off the floor.
D
Permalink Reply by Dara Shayda on February 25, 2012 at 1:51am FANNTOOL does supervised-learning:
http://en.wikipedia.org/wiki/Supervised_learning
We need to see if that fits the needs of arducopter, I am certain it does, but again this is our homework before adopting this tool
D
Permalink Reply by Dara Shayda on February 25, 2012 at 2:15am Tutorials for FANNTOOL's learning:
http://www.doc.ic.ac.uk/~sgc/teaching/pre2012/v231/lecture12.html 2-layer network
http://www.doc.ic.ac.uk/~sgc/teaching/pre2012/v231/lecture13.html
From a couse taught at in Imperial College:
Permalink Reply by Dara Shayda on February 27, 2012 at 12:38pm FANNTool is the GUI interface for:
FANN
http://sourceforge.net/projects/fann/
It seems it does provide more than one layer NN
Season Two of the Trust Time Trial (T3) Contest has now begun. The fourth round is an accuracy round for multicopters, which requires contestants to fly a cube. The deadline is April 14th.185 members
6 members
129 members
87 members
24 members
© 2013 Created by Chris Anderson.
Powered by
