sábado, 24 de septiembre de 2011

Participación 3: Ruta más corta.


Una compañía aérea local piensa comprar un tractor nuevo para mover el tren de carros que llevan y traen el equipaje de los aviones que aterrizan en un pequeño aeropuerto que está en pleno crecimiento. Dentro de tres años se instalará un nuevo sistema mecanizado de transporte de equipaje, por lo que después no se necesitará el tractor. No obstante, tendrá una carga de trabajo pesada y los costos de operación y mantenimiento aumentarán rápido con el tiempo y podría resultar costeable reemplazarlo en uno o dos años. La siguiente tabla proporciona los costos descontados netos totales asociados con la compra del tractor – precio de compra menos valor de venta del tractor en uso más costos de operación y mantenimiento – al final del año i y si se reemplaza al final de año j – donde el momento presente es el año 0-.

J
1
2
3
0
$8 000
$18 000
$31 000
1

$10 000
$21 000
2


$12 000


Aplicando el Método de Dijkstra encontramos:
Ruta: 0-1-3 la cual nos indica que en el año 0 se tendrá que comprar el tractor, en el año 1 y el año 2 matener el tractor y finalmente en el año 3 reemplazarlo, todo esto con un costo de $29000.

Participación 2: Ruta más corta.

Encuentre la trayectoria más corta del nodo 1 al nodo 6.
 Aplicando el Método de Dijkstra encontramos que el camino más corto es:
Ruta a seguir: 1-2-4-6  con un costo mínimo de 31.

Participación 1: Problema de árbol de expansión mínima.


1.      Las distancias en millas entre ciudades de Indiana: Gary, Fort Wayne, Evansville, Terre Haute y South Bend, se muestran en la siguiente tabla. Es necesario construir un sistema estatal de carreteras que una todas estas ciudades. Suponga que por razones políticas no es necesario construir una carretera a Gary y Fort Evansville ¿Cuál es la longitud mínima de la carretera requerida?


Gary
Fort Wayne
Evansville
Terre Haute
South Bend
Gary
--
132
217
164
58
Fort Wayne
132
--
290
201
79
Evansville
217
290
--
113
303
Terre Haute
164
201
113
--
196
South Bend
58
79
303
196
--

 Aplicando el Algoritmo de PRIM obtenemos:
con un minimo de 414

Robert W. Floyd











Fecha de nacimiento: 8 de Junio de 1936
Fecha de muerte: 25 de Septiembre de 2001
Lugar de nacimiento: Nueva York

Culminó el bachillerato a los 14 años y se graduó de la universidad de Chicago a los 17 años.
Fue nombrado director de la universidad de Stanford. Sus más destacadas contribuciones fueron el diseño de algoritmos eficiente para encontrar el camino más corto en un grafo (algoritmo de Floyd-Warshal) y para el problema de reconocimiento de frases.
Floy recibió el premio Turing de la ACM en 1978 por tener una clara influencia en la metodologías para la creación de software eficiente y confiable, y por haber contribuido a la fundación de las subáreas teoría del reconocimiento de frases, semántica de los lenguajes de programación, verificación automatizada de programas, síntesis automatizada de programas y análisis de algoritmos.

http://arodrigu.webs.upv.es/grafos/doku.php?id=algoritmo_floyd_warshall
http://es.wikipedia.org/wiki/Robert_W._Floyd

jueves, 15 de septiembre de 2011

Biografía de Dijkstra


Edsger Wybe Dijkstra (1930 – 2002) nació en 1930 en Rotterdam, Holanda. Era hijo de Wybe Douwe Dijkstra y Brechtje Cornelia Kruyper, y tenia tres hermanos más. Su padre era professor de fisica en la escuela secundaria de Rotterdam, mientras que su madre era matemática.
De joven, asistió a la escuela secundaria de Rotterdam. Djikstra quería estudiar Derecho y asi poder representar a los Paises Bajos en las Naciones Unidas. Pero, en 1948 realizó los exámenes finales de su etapa en la escuela secundaria y sacó notas excelentes en matematicas, física, química y biología, y tanto sus padres como sus profesores intentaron persuadirle para que se decantara por una carrera de ciencias. Finalmente, decidió estudiar física teórica en la universidad de Leyden.
Tres años después, en 1951, Dijkstra vio un anuncio de la Universidad de Cambridge sobre un curso de tres semanas que trataba la programación en computadores. Se interesó mucho por este curso y decidió apuntarse, ya que lo veía como una oportunidad esta actividad, que consideraba muy ligada a su campo, la física teórica.

Aad van Wijngaarden, que era el director del Departamento de Ciencia de la Computación del Centro Matemático en Amsterdam, había hecho el mismo curso en Cambridge en el año anterior y cuando se enteró de que Dijkstra había terminado, le ofreció un puesto como programador del Centro de Matemáticas. Dijkstra aceptó el cargo desde marzo de 1952, pero sólo como una posición a tiempo parcial, ya que seguía siendo estudiante de física teórica en la Universidad de Leyden. A pesar de esto, Dijkstra empezaba a decantarse más por la programación que por la física teorica, ya que le suponía un reto mayor, al ser una rama del saber prácticamente nueva, con mucho por descubrir.
Después de haber tomado la decisión, Dijkstra completó sus estudios en física teórica en la universidad, graduándose en 1956. También en 1956, el Centro de Matemáticas  de Amsterdam, en el que trabajaba completó la construcción de una nueva computadora y quería hacer una demostración pública. Para ello, Dijkstra, planteó el problema de encontrar el camino mas corto entre dos ciudades de los Países Bajos. Publicó su algoritmo, muy eficaz, que ha perdurado hasta nuestros días, y conocido popularmente como “el algoritmo de Djikstra” (o algoritmo de caminos mínimos). La idea de este algoritmo consiste en ir explorando todos los caminos más cortos que parten del vértice origen y que llevan a todos los demás vértices; cuando se obtiene el camino más corto desde el vértice origen, al resto de vértices que componen el grafo, el algoritmo se detiene.
También en 1959 fue galardonado con el doctorado de la Universidad de Amsterdam por su tesis La comunicación con un equipo automático.
Como curiosidad, destacar que en 1957 se casó con María Debets , y tuvo dos hijos y una hija. Sin embargo, tuvo un problema en su boda porque el Juez de Paz no aceptaba “programador” como profesión para los registros, por lo que tuvo que decir que era “físico teórico” en el formulario.
Dijkstra también colaboró con el equipo de desarrollo del lenguaje de programación ALGOL-60. Hizo varias contribuciones importantes: la introducción explícita de la recursividad y la noción de ‘pila’. Dijkstra, junto con uno de sus colegas en el Centro de Matemáticas, escribió el primer compilador de ALGOL-60, que se completó en agosto de 1960.

Referencias: http://histinf.blogs.upv.es/2010/10/28/dijkstra/

PRIM

El algoritmo de Prim es un algoritmo perteneciente a la teoría de los grafos para encontrar un árbol recubridor mínimo en un grafo conexo, no dirigido y cuyas aristas están etiquetadas.
En otras palabras, el algoritmo encuentra un subconjunto de aristas que forman un árbol con todos los vértices, donde el peso total de todas las aristas en el árbol es el mínimo posible. Si el grafo no es conexo, entonces el algoritmo encontrará el árbol recubridor mínimo para uno de los componentes conexos que forman dicho grafo no conexo.
El algoritmo fue diseñado en 1930 por el matemático Vojtech Jarnik y luego de manera independiente por el científico computacional Robert C. Prim en 1957 y redescubierto por Dijkstra en 1959. Por esta razón, el algoritmo es también conocido como algoritmo DJP o algoritmo de Jarnik.
Por lo tanto es llamado Algoritmo de PRIM por el apellido del mas reciente de sus descubridores.

Dénes König


Dénes König:
Nació el 21 de septiembre de 1884 y murió el 19 de octubre de 1944.
Fue un judío húngaro matemático que trabajó y escribió el primer libro de texto en el campo de la teoría de grafos.
König nació en Budapest , el hijo del matemático Gyula König . En 1907, recibió su doctorado y se unió a la facultad de la Escuela Superior Técnica de Budapest. Sus clases fueron visitadas por Paul Erdős quien resolvió uno de sus problemas.
En el día de las atrocidades antisemitas 1944 en Budapest, se suicidó. 

Egerváry nació en Debrecen en 1891. En 1914, recibió su doctorado en la Universidad Pázmány Péter en Budapest, donde estudió bajo la supervisión de Lipót Fejér. Trabajó como asistente en el Observatorio Sismológico en Budapest, y a partir 1918 como profesor en la Escuela Superior Industrial en Budapest. En 1938 fue nombrado Privatdozent en la Universidad Pázmány Péter en Budapest.
En 1941 se convirtió en catedrático de la Universidad Técnica de Budapest , y en 1950 fue nombrado Presidente del Consejo Científico del Instituto de Investigación de Matemática Aplicada de la Academia Húngara de Ciencias .
Egerváry recibió el Gyula König Premio en 1932 y el Premio Kossuth , en 1949. 
Se suicidó en 1958 debido a problemas que le causaron la burocracia comunista.





 Harold William Kuhn nació en 1925 es un americano matemático que estudió la teoría de juegos . Ganó, en 1980, el premio John von Neumann Teoría del Premio junto con David Gale y Albert W. Tucker . Un profesor emérito de Matemáticas en la Universidad de Princeton , es conocido por la condiciones Karush-Kuhn-Tucker , poa el desarrollo de poker Kuhn , así como la descripción del método húngaro para el problema de asignación .



domingo, 4 de septiembre de 2011

Participación 8


  1. Hay tres refinerías con capacidad diarias de 6, 5 y 8 millones de galones, respectivamente, que abastecen a tres áreas de distribución cuyas demandas diarias son 4, 8 y 7 millones de galones, respectivamente. La gasolina se transporta por una rede de oleoductos a las tres áreas de distribución. El costo de transporte es de 10 centavos por 1000 galones por milla de oleoducto. En la siguiente tabla se ven las distancias entre refinerías y las áreas de distribución. La refinería 1 no está conectada con el área de distribución 3.

Refinería \ Área de Distribución
1
2
3
1                           
120
180
--
2
300
100
80
3
200
250
120
Formular el modelo, resolverlo y verificar resultados con algún paquete computacional.

Tenemos como tabla inicial


1
2
3
Oferta
1
1.2

1.8

M

6
2
3
1
0.8

5
3
2

2.5

1.2

8
Demanda
4
8
7

  Nota: las cifras manejadas fueron dividas por un millón para tener mayor facilidad a la hora de hacer calculos.

Y realizando las operaciones pertinentes se llega la solución óptima en una sola iteracion:



1
2
3
Oferta
1
1.2
4
1.8
2
M
-M
6
2
3
-2.6
1
5
0.8
-1.1
5
3
2
-0.1
2.5
1
1.2
7
8
Demanda
4
8
7



Obteniendo como resultado que:
1) la refinería 1 enviará 4 millones de galones a la área 1
2) la refinería 1 enviará 2 millones de galones a la área 2
3) la refinería 2 enviará 5 millones de galones a la área 2
4) la refinería 3 enviará 1 millon de galones a la área 2
5) la refinería 3 enviará 7 millones de galones a la área 3

Dando el valor de Z= 24, 300, 000 millones de centavos