Académique Documents
Professionnel Documents
Culture Documents
Cristobal de Huamanga
Facultad de Ingeniera Minas, Geologa y
Civil
Escuela de Formacion Profesional de Ingeniera
Civil
TE
UNSCH ZARA
INGEE N IERR A
CI V I L
Docente:
ING. CASTRO PEREZ, cirstian
Alumnos:
TINEO GUTIERREZ, Jorge.
Ayacucho - Peru
Indice general
1 INTRODUCCION 2
2 MODELO DE REDES 3
2.1 DEFINICIONES PREVIAS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
2.2 OBTENCIN DE RUTAS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.3 CAMINOS DE DISTANCIA MNIMA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
2.3.1 ALGORITMO DE DIJKSTRA (Grafo Dirigido) . . . . . . . . . . . . . . . . . . . . . . 9
2.3.2 ALGORITMO DE FLOYD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
2.3.3 COMPARACION . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
3 MODELO DE TRANSPORTE 28
3.1 DEFINICIN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
3.2 3 MTODO ESQUINA NOROESTE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
3.3 MTODO DE COSTO MNIMO. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
3.4 MTODO DE VOGUEL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
3.5 MTODO DE RUSSELL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
5 conclusiones 47
Bibliografa 48
Los algoritmos mencionados hallan la distancia mnima y los caminos por donde se
obtiene. Pero es con el comando graphshortestpath de MATLAB con el que podemos
graficar los nodos y senalar la ruta optima. En el modelo de transportes se desarrollaron
los siguientes metodos: Esquina Noroeste, Voguel, Russell y Costo mnimo.
El modelo de transporte se define como una tecnica que determina un programa de trans-
porte de productos o mercancas desde unas fuentes hasta los diferentes destinos al menor
costo posible.
INTRODUCCION
Nos es interesante estudiar el caso optimizacion en el que debemos decidir que recorrido
nos es mas conveniente tomar a la hora de desplazarnos en medio de una ciudad ya que
suele ser un sitio complicado para conducir o si caminamos encontrar una ruta corta que
nos ahorre tiempo.
Tambien el informe muestra de una manera mas general y paso por paso el proceso de
los resultados que brinda el programa. Se suprimio la parte teorica vista en los informes
precedentes; en esta ocasion, se trato mas la parte operativa, los algoritmos, y el desarrollo
con los distintos metodos un problema aplicativo como ejemplo.
MODELO DE REDES
GRAFO
Un grafo esta formado por un par de conjuntos finitos, y se denota por G = (V, A),
donde V es el conjunto de vertices y A es el conjunto de aristas.
Cada arista de a A conecta dos vertices de V, que llamaremos extremos de la
arista, y escribiremos a = x, y para indicar que a conecta o une los vertices x e y.
Diremos entonces que x e y son adyacentes por a.
En un grafo podemos encontrarnos lazos (aristas cuyos extremos coinciden), aristas
multiples (mas de una arista conectando los mismos vertices) y vertices aislados (no
estan conectados a ningun otro vertice).
Pero tambien podemos hablar de grafos dirigidos donde cada arista tiene una di-
reccion de recorrido; modelos para una distribucion de agua por la red de tuberas
de la ciudad, la red viaria con calles de sentido unico, etc., son ejemplos de grafos
dirigidos.
. GRAFO NO DIRIGIDO:
Un grafo no dirigido G consiste en un conjunto V de vertices (o nodos) y un conjunto
E de lados (ramas o enlaces) tales que cada lado e E esta asociado a un par no
ordenado de vertices v y w. Si un lado e esta asociado a un unico par de vertices v
y w, entonces e = (v, w) o e = (w, v).
. GRAFO DIRIGIDO:
Un grafo dirigido (o digrafo) G consiste en un conjunto V de vertices (o nodos) y
un conjunto E de lados (o ramas) tales que cada lado e E esta asociado a un par
ordenado de vertices. Si un lado e esta asociado a un par ordenado unico de vertices
v y w, se escribe e = (v, w).
Un dgrafo o grafo dirigido esta formado por un par de conjuntos finitos, y lo de-
notaremos por D = (V, A), donde V es el conjunto de vertices y A es el conjunto
de arcos o aristas dirigidas entre los vertices. Cada arco a A conecta dos vertices
de V, que llamaremos respectivamente extremo inicial y extremo final del arco, y
escribiremos a = (x, y) para indicar que a conecta o une el vertice x con el vertice
y. Diremos tambien que x es adyacente a y, y que a incide en y. Si los grafos se
representan con puntos y lneas que los unen, los dgrafos se representan con puntos
y flechas entre ellos. Los grafos se clasifican por ser dirigidos o no, y por tener aris-
tas/arcos multiples y lazos. De un grafo sin aristas multiples ni lazos se suele decir
que es simple.
nota.- Llamaremos grafos a los no dirigidos, sin aristas multiples ni lazos (grafos
no dirigidos simples), y dgrafos a los dirigidos, sin arcos multiples ni lazos dirigidos
(grafos dirigidos simples). Si G = (V, A) es un grafo, con V = v1 , v2 , ..., vn , escribi-
remos vi , vj o vj , vi para denotar la arista que une ambos vertices. Si D = (V, A) es
un dgrafo, denotaremos por (vi, vj) el arco que conecta vi con vj .
Observaciones.-: En un grafo solo puede haber una arista entre los mismos dos
vertices, y en un dgrafo puede haber hasta dos arcos pero de sentidos contrarios.
Si un grafo tiene n vertices, en cada vertice pueden incidir a lo mas n 1 aristas. Si
es un dgrafo, de cada vertice pueden salir a lo mas n 1 arcos y pueden incidir en
el n 1 arcos como mucho.
SUBGRAFO
Un subgrafo (subdgrafo) de un grafo (dgrafo), es un grafo (dgrafo) formado con
vertices y aristas (arcos) del inicial.
Es decir, se obtienen eliminando aristas y/o vertices del inicial (si se elimina un
vertice, tambien deben eliminarse todas las aristas incidentes en el).
NODOS
Nodo (vertice) : Un crculo de una red utilizada para representar una
planta, almacen o tienda.
Nodo de Suministro: Nodo desde el cual los productos se van a enviar.
Nodo de demanda: Nodo que va a recibir los productos para cumplir con
una demanda conocida.
Nodo de transbordo: Nodo que recibe productos desde otros nodos para
su distribucion.
ARCO:
Arco (enlace): Lnea de una red que conecta un par de nodos. Se le utiliza
para representar una ruta valida desde el nodo origen al nodo de distribucion.
Arco dirigido: Indica el sentido de movimiento de los productos.
CAMINO:
Una secuencia de nodos en una red unidos por arcos (dirigidos o no dirigidos).
TRAYECTORIA (LAZO):
Es un camino cerrado (ciclo) donde el primer nodo es a su vez el ultimo.
Representacion de un grafo:
Un grafo se puede representar matematicamente como:
a) Una matriz
b) Una lista enlazada
c) Arbol
Representacion Matricial
i) Matriz de Adyacencia.
ii) Matriz de costo (beneficio).
MATRIZ DE ADYACENCIA
Para un grafo G, es una matriz A de dimension N xN , donde A[i, j] es verdadero
(1) si, y solo si, existe un arco que vaya del vertice i al vertice j. En ausencia de arco
directo se representa generalmente por 0.
Un grafo o un dgrafo D = (V, A) puede tambien describirse mediante una tabla o
matriz que indique las conexiones:
Si D tiene n vertices, se llama matriz de adyacencia de D a la matriz cuadrada de
orden n, M = (mi j)nxn , donde mij = 1 si el arco (vi , vj ) A, y 4mi j = 0 en otro
caso. Si G es no dirigido, su matriz de adyacencia es simetrica (si la arista vi , vj esta
en A, tambien esta vj , vi ). Si el grafo o dgrafo es simple es nuestro caso, la diagonal
esta formada por ceros (no tiene lazos).
Si para formar un subgrafo eliminamos solo aristas, su matriz de adyacencia se forma
cambiando el 1 por un 0 en las posiciones correspondientes; pero si se elimina un
vertice, debemos eliminar la fila y la columna correspondientes a ese vertice en la
matriz. En un grafo el numero de unos en cada fila o columna es el numero de
aristas incidentes en el vertice correspondiente a esa fila o columna; mientras que en
un dgrafo, el numero de unos de cada fila se corresponde con el numero de arcos
salientes desde ese vertice y el numero de unos de cada columna indica el numero
de arcos que llegan a ese vertice.
MATRIZ DE COSTO:
Para un grafo G etiquetado, es una matriz C de dimension N xN , donde A[i, j] es
el costo (valor de la etiqueta) si, y solo si, existe un arco que vaya del vertice i al
vertice j. En ausencia de arco directo se representa generalmente por infinito (costo
extremadamente alto, para la simulacion se hace uso de un valor fuera de contexto).
TRAYECTORIAS Y MATRICES
La matriz M, de adyacencia de un grafo, indica las aristas entre vertices, que son
tambien las trayectorias de longitud 1 posibles entre vertices. As, la matriz M 2 =
M M indica, en cada posicion, el numero de trayectorias de longitud 2 entre los
vertices correspondientes, es decir, si en la posicion (i, j) hay un 3, tenemos tres
trayectorias distintas desde el vertice vi al vertice vj .
0 1 1 1
1 0 1 0
En efecto, si M =
1 1 0 0 es la matriz de un grafo, el elemento (1, 3) de
1 0 0 0
2
M se obtiene de operar la fila 1 de M con la columna 3 de M. Entonces (ponemos
con cada elemento de la matriz su significado como arista),
Un interesante caso optimizacion en el que debemos decidir que recorrido nos es mas
conveniente tomar a la hora de desplazarnos en medio de una ciudad ya que suele ser
un sitio complicado para transitar es el modelo de Redes. Debido a calles estrechas, vas
cerradas por mantenimiento, peatonales o de una sola direccion; es necesario planificar
una ruta realizando el recorrido mas corto posible.
PROBLEMA Y MODELADO
Primero asumiremos el interes de resolver la distancia mas corta para ir del origen A al
destino B, esto en la vida real difiere bastante del concepto intuitivo de viajar en lnea
recta, ya que en una ciudad esto es imposible en la mayora de los casos, tambien se
podra llegar a pensar en tomar la mejor aproximacion a la lnea recta pero esto no se
puede conseguir ya que algunos caminos no pueden ser tomados (caminos peatonales o
vas en reparacion) o simplemente porque la direccion en la que necesitamos ir no esta
permitida, es decir, ni si quiera podemos considerar las vas como una maya cuadriculada
basta con ver el mapa de cualquier ciudad para ver que es complejo.
Primero: Tenemos los planos desde donde se hacen los nudos. El programa resuelve dos
problemas aplicativos similares:
Ruta de distancia mnima de la CASA DE A a la UNSCH .
Cuando un grafo modela una situacion, en general, las conexiones (aristas y arcos) tienen
ademas unas caractersticas propias. Pensemos en el ejemplo de una red viaria, no solo se
trata de dar el servicio (conexion), sino que tambien es interesante conocer las longitudes
de las lneas a establecer (cantidad de material), las dificultades para su trazado (coste
en tiempo o monetario), etc.
En el grafo, estos valores se reflejan asignando a cada arista un valor que represente la
magnitud que queremos considerar (un peso a cada arista).
Consideremos el grafo de la arriba, donde a cada arista le hemos asignado una distancia.
Si buscamos ahora el camino mas corto.entre el vertice v1 y v3 no consideraremos que
es el que tiene menos aristas, sino aquel que recorre en total menor distancia: C1 = v1
v3 recorre solo una arista pero una distancia de 9, C2 = v1 v2 v3 tiene dos aristas y
una distancia total de 6 y C3 = v1 v2 v5 v3 tiene tres aristas sin embargo la distancia
recorrida es solo de 5. Claramente, este ultimo camino es mas corto.
algoritmo
CODIGO EN MATLAB:
.
1. inicial:
0) V = 1, 2, 3, 4, 5
1) S = 1
2)
3) D2 = 10, D3 = nf , D4 = 30, D5 = 100
iteracion S W D2 D3 D4 D5
inicial 1 - 10 inf 30 100
4) Iterar 4 veces
5) Seleccionar nodo con distancia mas corta de V-S, En el ejemplo es el nodo 2
6) Agregar el nodo 2 a S: S = 1, 2
7) Iterar |V S|, (V S = 3, 4, 5)
D3 = mnimo(D3, D2 + C23) = mnimo(inf, 10 + 50) = 60
D4 = mnimo(D4, D2 + C24) = mnimo(30, 10 + inf ) = 30
D5 = mnimo(D5, D2 + C25) = mnimo(100, 10 + inf ) = 100
iteracion S W D2 D3 D4 D5
inicial 1 - 10 inf 30 100
1 1,2 2 10 60 30 100
2. Iteracion:
V-S = 3, 4, 5
5) w = 4
6) S = 1,2,4
7) Iterar |V-S| V-S = 3,5
D3 = mnimo(D3, D4 + C43) = mnimo(60, 30 + 20) = 50
D5 = mnimo(D5, D4 + C45) = mnimo(100, 30 + 60) = 90
iteracion S W D2 D3 D4 D5
inicial 1 - 10 inf 30 100
1 1,2 2 10 60 30 100
2 1,2,4 4 10 50 30 90
3. Iteracion
V S = 3, 5
5) w = 3
6) S = 1, 2, 4, 3
7) Iterar |V S| (V S = 5)
D5 = mnimo(D5, D3 + C35) = mnimo(90, 50 + 10) = 60
iteracion S W D2 D3 D4 D5
inicial 1 - 10 inf 30 100
1 1,2 2 10 60 30 100
2 1,2,4 4 10 50 30 90
2 1,2,4,3 3 10 50 30 60
4. Iteracion
V S =5
5) w = 5
6) S = 1, 2, 4, 3, 5
7) Iterar |V S| (V S = )
TABLA FINAL:
iteracion S W D2 D3 D4 D5
inicial 1 - 10 inf 30 100
1 1,2 2 10 60 30 100
2 1,2,4 4 10 50 30 90
2 1,2,4,3 3 10 50 30 60
2 1,2,4,3,5 5 10 50 30 60
Es menos eficiente que Dijkstra, por lo que no es conveniente usarlo en su lugar; ademas
es mucho mas costoso construir a partir de el los caminos mnimos entre los vertices.
El algoritmo trabaja con operaciones logicas para determinar la conexion o no entre los
vertices, pero cambiando el tipo de elementos y operadores usados se ha adaptado para
otras cuestiones. Por ejemplo, puede modificarse ligeramente para encontrar la longitud
(en el sentido de menor numero de aristas) del camino mas corto entre dos vertices conec-
tados: ?si hay un camino entre los vertices vi y vj y se puede formar otro uniendo dos que
pasen por algun vertice vk , elegimos el mas corto de los dos?. Para ello hay que sustituir
la matriz de adyacencia M, por otra matriz L (de ?longitud de alcance?) que almacena
las longitudes de los caminos entre los vertices, de la siguiente manera:
Se utiliza una matriz A, donde Aij = Cij para toda i 6= j, si no existe camino directo
entre i y j se supone que Cij = inf . Cada elemento de la diagonal se hace cero. Despues
Al final de la k-esima iteracion Aij tendra por valor la longitud mas pequena de cualquier
camino que vaya desde el vertice i hasta el vertice j y que no pase por un vertice mayor
que k. Esto es, i y j, los vertice extremos del camino, pueden ser cualquier vertice, pero
todo vertice intermedio debe ser menor o igual a k. En la k-esima iteracion se aplica la
siguiente formula para calcular A
Para calcular Aij, se compara k 1Aij, el costo de ir de i a j sin pasar por k o cualquier
otro nodo con numeracion mayor, con k 1Aik + k 1Akj, el costo de ir primero de i a k
y despues de k a j, sin pasar a traves de un vertice mayor que k. Si el paso por el vertice
k produce un camino mas economico que el de k 1Aij, se elige ese costo para kAij.
ALGORITMO
Cuando es de interes conocer el camino mas corto entre dos vertices, hay que consignarlo
en una matriz P, donde Pij tiene el vertice k que permitio a Floyd encontrar el valor
menor de Aij. Si Pij es cero, el camino de i a j es directo.
CODIGO EN MATLAB:
EJEMPLO:
Hallar el camino mnimo desde el vertice 3 hasta 4 en el grafo con la siguiente matriz de
distancias:
0 3 5 1
3 0 9
5 0 7 7 1
D= 1 7
0 4
9 7 0
1 4 0
Aplicamos el algoritmo de Floyd-Warshall, y para ello en cada iteracion fijamos un vertice
intermedio.
La matriz es simetrica, por lo que solamente hara falta calcular el triangulo superior
de las distancias.
0 3 5 1
3 0 8 4 9
5 8 0 6 7 1
w1 =
1 4 6 0 4
9 7 0
1 4 0
0 3 5 1 12 5
3 0 8 4 9 8
5 8 0 6 7 1
w4 =
1 4 6 0 13 4
12 9 7 13 0 8
5 8 1 4 8 0
0 3 5 1 12 5
3 0 8 4 9 8
5 8 0 6 7 1
w5 = w4 =
1 4 6 0 13 4
12 9 7 13 0 8
5 8 1 4 8 0
0 3 5 1 12 5
3 0 8 4 9 8
5 8 0 5 7 1
w6 =
1 4 5 0 12 4
12 9 7 12 0 8
5 8 1 4 8 0
Ya se han hecho todas las iteraciones posibles. Por tanto, el camino mnimo entre 2
vertices cualesquiera del grafo sera el obtenido en la matriz final. En este caso, el
camino mnimo entre 3 y 4 vale 5.
2.3.3. COMPARACION
Con la opcion (Matriz Solucion) aparecen las tablas creadas por los distintos metodos.
Ademas la opcion (Solucion Matlab) muestra el grafo solucion.
MODELO DE TRANSPORTE
3.1 DEFINICION
Donde
Ci,j = Costo de enviar una unidad desde la fuente i-esima (i=1,...,m) al destino j-esimo
(j=1,...,n)
ai = Disponibilidad (oferta) en unidades, de la fuente i-esima (i=1,...,m)
bj = Requerimiento (demanda) en unidades, del destino j-esimo (j=1,...,n)
Matematicamente:
Minimizar
Z = C1,1 .X1,1 + ... + C1,j XC1,j + ... + C1,n XC1,n + ... + Ci,1 Xi,1 + ... + Ci,j Xi,j + ... +
Ci,n Xi,n + ... + Cm,1 Xm,1 + ... + Cm,j Xm,j + ... + Cm,n Xm,n
TABLA INICIAL:
EJEMPLO:
RPG tiene cuatro plantas ensambladoras en Europa. Estan ubicadas en Leipzig, Alema-
nia (1);Nancy, Francia (2); Lieja, Belgica (3), y Tilburgo, Holanda (4). Las maquinas
ensambladoras usadas en estas plantas se producen en Estados Unidos y se embarcan a
Europa. Llegaron a los puertos de Amsterdan (1), Amberes (2) y El Havre (3). Los pla-
nes de produccion del tercer trimestre (julio a septiembre) ya han sido formulados. Los
requerimientos (la demanda en destinos) de motores diesel E-4 son los siguientes:
a)Variables de decision
Minimizar :
Z = 12X11 +1312 +413 +6X14 +6X21 +4X22 +10X23 +11X24 +10X31 +9X32 +12X34 +4X14
c) Restricciones:
Caractersticas:
ALGORITMO:
5. Muevase a la derecha o hacia abajo, segun haya quedado disponibilidad para asignar.
6. Repita los pasos del 3 al 5 sucesivamente hasta llegar a la esquina inferior derecha
en la que se elimina fila y columna al mismo tiempo.
Nota:
No elimine fila y columna al mismo tiempo, a no ser que sea la ultima casilla. El romper
esta regla ocasionara una solucion en donde el numero de variables basicas es menor a
m+n-1, produciendo una solucion basica factible degenerada.
CODIGO EN MATLAB:
Caractersticas:
ALGORITMO:
2. Empiece en la casilla que tenga el menor costo de toda la tabla, si hay empate,
escoja arbitrariamente (Cualquiera de los empatados).
5. Muevase a la casilla con el costo mnimo de la tabla resultante (Sin tener en cuenta
la fila o columna satisfecha).
6. Regrese a los puntos 3, 4, 5 sucesivamente, hasta que todas las casillas queden
asignadas.
Nota:
Recuerde que no debe eliminar o satisfacer fila y columna al mismo tiempo, caso en que
la oferta sea igual a la demanda, en tal caso recuerde usar la ? (Epsilon).
CODIGO EN MATLAB:
Paso 1:
Paso 5: Aun quedan mas de una fila o columna sin tachar.Ir a paso 2
Paso 2: Ruta de costo menor22 Unidades = MIN(700,900) = 300
Paso 3: Tachar fila2
Paso 4: Tachar ajustar fila 2 y columna 2
Paso 5: Aun quedan mas de una fila o columna sin tachar. Ir a paso 2
Paso 2: Ruta de costo menor 31 . Unidades = MIN(400,100) = 100
Paso 3: Tachar fila 3
Paso 4: Tachar ajustar fila 3 y columna 1
Paso 5: Aun quedan mas de una fila o columna sin tachar. Ir a paso 2.
Paso 2: Ruta de costo menor 11 . Unidades = MIN(300,300) = 300
Paso 3: Tachar fila 1 o columna 1 (solo una de ellas)
Paso 4: Tachar ajustar fila 1 y columna 1
Paso 5: Queda solo una fila sin tachar. Terminar Es solucion factible? m+n1 = 6?
SI Costo: 300*12+200*4+700*4+100*10+200*9+500*4 = $12.000
MAV usa informacion de costos mediante el concepto de costo de oportunidad para de-
terminar una solucion inicial factible. Seleccionar en una fila la ruta mas barata y la que
le sigue. Hacer su diferencia (penalidad), que es el costo adicional por enviar una unidad
desde el origen actual al segundo destino y no al primero. En nuestro caso, para el puerto1,
C13 y C14; Penalidad = 6 - 4 MAV asigna un costo de penalidad por no usar la mejor
ruta en esta fila.
Caractersticas:
2. Tiene en cuenta los costos, las ofertas y las demandas para hacer las asignaciones.
ALGORITMO:
2. 2. Calcular la diferencia entre el costo mas pequeno y el segundo costo mas pequeno,
para cada fila y para cada columna.
3. 3. Escoger entre las filas y columnas, la que tenga la mayor diferencia (en caso de
empate, decida arbitrariamente).
5. 5. Asigne cero (0) a las otras casillas de la fila o columna donde la disponibilidad o
el requerimiento quede satisfecho.
6. 6. Repita los pasos del 2 al 5, sin tener en cuenta la(s) fila(s) y/o columna(s) satis-
fechas, hasta que todas las casillas queden asignadas.
Nota:
Recuerde que no debe eliminar o satisfacer fila y columna al mismo tiempo, caso en que
la oferta sea igual a la demanda, en tal caso recuerde usar la (Epsilon).
CODIGO EN MATLAB:
Paso 1: Identificar maxima penalidad (fila o columna). Calculadas todas las penali-
dades, la mayor corresponde a la columna 3 (penalidad = 6)
CODIGO EN MATLAB:
EJEMPLO:
Introducimos a la base la variable: X14 = min (70, 95) = 70; b 4 = 95 ? 70 = 25, y elimine
la fila 1. Repetimos el proceso:
Introducimos a la base: X21 = min (90, 50) = 50; a 2 = 90 - 50= 40, y elimine la columna
1
Introducimos a la base: X34 = min (45, 25) = 25; a 3 = 45 - 25= 20, y elimine la columna
4 Introducimos a la base: X22 = min (40, 60) = 40; a 2 = 60 - 40= 20, y elimine la columna
2 Introducimos a la base:X32 = min (20 , 20) = 20
La solucion por lo tanto es:
conclusiones
Este programa es una aplicacion de la programacion lineal es muy util para hallar la
solucion de dos modelos: Modelo de Redes y Modelo de Transportes. Se hace una breve
introduccion a la teora de Grafos para la solucion del primer modelo. El ejemplo aplicativo
es hallar el camino mnimo de la casa de un integrante a la Universidad, el programa halla
los caminos (nodos por los que pasa) y la distancia mnima. Se aplican dos algoritmos:
el algoritmo de Dijktra y el algoritmo de Floyd. Cabe mencionar que el algoritmo de
Dijkstra lo programamos para grafos no dirigidos con matrices de distancias simetricas. El
algoritmo de Floyd si es indistinto. Para comprobar los resultados se cuenta son la solucion
MATLAB, que proporciona el grafo con el camino remarcado. El programa cuenta con
varias formas de desarrollar los grafos, ya sea a traves del ingreso de matrices distancia (se
pueden escoger nodos y arcos) o ingresar distancias en el mismo croquis (nodos y arcos ya
definidos). Seguro que hay maneras de hacer esto con comandos, pero tratamos de hacerlo
lo mas dinamico posible; lo importante es llegar al mismo fin. El programa y el informe
muestra as la obtencion de resultados paso a paso, a traves de tablas en donde se pueden
ver si las iteraciones, que se utilizan al momento de comparar, si los metodos son factible
y tal vez optimos, siendo estos dos terminos distintos.
[1] Modelos matematicos de tecnicas especficas de optimizacion. Pedro Linares & otros.
[3] Matlab en Cinco Lecciones de Numerico. Vctor Domnguez Baguena & Mara Luisa
Rapun Banzo.