Ok, so i was think, it may take a big big while. but artificial intelligence, or false artiicial intelligence is not Impossible.
But, i wonder, would "learning new things" be able to work with arduino? as im sure internal storage data is limited.
How about storing data to a USB stick?
would that work?
If you want to have any shot of doing it on a 328-based Arduino (or a better shot on a Mega) - try to find copies of these books by David L. Heiserman:phoenixgarage.org - Robot Intelligence: An Interview With A Pioneer
That's a link to my site where I did a small interview with him; his books and the ideas within are an interesting starting point for this kind of work. For one, it's a methodology that is fairly simple to implement, yet yields very complex behaviors (even simulated). Secondly, I don't know that much research was done using his systems, so it might be an interesting niche to play around in, that might yield some useful surprises. Third, because these books were mainly written in an era where home computers were slower than the Arduino (much slower) and tended to have around as much memory (although it wasn't a modified Harvard architecture like the Arduino - so there is that limitation) - it should be possible to implement the algorithms on an Arduino in some manner.
With that said - you'll be fighting against a couple of things: RAM limitations (though a Mega would get around this mostly - and perhaps an SD card memory storage could be used for some things), and the fact that the programs listed in those books are either in a variant of assembler (for whichever processor du jour each book uses - likely a 6800 or 8000-series, or possibly a Zilog Z-80) - or in an old form of BASIC (no indentation, GOTOs everywhere, spaghetti code heaven). Wrangle your way past these obstacles, though - and you could potentially create something mighty interesting!