Etiquetas

jueves, 15 de noviembre de 2012

Tarea 14.

Para esta entrada se nos pidio trabajar con texturas y darles color..

Pues inicialmente comencé a trabajar con python, investigue algunas cosas y encontré que me podía ayudar con la librería Tkinter, y este fue el primer intento que tuve :P  un ejemplo sencillo.

Este es el código: ** **



Después pedí ayuda a la doctora:

**
**
Este  es el resultado del código anterior:

También intente darle un poco de movimiento, intentando cambiarle el ruido que se le había dado inicialmente, pero con eso tuve complicaciones, y a la falta de tiempo no pude solucionar el error que me marcaba. :/

masomenos intentaba lograr algo así..

jueves, 8 de noviembre de 2012

Tarea

Para esta entrada se nos encargo que realizáramos una interacción entre algún dispositivo externo y un juego.

En este caso yo utilice un demo de un juego que tenia, el cual consiste en una pelotita rebotando de un lado a otro y uno debe cuidar que no caiga de la barrita.




Y este es el código del juego, ya con la conexión al arduino:
**********
**********
Y acá esta el código que le puse al arduino:
**********
**********


En si lo que hace es que cuando uno deja caer la pelotita de la barra se enciende un led que indica que esta cayo.
Acá un Demo:


************
************




Aportacion de esta semana:
Estoy trabajando en un mapa.. aun esta en proceso pero esto es lo que llevo :)




Referencias:

jueves, 1 de noviembre de 2012

Reporte.

Retos de Usabilidad en el ambiente de trabajo Ubicomp

Interaction Group, Software Center, Samsung Electronics Co, Ltd

Introducción.-

En este estudio nos habla de como se han estado desarrollando distintas maneras de interactuar el ser humano y las maquinas, nos dice que se esta tratando utilizar diferentes escenarios para que el usuario interactue con una serie de dispositivos ubicados en su entorno.

Nos habla también de las como las pruebas de Usabilidad se han vuelto fundamentales para la evaluación de productos y sistemas desde 1980.

En este articulo nos habla de como se busca proporcionar un marco de pruebas de usabilidad para el ambiente Ubicomp.


Desarrollo


El area de la computacion ubicua fue propuesta por Mark Weiser a principios de 1990. Un principio que maneja Weiser es que las computadoras no deben ser demasiado explicitas en el camino del usuario y el objetivo de este, si no que debe servir al usuario como si no existiera.

Ubicomp ha sido aceptado como un nuevo paradigma informático, mas computadoras móviles y sistemas informáticos integrados en objetos están siendo constantemente introducidos. Ademas con esto vienen nuevos estilos de interacción y técnicas están continuamente propuestos como paradigma de interacción sobre el ambiente ubicomp.

Las aplicaciones dentro de ubicomp implican mucho mas que interacción. Esto porque esta situados dentro de entornos físicos y cambian la forma en que las personas interactuan con este ambiente.

Al trabajar con la usabilidad tradicional IHC ha ido produciendo que al diseñar interfaces se tomen en cuenta diversos factores humanos.  Aunque debido a esto las necesidades y demandas de diseño se concentran en interfaces de computadoras de escritorio, y hasta ahora no hay cuestión si estos marcos de usabilidad se pueden aplicar al nuevo paradigma de interacción que vallan mas allá del teclado, ratón y pantalla.



Un caso de estudio es el inicio del Proyecto Futuro el cual tiene por objeto establecer un solido, seguro y fácil de usar concepto de red domestica que estará basado en breves tecnologías  de alcance in-alambrico.
Los estudios de usabilidad para este proyecto están basados en escenarios definidos, que se llevaron acabo antes de que se diseñara la arquitectura, esto para obtener una retroalimentacion temprana para las aplicaciones propuestas y servicios para el usuario final.


Conclusiones


La computación ubicua trae una nueva forma de interactuar con los ordenadores liberando así al usuario de estar sentado frente al ordenador de escritorio.






Avances de esta semana

no tengo avances el estúpido mapa se borro >.>  <,<  X____________X

jueves, 25 de octubre de 2012

Movimientos con Blender

En esta semana segui trabajando con blender, en esta ocacion trabaje con movieminetos.
Para esto utilice el trabajo que anteriormente habia utilizado (la botella) y le fui dando movimientos.


Primero utilice una de las vistas para que me permitiera ver la vista de cada vector y asi poder darle un mejor movimiento mas real.



Después de  esto fui seleccionando por cuadros y dentro de cada uno añadi un movimiento diferente,
y este es el resultado que obtuve! :)

video

Y como avance de esta semana eh estado trabajando sobre algunos mapas, que espero poderlos tener terminados para la semana siguiente, ademas de que se esta organizando una reunión para trabajar en grupo sobre el proyecto.


jueves, 18 de octubre de 2012

Mas Blender! :D

Para esta semana se nos pidió que trabajáramos sobre blender elaborando algún objeto que tuviera que ver con el videojuego que se esta realizando grupal mente.

Para esto yo intente realizar una botella.. ( que principalmente lo había pensado como una simple botella en el camino, pero después pensé que podía utilizarse como algún tipo de poción).

Creo que antes ya había hablado de blender, así que omitiré la introducción a lo que es.. xD

Bien, para iniciar con mi botella estuve haciendo un mugrero primero! xD y borraba y volvía a poner figuras y así hasta que por fin obtuve algo. Inicialmente utilice un cilindro esto para hacer el cuerpo de la botella.. de ahí fui seccionando para poder ir dando la forma a lo que buscaba..

note se que a un lado hay una figura que no se que onda! xD 

Despues de esto seleccione de nuevo solo la parte superior y reduje el ancho del cilindro... y alargue un poco.. y asi repetidamente hasta que obtuve la figura de la botella..

Aqui parece un frasco de medicina o algo así :p



Y este fue el resultado que obtuve


Botella! :D
Y le agregue una textura y esto fue lo que obtuve:




jueves, 11 de octubre de 2012

Cubo Blender

Esta semana ami me toco trabajar en el diseño de un cubo 3d y movimiento, para esto estuve trabajando con blender.

Si queremos instalar Blender ponemos en terminal:

sudo apt-get install blender

En base al ejemplo base que se incluye en blender que es el diseño de un cubo empese a trabajar con el movimiento de el mismo.


El movimiento del cubo lo maneje en 50 frames en donde en el primer frame colocamos el cubo en una posicion en el eje X y en el frame 10 lo colocamos en una posicion menor a la del frame uno, esto da el efecto de que el cubo cae asi mismo para el movimiento en el eje Y solo colocamos el cubo en otro frame en una posicion diferente, al presionar play veremos el movimiento del cubo.

video
Este es un pequeño video de lo que estuve haciendo con el cubo, se pueden hacer otras cosas mas con blender como el giro de objetos y cambio de forma etc.

Referencia:

jueves, 20 de septiembre de 2012

Procesamiento de lenguaje natural


Esta semana se trabajo en lo que es comandos atraves de voz y texto junto con la entrada anterior la cual no pude terminar por lo que utilizare un juego de código libre para trabajar en esto.

Esta ves trabajare en windows y la librería que encontré es pyspeech para documentación puede revisar la siguiente liga :)

Documentación

Lo que yo trabajare sera agregar otras pelotas al juego el código es el siguiente:

import sys
sys.path.insert(0, "..")
import pilas
import speech
pilas.iniciar()


def eliminar_caja(caja, pelota):
 caja.eliminar()

def agregar(A):
 pelotas = pilas.actores.Pelota * 2
 A.append(pelotas)
 return

def main():
 pilas.actores.CursorMano()
 A= []
 var = speech.input ("Salir")
 if var == "Salir":
  agregar(A)
 caja = pilas.actores.Caja(x=200)
 caja.radio_de_colision = 1
 caja.aprender(pilas.habilidades.Arrastrable)
 caja.aprender(pilas.habilidades.PuedeExplotar)

 pelota = pilas.actores.Pelota(x=-200)
 pelota.radio_de_colision = 1
 pelota.aprender(pilas.habilidades.Arrastrable)

 pilas.mundo.colisiones.agregar(caja, pelota, eliminar_caja)

 pilas.ejecutar()

main()


pilas.actores.CursorMano()
 A= []
 var = speech.input ("Salir")
 if var == "Salir":
  agregar(A)

Aquí con la librería pyspeech se manda a llamar de nuevo a la función donde se crean las pelotas y se agrega una nueva.

En cuanto al trabajo grupal estuvimos usando el programa Tiled para el diseño del mapa, aun esta en proceso.

jueves, 6 de septiembre de 2012

Automated planning and scheduling

Planeacion Logica Adaptativa

Se refiere a la creacion de estrategias o secuencias de accion que por lo general son utilizados por agentes inteligentes, robots, etc..



Para esta tarea elegi el problema de como seleccionar la ropa adecuada para un dia soleado, o uno lluvioso, etc,



Para esto es necesario verificar las condiciones climaticas del dia, ya que si en dado caso de que haga mucho calor y se seleccione un par de prendas que sean muy calurosas (chaquetas, bufandas, etc) para el usuario sera muy molesto cargar con esto o estar muriendo de calor. Entonces lo ideal es buscar la mejor combinacion de la ropa que se desea llevar durante el dia.



Referencias:
http://en.wikipedia.org/wiki/Automated_planning_and_scheduling
http://es.wikipedia.org/wiki/Control_de_versiones



Y para el trabajo en equipo trabaje con algunos companieros para elaborar un diagrama de secuencia, para esto nos basamos en el codigo que elaboro el companiero Ever en python.

diagrama


miércoles, 29 de agosto de 2012

Pacman!

En esta entrada explicare como "funciona" el juego Pacman... para esto utilizare un diagrama de arbol. Antes de comenzar a explicar, pondre una pequenia definicion de lo que es el PACMAN.

Pacman es un videojuego que aparecio aproximadamente en los anios 80's, fue un videojuego muy exitoso, ya que combinaba un formato humoristico y poco violento,
pero.. en que consiste el pacman?

Pues bien el pacman, como se puede apreciar en la imagen de arriba es un circulo amarillo, este aparece en distintos laberintos y debe comer todos los puntos que en el aparecen, este es el objetivo, dejar el laberinto limpio, para poder subir de nivel y poder aparecer en un nuevo laberinto. Aunque aqui no termina el juego ya que,  en cada nivel aparecen 4 fantasmas que recorren todo el laberinto para intentar comerse al pacman.

Bien esto es solo una breve explicacion para aquellos que no conocen el juego, para mas informacion vallan aqui.

Ahora si esta es mi explicacion:




1.Para comenzar me ubicare con imagenes, en este caso al inicio del juego, se debe tomar la decicion de a  donde ir, como vamos comenzando no hay peligro de perder, y tenemos dos opciones de movimiento.

Asi sera como nos ubicariamos en el diagrama, teniendo un nodo padre que es el inicio y nos muestra las dos posibles respuestas del juego, que se pueden tomar, las ramificaciones de este arbol se iran formando conforme se valla avanzando al objetivo, en este caso, devorar cada bolita y huir, para no perder ninguna vida.



2. Suponiendo que tomamos  el camiono a la derecha, en este siguiente paso se nos vuelven a presentar nuevamente las mismas opciones y una adicional que nos permitira regresar:

en el juego se veria masomenos asi:

3. Luego de seleccionar la direccion siguiente, se debe ir verificando que sea una solucion y que no me lleve a perder una vida, en este caso si mi siguiente movimiento es hacia arriba y nos topamos con lo siguiente:
nuestro algoritmo debera buscar un movimiento que me de una solucion y me permita seguir jugando y no morirme.

obtendriamos algo asi, en este caso el movimiento marcado con amarillo seria el que nos indica que hacia alla no debemos ir e iriamos acotando el camino, y el nodo marcado con rojo es el que se decidio tomar y que de nueva cuenta nos permite realizar mas movimientos.

Para cada movimiento se van realizando mas ramificaciones, pero cada vez que se valla a tomar una decicion debe verificarse primero si a donde se dirige no me llevara a la muerte, y se lograra conseguir la victoria, de no ser asi, estas ramificaciones deberan irse acotando.



Por ultimo les dejo el Link del juego :P por si les apetece jugar un rato xD 




Trabajo Grupal

En cuanto al trabjo grupal de elaborar un diagrama en donde se muestran todos los modulos que se tomaran en cuenta para la elaboracion del videojuego, mi aportacion fue crear el modelo del diagrama ademas de aniadir uno de los modulos en los que trabajare junto con algunos companieros de la clase.

Aqui anexo el link al diagrama:

Diagrama

Y tambien el link de la wiki, en donde se encuentran los equipos de trabajo:

jueves, 23 de agosto de 2012

Temas Selectos de IA- 2 Semana

Para esta semana mostrare una idea que tengo de como quedarian organizadas las tareas de cada uno de los equipos de trabajo, que se elaboraron anteriormente y su relacion entre ellos..

Mi diagrama seria el siguiente:


Desde mi punto de vista, en lo que refiere a las caracteristicas de los personajes y el diseno visual van de la mano ya que, dependiendo de lo que se quiera ver seran las caracteristicas.

En cuanto a equipamento se refiere, dependera de las caracteristicas de los personajes, ya que habra que ver como se manejaran las armaduras que use determinado personaje y si estas iran cambiando conforme el nivel del juego valla avanzando.

Un ejemplo de donde me gustaria basarme para la elaboracion del equipamento es el juego league of legends, en donde te va sugiriendo las armas que puedes ir utilizando en el transcurso del juego.


Lo mismo es aplicable para la musica, ya que habra que definir si esta ira cambiando conforme al nivel o dependiendo si se utilizaran distintos escenarios..





miércoles, 15 de agosto de 2012

Crear un videojuego?


En esta entrada pondre algunas posibles herramientas que nos pueden servir para el diseño y creación de videojuegos.

Empece por investigar en que lenguaje era posible esto y algunos de ellos son:
  • Python 
  • C++
entre otros, a estos podemos añadirles algunas API's para darle algunas mejoras a estos juegos.

Existen tambien las siguientes herramientas:

Unity

Unity es un ambiente de desarrollo integrado (IDE) para la creación de juegos 3D, video y otros contenidos interactivos tales como visualizaciones arquitectónicas en tiempo real. Los juegos producidos por Unity se pueden ejecutar en gran variedad de consolas y sistemas operativos tales como Windows, Mac, Xbox 360, PlayStation 3, Wii, iPhone/iPad, Android, Chrome, Flash y próximamente Linux.
Se puede decir que Unity es un ambiente de desarrollo de juegos que destaca por soportar múltiples plataformas para ejecutar los juegos creados, así como por la facilidad de uso y productividad de su editor.

Cocos2D

Cocos2d es un framework open source para crear juegos 2D. La versión original de cocos2d fue programada en Python, pero existen diversos ports a otros lenguajes y plataformas.


Entre las ventajas de cocos2d destacan las siguientes:
  • Fácil de usar. Su API es sencillo e incluye una gran variedad de ejemplos. Provee abstracciones de alto nivel para las tareas mas comunes.
  • Rápido. Cocos2d utiliza las mejores prácticas de OpenGL ES y estructuras de datos optimizadas.
  • Es software libre. Cocos2d está bajo licencia MIT, una licencia muy flexible que permite utilizarlo tanto para hacer juegos de código abierto como cerrado. Además puedes extenderlo e integrarlo con bibliotecas de terceros.
  • Comunidad activa. La comunidad de cocos2d es grande y activa, en los foros típicamente puedes obtener respuestas rápidamente.
Cocos2d para iOS utiliza las herramientas y lenguajes de esta plataforma (Objective-C, XCode), lo cual puede ser una ventaja si ya estás familiarizado con ellos o una desventaja si no te son familiares. Otra desventaja de Cocos2d es que a diferencia de las herramientas comerciales como Unity o Unreal, no posee un editor gráfico para animaciones o escenas.




Ref:

jueves, 24 de mayo de 2012

Semana 16

Esta es la entrada final para la clase de distribuidos y paralelos. Para esta entrada pondré un poco de  lo aprendido en clase, y en algunas de las practicas que realice junto con algunos compañeros de clase.

Primero que nada que esperaba de esta materia?

Pues de esta materia al principio no sabia mucho y me preocupaba demasiado! ya que para mi sentia que era todo completamente nuevo, ya a mediados de curso empece a entender algunas cosas y a trabajar con algunos de mis compañeros lo cual fue de mucha ayuda para mi... ya que me orientaba mejor en lo que se buscaba originalmente con el curso.
Que se realizo durante el curso?

Durante el curso se realizaron diversas investigaciones sobre aplicaciones, lenguajes, cluster y algoritmos los cuales nos podían servir para desarrollar nuestro propio cluster, Ademas de hacer las investigaciones también se trabajo bajo algunos tutoriales para realizar la conexión entre varias maquinas.

Que se aprendió?

Pienso que en esta clase aprendí algunas cosas sobre redes ya que en algunas ocasiones trabaje con mis compañeros del equipo cluster donde algunas ocasiones logramos hacer la conexión entre algunas maquinas. Ademas de esto aprendí muchos conceptos básicos sobre sistemas distribuidos y sobre algunas de las necesidades requeridas para utilizar algunas de las apps sobre las que investigábamos.

Problemas! :O

Algunos problemas que se presentaron durante este curso, en mi opinión creo que nos falto un poco mas de coordinación sobre el proyecto final, ademas de eso la comunicación entre equipos creo que no fue la ideal para realizar este proyecto ya que se requieren de muchas maquinas, ideas, etc...

 Conclusión

Pues aprendí que como grupo aun nos falta trabajar mas la organización y la comunicación entre todos. Pero en particular a mi gustaría volver a trabajar así, ya que tomamos un poco mas de experiencia en el área de trabajo en equipo.

Por ultimo dejo la liga a la wiki en donde se encuentran todas las documentaciones realizadas por mis compañeros y yo durante todo el semestre.


Nominaciones:

  • Carmen
  • Rodolfo

miércoles, 16 de mayo de 2012

semana 15

Esta semana elabore una investigacion acerca de lo que es el paralelismo y algunas dependencias que suelen darse al ejecutar procesos en paralelo.
Aqui dejo el link de la wiki en donde se encuentra la informacion documentada.






Nominaciones:


  • Raul
  • Carmen
  • Rodolfo

Referencias:
www.infor.uva.es/~bastida/Arquitecturas%20Avanzadas/General.pdf
msdn.microsoft.com/es-es/library/ms188611(v=sql.105).aspx


Laboratorio:


Para esta semana en laboratorio encontre una noticia que habla de como china reclama tener el primer lugar en top 500 por su supercomputadora Tianhe-1A que es capaz de realizar más de 2.500 billones de cálculos por segundo.
La Tianhe-1A es poco común porque une a miles de procesadores Intel con miles de tarjetas gráficas hechas por Nvidia.
Para mas informacion sobre esto aqui anexo el link sobre esta noticia:


http://www.bbc.co.uk/mundo/noticias/2010/10/101028_china_supercomputadoras_top500_en.shtml

Imagenes






miércoles, 9 de mayo de 2012

Semana 14

En esta semana continue trabajando con lo que habia investigado la semana anterior sobre el Linux Virtual Server esta ves complemente la informacion que anteriormente tenia con una pequenia introduccion a un tutorial de como instalar LVS.


Lo documente en la wiki y el link es el siguiente:

Nominaciones:


  • Carmen
  • Rodolfo
  • Alex V.

Laboratorio:
Para el laboratorio encontre una noticia que habla sobre la elaboracion de un cluster de  alta velocidad el cual es utilizado para aplicaciones cientificas.
Este cluster esta elaborado por cuatro consolas de videojuegos conectadas entre si.
En México existen muy pocas personas que saben desarrollar este tipo de aplicaciones, porque no sólo se trata de conectar dispositivos, sino de desarrollar los sistemas adecuados para conformarlos.
Aqui dejo el link de la noticia para que la vean mas completamente.




http://journalmex.wordpress.com/2010/07/30/desarrollan-cluster-de-alta-velocidad-para-aplicaciones-cientificas/

jueves, 3 de mayo de 2012

Semana 13



Contribucion de la semana:

En esta semana investige acerca de lo que es el balanceo de carga en cluster. Creo alguno de mis companeros habia hablado sobre esto anteriormente, asi que lo complemente.
Aqui dejo el link a la 
Espero para las semanas siguientes tener algo mas concreto que ahora :) .



Nominaciones:
  • Rodo
  • Ave

Imagen :P



domingo, 29 de abril de 2012

Semana 12

Trabajando con Hamachi +SSH + Firewall



En esta semana trabajamos con Hamachi y SSH cosa que anteriormente se habia trabajado pero no se habia logrado la conectividad, ya que al realizar pruebas con los pings las computadoras no respondían. Al igual que la implementacion del firewall predefinido de ubuntu. Como anteriormente se habia trabajado con esto, ya se encuentra documentado, solo que esta vez nos dimos la tarea de unir las cosas y hacerlas funcionar. :) Para realizar esto trabaje con mis companeros Alejandro y Triana. :)

Lo primero que se realizo, fue instalar el hamachi en los diferentes computadoras a utilizar en este caso se instaló en la compu de triana, adriana y ave.

Posteriormente uno de nosotros creo una red donde todos se podran conectar remotamente sin necesidad de estar en una misma red.

De la siguiente manera:

hamachi create aveits y nos pide algun password se la damos y listo :D
Las demas computadores se conectarían de la siguiente manera:
hamachi join aveits y ponemos la contraseña y ya con esto estámos dentro de la red virtual que hamachi nos ofrece.



Posteriormente para probar que todo funciona, podemos hacer ping a cualquiera de los nodos y verificar que si nos manda alguna respuesta:


En esta imagen vemos como ya hay una conexion entre mi compu y la de Ave

Posterior a esto se realizó a generar los diferentes llaves para cada uno e los usuarios y copiarlos a las diferentes maquinas.

Luego se abrio el puerto 22 para que no hubiera ningun tipo de problema y para finalizar se vuelve a probar las ip con el ping.

Ya para finalizar se conectó remotamente a las diferentes maquinas con las ip que nos asigna hamachi y todo listo :D





Nominaciones:


Aqui dejo mi Entrada para Laboratorio :D  Busque informacion acerca del Centro Nacional de Supercomputo.

Semana 12 Laboratorio

Para esta entrada de laboratorio me puse a investigar acerca del Centro Nacional de Supercomputo que esta localizado en San Luis Potosi.


El Centro Nacional de Supercómputo se encuentra ubicado dentro las instalaciones del IPICyT ( Instituto Potosino de Investigación Científica y Tecnológica ) pero para que sepas mejor que es el supercómputo y que se hace con el, te dejamos este video.





Me parecio interesante buscar acerca de este lugar ya que anteriormente se habia hablado en clase de realizar una excursion a este lugar. :)


Otra cosa interesante fue que el año pasado  fue inaugurado el Segundo Congreso Internacional de Supercómputo con el fin de mostrar las tendencias tecnológicas y aplicaciones científicas, que sirvan de apoyo en la generación y puesta en marcha del conocimiento en diversas áreas. 





Referencias:

http://cns.ipicyt.edu.mx//index.php?option=com_content&task=blogsection&id=2&Itemid=58
http://www.gentepotosina.com/component/content/article/9-articulos/192-supercomputo-en-san-luis-potosi
http://www.globalmedia.mx/sanluis/ver_noticia.php?id=22801

martes, 17 de abril de 2012

Semana 11

En esta semana agrege mas informacion acerca de algunas Herramientas para el desarrollo de aplicaciones, y ya documente lo de la semana pasada




Laboratorio

Para el laboratorio encontre algunas noticias sobre una supercomputadora llamada Watson, en esta noticia hablan de como la supercomputadora puede ayudar a resolver enigmas de medicina. Me llamo la atencion y me puse a buscar un pokito mas sobre esta supercomputadora y lo que encontre fue que:
  1. Aparecio formalmente en el IBM innovate 2011.
  2. Que es capaz de entender el lenguaje hablado.
  3. Puede buscar a través de 200 millones de páginas de datos y dar respuestas precisas en apenas tres segundos.
En otra noticia hablan de como mostraron el funcionamiento de Watson, esto fue en un juego de Jeopardy.
"La mayoría de las respuestas de Watson eran precisas y el tiempo de reacción era mínimo, con lo que casi siempre tenía la oportunidad de contestar primero."

Referencias:

domingo, 15 de abril de 2012

Semana 10

Para esta semana investigue acerca de MPI ya que es lo que hemos estado utilizando para realizar el cluster, algo así breve es que :

" MPI no es un lenguaje de programación, es un conjunto de funciones y macros, Ofrece un API junto con especificaciones de sintaxis y semántica que explican como sus funcionalidades deben añadirse en cada implementacion que se realice."

Algunos fundamentos breves de mpi
"Con MPI el número de procesos requeridos se asigna antes de la ejecución del programa y no se crean procesos adicionales mientras este se esta ejecutando.
En MPI se define un comunicator como una colección de procesos, los cuales pueden enviar mensajes el uno al otro

Las llamadas de MPI se dividen en cuatro clases:

  1. Llamadas utilizadas para inicializar, administrar y finalizar comunicaciones.
  2. Llamadas utilizadas para transferir datos entre un par de procesos.
  3. Llamadas para transferir datos entre varios procesos.
  4. Llamadas utilizadas para crear tipos de datos definidos por el usuario. "
Encontré también que con MPI es posible desarrollar una aplicación para resolver Cadenas de Markov que por el uso de matrices a grandes dimensiones utilizan gran capacidad de procesamiento. Para la solución de esto, las operaciones mas utilizadas son:
  • Resolución de ecuaciones lineales
  • Potencia de matrices
En las siguientes referencias muestra mas a fondo como es utilizada la aplicación ademas de los resultados obtenidos.
Espero poder documentar en la wiki mas información sobre lo que es MPI y sus clases, ademas de otras herramientas para el desarrollo de aplicaciones.

Referencias :

http://clusterfie.epn.edu.ec/clusters/Publicaciones/HTML/articulo2.htm

http://www.mcs.anl.gov/research/projects/mpi/

http://ciecfie.epn.edu.ec/JIEE/historial/XIXJIEE/17Clusters.pdf


Laboratorio

En cuanto al laboratorio encontré un articulo de como utilizan las supercomputadoras para elaborar modelos de simulación de explosión con armas nucleares, esto es algo de lo que se menciona que se ha podido estudiar con estos modelos:

"Las pruebas con simulaciones realizadas a través de supercomputadoras han mostrado muchos errores, sobre todo respecto a la configuración balística del armamento, tema que, según el senador republicano por Arizona, Jon Kyl, “ha mostrado resultados buenos y malos. Los buenos son que conocimos detalles que nunca antes habíamos visto sobre estas armas, los malos muestran que estas armas poseen problemas realmente graves”."

Creo que con estas simulaciones se evitarían tantos desastres que han ocurrido durante pruebas en la vida real.

aqui el link del articulo:

http://www.popsci.com/technology/article/2011-11/advanced-supercomputer-models-supplant-nuclear-weapons-tests-are-they-accurate

semana 10 imagen


jueves, 5 de abril de 2012

Semana 9

En esta semana continue trabajando junto con mi compañero Rodolfo en la aplicacion Dr Queue, en el wiki documente como utilizar la aplicacion para renderizar un archivo al igual de como verificar que los nodos esten trabajando junto con la maquina central.



Nominaciones:

Semana 9 (Imagenes)



jueves, 29 de marzo de 2012

Semana 8

Esta semana trabaje con mi compañero Rodolfo investigando acerca de como funcionaba la aplicacion que encontro el compañero Roberto, investigando encontramos sobre DrQueue que es un complemento de Blender, hasta el momento solo documentamos lo que es y en que se ha utilizado ya que aun no logramos hacerla funcionar.
Seguiremos trabajando con esto durante la siguiente semana y en el wiki esta la informacion base de Drqueue: http://elisa.dyndns-web.com/progra/DrQueue

Arquitectura general del entorno de pruebas

Nominaciones de esta semana:





jueves, 22 de marzo de 2012

Semana 7

En esta semana se realizo una reunión a la cual, no pude asistir, pero que ya me puse al tanto con algunos compañeros de lo que se hablo en dicha reunión.

Tengo entendido que se elaboro una calendarizacion para organizar mejor los tiempos.
También se acordaron que todos utilizaran una distribución de Ubuntu 10.04 de 64 bits para un mejor rendimiento del cluster.
En la calendarizacion también añadieron las librerías y paquetes que hay que descargar para que todos trabajemos bajo lo mismo.


Calendarizacion:

domingo, 11 de marzo de 2012

Semana 6

En esta semana continue trabajando junto con mis copañeros en la realizacion de nuestro mini cluster para probar la aplicacion antes mencionada, ya habiamos comentado que la semana anterior tuvimos algunos problemas en cuanto a lo del cluster.


Al intentar poner algunos comandos yo tuve problemas ya que mi laptop, por alguna extraña razon tenia ubuntu en español y al cambiarlo me genero varios problemas.


Esperamos que para la proxima semana poder mostrar la aplicacion para la cual estamos realizando esto, y que ya no nos salgan errores :$.


jueves, 1 de marzo de 2012

Semana 5

En esta semana, trabajé en equipo con mis compañeros: Blanca y Rodolfo, intentando elaborar un mini cluster para probar algunas de las aplicaciones que encontramos anteriormente, las cuales ya estan documentadas en la wiki, estas son las aplicaciones POP y el modelo MM5.

Decidimos hacer esto del mini cluster para probar mas facilmente las aplicaciones, pero tuvimos complicaciones, ya que batallamos con algunos permisos.



Añadi los links de los blogs de los compañeros en el nombre de cada uno.

Estas son las referencias del cluster:
Referencia 1
Referencia 2