Síguenos

Inteligencia Artificial y contratación pública: haciendo predicciones del número de ofertas para un contrato

Cuando emprendimos el viaje de Gobierto Contratación teníamos varias ideas en mente, y, entre ellas, la de utilizar la información de contratación para aplicar elementos de Inteligencia Artificial y Machine Learning era una de las más importantes. Sin embargo, este propósito no deja de encerrar una serie de retos y desafíos que afrontar. El primero es, desde luego, saber por dónde empezar y, nosotros optamos por una idea que nos parece evidente: la presentación de ofertas.

Y es que pocas cosas provocan más inquietud entre las organizaciones públicas como que un contrato, especialmente uno importante, se quede desierto, paralizando todo, o, si no, que sólo haya una oferta y tener que conformarse con un plato de lentejas. Ahora, después de un tiempo importante de trabajo, lo hemos logrado, pero más que contar el qué, lo que resulta bastante sencillo y da poco juego, queremos contar el cómo hemos llegado hasta aquí.

LOS PROBLEMAS DE LAS OFERTAS EN LA CONTRATACIÓN PÚBLICA

Como decíamos, la preocupación por el número de ofertas es importante a la hora de hacer una licitación. Esto se debe a varios motivos.

  • Seguridad: no son muchos los casos en los que una convocatoria se queda desierta, lo que es un 2% de los contratos registrados en la PLCSP, la de Catalunya y la de Euskadi, pero a quién le toca ese 2%, tendrá que volver a empezar proyectos críticos y perderá una cantidad enorme de tiempo y energía.
  • Libertad y legalidad: en segundo lugar, la cantidad de ofertas es una manera de garantizar que hay una elección más favorable para la administración y la ciudadanía. En los casos en los que hay solo una oferta no hay ni mejor ni peor, solo hay una. Por otro lado, pocas cosas levantan más suspicacias y preocupaciones que una organización en la que sistemáticamente hay una oferta por contrato.
  • Competencia: Gestionar una política de contratación que potencia la competencia no sólo permite mejoras competitivas entre los proveedores, sino que además, potencia la creación de mercados y de una mayor profesionalización por parte de las empresas. Es más fácil concurrir al tercer proceso que al primero, dado que se aprende con la experiencia.

EL PROBLEMA A LA HORA DE ANTICIPAR OFERTAS

Una vez que teníamos claro el por qué era importante entender cómo podíamos hacer algo útil. No queríamos centrarnos en presentar, como un diagnóstico fatalista, el número de ofertas, sino facilitar algo accionable para las Administraciones Públicas. Esto suponía:

  • Entender los elementos de planificación de las ofertas. Decidir qué parámetros son accionables por parte de las Administraciones para poder atraer más o menos ofertas en su práctica de contratación. No entendemos, por ejemplo, la utilidad de recomendar a una administración local el número de habitantes, dado que es algo que se escapa de su ámbito de acción.
  • Encontrar la manera de optimizar la competencia: los escenarios de contratación disponibles permiten seguir un criterio que permita decidir qué y cómo gestionar los contratos.
  • Tener un mínimo de seguridad a la hora de decidir. Los datos no son un oráculo tan absoluto como puede parecer. Hay predicciones mejores, peores y escenarios poco o nada predecibles. En nuestro caso sabemos que no podemos ofrecer un escenario en el que la predicción no tuviera un mínimo de fiabilidad que permitiera tomar decisiones, al menos, informadas, pero sabiendo que la calidad de la predicción no siempre es la misma.

LOS RETOS A LA HORA DE CONSTRUIR EL PROYECTO

Con estas consideraciones, nos pusimos a trabajar utilizando todos los datos disponibles. El trabajo de un proyecto de Machine Learning tiene sus complejidades, y, en nuestro escenario, algunas eran especialmente importantes:

  • El modelado de datos: aunque nuestra primera opción y más lógica podría ser una regresión, teníamos que revisar nuestra idea del problema. ¿Es el número de ofertas un número, o pueden hacerse diferentes tramos? ¿Es igual el funcionamiento estadístico de no tener ofertas que de tener 4 ofertas?
  • Las inconsistencias en la fuente de datos: Tenemos un escenario en el que prácticamente todos los contratos se publican, pero la maldición de tener una práctica de publicación muy irregular y fragmentada e incompleta, como señala la Oficina Independiente de Regulación y Supervisión de la Contratación en su informe de 2020. No podemos decir que todo el mundo publique las mismas cosas, de la misma manera y en las mismas condiciones. Esto ha supuesto (y sigue suponiendo) uno de los mayores retos para Gobierto Contratación: homogeneizar los datos para que todo signifique lo mismo en todos los casos.
  • La insoportable variabilidad de la contratación. Cuando hablamos de contratación pública hablamos de una gran variedad de fórmulas, mercados, modelos y condiciones, y no todas ellas van a funcionar de la misma manera ni con la misma estabilidad para poder llegar a las mismas conclusiones ni con la misma fiabilidad.

LA CONSTRUCCIÓN DE LOS MODELOS

Con estos condicionantes, nos lanzamos a construir los modelos para conseguir nuestros propósitos. Para ello, tuvimos que:

  • Entender la relación de las variables. Muchas dimensiones pueden incidir en los contratos, el tipo de procedimiento, importe, calendario, etc. La cuestión era buscar las variables e identificar cuáles de ellas nos sirven para hacer la previsión y cuáles de ellas ofrecen algún margen de acción para los departamentos de contratación
  • Valorar la manera en la que influyen: En muchos casos nos podemos encontrar variables que aparentemente no influyen o, en otros, en que en verdad son fruto de otras variables y pueden sobrerrepresentarse en el modelado, empeorando el resultado
  • Catalogar los elementos que son accionables. El último punto es identificar los elementos que ofrecen algún margen de decisión a los contratantes y que van a definir el interfaz que facilite hacer simulaciones que faciliten la decisión.

LA SELECCIÓN DE MODELOS PARA CREAR UN SISTEMA

Como decíamos, la manera de aproximarse al problema era complicada. Tras hacer algunas valoraciones, decidimos optar por dos modelos diferentes para dos casos diferentes:

  • Definir si una licitación tendrá ofertas. Para este caso usamos un modelo de clasificación en el que se predice si habrá o no ofertas. Este modelo se sustenta en una red neuronal, consiguiendo, gracias a la estabilidad de los datos, unos niveles muy altos de fiabilidad.
  • Estimar el número de ofertas a recibir. Para este caso si utilizamos un modelo de regresión lineal que calcule un número que luego redondeamos. Como decíamos, la diversidad de tipos de contratos y procedimientos hacen que algunos casos tengan una fiabilidad menor que otros.

PONERLO A DISPOSICIÓN DEL CONTRATANTE

Por último tenemos que considerar de qué manera podemos hacer que todo el esfuerzo que hacen nuestros modelos sean comprensibles y útiles para quien los tiene que emplear. Esto supone diseñar el interfaz bajo los siguientes criterios:

  • Accionabilidad. En primer lugar, hay que facilitar a quienes usan la herramienta la interacción con los elementos que sabemos que influyen de manera efectiva en el número de ofertas (fechas, importes, CPVs, etc.)
  • Claridad. Tanto los resultados como los elementos contextuales que apoyan a la decisión deben ser comprensibles, lo que significa aplanar algunos términos de los algoritmos, como el número de ofertas
  • Transparencia: somos conscientes de que la herramienta tiene como finalidad apoyar a la decisión y no sustituirla. Esto hace que dejemos claro hasta qué punto el resultado es fiable para que en cada caso se tome la decisión adecuada. Esto nos lleva a decir la probabilidad de acierto y la comparación con el promedio de los contratos similares existentes.

¿QUÉ SUPONE ESTO PARA LOS CONTRATANTES?

En términos generales, esta herramienta aporta valor a la contratación de la siguiente manera:

  • Reducir la incertidumbre sobre ofertas desiertas. Este es el primer criterio que nos fijamos. Con un grado muy alto de fiabilidad podemos establecer si un contrato tendrá ofertas o no, y cómo puede cambiar esto cambiando los parámetros accionables
  • Facilitar la planificación de contratos para optimizar ofertas. Una planificación de contratos en términos temporales o de presupuesto (por poner dos ejemplos) puede facilitar que los contratos reciban ofertas suficientes sin una carga de trabajo adicional.
  • Complementar la comunicación de la contratación. Por último, en los casos en los que sea difícil conseguir ofertas, o se quiera ir a más, saber cuál es el máximo en condiciones normales facilita la decisión de usar mecanismos de comunicación complementarios, como invitar a proveedores, hacer anuncios previos o realizar consultas al mercado.

Y AHORA QUÉ…

Este trabajo es sólo el primer paso de todo lo que queremos hacer. A partir de aquí nos planteamos los siguientes retos.

  • Optimizar el modelado. Un modelo siempre es susceptible de mejora. Conforme mejoremos el tratamiento de datos, incorporaremos nuevas fuentes o ampliaremos actores, esperamos mejorar la fiabilidad, especialmente en los tipos de contratos que ofrecen una mayor incertidumbre.
  • Plantear modelos alternativos. La oferta de algoritmos, modelos y enfoques nos permite elegir entre una gran variedad de opciones a la hora de afrontar estos retos que nos hemos planteado. Quizá un enfoque nuevo resuelva algunos de los retos en los que podemos optimizar.
  • Plantear usos alternativos. Hemos trabajado con la base de hacer un modelo accionable para apoyar a la decisión, pero no descartamos aplicar filosofías y enfoques similares para cuestiones como el compliance o la evaluación de rendimientos, detectando, por ejemplo, contratos con participaciones inferiores a lo que cabría esperar.

Y, por último, como no, planteamos seguir aplicando modelos de Machine Learning a diferentes aspectos de la contratación para mejorar su práctica. Si te quedas con nosotros, te iremos contando.

Más en Gobierto: 

Nov 1, 2021
cerrar
¿Te ha interesado esto? Recibe nuestras novedades
.