Generates ground truth and simulated measurements for SLAM.
Args:
num_landmarks: Number of landmarks to generate.
world_size: Size of the square world environment.
robot_radius: Radius of the robot's circular path.
robot_angular_vel: Angular velocity of the robot (rad/step).
num_steps: Number of simulation steps.
dt: Time step duration.
odometry_noise_model: GTSAM noise model for odometry.
measurement_noise_model: GTSAM noise model for bearing-range.
max_sensor_range: Maximum range of the bearing-range sensor.
X: GTSAM symbol shorthand function for poses.
L: GTSAM symbol shorthand function for landmarks.
odom_seed: Random seed for odometry noise.
meas_seed: Random seed for measurement noise.
landmark_seed: Random seed for landmark placement.
Returns:
tuple: Contains:
- landmarks_gt_dict (dict): L(i) -> gtsam.Point2 ground truth.
- poses_gt (list): List of gtsam.Pose2 ground truth poses.
- odometry_measurements (list): List of noisy gtsam.Pose2 odometry.
- measurements_sim (list): List of lists, measurements_sim[k] contains
tuples (L(lm_id), bearing, range) for step k.
- landmarks_gt_array (np.array): 2xN numpy array of landmark positions.
Definition at line 7 of file simulation.py.