Monday, February 09, 2009
Kary Mullis: Celebrating the scientific experiment
Over on TED, I've just watched a talk given by Kary Mullis (a Nobel Prize winner for his invention of the PCR technique) on the history of the scientific experiment. The video was posted only in January, but was apparently filmed It's a fairly rambling talk, but he tells some interesting and funny stories, from history-discussing surfers, to space faring frogs (well, nearly), and seems generally critical of the state of reporting in modern science.
Sunday, February 08, 2009
Agents or Programs: a definition of "Agent"
A little while ago, a friend of mine asked me what a robot was. I thought about it for a little while, before coming to the conclusion that there wasn't actually a satisfactory answer: it depends on who you're speaking to and what you're talking about. There's the standard populist view of a robot as being an autonomous mechanical device, often in human or animal form, and then the less interesting definitions which hold robots to be man-made machines for automating some industrial process. None of these definitions are any more correct than the others, they merely serve different purposes in different contexts. There seem to be a number of this sort of ambiguous term floating around. Nothing wrong with it as such, until you have two people communicating each with slightly differing definitions, each definition carrying with it a slightly different set of assumptions, which are best not left undiscussed.
Another of these terms around which care is needed when used is 'agent'. It's one of those words which is defined in almost every paper in which it is used. This ensures that its use is clear in each instance, but also results in a multitude of definitions, most of which bear great similarity, whilst maintaining some fundamental differences. One attempt to provide a unified definition, and a general taxonomy to encompass the different contexts in which the term 'agent' is used, is provided by Franklin and Graesser (1996). In a short review of a number of contemporary agents in research and development use, a general definition is constructed and then extended.
From the review of a number of different agents in use at the time, a number of general characteristics of agents become apparent. These are compiled into the following definition proposed by the authors:
An immediate application of this definition for the authors is to distinguish between software agents and general computer programs. In this case, software programs (a payroll program in the example used) might have a task and an environment, but there is no persistance (i.e. the program output wouldn't affect its subsequent inputs), and there is no autonomy for the system (or at least it is hoped that there isn't!). Whilst this distinction between software agents and programs can be made, it is clear that the definition is fairly broad-brush. In the remainder of the paper, the authors attempt to expand upon this in order to allow a classification of different types of agent within this overarching definition.
Agents may be classed in a variety of ways, for example by functionality, architecture, sensors, effectors, etc. As long as the four properties previously mentioned are satified, any additional properties may be used to provide delineations of type. This, however, does not provide a very structured means of classification, as it is limited only by the possible imaginable agent properties. The authors propose using a hybrid between a biologically inspired taxonomic tree, and a mathematical binary classification tree. Using the former, a scheme which classifies the major classes of agents can be constructed (task specific for example). Further delineations can be provided by a binary classification scheme, for example planning vs non-planning, learning vs non-learning, mobile vs non-mobile, etc. This type of classification can then be defined as a topological space, which leads to further classifications methods.
In summary, the authors have provided a clear delineation between software agents and programmes, and have described a possible taxonomy for the classification of different types of autonomous agent. This taxonomy in itself however doesn't seem to solve anything, since all of the categories for classification are arbitrarily chosen, and may be (even among the examples chosen in the paper) contentious in themselves. However, the general definition of the term "agent" extracted from a number of examples can be used as a basic guide for discussion - and it is interesting to note that the definition for agent inherently assumes autonomy: in order for an agent to be considered an agent, it must to some degree be autonomous (and that's a whole separate question...).
Stan Franklin, Art Graesser (1996). Is it an Agent, or just a Program? A taxonomy for autonomous agents Third International Workshop on Agent Theories, Architectures, and Languages
Another of these terms around which care is needed when used is 'agent'. It's one of those words which is defined in almost every paper in which it is used. This ensures that its use is clear in each instance, but also results in a multitude of definitions, most of which bear great similarity, whilst maintaining some fundamental differences. One attempt to provide a unified definition, and a general taxonomy to encompass the different contexts in which the term 'agent' is used, is provided by Franklin and Graesser (1996). In a short review of a number of contemporary agents in research and development use, a general definition is constructed and then extended.
From the review of a number of different agents in use at the time, a number of general characteristics of agents become apparent. These are compiled into the following definition proposed by the authors:
"An Autonomous Agent is a system situated within and a part of an environment that senses that environment and acts on it, over time, in persuit of its own agenda and so as to effect what it senses in the future."One immediate point to notice is the dependance of this definition on the concept of autonomy: agency then inherently requires the system in question to be autonomous (with all the vaguearies that this definition brings...). Furthermore, agents are situated in environments: being both affected by them, and having an effect on them. Without this flow of information, there is no agent: using one of the authors examples, if an agent equipped with light sensors is placed in an environment with no light, then it cannot be considered to be an agent. Another important point that should be mentioned is the "...over time..." bit: this part insists on temporal persistance, i.e. the ability to sense, effect, and thereby influence what is sensed in the future. Finally, the point about "... its own agenda" follows on from the concern over autonomy: the agenda need not be a single task which needs fulfilling, or even a particularly well-defined one (consider the artificial life goal of 'survival').
An immediate application of this definition for the authors is to distinguish between software agents and general computer programs. In this case, software programs (a payroll program in the example used) might have a task and an environment, but there is no persistance (i.e. the program output wouldn't affect its subsequent inputs), and there is no autonomy for the system (or at least it is hoped that there isn't!). Whilst this distinction between software agents and programs can be made, it is clear that the definition is fairly broad-brush. In the remainder of the paper, the authors attempt to expand upon this in order to allow a classification of different types of agent within this overarching definition.
Agents may be classed in a variety of ways, for example by functionality, architecture, sensors, effectors, etc. As long as the four properties previously mentioned are satified, any additional properties may be used to provide delineations of type. This, however, does not provide a very structured means of classification, as it is limited only by the possible imaginable agent properties. The authors propose using a hybrid between a biologically inspired taxonomic tree, and a mathematical binary classification tree. Using the former, a scheme which classifies the major classes of agents can be constructed (task specific for example). Further delineations can be provided by a binary classification scheme, for example planning vs non-planning, learning vs non-learning, mobile vs non-mobile, etc. This type of classification can then be defined as a topological space, which leads to further classifications methods.
In summary, the authors have provided a clear delineation between software agents and programmes, and have described a possible taxonomy for the classification of different types of autonomous agent. This taxonomy in itself however doesn't seem to solve anything, since all of the categories for classification are arbitrarily chosen, and may be (even among the examples chosen in the paper) contentious in themselves. However, the general definition of the term "agent" extracted from a number of examples can be used as a basic guide for discussion - and it is interesting to note that the definition for agent inherently assumes autonomy: in order for an agent to be considered an agent, it must to some degree be autonomous (and that's a whole separate question...).
Stan Franklin, Art Graesser (1996). Is it an Agent, or just a Program? A taxonomy for autonomous agents Third International Workshop on Agent Theories, Architectures, and Languages
Friday, February 06, 2009
Encephalon #63
Of Two Minds has just put up the 63rd edition of Encephalon. A nice round-up as usual, with congratulations of course going to Omnibrain on his good fortune... :-p My three highlights as usual:
- Brain Blogger brings us a short piece on serotonin: specifically, how the genetic basis of the serotonin system, and the natural variation in the system as a result of individual genetic differences, results in different susceptibilities to anxiety, depression etc. Possibly also responsible for certain differences in personalities (seems sensible to me, but then I imagine that there are many drivers for ones personality). The interesting question then arises though of whether medicine should be used to make up for some of these individual differences. A fascinating question, whose answer has wide ranging consequences.
- Are birth defects the result of traumas that the mother has been subject to? This question with a seemingly obvious negatory answer is tackled by Vaughan over at Mind Hacks. The theory known as 'maternal impression' was well known in the 19th century, but passed out of use in the late 19th century. However, in the second half of the 20th century, a number of studies showed that severe maternal stress did have an effect on the children's brain development. Vaughans article is well worth the read.
- And finally, the question of Free-Will! PsyBlog reviews three fascinating studies on how manipulating people's views on free-will (by getting them to read statements either for or against the concept of free-will) led to their behaviours being modified. A decreased belief in free will led to people being less helpful towards others, and even increased agression! Which leads to a view that a belief in free will is beneficial to society. The concepts free-will and determinism (as promoted by science) must however be reconciled since our society is fundamentally based on the former, and increasingl on the latter.
- Brain Blogger brings us a short piece on serotonin: specifically, how the genetic basis of the serotonin system, and the natural variation in the system as a result of individual genetic differences, results in different susceptibilities to anxiety, depression etc. Possibly also responsible for certain differences in personalities (seems sensible to me, but then I imagine that there are many drivers for ones personality). The interesting question then arises though of whether medicine should be used to make up for some of these individual differences. A fascinating question, whose answer has wide ranging consequences.
- Are birth defects the result of traumas that the mother has been subject to? This question with a seemingly obvious negatory answer is tackled by Vaughan over at Mind Hacks. The theory known as 'maternal impression' was well known in the 19th century, but passed out of use in the late 19th century. However, in the second half of the 20th century, a number of studies showed that severe maternal stress did have an effect on the children's brain development. Vaughans article is well worth the read.
- And finally, the question of Free-Will! PsyBlog reviews three fascinating studies on how manipulating people's views on free-will (by getting them to read statements either for or against the concept of free-will) led to their behaviours being modified. A decreased belief in free will led to people being less helpful towards others, and even increased agression! Which leads to a view that a belief in free will is beneficial to society. The concepts free-will and determinism (as promoted by science) must however be reconciled since our society is fundamentally based on the former, and increasingl on the latter.
Monday, February 02, 2009
First post of the year
Already February, and this is the first post of the year on this poor little neglected blog of mine. This blog is an attempt to describe what I think are interesting topics concerned with intelligence and cognition, from theoretical concepts through to practical implementations and experimental results. This isn't tied specifically to humans or animals, indeed, I'm more interested in the more theoretical aspects, and their application to 'artificial' systems. In this regard, I don't know of many other blogs that take this approach, and that's why I'd like to continue posting here, even if it's not with as much clockwork regularity as I'd like. I'm well into the final year of my PhD research now, so blogging isn't exactly highest on my list of priorities, but I'm hoping that someone will find something of utility or interest when visiting here :-)
Subscribe to:
Posts (Atom)