Gracias Gracias:  1,101
Página 218 de 297 PrimerPrimer ... 118168208214215216217218219220221222228268 ... ÚltimoÚltimo
Resultados 3,256 al 3,270 de 4443

Tema: Un poco de ciencia

  1. #3256
    Expulsado
    Fecha de ingreso
    Dec 2010
    Ubicación
    En matrix
    Mensajes
    1,681

    Re: Un poco de ciencia

    eee? pero yo no intenté averiguar lo que ponía tu papel....

    Para mi el interrogante ya te lo dije, son todas las soluciones. Si tu en el papel pones una sola, pues no pones la solución, que es justamente todas las posibles soluciones.

    Mi cerebro es un ordenador, y como cualquier cerebro, le da mil vueltas a un ordenador corriente.

    Pero yo no soy mi cerebro, yo soy una consciencia igual que todos, eso soy, con voluntad para controlar un ordenador, para controlar un vehículo
    Última edición por aprendiz; 08-01-2012 a las 19:24

  2. #3257
    Senior Member Avatar de iherrero20
    Fecha de ingreso
    Oct 2008
    Ubicación
    Toledo (España)
    Mensajes
    3,078

    Re: Un poco de ciencia

    Aprendiz, lo que me molesta es que no haces más que repetir el mismo argumento una y otra vez, se supone que si ese argumento no funciona habrá que buscar otra alternativa, y para repetir siempre lo mismo, creo que no merece la pena. ¿De qué sirve la consciencia sin conciencia?
    Si vives mirando hacia el sol, no verás las sombras. (Helen Séller)

  3. #3258
    Ninja Fever Avatar de Mars Attacks
    Fecha de ingreso
    Jun 2003
    Ubicación
    Castellón
    Mensajes
    12,744

    Re: Un poco de ciencia

    Bueno, ya está el programa hecho.

    Dejo el código aquí debajo. Si alguien usa linux, se compila con

    gcc bingo.c -o bingo -O3 -std=c99
    (-O3 es para que optimice todo lo que pueda y -std=c99 para que me permita usar cierto dialecto estándar del C que se permite a partir de esa versión)
    Luego lo lanzaríamos con

    time ./bingo

    Para que nos diga cuanto le ha costado terminar.

    Ahora explico el programa en sí. He escogido la siguiente secuencia de letras:
    PCGGAUUUACUCAGGGGAGAGCCCAGACUGAAACUGGAGUCUGUGTCGUC CACAGAAUUCGCACCAOH

    Y he escrito un programa que se lanza a probar aleatoriamente combinaciones de letras, hasta llegar a esa secuencia. No por fuerza bruta (es decir, no probando cada posible combinación), sino aleatorizando cada vez todos los componentes, como ocurriría si los metiéramos en una bolsa y los sacudiéramos, o como si pusiéramos los componentes de una tortilla de patatas en una sartén y la revolviéramos. Hay muchas de esas pruebas que habrá sido la misma prueba (por ejemplo, puede que haya salido varias veces esa cadena ordenada alfabéticamente). Cada una de las pruebas incrementa un contador.

    Simplemente le he pedido al programa que me avise cuando la cadena formada aleatoriamente coincide con la que quería que me avisara, y me diga el número de veces que ha sacudido la bolsa hasta lograrlo. Esto lo dejo claro porque no estoy programando ningún comportamiento dentro del sistema, sólo muevo la bolsa (que equivale a tener atomos dispersos en un charco interactuando entre ellos) y cuando han interactuado los 68 o 69 que componen la cadena, le pregunto si el resultado se parece al esperado. Si no, vuelve a intentarlo.
    Con la orden "time" antes del programa, el sistema operativo me dice además cuanto tiempo ha tardado en calcularlo.

    Éste es el resultado:
    marte@chisme$ time ./probanding
    ARN de transferencia conseguido tras 1774618663 combinaciones aleatorias

    real 143m36.637s
    user 93m6.161s
    sys 0m6.026s

    Para analizar el resultado hay que tener en cuenta varias consideraciones.
    La primera, que esto es un simple notebooque monoprocesador que trabaja secuencialmente, cuando la naturaleza trabaja en paralelo (podría hacer las 1774618663 combinaciones a la vez a lo largo y ancho de la tierra).
    La segunda, que obviamente en el proceso además se generarían cadenas más cortas y más largas, pero me he interesado por ésa en especial (luego explico por qué). Esas cadenas más cortas y más largas a su vez pueden no hacer nada o tener cierta funcionalidad interesante.
    La tercera, que en el mundo real es incluso más sencillo, puesto que aunque las combinaciones sean aletorias, recordemos que los atomos y estas moléculas están "imantadas" de manera que hay muchas combinaciones que no serían posibles y que mi programa las ha intentado de todas formas.
    La cuarta, que en el mundo real es todavía más rápido, puesto que aquí he preguntado cuanto tarda en conseguir aleatoriamente toooda la cadena. En la vida real primero se conseguirían las bases A, C, G,T y U (si queréis, adapto el programa para pedirle esa información, pero las pruebas que he hecho con tan pocos elementos me daba la solución en un par de segundos como mucho), y de esas bases tendríamos parejas A-U G-C, y de esas parejas conseguiríamos la siguiente estructura. Aquí es donde mucha gente se equivoca pensando que al azar tiene que surgir todo mi ordenador personal después de romperlo y meterlo en una bolsa. Las estructuras orgánicas tienen puntos de anclaje que autoencajan cuando se encuentran con otras estructuras apropiadas (por eso nos pueden infectar los virus, acoplandose a las células; no se abren paso a dentelladas).
    La quinta es que en el mundo real se lo puede tomar todo con mucha más calma. El programa ha tardado 143 minutos en avisarme de que, tras meter las letras en una bolsa y agitarlas, ha salido la palabra en cuestión. Al estar usando procedimientos aleatorios, esto podría haber pasado a la primera, o pasar siglos sin que se diera esa combinación. Pero en el Universo, si algo sobra, es tiempo. Aunque tardará milenios, daría con ella.

    En resumen: mi bingo ha avisado de que ha salido una molécula que es capaz de engancharse a otros aminoacidos y transportarlos, llamada ARNt (ARN transcriptasa, porque ayuda a replicar -transcribir- el código del ADN).
    ¿Para qué sirve eso? Por sí mismo nada (total, ha sido puro azar), pero si en el siguiente nivel el azar la acerca a otra molécula surgida por azar (que no es mucho más complicada que ésta, aunque se habrá tomado su tiempo en aparecer, pero véase el punto quinto) que sea ARN ribosómico, ya tenemos las bases para empezar a copiar ADN. El ADN parece muy complejo, pero si lo desmembramos de esta manera, veremos que para su origen no hace falta ninguna magia especial, ya que no sale todo "de una vez", sino que se va formando a cachos.

    Como curiosidad, escribiendo el programa muté sin querer como cuatro veces el ARNt, equivocandome al escribir el código en el programa. Esto mismo, en el terreno de la naturaleza, sería equivalente a que algún accidente físico-químico estropeara o intercambiara alguna parte de la cadena.

    Ahora, por fin, el código. Sé que es mejorable, pero anoche se hizo muy tarde y ya sabéis en qué andaba entretenido a la vez Al llegar hoy de clase de trompeta, el programa había terminado, imagino que en una máquina mejor podría probar más combinaciones más rápido, pero como comentaba antes, eso no garantiza nada. Podría pasar siglos sin llegar a esa cadena.

    Código:
    #include <stdio.h>
    
    #define ARNt "PCGGAUUUACUCAGGGGAGAGCCCAGACUGAAACUGGAGUCUGUGTCGUCCACAGAAUUCGCACCAOH"
    const int iLen = strlen(ARNt);
    
    typedef struct TCelda
    {
     int iFinalPos;
     struct TCelda* pNext;
     struct TCelda* pPrev;
    } TListaEnlazada; 
    
    //////
    // Probamos combinaciones de bases aleatorias con los componentes originales
    //////
    void Recombina(char* sInit)
    {
     char iTemp[iLen+1];
     strcpy(iTemp,sInit);
     
     TListaEnlazada* pCabezaLista = (TListaEnlazada*) malloc(sizeof(TListaEnlazada));
     TListaEnlazada* pAnteriorElemento = pCabezaLista;
     pCabezaLista->iFinalPos = 0;
     pCabezaLista->pNext = NULL;
     pCabezaLista->pPrev = NULL;
     
     for(int i=1; i<=iLen; ++i)
     {
     TListaEnlazada* pSiguienteElemento = (TListaEnlazada*) malloc(sizeof(TListaEnlazada));
     pSiguienteElemento->iFinalPos = i;
     pAnteriorElemento->pNext = pSiguienteElemento;
     pSiguienteElemento->pPrev = pAnteriorElemento;
     pSiguienteElemento->pNext = NULL;
     pAnteriorElemento = pSiguienteElemento;
     }
     
     TListaEnlazada* pTemp = NULL;
     for(int i=0; i<=iLen; ++i)
     {
     int iPos = rand() % (iLen-i+1);
     pTemp = pCabezaLista;
     int iFinalPos=pCabezaLista->iFinalPos;
     
     for(int j=1; j<iPos; ++j)
     {
     pTemp = pTemp->pNext;
     iFinalPos=pTemp->iFinalPos;
     }
     
     if(pTemp==pCabezaLista)
     if (pCabezaLista->pNext)
     {
     pCabezaLista = pCabezaLista->pNext;
     pCabezaLista->pPrev = NULL;
     }
     
     if(pTemp->pPrev && pTemp->pNext)
     {
     pTemp->pPrev->pNext = pTemp->pNext;
     pTemp->pNext->pPrev = pTemp->pPrev;
     }
     
     free(pTemp);
     pTemp = NULL;
     
     char c = iTemp[iFinalPos];
     sInit[i] = c;
     }
     //printf("%s\n",sInit);
    }
    
    /////
    /// Combina aleatoriamente un vector desordenado hasta que coincida con uno de los posibles
    /// patrones con sentido
    ////
    int main (int argc, const char * argv[])
    {
     srand(time(NULL));
     char sInit[iLen+1];
     strcpy(sInit,"AAAAAAAAAAAAAAAAACCCCCCCCCCCCCCCCCGGGGGGGGGGGGGGGGGGHOPTUUUUUUUUUUUU");
     int iInitLen = strlen(sInit);
     
     if( iInitLen != iLen )
     {
     printf("Metiste la pata al contar: %d/%d\n", iInitLen, iLen);
     }
     else
     {
     int iContador=0;
     while(strcmp(sInit, ARNt) != 0)
     {
     iContador++;
     Recombina(&sInit);
     }
     printf("ARN de transferencia conseguido tras %d combinaciones aleatorias\n", iContador);
     }
     return 0;
    }
    He sacado la estructura del ARNt de aquí:
    http://www.scielo.br/scielo.php?scri...62008000400008

    Es la más simple de todas las que se puede encontrar de su tipo.

    Si alguien necesita alguna explicación sobre alguna parte en concreto del programa, sólo tiene que preguntar.

    Quod est demostrandum.

  4. #3259
    Expulsado
    Fecha de ingreso
    Dec 2010
    Ubicación
    En matrix
    Mensajes
    1,681

    Re: Un poco de ciencia

    por ejemplo?, dime tu opinión sobre este tema, el de tu consciencia, tu cerebro, y el adn si quieres también. O lo que te apetezca vamos,

    Argumentalo, y ya esta.

    edito: esto va para iherrero

  5. #3260
    Ninja Fever Avatar de Mars Attacks
    Fecha de ingreso
    Jun 2003
    Ubicación
    Castellón
    Mensajes
    12,744

    Re: Un poco de ciencia

    Cita Iniciado por aprendiz Ver mensaje
    eee? pero yo no intenté averiguar lo que ponía tu papel....

    Para mi el interrogante ya te lo dije, son todas las soluciones. Si tu en el papel pones una sola, pues no pones la solución, que es justamente todas las posibles soluciones.

    Mi cerebro es un ordenador, y como cualquier cerebro, le da mil vueltas a un ordenador corriente.

    Pero yo no soy mi cerebro, yo soy una consciencia igual que todos, eso soy, con voluntad para controlar un ordenador, para controlar un vehículo
    La frase es de Hawkings, por cierto. Recuérdale si le ves lo del dedo y tal, le hará gracia.

  6. #3261
    Expulsado
    Fecha de ingreso
    Dec 2010
    Ubicación
    En matrix
    Mensajes
    1,681

    Re: Un poco de ciencia

    mars, estas teniendo un gran comportamiento infantil, primero: te echo preguntas varias que no has respondido como el niño que se niega a comer.
    segundo: en la conversación de ayer, as dicho que eres un bingo, como el programa que has echo, cierto?

    entonces, solo te queda leer mi firma detenidamente.

    Ya me aburrí ayer de hablar con un bingo.

    pero te argumentaré por milesima vez ya creo:

    el programa ese que has echo tu, como lo hiciste? agitando los dedos aleatoriamente sobre el teclado?

    SIN MAS, binguito

  7. #3262
    Ninja Fever Avatar de Mars Attacks
    Fecha de ingreso
    Jun 2003
    Ubicación
    Castellón
    Mensajes
    12,744

    Re: Un poco de ciencia

    Me voy a seguir leyendo, disfruta de la demostración que querías sobre el código genético. Puedes pensar un poco por ti mismo y variar el código para probar cuanto se tarda en obtener las otras bases. Tienes sus estructuras aquí:
    http://es.wikipedia.org/wiki/%C3%81cido_nucleico

    ¡Y gracias por permitirme aclarar tantos conceptos! Saludos de un ser evolucionado tras millones de años de sutiles cambios aleatorios de lo que surgió en un bingo con bolas cargadas electromagnéticamente.

    Otro día nos cuentas en el otro hilo cómo explica tu teoría las enfermedades genéticas. ¿Voluntades que se portaron mal?

  8. #3263
    Expulsado
    Fecha de ingreso
    Dec 2010
    Ubicación
    En matrix
    Mensajes
    1,681

    Re: Un poco de ciencia

    Porque te vas del asunto?

    A mi no me cuesta en absoluto reconocer un error, a ti parece que tu orgullo te controla.

    Responde a mis preguntas, y deja de irte por las ramas.

    ¿ Creaste el programa agitando tus dedos aleatoriamente?

  9. #3264
    Senior Member Avatar de iherrero20
    Fecha de ingreso
    Oct 2008
    Ubicación
    Toledo (España)
    Mensajes
    3,078

    Re: Un poco de ciencia

    Y seguimos con los deditos, maldita sea cuando un niño nace mueve sus dedos sin saber utilizarlos, no por su voluntad, a medida que uno crece va aprendiendo a moverse, hasta que uno controla lo que quiere, o lo que puede. Te aconsejo que leas sobre la percepción, muchas veces el cerebro aprende sin querer, luego no siempre es por voluntad.
    Si vives mirando hacia el sol, no verás las sombras. (Helen Séller)

  10. #3265
    Expulsado
    Fecha de ingreso
    Dec 2010
    Ubicación
    En matrix
    Mensajes
    1,681

    Re: Un poco de ciencia

    VEnce el primer código, si lo estas deseando por dentro, se libre, deja que vuele tu mente, y siempre tienes esto para ayudarte sin duda:
    http://www.foro3d.com/f22/poco-conciencia-98277-10.html

    Pero mars, es un cobarde, porque no es capaz de contestar a lo evidente:

    Mars ¿ Creaste el programa agitando tus dedos aleatoriamente?

  11. #3266
    Ninja Fever Avatar de Mars Attacks
    Fecha de ingreso
    Jun 2003
    Ubicación
    Castellón
    Mensajes
    12,744

    Re: Un poco de ciencia

    Ya te he respondido antes. Lee lo que escribo y luego preguntas. Si no entiendes algo de lo que digo, no tendré inconveniente en explicarlo tantas veces como haga falta. Si no lo lees, no es mi problema.

    Al tanto del tema de la evolución terrestre, acabo de enterarme de que un amigo ha empezado con esta estupenda iniciativa:
    http://www.microsiervos.com/archivo/...en-un-ano.html

    Un curioso proyecto que arranca hoy en Twitter, @Tierra366d, que tiene como objetivo contar la historia de la Tierra comprimida en la duración de un año bisiesto, con lo que cada segundo que pasa avanza 150 años en la historia del planeta.
    Por el mismo camino me he enterado también de que hay iniciativas similares que están retransmitiendo "en tiempo real" (pero con un desfase de algo más de medio siglo) los acontecimientos de la Segunda Guerra Mundial. Ahí queda para los amantes de la historia, entre los que no me cuento. Yo sólo me quedo con las anécdotas... (por eso aprovecho para recomendar el libro "Historias de la historia" o "Una breve historia de casi todo", donde explica las motivaciones humanas de casi cada avance científico relevante).

  12. #3267
    Senior Teapot Avatar de dadaa
    Fecha de ingreso
    Dec 2007
    Mensajes
    2,459

    Re: Un poco de ciencia

    Cita Iniciado por aprendiz Ver mensaje
    Pero mars, es un cobarde, porque no es capaz de contestar a lo evidente:
    Mars ¿ Creaste el programa agitando tus dedos aleatoriamente?
    yo puedo crear un programa que cree el programa de Mars de forma aleatoria. incluso podría crear un programa que crease ese programa de forma aleatoria.
    Ich will meine Oper Haben ¡¡¡¡¡

  13. #3268
    Moderador Avatar de Klópes
    Fecha de ingreso
    Jul 2005
    Ubicación
    Estuve el día que llovió en los Monegros
    Mensajes
    7,988

    Re: Un poco de ciencia

    Mars, no recuerdo cómo se construiría una cadena de ADN completa, así que igual me estoy equivocando con la pregunta. Creo recordar que es el ARN transferente el que va replicando la cadena de ARN mensajero y convirtiéndola en ADN, pero aún haciendo el experimento con una cadena de ADN completa, ¿El tiempo que escupe tu programa crees que será proporcional al número de bases? ¿Cuantas bases la forman?
    ...y estaba superbueno.
    Y miré su perfil. Y vi que era amigo de Daniela. Puaf.


    Dos niñas en el parque

    no se elevará, nunca más

  14. #3269
    Expulsado
    Fecha de ingreso
    Dec 2010
    Ubicación
    En matrix
    Mensajes
    1,681

    Re: Un poco de ciencia

    Mars ¿ Creaste el programa agitando tus dedos aleatoriamente?

    Alguien me puede responder a esto? ¿o optais por ignorar mis preguntasí

    es vuestra eleción, responder o no hacerlo.

    Mars opta por irse por las ramas, y creo que los demás igual...
    Última edición por aprendiz; 08-01-2012 a las 21:10

  15. #3270
    Senior Teapot Avatar de dadaa
    Fecha de ingreso
    Dec 2007
    Mensajes
    2,459

    Re: Un poco de ciencia

    Cita Iniciado por aprendiz Ver mensaje
    Mars ¿ Creaste el programa agitando tus dedos aleatoriamente?

    Alguien me puede responder a esto? ¿o optais por ignorar mis preguntasí

    es vuestra eleción, responder o no hacerlo.

    Mars opta por irse por las ramas, y creo que los demás igual...
    yo puedo crear un programa que cree el programa de Mars de forma aleatoria. incluso podría crear un programa que crease ese programa de forma aleatoria.
    Ich will meine Oper Haben ¡¡¡¡¡

Página 218 de 297 PrimerPrimer ... 118168208214215216217218219220221222228268 ... ÚltimoÚltimo

Temas similares

  1. PC 800/1000 € para ir mejorando poco a poco.
    Por guitalla en el foro Hardware
    Respuestas: 8
    Último mensaje: 21-03-2016, 11:56
  2. Levantar un edificio poco a poco
    Por alextula2 en el foro Animación y Rigging
    Respuestas: 4
    Último mensaje: 09-07-2009, 01:25
  3. Poco a poco cogiendole mano a VRaY
    Por gianfrancoku en el foro Render, Iluminación y Cámaras
    Respuestas: 1
    Último mensaje: 09-07-2008, 17:38
  4. Comenzando como el año poco a poco
    Por maxgul en el foro Quien eres tu - Aqui puedes presentarte
    Respuestas: 2
    Último mensaje: 03-01-2008, 19:09
  5. Poco a poco, tranquilamente, sigo con mi web
    Por Ferriz en el foro Ilustración y 2D
    Respuestas: 15
    Último mensaje: 07-05-2007, 13:20

Actualmente estos son sus permisos de publicación en el foro.

  • -No puedes crear nuevos temas al no estar registrado o no haber iniciado sesión en el foro.
  • -No puedes responder temas al no estar registrado o no haber iniciado sesión en el foro.
  • -No puedes subir archivos adjuntos al no estar registrado o no haber iniciado sesión en el foro.
  • -No puedes editar tus mensajes al no estar registrado o no haber iniciado sesión en el foro.
  •