Regresar a la Pagina de Inicio

12 sept. 2011

Algoritmos Geneticos en Excel

Volcado, desde hace un par de días, a la resolución de algunos problemas de optimización que me plantearon distintos lectores, decidí levantar la presente entrada, aunque el sistema que utilizaré no será un tema excluyente de Excel. Tampoco resultará algo sencillo para aquellos que nunca oyeron hablar de esta “técnica”, por cuanto habrá que prestar especial atención e ir comprendiendo el “paso a paso”, analizando cuidadosamente todos los proceso que intervienen. ¿Por qué un preludio tan extenso? Por que veremos la forma de realizar Algoritmos Genéticos (Wikipedia), un desarrollo mediante el cual es posible simular en nuestro ordenador el proceso evolutivo de la naturaleza, aplicando sus pasos en la resolución de problemas.
[+/-] Ver el resto / Ocultar

14 comentarios:

Anónimo dijo...

Buen trabajo

Damian Omar Silva dijo...

Gracias amigo. Cuando tenga mas tiempo (del trabajo me enviaron a trabajar a otra ciudad y hasta diciembre no voy a estar "fijo") haré algunas variantes sobre los métodos de selección y cruce, ya que existen muchas formas interesantes que se ajustan a distintas alternativas.
Un abrazo

GUSTAVO SALAZAR dijo...

Quiero aprender a simular con la hoja de calculo por ejemplo un cajero automático. Cordial saludo

Damian Omar Silva dijo...

Hola Gustavo: mirá justamente trabajo en un banco, y conozco muy bien toda la operatoria relacionada a los ATM, desde una simple consulta de saldos, pasando a aspectos como ciertas reparaciones del hard, transferencias, claves, recarga, balanceo, etc, etc, etc.
Siempre pensé: "Que dispositivo tan complicado de realizar".... y no me equivocaba. Es un sistema bastante complejo, si lo observamos como un conjunto. Para lo que serían las transacciones normales (consultas, depósitos, extracciones, algunas inversiones [plazo fijo]) bastaría con crear un libro contable y aplicar alguna interfaz amigable, como por ejemplo hacer un ATM con las shapes de Excel.
Necesito que me des mas detalles sobre el proyecto que necesitas realizar y así ver como puedo ir armando algo para ayudarte al respecto.
Es muy interesante lo que planteas y conlleva cierto desafío, por lo menos en los niveles iniciales, ya que ese sistema "hace de todo" y no es tarea sencilla.
Quedo al aguardo de tus noticias y gracias x el mensaje.

Anónimo dijo...

Excelente post!
Notable.
Un abrazo,
Mauricio.

Damian Omar Silva dijo...

Muchas gracias Mauricio por tus palabras, fue bastante "bravo" levantar una entrada con este tema, dada la complejidad del mismo.
Igual aún resta mucho y los AG dan para varios libros, pero por lo menos es un comienzo.
Un abrazo

Anónimo dijo...

Un exclente tutorial de cómo implementar AG en Excel.
Gracias por compartir.
Angel.

Damian Omar Silva dijo...

Gracias Angel, muy amable de tu parte.
Un abrazo.

Federico dijo...

Un grande!! Igualmente yo haria una gran orgia (sin insultar y siguiente a Darwin) y de todos los hijos seleccionaria el mejor. Si solo tomamos 2 a la 10 (la ponemos o no, con 10 mujeres) son 1024 opciones que rapidamente podemos recorrer con las pc actuales y elegir el resultado mas alto. Pero sin duda tu aporte me hizo pensar y lo lei muy detenidamente

Federico dijo...

Excelente, me hizo pensar. Lo hubiera encarado por otro lado o hubiera dejado la pc prendida para que recorra todas las alternativas posibles, las guarde en algun lado y luego me muestre las mejores 10, mas alla de todo problema de optimizacion esta la estrategia

Anónimo dijo...

WOW! muchas gracias por este aporte, bastante claro, con ejemplos y una explicacion muy respetable, aunque tengo problemas con la codificacion, ya que quiero (y debo) hacerlo en un lenguaje como PHP o C#, sin embargo, ese es asunto mio.
Muchisisimas gracias!!

Damian Omar Silva dijo...

Si, la sintaxis es diferente en ambos lenguajes (aunque parecidas entre sí). En C# hice algo y no conozco como para ayudar mucho al respecto, pero soy programador en Php, así que cualquier cosa me avisas.

Damian Omar Silva dijo...

Federico: estimo que la solución para todas las alternativas posibles (fuerza bruta) es viable si los datos a combinar no son muchos.
para los casos que registran billones y billones de posibles combinaciones, ni siquiera una pc común sirve. imagina que hay supercomputadoras trabajando un año entero para resolver la resistencia de los materiales, por ejemplo, de las alas de un avión.
esto de los AG es fantástico.

Damian Omar Silva dijo...

jaja, muy bueno eso de la orgía, y no creo que Darwin se enoje al respecto. pero estamos en la misma: 10 elevado a la 2 es algo muy pequeño, si fuese 10 elevado a la 200 sería otro tema, y sucede mas que a menudo en los problemas de optimización. Mi ejemplo es sencillo para que se entienda, de allí que por ahí uno se puede inclinar por la "fuerza bruta" y lograr todas las combinaciones posibles, pero hay casos en los que resulta inviable.

Publicar un comentario

Regresar a la Pagina de Inicio

ENTRADAS MAS RECIENTES (ULTIMAS 10)


las + vistas

10 ULTIMOS COMENTARIOS DE MIS LECTORES

Free counters!
blog de periodismo




GRAFICA RIO BRAVO
Serigrafia-Offset
Rosario - Santa Fe - Argentina
TE: 0341 4664028