Contexto
Con cierta independencia de la industria en la que nos encontremos, es común dentro de la gestión comercial, o de atención a clientes, tener equipos de personas (ejecutivos) responsables de estar pendientes de las necesidades de los clientes en busca de nuevas oportunidades de cross y/o up selling. Para este propósito, los ejecutivos tienen una cartera de clientes asignada, la cual puede o no estar "bien" balanceada, en el sentido de que todos los ejecutivos tienen igual cantidad de clientes en su cartera.
La importancia de tener carteras balanceadas radica en entregarles a todas las personas igualdad de oportunidades para cross o up selling, ya que estas usualmente se encuentran asociadas a comisiones por venta. Si un ejecutivo tiene 10 clientes, y otro tiene 100, podemos suponer que no se encuentran en igualdad de condiciones para realizar su trabajo y, por lo tanto, tampoco las mismas oportunidades de generar ingresos por ventas. Sin embargo, que todos los ejecutivos tengan la misma cantidad de clientes en su cartera tampoco asegura igualdad de oportunidades de venta, por lo que es necesario considerar otros factores, donde uno de estos podría ser la facturación que acumula la cartera de cada ejecutivo. Si dos ejecutivos tienen 100 clientes cada uno en su cartera, pero lo que facturan los clientes de una asciende a $1 millón, mientras que la de otro a $10 millones, entonces parece que las carteras siguen sin estar balanceadas, suponiendo que lo que pagan los clientes es, en cierta medida, un indicador de intensidad de necesidades y/o disposición a pagar.
Estando de acuerdo con lo anterior, ahora el problema es ¿cómo asignamos los clientes a la cartera de cada ejecutivo, cuidando a la vez que todos tengan igual cantidad de clientes y facturación? Si nos enfrentamos a una arbitrariamente pequeña cantidad de clientes y ejecutivos donde distribuirlos, quizás se puedan balancear las carteras manualmente sin mucho esfuerzo, pero en la medida que crecen la cantidad de clientes y ejecutivos esta tarea se vuelve virtualmente imposible de realizar a "prueba y error".
Luego, lo que propone este proyecto es un modelo de optimización en base a programación lineal binaria que busca la mejor asignación de clientes, de tal forma que todos los ejecutivos tengan igual cantidad de clientes y facturación en sus carteras. Aunque cabe destacar que lo que se presenta como "facturación" puede ser, en realidad, sustituido por cualquier medida que se encuentre apropiada.
Modelo de Optimización Homogénea
Este es el caso más "simple", y es donde tenemos una lista de de n clientes que queremos asignar sobre m ejecutivos, bajo el supuesto de que ningún ejecutivo tiene clientes asignados previamente. Es decir, los n clientes serán asignados a los m ejecutivos con independencia de su cartera actual. A modo de ejemplo, si tenemos 7.500 clientes, que en total suman $6.000 millones, y los queremos asignar entre 5 ejecutivos, entonces el resultado sería como se muestra en la siguiente tabla:
Ejecutivo | Clientes | Facturación |
---|---|---|
Ejecutivo 1 | 1.500 | $1.200 millones |
Ejecutivo 2 | 1.500 | $1.200 millones |
Ejecutivo 3 | 1.500 | $1.200 millones |
Ejecutivo 4 | 1.500 | $1.200 millones |
Ejecutivo 5 | 1.500 | $1.200 millones |
Total | 7.500 | $6.000 millones |
Luego, en concreto, el modelo propuesto para este caso es el siguiente:
Sea la cantidad de clientes que queremos asignar entre ejecutivos:
Variables de decisión
Parámetros necesarios
Parámetros opcionales
Función objetivo:
Sujeto a:
- Cantidad de clientes por ejecutivo
- Facturación total por ejecutivo
- Asignar cada cliente a un solo ejecutivo
- Variables de decisión binarias
Consideraciones
-
Si la cantidad de clientes no es múltiplo de la cantidad de ejecutivos , entonces para las restricciones de clientes por ejecutivo (1) se toma el entero inferior de este cociente. Por lo tanto, puede que algunos clientes no sean asignados.
-
Si la facturación total de los clientes a asignar no es múltiplo de la cantidad de ejecutivos , entonces también puede que algunos clientes queden sin asignar, ya que se tomará como parámetro de las restricciones de facturación total por ejecutivo (2) el entero inferior de este cociente.
-
Las restricciones que resultan de (3) permiten que algunos clientes queden sin asignar. Esto permite que el modelo se pueda ejecutar más rápido cuando la solución óptima es muy ajustada.
-
Los parámetros opcionales de holgura y son para poder relajar las restricciones (1) y (2), permitiendo al modelo no asignar todos los clientes para mejorar su tiempo de ejecución. El valor de los parámetros se aplica sobre cada una de las restricciones, y es el mismo que se defina para todas. Esto quiere decir que, por ejemplo, el modelo no permite quitar arbitrariamente distinta cantidad de clientes a cada ejecutivo. Si se define , se aplica el mismo valor a las restricciones que resultan de (1). Exactamente lo mismo aplica para el parámetro . Además, que se permita no asignar todos los clientes no implica necesesariamente que no todos sean asignados.
Modelo de Optimización Heterogénea
Es una generalización del modelo homogéneo, donde se considera que los ejecutivos podrían tener una cartera previamente asignada, y se requiere asignar un pull de nuevos clientes a los ejecutivos, de tal manera que las carteras resultantes queden balanceadas.
Sea la cantidad de clientes que cada uno de los ejecutivos tenía previamente, la facturación total de la cartera de cada ejecutivo previamente y la cantidad de clientes nuevos que se quiere asignar.
Variables de decisión
Parámetros necesarios
Parámetros opcionales
Función objetivo:
Sujeto a:
- Cantidad de clientes por ejecutivo
- Facturación total por ejecutivo
- Asignar cada cliente a un solo ejecutivo
- Variables de decisión binarias