views:

354

answers:

9

Is there any open source project that is trying to implement and emulate the human brain and feelings in a computer software?

I believe in the future artificial intelligence technology and I always wanted to contribute to this technology and learn about it.

Thank you.

A: 

You could have a look at Cyc:

Cyc is an artificial intelligence project that attempts to assemble a comprehensive ontology and knowledge base of everyday common sense knowledge, with the goal of enabling AI applications to perform human-like reasoning. The project was started in 1984 by Douglas Lenat at MCC and is developed by company Cycorp. Parts of the project are released as OpenCyc, which provides an API, RDF endpoint, and data dump under an open source license.

Not precisely a brain, but an important component of an articifial intelligence.

Peter Westlake
Cyc is the prime example of a controversial AI project. It's been "in development" since the 80s, and as far as I know, it's still not actually being used by anyone for real-world tasks.
Chris S
+6  A: 

We don't know enough about how the brain works to attempt to do what you're saying in a principled way. (I.e., anything of the sort is "guessing wildly".) So this isn't really a software question--if we had any idea of what to write, perhaps it would be, but right now we don't.

However, you may be interested in the Blue Brain Project for a more biological approach, or in any of a number of machine learning projects like the DARPA Autonomous Vehicle Grand Challenge. A less useful but more conversational approach might be found in ALICE, but I wouldn't recommend that for anything useful.

Rex Kerr
+5  A: 

Having used a brain for over 50 years, it's the last thing I'd choose to model an AI on. Brains are notoriously unreliable and arbitrary, and have hidden biases that could take a shrink years to sort out.

Hugh Brackett
Brains are still many times better at vision, audio, parallelism, and language comprehension than computers. That seems a pretty good reason to try an simulate a brain.
Robert Davis
Simulate what? As Rex Kerr pointed out, we don't know how the brain does any of those things. When I throw a tennis ball and my dog catches it in mid air, nobody can say how his brain manages that, nor how mine threw the ball where I wanted.
Hugh Brackett
+2  A: 

Most of the AI lectures I took in school were by professors who had been chasing the dream of "strong AI" for years, and had finally realized that if they could barely understand how a human brain and mind function (and the theories behind these functions sometimes change almost daily), how could they ever hope to simulate it artificially? Most of them were resigned to AI in niches where the problem is more clearly defined: pathfinding, applications of SAT-solving, image processing, chess-winning, conversation, etc... but they'd given up on the true, general-purpose "thinking machine".

My advice would be to look into a specific problem are that you are interested in (such as pathfinding; applications of SAT solvers, such as diagnosis systems; etc...) and see what AI approaches have been taken to solve them. Maybe the problem you are interested in doesn't have much in terms of AI solutions. In that case, you could get started on a new one! ;)

...But you will probably have to narrow it down to a specific class of problem if you don't want to be overwhelmed - at least at first.

FrustratedWithFormsDesigner
+1  A: 

The field you're looking for is Machine Learning. Specifically evolutionary algorithms like Genetic Algorithms or Genetic Programming. One algorithm that I know that specifically set out to mimic the human brain is Hierarchical Temporal Memory which I read about here. But this is a very difficult problem and we are still YEARS away from mimicing the human brain in any meaningful way.

Robert Davis
A: 

There is a field of computer science known as Organic Computing http://en.wikipedia.org/wiki/Organic_computing Some of the goals of this effort are to have the following.

  1. self-organization
  2. self-configuration (auto-configuration)
  3. self-optimisation (automated optimization)
  4. self-healing
  5. self-protection (automated computer security)
  6. self-explaining
  7. context-awareness
James
A: 

The closest possible thing that I know to this would be the Watchmaker framework. While not related to the human brain, it does seem to strive towards an AI-type framework.

http://watchmaker.uncommons.org/

The Watchmaker Framework is an extensible, high-performance, object-oriented framework for implementing platform-independent evolutionary/genetic algorithms in Java

Frank V
+2  A: 

Jeff Hawkins the author of "On Intelligence" has a company called Numenta. He has a theory on how brains work and Numenta has a software product that models it. I downloaded and played with it a while ago, it seems to be pretty good at image recognition. I am not entirely sure what the licensing is though, I believe it is free for academic purposes. Also, the website appears to be down at this time.

http://en.wikipedia.org/wiki/Numenta

http://www.numenta.com/

aceinthehole
+1  A: 

There are algorithms which model the human brain. They're called Artificial Neural Networks (ANN). They basically model the synapses and attempt to model the way in which our synapses can accept signals and, if the combined signal input is strong enough, fire their own signals along dendrites to other synapses.

The thing is, building ANNs as a method of attempting to simulate the real thing, is a lot like using a nuke to simulate the sun; Sure, it'll give you some valuable data, but, in terms of its ability to approximate that which it's modelling, it falls WAYYY short.

I'm not 100% positive on the relative scales here, but to give a decent idea, consider the following (this is definitely going to be off by a few orders of magnitude... but it's close enough to get an idea of why ANNs aren't running the world for us):

If you took every single computer on the planet and had them using every single available resource to create the largest ANNs they could, and then connected all those different ANNs to each other (thus creating an even larger ANN) you MIGHT start to get close to the number of connections present in the human brain.

Havok
Neural Networks are facinating, but the last time I looked at them there was no easy way to DESIGN them for complex, real-world tasks. It seemed that the design process was more trial and error. Part of that was probably because even though you are supposed to train them from a training-set of data, the initial set of weights is often randomized.
FrustratedWithFormsDesigner
Yeah, neural nets are tough to deal with. When I was learning about them in my undergrad, I was told a story. It may not be true, but it outlines another issue with neural nets: choice of training sets.The story involves an expensive government project to train a neural net to determine if a tank was present in an image. It worked beautifully on the training data, but failed miserably on the test data. The post-mortum revealed that in the training images, it was a clear sunny day when they took pictures with tanks, and cloudy when they took pics without. The test pictures had mixed weather.
Havok
(sorry for the double post - ran out of characters) So, basically, the system learned to tell the difference between photos taken on cloudy days and on bright sunny days.Now, an active ANN researcher will likely cry foul here, but this is my assessment of ANNs - They make fantastic classifiers. They're highly fault-tolerant and can easily deal with noise. But in terms of their potential for creating something akin to skynet... I wouldn't hold my breath; The field of AI has been 25 years away from being able to build something that could consistently pass a turing test for over 40 years.
Havok
ANNs don't model the brain. They model the neurons in the brain. As others have mentioned, going from an ANN to a human-like brain is no trivial task, if even possible.
Chris S