jueves, 14 de abril de 2011

Alienígenas maripósidos

V Concurso IES Miguel Hernández, 2010

Nos han traído de una expedición intergaláctica unos alienígenas muy extraños. Cada semana, alguno de ellos cambian inexplicablemente de forma, siguiendo una pauta muy curiosa.

De momento, los 1080 que nos han traído adoptan su forma gusánida, porque es el mejor momento para cazarlos, pero queremos que estudies los datos que aparecen a continuación y nos digas, suponiendo que no muere ninguno, cómo quedará repartida nuestra población al cabo del tiempo. ¿Se estabilizará, y siempre habrá la misma cantidad de los tres tipos? ¿Cuántos de cada tipo, en ese caso?

El caso es que nos han informado que, cada semana, el 70% de los gusánidos pasan a ser maripósidos. Además, el 10% de los maripósidos pasan a ser jiráfidos y el 25% de jiráfidos se transforman en gusánidos de nuevo. Todos los cambios suceden simultáneamente, al cabo de una semana. Si una de las cantidades no es exacta, al azar cambia una cantidad mayor o menor en una unidad, pero más o menos se cumplen las proporciones.

¿Cómo crees que se quedará la población de esos extraños seres, en el supuesto de que no fallezcan, ni se reproduzcan?

Explica tu razonamiento.

Solución

2 comentarios:

Alex dijo...

Yo a primera vista no sabría decir si el sistema oscilará o si se estabilizará en unos valores concretos.

Así que he escrito un pequeño programa para simular y el sistema se estabiliza en x=100 , y=700 y z=280 , pero no sé explicar porqué.

Por si a alguien le interesa el programa en C (lo he hecho con números reales, pero no creo que haya diferencia sustancial en pasarlo a números enteros).


void main(void) {

float a=1080, b=0, c=0;
float a2, b2, c2;
int i;

for (i=0; i<100; i++) {
printf ("Iteración %d : %f %f %f\n", i, a, b, c);
a2 = (a*3)/10 + c/4;
b2 = (b*9)/10 + (a*7)/10;
c2 = (c*3)/4 + b/10;
a = a2;
b = b2;
c = c2;
}
}

Alex dijo...

bueno, sabiendo que se estabiliza, con esta pista es fácil demostrar la solución.

Se trata de demostrar que hay un punto fijo de periodo 1.

Las ecuaciones serían:

a = a - a*70/100 + c*25/100
b = b - b*10/100 + a*70/100
c = c - c*25/100 + b*10/100
a + b + c = 1080

efectivamente, a=100 , b=700 , c=280 cumplen