swarmsim.agent.control.AbstractController#

Abstract Controller class.

class swarmsim.agent.control.AbstractController.AbstractController(agent, parent=None)[source]#

Given agent observations, return agent actions

Controllers can optionally take in sensor data and then return an action for the agent to take, usually in the form of a requested movement vector.

Methods

as_config_dict

get_actions

set_agent

set_parent

as_config_dict()[source]#
get_actions(agent)[source]#
set_agent(agent, parent=None)[source]#
set_parent(parent=None)[source]#
swarmsim.agent.control.AbstractController.ControllerType = <enum 'ControllerType'>[source]#

Create a collection of name/value pairs.

Example enumeration:

>>> class Color(Enum):
...     RED = 1
...     BLUE = 2
...     GREEN = 3

Access them by:

  • attribute access:

    >>> Color.RED
    <Color.RED: 1>
    
  • value lookup:

    >>> Color(1)
    <Color.RED: 1>
    
  • name lookup:

    >>> Color['RED']
    <Color.RED: 1>
    

Enumerations can be iterated over, and know how many members they have:

>>> len(Color)
3
>>> list(Color)
[<Color.RED: 1>, <Color.BLUE: 2>, <Color.GREEN: 3>]

Methods can be added to enumerations, and members can have their own attributes – see the documentation for details.

Classes

AbstractController(agent[, parent])

Given agent observations, return agent actions

ControllerType(*values)