jueves, 29 de marzo de 2012

Reporte 8 - Paralelos

Como volvimos hacer el cluster desde 0, no he podido experimentar agusto porque todos tenemos que tener la misma configuracion y los mismos paquetes instalados.

Propuesta


En la clase de contexto la maestra nos puso un ejercicio, de intentar acomodar los números dentro de una matriz en este caso 5*5, el objetivo era que dentro del cuadro de 5*5 acomodaras los números del 4 al 28, sin que se repitieran y que sumados en horizontal, vertical y diagonal sumaran 80.  Recordé que los chinos o japoneses habían descubierto la forma de hacerlos. Busque en internet y ¡BRAVO! se llamaban cuadros mágicos, leei como se resolvía (arriba y derecha) y resolví el que la maestra había puesto de ejercicio, ganandome puntos extras (jahjhajahja :D).

Entonces se me ocurrio, ¿se podra hacer para cluster? y llege a la conclucion de que si se podria.

Modo Normal:

Supongamos que tenemos una matriz de n*n, entonces la forma de resolverlo es:

1.- Empezar con el primer numero, en la casilla de enmedio de la columna superior
2.- Moverte arriba y derecha, y poner el siguiente numero.
2.1.- Cuando la casilla este ocupada, poner el numero abajo y regresa al paso 2.
3.- Seguimos colocando numeros, hasta que se llene la matriz.
4.- Y al final comprobamos si la suma en diagonal, vertical y diagonal es igual a la cifra "magica".



Modo cluster:

Para hacerlo mas entendible, pongamos unos puntos de partida.
El cuadro ejemplo sera de  9*9



1.- Dividimos el MEGAcuadro 9*9 en 9 cuadritos de 3*3


1.1.-Como dice la regla "no podemos repertir lo números" entonces el cuadrito 2, empezara del numero 10 al 18; el cuadro 3, del 19 al 27 y asi sucesivamente.

2.- El primer cuadrito que se envía a algún nodo se le coloca un BANDERA, para cuando lo regresen al cuadro con la respuesta el "servidor" nadamas acomode (según la bandera).


3.- Cuando el nodo termine su trabajo regresar el cuadro y colocarlo en la posicion que esta asigando.




4.- cuando todos los nodos hallan terminado, tendremos una matriz de 9*9 resuelta en poco tiempo y sin perder la "cifra magica".


Esta es mi propuesta, en vacaciones trabajare con codigo, para correrlo en cluster.

Referencias

http://www.math.hmc.edu/funfacts/ffiles/10001.4-8.shtml#
http://gaussianos.com/cuadrados-magicos/