Skip to content

BE2R-Lab-RND-AI-Grasping/cem_mpc_expert

Repository files navigation

iCEM MPC Expert

Introduction A framework for robotic grasping using iterative Cross-Entropy Method (iCEM) with Model Predictive Control (MPC). Uses DexGraspNet hand positions for generate optimal approach trajectory.

Visualizations

Approach trajectory and grasp pose matching:

Approach Trajectory

Features

  • Implementation of iCEM algorithm for robotic control
  • MPC-based grasp planning and execution
  • Support for multiple object types (bottles, bowls, mugs, etc.)
  • Integration with DexGraspNet dataset
  • Physics-based simulation environment compatible with RL

Project Structure

.
├── app/                     # Example applications
├── icem_mpc/               # Core implementation
├── mjcf/                   # MuJoCo model files
├── final_positions/        # Pre-computed grasp positions
└── typings/                # Type definitions

Installation

  1. Create environment using conda:
conda env create -f environment.yml
  1. Install the package:
pip install -e .

Usage

Check the example scripts in app/ folder:

  • example_icem_mpc.py - Basic iCEM-MPC implementation
  • example_env.py - Environment setup example
  • show_start_poses.py - Visualization of initial poses

Reward

The reward function in reach_pose_env.py encourages the robot hand to minimize the distance between key points on hand and the target grasp pose. A higher reward is given for precise alignment and successful approach, while penalties are applied for bumping an object.

Grasp Pose Matching

Thanks

DexGraspNet -- for good postions

pytorch_icem -- for fast and simple implemnatation iCEM

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages