|
-
Sep 13th, 2002, 10:50 PM
#1
Thread Starter
Hyperactive Member
I have a real cool project idea: simulated life and practical!
How many of you ppl have tried seti at home? Well what it does is takes every users power to search for aliens. For my idea I need someone who knows about neural nets to help me. For those who don't know what a neural net is, its a program that simulates the human brain. The reason we don't have computers that develop there own personality and stuff is because in order to get to any type of intelligant thinking you need at list 1,000,000,000(I think) neurons(virtual) and a computer would have trouble running that in real time. I was thinking that I could set my computer up as a server. It would have a simulated robot. The robot would actually be on the computer in a 3d world. When a computer signed on in the screensaver(it would need to be connected to the net) it would simulate a certian number of neurons. When it signed of it would adjust the weights of the neurons below so no data is lost. Since a neural net needs a goal, the goal would be to make the score 1 above the current value. The score would go down if the robot/virtual robot bumped into something hot, sharp, etc. The score would go up if the robot found food, electricity. Also, the screen saver would show you seeing through the robots eyes. When it wasn't a screen saver, you could sign in as a client. You would basically be a person from the robots perspective. You could scold it for lower score, praise it for higher score, make the world more complex... The robot would have the following scense:
1. Sound
2. Vision
3. Heat
4. Touch
It would have the following output:
1. Sound
2. Motion
Basically with enough users/time it would posibally learn english if users talked to it in chat(simulated sound but typed)/ microphone.
I need help with the following:
1. Neural net(can't figure out how to make one although I have researched)
2. GUI(Can't do that for beans)
3. some type of advertising(more computers, more neurons)
4. I could do the networking part.
Any help I would appriciate.
Who wants to join:
post here
and/or e-mail me at [email protected]
-
Sep 15th, 2002, 07:46 AM
#2
Fanatic Member
hmmm...
this seems a good idea, but the learning english thing might be hard. However, if you got people talking to eachother instead of to the "brain", then this would be good too.
Just a few problems problem. Say you have 1,000,000 people using it and another 1000 people join. How do you decide which neurons should swap between the old users and the new ones.
Also, say it is a slow day, only 1000 people with 1 million neurons each. What will happen if one of these people is running a 2GHz, and another guy is running a 500 Celeron (like me, hehe). Does this part just think slower than the other???
But, if these turn out to be no problems, then sure i would love to help, probably in making the world it moves in.
Actually, if u wanted to start on something simpler, have people run a screen saver of the 'robot' which plays itself/the user at chess or another game, and slowly learns tactics. Then you could train it to be a deep blue maybe
sql_lall 
-
Sep 15th, 2002, 11:08 AM
#3
Thread Starter
Hyperactive Member
Problem Ideas...
First of all, each computer will simulate a layer. A neuron simulation looks like this
Input Layer(Where inputs such as sensors) are put in as number values
Hidden layer 1(A computer)
Hidden Layer 2(Another computer)
etc.
etc.
Output Layer(Where the output/motor system control occurs)
If you add a new computer/user, it becomes the last hidden layer and the output layer is moved down again. In this way, it doesn't effect the input of already trained layers and learns quickly. Also, each computer will simulate a certain number of layers based on its speed so: a 2GHZ system might simulate 5 layers and 500mhz might simulate 1 layer so that, the 500 won't slow the system down...
I like the idea of people talking to each other "In front" of it. If you help, what section will you help out with? If theres something you can help with that I haven't menchond please say so...
-
Sep 15th, 2002, 12:29 PM
#4
Thread Starter
Hyperactive Member
Bye the way,
A high end computer such as 2.4ghz intel/ 1.8 amd atholon might simluate 3000 neurons, 1,000,000 is about what a super computer could handle...
-
Sep 16th, 2002, 06:21 PM
#5
New Member
it's an interesting idea, but i can spot some things that are not clear to me:
First of all, you shouldn't be so sure that a neural network is ALL that it takes for intelligence to come up. This is not so clear to me, I would like to see it in front of my eyes to believe that it actually "behaves intelligently" (we should pay attention to what that means). However it would be an interesting experience.
Second, what do you mean by adjusting the weights so that no data is lost?? The weights are for connections between the neurons. If you keep on adding/subtracting neurons to the network you will never get a stable behaviour. The reason is that the weights are adjusted so that some specific cells (tose in last layer) behave as expected. But that doesn't mean that the previous-to-last layer will behave coherent to your expectations. A network may be trained and working fine if you look at the last layer, and it can be completely dumb if you expect results from the previous-to-last layer.
Third, how do you evaluate an "intelligent" behaviour?? To keep asking for a higher score is not enough, since the learning process (for a feed forward network) is supposed to be "convergent", that means, that after a finite number of steps the weights do not change anymore. Then you say the network is "trained".
Fourth, notice that feed forward networks (one type of which is the layered network you propose) are not the only kind of networks that are useful. Those are used for recognising (better said, memorising) images that may have some noise, or other stuff like that... but very different types of networks are used for other purposes. For example, we have Boltzmann Machines, that never end training, input cells are the same as the output cells, they are not deterministic, and off course, not layered, but feedbacked! Those are used for recognising patterns and sound.... This is the reason why I think you should combine the power of many available models if you expect to create something "intelligent".
Fifth, the distributing layers among computers is not efficient. Imagine you have 10^9 neurons, and each layer has 1000 neurons. That means a million layers. Fine. Now you want to compute the reaction to a stimulus. This involves a million computations and a million communications from one PC to the next. I guess the answer would take too long to come up.
I don't see how do you improve this without reorganising the distribution. I don't know anything about distributed computing, but you should divide the network into smaller parts that are minimally connected to each other and use those as computing units (just a guess)
I hope to have put some light into the problems you might face. I think it would be useful to ask a specialist in neural networks to tell you what can you expect form each design (there are countless ways of organising a neural network)....
don't give up! I'll help as much as I can (which is not much!)
regards
-
Sep 17th, 2002, 05:11 AM
#6
Fanatic Member
OK, just 1 more thing...
You said that the computer would 'try' to get more points. How would it know if what it is doing would help it get more points. Surely this would involve some sort of logic reasoning (i.e. last time i did X i lost points, so i won't do X again.) Surely this just gets rid of some learning aspects. (like it might think 'i tried to open this door, but i was unsuccessful, so i won't try to open it any more, as this will loose points). Kind of getting rid of the 'no pain, no gain' mentality, as the AI will try not to have 'pain'.
BTW, i maight be able to help out with the GUI, like making some of the 'world', stuff like that.
sql_lall 
-
Sep 17th, 2002, 09:10 AM
#7
umm do you plan on making this virtual brain in VB???
-
Sep 17th, 2002, 09:43 AM
#8
New Member
I hope not! I think C++ is the best choice.
The "learning rule" is the one to decide how to change the weights of the connections to resemble an inteliggent behaviour, but that is specific for each kind of network. The point is to keep comparing the actual results with the expected results and update the connections on the basis of the committed errors. However that is not too general since some networks may have very strange learning rules. This is a tricky point, since you should train the network in order to learn some expected skills, but if you want it to learn the general facts you sould not insist too much on very specific things since then it learns the particular facts about the problem, not the "big picture".
Besides, it seems that the learning machine would never end training, but that means (for most kinds of networks) you need an infinite set of inputs and expected outputs. Otherwise you won't be able to compare and "teach".
-
Sep 11th, 2003, 05:04 PM
#9
Frenzied Member
this sounds interesting....
i dont think you could be able to make it learn english, but the points thing sounds good!
if you need any help, im on it! 
i have experiences in c/c++ and vb (planning on learning some asm too).
-
Sep 11th, 2003, 07:03 PM
#10
Thread Starter
Hyperactive Member
As far as I go, the project is dead, but if anybody smart enough wants to do this, its fine with me.
-
Sep 17th, 2003, 07:20 PM
#11
New Member
Well perhaps we could target a smaller project. I once made a limit neural net in VB that was build of roughtly 500-1000 neuron wich ran fine on my 500Mhz. So I opened up Yahoo blackjack and started training it manualy, after 5 hours it started hiting 50% or slightly over 50%. What was amazing is that it told me to hit on card number such as 20 and I ended getting a ace and the number of time that happened was very interesting.
But as far as the project goes I'm sure it could be done with a single quantum computer since quantum computer are good in exponentiel related computation where a quantum algorythem could easly computer a superposition of all the neurons in a few computation cycle, probably very limit for the first silicon quantum computer "suposed" to come out in 2010 *caugh*BS*caugh*.
-
Sep 23rd, 2003, 02:59 AM
#12
Fanatic Member
couldnt you teach it the english language with a dictionary. as you can tell if you open up a dictionary and read a word, then the definition, then each word in the definition, it all loops back to 1 things, so each word has the meaning of like 5 different words, so having it understanding something wont be the problem, but having it give some sort of output would be the problem. also i tried to find some sort of dictionary in a database form but could never find it ;]
-
Oct 2nd, 2003, 09:09 PM
#13
Frenzied Member
can someone explain to me how these neural nets programs work...just a really simple explenation...maybe an example code too...that would be really nice
-
Oct 8th, 2003, 01:50 PM
#14
Hyperactive Member
You might want to start out with a more simple goal. Like playing Checkers or something like that, and then go for more.
Or maybe you could make it learn how to talk in chat room.
And for having a robot that moves around in a 3D world, you might want to make some way that you would be able to interact with it, and show it how to do stuff.
Keep some kind of a layer between the neural net (brain) and the robot that moves in the 3D world. It would make it easier to eventually create a real robot in the real world.
Those are just some thoughts. I would like to help, if I could. I have to learn a bit more about neural nets first.
Sounds great, dont give up on it. If accomplished it would definately be an advancment in Artificial Intelligence.
I think it would be cool if if were written with C#.
-
Oct 8th, 2003, 09:32 PM
#15
Frenzied Member
i can write some dll's in c++....it will sure be fast!
i only need some help on how to program neural nets, cus i haven't done it before!
i just need a reeeeeeally simple example to get started! thanks!
-
Dec 4th, 2003, 07:42 PM
#16
Addicted Member
cool project
Good luck that is a dam hard project that will be groundbreaking research in many fields that will amaze most Computer scientists. If you succeed post the results, if they arent already on t.v
Posting Permissions
- You may not post new threads
- You may not post replies
- You may not post attachments
- You may not edit your posts
-
Forum Rules
|
Click Here to Expand Forum to Full Width
|