---
metadata:
  - name: generator
    content: Diplodoc Platform v5.19.6
alternate:
  - https://docs.routeq.com/doc/en/vrp/weighted-drop-penalty.md
title: RouteQ — proprieties and options — proportional penalty
---
> **Documentation Index:** Fetch the complete configuration index at https://docs.routeq.com/doc/en/llms.txt


# Proportional penalty for not delivering an order

Consider using the `weighted_drop_penalty` parameter when:

- The list of orders contains one or more large and many small packages.
    
- The available list has many different-sized vehicles.
    
- Based on capacity constraints, the larger loads only fit some of the vehicles on the available list.
    
- Vehicle load capacity is high.
    
Under such circumstances, the algorithm may exclude a large load from all routes, and as a result, the order will never be completed. This is because large orders have few of routing options, and small ones have many.

When the `weighted_drop_penalty` parameter is set to `true`, [penalties for undelivered orders are](https://docs.routeq.com/doc/en/vrp/properties-of-orders.md#penalties-not-delivering) proportional to the cargo's weight and volume. This causes the algorithm to try to allocate large orders first.

When `weighted_drop_penalty` = `true`, the penalties for not delivering an order specified in its planning task do not apply.

**Example 1**

29 orders have been assigned to two couriers. One of the orders weighs 400 kg. The total weight of the orders is 1800 kg. One vehicle can carry up to 700 kg, and the other up to 1000 kg. `weighted_drop_penalty` is set to `false`.

Together, the two vehicles don’t have enough load capacity to deliver all the orders. Because the algorithm is probabilistic, the large order ends up unassigned.

[API request (JSON)](https://courier.yandex.ru/vrs/api/v1/log/request/d73079b5-ac8b4002-ff88aaf2-a6604162) ⋅ [API response](https://courier.yandex.ru/vrs/api/v1/result/d73079b5-ac8b4002-ff88aaf2-a6604162) ⋅ [View on map](https://yandex.com/courier/mvrp-map#d73079b5-ac8b4002-ff88aaf2-a6604162)

**Example 2**

The same as in example 1, but `weighted_drop_penalty` = `true`. As a result, the large order gets delivered, but two smaller orders remain unassigned.

[API request (JSON)](https://courier.yandex.ru/vrs/api/v1/log/request/e56525e1-6c727c96-327e059b-5802b7ce) ⋅ [API response](https://courier.yandex.ru/vrs/api/v1/result/e56525e1-6c727c96-327e059b-5802b7ce) ⋅ [View on map](https://yandex.com/courier/mvrp-map#e56525e1-6c727c96-327e059b-5802b7ce)

{% include [warehouse-feedback](_includes/feedback-81845556eeea.md) %}
