What’s New for Dynamics 365 Resource Scheduling Optimization v3.0 Release

Applies to: Dynamics 365 Organization 9.0+ with Field Service Solution 7.x version or 8.x version

We are excited to announce the general availability of Resource Scheduling Optimization (RSO) v3.0 release which includes maximize preferred resources, best Matching skill level, improved logic of handling conflicted bookings, and user experience improvements to easily re-rank objectives. We’ve added new capabilities and various usability, performance, and quality improvements. Below is a high-level list of features introduced in this release.

Enabled new objective: Maximize Preferred Resources

RSO will consider the list of preferred resources noted on related requirements. The optimizer will try to assign bookings to preferred resources first while meeting other constraints and objectives. This is achieved by adding the “Maximize Preferred Resources” objective in your RSO goal and adding preferred resources on the requirement that will be optimized.

Below is an example of adding a resource (for example, Jorge Gault) as a preferred resource to a requirement.

After running an Optimization Schedule, the requirement is scheduled to the preferred resource. In the example below, work order 00100 is scheduled to Jorge Gault.

Enabled new objective: Best Matching Skill Level resource objective

RSO will consider the proficiency rating when matching the characteristics required by requirements and the resources who possess those characteristics. This is dependent on the Meets Required Characteristic constraint within the Optimization Goal.

  • If ‘Meets Required Characteristics’ constraint is checked
    • resources without the characteristic (skill) or less qualified (less proficiency rating than required) are not eligible at all
    • resources with the exact skill level (best matching) get the highest score
    • the more overqualified a resource is, the lower the score they will get
  • If ‘Meets Required Characteristics’ constraint is unchecked, resources without the skill or less qualified can still be booked
    • overqualified resources get a higher score than less qualified ones
    • the more overqualified a resource is, the lower the score they will get
    • the less-qualified a resource is, the lower the score they will get
    • resource without the skill get the lowest score but not zero

For example: If a characteristic (skill) rating model is from 1 to 10, and the requirement asks for a skill level of 4, below is the score distribution based on skill level of the resource.

Other Enhancements

Easily adjust order of existing objectives

Users now can easily adjust order of existing objectives by using the Move Up, Move Down buttons. For example, select ‘Maximize Preferred Resources’ , click Move Up button. The system will swap the order between ‘Minimize Total Travel Time’ and ‘Maximize Preferred Resources’.

Improved logic of resolving booking conflicts

If scope related resource, requirement, booking information being modified during optimization, optimization request status show ‘ Completed with Conflicts’ instead of ‘Failed’ , in Optimization Request Booking view, users are able to see details which booking being modified (conflicted icon and booking status showing Simulation; Operation Details showing specific data being modified).

User can select one or more conflicted bookings (Simulation status), click Apply with Overwrite, and thesystem will commit the simulation booking. Or click Discard, and the system will remove simulation booking, keep the changes user manually did before.

After Apply or Discard, Optimization Status will change to Completed.

Allow to keep empty time values

RSO will respect scenarios when only a start or end time is defined on a requirement. In the example below where a requirement has only a time window start value, RSO schedules the requirement anytime after 1:00 PM regardless of date.

This logic applies to the below fields:

On Resource Requirement entity

  • Time Window Start/End
  • Time From Promised/ Time To Promised
  • From Date/ To Date

On Resource Booking entity

  • Time Window Start/End
  • Time From Promised/ Time To Promised
  • Date Window Start/End


  • Numerous bug fixes and telemetry enhancements as part of continuous engineering fundamental improvements

Important Notes

If you deploy this version of RSO with Field Service v8.x, RSO doesn’t support Pool, Facility, Crew scheduling scenarios. Please ensure:

  • Exclude Pool and Crew types of resources from bookable resource view(s), which are used for optimization scope.
  • Exclude Pool and Crew types of resource requirement from bookable resource view(s), which are used for optimization scope (or set “Scheduling Method” to “Do Not Optimize”).

For more information:


Feifei Qiu
Program Manager
Dynamics 365, Field Service Team