A controller configured to operate as at least one agent, a method of
configuring a controller for operation as part of a multi-agent
distributed control system, and a configuration device for so configuring
a controller, are disclosed. The controller includes at least one
processing device and at least one storage medium that is in
communication with the at least one processing device. The at least one
storage medium stores a plurality of program portions that are executed
by the at least one processing device, and the plurality of program
portions includes first, second and third program portions. The first
program portion is capable of generating first signals that are commands
to be provided to a controlled device, the second program portion is
capable of governing standard agent-type functionality, and the third
program portion is capable of governing application-specific agent-type
functionality.