INS Sant Feliu - 2017

MAX MARTÍNEZ RUTS Tutor: Xavi Río NúñezINTEL·LIGÈNCIA ARTIFICIAL APLICADA AL CUB DE RUBIK

El meu treball de recerca és la programació d’un robot capaç de resoldre un cub de Rubik.

Per resoldre el cub, el que fa el robot és llegir-lo amb un sensor de color, peça per peça. Un cop ha llegit tot el cub, es construeix una matriu d’informació on es guarden totes les dades, que inclouen la posició de cada peça. I aquesta matriu és la que aprofita el robot per resoldre el cub. El que fa el robot és resoldre’l aplicant la intel·ligència artificial, és a dir, una simulació de la nostra pròpia intel·ligència. El software soluciona el cub de la mateixa manera que ho faria un humà; trobant patrons sobre la distribució dels colors. I és aquest el procés dificultós, perquè per a que un robot pugui simular una intel·ligència, se li ha d’especificar qualsevol instrucció.

A part de la programació del robot, el treball també inclou la creació d’un model 3D idèntic al robot, que ha servit per fer una animació del seu funcionament i per incloure’n imatges al treball. També inclou una simulació del moviment dels motors que he aconseguit amb el GeoGebra, fent ús de la geometria, i també he programat un sistema que reconeix els gestos que fa un humà a partir de dos sensors de distància. Depenent de cada gest el robot efectua un moviment o un altre, la qual cosa fa que es pugui resoldre el cub sense tocar-lo.

Programming a robot capable of solving a Rubik’s cube is my research project.

In order to solve the cube, the robot reads it with a colour sensor, piece by piece, until it has a matrix of data where it saves the position of each piece in the cub. All the information of the cube is kept there and it is what the robot uses to solve it. He does so using artificial intelligence, that is a simulation of our own intelligence. The software solves the cube the same way a human would do it, searching patterns in the distribution of colours. This is the hardest part, since in order to simulate an intelligence, it is required to specify any instruction or order.

Furthermore, my research project includes the creation of a 3D model identical to the robot, that has been used to make animated images to be included in my presentation . I have also designed a simulation of the movement of the motors with the mathematical program “GeoGebra”, using Geometry. Moreover, I have programmed a system that recognizes the gestures of a human hand, using two distance sensors combined. The robot is able to read the gestures and depending on them he does one movement or another so that he can solve a Rubik’s cube even without touching it.

1 Sant Feliu Max Martinez Cub Rubik.ppt