Table Of Content1
Universitat Rovira i Virgili - Universitat Oberta de
Catalunya
Máster en Ingeniería Computacional y Matemática
Algoritmos Simheurísticos para
Optimizar el Crédito Comercial
en PYMEs
Trabajo Final de Máster
Autor: Directoras:
Juan Felici Ferrís D.ª Laura Calvet Liñán
Dr.ª Eva Vallada Regalado
Valencia - 7 de julio de 2017
Agradecimientos
Quisiera dar las gracias a las directoras de este trabajo: D.ª Laura Cal-
vet Liñán y Dr.ª Eva Vallada Regalado, por el amable trato que me han
dispensado y su disposición total para ayudarme.
Gracias a mi familia y amigos por su apoyo incondicional desde el inicio.
I
II
Resumen
El crédito comercial es un acuerdo, entre proveedor y cliente, que per-
mite el aplazamiento del pago de una compraventa de bienes o prestación de
servicios. Esta forma de financiación es de gran relevancia para las PYMEs,
sobre todo en periodos de recesión. La concesión de crédito comercial, sin
embargo, conlleva asumir riesgos debido a la exposición al impago. Una de
las estrategias para gestionar este riesgo es el uso de métodos cuantitativos.
En el marco de la gestión del riesgo, este trabajo desarrolla un sistema
de apoyo a las decisiones, de código abierto, que permite a las PYMEs de-
terminar la cantidad y el periodo de crédito comercial que deben conceder
a cada cliente. La elaboración de esta herramienta se ha realizado en tres
partes: definición del modelo de riesgo, diseño del algoritmo de resolución e
implementación computacional.
Elmodeloderiesgoempleadoestábasadoenlaaproximaciónporportafo-
lio. Esta forma de abordar el problema consiste en considerar el conjunto de
inversiones como un todo, en contraposición a la evaluación transacción a
transacción.
La estrategia empleada para la optimización del portafolio es el uso de
simheurísticas. Se trata de algoritmos de optimización que integran técni-
cas metaheurísticas con métodos de simulación. El algoritmo propuesto aquí
combinalasimulacióndeMonte-Carloconunalgoritmogenético.Mientrasla
simulación se encarga de representar la naturaleza estocástica del problema,
la técnica metaheurística se ocupa de explorar el espacio de soluciones.
Tras definir el modelo y algoritmo de resolución se implementa el modelo
computacional. Para ello se utiliza el lenguaje de programación Python.
Por último, se realizan una serie de experimentos donde se comparan
diferentes algoritmos según su nivel de complejidad y realismo.
Palabras clave: Crédito comercial; PYMEs; Gestión del riesgo; Méto-
dos cuantitativos; Optimización de portafolios; Simheurísticas; Simulación
de Monte-Carlo; Algoritmos genéticos; Python; Optimización dinámica.
III
IV
Abstract
Trade credit is a commercial agreement that allows a customer to pay
the supplier in a deferred way. For many Small and Medium Enterprises
(SMEs) trade credit represents a great portion of their assets. Nevertheless,
the granting of credit decisions involve assuming risk due to exposure at
default. A way to manage that risk is to use quantitative methods.
This project develops an open-source Decision Support System (DSS) to
tackle the risk management process in SMEs, when deciding about the credit
conditions that can be offered to their customers. The framework of the DSS
consists of three phases: definition of the model, design of the algorithm and
implementation.
A portfolio approach has been used to configure the model. This way
the group of investments are treated as a whole, instead of considering each
investment individually.
The algorithm proposed herein combines Monte-Carlo simulation with a
geneticalgorithm.WhiletheMonte-Carlosimulationdealswithstochasticity,
the genetic algorithm deals with the non-linearity, non-convexity nature of
the problem. This combination of simulation and metaheuristics is called
simheuristics.
Once the model and algorithm are designed, the Python programming
language is employed to implement the DSS.
Finally, a set of experiments are carried out to compare the performance
of different algorithms according to their level of complexity and realism.
The lowest level treats the exposure at default as a deterministic variable;
the highest level deals with actual data and stochastic exposures at default
in order to perform a dynamic optimization.
Key words: Trade credit; Small and medium enterprises; Quantitative
methods;RiskManagement;Portfoliooptimization;Monte-Carlosimulation;
Genetic algorithms; Simheuristics; Python; Dynamic optimization.
V
VI
Índice general
Figuras XIV
Cuadros XVI
Nomenclatura XVIII
Introducción XX
Objetivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . XXIV
Justificación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . XXV
Mapa de la memoria . . . . . . . . . . . . . . . . . . . . . . . . . . XXVI
I Gestión del Crédito Comercial 1
1. Crédito comercial 2
1.1. ¿Qué es el crédito comercial? . . . . . . . . . . . . . . . . . . 2
1.2. PYMEs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.3. Ejemplos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.4. Gestión del riesgo . . . . . . . . . . . . . . . . . . . . . . . . . 6
2. Teoría moderna del portafolio 8
2.1. La frontera eficiente . . . . . . . . . . . . . . . . . . . . . . . 8
2.2. Rendimiento y riesgo . . . . . . . . . . . . . . . . . . . . . . . 9
2.3. Diversificación . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.4. Portafolio de N acciones . . . . . . . . . . . . . . . . . . . . . 16
2.5. Aplicación sobre el TC . . . . . . . . . . . . . . . . . . . . . . 17
VII
2.5.1. Distribución de pérdidas . . . . . . . . . . . . . . . . . 17
2.5.2. Fuentes de incertidumbre . . . . . . . . . . . . . . . . 19
3. Algoritmos simheurísticos 20
3.1. ¿Qué son los algoritmos simheurísticos? . . . . . . . . . . . . . 20
3.2. Simulación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
3.3. Metaheurística . . . . . . . . . . . . . . . . . . . . . . . . . . 24
3.3.1. Algoritmos genéticos . . . . . . . . . . . . . . . . . . . 24
II Modelo de Diseño 28
4. Modelo conceptual 29
4.1. TCPOP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
4.1.1. Introducción al problema . . . . . . . . . . . . . . . . 29
4.1.2. Planteamiento del problema . . . . . . . . . . . . . . . 31
4.1.3. STCPOP . . . . . . . . . . . . . . . . . . . . . . . . . 33
4.1.4. DSTCPOP . . . . . . . . . . . . . . . . . . . . . . . . 34
4.2. Modelo matemático . . . . . . . . . . . . . . . . . . . . . . . . 37
4.2.1. Datos . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
4.2.1.1. Datos requeridos . . . . . . . . . . . . . . . . 37
4.2.1.2. Obtención de datos . . . . . . . . . . . . . . 39
4.2.2. Definición del modelo . . . . . . . . . . . . . . . . . . 39
4.2.2.1. Objetivo . . . . . . . . . . . . . . . . . . . . 39
4.2.2.2. Asunciones . . . . . . . . . . . . . . . . . . . 39
4.2.2.3. Simplificaciones . . . . . . . . . . . . . . . . 40
4.2.2.4. Identificación de datos de entrada y salida . . 40
4.2.3. Descripción formal de modelo . . . . . . . . . . . . . . 40
4.2.4. Representación del modelo . . . . . . . . . . . . . . . . 41
5. Algoritmo de resolución 42
5.1. Metaheurística . . . . . . . . . . . . . . . . . . . . . . . . . . 43
5.1.1. TCPOP . . . . . . . . . . . . . . . . . . . . . . . . . . 43
5.2. Simheurística . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
VIII
Description:parte se introducen técnicas de simulación junto a metaheurísticas; en la tercera .. un portafolio de dos acciones, a continuación hablamos sobre los límites de def __init__(self, populationSize, chromosomeLength):. """ the interpreter. 59 Data class allows to extrat sensitive data of the f