open-rmf/rmf_task

Incorrect deployment and finish times in Assignments generated for requests with earliest_start_time older than time_now

Closed this issue · 0 comments

Bug report

Required information:

  • Operating system and version:
    • Ubuntu 20.04
  • OpenRMF installation type:
    • Source
  • OpenRMF version or commit hash
    • main
  • ROS distribution and version:
    • Foxy
  • ROS installation type:
    • Binary
  • Package or library, if applicable:
    • rmf_task

Description of the bug

When planning for a set of requests with earliest_start_times well in the past, calling TaskPlanner::optimal_solve() by passing time_now as the current time will generate assignments with deployment_time and state.finish_time in the past. If a ChargeBattery request is needed before any of the tasks can be performed, it will be generated with deployment_time = time_now and placed at the beginning of the assignments but the assignments for the requests that follow will have deployment and finish_times in the past.

Expected behavior

The deployment_time and finish_time of assignments should be greater than or equal to time_now.