Thread: Artificial Life: Where to Start?

  1. #1
    Registered User
    Join Date
    Jul 2007
    Posts
    21

    Artificial Life: Where to Start?

    Hello all,
    I have some concepts for artificial life experiments that I would like to implement. However, I know next to nothing about the actual implementation of artificial life programming. Notice I say artificial life and not artificial intelligence, they are two very separate things in my mind. By artificial life I mean non-sentient (maybe eventually sentient, who knows...? but not to begin with) beings who are capable of self-replication, self-defense, and resource allocation, and eventually self-organization...Now I understand that it's a conceptually difficult, not to mention technically difficult, experimental field to begin in as well as to be successful in. So all I'm asking is this:

    Where do I start? That is to say, where can I find suitable source code for simple life emulation programs? The only thing I've found so far has been certain Java classes for pre-existing Alife like floys. I guess what I'm looking for is a tutorial or small examples with explanations...

    Is C++ a suitable language for artificial life? From my novice perspective it seems that it should be, being object oriented and all.

    Is there a good site that thouroughly explains genetic algorithms? After the beginning stages I'd like to eventually be able to implement genetic algorithms, or something with equal functionality, if such a thing exists, for an evolutionary approach to artificial life.

    Any information is of use to me so please, whatever suggestions or clarifying questions you may have, post away!

  2. #2
    Its hard... But im here swgh's Avatar
    Join Date
    Apr 2005
    Location
    England
    Posts
    1,688
    Im not a really a C++ guy but I would say C++ is a good choice as you could encorperate the expericent as program objects. You say you have seen some code in Java, well that uses Object Orientated ideas, so C++ would be an ideal language to use if you liked the Java concept of it all.

    Only my two cents but others will be able to help you better Good luck with your endevors
    Double Helix STL

  3. #3
    System Novice siavoshkc's Avatar
    Join Date
    Jan 2006
    Location
    Tehran
    Posts
    1,246
    Why not googling?
    Learn C++ (C++ Books, C Books, FAQ, Forum Search)
    Code painter latest version on sourceforge DOWNLOAD NOW!
    Download FSB Data Integrity Tester.
    Siavosh K C

  4. #4
    C++ Witch laserlight's Avatar
    Join Date
    Oct 2003
    Location
    Singapore
    Posts
    28,412
    Moving this thread to the AI board as it seems that artificial life is related, though different.
    Quote Originally Posted by Bjarne Stroustrup (2000-10-14)
    I get maybe two dozen requests for help with some sort of programming or design problem every day. Most have more sense than to send me hundreds of lines of code. If they do, I ask them to find the smallest example that exhibits the problem and send me that. Mostly, they then find the error themselves. "Finding the smallest program that demonstrates the error" is a powerful debugging tool.
    Look up a C++ Reference and learn How To Ask Questions The Smart Way

  5. #5
    Unregistered User Yarin's Avatar
    Join Date
    Jul 2007
    Posts
    2,158
    I have made AL simulations before, I used "creatures", and they where in a simple 2D world, looking from above. Something I would disagree with is that AL is not AI. IMO AL is just a type of AI. C++ is actually a very good lang to use for AI (including AL) programming, maily because it's generaly a high-level lang making it easier to preform simpler binary operations in C++, nice for genetic algorithims.

  6. #6
    Malum in se abachler's Avatar
    Join Date
    Apr 2007
    Posts
    3,195
    Artificial Life is not an 'experimental' field, its been around for nearly a century.

  7. #7
    Registered User
    Join Date
    Jul 2007
    Posts
    21
    A statement like that really shouldn't be acknowledged, but since I started the post it is only a responsibility to answer. I fail to see in what way the multidisciplinary field so generally called "artificial life" is not experimental. How does time have anything to do with current research in a field? Physics has been around for centuries yet new discoveries are made everyday. Would you argue that physics is not an experimental field? Following that line of thought, ANY science for that matter can be said to be experimental. Only those who choose to stop learning and believe they know everything there is to know about a subject would agree with you in saying that artificial life, or any topic of current research "is not an experimental field."

  8. #8
    The Right Honourable psychopath's Avatar
    Join Date
    Mar 2004
    Location
    Where circles begin.
    Posts
    1,071
    I think it depends on how you interperet "experimental". For example, the subjects studied in the feild of physics are experimental, but physics itself as a field isn't.

    Makes sense to me anyway .
    M.Eng Computer Engineering Candidate
    B.Sc Computer Science

    Robotics and graphics enthusiast.

  9. #9
    Registered User VirtualAce's Avatar
    Join Date
    Aug 2001
    Posts
    9,607
    I'm going to research these algorithms just as soon as Spore comes out. Call it...homework.

  10. #10
    Registered User
    Join Date
    Sep 2007
    Posts
    22
    Man, I'm looking forward to spore!

    On AL though, how would one normally expect to "store" the intelligence?

    If you have one creature in a program and you have it set up to learn to avoid walls for example because walls are dangerous to it, are you expected to keep the program running constantly and store data in variables, or can you store it elsewhere like a text file? - is a text file ideal? robust?

    ok it sounds stupid, but i am asking at a high level just where do you store the intelligence?
    Last edited by goatslayer; 09-12-2007 at 07:03 PM. Reason: subscription to thread.

  11. #11
    Registered User
    Join Date
    Sep 2007
    Posts
    22
    Although unrelated, in another thread I created on this post twomers suggested SQLlite, which also looks like a nice solution to my question above.
    http://cboard.cprogramming.com/showthread.php?t=93603

  12. #12
    C > C++ duders ggs's Avatar
    Join Date
    Aug 2001
    Posts
    435
    this is a really old topic so theres probably no chance the original poster will read this, but a high level language like scheme is a better choice for this than c++
    .sect signature

Popular pages Recent additions subscribe to a feed

Similar Threads

  1. C++ gui for windows where to start
    By prixone in forum Windows Programming
    Replies: 2
    Last Post: 12-16-2006, 11:48 PM
  2. GNOME Desktop won't start (Mandriva)
    By psychopath in forum Tech Board
    Replies: 10
    Last Post: 07-19-2006, 01:21 PM
  3. WHEN to start game programming
    By mrcheesypants in forum Game Programming
    Replies: 18
    Last Post: 02-02-2006, 04:09 PM
  4. Where to start ?
    By Necrofear in forum Windows Programming
    Replies: 6
    Last Post: 12-02-2005, 02:44 PM
  5. Need help from experts to start game programming
    By cader in forum Game Programming
    Replies: 8
    Last Post: 11-29-2005, 12:48 PM