You've got agent computing, organic computing, and autonomic computing. All of these seem to be different words for the same thing to me, but I would bet if you talked to a researching in each one they would say that they are different from the others. So to add to the confusion here is my understanding of the entire thing.
Agent, organic, and autonomic are all the same thing. I'm going to choose autonomic because it seems to be the most descriptive of the idea. The setting for the idea is not financial calculations or number crunching. Instead we want to move to the areas of business rules, controlling systems, and so on. Essentially we are looking at where humans have to take a large amount of data and making complex decisions to make a change to the system creating that data. For instance, a system administrator will take apache logs, his knowledge of traffic patterns on routers, queries being done against databases, etc. and tune the parameters on a few systems to keep the site running "well".
The idea in Autonomic computing is that humans have better things to do than sit and look at those logs and fiddle with the MaxClients setting in Apache. Instead we should come up with a way of describing the system (the "model"), possible things that can be done to the system (the "actions"), and how we want the system to look (the "goals"). Once we have that we should be able to have the computer then watch things and using the model try out various things in an effort to keep the system in line with the goals by performing different actions. This is an automation of the the system administrator does. So now the system administrator needs to maintain the model, the actions, and the goals instead of the system itself.
The problems in this are how to make that model, choosing the right actions, and describing the goals. Choosing the right actions seems like it should usually be fairly straightforward. In fact most do it already. Keeping with the system administrator, he just chooses actions as the scripts that he usually executes. Models and goals, however, are not so simple.
The model needs to be done in such a way that we can make predictions about the real world. That means that it has be remain computable. In many situations simply computable isn't enough, it has to be efficiently computable.
The goals are also hard. In many cases it isn't even clear to the human what the goals are. How are we supposed to describe them? It seems, though, that if we could get the model, then the goals are a statement about properties of the model.
So that is the idea behind autonomic computing. Doesn't seem so hard until you try to work through it for a specific system, then you start running into all sorts of problems. What aspects of the system are going to be in your model? What aspects are not relevant? How is the system going to figure out what it can do? How do you describe the changes to the system/model that the actions will do? Is it even deterministic what they will do? Who is responsible if the system doesn't do the right thing? How are you going to represent the model? And the list goes on.