problems.multi_object_search.models.components package¶
Submodules¶
problems.multi_object_search.models.components.grid_map module¶
Optional grid map to assist collision avoidance during planning.
- class problems.multi_object_search.models.components.grid_map.GridMap(width, length, obstacles)[source]¶
 Bases:
objectThis map assists the agent to avoid planning invalid actions that will run into obstacles. Used if we assume the agent has a map. This map does not contain information about the object locations.
problems.multi_object_search.models.components.sensor module¶
Sensor model (for example, laser scanner)
- class problems.multi_object_search.models.components.sensor.Sensor[source]¶
 Bases:
object- LASER = 'laser'¶
 
- PROXIMITY = 'proximity'¶
 
- within_range(robot_pose, point)[source]¶
 Returns true if the point is within range of the sensor; but the point might not actually be visible due to occlusion or “gap” between beams
- property sensing_region_size¶
 
- property robot_id¶
 
- class problems.multi_object_search.models.components.sensor.Laser2DSensor(robot_id, fov=90, min_range=1, max_range=5, angle_increment=5, occlusion_enabled=False)[source]¶
 Bases:
objectFan shaped 2D laser sensor
- in_field_of_view(view_angles)[source]¶
 Determines if the beame at angle th is in a field of view of size view_angles. For example, the view_angles=180, means the range scanner scans 180 degrees in front of the robot. By our angle convention, 180 degrees maps to [0,90] and [270, 360].
- within_range(robot_pose, point)[source]¶
 Returns true if the point is within range of the sensor; but the point might not actually be visible due to occlusion or “gap” between beams
- shoot_beam(robot_pose, point)[source]¶
 Shoots a beam from robot_pose at point. Returns the distance and bearing of the beame (i.e. the length and orientation of the beame)
- valid_beam(dist, bearing)[source]¶
 Returns true beam length (i.e. dist) is within range and its angle bearing is valid, that is, it is within the fov range and in accordance with the angle increment.
- property sensing_region_size¶
 
- class problems.multi_object_search.models.components.sensor.ProximitySensor(robot_id, radius=5, occlusion_enabled=False)[source]¶
 Bases:
Laser2DSensorThis is a simple sensor; Observes a region centered at the robot.