View unanswered posts | View active topics It is currently Fri Jul 11, 2014 8:20 pm






Reply to topic  [ 39 posts ]  Go to page Previous  1, 2, 3
File read and write functions 
Author Message
Guru
User avatar

Joined: Sat Mar 01, 2008 12:52 pm
Posts: 1030
Post Re: File read and write functions
hi,
thx, so far I've got it.

But what actually are the neurons in a CANN (continuous attractor neural network)?
How does a neuron in the CANN look like,
where do it's dendrits come from and the axon go to,
what is it's calculating algorithm,
and how many neurons do you need depending on the number of sensors and the number of squares in your map?


To show why this point is still obscure to me, let me try to explain this by three examples:
the a-star
the BUG/BUG2
an artificial neural net like a backpropagation net.

An approximating system also is used by the a-star and the BUG(BUG2) algorithm.

a-star is useful if the map is nearly complete (most of the locations of obstacles are known),
BUG/-2 simply drives to the estimated direction and rounds obstacles just if any of them appear.
In case of the a-star you need a detailed map,
in case of the BUG/-2 you don't.

And in both cases you don't need any a neuron.

If you have a small neural net, you may train behavior rules depending on sensor values; e.g.:
if distance sensors show "no obstacles ahead" try output "two motors forward",
if distance sensors show "obstacles right" try output "motor right forward, motor left float",
if distance sensors show "obstacles right and front" try output "motor right forward, motor left reverse".
Notify, that you don't program these behaviors in advance, but train it in case a event happens, and a shown spontaneous behavior was wrong (or maybe even conditionalize it if it was right). Now: what happens inside the neurons?
Step by step the neuron inputs (sensor values) are differently weighted by each neuron cell and lead to a vector room (R^[inputs] x R^[outputs] ) of input-output-patterns with local error maximums and minimums. If you reach a global minimum of errors, the net has learnt it's lesson.
The result of this training may not be very different from a bug algorithm if you just train him to round an obstacle. You also don't need to know anything about your environment, you don't need to have a map, you just let the robot react spontaneously to singular events (an obstacle appears wherever). The only difference is that at a BUG you have to program (via if..then..else) all events in advance, while at a NN you let all things happen and just educate the robot if anything was incidentally wrong (or right).

Like other nets like "Elman nets", "Sigma-Pi-neurons", "self organizing maps (SOM, Kohone Feature Maps)", the "Hopfield nets", the "Boltzmann machine", or the "Adaptive Resonance Theory (ART)" , surely even the CANN, every net has it's very typical network structure. But although all nets are constructed in a very different way, and although they use different functions to lead to the error minima: the construction of each neuron and the weighting and activation algorithms (net and act) of each neuron all are still quite similar.

So back to my starting question:
what actually are the neurons in a CANN?
How does a neuron in the CANN look like,
where do it's dendrits come from and the axon go to,
what is the calculating algorithm,
and how many neurons do you need depending on the number of sensors and the number of squares in your map?

_________________
regards,
HaWe aka Ford
#define S sqrt(t+2*i*i)<2
#define F(a,b) for(a=0;a<b;++a)
float x,y,r,i,s,j,t,n;task main(){F(y,64){F(x,99){r=i=t=0;s=x/33-2;j=y/32-1;F(n,50&S){t=r*r-i*i;i=2*r*i+j;r=t+s;}if(S){PutPixel(x,y);}}}while(1)}


Sun Sep 21, 2008 5:57 am
Profile
Expert
User avatar

Joined: Sat Sep 20, 2008 12:16 pm
Posts: 106
Location: Curently fighting aliens on P3X-828
Post Re: File read and write functions
I guess that it would take a HUGE amount of data to program something like that. btw, :programmer: programing something like that would take a lot of time...

_________________
:downloading:
Sorry, your program could not be downloaded. Please reboot your computer.
FTC Team #2959 Team Smash Bros CLICK HERE.(or click www)
Quote:
What the world needs is more geniuses with humility, there are so few of us left.

Agreed


Sun Sep 21, 2008 6:42 pm
Profile WWW
Guru
User avatar

Joined: Sat Mar 01, 2008 12:52 pm
Posts: 1030
Post Re: File read and write functions
no, surprisingly not!
e.g., I've built a backpropagation and an Elman net - it's the same issue if I configure it
for 5 neurons with 3 inputs and 2 outputs or
for 4000 neurons with 3000 inputs and 100 outputs *).
The net simply calculates 1 neuron after the other in a series of layer arrays, you just have to adjust the connections like
for (i=0; i< nLayer1; i++) do (NeuronLayer0[i].input=(NeuronLayer1[i].output); **)

The rest is trivial ***) :wink:

*) but due to the 15 k memory limit at RobotC the size is physically limited to ~40 neurons over all for nxt based neural nets
**) this surely works only as far as the compiler doesn't always produce nan errors :evil:
***) trivial = the most hated word among mathematicians :twisted:

_________________
regards,
HaWe aka Ford
#define S sqrt(t+2*i*i)<2
#define F(a,b) for(a=0;a<b;++a)
float x,y,r,i,s,j,t,n;task main(){F(y,64){F(x,99){r=i=t=0;s=x/33-2;j=y/32-1;F(n,50&S){t=r*r-i*i;i=2*r*i+j;r=t+s;}if(S){PutPixel(x,y);}}}while(1)}


Sun Sep 21, 2008 7:05 pm
Profile
Rookie
User avatar

Joined: Wed Apr 30, 2008 7:05 am
Posts: 18
Location: Brisbane, QLD
Post Re: File read and write functions
success - i have ratSLAM working on the lego NXT (using the the entire available memory) with experience mapping and loop closure occuring. Thesis is done

_________________
experiencing slow death by thesis


Thu Oct 16, 2008 1:00 am
Profile
Guru
User avatar

Joined: Sat Mar 01, 2008 12:52 pm
Posts: 1030
Post Re: File read and write functions
what does this mean?
what has this to do with file r/w functions?
what can be done with this?
what has been improved?

_________________
regards,
HaWe aka Ford
#define S sqrt(t+2*i*i)<2
#define F(a,b) for(a=0;a<b;++a)
float x,y,r,i,s,j,t,n;task main(){F(y,64){F(x,99){r=i=t=0;s=x/33-2;j=y/32-1;F(n,50&S){t=r*r-i*i;i=2*r*i+j;r=t+s;}if(S){PutPixel(x,y);}}}while(1)}


Thu Oct 16, 2008 4:01 am
Profile
Rookie
User avatar

Joined: Wed Apr 30, 2008 7:05 am
Posts: 18
Location: Brisbane, QLD
Post Re: File read and write functions
This means i have implemented ratSLAM on the lego nxt.

This is just following on from the previous topics in the read/write sections.

It is able to generate a real time/online map of an area using local view, pose cells and experience to do this. It demonstrates loop closure in the map and demonstrates some ability to handle being 'kidnapped'.

Improvements...well think about it. I have taken ratSLAM which currently running on a pioneer DXE wirelessly connected to a PC to share the computation to running it on it onboard a lego NXT.

_________________
experiencing slow death by thesis


Thu Oct 16, 2008 4:06 am
Profile
Guru
User avatar

Joined: Sat Mar 01, 2008 12:52 pm
Posts: 1030
Post Re: File read and write functions
what has this to do with file r/w functions?
what can be done with this?

Or is your post about the CANN?
what has it do do with this and what are the neurons like using ratslam?
I don't see the point.

_________________
regards,
HaWe aka Ford
#define S sqrt(t+2*i*i)<2
#define F(a,b) for(a=0;a<b;++a)
float x,y,r,i,s,j,t,n;task main(){F(y,64){F(x,99){r=i=t=0;s=x/33-2;j=y/32-1;F(n,50&S){t=r*r-i*i;i=2*r*i+j;r=t+s;}if(S){PutPixel(x,y);}}}while(1)}


Thu Oct 16, 2008 4:11 am
Profile
Rookie
User avatar

Joined: Wed Apr 30, 2008 7:05 am
Posts: 18
Location: Brisbane, QLD
Post Re: File read and write functions
it was in regard to the CANNs and the doubters who believed it couldn't be done. A full version of the code and results can be made available on the proviso that my thesis supervisor agrees. Besides i started this thread i write wat i want :D

_________________
experiencing slow death by thesis


Thu Oct 16, 2008 6:32 am
Profile
Guru
User avatar

Joined: Sat Mar 01, 2008 12:52 pm
Posts: 1030
Post Re: File read and write functions
surely you can write what you want :bigthumb:
I just didn't see the relation to the starting question.

_________________
regards,
HaWe aka Ford
#define S sqrt(t+2*i*i)<2
#define F(a,b) for(a=0;a<b;++a)
float x,y,r,i,s,j,t,n;task main(){F(y,64){F(x,99){r=i=t=0;s=x/33-2;j=y/32-1;F(n,50&S){t=r*r-i*i;i=2*r*i+j;r=t+s;}if(S){PutPixel(x,y);}}}while(1)}


Thu Oct 16, 2008 6:40 am
Profile
Display posts from previous:  Sort by  
Reply to topic   [ 39 posts ]  Go to page Previous  1, 2, 3

Who is online

Users browsing this forum: No registered users and 2 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  



Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Designed by ST Software for PTF.