Outline the role of autonomous agents acting within a larger system.


Teaching Note:

Technical hardware details are not expected.


Sample Question:



JSR Notes:

Definition of autonomous agents - (Wikipedia) An autonomous agent is an intelligent agent operating on an owner's behalf but without any interference of that ownership entity.


Distinct Features of Autonomous Agents

(mainly from Mk Sch '14)

Autonomy: Agents act on their own; they are not directed by anything or anyone. They themselves select what they will do based on algorithms which dictate priorities and goals.

Reactive Behaviour: Agents sense and/or seek specific things/events in their environment and react to those things/events in specific ways.

Concurrency/Sociality: Agents may have the ability to interact and communicate with each other in coordinated and/or cooperative ways.

Persistence: Once agents are released, they perform in their prescribed ways continually; they are not started and stopped, indeed they cannot be, since they are not controlled externally.


Clarification of "centrally controlled" vs "distributed system" vs "autonomous"

So a centrally controlled system is one in which the control is done by one central processor (within an individual hardware device - what I've termed "local") or server (with larger, multi-component system - what I've termed "more widely spread"), whereas a distributed system distributes a good portion of that control to sub-parts/sub-systems, and autonomous agents work by themselves, though their functioning serves the system that they are part of.

--> Centrally Controlled - there is centralized control everything in the system by one processor (as in an individual device) or one server/mainframe (as in a larger multi-component system).
--> Distributed Control - control of many of the various parts of the system are done by different control processors/servers.
--> Autonomous Agents - control themselves, and with no human oversight, once they are released.

Take special note of the last point about human oversite - this is key for distinguishing from other control types. You cannot say that a centrally controlled "local" system like heat sensor is autonomous, becuase the temperature is controlled up and down by the input from a human user. The same lack of autonomy is even more obvious for a more widely spread centrally controlled system like a climate control system for all the rooms in a building. And in terms of distributed control, there is ultimatelyl human control at the "field" level and/or "supervisory" level of the control heirarchy.

Yes, humans set up the autonomous agents to begin with, but then, it's the autonomous agents' own programming, which is the only thing that controls them the duration of their work.



Autonomous Agents Examples

Amazon.com Delivery Drones ("Amazon Prime Air" in the near future). This fits the autonomous agent definition as the drones fly themselves, but do their work for someone/something else (i.e. you the customer, and Amazon.com).

Self-driving Cargo Ships - Take a look at this article from the Economist.com about "ghost" cargo ships. But are they autonomous agents by our definition, or is there distributed remote control? In transit, they would be; at departure and arrival there would have to be "interference"/communication.

Surveillance Drones - Do-it-yourself surveillance drone - these ones are actually not fully autonomous yet, but that's the next step. A good documentary on drones - again, most are not autonomous, but all potentially could be.

Self-driving Cars - a great overall video about Google's Self Driving System. And this fits the autonomous agent definition, as each car controls itself, but it does so in the context of the larger group of cars, thus preventing accidents and keeping traffic moving efficiently.

Swarming Robots - Swarming robots Example on YouTube. A great deal of research is being done - and fun is being had! - at universities around the world trying to mimic natural systems to leverage the advantages swarming behaviour can provide. (See the note below on cybernetics.)

Flocking robots - Example on YouTube "This movie shows flocking control with minority of informed agents. Only 2 of 7 rovio robots know the target point (2 rovio with cameras face up which are closest to the target point). Assume that at initial time all robots formed a random connected network then based on our flocking control algorithm robots can flock together without collision and form an alpha lattice formation."

Flocking Roombas - Roombas working as a flock would be able to clean the floor much better than randomly moving around. In this system they could completely ignore each other, and bounce off of one another no less than the wall and other obstructions, or they could communicate to avoid collisions; either way, they are doing it on their own, with no human input or supervisory control.

Seaswarm Oil Slick Autonomous Robots - Robots that go around an oil slick and "digest" oil - they can do so entirely autonomously, or they can communicate with each other to self-organize and cover the area in the most efficient way possible - but this is still autonomous behaviour.

Other Autonomous Swarming Hardware

A lot of robotic autonomous agent systems are still being developed, but this video shows you a lot of the potential (though the video is already a half a dozen years old...time for a new one...) Some of the examples mentioned in the video:

Other Things to Note regarding Autonomous Agents

i. Note that Computer Viruses can definitely also be viewed as autonomous agents, when part of a larger system let loose to wreak havoc on IT systems.

ii. Parts of both BitCoin etc. digital currencies and SETI etc. distributed processing systems could be termed autonomous, but it would be better to keep both of these limited to the "distributed systems" category, since eventually there has to be significant "interference"/"communication" between individual mining or processing machines.

iii. Cybernetics. A lot of current research and development in autonomous agents is focused on the way that various natural systems work. Individual organisms within larger groupings, indeed ecosystems, are all autonomous, yet they have built-in "algorithms" (i.e. instincts) which lead them to collectively display behaviors that together help the groups' members, both individually and collectively.

This study of the structure of systems, natural or otherwise, is called cybernetics.

One main category of the "cybernetic" natural systems which groups of robots can imitate is grouping behaviors, i.e. flocking (as with birds), swarming (as with insects), and schooling (as with fish).


So now to actually address the assessment statement

The assessment statement says "Outline the role of autonomous agents acting within a larger system", and that seems to be pointing to a particular situation, rather than asking a general question. So here are a few examples of questions which assume that interpretation:

- "Outline the role of autonomous robots in a search and rescue operation after an earthquake in an urban area."

Answer: there would be at least two sorts of autonomous robots; first insect-sized robots to crawl through the rubble and report back when and where people are found, and secondly, large powerful robots whose role wold be to remove rubble over where those people were found. The insect-sized search drones could be entirely autonomous, and only be given geographic bounds in which to operate. The large rubble removal robots may need a bit more human supervision to keep them from injuring buried people, but to a large extent, they could be left to do the initial stages of their job on their own.

- "Outline the role of delivery autonomous aerial drones in parcel delivery system."

Answer: The role of the aerial drones would be to download and interpret the directions to the delivery address, and then take the parcel from the warehouse and fly it to its destination. It would have to sense several things beyond its geographic location; it would have to monitor the weather and might need to find shelter in cases of severe weather conditions, and it would have to constantly be surveying its surroundings so as not to run into anything including birds and other drones.

- "Outline the role of a BitCoin mining computer in the overall BitCoin system."

Answer: The role of a BitCoin mining computer is to try to crack the code the newest block of BitCoin. If and when you do, that block of BitCoin currency is added to the sum total of BitCoin in circulation. Each mining computer does this by repeatedly trying to guess a hash calculation, and coming up with an answer which starts with 13 0s.This happens, around the world several times per hour, so collectively all the mining computers around the world add to the amount of money in circulation. Meantime, it is upon cracking a given code that you as the cracker are rewarded by becoming the owner of that block of BitCoin.

Alternative interpretation of the assessment statement

On the other hand, if we are to interpret the assessment statement to be more of a general nature, i.e. generally outline the role of (all) autonomous agents acting within a larger system, then the following would be the question and answer approach:

- Outline the role of autonomous agents acting within larger systems.

Answer: The role of autonomous agents acting within larger systems is to do one part of a bigger puzzle, that is to say that each agent has its own task, and whatever that task is, by doing it, part of a greater purpose is achieved. For example, areal drones each deliver parcels on their own, but by doing so help the overall sales operation of a company like Amazon. Another, software, example is how each computer in the BitCoin system mines BitCoin without the assistance or control of anything/anyone, and if/when it cracks the code of the latest block, it thereby contributes that block of BitCoin to the overall supply in the system.


Topic 7 Summary Stuff


Advantages and Disadvantages of Centralized/Distributed/Autonomous Agents

****These really depend on the particular situation.

Advantages/Situations to Employ Disadvantages/Situations to Employ
Centralized Control More control, without having to search for problems or physically go to fix them. Expensive, and complex. If the central control fails, the whole system fails.
Distributed Control If one part fails, the whole thing does not fail (with the exception of stalling an assembly line etc.) Not as easy to isolate problems and (go to) fix them.
Autonomous Agents

Possibly Individually cheap usually.

Don't require complex system control.

Each individual agent needs its own, possibly expensive, controller.

Since not connected to each other, they may end up being less efficient than if controlled together.


3 Hypothetical Autonomous Car Situations - example of how street intersections could be handled

This shows how, hypothetically, "Google Car" systems could be any of the three approaches to control (in reality, this system like so many would be a combination of all three):

Entirely Centralized Control: - which car enters the intersection is controlled by a central traffic control server.

Entirely Distributed Control: - the control of this is distributed to individual groups of cars, which sense their own environment, communicate with each other and determine who enters first, or indeed, control could be distributed to a camera etc. system at the intersection.

Entirely Autonomous Agents: - the cars would sense each other and their environment including road hazards and pedestrians, and judge when to enter the intersection. Each autonomous car would have an identical software system so what happens is totally predictable.


"Canned" Quintessential Example to Prepare

I think it would be good for you to be well prepared to discuss one particular example of each of centralized control, distributed control, and autonomous agents. Don't disregard the other examples, but if asked for just one example, or to help your explanation - and your picks may be different - my picks are:

Centralized Control (very good) Example: Heating system at a school like ISP

Distributed Control (very good) Example: Traffic lights system with "smart" intersection traffic lights

Autonomous Agents (very good) Example: Swarming oil slick cleanup robots


where is the controller?

+ The Concept of the Hybrid System

In reality, many systems are not purely controlled in a centralized or distributed way, rather, we can say
the control of them takes a hybrid form. So, for example, in the example of multiple, networked elevators
in a modern office building, the doors may be controlled in a distributed way; i.e. each elevator controls its
own doors, but the movement of them up and down to collect and deliver passengers in the most efficient
way is coordinated by central control of a server.