Noticias:

Links interesantes
Estos son vínculos que llevan a contenido de uso permanente o importante para varios grados o temáticas particulares.

Menú principal

Bioinformática: Creación de un robot capaz de pensar como humano

Publicado por Lopez Juan, Marzo 07, 2020, 04:22:07 PM

Lopez Juan

bioinformatica: Creación de un robot capaz de pensar como humano
Hola, en este proyecto hablaremos de la bioinformática para crear un cerebro mecánico,este tema lo podemos encontrar en el libro "Bioinformática: Simulación, vida artificial e inteligencia artificial" en este habla sobre modelos y simulación, simulación de sistemas dinámicos, simulación de sistemas estocásticos, sistemas dinámicos, autómatas celulares, sistemas dinámicos, sistemas de Lindenmayer, simulando la evolución con ordenadores, algoritmos genéticos y evolutivos, sistemas expertos, redes neuronales artificiales, robots móviles y agentes autónomos,nos enfocaremos mas que todo en los temas que están en rojo y subrayados claro sin dejar por fuera a los otros.
Otro punto que me gustaría tratar seria como implementar la bioinformática en el campo de la medicina para los casos de parálisis cerebral ( en niños y adultos ) esto general mente ocurre por un daño en la corteza cerebral o por desarrollo anormal del cerebro

moyack

Cita de: Lopez Juan en Marzo 07, 2020, 04:22:07 PM
bioinformatica: inteligencia artificial para un cerebro mecánico
Hola, en este proyecto hablaremos de la bioinformática para crear un cerebro mecánico,este tema lo podemos encontrar en el libro "Bioinformática: Simulación, vida artificial e inteligencia artificial" en este habla sobre modelos y simulación, simulación de sistemas dinámicos, simulación de sistemas estocásticos, sistemas dinámicos, autómatas celulares, sistemas dinámicos, sistemas de Lindenmayer, simulando la evolución con ordenadores, algoritmos genéticos y evolutivos, sistemas expertos, redes neuronales artificiales, robots móviles y agentes autónomos,nos enfocaremos mas que todo en los temas que están en rojo y subrayados claro sin dejar por fuera a los otros.
Otro punto que me gustaría tratar seria como implementar la bioinformática en el campo de la medicina para los casos de parálisis cerebral ( en niños y adultos ) esto general mente ocurre por un daño en la corteza cerebral o por desarrollo anormal del cerebro

Hola @Lopez Juan !!

Bien, el tema es muy bueno, y es una excelente base. Como me habías comentado, la idea es buscar compañeros que participen en el desarrollo de este proyecto.

Lo primero es empezar a definir en CUAL de todas las propuestas hay que empezar a trabajar, pues este es un tema MUY MUY amplio. Mi sugerencia es tratar solo una de las líneas de inteligencia artificial. Hay tres fases: lógica difusa, redes neuronales y algoritmos genéticos.

MI sugerencia es arrancar con el más básico: Lógica difusa.

Lopez Juan

Cita de: moyack en Marzo 08, 2020, 09:43:42 AM
Cita de: Lopez Juan en Marzo 07, 2020, 04:22:07 PM
bioinformatica: inteligencia artificial para un cerebro mecánico
Hola, en este proyecto hablaremos de la bioinformática para crear un cerebro mecánico,este tema lo podemos encontrar en el libro "Bioinformática: Simulación, vida artificial e inteligencia artificial" en este habla sobre modelos y simulación, simulación de sistemas dinámicos, simulación de sistemas estocásticos, sistemas dinámicos, autómatas celulares, sistemas dinámicos, sistemas de Lindenmayer, simulando la evolución con ordenadores, algoritmos genéticos y evolutivos, sistemas expertos, redes neuronales artificiales, robots móviles y agentes autónomos,nos enfocaremos mas que todo en los temas que están en rojo y subrayados claro sin dejar por fuera a los otros.
Otro punto que me gustaría tratar seria como implementar la bioinformática en el campo de la medicina para los casos de parálisis cerebral ( en niños y adultos ) esto general mente ocurre por un daño en la corteza cerebral o por desarrollo anormal del cerebro

Hola @Lopez Juan !!

Bien, el tema es muy bueno, y es una excelente base. Como me habías comentado, la idea es buscar compañeros que participen en el desarrollo de este proyecto.

Lo primero es empezar a definir en CUAL de todas las propuestas hay que empezar a trabajar, pues este es un tema MUY MUY amplio. Mi sugerencia es tratar solo una de las líneas de inteligencia artificial. Hay tres fases: lógica difusa, redes neuronales y algoritmos genéticos.

MI sugerencia es arrancar con el más básico: Lógica difusa.
hola profe si gracias por el consejo mi idea es centrarme en las redes neuronales para recrear un cerebro humano

moyack

Cita de: Lopez Juan en Marzo 08, 2020, 10:03:54 AM
hola profe si gracias por el consejo mi idea es centrarme en las redes neuronales para recrear un cerebro humano

Si es así, igual necesito que indagues la diferencia entre las tres ramas mencionadas anteriormente para tomar una ruta metodológica adecuada a tus tiempos como estudiante.

Aguilar Sergio

juan en un articulo dice es el campo cientifico de la informatica que se centra en la creacion de mecanismos que pueden mostrar comportamiento conciderados inteligentes se crearia un mecanismo la cual se perfecto

Lopez Juan

Citando lo que dice el articulo especial:" introducción al razonamiento aproximado: lógica difusa"publicado en el año 2006 por la revista argentina de medicina respiratoria y teniendo como autores a Carlos Eduardo D'Negri , Eduardo Luis de Vito del Instituto de Investigaciones Medicas Alfredo Lanari , Universidad de Buenos Aires dice "La lógica difusa es una metodología que proporciona una manera simple y elegante de obtener una conclusión a partir de información de entrada vaga, ambigua, imprecisa, con ruido o incompleta. En general la lógica difusa imita como una persona toma decisiones basada en información con las características mencionadas. Una de las ventajas de la lógica difusa es la posibilidad de implementar sistemas basados en ella tanto en hardware como en software o en combinación de ambos.
La lógica difusa es una técnica de la inteligencia computacional que permite trabajar con información con alto grado de impresicion, en esto se diferencia de la lógica convencional que trabaja con información bien definida y precisa. Es una lógica multivaluada que permite valores intermedios para poder definir evaluaciones entre si/no,verdadero/falso,negro/blanco,caliente/frió,pequeño/grande,cerca/lejos,pocos/muchos,etc.
El concepto de lógica difusa fue concebido por Lofti a. Zaded, profesor de la Universidad de California en Berkeley quién disconforme con los conjuntos clásicos (crisp sets) que solo permiten dos opciones,
la pertenencia o no de un elemento a dicho conjunto, la presento como una forma de procesar información permitiendo pertenencias parciales a unos conjuntos, que en contraposición a los clásicos los denomino Conjuntos Difusos (fussy sets).
En la conocida teoría de conjuntos, un elemento pertenece o no a un conjunto. En un conjunto difuso su frontera no esta precisamente definida, y el grado de pertenencia entrega un valor entre 0 y 1. El concepto de grado de pertenencia remplaza al blanco o negro, es subjetivo y dependiente del dominio. El concepto de conjunto difuso fue expuesto por Zadeh en un articulo del año 1965, hoy clásico en la literatura de la lógica difusa, titulado "Fussy sets" y que fue publicado en la revista Information and control. El mismo Zadeh publica en 1971 el articulo, "Quantitative Fussy Semantics", en donde introduce los elementos formales que acabarían componiendo el cuerpo de la doctrina de la lógica difusas y sus aplicaciones tal como se conocen en la actualidad. Zadeh dice: "la lógica difusa trata de copiar la forma en que los humanos toman decisiones. Lo curioso es que, aunque baraja información imprecisa, esta lógica es en cierto modo muy precisa: se puede aparcar un coche en muy poco espacio sin darle al de atrás. Suena a paradoja, pero es así".   El profesor Zadeh menciona que la gente no requiere información numérica precisa del medio que le rodea para desarrollar tareas de control altamente adaptables, por ejemplo conducir un automóvil o caminar por una acera sin chocarse con los postes y las otras personas. Si los controladores convencionales, en esencia de re alimentados, se pudieran programar para aceptar entradas con ruido o imprecisas ellos podrían trabajar de una manera mas eficiente y quizás se podrían implementar mas fácilmente.
El hombre, en la búsqueda de la precisión, intento ajustar el mundo real a modelos matemáticos rígidos y estáticos, como la lógica clásica binaria. Cuando Aristoteles y sus precursores idearon sus teorías de la lógica y de las de matemáticas, propusieron la Ley del Centro Excluido que indica que cada asunto debe ser verdadero o falso. La hierba es verde o no verde; claramente no puede ser verde o no verde.
Lo que se busca, mediante el empleo de la teoría de los conjuntos difusos es describir y formalizar la realidad, empleando modelos flexibles que interprete las leyes que rigen el comportamiento humano y las relaciones entre hombres. Para describir esta realidad incierta, tanto en el orden de lo social como en el lo de natural, es necesario valerse de predicados, que pueden ser nítidos o difusos.
El nuevo punto de vista propuesto por  Zadeh choca con siglos de tradición cultural - la lógica binaria de Aristoteles, ser o no ser -, por lo cual hubo resistencia por parte de los científicos, quienes se negaban a aceptar que se trataba de un intento de estudiar científicamente el campo de la vaguedad, permitiendo manipular conceptos del lenguaje cotidiano, lo cual era imposible anteriormente.
Según comenta Zadeh: " En Occidente la acogida fue menos positiva. En Asia aceptan que le mundo no es blanco o negro, verdad o mentira. En Occidente todo es A o B". Por este motivo en Asia (Japón en especial) donde mas aplicaciones tecnológicas se realizan a partir de la lógica difusa.
Zadeh (1978), distingue entre los términos vague y fussy. Por ejemplo, "Juan regresa en unos pocos minutos" seria fussy (impreciso, pero informativo), mientra que "Juan regresara alguna vez" seria vague (ambiguo, no informativo). En el primer caso hay información que puede servir de soporte para una decisión y en el segundo no. En español se les ha bautizado con el nombre de conjuntos borrosos o difusos. Algunas asociaciones de estudiosos del tema en nuestro país han preferido no dar ninguna traducción al termino, llamándole lógica fussy. Probablemente, Zadeh esta queriendo señalar una estructura "blanda", "suave", "ligera", no rígido ( crispy ) en su definición, pero no por ello vaga o ambigua. Quizás, menos preocupado del análisis cuantitativo exacto y, por el contrario, mas atento a la aceptación de la imprecision en el mundo real, especialmente, en la percepción y el pensamiento humanos, y al calculo " blando" ( soft computing).
https://www.redalyc.org/pdf/3821/382138367007.pdf (pag 5 y 6)


este tema de lógica difusa serviría para programar a un robot para que tenga rango de respuestas, pongamos una situación un estudiante esta enfermo y no sabemos, esto lo detectaría para después decirnos que tan grave esta en ves de decir si esta enfermo o no.
esto se podría considerar como inteligencia artificial ya que la estaríamos programando pero estaría pensando como un humano.

moyack

Cita de: Lopez Juan en Marzo 10, 2020, 08:07:33 PM
Citando lo que dice el articulo especial:" introducción al razonamiento aproximado: lógica difusa"publicado en el año 2006 por la revista argentina de medicina respiratoria y teniendo como autores a Carlos Eduardo D'Negri , Eduardo Luis de Vito del Instituto de Investigaciones Medicas Alfredo Lanari , Universidad de Buenos Aires dice "La lógica difusa es una metodología que proporciona una manera simple y elegante de obtener una conclusión a partir de información de entrada vaga, ambigua, imprecisa, con ruido o incompleta. En general la lógica difusa imita como una persona toma decisiones basada en información con las características mencionadas. Una de las ventajas de la lógica difusa es la posibilidad de implementar sistemas basados en ella tanto en hardware como en software o en combinación de ambos.
La lógica difusa es una técnica de la inteligencia computacional que permite trabajar con información con alto grado de impresicion, en esto se diferencia de la lógica convencional que trabaja con información bien definida y precisa. Es una lógica multivaluada que permite valores intermedios para poder definir evaluaciones entre si/no,verdadero/falso,negro/blanco,caliente/frió,pequeño/grande,cerca/lejos,pocos/muchos,etc.
El concepto de lógica difusa fue concebido por Lofti a. Zaded, profesor de la Universidad de California en Berkeley quién disconforme con los conjuntos clásicos (crisp sets) que solo permiten dos opciones,
la pertenencia o no de un elemento a dicho conjunto, la presento como una forma de procesar información permitiendo pertenencias parciales a unos conjuntos, que en contraposición a los clásicos los denomino Conjuntos Difusos (fussy sets).
En la conocida teoría de conjuntos, un elemento pertenece o no a un conjunto. En un conjunto difuso su frontera no esta precisamente definida, y el grado de pertenencia entrega un valor entre 0 y 1. El concepto de grado de pertenencia remplaza al blanco o negro, es subjetivo y dependiente del dominio. El concepto de conjunto difuso fue expuesto por Zadeh en un articulo del año 1965, hoy clásico en la literatura de la lógica difusa, titulado "Fussy sets" y que fue publicado en la revista Information and control. El mismo Zadeh publica en 1971 el articulo, "Quantitative Fussy Semantics", en donde introduce los elementos formales que acabarían componiendo el cuerpo de la doctrina de la lógica difusas y sus aplicaciones tal como se conocen en la actualidad. Zadeh dice: "la lógica difusa trata de copiar la forma en que los humanos toman decisiones. Lo curioso es que, aunque baraja información imprecisa, esta lógica es en cierto modo muy precisa: se puede aparcar un coche en muy poco espacio sin darle al de atrás. Suena a paradoja, pero es así".   El profesor Zadeh menciona que la gente no requiere información numérica precisa del medio que le rodea para desarrollar tareas de control altamente adaptables, por ejemplo conducir un automóvil o caminar por una acera sin chocarse con los postes y las otras personas. Si los controladores convencionales, en esencia de re alimentados, se pudieran programar para aceptar entradas con ruido o imprecisas ellos podrían trabajar de una manera mas eficiente y quizás se podrían implementar mas fácilmente.
El hombre, en la búsqueda de la precisión, intento ajustar el mundo real a modelos matemáticos rígidos y estáticos, como la lógica clásica binaria. Cuando Aristoteles y sus precursores idearon sus teorías de la lógica y de las de matemáticas, propusieron la Ley del Centro Excluido que indica que cada asunto debe ser verdadero o falso. La hierba es verde o no verde; claramente no puede ser verde o no verde.
Lo que se busca, mediante el empleo de la teoría de los conjuntos difusos es describir y formalizar la realidad, empleando modelos flexibles que interprete las leyes que rigen el comportamiento humano y las relaciones entre hombres. Para describir esta realidad incierta, tanto en el orden de lo social como en el lo de natural, es necesario valerse de predicados, que pueden ser nítidos o difusos.
El nuevo punto de vista propuesto por  Zadeh choca con siglos de tradición cultural - la lógica binaria de Aristoteles, ser o no ser -, por lo cual hubo resistencia por parte de los científicos, quienes se negaban a aceptar que se trataba de un intento de estudiar científicamente el campo de la vaguedad, permitiendo manipular conceptos del lenguaje cotidiano, lo cual era imposible anteriormente.
Según comenta Zadeh: " En Occidente la acogida fue menos positiva. En Asia aceptan que le mundo no es blanco o negro, verdad o mentira. En Occidente todo es A o B". Por este motivo en Asia (Japón en especial) donde mas aplicaciones tecnológicas se realizan a partir de la lógica difusa.
Zadeh (1978), distingue entre los términos vague y fussy. Por ejemplo, "Juan regresa en unos pocos minutos" seria fussy (impreciso, pero informativo), mientra que "Juan regresara alguna vez" seria vague (ambiguo, no informativo). En el primer caso hay información que puede servir de soporte para una decisión y en el segundo no. En español se les ha bautizado con el nombre de conjuntos borrosos o difusos. Algunas asociaciones de estudiosos del tema en nuestro país han preferido no dar ninguna traducción al termino, llamándole lógica fussy. Probablemente, Zadeh esta queriendo señalar una estructura "blanda", "suave", "ligera", no rígido ( crispy ) en su definición, pero no por ello vaga o ambigua. Quizás, menos preocupado del análisis cuantitativo exacto y, por el contrario, mas atento a la aceptación de la imprecision en el mundo real, especialmente, en la percepción y el pensamiento humanos, y al calculo " blando" ( soft computing).

Ok, ahora: en que te puede servir esta explicación a tu proyecto?? edita tu mensaje y aclaras este aspecto por favor.

aguilar natalia

Cita de: Lopez Juan en Marzo 10, 2020, 08:07:33 PM
Citando lo que dice el articulo especial:" introducción al razonamiento aproximado: lógica difusa"publicado en el año 2006 por la revista argentina de medicina respiratoria y teniendo como autores a Carlos Eduardo D'Negri , Eduardo Luis de Vito del Instituto de Investigaciones Medicas Alfredo Lanari , Universidad de Buenos Aires dice "La lógica difusa es una metodología que proporciona una manera simple y elegante de obtener una conclusión a partir de información de entrada vaga, ambigua, imprecisa, con ruido o incompleta. En general la lógica difusa imita como una persona toma decisiones basada en información con las características mencionadas. Una de las ventajas de la lógica difusa es la posibilidad de implementar sistemas basados en ella tanto en hardware como en software o en combinación de ambos.
La lógica difusa es una técnica de la inteligencia computacional que permite trabajar con información con alto grado de impresicion, en esto se diferencia de la lógica convencional que trabaja con información bien definida y precisa. Es una lógica multivaluada que permite valores intermedios para poder definir evaluaciones entre si/no,verdadero/falso,negro/blanco,caliente/frió,pequeño/grande,cerca/lejos,pocos/muchos,etc.
El concepto de lógica difusa fue concebido por Lofti a. Zaded, profesor de la Universidad de California en Berkeley quién disconforme con los conjuntos clásicos (crisp sets) que solo permiten dos opciones,
la pertenencia o no de un elemento a dicho conjunto, la presento como una forma de procesar información permitiendo pertenencias parciales a unos conjuntos, que en contraposición a los clásicos los denomino Conjuntos Difusos (fussy sets).
En la conocida teoría de conjuntos, un elemento pertenece o no a un conjunto. En un conjunto difuso su frontera no esta precisamente definida, y el grado de pertenencia entrega un valor entre 0 y 1. El concepto de grado de pertenencia remplaza al blanco o negro, es subjetivo y dependiente del dominio. El concepto de conjunto difuso fue expuesto por Zadeh en un articulo del año 1965, hoy clásico en la literatura de la lógica difusa, titulado "Fussy sets" y que fue publicado en la revista Information and control. El mismo Zadeh publica en 1971 el articulo, "Quantitative Fussy Semantics", en donde introduce los elementos formales que acabarían componiendo el cuerpo de la doctrina de la lógica difusas y sus aplicaciones tal como se conocen en la actualidad. Zadeh dice: "la lógica difusa trata de copiar la forma en que los humanos toman decisiones. Lo curioso es que, aunque baraja información imprecisa, esta lógica es en cierto modo muy precisa: se puede aparcar un coche en muy poco espacio sin darle al de atrás. Suena a paradoja, pero es así".   El profesor Zadeh menciona que la gente no requiere información numérica precisa del medio que le rodea para desarrollar tareas de control altamente adaptables, por ejemplo conducir un automóvil o caminar por una acera sin chocarse con los postes y las otras personas. Si los controladores convencionales, en esencia de re alimentados, se pudieran programar para aceptar entradas con ruido o imprecisas ellos podrían trabajar de una manera mas eficiente y quizás se podrían implementar mas fácilmente.
El hombre, en la búsqueda de la precisión, intento ajustar el mundo real a modelos matemáticos rígidos y estáticos, como la lógica clásica binaria. Cuando Aristoteles y sus precursores idearon sus teorías de la lógica y de las de matemáticas, propusieron la Ley del Centro Excluido que indica que cada asunto debe ser verdadero o falso. La hierba es verde o no verde; claramente no puede ser verde o no verde.
Lo que se busca, mediante el empleo de la teoría de los conjuntos difusos es describir y formalizar la realidad, empleando modelos flexibles que interprete las leyes que rigen el comportamiento humano y las relaciones entre hombres. Para describir esta realidad incierta, tanto en el orden de lo social como en el lo de natural, es necesario valerse de predicados, que pueden ser nítidos o difusos.
El nuevo punto de vista propuesto por  Zadeh choca con siglos de tradición cultural - la lógica binaria de Aristoteles, ser o no ser -, por lo cual hubo resistencia por parte de los científicos, quienes se negaban a aceptar que se trataba de un intento de estudiar científicamente el campo de la vaguedad, permitiendo manipular conceptos del lenguaje cotidiano, lo cual era imposible anteriormente.
Según comenta Zadeh: " En Occidente la acogida fue menos positiva. En Asia aceptan que le mundo no es blanco o negro, verdad o mentira. En Occidente todo es A o B". Por este motivo en Asia (Japón en especial) donde mas aplicaciones tecnológicas se realizan a partir de la lógica difusa.
Zadeh (1978), distingue entre los términos vague y fussy. Por ejemplo, "Juan regresa en unos pocos minutos" seria fussy (impreciso, pero informativo), mientra que "Juan regresara alguna vez" seria vague (ambiguo, no informativo). En el primer caso hay información que puede servir de soporte para una decisión y en el segundo no. En español se les ha bautizado con el nombre de conjuntos borrosos o difusos. Algunas asociaciones de estudiosos del tema en nuestro país han preferido no dar ninguna traducción al termino, llamándole lógica fussy. Probablemente, Zadeh esta queriendo señalar una estructura "blanda", "suave", "ligera", no rígido ( crispy ) en su definición, pero no por ello vaga o ambigua. Quizás, menos preocupado del análisis cuantitativo exacto y, por el contrario, mas atento a la aceptación de la imprecision en el mundo real, especialmente, en la percepción y el pensamiento humanos, y al calculo " blando" ( soft computing).





Hola.

También puedes decir que es una disciplina en donde se incluyen modelización y simulación. Es el desarrollo y la aplicación de algoritmos orientados  en el análisis de datos en distintas áreas del conocimiento aplicándose métodos básicos como la biomatematica y técnicas de la vida artificial e inteligencia artificial.

Lopez Juan

AQUÍ VOY A DEJAR LA HOJA DE CALCULO DONDE IRÉ PONIENDO LOS ARTÍCULOS QUE ENCUENTRE Y QUE ENCUENTREN LOS QUE QUIERAN AYUDAR Y QUE CONTRIBUYAN AL PROGRESO DE ESTE PROYECTO
https://docs.google.com/spreadsheets/d/1QY-lwdosyc5sM5ibkjIcVyq-0B2MdNSLFuO7a2LHxRg/edit#gid=0

Lopez Juan

REDES NEURONALES ARTIFICIALES (RNA)
Parafraseando el libro " LAS REDES NEURONALES ARTIFICIALES " Las redes neuronales son redes en las que hay elementos de procesamiento de información que dependen de la experiencia,  estas tienen la función de simular el comportamiento del cerebro humano
esto serviría ya que podríamos programar al robot para que gane experiencia ejemplo ponemos al robot en algún lado y se choca ya cuando lo pongamos otra vez se va a detener y cambiar su dirección

Lopez Juan

¿que son los algoritmos geneticos?
citando al  libro "Introducción a los Algoritmos Genéticos y la Programación Genética" dice que "Los Algoritmos Genéticos son métodos adaptativos, generalmente usados en problemas de búsqueda y optimización de parámetros, basados en la reproducción sexual y en el principio de supervivencia del más apto (Fogel, 2000) (Fogel, 2006).
Más formalmente, y siguiendo la definición dada por Goldberg, "los Algoritmos Genéticos son algoritmos de búsqueda basados en la mecánica de selección natural y de la genética natural. Combinan la supervivencia del más apto entre estructuras de secuencias con un intercambio de información estructurado, aunque aleatorizado, para constituir así un algoritmo de búsqueda que tenga algo de las genialidades de las búsquedas humanas" (Goldberg, 1989).
Para alcanzar la solución a un problema se parte de un conjunto inicial de individuos, llamado población, generado de manera aleatoria. Cada uno de estos individuos representa una posible solución al problema. Estos individuos evolucionarán tomando como base los esquemas propuestos por Darwin sobre la selección natural, y se adaptarán en mayor medida tras el paso de cada generación a la solución requerida (Darwin, 2007)"

como se programa un problema
Cualquier solución potencial a un problema puede ser presentada dando valores a una serie de parámetros. El conjunto de todos los parámetros (genes en la terminología de Algoritmos Genéticos) se codifica en una cadena de valores denominada cromosoma. El conjunto de los parámetros representado por un cromosoma particular recibe el nombre de genotipo. El genotipo contiene la información necesaria para la construcción del organismo, es decir, la solución real al problema, denominada fenotipo. Por ejemplo, en términos biológicos, la información      genética contenida en el ADN de un individuo sería el genotipo, mientras que la expresión de ese ADN (el propio individuo) sería el fenotipo. Desde los primeros trabajos de John Holland la codificación suele hacerse mediante valores binarios. Se asigna un determinado número de bits a cada parámetro y se realiza una discretización de la variable representada por cada gen. El número de bits asignados dependerá del grado de ajuste que se desee alcanzar. Evidentemente no todos los parámetros tienen por qué estar codificados con el mismo número de bits. Cada uno de los bits pertenecientes a un gen suele recibir el nombre de alelo.
Sin embargo, también existen representaciones que codifican directamente cada parámetro con un valor entero, real o en punto flotante. A pesar de que se acusa a estas representaciones de degradar el paralelismo implícito de las representaciones binarias, permiten el desarrollo de operadores genéticos más específicos al campo de aplicación del Algoritmo Genético. En la Figura 1.4, se muestra un ejemplo típico de la aplicación de los Algoritmos Genéticos: cómo representar una red de neuronas artificiales para posteriormente realizar el proceso de optimización de los pesos sinápticos. Codificar una red de neuronas artificiales en forma de cromosoma es tan sencillo como asignar un gen del cromosoma a cada uno de los pesos de la red. También se podrían añadir genes que indiquen el número de capas y el número de elementos de procesado en cada una.
Algoritmo Principal
Los Algoritmos Genéticos trabajan sobre una población de individuos. Cada uno de ellos representa una posible solución al problema que se desea resolver. Todo individuo tiene asociado un ajuste de acuerdo a la bondad con respecto al problema de la solución que representa (en la naturaleza el equivalente sería una medida de la eficiencia del individuo en la lucha por los recursos). Una generación se obtiene a partir de la anterior por medio de los operadores de reproducción. Existen 2 tipos:
   Cruce. Se trata de una reproducción de tipo sexual. Se genera una descendencia a partir del mismo número de individuos (generalmente 2) de la generación anterior. Existen varios tipos que se detallarán en un
punto posterior.
   Copia. Se trata de una reproducción de tipo asexual. Un determinado número de individuos pasa sin sufrir ninguna variación directamente a la siguiente generación.
Inicializar población actual aleatoriamente
MIENTRAS no se cumpla el criterio de terminación crear población temporal vacía
SI elitismo: copiar en población temporal mejores individuos
MIENTRAS población temporal no llena seleccionar padres cruzar padres con probabilidad Pc
SI se ha producido el cruce mutar uno de los descendientes (prob. Pm) evaluar descendientes añadir descendientes a la población temporal
SINO añadir padres a la población temporal
FIN SI
FIN MIENTRAS aumentar contador generaciones establecer como nueva población actual la población temporal
FIN MIENTRAS
El funcionamiento genérico de un Algoritmo Genético puede apreciarse en el pseudocódigo, Si desea optarse por una estrategia elitista, los mejores individuos de cada generación se copian siempre en la población temporal, para evitar su pérdida.
A continuación comienza a generarse la nueva población en base a la aplicación de los operadores genéticos de cruce y/o copia. Una vez generados los nuevos individuos se realiza la mutación con una probabilidad Pm. La probabilidad de mutación suele ser muy baja, por lo general entre el 0.5% y el 2%. Se sale de este proceso cuando se alcanza alguno de los criterios de parada fijados. Los más usuales suelen ser:
   Los mejores individuos de la población representan soluciones suficientemente buenas para el problema que se desea resolver.
   La población ha convergido. Un gen ha convergido cuando el 95% de la población tiene el mismo valor para él, en el caso de trabajar con codificaciones binarias, o valores dentro de un rango especificado en
el caso de trabajar con otro tipo de codificaciones. Una vez que todos los genes alcanzan la convergencia se dice que la población ha convergido. Cuando esto ocurre la media de bondad de la población se aproxima a la bondad del mejor individuo.
   Se ha alcanzado el número de generaciones máximo especificado. Sobre este algoritmo inicialmente propuesto por Holland se han definido numerosas variantes. Quizás una de las más extendidas consiste en prescindir de la población temporal de manera que los operadores genéticos de cruce y mutación se aplican directamente sobre la población genética. Con esta variante el proceso de cruces varía ligeramente. Ahora no basta, en el caso de que el cruce se produzca, con insertar directamente la descendencia en la población. Puesto que el número de individuos de la población se ha de mantener constante, antes de insertar la descendencia en la población se le ha de hacer sitio. Es decir, para ubicar a los descendientes generados previamente se han de eliminar otros individuos de la población genética. Existen para ello diversas opciones, que se comentarán con más detalle en un punto posterior. Evidentemente, trabajando con una única población no se puede decir que se pase a la siguiente generación cuando se llene la población, pues siempre está llena. En este caso el paso a la siguiente generación se producirá una vez que se hayan alcanzado cierto número de cruces y mutaciones. Este número dependerá de la tasa de cruces y mutaciones especificadas por el usuario y del tamaño de la población. Así, con una tasa de cruces del 90%, una tasa de 18 Introducción a los Algoritmos Genéticos y la Programación Genética mutaciones del 2% y trabajando con 100 individuos se pasará a la siguiente generación cuando se alcanzasen 45 cruces (cada cruce genera 2 individuos con lo que se habrían insertado en la población 90 individuos, esto es el 90%) o 2 mutaciones. Otra variación común consiste en la modificación del esquema de selección de los individuos que serán mutados. En el esquema mostrado, sólo los descendientes originados a partir de un cruce son mutados (proceso que imita los errores de transcripción del ADN que tienen lugar en la naturaleza); otra opción habitual es la selección aleatoria del individuo a mutar entre todos los que forman parte de la población genética

esto nos sirve para poder recrear las cadenas de ADN mediante la programación utilizando el código binario

moyack

Bien hasta ahora.

Recomiendo centrarse en la parte de programación. Es obligatorio que ustedes se enfoquen en aprender un lenguaje para entender la estructuración de su proyecto.

moyack

proyecto calificado.

Enfocarse en al aprendizaje de la programación.