Open Source FreeBASIC Human Android
-
- Posts: 3906
- Joined: Jan 01, 2009 7:03
- Location: Australia
Re: Open Source FreeBASIC Human Android
.
Last edited by BasicCoder2 on May 06, 2012 11:54, edited 1 time in total.
Re: Open Source FreeBASIC Human Android
why dont you create a wiki page and upload your old robo project there. Pics,videos build diary. Perhaps a youtube video or three. your dead project can still be an inspiration to others.
K8055-Presentation
http://www.youtube.com/watch?v=yuwAqYi7MuA
In this post im looking at the complexity issues related to building full sized walking androids...and how to reduce that complexity
Issues of software and hardware.....trying to figure out how to make life easy for the would be android builder, i think the bases for small robots are already covered quite well, lots of stuff on the net. Full sized walking androids ( & robopets ) are the next step up and the next big thing
....i think a builders club has a lot of merit as an idea, many focused minds and hands making light work of the sea of complexity...getting focus is important as it enables bridges to be built that span the inevitable complexity that arises.
the roboecoverse is evolving, species are emerging and undergoing specialization in their particular niche, just as in real life
robo limbs, sensors and brains slowly coalescing into artificial creatures
K8055-Presentation
http://www.youtube.com/watch?v=yuwAqYi7MuA
In this post im looking at the complexity issues related to building full sized walking androids...and how to reduce that complexity
Issues of software and hardware.....trying to figure out how to make life easy for the would be android builder, i think the bases for small robots are already covered quite well, lots of stuff on the net. Full sized walking androids ( & robopets ) are the next step up and the next big thing
....i think a builders club has a lot of merit as an idea, many focused minds and hands making light work of the sea of complexity...getting focus is important as it enables bridges to be built that span the inevitable complexity that arises.
the roboecoverse is evolving, species are emerging and undergoing specialization in their particular niche, just as in real life
robo limbs, sensors and brains slowly coalescing into artificial creatures
Re: Open Source FreeBASIC Human Android
Is this a software programming language forum, or is it for documenting your robot projects?
Re: Open Source FreeBASIC Human Android
....last time i looked " software requires hardware to run " , no ?
and as Android hardware is complex & expensive it might a good idea to use a simple and free language to code it up
in case you hadn't noticed , building complex robots is a fast growing hobby.
The first full sized robot in the US
http://www.futurebots.com/walk.htm
Made in Canada
http://www.projectaiko.com/
and in the UK
http://asimov1.wikispaces.com/Utah+Raptor+Android
and as Android hardware is complex & expensive it might a good idea to use a simple and free language to code it up
in case you hadn't noticed , building complex robots is a fast growing hobby.
The first full sized robot in the US
http://www.futurebots.com/walk.htm
Made in Canada
http://www.projectaiko.com/
and in the UK
http://asimov1.wikispaces.com/Utah+Raptor+Android
Re: Open Source FreeBASIC Human Android
...which has it's place in a "building complex robots" forum.in case you hadn't noticed , building complex robots is a fast growing hobby.
Re: Open Source FreeBASIC Human Android
@ Amundo.
The subject of this thread is discussion of the code needed to operate androids. At present the subject has mostly covered the hardware environment. If this topic develops then I expect it will be in the direction of real or virtual structural models. That universal code would be applicable to almost any android, simulation, toy or game.
I agree that it is difficult to keep Tesla on topic, but by confining aberrant posts to a single thread does prevent many small topics that are much more difficult for uninterested members to ignore.
The subject of this thread is discussion of the code needed to operate androids. At present the subject has mostly covered the hardware environment. If this topic develops then I expect it will be in the direction of real or virtual structural models. That universal code would be applicable to almost any android, simulation, toy or game.
I agree that it is difficult to keep Tesla on topic, but by confining aberrant posts to a single thread does prevent many small topics that are much more difficult for uninterested members to ignore.
-
- Posts: 3906
- Joined: Jan 01, 2009 7:03
- Location: Australia
Re: Open Source FreeBASIC Human Android
.
Last edited by BasicCoder2 on May 09, 2012 23:47, edited 2 times in total.
Re: Open Source FreeBASIC Human Android
The code is the hard and time consuming part,
the electronics is the expensive part
and the robot body is the easiest part.
that just about sums it up
A full size android body may be time consuming to construct but its not particularly difficult if you have a vice, hand drill and a saw and other basic tools.
The electronics $ costs are pretty much unavoidable, you need x amount of motor power and it has to be geared down considerably. Likewise batteries are going to set you back a fixed amount. Switching and speed controls are other fixed expenses hard to avoid.
To be frank, the software is a nightmare. Often requiring machine code level of understanding of robo boards.Which is why i avoid them like the plague. I would say this is the biggest stumbling block & why i usually build my own electronics to interface directly with a pc or laptop. I have a stupendously powerful computer all ready why do i want to buy a dinky chip on a board that a $#@$& to code and costs as much as a s/h laptop that's 10x more powerful and comes with a hard-dive screen mouse and keyboard...you cant use a roboboard for anything else but that laptop can be put to work in 101 useful ways.
I think a 'builders club' is the best solution, that way people can share the same code if they are using the same hardware.
If you are using different electronics then your mind software will be different too. The work you do of little use to anyone else which is why i think locking down the hardware so every one is using exactly the same kit.
There is of course the natural tendency of everyone to go there own way...and when they do they realize just how hard it is and simply give up...and who can blame them.....it is really hard.
This is why i think a mental shift is necessary. If you cant make that mental shift then you arent going to be building that android on your own or with others as part of a builders club....if it was that easy you would be doing it already
the electronics is the expensive part
and the robot body is the easiest part.
that just about sums it up
A full size android body may be time consuming to construct but its not particularly difficult if you have a vice, hand drill and a saw and other basic tools.
The electronics $ costs are pretty much unavoidable, you need x amount of motor power and it has to be geared down considerably. Likewise batteries are going to set you back a fixed amount. Switching and speed controls are other fixed expenses hard to avoid.
To be frank, the software is a nightmare. Often requiring machine code level of understanding of robo boards.Which is why i avoid them like the plague. I would say this is the biggest stumbling block & why i usually build my own electronics to interface directly with a pc or laptop. I have a stupendously powerful computer all ready why do i want to buy a dinky chip on a board that a $#@$& to code and costs as much as a s/h laptop that's 10x more powerful and comes with a hard-dive screen mouse and keyboard...you cant use a roboboard for anything else but that laptop can be put to work in 101 useful ways.
I think a 'builders club' is the best solution, that way people can share the same code if they are using the same hardware.
If you are using different electronics then your mind software will be different too. The work you do of little use to anyone else which is why i think locking down the hardware so every one is using exactly the same kit.
There is of course the natural tendency of everyone to go there own way...and when they do they realize just how hard it is and simply give up...and who can blame them.....it is really hard.
This is why i think a mental shift is necessary. If you cant make that mental shift then you arent going to be building that android on your own or with others as part of a builders club....if it was that easy you would be doing it already
-
- Posts: 3906
- Joined: Jan 01, 2009 7:03
- Location: Australia
Re: Open Source FreeBASIC Human Android
.
Last edited by BasicCoder2 on May 09, 2012 23:47, edited 1 time in total.
Re: Open Source FreeBASIC Human Android
you are forgetting that two different arms will behave in very different ways
the speed of movement , the acceleration , deceleration will differ.
for sure this means you cant share code for walking and it can also cause issues for vision software if for example the two different eyes move and track and different rates
Basically if you have unique hardware, you are going to need unique software = you are working on your own
You cant even share vision code if you are using different webcams. The colors will be different , the pixels x pixels may be different, the frame rate may be different. The focal length and field of view will be different etc etc, 101 things will be different between webcam A and webcam B....only the most crudest functions will have any overlap and even then by the time you have added your fudge code to someone elses code you may as well have written yours from scratch.
You could write a monstrous piece of software that tried to cover it all, but unless you have a dozen cameras or a dozen arms or a dozen legs in every conceivable combination all laid out in front of you for testing id say you are on a hiding to nothing.
If you try putting a sheeps brain in a horses body it aint gonna work out to well. The hardware and brainware of each animal or robot is tightly bound. Its just the way it is, and whats true of animals is also true of robots.
Consider this whats the difference between an athlete and someone with motor neuron disease ?
The athletes brainware is tightly bound to the bodyware (muscle memory etc) so you get very high levels of performance, and when that tight binding is loosened up performance rapidly degrades. At best, Fudgecode can only paper over some of the cracks.
http://en.wikipedia.org/wiki/Muscle_memory
The more the software is 'tuned' into the specific hardware the higher the level of performance.....but in doing so you lower the x compatibility of your code should anyone one with different hardware wish to use it
ie The more finely tuned your system is, the more useless your software becomes to other people using different hardware
the speed of movement , the acceleration , deceleration will differ.
for sure this means you cant share code for walking and it can also cause issues for vision software if for example the two different eyes move and track and different rates
Basically if you have unique hardware, you are going to need unique software = you are working on your own
You cant even share vision code if you are using different webcams. The colors will be different , the pixels x pixels may be different, the frame rate may be different. The focal length and field of view will be different etc etc, 101 things will be different between webcam A and webcam B....only the most crudest functions will have any overlap and even then by the time you have added your fudge code to someone elses code you may as well have written yours from scratch.
You could write a monstrous piece of software that tried to cover it all, but unless you have a dozen cameras or a dozen arms or a dozen legs in every conceivable combination all laid out in front of you for testing id say you are on a hiding to nothing.
If you try putting a sheeps brain in a horses body it aint gonna work out to well. The hardware and brainware of each animal or robot is tightly bound. Its just the way it is, and whats true of animals is also true of robots.
Consider this whats the difference between an athlete and someone with motor neuron disease ?
The athletes brainware is tightly bound to the bodyware (muscle memory etc) so you get very high levels of performance, and when that tight binding is loosened up performance rapidly degrades. At best, Fudgecode can only paper over some of the cracks.
http://en.wikipedia.org/wiki/Muscle_memory
The more the software is 'tuned' into the specific hardware the higher the level of performance.....but in doing so you lower the x compatibility of your code should anyone one with different hardware wish to use it
ie The more finely tuned your system is, the more useless your software becomes to other people using different hardware
-
- Posts: 3906
- Joined: Jan 01, 2009 7:03
- Location: Australia
Re: Open Source FreeBASIC Human Android
.
Last edited by BasicCoder2 on May 09, 2012 23:48, edited 1 time in total.
Re: Open Source FreeBASIC Human Android
Adaptive brain is indeed a fine solution to the complex problem
....but unless you are going to write some gargantuan adaptive software you are on a hiding to nothing
trust me, writing that adaptive software is not a trivial task, it might work out for a robo arm with a handful of parameters but for larger more complex systems like an android you are going to be there for a year and a day. The more 'knowns you can 'dial in from the start' the less learning and adaptive fudge code required
Im not saying you cant write a 100% adaptive system, you can....its just a monstrous piece of software when applied to complex systems like full size walking androids. It is viable for simple systems.
If you want to build a highly adaptive system for a human android then you will need even more sophisticated software than what my AI system uses. Ive locked down some of the hardware in order to reduce the amount of fudge code and the associated learning time.
ref I disagree. The biological brain adapts.
we know that is true , but im talking about writing computer code not x billion neurons which require years of training just to walk
you are just not getting what im saying are you ? , you are still fixated on robot arms cos that's all you have built and all you know. A walking android is a big step up an im trying to highlight the issues with this particular system. ' a full sized walking android'
Im trying to help here , but people are just coming in from weird angles and just not getting the big picture.
....but unless you are going to write some gargantuan adaptive software you are on a hiding to nothing
trust me, writing that adaptive software is not a trivial task, it might work out for a robo arm with a handful of parameters but for larger more complex systems like an android you are going to be there for a year and a day. The more 'knowns you can 'dial in from the start' the less learning and adaptive fudge code required
Im not saying you cant write a 100% adaptive system, you can....its just a monstrous piece of software when applied to complex systems like full size walking androids. It is viable for simple systems.
If you want to build a highly adaptive system for a human android then you will need even more sophisticated software than what my AI system uses. Ive locked down some of the hardware in order to reduce the amount of fudge code and the associated learning time.
ref I disagree. The biological brain adapts.
we know that is true , but im talking about writing computer code not x billion neurons which require years of training just to walk
you are just not getting what im saying are you ? , you are still fixated on robot arms cos that's all you have built and all you know. A walking android is a big step up an im trying to highlight the issues with this particular system. ' a full sized walking android'
Im trying to help here , but people are just coming in from weird angles and just not getting the big picture.
Re: Open Source FreeBASIC Human Android
dont let me put you off Basicoder and others
i think androids are so complex ( devil in the detail etc etc ) that you probably do have to actually start building one before you can start to get your head round it all
...im mean, its like you can have an idea what writing a computer program is about, but you dont really know what its all about until you dive in and you are up to your neck
androids might just seem a big robot with extra appendages, but with each addition comes a multiplication of complexity, perhaps its something thats not easy to visualize when you are on the outside looking peering in. This would seem to be the case reading back questions and replies in both my android threads
...theres a lot to learn, and a great deal to get your head around, having worked in this area for decades i am perhaps forgetful of what i have already learned and now take for granted
i think androids are so complex ( devil in the detail etc etc ) that you probably do have to actually start building one before you can start to get your head round it all
...im mean, its like you can have an idea what writing a computer program is about, but you dont really know what its all about until you dive in and you are up to your neck
androids might just seem a big robot with extra appendages, but with each addition comes a multiplication of complexity, perhaps its something thats not easy to visualize when you are on the outside looking peering in. This would seem to be the case reading back questions and replies in both my android threads
...theres a lot to learn, and a great deal to get your head around, having worked in this area for decades i am perhaps forgetful of what i have already learned and now take for granted
Re: Open Source FreeBASIC Human Android
@ TESLACOIL.
Locking down the hardware is a recipe for disaster. Writing code from the bottom up would result in a bloated code monster that would kill the project. IMO you are still thinking too close to the hardware. No one is going to write your code for you. If you want others to help then all the common software must be general and written from the top down, but with runtime interface drivers specific to any particular hardware combination.
We clearly need several modules. They are probably centred on a skeletal engineering / physical model that is capable of autonomous balance. The brain can evolve from a simple directive program to an independent NN over time. A map of the surrounding environment could be read by the brain but be updated from sensor processors. Sensory interfaces will be part of the RTL but will feed messages to the map. All communications can be by messages between the modules. That way they are design and interface independent.
There is no need to have hardware at the beginning. Writing the general software for any android can be virtually tested as a simulation. Only when you have your simulation running need you build the hardware necessary to exercise the code in the real world.
Locking down the hardware is a recipe for disaster. Writing code from the bottom up would result in a bloated code monster that would kill the project. IMO you are still thinking too close to the hardware. No one is going to write your code for you. If you want others to help then all the common software must be general and written from the top down, but with runtime interface drivers specific to any particular hardware combination.
We clearly need several modules. They are probably centred on a skeletal engineering / physical model that is capable of autonomous balance. The brain can evolve from a simple directive program to an independent NN over time. A map of the surrounding environment could be read by the brain but be updated from sensor processors. Sensory interfaces will be part of the RTL but will feed messages to the map. All communications can be by messages between the modules. That way they are design and interface independent.
There is no need to have hardware at the beginning. Writing the general software for any android can be virtually tested as a simulation. Only when you have your simulation running need you build the hardware necessary to exercise the code in the real world.
-
- Posts: 3906
- Joined: Jan 01, 2009 7:03
- Location: Australia
Re: Open Source FreeBASIC Human Android
.
Last edited by BasicCoder2 on May 09, 2012 23:48, edited 3 times in total.