Really?
The only methods for achieving working Artificial Intelligence that I know of include creating hundreds and thousands of libraries and functions that do very simple but useful tasks like decision making based on current state, understanding the content of certain sentences, being able to respond to certain sentences and most importantly, being able to learn.
To learn is to acquire data, process it, understand it's content, and save it in some database, but what's difficult is knowing what data to process, understand and index, and what data to ignore D:
In fact, a learning robot needs to know if what it's learning is correct, so it needs a library that manages the validity of the facts that it indexed and all the data that it has.
It's really a boatload of complex shit