Skip to content

[ICLR 2025] CL-DiffPhyCon achieves closed-loop diffusion control of physical systems with significant speedup of sampling efficiency

Notifications You must be signed in to change notification settings

AI4Science-WestlakeU/CL_DiffPhyCon

Repository files navigation

CL-DiffPhyCon: Closed-loop Diffusion Control of Complex Physical Systems (ICLR 2025)

Paper | arXiv

Official repo for the paper CL-DiffPhyCon: Closed-loop Diffusion Control of Complex Physical Systems.
Long Wei*, Haodong Feng*, Yuchen Yang, Ruiqi Feng, Peiyan Hu, Xiang Zheng, Tao Zhang, Dixia Fan, Tailin Wu†
ICLR 2025.

We propose a diffusion method with an asynchronous denoising schedule for physical systems control tasks. It achieves closed-loop control with a significant speedup of sampling efficiency. Specifically, it has the following features:

  • Efficient Sampling: CL-DiffPhyCon significantly reduces the computational cost during the sampling process through an asynchronous denoising framework. Compared with existing diffusion-based control methods, CL-DiffPhyCon can generate high-quality control signals in a much shorter time.

  • Closed-loop Control: CL-DiffPhyCon enables closed-loop control, adjusting strategies according to real-time environmental feedback. It outperforms open-loop diffusion-based planning methods in control effectiveness.

  • Accelerated Sampling: CL-DiffPhyCon can integrate with acceleration techniques such as DDIM. It further enhances control efficiency while keeping the control effect stable.

Framework of CL-DiffPhyCon:

This is a follow-up work of our previous DiffPhyCon (NeurIPS 2024): Paper | Code.

Installation

Run the following commands to install dependencies. In particular, the Python version must be 3.8 when running the 2D smoke control task, as the Phiflow software requires.

conda env create -f environment.yml
conda activate base

Dataset and checkpoints

Dataset

The training and testing datasets and checkpoints of our CL-DiffPhyCon on both tasks (1D Burgers control and 2D smoke control) can be downloaded in link. To run the following training and inference scripts locally, replace the path names in the following scripts with your local paths.

Training:

1D Burgers' Equation Control:

In the scripts_1d/ folder, run the following two scripts to train the synchronous and asynchronous diffusion models, respectively:

bash train_syn.sh
bash train_asyn.sh

2D Smoke Control:

In the scripts_2d/ folder, modify the configs in the file default_config.yaml and the argument "main_process_port" and "gpu_ids" according to your local GPU environments to run accelerate properly. Then, run the following two scripts to train the two diffusion models, respectively:

bash train_syn.sh
bash train_asyn.sh

Inference:

1D Burgers' Equation Control:

In the scripts_1d/ folder, run the following script for closed-loop diffusion control:

bash inf_asyn.sh

2D Smoke Control:

CL-DiffPhyCon

In the scripts_2d/ folder, run the following script for closed-loop diffusion control:

bash inf_asyn.sh

Then in the inference/ folder, run evaluate_2d.py to evaluate the inference results (also modify the data path variable "root" first)

python evaluate_2d.py

Citation

If you find our work and/or our code useful, please cite us via:

@inproceedings{
wei2025cldiffphycon,
title={{CL}-DiffPhyCon: Closed-loop Diffusion Control of Complex Physical Systems},
author={Long Wei and Haodong Feng and Yuchen Yang and Ruiqi Feng and Peiyan Hu and Xiang Zheng and Tao Zhang and Dixia Fan and Tailin Wu},
booktitle={The Thirteenth International Conference on Learning Representations},
year={2025},
url={https://openreview.net/forum?id=PiHGrTTnvb}
}

About

[ICLR 2025] CL-DiffPhyCon achieves closed-loop diffusion control of physical systems with significant speedup of sampling efficiency

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •