ROSSUM 2011 June 27-28, 2011 Xalapa, Ver., Mexico Pushing Boxes in a Mobile Robot Simulator Uriel H. Hernandez-Belmonte, Victor Ayala-Ramirez and Raul E. Sanchez-Yanez Universidad de Guanajuato DICIS Carr. Salamanca-Valle Km. 3.5+1.8, Palo Blanco 36700 Salamanca, Mexico [email protected], {ayalav, sanchezy}@ugto.mx Abstract The plan of actions needed to solve the Sokoban problem results of the search in a tree of configurations. Each configuration is composition of all the elements in the Sokoban board. The tree is built dynamically by analyzing the possible actions that could modify the current configuration. Heuristic rules determine how to prune branches of the tree that are not part of feasible solutions. To perform this efficiently, we consider mainly deadlock situations and box liberties. the search procedure is based on the A* algorithm. The possible actions used to change the state of the board are navigation and push task. When a solution is found, the plan is executed by making use of path planning, motion and interaction capabilities. The solution is then decomposed into robotic tasks that can be executed by the robot. As a first step towards the real implementation. we use a game engine-based robot simulation to perform a simulation of the execution of the actions the solve the Sokoban board presented as input. This demo proposal presents the implementation of a solution of the problem of pushing boxes in a mobile robot simulator. We solve several boards of the Sokoban game, consisting in pushing boxes in a scenario, from a start configuration to a goal configuration. The game finishes when all boxes are in one the goal positions. The player has some constraints in his actuation capabilities because it can push the boxes but it is not possible to pull them. The restrictions on the actuation capabilities makes the Sokoban game difficult to solve. Our approach to the solution for this problem was implemented in a mobile robot simulator built using a video game engine. The reasons to use a game engine are: to take advantage of its built-in capabilities, like its image rendering and physics engines and to design and test new robot architectures. To validate this work, we will present several examples of the real time solution of the Sokoban game using the developed software system. 1. Sokoban game Solving complex task autonomously is one of the main problems addressed by mobile robotics. Complex task are those tasks where the robot exhibits different capabilities for sensing, decision making and actuation. We consider the Sokoban problem because a real implementation will need the interaction of the robot with several elements in its environment. Firstly, if will need to build a plan composed of primitive actions: navigate and push to arrive to solve the proposed board. Secondly these primitives themselves will be composed of more basic capabilities like path planning and closed-loop execution control and robot-object interaction task. In fact, the Sokoban problem is known to be NP-hard. Figure 1 presents a typical Sokoban board each of the three boxes in the scenario have to be pushed to a goal position. Even if at some step of the solution process a box occupies a goal position, we can not consider that arrangement as being a partial solution of the problem. What is important is to achieve the goal configuration for all the boxes simultaneously. The limitation of the actuation capabilities of agent makes more difficult the Sokoban problem. Figure 1. A typical Sokoban board. 2. Robot Simulation Platform Even if there exist several available platforms to simulate mobile robots (ARIA, Mission Lab, Miro, among many others.), we have used a custom-developed mobile robot simulator that uses a game development engine at its base [1]. The rationale of this choice is the availability of physics engines that model physical interactions between objects. That is a essential 86 ROSSUM 2011 June 27-28, 2011 Xalapa, Ver., Mexico Figure 2. Snapshot of the operation of the implemented system. need in the Sokoban problem. We have taken the main requirements specified by Kramer et al. to develop our mobile robot simulation platform. That includes as main elements: the target platforms. In our case, we have used as target platform the Pioneer P2AT robot, available at our laboratory. We have implemented sensing capabilities (laser, sonar, contact, vision, odometry ) and actuation capabilities ( differential drive kinematics) for the simulated robot in our experiments. References [1] J. Faust, C. Simon, and W.D. Smart. A video game-based mobile robot simulation environment. In IEEE/RSJ International Conference on Intelligent Robots and Systems, pages 3749 –3754, 2006. [2] James Kramer and Matthias Scheutz. Development environments for autonomous mobile robots: A survey. Autonomous Robots, 22:101–132, 2007. 3. Results We show a snapshot of the developed software in Figure 2, where the robot is solving an instance of the Sokoban problem. We can note the delimiting walls having a wood like texture. We can observe also the robot and two floating windows that let us to inspect the state information the robot has about itself, and the actual robot state as known by the simulation platform. We will present the solution of several Sokoban boards in real time at the demo show. Acknowledgements Uriel H. Hernandez-Belmonte thanks the funding of its work by Consejo Nacional de Ciencia y Tecnologı́a (CONACYT) through the Grant No. 329356/229784. 87
© Copyright 2026 Paperzz