sábado, 9 de mayo de 2009

Galería de imágenes de Robots

Navegando por internet me encontre con una página interesante la cual les quiero compartir, en dicha página se encuentra una galería de imagenes de robots, algunos muy padres y hasta dificil de creer...

miércoles, 6 de mayo de 2009

Músculos artificiales

Alguna vez se imaginaron a un robot con músculos artificiales, si!! básicamente es un robot, el cual cuenta con músculos artificiales gracias al aire comprimido que utiliza este.

Aquí les dejo el link en donde pueden ver más información e incluso hasta un video del funcionamiento de este grandioso robot... 


martes, 28 de abril de 2009

Ogre, el Tanque de Lego.... :S

Que tal... alguna vez se imaginaron un robot de tanque de guerra con todo y camara, y que una vez que localiza su objetivo dispara cientos de balas??... Bueno, pues aquí les traígo un video sensacional, en donde se puede observar a detalle este robot en forma de tanque, y claro, hace falta mencionar que pertenece a la familia de Lego NXT. 

Como lo ven.....


lunes, 20 de abril de 2009

Planificación

La planificación es otra forma de representar Estados, Acciones y Objetivos.

  • Los estados y objetivos se describen con un conjunto de formulas lógicas.
  • Las acciones se describen con formulas lógicas en términos de sus precondiciones y sus efectos.
A continuación les mostraré un pequeño problema que será resuelto mediante Planificación. El problema se basa en "El mundo de Shakey".


Descripción de los estados:

  • Box(X) : Dice que X es una caja
  • Switch(X): X es un switch
  • Room(X) : X es un cuarto
  • Shakey -> Constante
  • On(X) : el switch X esta prendido
  • Off(X) : el switch X esta apagado
  • At(X,Y) : X es una caja o shakey, Y es un cuarto.
  • OnTop(X,Y) : X es una caja o shakey, Y es otra caja
  • Free(X) : X es una caja o shakey
: X esta libre si -> no tiene nada encima,
no esta cargando nada
no esta subido en nada

Estado Inicial:

- Box(Caja 1), Box(Caja 2), Box(Caja 3), Box(Caja 4).
- Switch(Apagador 1), Switch(Apagador 2), Switch(Apagador 3), Switch(Apagador 4).
- Room(Cuarto 1), Room(Cuarto 2), Room(Cuarto 3), Room(Cuarto 4), Room(Pasillo).
- At(Caja 1, Cuarto 1), At(Caja 2, Cuarto 1), At(Caja 3, Cuarto 1), At(Caja 4, Cuarto 1).
- Off(Apagador 1), Off(Apagador 2), Off(Apagador 3), Off(Apagador 4).
- At(Shakey, Cuarto 3).
- Free(Shakey).

Las actividades que se deben de hacer:
  • moverse de un cuarto a otro.
  • tomar y dejar cajas.
  • apilar cajas.
  • subirse y bajarse de las cajas.
  • apagar y encender la luz.
Ahora tenemos que transformar las actividades en términos de Descripción, Precondicion y efectos (lo que sera cierto y lo que sera falso).

Acciones
{descripción, precondiciones,
{lo que será cierto}
{lo que será falso}}

{Salir (Y)
precond{ room(Y), & At(Shakey,Y)}
effect {V{At(Shakey,Pasillo)}
F{at(Shakey,Y)}}

{Entrar (Y)
precond{ At(Shakey,Pasillo) & Room(Y) }
effect {V{At(hakey,Z)}
f{At(Shakey,Pasillo)}}

{Subirse (Y)
precond{ Box(Y) & At(Y,Z) & At(shakey,Z) & Free(Y) & Room(Z) & Free(Shakey)}
efect {v{OnTop(Shakey,Y)}
f{Free(Y) & Free(Shakey)}}

lunes, 13 de abril de 2009

Agentes y Ambientes

A continuación les traígo diferentes tipos de agentes que existen, los que vamos a tratar hoy son básicamente dos:
  • Agentes Reflexivos.
  • Agentes Deliberativos.
Cabe mencionar, que gracias a estos tipos de agentes, se pueden resolver ciertos problemas, pero lo importante es saber que problemas se pueden resolver con ellos.

Antes que nada, voy a dar una breve definición de lo que son estos tipos de Agentes.

Agentes Reflexivos: Reaccionan de acuerdo a una condición y acción.


Agentes Deliberativos: Se hace algún tipo de razonamiento para lograr su objetivo.


Serie de problemas que se resolverian con algun tipo de agente mencionado anteriormente.

1.- Agente Deliberativo:
  • Salir de un laberinto.
  • Explorar habitaciones y reconocer los objetos encontrados dentro de éstas.
  • Jugar ajedrez.
  • Jugar dominó (en parejas).
  • Cuidar a una persona mayor en su casa.
  • Asistir a un ejecutivo en el manejo de su agenda.
  • Asistir a un ejecutivo en la preparación de sus viajes de negocios.
Estos tipos de problemas requieren de un agente Deliberativo, ya que se necesita un mayor razonamiento para lograr sus objetivos.

2.- Agente Deliberativo y Reflexivo:
  • Controlar el tráfico de aviones en el aeropuerto.
  • Monitorear el tráfico de automóviles en la ciudad de Guadalajara.
  • Monitorear las condiciones del bosque de la primavera para evitar y/o responder ante incendios forestales.
En estos tipos de problemas se necesita un agente Deliberativo y Reflexivo, ya que se necesita de un razonamiento para poder lograr su objetivo, pero también se requiere actuar conforme a una condición y acción para tomar un decisión en dado caso que se requiera.

miércoles, 1 de abril de 2009

Programando los Legos NXT.....

Que tal, ahora les traígo unas simples tareas hechas por el robot "Wall-e".....

Al estar analizando la manera en la que debíamos de programar el robot para que realizara estas tarea nos dimos cuenta de si se necesitaba un mayor razonamiento.

Seguir una Línea negra:


Objetivo:

Programar el robot para que utilizando el sensor luz pueda encontrar y seguir una trayectoria marcada con una línea negra pintada sobre una superficie plana. La trayectoria puede ser recta, con giros en varios ángulos, zig-zag, etc.


A continuación se muestra un pseudo-código sobre esta tarea.

video:




Ubicar y encontrar una fuente de sonido:

Objetivo:

Programa el robot para que utilizando el sensor de sonido (micrófono) pueda ubicar y llegar hasta una fuente de sonido que si bien está fija, funcione de manera episódica. La fuente de sonido puede encontrarse en cualquier dirección con respecto de la dirección inicial del robot y dentro de un área de 15 m2.


A continuación se muestra un pseudo-código sobre esta tarea.


video:





Rodear un objeto:

Objetivo:

Programar el robot para que utilizando el sensor de toque pueda encontrar y rodear un objeto siguiendo su contorno. El objeto puede tener cualquier forma (rectangular como una caja o cilíndrica como un bote), el objeto será suficientemente pesado como para que el robot no lo mueva, dentro de límites razonables. El objeto podrá estar en cualquier posición con respecto del robot dentro de un área de 15 m2.


A continuación se muestra un pseudo-código sobre esta tarea.

video:



Salir de laberinto:

Objetivo:

Programar el robot para que utilizando el sensor ultrasónico pueda localizar obstáculos y girar para evitarlos. El robot también se debe programar para que utilizando estas habilidades (localizar obstáculos y girar) pueda salir de un laberinto de ángulos rectos.


A continuación se muestra un pseudo-código sobre esta tarea.



video:




Para bajar los códigos.

lunes, 9 de febrero de 2009

Redes Semánticas, Frames y Gráfos...

¿Qué es la Red Semántica?
  • Es una representación gráfica del conocimiento en la que existe una jerarquía de Nodos.
  • Es un conjunto de Nodos y Arcos.
Definición de un Nodo.

Un Nodo es identificado por un objeto. Nodo = Objeto.
Donde un objeto puede ser representado por:

  1. Personas.
  2. Animales.
  3. Eventos.
  4. Acciones.
  5. Conceptos.
  6. Atributos o características que identifican a un objeto.

¿Qué es un Frame?
  • Colección de atributos que describen a una clase o a una entidad miembro de esa clase del mundo real. Los Frames son usados para representar de manera estructurada el estereotipo de una situación.
  • Son una estructura del conocimiento que describen un objeto específico y contiene múltiples ranuras o slots, las cuales contienen hechos, características o especificaciones acerca del objeto.


Grafos de Búsqueda

                Muchos problemas pueden ser planteados como problemas de búsqueda en grafo, en un problema de búsqueda interesa encontrar como es posible llegar desde un Nodo fuente s, hasta un Nodo destino que cumpla con una propiedad P.

Existen varios métodos de búsqueda:

Búsqueda en Anchura (BFS): Es un algoritmo para recorrer o buscar elementos en un grafo, Se comienza en cualquier vértice y en cada paso se avanza a un nuevo vértice adyacente siempre que se pueda. Cuando todos los adyacentes a X hayan sido visitados, se retrocede al vértice desde el que se alcanzó X y se prosigue. Así se consigue visitar todos los vértices de la componente conexa en que se encuentre el vértice inicial.

Esta técnica se utiliza cuando necesitamos encontrar respuesta a un problema sobre un grafo sin condiciones de optimización.

Búsqueda en Profundidad (DFS): A diferencia con la BFS ahora se visitan todos los vecinos de un vértice antes de pasar al siguiente. Por tanto no hay necesidad de retroceder. Una vez etiquetados todos los vecinos de un vértice X, se continúa con el primer vértice alcanzado después de X en la búsqueda.

Esta técnica se utiliza para resolver problemas en los que se pide hallar una solución óptima entre varias.