Download PROGRAMACIÓN ESTOCÁSTICA CON FUNCIÓN

Document related concepts
no text concepts found
Transcript
PROGRAMACIÓN ESTOCÁSTICA CON FUNCIÓN
OBJETIVO FRACTIL. UNA APLICACIÓN A LA
PLANIFICACIÓN DE TESORERÍA
Antonio Cardona Rodríguez [email protected]
Universidad del País Vasco (UPV/EHU)
Reservados todos los derechos.
Este documento ha sido extraído del CD Rom “Anales de Economía Aplicada. XIV Reunión ASEPELT-España. Oviedo,
22 y 23 de Junio de 2000”.
ISBN: 84-699-2357-9
1
PROGRAMACIÓN ESTOCÁSTICA CON FUNCIÓN OBJETIVO FRACTIL.
UNA APLICACIÓN A LA PLANIFICACIÓN DE TESORERÍA.
Cardona Rodríguez, Antonio
[email protected]
Departamento de Economía Financiera I
Universidad del País Vasco/Euskal Herriko Unibertsitatea
Palabras clave: Programación estocástica, programación lineal, planificación
financiera, tesorería.
RESUMEN
La programación estocástica se ha desarrollado siguiendo distintos enfoques. En
particular, se han estudiado modelos que utilizan distintas funciones objetivo. En
nuestro trabajo utilizamos un programa con función objetivo del tipo fractil, esto es, que
se impone la optimización de un funcional de variable aleatoria, con la condición de que
el óptimo se alcance con una probabilidad α dada. La probabilidad α es fijada por el
decisor.
Presentamos un ejemplo sencillo de aplicación, en la que una entidad se propone
tener un nivel de tesorería, función de una variable aleatoria, que le permita afrontar
unos pagos determinados al final de cada período. Las variables de decisión son la
cantidad de dinero que se obtiene mediante descuento comercial y el importe pedido en
préstamo en cada período. Se trata de minimizar el coste de los fondos, función de una
variable aleatoria.
2
PROGRAMACIÓN ESTOCÁSTICA CON FUNCIÓN OBJETIVO FRACTIL.
UNA APLICACIÓN A LA PLANIFICACIÓN DE TESORERÍA.
INTRODUCCIÓN
La programación estocástica trata los problemas de programación matemática en
los que algunos de los parámetros implicados son variables aleatorias, generalmente de
distribución conocida.
Se han desarrollado distintos modelos dentro de la programación estocástica. En
particular, uno de los problemas que más se ha estudiado es el de las distintas formas de
la función objetivo, o por expresarlo mejor, los distintos criterios posibles de
optimización. Muchos programas estocásticos utilizan el criterio de optimizar la
esperanza matemática de la función objetivo. El problema es que una estrategia x cuyo
beneficio esperado sea mayor que el de otra y, puede sin embargo tener asociado
también un riesgo mayor de pérdida, de aquí que pueda ser interesante tener en cuenta
criterios que incluyan ese riesgo de alguna manera.
Hay problemas que pueden ser mejor tratados utilizando otros estadísticos, que
nos permiten tener en cuenta el riesgo de una forma más explícita que el criterio del
valor esperado. Estos problemas se engloban dentro de un grupo más general que es el
de los modelos de mínimo riesgo. Un caso particular es elque utiliza como criterio el
fractil, o cuantil, de la función objetivo aleatoria.
ESTABLECIMIENTO DEL PROBLEMA
Dado un conjunto de estrategias X ∈ Rm , que llamamos región factible, y una
función objetivo f(x) real de variable vectorial, nuestro problema es seleccionar la
estrategia x ∈ X, de forma que el valor de la función objetivo para esa estrategia sea el
mejor de todos los posibles. Si la función objetivo es lineal, y la región factible está
definida también por relaciones lineales entre las variables, estamos ante un programa
lineal. Si introducimos en el problema parámetros aleatorios, tenemos un modelo de
3
programación lineal estocástica. Los parámetros aleatorios pueden aparecer tanto en la
definición de la función objetivo como en la de la región factible, o en ambas.
Al introducir la aleatoriedad en el problema, la definición de óptimo cambia, ya
que, en general no se podrá, o no tendrá sentido calcular el óptimo de la función
objetivo para cada realización de las variables aleatorias que intervienen. De modo que
tendremos que redefinir nuestra búsqueda del óptimo en función de alguna de las
características estadísticas de la función objetivo.
Sea una función objetivo1 Φ(x, ξ), en la que x representa un vector de estrategias
m-dimensional perteneciente a una región factible X ∈ Rm , y ξ es un vector aleatorio ndimensional con función de distribución conocida: 2
Fξ (z) = Pr{ξ | ξ ≤ z}.
Supongamos, por centrar el problema, que nuestro objetivo es la minimización
de una función real Φ. Como es fácil de ver, minimizar Φ(x, ξ) es equivalente a
maximizar -Φ(x, ξ), por lo que el estudio de la minimización no supone una pérdida de
generalidad.
Puesto que Φ es función de una variable aleatoria ξ, debemos especificar qué
entendemos por mínimo, ya que éste será distinto para cada realización concreta de
dicha variable. Nos encontramos con que el concepto de solución óptima no está
claramente definido, como en el caso determinista. De hecho, ni siquiera el concepto de
región factible es igualmente aplicable. Si en la definición de X intervienen parámetros
aleatorios, también la región factible será distinta para cada realización de estos
parámetros. Si consideramos todas las estrategias posibles para todas las realizaciones
de las variables aleatorias, puede fácilmente ocurrir que la región factible no esté
acotada. Si por el contrario, obligamos a las estrategias a pertenecer a todas las regiones
posibles, la región factible puede ser vacía.
Por otra parte, parece claro que no puede tratarse igual un estrategia cuya
probabilidad de ser factible es muy pequeña, que otra que es factible casi seguro. Y
entre dos estrategias con igual probabilidad de pertenecer a la región factible, si la
1
De modo general utilizaremos letras griegas sin subíndice para designar vectores aleatorios, y
las mismas letras con los correspondientes subíndices para designar a las componentes de los vectores, es
decir a las variables aleatorias unidimensionales.
2
En lo sucesivo, omitiremos el subíndice de la función de distribución, que indica la variable
aleatoria, ya que utilizaremos esa notación con otro significado, como veremos más adelante.
4
función objetivo es aleatoria, el valor que asignan a ésta será también una variable
aleatoria, en la que habrá que hacer las oportunas consideraciones sobre probabilidad.
Entre las diversas opciones que existen se encuentran las que utilizan el fractil o
cuantil α del mínimo de la función objetivo aleatoria, calculado éste sobre todas las
estrategias posibles.
Si definimos: 3
Fφ(x) = Ρr{ξ | Φ(x, ξ) ≤ φ},
es decir, la función de distribución de la función de variable aleatoria Φ(x, ξ), para cada
valor de x ∈ X.
Definimos entonces la función fractil como:
Φα(x) = min{φ | Fφ(x) ≥ α}, con α ∈ (0, 1).
La función así definida caracteriza el nivel Φα de la función objetivo, del que
podemos confiar, con una probabilidad α, que una vez realizadas las variables
aleatorias, no va a ser sobrepasado.
En el fractil aparecen dos parámetros: la probabilidad α, y el nivel de
cumplimiento del objetivo, φ. Esto nos lleva a la posibilidad de establecer sobre el
fractil dos objetivos:
-
maximizar la probabilidad de no superar un determinado nivel, φ.
-
o minimizar el nivel a alcanzar, para una probabilidad α dada.
En el primero de los casos el decisor fija el nivel máximo que puede alcanzar la
función objetivo, y trata de minimizar la probabilidad de sobrepasarlo, o lo que es lo
mismo, maximizar la probabilidad de no sobrepasar ese nivel. Como Φ(x, ξ) depende de
una variable aleatoria, el valor de la función será una también una variable aleatoria de
función de distribución:
F(φ) = Ρr{Φ(x, ξ) ≤ φ }
Así pues, fijado el nivel φ, el objetivo es max F.
Este enfoque se suele conocer con el nombre de criterio de máxima
probabilidad.
3
Para evitar confusiones, observemos que la notación utilizada, Fφ(x), hace referencia a la
variable x, puesto que la función definida lo es de esa variable, el subíndice hace referencia al fractil de la
función aleatoria Φ, no a la variable aleatoria, como es habitual en la notación estadística.
5
En el segundo caso, lo que fijamos es la probabilidad α de que se alcance el
objetivo, en este caso, el mínimo de la función Φ. El problema consiste en minimizar la
función fractil
Φα = min{φ | Fφ(x) ≥ α}
respecto al conjunto de estrategias posibles X.
El objetivo será entonces:
min Φα = min(min{φ | Fφ ( x ) ≥ α}) = min(min{φ | P(Φ( x ,ξ ) ≤ φ) ≥ α})
x∈ X
x∈ X
x∈ X
Dicho de otra manera, el decisor fija una probabilidad α de cumplimiento del
objetivo, y el programa determina cuáles son las estrategias con las cuales puede
alcanzarse el objetivo con esa probabilidad dada. Esta imposición al valor óptimo de la
función objetivo convierte a la función original en una nueva restricción, al igual que las
que delimitan la región factible. Este enfoque lo llamaremos criterio fractil.
Nosotros utilizaremos este segundo enfoque, es decir, el de la minimización de
la función fractil. El significado de este problema se puede interpretar como que
deseamos hallar el menor valor posible de la función, con una garantía α de que
efectivamente no se sobrepasará ese valor. Con más rigor, el fractil Φα caracteriza el
nivel de cumplimiento del objetivo tal que el cumplimiento real (una vez realizadas las
variables aleatorias) no supere ese nivel, con una probabilidad α.
Así pues, resumiendo, debemos decidir una estrategia x ∈ X, que haga mínimo el
valor de la función Φα.
La resolución de este tipo de problemas es, en general muy compleja,
dependiendo del tipo de distribuciones implicadas, del tratamiento de las variables
aleatorias, de si éstas aparecen sólo en la función objetivo, sólo en el conjunto de
restricciones, o en ambos. En algunos casos, el problema se simplifica notablemente,
como por ejemplo si la distribución de las variables aleatorias toma una determinada
forma, si la función objetivo inicial es lineal, etc. Entre los métodos más habituales de
resolución está la búsqueda de un equivalente determinista, que puede ser resuelto con
los métodos conocidos de la programación determinista.
Una primera aproximación a este problema la encontramos en el llamado
criterio p-fractil, de Kataoka (1963). En Stancu-Minasian (1984), se analiza el uso del
criterio fractil en conjunción con otros, para el planteamiento de programas
6
multiobjetivo. Un análisis más completo del problema, con abundantes ejemplos y
exposición de algoritmos, puede verse en Kibzun, y Kan (1996)4 .
FUNCIÓN OBJETIVO LINEAL EN LAS VARIABLES ALEATORIAS
Un caso particular, que puede resultar interesante en muchos problemas es aquel
en que:
-
La función objetivo determinista es lineal en las variables de decisión x
-
Los parámetros aleatorios, aparecen sólo como coeficientes de las variables
de decisión en la función objetivo,
-
La distribución del vector de parámetros aleatorios es simétrica.
Esto es, la función objetivo es de la forma5
x TAθ,
con A matriz de dimensión m × n; o, con más generalidad:
x T(Aθ + b),
con θ vector aleatorio n-dimensional,
A matriz de dimensión m × n, y b vector m-
dimensional.
Bajo estos supuestos, el problema se simplifica considerablemente, ya que es
sencillo obtener un equivalente determinista del problema estocástico.
En este caso, el problema de minimizar la función fractil se convierte en el de
minimizar el equivalente determinista6
||ATx||θ1α + x Tb
Siendo
-
||ATx|| la norma euclídea del vector ATx,
-
θ1α el fractil α de la primera componente del vector aleatorioθ.
La función obtenida ya no es lineal, pero existen algoritmos que permiten la
resolución del problema.
Un ejemplo de distribución simétrica es la normal tipificada, N(0,1). teniendo en
cuenta que podemos tipificar una normal general mediante una transformación lineal, el
4
De este texto hemos tomado en buena parte la notación utilizada.
Siguiendo la norma habitual representamos las matrices con letras latinas mayúsculas, y los
vectores con minúsculas, y como matrices columna.
6
Kibzun y Kan (1996)
5
7
problema se hace aún más general. En el caso de que la variable aleatoria sea vectorial,
con componentes independientes, la normal multivariante N(0,I)7 también es simétrica.
Este vector representa un conjunto variables normales independientes de distribución
N(0,1).8
Si la variable aleatoria ξi sigue una distribución N(µi, σi), podemos tipificarla y
transformar la variable en θi =(ξi - µi)/ σi. La nueva variable aleatoria θi tendrá una
distribución normal N(0,1), con lo que el vector aleatorio θT = (θ1 ,θ2 , …, θn ) seguirá una
distribución normal N(0, I).
Matricialmente, la transformación es:
x T(Aξ + b)= x T(ASθ + Aµ + b)
 σ1 0

0 σ
2
Siendo S = 
 ... ...

0
0

0 
 µ1 

 

µ 
... 0
 , matriz de desviaciones típicas; y µ =  2 
 M 
... ... 
 

µ 
... σ n 
 n
...
vector de medias.
Y el equivalente determinista es,
Min ||STATx||θ1α + x T (Aµ+ b)
APLICACIÓN A UN PROBLEMA DE TESORERÍA
Un problema que puede tratarse mediante la programación lineal es el de la
planificación de tesorería. El problema de la planificación financiera a corto plazo, o
tesorería, intenta encontrar un equilibrio entre las corrientes de entradas y salidas de
fondos de la empresa. El problema tiene dos componentes principales:
-
Por una parte hay que prever la cantidad de dinero líquido necesaria para
hacer frente a las necesidades,
7
El 0 representa en este caso a la matriz nula de orden n, e I es la matriz identidad del mismo
orden.
8
-
Por otra hay que decidir de qué fuentes se va a conseguir ese dinero. En la
selección de estas fuentes entra como parte importante la consideración del
coste de los fondos.
Entre las fuentes de financiación a corto plazo más habituales están:
-
El descuento de papel comercial.
-
El aplazamiento de pagos, concedido por los proveedores.
-
Las líneas de crédito.
-
Los préstamos, con o sin garantías.9
El propósito inicial es decidir entre varias fuentes de financiación tratando de
tener el menor coste posible, teniendo en cuenta que se deben satisfacer unas
necesidades de liquidez para hacer frente a unos pagos determinados al final de cada
periodo, que supondremos mensual; y que existen también unas restricciones sobre las
fuentes de financiación. Como en el modelo aparecen variables aleatorias, la función
objetivo será también aleatoria, y lo que trataremos es de minimizar el fractil de dicha
función para una probabilidad α dada.
El planteamiento va a ser especialmente sencillo, ya que sólo pretendemos una
primera aproximación básica al problema.
Suponemos que la empresa mantiene el adecuado equilibrio del circulante, pero
que la corriente de entradas y salidas de fondos no tiene por qué estar ajustada
diariamente, así que tiene que prever de alguna manera el origen de los fondos
necesarios a una fecha dada.
En particular vamos a suponer que la empresa debe hacer frente a unos pagos
ineludibles al final de cada periodo, como pueden ser nóminas, o impuestos. Para
conseguir la liquidez necesaria puede conseguir financiación de dos modos:
-
dinero procedente de la actividad mercantil de la empresa, materializado en
papel comercial que puede descontar en el banco,
-
dinero procedente de un crédito o préstamo bancario.
8
En el caso de que las variables no sean independientes, es decir, que el vector siga una
distribución normal general N(µ,Σ), también podemos efectuar una transformación matricial, de forma
que obtengamos un vector aleatorio tipificado N(0,I), lo que nos permitirá aplicar los mismo resultados.
9
La planificación se hace para seis meses, y el objetivo es minimizar el coste de
los fondos, cuyas componentes son:
-
Gastos del descuento comercial.
-
Intereses y comisiones del préstamo.
Los parámetros del modelo son:
-
Necesidades de caja al final de cada mes.
-
Coste de los fondos.
-
Límite mensual de fondos obtenidos de cada una de las dos fuentes.
Las necesidades de caja las suponemos ciertas y conocidas. El coste de los
fondos obtenidos en préstamos también lo suponemos conocido. Trataremos de forma
distinta el coste del descuento. Este depende de varios factores:
-
Plazo de los efectos.
-
Tiempo hasta el vencimiento, al descontarse.
-
Riesgo de cobro.
-
Número de efectos,
-
Etc.
La empresa estima estos costes. Suponemos que en cada periodo, el coste por
unidad monetaria obtenida en descuento es una variable aleatoria que sigue una
distribución normal de media y varianza conocidas, y que esa distribución es
independiente para cada periodo.
Para terminar, supondremos que los fondos pedidos en préstamo, generan
interese durante un periodo, y que éstos aumentan las necesidades de fondos del periodo
siguiente.
La notación que vamos a usar es:
Li = liquidez necesaria al final del periodo i.
Di = dinero obtenido mediante descuento, en miles de euros.
9
En Pogue y Bussard (1972) puede encontrarse un completo ejemplo planificación de tesorería,
10
Pi = dinero obtenido en préstamo en el periodo i, en miles de euros.
ξi = coste del dinero obtenido mediante descuento comercial, en tanto por mil.
ri = coste del préstamo, en tanto por mil.
ii = tipo de interés mensual del préstamo, en tanto por uno.
MDi = límite de fondos obtenidos mediante descuento en el mes i.
MPi = límite de fondos obtenidos mediante préstamo en el mes i.
La función a minimizar es
C(D,P) = ∑(ξi Di + riPi)
que depende de los valores que tome la variable aleatoria vectorial n-dimensional ξ.
Y las restricciones:
D1 + P1 ≥ L1
Di + Pi - ii Pi-1 ≥ Li
(i = 2, ... 6)
0 ≤ Di ≤ MDi
(i = 1, 2, ... 6)
0 ≤ Pi ≤ MPi
(i = 1, 2, ... 6)
Como la función objetivo es lineal en las variables aleatorias y éstas son
independientes y siguen una distribución normal de media y desviación típica
conocidas, se puede obtener fácilmente el equivalente determinista de la minimización
del fractil, tal y como hemos visto anteriormente.
Haciendo el cambio de variable:
ξi = σi θi + µi
Tenemos
∑Diξi = ∑Di(σi θi + µi) = ∑Diσiθi + ∑Diµi
Una vez hecha la transformación, nos queda como función objetivo:
C(D,P) = ∑( σiθi Di + µi Di + riPi)
Utilizando el criterio fractil, se trata de minimizar
Kα(D,P) = min{C | FC (D,P) ≥ α}, con α ∈ (0, 1).
Siendo:
FC (D,P) = Ρ{θ | C(D,P,θ) ≤ c},
Como ya hemos visto anteriormente, el problema estocástico es equivalente al
determinista:
mediante programación lineal, en el que se incluyen diversas fuentes de financiación.
11
Min K = [Σ (σi Di)2 ]1/2θ1α + Σ(µi Di + riPi)
EJEMPLO NUMÉRICO
Supongamos los siguientes datos del problema:
Periodo
Coste medio descuento,
Varianza,
Necesidades de tesorería,
en tanto por mil, µi
σi2
en miles de euros, Di
1
9,21
9,5
225
2
7,23
8,3
198
3
8,61
9,2
153
4
6,42
8,5
167
5
8,13
9,1
216
6
9,11
10,1
257
El préstamo tiene una comisión de 1% sobre el importe mensual medio 1/6 ΣPi.
Y un tanto de interés del 7% anual, o 0,00583 por uno mensual. Suponemos que los
préstamos se mantienen durante el periodo correspondiente. El coste asociado al
préstamo es la suma de la comisión más los intereses, esto es, 9,167 por mil.
Además, la empresa tiene unos límites en su capacidad de descuento y
endeudamiento, de 180 mil euros y 220 mil euros, respectivamente, para cada mes.
Exigimos que el objetivo se cumpla con una probabilidad α = 0,95, por lo tanto,
será θ1α = 1,645.
El programa es:
Min K=
1,645[9,21D1 2 +7,23 D2 2 + 8,61D3 2 + 6,42D4 2 + 8,13D5 2 +9,11D6 2 ] 1/2
+ 9,5D1 + 8,3D2 + 9,2D3 + 8,5D4 + 9,1D5 +10,1D6 +
+ 9,167(P 1 +P2 + P3 +P4 +P5 +P6 )
sujeto a:
D1 + P1 ≥ 225
D2 + P2 – 0,00583P1 ≥ 198
12
D3 + P3 – 0,00583P2 ≥ 153
D4 + P4 – 0,00583P3 ≥ 167
D5 + P5 – 0,00583P4 ≥ 216
D6 + P6 – 0,00583P5 ≥ 257
0 ≤ Di ≤ 180
(i=1, 2, ..., 6)
0 ≤ Pi ≤ 220
(i=1, 2, ..., 6)
La solución del programa nos da los siguientes valores, en miles de euros:10
Periodo
Importe descontado
Importe del préstamo
1
5
220
2
9,357
189,927
3
0,182
153,926
4
8,231
159,666
5
1,382
215,549
6
38,257
220
Valor de la función objetivo: 11.420 euros.
El coste de los fondos será de 11.420 euros, con una probabilidad del 95%.
Para hacer una primera comparación, si hubiéramos resuelto el problema
utilizando los valores medios de los coeficientes de la función objetivo, los resultados
habrían sido:
Periodo
Importe descontado
Importe del préstamo
1
5
220
2
180
19,283
3
153,112
0
4
167
0
5
180
36
6
37,210
220
10
Obtenidos usando una hoja de cálculo EXCEL.
13
Coste de los fondos: 10.923 euros. Obviamente, el valor de la función objetivo
es menor, pero también tenemos una mayor probabilidad de que el valor real sobrepase
al calculado.
El caso es muy sencillo y poco realista, pero puede servir como ejemplo de
aplicación de una técnica que sigue siendo válida para el caso de que se incluyan más
variables y restricciones, de forma que se aproxime más a una situación real.
Por otra parte, la aplicación del modelo en la práctica exigiría el necesario
análisis de la solución y de la sensibilidad respecto a los parámetros, en especial los
relacionados con la aleatoriedad: distribuciones, probabilidad de cumplimiento, etc.
14
BIBLIOGRAFÍA
Kataoka, S. (1963): “A stochastic programming model”, Econometrica, vol. 31, nº 1-2,
pp. 181-196.
Kibzun, A.I. y Kan Y.S. (1996): Stochastic programming problems with probability
and quantile functions, John Wiley, Chichester.
Pogue, G.A. y Bussard, R.N. (1972): “A linear programming model for short term
financial planning under uncertainty”, Sloan Management Review, vol.13, nº 3, pp.
69-98.
Stancu-Minasian, I.M. (1984): Stochastic programming with multiple objective
functions, Reidel Publishing y Editura Academiei, Bucarest.
15