In this work, we introduce MO-SeGMan, a Multi-Objective Sequential and Guided Manipulation planner for highly constrained rearrangement problems. MO-SeGMan generates object placement sequences that minimize both replanning per object and robot travel distance while preserving critical dependency structures with a lazy evaluation method. To address highly cluttered, non-monotone scenarios, we propose a Selective Guided Forward Search (SGFS) that efficiently relocates only critical obstacles and to feasible relocation points. Furthermore, we adopt a refinement method for adaptive subgoal selection to eliminate unnecessary pick-and-place actions, thereby improving overall solution quality. Extensive evaluations on nine benchmark rearrangement tasks demonstrate that MO-SeGMan generates feasible motion plans in all cases, consistently achieving faster solution times and superior solution quality compared to the baselines. These results highlight the robustness and scalability of the proposed framework for complex rearrangement planning problems. Supplementary videos and code are available at: https://sites.google.com/view/mo-segman/
Ensure you are using Ubuntu 20.04 with Python 3.8.10 or later.
-
Update and install dependencies Open a terminal and run:
sudo apt update && sudo apt install -y python3 python3-pip python3-venv -
Verify Python version Ensure you are using Python 3.8.10 or later:
python3 --version
If you need to install Python 3.8.10, you can do so with:
sudo apt install -y python3.8
-
Create a virtual environment (Optional but recommended)
python3 -m venv segman source segman/bin/activate -
Install dependencies
pip install -r requirements.txt
Navigate to the folder:
cd testThen, execute the run.py file and follow the instructions:
python3 run.py
![]() O-Room |
![]() 4 Block |
![]() Slot |
![]() MO-Slot |
![]() MO-Order |
![]() MO-3-Block |
![]() MO-Puzzle |
![]() MO-2-Block |
![]() MO-4-Block |
![]() MO-8-Block |
![]() MO-12-Block |
![]() MO-16-Block |
![]() MO-20-Block |
![]() MO-ICRA |













