Skip to content

Quick Start

This guide provides the minimum steps to configure GenManip and run a demonstration benchmark evaluation using a simulated communication channel.

Step 1: Configure Your Environment

Ensure the assets and layouts directories exist. Your directory structure might resemble this:

  • DirectoryGenManip-Sim/ # Your cloned repository
    • Directoryassets/
      • Directoryconfigs/
        • default.json # The file you edited
    • Directorygenmanip_assets/
      • DirectoryGenManipBench_final/
        • 000.usd
        • 000.usda
      • Directorytextures/
      • Directoryhdrs/
      • base.usd
      • base.usda
    • Directorysaved/
      • Directorylayouts/
        • DirectoryGenManipBench_final/
          • Directory000/

Step 2: Evaluate a Random Policy in a Demo Scene (using fake_port)

To test the benchmark pipeline, we can run the evaluation script (eval_V3.py) connected to a fake_port. The fake_port simulates a policy model by simply receiving environment data and sending back dummy actions via socket communication. This verifies the simulation environment and the communication protocol.

  1. Start the fake_port server. Open a terminal, navigate to the GenManip-Sim directory, and run:

    • -r 10000: Specifies the port fake_port will receive data on.
    • -s 10001: Specifies the port fake_port will send data on.
    Terminal 1
    conda activate genmanip
    cd /path/to/your/GenManip-Sim
    python standalone_tools/fake_port.py -r 10000 -s 10001

    Keep this terminal running.

  2. Run the benchmark evaluation script (eval_V3.py). Open a second terminal, activate the environment, and run the evaluation script.

    • -cfg configs/tasks/genmanipbench.yml: Specifies the benchmark configuration.
    • -r 10001: Specifies the port eval_V3.py will receive actions on (must match fake_port’s send port).
    • -s 10000: Specifies the port eval_V3.py will send environment data on (must match fake_port’s receive port).
    Terminal 2
    conda activate genmanip
    cd /path/to/your/GenManip-Sim
    python eval_V3.py -cfg configs/tasks/genmanipbench_demo.yml -r 10001 -s 10000

You should see Isaac Sim launch and the robot attempt tasks based on the random actions provided by fake_port. Log files and potentially videos will be saved to saved/videos.

This confirms the basic simulation and communication setup is working. You can now explore running actual baseline models or developing your own.