Multi-Day Continuous Routing with Machine Learning Exception Management
Starting with update 24D, a Continuous Routing plan (both created from scratch and pre-created in older version) may be set as Multi-Day. To achieve this, open the plan for editing, open the Run Schedule section and set the value of Apply to activities within given time interval, days to a number bigger than 1.
Also, as of update 24D, you assign all the activities (up to the allowed capacity on the routing plan level), having high (or higher) non-assignment cost in at least one of the configured filters. To allow it, select the 'Try to assign important activities to field resources, even if it violates constraints' option under Assignment Parameters.
NOTE: This option works as an after-routing fallback, so as the first step, routing will try to route the activity according to the routing plan settings.
Then, if the 'Try to assign important activities to field resources, even if it violates constraints' option under the Assignment Parameters is selected, the application would analyze the previously completed assignments of similar activities, looking for those that were assigned with the violations of the work zones and/or work skills. If such activities are found, the application runs a routing plan with the modified settings, allowing assignments with the violations of skills and zones, according to the identified patterns. If such a routing plan fails on assigning the activity, the plan will try to assign the activity to the first available technician, corresponding to the routing plan filter, but completely ignoring the activity constraints like skills, zones, points and inventory requirements. Note that the activity may also be moved to an earlier date not depending on the routing plan multi-day setting. This is moved because it is expected that the target technician would review the activity (which may include contacting the customer to update activity properties) and re-assign the activity to the suitable resource, if needed.
The application monitors the activities that were assigned through such method and corrects the assignment rules and patterns accordingly. For example, if a technician continuously rejects (that is, unassigns activities back to the bucket - either by themselves or with the help of the dispatcher), after some time the application will stop proposing the assignments with skills or zones violations to this technician. Another kind of patterns may be time-wise (for example, not to assign activities on a particular day of week) or based on the time left (for example, to assign only those activities that are targeted for tomorrow, allowing the activities planned for later to wait for an appropriate technician).
This screenshot shows the 'Try to assign important activities to field resources, even if it violates constraints' field in the Assignment Parameters section:
Frequently Asked Questions
Q: Why only the important activities may be assigned using machine learning and other fallback methods?
A: Customer may decide if the activity is eligible for the fallback or not. To mark the activity as eligible, set the Non-assignment cost for one or more of the filters to High or higher.
Q: What if the Non-assignment cost of the activity is set to High for only a subset of the resource filters, while for others it is set to lower values?
A: Such an activity is still considered as eligible for machine-learning fallback, but only resources for which the Non-assignment costs are High or higher will be considered for assignment.
Q: I selected the machine learning fallback for a continuous routing plan, but can't see any activities assigned with skills or zones violations. How could I enable the feature?
A: You must give the feature some time to learn. Only the activity assignments after the feature was selected will be used for pattern recognition, so ensure that at least some activities were assigned with violations manually or using fallback and completed after selecting the feature for the particular bucket.
Q: I could see activities were assigned using the machine learning fallback, but it seems that the captured patterns are wrong.
A: Note that re-capturing of the patterns is a resource-consuming operation, thus it is done once a day, typically once at night, so wait for tomorrow.
Q: I have waited for several days, but the captured patterns are not what I was expected for. What could I do?
A: First of all, check your data. It may be that your resources completing the activities not in the way you think is the right one. Also note that there are two levels of pattern recognition - per-bucket and company-wide. The per-bucket one is used by default; however, if there is not enough activity assignments to create a per-bucket pattern, the company-wide pattern may be used.
Q: Are the data used for pattern recognition subject to ageing?
A: Yes. The data are weighted in such a way that the newest data has the most weight while data that is older than three months is completely ignored.
Q: It is stated that dispatcher-free environment is supported out of the box. Does it mean that there is no need of dispatchers in the Oracle Field Service setups?
A: While we officially support our clients who would prefer to work without dispatchers, we understand that such a setup would require more responsibilities from ordinary technicians, and thus it is not suitable for all customers. However, even if your company is not ready to get rid of dispatchers completely, you still may benefit from the new functionality by allowing the machine learning to do the mechanical part of the work, while humans will take care of the exceptions, which require a more creative approach.
Business Benefits
Assigning all important activities during routing allows to implement different kinds of business scenarios - from working in a completely dispatcher-free environment to assignment of 100% of the activities created, or being in the middle by means of using machine-assisted technology, where dispatchers are forming patterns and then just look at the automatic assignments to ensure that everything is done according to company policies and business needs, and correct the assignment when needed.
Thus, depending on the desired configuration, the following benefits may be achieved:
- Increased automated activity assignment
- Quicker resolution of learned assignment exceptions
- Reduced dispatcher workload resulting in higher focus on other tasks
To see the autorouting percentage, open the Routing page and choose the needed bucket. The autorouting percentage will be shown in the corresponding panel on the top.
If you think that the autorouting percentage is less than the appropriate value, you may consider using a Continuous Improvement routing plan with Assignment of all important activities functionality turned ON.
Steps to Enable
To enable the machine learning fallback method, turn on the 'Try to assign important activities to field resources, even if it violates constraints' option under the Assignment Parameters.
NOTE: The data for pattern recognition will not be collected if this option is not selected.
Tips And Considerations
Working in a completely dispatcher-free environment
While starting from update 24C working in a dispatcher-free environment is supported out of the box, this may require your technicians to be additionally trained and enabled.
Ensure that every technician knows what to do if the activity assigned to them cannot be done - either due to unrecoverable skills and zones mismatch or due to personal preferences.
Also ensure that the technicians are enabled to move activities back to bucket and/or re-assign them to other field resources,
To work in a dispatcher-free environment, we suggest you to create the Continuous Routing plan and ensure that for all the activities that should be assigned automatically, there is at least one resources filter with Non-assignment cost high (or more).
Allow the assignment of all the important activities during the routing run. In this case, first of all routing will try to assign the activities without skills and zones violations, then - with violations but according to the recognized historical patterns, and after this routing will try to assign it to the first suitable field resource, ignoring the skills and zones.
The best practice is that the technician who gets the activity at this step does some pre-work before reassigning the activity. First of all, they may review the activity description to ensure that skills and zones are identified the right way. Also, the technician may call the end customer to ensure that the issue itself is identified right and to check if it could be solved by communicating. The overall idea of this step is for the technician to make an informed decision - either to leave the activity assigned on them or to re-assign it to another field resource, who is better trained and equipped to finish the activity in time.