Issue: Most of the Driver Assignment functions in Insbridge lean very heavily on use percentage inputs on either the Driver or Vehicle categories. These system-created inputs are named DrvUsePctOnVehX and VehUsePctOnDrvX, where X is a number between 1-18. The use percentage inputs can have a value between 1-100 and in some cases should total to 100, depending on the Driver Assignment function you're implementing. When trying to assign principal and/or occasional operators, we've seen customers utilize these inputs with a percentage value of 75 for principal and 25 for occasional.
There are a few drawbacks associated with these use percentage inputs:
- You're limited to 18 drivers or 18 vehicles, depending on the Usage Option you select on your Driver Assignment Scenario. In the world of Personal Auto, 18 drivers and 18 vehicles probably covers 99.9% of policies. However, customers want to be able to say they can rate any number of drivers and vehicles.
- With the use percentage inputs being very specific to the 1-18 drivers or vehicles, you don't have the luxury of categories at your disposal if you need to evaluate and perform logic on these inputs. This creates a scenario where you might have to repeat logic for each input, rather than letting categories handle the repetition.
- There are no Driver Assignment functions that easily assigns drivers to vehicles they occasionally operate, or simply operate. Almost all of them are geared towards drivers who principally operate the vehicle, or drivers who operate the vehicle most frequently. It may be possible to assign occasional operators with an incredible amount of steps, but the logic can be too cumbersome to maintain.
Resolution: To avoid these issues, it's possible to eliminate the use percentage inputs by taking advantage of the Assign Vehs Using DA Override Fields assignment function. This function requires 2 inputs: AssignedDriver (ID 17) and AssignmentOverride (ID 400), both on the Vehicle category. This assignment function was originally intended to allow front-end systems to override any assignment that is done by the rating engine, but it is possible to set these inputs in your program during rating (setting inputs in your program is generally not good practice, but the pros outweigh the cons in this specific case). By using a combination of table/calculated variables/algorithms, you can determine each vehicle's assigned driver without using any of the Flag/Rank/Assign functions you would typically use in Driver Assignment.
Here's an example of what you could implement:
- At the Vehicle level, add a category called Operator. This category can have inputs for OperatorID (values should match the DriverID sent at the Driver level) and OperatorType (values of Principal or Occasional).
- At the Operator level, add calculated variables and Get Category Item steps to get data from the Driver level, such as Youthful Indicators or Class Factors. Pulling this data down to the Operator level allows you to perform rankings only for those drivers that are tied to a particular vehicle.
- At the Vehicle level, add an additional calculated variable or algorithm that ranks the Operator categories based on the variables added in #2 to determine the best match for the vehicle.
- At the Vehicle level, set the AssignedDriver input equal to the highest ranked OperatorID. The AssignmentOverride input should also be set to 1 for every vehicle, as this tells the engine that you want to assign the vehicle based on the AssignedDriver input.
- In a Driver Assignment scenario, add 1 step for the Assign Vehs Using DA Override Fields function.
There are 2 main advantages to this setup:
- It's much cleaner than trying to force an assignment with the system-generated use percentage inputs. If you are set on making it work with use percentage inputs, your Driver Assignment scenario will likely have an incredible amount of steps to accomplish the same task.
- With the Operator category at the Vehicle level, you're not limited to a specific number of drivers or vehicles.