armour.reachsets.IRSGenerator
- class armour.reachsets.IRSGenerator(robot, jrsGenerator: JRSGenerator, use_robost_input: bool = True)[source]
Bases:
ReachSetGenerator
InputReachableSet This generates the upper and lower bound reachable sets on the input, and creates an IRSInstance object
- __init__(robot, jrsGenerator: JRSGenerator, use_robost_input: bool = True)[source]
Methods
__init__
(robot, jrsGenerator[, use_robost_input])generateReachableSet
(robotState)Obtains the relevant reachable set for the robotstate provided and outputs the singular instance of a reachable set
getReachableSet
(robotState[, ignore_cache])Get a reachable set instance for the given robot state and passthrough arguments
- generateReachableSet(robotState: EntityState) dict[int, armour.reachsets.IRSInstance.IRSInstance] [source]
Obtains the relevant reachable set for the robotstate provided and outputs the singular instance of a reachable set
- getReachableSet(robotState: EntityState, ignore_cache: bool = False, **options) dict[int, rtd.planner.reachsets.ReachSetInstance.ReachSetInstance]
Get a reachable set instance for the given robot state and passthrough arguments
This function handles how to actually get the reachable set with built in caching of already generated instances. It will call generateReachableSet as needed. This is useful if we need to use one reachable set in another reachable set and we don’t want to regenerate it online. It performs caching based on the id of the provided robotState and and the string cast of any additional arguments. If we don’t want to use the cache on one call, setting ignore_cache to true will bypass caching altogether
- Parameters:
robotState – EntityState: Some state of used for generation / keying
ignore_cache – bool: If set true, the cache is completely ignored
- Returns:
A dict of problem id to ReachSetInstance pairs
- Return type: