domingo, 23 de septiembre de 2012

Delbert Ray Fulkerson


Nació el 1 octubre de 1924, fue un matemático que co-desarrolló el algoritmo de Ford-Fulkerson, uno de los más conocidos algoritmos para resolver el problema de flujo máximo en redes.

Fulkerson se crió en un pequeño pueblo del sur de Illinois y se convirtió en un estudiante en la Southern Illinois University. Su carrera académica se vio interrumpida por el servicio militar durante la Segunda Guerra Mundial. Habiendo vuelto a completar sus estudios después de la guerra pasó a hacer un doctorado en matemáticas en la Universidad de Wisconsin, bajo la supervisión de Ciro MacDuffee, un estudiante de LE Dickson. 

Fulkerson recibió su doctorado en la Universidad de Wisconsin-Madison en 1951. Fue entonces con el departamento de matemáticas en la Rand Corporation hasta 1971 cuando se trasladó a Cornell como el profesor Maxwell Upson de Ingeniería. Permaneció en Cornell hasta que se suicidó en 1976. 

En 1956, publicó su documento se señalaba en el algoritmo de Ford-Fulkerson junto con Lester Randolph Ford. En 1979, el renombrado Premio Fulkerson se estableció que ahora se concede cada tres años para trabajos sobresalientes en matemáticas discretas en forma conjunta por la Sociedad de la Programación Matemática y la Sociedad Americana de Matemáticas.


Referencias
Delbert Ray Fulkerson [en línea] [Fecha de consulta: 23, Septiembre 2012]. Disponible en <

Delbert Ray Fulkerson [Imágen].  [Fecha de consulta: 23, Septiembre 2012]. Disponible en: <http://arodrigu.webs.upv.es/grafos/doku.php?id=algoritmo_ford_fulkerson


Lester Randolph Ford Jr.




Es uno de los pioneros en el campo de la programación de flujos en grafos. Es el hijo de L.R. Ford Sr. (quién también es un matemático distinguido) y nació el 23 de septiembre de 1927. L. R. Ford Sr es elogiado por su ejemplar trabajo en matemáticas al inventar una interpretación geométrica absolutamente maravillosa de la serie de Farey. También le acredita su trabajo 'Pointwise Discontinuous Functions' que era la base de su trabajo para un grado de M.S. del departamento de matemáticas en la universidad de Missouri-Colombia en 1912. Tal fue su contribución a las matemáticas, que en 1964 se estableció el Lester R. Ford Award para reconocer la contribución a las matemáticas de excelentes autores matemáticos publicados en The American Mathematical Monthly o Mathematics Magazine. Fue redactor de American Mathematical Monthly, de 1942-1946, y el presidente de Mathematical Association of America, 1947-1948. Ford Sr. y Ford Jr. son co-autores de Automorphic Functions cuál fue publicado cerca por McGraw-Hill en 1963.


Referencias
Lester Randolph Ford Jr. [en línea] [Fecha de consulta: 23, Septiembre 2012]. Disponible en <http://arodrigu.webs.upv.es/grafos/doku.php?id=algoritmo_bellman_ford>
 Lester Randolph Ford Jr.  [Imágen].  [Fecha de consulta: 23, Septiembre 2012]. Disponible en: <http://www.tangrammit.com/barbara.html>

domingo, 16 de septiembre de 2012

Robert W. Floyd

Robert W. Floyd (8 de junio de 1936 - 25 de septiembre de 2001) fue un prominente científico estadounidense en informática.
Nacido en Nueva York, Floyd culminó bachillerato a los 14 años. Se graduó en la Universidad de Chicago en 1953 a los 17 años y como Físicoen 1958.
Operador de computadoras en los años 60, publicó sus primeros artículos los cuales fueron de gran influencia y fue nombrado profesor asociado en la Universidad de Carnegie Mellon. Seis años más tarde fue nombrado profesor en la Universidad de Stanford.
Entre sus contribuciones se encuentran el diseño y análisis de algoritmos eficientes para encontrar el camino más corto en un grafo y para el problema de reconocimiento de frases, pero probablemente su logro más importante fue el ser pionero, con su artículo de 1967 «Assigning Meanings to Programs», en el área de verificación de programas utilizando aserciones lógicas, donde aparece la importante noción de invariante, esencial para demostrar propiedades de programas iterativos.
Floyd recibió el Premio Turing de la ACM en 1978 «por tener una clara influencia en las 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».

Referencias

 Biography Robert W. Floyd [en línea] [Fecha de consulta: 16, Septiembre 2012]. Disponible en <http://es.wikipedia.org/wiki/Robert_W._Floyd>

Robert W. Floyd [Imagen].  [Fecha de consulta: 16, Septiembre 2012]. Disponible en: < http://www.computer.org/portal/web/awards/cp-floyd>

Edsger Dijkstra Wybe


Poco después de su muerte en el 2002, recibió la distinción ACM PODC Influential Paper Award en computación distribuida por su trabajo en la auto-estabilización en programas computacionales. Este premio fue renombrado a Premio Dijkstra el siguiente año en su honor.
Dijkstra estudió física teórica en la Universidad de Leiden. Trabajó como investigador para Burroughs Corporation a principios de los años 1970. En la Universidad de Texas en Austin, Estados Unidos, ocupó el Schlumberger Centennial Chair in Computer Sciences. Se retiró en 2000.
Entre sus contribuciones a las ciencias de la computación está la solución del problema del camino más corto, también conocido como elalgoritmo de Dijkstra, la notación polaca inversa y el relacionado algoritmo shunting yard, THE multiprogramming system, el algoritmo del banquero y la construcción del semáforo para coordinar múltiples procesadores y programas. Otro concepto debido a Dijkstra, en el campo de la computación distribuida, es el de la auto-estabilización, una vía alternativa para garantizar la confiabilidad del sistema. El algoritmo de Dijkstra es usado en la ruta más corta primero (SPF) que es usado en el protocolo de enrutamiento Open Shortest Path First (OSPF). También se le debe la autoría de la expresión "Crisis del software", aparecida en su libro The Humble Programmer y usada ampliamente en la famosa reunión de la OTAN de 1968 sobre desarrollo del software. Recibió el Premio Turing en 1972.
Era conocido por su baja opinión de la sentencia GOTO en programación, que culminó en 1968 con el artículo Go To Statement Considered Harmful (La sentencia Goto considerada perjudicial), visto como un paso importante hacia el rechazo de la expresión GOTO y de su eficaz reemplazo por estructuras de control tales como el bucle while. El famoso título del artículo no era obra de Dijkstra, sino de Niklaus Wirth, entonces redactor de Comunicaciones del ACM. Dijkstra era un aficionado bien conocido de ALGOL, y trabajó en el equipo que desarrolló el primer compilador para este lenguaje. En ese mismo año creó el primer sistema operativo con estructura jerárquica, de niveles o capas. Fue denominado THE (Technische Hogeschool, Eindhoven) que se utilizó con fines didácticos.
Desde los años 1970, el principal interés de Dijkstra fue la verificación formal. La opinión que prevalecía entonces era que uno debe primero escribir un programa y seguidamente proporcionar unaprueba matemática de su corrección. Dijkstra objetó que las pruebas que resultan son largas e incómodas, y que la prueba no da ninguna comprensión de cómo se desarrolló el programa. Un método alternativo es la derivación de programas, «desarrollar prueba y programa conjuntamente». Uno comienza con una especificación matemática del programa que se supone va a hacer y aplica transformaciones matemáticas a la especificación hasta que se transforma en un programa que pueda ser ejecutado. El programa que resulta entonces es sabido correcto por la construcción. Muchos de los últimos trabajos de Dijkstra tratan sobre las maneras de hacer fluida la argumentación matemática.
Respecto a su carácter árido y ácido, conocidas son su oposición a la instrucción GOTO y al lenguaje BASIC ("mutila la mente más allá de toda recuperación"). Alan Kay expuso que "en informática, la arrogancia se mide en nanodijkstras ".
Dijkstra murió el 6 de agosto de 2002 después de una larga lucha contra el cáncer.
Referencias

 Biography Edsger Dijkstra [en línea] [Fecha de consulta: 16 ,Septiembre 2012]. Disponible en <http://es.wikipedia.org/wiki/Edsger_Dijkstra>

Edsger Dijkstra [Imágen].  [Fecha de consulta: 16, Septiembre 2012]. Disponible en: < http://upload.wikimedia.org/wikipedia/commons/d/d9/Edsger_Wybe_Dijkstra.jpg?uselang=es>

¿Quién inventó el algoritmo de Kruskal?


El algoritmo de Kruskal es un algoritmo de la teoría de grafos para encontrar un árbol recubridor mínimo en un grafo conexo y ponderado. Es decir, busca un subconjunto de aristas que, formando un árbol, incluyen todos los vértices y donde el valor total de todas las aristas del árbol es el mínimo. Si el grafo no es conexo, entonces busca un bosque expandido mínimo (un árbol expandido mínimo para cada componente conexa). El algoritmo de Kruskal es un ejemplo de algoritmo voraz.

Funciona de la siguiente manera:
§  se crea un bosque B (un conjunto de árboles), donde cada vértice del grafo es un árbol separado
§  se crea un conjunto C que contenga a todas las aristas del grafo
§  mientras C es no vacío
§  eliminar una arista de peso mínimo de C
§  si esa arista conecta dos árboles diferentes se añade al bosque, combinando los dos árboles en un solo árbol
§  en caso contrario, se desecha la arista
Al acabar el algoritmo, el bosque tiene un solo componente, el cual forma un árbol de expansión mínimo del grafo.
Este algoritmo fue publicado por primera vez en Proceedings of the American Mathematical Society, pp. 48–50 en 1956, y fue escrito por Joseph Kruskal.

Referencias
Algoritmo de Kruskal  [en línea] [Fecha de consulta: 16, Septiembre 2012]. Disponible en <http://es.wikipedia.org/wiki/Algoritmo_de_Kruskal>

 

 

Joseph Kruskal

 

 

Joseph B. Kruskal (29 de enero de 1928  Maplewood, Nueva Jersey, 19 de septiembre de 2010)1 fue un matemático y estadístico estadounidense.

Investigador del Math Center (Bell-Labs), en 1956 descubrió un algoritmo para la resolución del problema del árbol recubridor mínimo, el cual es un problema típico de optimización combinatoria, que fue considerado originalmente por Otakar Boruvka (1926) mientras estudiaba la necesidad de electrificación rural en el sur de Moravia en Checoslovaquia.

El objetivo del algoritmo de Kruskal es construir un árbol (subgrafo sin ciclos) formado por arcos sucesivamente seleccionados de mínimo peso a partir de un grafo con pesos en los arcos.
Un árbol (spanning tree) de un grafo es un subgrafo que contiene todos sus vértices o nodos. Un grafo puede tener múltiples árboles. Por ejemplo, un grafo completo de cuatro nodos (todos relacionados con todos) tendría 16 árboles.

La aplicación típica de este problema es el diseño de redes telefónicas. Una empresa con diferentes oficinas, trata de trazar líneas de teléfono para conectarlas unas con otras. La compañía telefónica le ofrece esta interconexión, pero ofrece tarifas diferentes o costes por conectar cada par de oficinas. Cómo conectar entonces las oficinas al mínimo coste total.
La formulación del MST también ha sido aplicada para hallar soluciones en diversas áreas (diseño de redes de transporte, diseño de redes de telecomunicaciones - TV por cable, sistemas distribuidos, interpretación de datos climatológicos, visión artificial - análisis de imágenes - extracción de rasgos de parentesco, análisis de clusters y búsqueda de superestructuras de quasar, plegamiento de proteínas, reconocimiento de células cancerosas, y otros).
Otra aplicación menos obvia es que el árbol de coste total mínimo puede ser usado como solución aproximada al problema del viajante de comercio, el cual es NP-completo. La manera formal de definir este problema es encontrar la trayectoria más corta para visitar cada punto al menos una vez. Nótese que si se visitan todos los puntos exactamente una vez, lo que se tiene es un tipo especial de árbol. En el ejemplo anterior, 12 de los 16 árboles son trayectorias de este tipo. Si se tiene una trayectoria que visita algunos vértices más de una vez, siempre se puede soltar algunos nodos del árbol. En general el peso del árbol total mínimo es menor que el del viajante de comercio, debido a que su minimización se realiza sobre un conjunto estrictamente mayor. Existen diferentes algoritmos y maneras de usar el árbol de coste total mínimo para encontrar la solución al problema del viajante de comercio (con resultados cercanos al óptimo).

Referencias
 Biography Joseph Kruskal [en línea] [Fecha de consulta: 16, Septiembre 2012]. Disponible en <http://es.wikipedia.org/wiki/Joseph_Kruskal>
 Joseph Kruskal  [Imágen].  [Fecha de consulta: 16, Septiembre 2012]. Disponible en: < http://es.wikipedia.org/wiki/biography_Joseph_Kruskal>