On Wikipedia, we can read about different type of intelligent agents:

  • abstract intelligent agents (AIA),
  • autonomous intelligent agents,
  • virtual intelligent agent (IVA), which I've found on other websites, e.g. this one.

What are the differences between these three to avoid confusion?

For example I've used term virtual artificial agent here as:

Basically a robot is a mechanical or virtual artificial agent which exhibit intelligent behavior (AI).

so basically I'd like to know where other terms like autonomous or abstract agents can be used and in what context. Can they be all defined under 'virtual' robot definition? How to distinguish these terms?

  • $\begingroup$ Please provide definitions. $\endgroup$ – NietzscheanAI Aug 10 '16 at 11:16
  • $\begingroup$ IVA isn't. In order to answer the question properly, these things need to be defined. $\endgroup$ – NietzscheanAI Aug 10 '16 at 11:56
  • $\begingroup$ AFAICS, the way the 'asking a good SE question' game is supposed to be played (and I fail to ask good questions myself, on occasion) is to: a) Avoid readers having to work out what the actual question is and b) Show evidence of some preliminary research. Hence, in this particular case, if you have a broader definition of IVA in mind, please provide it. $\endgroup$ – NietzscheanAI Aug 10 '16 at 12:01
  • $\begingroup$ I've clarified the question a bit more. $\endgroup$ – kenorb Aug 10 '16 at 12:06
  • $\begingroup$ Is the question needs further clarification? Or we can clean the comments? $\endgroup$ – kenorb Aug 17 '16 at 1:20

There is definitely a usage and etymological dimension to this issue, which I can elaborate on, if you'd like. (It's an issue I come across frequently, and is particularly relevant in regards to original work.)

The use of "Agent" may have arisen partly out of Game Theory, with ideas like "multi-agent systems", possibly because it's quite general (i.e. one does not have to say participant, or player, or actor, etc., and it is species non-specific.)

"Automata" seems to be favored in some circles, and although this term was originally reserved for physical, mechanical devices, it now encompasses a range of physical and information-based systems (with perhaps a contemporary emphasis on the virtual. A famous extension is the categorization of Conway's Game of Life as a "cellular automata". Conversely, "robot" would seem to have usurped "automaton" for physical systems.)

I tend to use agent when I'm thinking in an economic sense, or in a game theory sense as related to computing [see Rational Agent], and automata when thinking in a procedural sense in terms of algorithmic intelligence [see Automata Theory]. But the distinction is partly semantic.

Robot seems to be avoided in the academic literature in regards to information systems, possibly because of the deeply entrenched popular understanding of "robot" as physical automata. The use of the informal "bots" for describe information-based systems seems to have arisen in the public sphere, almost certainly a product of hacker culture, which has a tradition of playfulness. I like the term bots as it is being currently applied, but I feel it has the connotation of trivial (i.e. small and discrete) or massively multi-agent systems, and haven't really seen it used for for "strong" narrow AI.*

Note: "Agent" does not automatically carry the concept of autonomy, although it is sometimes implied. The use of the term is in the sense of "agency" as an action taken by an agent. Agents may be acting on their own behalf, or as proxies.

*"Strong" in relation to AI is a term that seems to be evolving. Initially reserved for Artificial General Intelligence and conscious algorithms, I've seen recent mentions by respected scholars of "strong narrow AI" to refer to recent milestones in Machine Learning. However, the term "strong" and "weak" in relation to mathematics and AI have a history in Combinatorial game theory per the concept of the solved game. Thus, there exist "strong AI" for games such as Nim, Hex, and Tic-Tac-Toe.

Again, there is an element of subjectivity here, but I tend to favor the CGT approach for two reasons:

  1. It's a mathematical definition, unlike the the philosophical definitions ("consciousness" and "humanlike" re: AGI)

  2. Artificial Intelligence is rooted in combinatorial games. [Nimatron may have been the first functional algorithmic intelligence and combinatorial games have been been used as milestones since that time, most notably with Deep Blue, Giraffe Chess and AlphaGo. Non-trivial Combinatorial games are useful because they have simple parameters but complexity akin to nature.

My sense on how "strong" is starting to be used is for algorithms, such as Machine Learning systems, that can outperform humans within a given set of parameters. Thus "strong narrow AI".

On Intelligence:

The term "intelligence" in highly subjective, and the only functionally meaningful definition I've come across is the concept of bounded rationality.

  • 1
    $\begingroup$ @kenorb Updated with links added. (I decided to mostly use Wikipedia, because most of this is "generally known" within the relevant fields, and it's more useful to link to the Wikipedia pages as opposed to individual research papers.) $\endgroup$ – DukeZhou Jun 8 '17 at 21:30

I don't think there are many contexts where there is any really meaningful distinction between these terms. Even in the WP article you refer to, it is shown that "abstract intelligent agent" and "autonomous intelligent agent" are generally just synonyms for "intelligent agent" but used to highlight certain aspects of intelligent agents in some contexts. Net-net, I'd say there just isn't any difference there that's going to matter in practice.

"Virtual intelligent agent" OTOH, used in the context you used it, suggests the distinction between an IA that's implemented in software only, versus one that has a physical manifestation. I don't know how useful that distinction is and I haven't seen anybody else make it.

All in all, I expect that in almost every possible context, if you just say "Intelligent Agent" with no qualifiers, that's going to be sufficient. But if there were going to be an exception, I'd say it would be around the term "autonomous" since an agent which is truly autonomous, versus one that needs to operate in a specific, constrained environment, is a distinction that - at least in principle - could be useful.

  • $\begingroup$ Some references would be useful. $\endgroup$ – kenorb Aug 17 '16 at 1:24
  • $\begingroup$ This is an excellent answer. Re: "Autonomous" I still feel like there may be some wiggle room in that, even a algorithm in a constrained environment may be said to operate autonomously within that environment... $\endgroup$ – DukeZhou Jun 8 '17 at 20:20

Your Answer

