tutugordillo / SIDEMA

Project that simulates a set of distributed and intelligent robots that cooperate to find and desactivate mines
0 stars 1 forks source link

Distribuir terreno y explorarlo #5

Closed huig- closed 8 years ago

huig- commented 8 years ago

He pensado en utilizar el algoritmo que os comente sobre marcar con 1s o 0s las celdas y que se muevan de forma autónoma a posiciones poco exploradas, de forma que lo hagan los robots y el centro de control solo les pase el mapa entero. La cuestión es ese mapa con 1s y 0s, es un recurso o puede ir dentro de los robots?

huig- commented 8 years ago

Distribuir terreno debería enviar el mapa completo a cada uno de los exploradores, los exploradores usarán el algoritmo Brick&Mortars que aparece comentado en la documentación para explorar el terreno dinámicamente, de esta forma se podrá afrontar con facilidad los siguientes casos futuros:

Como inconveniente el número de comunicaciones entre los agentes y el centro de control aumentaría mucho, puesto que cada vez que se mueva el agente tiene que informar al centro de control y este tras actualizar su representación hacer un broadcast a todos los agentes.

EDIT: http://www.cs.ox.ac.uk/niki.trigoni/papers/ICRA2007.pdf es la referencia de Brick&Mortars

huig- commented 8 years ago

Resulta que el algoritmo Brick&Mortars podía no funcionar bien en algunos casos por lo que al final vamos a utilizar el que viene en Coordination for Multi-Robot Exploration and Mapping.

Se basa en que cada robot debe calcular el coste en llegar a cada una de las celdas no exploradas a las que puede acceder, y también la ganancia de información que supone llegar a dicha celda (el número de celdas inexploradas que haya a su alrededor). Enviará al CC una lista con cada una de dichas celdas y el valor de dicha celda (ganancia-coste). El CC elegirá mediante un algoritmo voraz la distribución de tareas, y cada vez que asigne una tarea descontará valor de otras puesto que si un robot explora una celda otra celda cercana puede perder valor.

Cada vez que el mapa se actualize con nueva información, el robot deberá mandar dicha lista al CC.

huig- commented 8 years ago

Ya está hecho:

Queda por hacer:

huig- commented 8 years ago

Hecho