Added: 4 years ago
From: ravivyatom
Views: 53,850
Sort by time | Sort by thread (beta)

Link to this comment:

Share to:

All Comments (86)

Sign In or Sign Up now to post a comment!
  • Ho Yes. :) . I believe in it.

    Thank you for your response.

    

  • nice. i'm building my own right now with java. this is some powerful shit - do you have any plans for actually applying it to solve real life problems?

  • So eventually they learn to chase the food? :D 

  • Yes, it is. most of it.

    I played and changed the algorithm a little bit.

    I also made a game of two teams, one team - predators and one prey. both evolving.

  • Isn't this just the 'tank-example' with a fish picture instead of a tank?

  • @otoparc yeah his just ripped it off 

  • Fish are dumb.

  • How do the fish "know" where the food is?

  • @tyebillion I've made programms like that, and I used a "vision system". Obviusly each fish must scan their environment... For instance, using a function with a packed information about "how the world is" in a cercle centered in the fish, that gives a number-direction as output...

  • Now stay with me on this, its 2011, we can simulate evolution inside a pc.

    what can we do in 3011, simulate entire worlds? Maybe galaxies or even an entire universe, can we simulate life, and even more important, consciousness? I think we can :) But... maybe this is already happening. So maybe our universe is just a simulation, and we are going to simulate a universe with people and everything inside it.. And are they going to continue this process? My mind can't handle this

  • @timen1986 i simulated your mom's tits last night.

  • Where is your god now?

  • How does the neural network (NN) learn? Just by always taking the best fish from one generation to the next and combinationg them?

    Or does the NN also learn during a generation is alive, so that the synaptic weights are changed everytime a fish has success getting some food?

  • ok i think i understood it now: there was a random NN (neural network) which does not change during a life period of a fish. But each new generation, just the best NN are taken and combinated and after some generations, you get an intelligent NN. Really nice way to create an intelligent NN!

  • @0xBEAF

    :)

  • @0xBEAF :)

  • This is WAY overly simplistic.

  • This is really cool. What sort of "parameters" does each fish have that is randomised at the beginning, and evolved as the generations go past?

  • @FalconPunchTheFail hi

    The parameters are the values of the neural network that reacts to location of the food.

  • I'd really like to see the new killer fish being placed among some of the more primitive ones :)

  • I just posted a video response I created a while back. I did something similar to this but I did a comparative study of genetic algorithms and particle swarm optimization. I rewrote the engine using C# and XNA game studio.

    All the details and a download link to the source can be found on my blog, found in the description of the video response.

  • Neat!! I have messed around with this program a little. I tried to make the "fish" aware of each other. I did this to stop the clustering.

    The result was they all just stared to swim in strait lines.

    I think i deed a better GA algorithem

  • @ailm96094 i have a similar program (except in mine they are ants :D) and I too tried to make them aware of each other. What I did was add 9 inputs, 3 for each of the 3 closest ants. In two of those 3 i input a normalized vector with the direction of the other ant relative to this ant's position, and the other input was set as the (relative) distance, i.e. the farthest of the 3 closest ants will have a value of 1 while those closer will have a smaller value... it seems to be working

  • I created something similar to this in garrysmod, a lot more primitive, it mainly had to do with each organism having attributes and based on those they would survive or starve. Anyways, one day i had let it run for 6 hours, when i came back (about 10000 generations later) they have maxed out all the bounds i put in.

  • Could be great desktop theme... simple but at the same time actions behind look ... complex. Combined it will engage interest and catch concentration.

  • I can see that the purpose of Genetic algorithms is to real life problems having to deal with the economy or consturction but i've always enjoyed tinkering and discovering and i'm guessing that the randomness of reproduction and the fact that not always the best with reproduce has not been taken into account in these types of simulations. have they?

  • @hellotoyouandmeandyo hi

    They have been taken into account.

    Some times the best ideas are in the weak creatures.

  • @hellotoyouandmeandyo they have.. for instance in the begining they dont differ much in capacities being all virtually dumb.. however a slightly better one may not be selected because the food is ramdonly distrbuted..so a lucky worse fish can end up eating more..

  • I'm trying to recreate this in C# with XNA, but its not working at all and I donno why. For me eventually all the fish just start moving in the exact same way even though they are all receiving different inputs =/

  • @RAWRimaTroll I had a same problem. Then I realized I am sending different type of information on inputs. Position of the fish and directionto food (or something like that) seem to be incompatible. :) This helped a lot, my fish are now much more clever :D

  • @micmicmic7 haha yeah I actually just figured that out a couple days ago. My fishes are swimming very well now.

  • You misunderstand the idea of NNs. They must learn themselves! GAs are used in case the subject cannot learn itself. You do not understand anything! :)

  • This is a nice video to show beginning students.

  • If you coded it into the NN that fish could 'see' other fish within a proximity, it would be interesting to see how they responded. Would they fight for the food, or split up and avoid potential starvation.

  • Generation 2400: The fish become self-aware. In a panic, they try to pull the plug.

    The fish fight back.

  • Hi man, I'm starting to learn about AI, Neural Networks and Genetic Algorithms. What kind of NN do you use for your fishes? what is the fitness criteria to spawn new generation? Thanks a lot man.

  • @alpha44890 Hi

    welcome to the real world, myte.

    i used simple feed foreword NN.

    The fitness is the amount of food the fish eat.

  • @alpha44890 The end of the video mentions it's based off of ai-junkie's fish tutorial demo which illustrates one of the simplest types of NN, and it looks like the fitness is the number of "food squares" touched within a set time limit each generation.

  • question, i like your video i was wondering if u can help me with a question i came up with an idea lets say there are two pc's ,in pc 1 there are three box's that are out putting letter from a-z box=f box=r box=w the next set of boxs box=h box=l box=x box 2 a-z box-3 a-z is it possible to see what pc 1 is out puting then take that info and manually in put it into pc 2 then could pc 2 know where pc 1 is going and what pc 1s next out put would be before it comes out
  • i am not sure i understand. something like pc reading the "mind" of onether?

  • @ravivyatom friend is it possible for me to access this program to play a bit for the purpose of watching evolution unfold?

  • @132BigBoy hi, idont think i have this code any more...

    sorry friend

  • @ravivyatom

    cry

    

  • @ravivyatom oh ok..shame man it is a very decently build one :(..take care

  • very nice :)

  • this is excellent to optimize training neural networks. thanks. plus the fish learn to swarm in schools as a survival mechanism. that's excellent. just like real fish, amazing, survival of the fittest

  • Im doing something like you, but with sheeps and wolves.

    The more sheeps a wolf eat, the better is the wolf;

    The more time the sheep stays alive, the better is the sheep;

    And im not giving the relative position, once its easier for wolves/cheap learn.

    PS: im using cartesian coordinates =P

    Nice video, you inspired me to do this, thx :D

  • Hello, I have written a few evolution simulations to get the best approach for something, but have never tried programming neural nets. How do they work and learn?

  • Also, could you provide a link to downlaod your software? Thanks.

  • Nice programming :) I've made a few like this too!

  • Thanks,

    What kind of applications?

  • Evolution simulators,

    I made creatures with boxes as hands which they catched food with... after a while they evolved really big hands, and other stuff which made it easier for them to catch food :)

  • I will love to see it :)

  • Maybe I'll upload a video. :) But, I don't know how to record it :O

  • try jing

  • add them the possibility to eat eachother :D

  • could you make it more dynamic? i mean for example let a fish have an energy level which increases if he got a piece and decreases over time and let him spawn ancestors if he got 4 or 5 peaces and let him die if his energy level is below 0 .. i think that would be more realistic and more interesting to watch :) that way you dont need hard coded "generations".. i assume that wouldnt take much time todo..

  • additionally there is a very strong selection pressure if there doesnt spawn many pieces :)

    i am currently writing my own evolution simulation which is pretty complex i think :) i will post videos as soon as it works and produces interesting results

  • This is a great idea.

    I just dont have the time for it at the moment

    thanks

    Raviv

  • Not bad. Allow for darwinism and social interactivity between creatures and i'll be impressed.

  • can someone help me out, metivity/ai-junkie have helped explain the overall concept but i cannot find help about how to assign good traits to bits and little things like that, any sources

  • Hey, very nice program you've made there! I have some questions, just of curiosity:

    Is the learning rate fixed?

    How many hidden layers are there? (and hidden neurons?)

    Are you using the "momentum learning" algorithm?

    cool stuff anyways!

  • hi, thanks

    There is no learning rate because the nets are shaped using genetic algorithms.

    I think it was 6 layers or something.

    I didn't use the "momentum learning" algorithm, Thanks for the question, I learned something new today.

  • You can also add position of K nearest other fish, so fish could to chose direction where there isn't much competition, what do you think, about this ?

  • And also add position of more, then one nearest piece of food, so fish could swim, to place, where tthere is highier density of food. At the end you could compare, in one environment, this fish with extended capabilities with the simpler ones. In what programming environment did you wrote this ?

  • thanks for the ideas.

    its great ideas, and some of them i tried.

    I just continued to other stuff...

    Its in visual c++ 6.0

  • Frankly, this isn't your program. This is only a Smart Sweepers v1.0 modification. Everybody can download the original program and it's source code from ai-junkie. And it's not difficult to change the tanks to fish and modify the application's title.

  • no argument...

    I give him the credit at the end of the clip

    I added a lot more than just replacing the tanks

  • Good Work, do you have any book about neuronal networks that you can recomend me?

  • try this one

    An Introduction to Genetic Algorithms

    Melanie Mitchell

  • how about coding in hunger and lifespan so that in one way they want to get the food to take down hunger and as hunger gets higher aggression kicks in, but if hunger is low then they drag other fish of the same colour to the food which could then increase the speed and health and lifespan of that species, helping others of the same colour could increse chance of mating, agression against fish of other colours (I swear im not racist lol) could increase as hunger does, killing = natural selection.

  • are they able to recognize other fishes ? would be interesting if they develop some kind of group behavior :)

  • sorry just read the description.. how many neurons did you use?

  • i did some sessions of the fish connected together.

    it was very interesting.

    I hope i get time to put it on.

    and i dont remember the number of neurons i used...

    sorry bout that...

    take care

  • How do you breed the fish to create new ones?

  • Did you use any learning algorithms other than Evolution?

  • In this application - only evolution.

  • should find a way to give them a longer lifespan in order to teach them.

  • Haha, nice =)

  • Thank you for your words

  • amazing! what kind of network model did you use?

  • It is a Feed Forward Neural Network.

  • hey, thank you! this is really impressing!

  • nice. how long did this take?

  • i think 2 days

  • yeah

    crowded house

    love them

  • Is this music Liam Finn?

  • Is there any way to download this? I would love to experiment with it.

  • This is a simple modification from Matt Buckland's C++ source code. Instead of tanks you've used a fish shape.

  • The credit goes to Matt.

    I wrote the crossover and selection methods.

  • i downloaded a program similar to this, where ants need to return pieces of food to a bases area, it uses neural networks too and i noticed that in the beginning of your program, the fish act similarly to the ants, spinning around, and after a while they act more synchronized, amazing how they do that

  • Really interesting work, could you please tell me what parameters can evolve?

    Do you already have a pre coded pile of logic that if put together would form the perfect killer fish?

    Meaning you randomize what logic the fish can have and each generation the logic that suits the world best survives to the next generation?

    If this is not how it is done, is it possible to explain how the logic evolves :) Hopefully I'm not asking you to break NDA

    Thanks

  • make a fish eater, a bigger fish who can't eat food bits but can eat other fish, :D fish would evolve to avoid the fish eater and the fish eater would evolve to eat the better fishes

  • thanks for the offer.

    I have played with it.

    I have done two groups of fish.

    Predators and prey.

    The results were interesting.

    There was a trade off of evolution between the two populations.

    I might make a movie of it too.

  • i'd really apreciate if you did

    great job

  • please tell more

    does a fish have a kind of sensors to detect food?

    or how he know where he have to swimm?

  • please read the info. i added some stuff.

    thanks.

Loading...
Alert icon
0 / 00Unsaved Playlist Return to active list
    1. Your queue is empty. Add videos to your queue using this button:
      or sign in to load a different list.
    Loading...Loading...Saving...
    • Clear all videos from this list
    • Learn more