In Batch Wise auto allocation, the system sends the task request notification to the Agent in batches. You can create batches based on distance, time, and group size settings. The task gets assigned to the Agent who accepts the task request first. If no Agent accepts the task, it remains unassigned.
The details about each and every parameter for Batch wise configuration are below:
Parameters of Batch Wise Algorithm:
- Task Allocation Priority: This option lets you decide the priority of the type of agent to whom you want to assign the task.
- Default means the system will send the task notification to all agents (Captive or Freelancers)
- Captive agent then freelancer agent means the system will send the task notification to eligible captive agents first. If none of the captives agents accept the task, the system will send it to an eligible freelancer agent.
- Start Allocation Before Task Time: This parameter lets you define the time (in minutes) when you want your auto allocation to start before the task start time. For example: if we set it to 20 mins, it will mean that the system will allocate a task to an agent 20 mins before the task’s start time. The task will be visible to the admin as soon as the task is created, only the agent will be assigned 20 minutes before the start time.
- Task Notification Limit: This parameter lets you define the maximum number of task notifications an agent can receive at a time.
- Auto Cancel: Enabling this means that if any task is failed to Auto-assign, then it will get auto-canceled after the specific time mentioned in the “Time for Auto Cancel” field.
- Consider Agent Rating: Enabling this option will allow the system to prioritize an agent with a higher rating to assign the task.
- Distance Settings:
- Start Radius: The value defined here will be the start radius from the task address within which the system will search for available agents.
- Radius Increment: The value defined here will be considered by the system to increase the search radius after the start radius for available agents by this value for every new batch. The area will be increased based on the formula: Searching radius for the nth attempt = Start radius + (n-1)*Radius increment. Here n is the number of attempts. For example, if you have set a start radius of 5 km and increment radius of 2 km, the algorithm will search for available agents within 5 km [5+(1-1)*2] first and then 7 [5+(2-1)*2], 9 [5+(3-1)*2], 11 [5+(4-1)*2] until it finds a suitable agent or reached the maximum radius.
- Maximum Radius: The value defined here will be considered by the system as the maximum search radius for available agents from the task address.
- Time Settings:
- Batch Processing Time: The value defined here will be time in seconds after which the system will generate a new batch and start sending requests to the next batch of agents. For example, if the value is 10 seconds, then the system will generate a new batch every 10 seconds and send requests to the agents that were filtered in that batch.
- Request Time: The value defined here will be a time in seconds that will be available to an agent for accepting a task when he receives a notification. For example. if the value is 30 seconds, then the agent will get 30 seconds to accept the task. If the task is accepted by another agent while the time is still valid, then this agent will get a notification that the task has already been accepted.
- Batch Settings:
- Maximum Batch Size: This parameter lets you define the maximum count of agents who will be sent a request in an attempt. For example. if in the first system attempt, there are 10 available agents within the starting radius, however, the maximum batch size is 5 agents, then the request will be sent only to top 5 agents, sorted by distance.
- Maximum Batch Limit: This parameter lets you define the maximum number of batches formed in one try.
- Delay Settings:
- Notification Delay Per Task: This configuration allows you to prioritize your available agents over your busy agents, resulting in a delayed notification for the busy agents. With this parameter, you can specify the number of seconds you want to delay the notification for busy agents. It’s important to note that the specified time value will be multiplied by the number of tasks assigned to a busy agent to determine the actual notification delay time. For instance, if you set the parameter value to 5 seconds, and an agent has 7 tasks, they will receive a push notification for the task after 35 seconds (5 seconds multiplied by 7 tasks).
- Maximum Delay: This parameter allows you to set the maximum time in seconds for a busy agent to receive a task notification. For instance, if you set the parameter value to 50 seconds and an agent has 11 tasks, based on the value of notification delay per task defined above (5 seconds), they should receive the notification after 55 seconds (5 seconds multiplied by 11 tasks). However, if the value of 55 seconds exceeds the maximum delay defined here, the agent will not receive the task notification.
- Max Task Per Agent: Agents who exceed the maximum number of tasks defined here will not receive push notifications.
For more information on batch wise algorithm kindly refer to this video:
Pooling refers assigning two tasks to a single agent. You can pool a maximum of 2 tasks i.e. 4 points/stops to a single agent.
Parameters of Pooling:
- Threshold Radius: This parameter allows you to set the maximum permissible distance in kilometers (KM) between the agent’s location during the execution of the first task and the pickup location or address of the second task.
- Waiting Time At First Pickup: This parameter enables you to specify the estimated time, in minutes, that the agent will take at the first pickup point. This value is used in calculating the Service Level Agreement (SLA) and must be configured accordingly.
- ETA At Pickup:
- SLA Of Delivery: This parameter allows you to define the total time, in minutes, from the start of pickup to the completion of delivery. Our system utilizes this information to calculate the estimated time it will take for the agent to finish the task. If the agent can complete the task within the Service Level Agreement (SLA) defined by you, they will be assigned the second task.
- Max distance between both Pickups: This parameter allows you to define the maximum distance in kilometers (KM) between both pickup points. The system will only pool tasks that have pickup points within this specified radius.
- Max distance between both Deliveries: This parameter allows you to define the maximum distance in kilometers (KM) between both delivery points. The system will only pool tasks that have delivery points within this specified radius.
- Max distance between the agent and second delivery: This parameter allows you to define the distance in kilometers (KM) between the current location of the agent and the delivery point of the second task. Our system calculates the distance from the agent’s current location to the delivery point of the second task. Only if this distance is within the specified limit you have defined, the system will assign the second task to that agent.
- Send push to a busy agent first: This setting ensures that push notifications are sent to busy agents as a priority over free agents.
Additional Pooling Facts:
- Overlapping Task Filtering: When searching for a suitable agent, the system automatically filters out agents who already have a task that overlaps with the task being assigned. This ensures that agents are not assigned conflicting or overlapping tasks.
- Agent Sorting: Agents are sorted based on a weighted average that takes into account their proximity to the task location and the number of tasks they currently have. Proximity is given high priority in the sorting process, ensuring that agents closer to the task location are considered first.
- Request Sending Frequency: The system sends the task assignment request to each agent only once during a single cycle of auto-assignment, which is typically done in batches. This prevents agents from receiving duplicate or redundant assignment requests within a short period of time