• No se han encontrado resultados

Modelos de Redes geometría de la posición diagrama nodos vínculos arcos ramas red cadena ruta camino ciclo

N/A
N/A
Protected

Academic year: 2021

Share "Modelos de Redes geometría de la posición diagrama nodos vínculos arcos ramas red cadena ruta camino ciclo"

Copied!
10
0
0

Texto completo

(1)

Modelos de Redes

En el  contexto de la Investigación Operativa, los modelos de redes refieren al  conjunto  especial  de  problemas  en  los  que  la  geometría  de  la  posición,  espacial pero también temporal, es una característica relevante.

       

● ● ☼ ☼ ☼ ● ●

Se ha desarrollado una terminología específica que conviene tener presente. Un  diagrama (o grafo) está constituido por un conjunto de uniones o intersecciones  llamados nodos, los que se unen entre sí por vínculos (arcos o ramas). Una  red es un diagrama al que se asociaron medidas cuantitativas a los vínculos y/o  nodos.         ● ● ☼ ☼ ☼ ● ● Una secuencia de vínculos que conectan dos nodos cualesquiera conforman una  cadena. Si se especificó una dirección de flujo a lo largo de la cadena, entonces  se  habla  de ruta  o camino.  Un ciclo  es  una  cadena  que  conecta  a  un  nodo  consigo mismo (i.e. el nodo origen es el de destino).

(2)

Modelos de Redes

Una  diagrama conectado  es  aquel  en  el  que  hay  una  cadena  conectando  a  cada par de nodos. Un árbol es un diagrama o red conectada que no contiene  ciclos.

       

● ● ☼ ☼ ☼ ● ●

En muchos modelos nos interesarán los vínculos dirigidos u orientados, en los  que  se  ha  dado  un  sentido  o  dirección  al  mismo  de  modo  que  se  puede  identificar  uno  de  los  nodos  como  el  origen  y  el  otro  como  el  destino.  Así,  se  hablará de un diagrama o red dirigida cuando todos los arcos sean orientados.

       

● ● ☼ ☼ ☼ ● ●

Todos  los  problemas  que  se  estudiaran  pueden  ser  planteados  como  casos  especiales  del  problema  de  la  PL.  No  obstante,  para  todos  ellos  se  han  desarrollado algoritmos especiales que los resuelven más eficientemente.

(3)

El Modelo de Transporte

El modelo se ha desarrollado para distribuir de manera óptima bienes o  servicios desde múltiples fuentes hacia múltiples destinos.

       

● ● ☼ ☼ ☼ ● ●

El  objetivo  es  minimizar  alguna  medida  de  la  eficiencia  en  la  distribución (costos, distancias, tiempos). Las variables de decisión, xi,j,  denotan  la cantidad  de  bienes o  servicios que  se transportarán  desde  la  fuente i hasta el destino j.

       

● ● ☼ ☼ ☼ ● ●

Sea  el  problema  de  distribuir  plantines  desde  tres  viveros  hasta  cuatro  sitios de plantación (rodales). Las cantidades de plantines requeridas en  cada  sitio  de  plantación  se  especifican  de  acuerdo  con  la  superficie  a  plantar  y  la  densidad  estipulada.  También  se  han  especificado  las  disponibilidades de plantines en cada vivero. Finalmente, se especifican  las distancias entre viveros y sitios de plantación.

(4)

El Modelo de Transporte

Vivero (i) Distancias (km) del Vivero i al Rodal j Disponibilidad (106 plantines) Rodal (j) 1 2 3 4 1 8 19 22 6 5 2 15 6 16 5 1 3 7 8 9 12 2 Requerimiento (106 plantines) 2 3 2 1 8 V3 8 19 7 6 15 22 5 16 6 R 1 R4 R2 R3 8 9 12 V2 V1

(5)

El Modelo de Transporte

Si asumimos que los costos son directamente proporcionales a la distancia (e.g.  todos  los  caminos  son  de  calidad  comparable),  entonces  el  siguiente  modelo  minimiza los costos de distribuir los plantines:

Minimizar

z

=

8

x

1,1

+

19

x

1,2

+

22

x

1,3

+

6

x

1,4

+

15

x

2,1

+

6

x

2,2

+

16

x

2,3

+

5

x

2,4

+

7

x

3,1

+

8

x

3,2

+

9

x

3,3

+

12

x

3,4

Sujeto a

x

1,1

+

x

1,2

+

x

1,3

+

x

1,4

=

5

(

V

1

)

x

1,1

+

x

2,1

+

x

3,1

=

2

(

R

1

)

x

2,1

+

x

2,2

+

x

2,3

+

x

2,4

=

1

(

V

2

)

x

1,2

+

x

2,2

+

x

3,2

=

3

(

R

2

)

x

3,1

+

x

3,2

+

x

3,3

+

x

3,4

=

2

(

V

3

)

x

1,3

+

x

2,3

+

x

3,3

=

2

(

R

3

)

x

i , j

0

x

1,4

+

x

2,4

+

x

3,4

=

1

(

R

4

)

Solución óptima

z

*

=

84

; x

1,1*

=

2

; x

1,2*

=

2

; x

1,4*

=

1,

x

*2,2

=

1

; x

*3,3

=

2

(6)

El Modelo de Transporte

Sea xi,j la cantidad de plantines a transportar desde el vivero i al rodal j,

di,j la distancia entre el vivero i y el rodal j, V el número de viveros, R el

número de rodales, Di la disponibilidad de plantines del vivero i y Qj el

requerimiento de plantines del rodal j. Si se asume que los costos son

directamente proporcionales a la distancia entre los viveros y los rodales, entonces la formulación general del modelo que minimiza los costos de distribuir los plantines se puede escribir así:

Minimizar

z

=

i=1 V

j=1 R

d

i , j

x

i , j

Sujeto a:

j=1 R

x

i , j

=

D

i

(

i

=

1,2,

, V

)

i=1 V

x

i , j

=

Q

j

(

j

=

1,2,

, R

)

x

i , j

0

(

i

=

1,2,

,V ; j

=

1,2,

, R

)

(7)

El Modelo de Transporte

Si bien se han desarrollado algoritmos de solución específicos para el modelo  del transporte, el problema presentado es un problema de Programación Lineal  y, como tal, puede ser resuelto con el algoritmo simplex. El algoritmo simplex  es  extremadamente  eficiente  y  se  ha  implementado  en  numerosos  programas  informáticos,  desde  las  planillas  de  cálculo  hasta  potentísimos  programas  desarrollados específicamente para la optimización.

       

● ● ☼ ☼ ☼ ● ●

Actualmente, aparte de la versatilidad que ofrecen las planillas de cálculo y que  permite  resolver  problemas  de  tamaño  moderado,  una  opción  más  potente  consiste en escribir el problema en un lenguaje que emula la notación algebraica  (de las sumatorias) y encomendarle la solución a un programa que entienda o  traduzca el formato empleado (comúnmente llamados solvers). Programas que  pueden  resolver  problemas  con  esta  notación  hay  de  todo  tipo,  desde  comerciales hasta libres, para todos los sistemas operativos y hasta se pueden  resolver en sitios web dedicados.

(8)

Resolver problemas de Programación Lineal

Una  opción  que  combina  una  lenguaje  algebraico  muy  potente  con  un  solver  capaz de resolver problemas de gran escala, que se distribuye con licencia de  software  libre  y  que  se  ha  compilado  para  correr  tanto  en  windows  como  en  linux, es GLPK (GNU Linear Programming Kit).

       

● ● ☼ ☼ ☼ ● ●

El lenguaje algebraico se llama GNU MathProg y es un lenguaje de modelado  diseñado  para  describir  modelos  lineales  de  programación  matemática.  El  lenguaje  es  un  subconjunto  del  lenguaje AMPL.  Su  implementación  en  GLPK  está basada principalmente en el paper: Robert Fourer, David M. Gay & Brian W.  Kernighan, A Modeling Language for Mathematical Programming. Management  Science 36 (1990), pp. 519­554. El documento de referencia del lenguaje está  disponible en castellano (adjunto a esta presentación).         ● ● ☼ ☼ ☼ ● ● El proyecto GLPK está hospedado en: https://www.gnu.org/software/glpk/.

(9)

GLPK (Instalación y uso)

En el sitio oficial está disponible el código fuente de GLPK, de modo que para su  uso será necesario compilarlo. Para ahorrarse este paso, es conveniente instalar  directamente  los  ejecutables  compilados.  Para  windows,  la  recomendación  es  usar las compilaciones del proyecto winglpk: http://winglpk.sourceforge.net/. Para  linux, las principales distribuciones incluyen la posibilidad de instalar un paquete  con  el  ejecutable  compilado.  En  cualquiera  de  los  dos  sistemas  operativos,  el  solver se invoca mediante la linea de comandos o shell (tipear glpsol ­­help)

       

● ● ☼ ☼ ☼ ● ●

Otra  posibilidad  es  instalar  un  IDE  (Entorno  de  Desarrollo  Integrado).  El  recomendado  provee  una  interfaz  para  escribir  los  problemas  en  el  lenguaje  GNU MathProg con resaltado, verificación y control de la sintaxis, además de la  instalación del solver como ejecutable y una interfaz en la que se presentan los  resultados  de  la  optimización.  Naturalmente,  a  esta  funcionalidad  se  accede  mediante menúes. La recomendación es GUSEK (GLPK Under Scite Extended  Kit): http://gusek.sourceforge.net/.

(10)

Volviendo al Modelo de Transporte

El problema de distribuir plantines desde tres viveros a cuatro rodales en los que  serán plantados, escrito con la sintaxis del lenguaje GNU MathProg se codifica  en  un  archivo  en  formato  de  texto  puro  con  la  extensión .mod  (se  adjunta  el  archivo a la presentación). Los resultados del solver se pueden escribir en un  archivo con la extensión .sol (también se adjunta el archivo a la presentación).

       

● ● ☼ ☼ ☼ ● ●

Si  no  se  ha  instalado  GUSEK,  con  el  archivo  del  modelo  se  puede probar  un  solver on­line en: http://www3.nd.edu/~jeff/mathprog/mathprog.html.

       

● ● ☼ ☼ ☼ ● ●

Pero  definitivamente  el  sitio  más  recomendable  para  resolver  problemas  de  optimización  (lineal  y  no  lineal)  mediante  la  web  es  el  NEOS  Server  for  Optimization: http://www.neos­server.org/neos.

Referencias

Documento similar