PaperReview

Planning with Diffusion for Flexible Behavior Synthesis

Black940514 2026. 1. 12. 19:15

Planning with Diffusion for Flexible Behavior Synthesis

저자: Michael Janner
발행년도: 2022년
https://arxiv.org/abs/2205.09991


Diffusion으로 “계획”을 다시 짠 이유: 유연한 행동 합성을 위한 Planning with Diffusion 리뷰

1. 문제 정의 (Problem Definition)

로봇이나 에이전트가 해야 하는 일은 보통 “다음 행동을 맞히기”가 아니었다. 목표를 달성하면서도 상황에 맞게 행동을 바꾸는 유연한 계획(planning)이 핵심이었다. 이 논문은 그 계획을 기존의 최적화나 정책 대신, 확률적 생성 모델로 풀려고 했다.

현실 환경에서는 정답 궤적이 하나가 아니었다. 같은 목표라도 장애물, 마찰, 센서 노이즈에 따라 경로가 달라졌다. 데이터도 깔끔한 전문가 시연만 있지 않았다. 섞여 있는 성공/실패, 도메인 편차가 항상 존재했다.

기존의 행동 모델은 종종 “평균적인” 해를 내놓았다. 멀티모달한 행동 분포를 한 점으로 누르는 순간, 실제로는 존재하지 않는 어정쩡한 경로가 나왔다. 그래서 이 논문은 다양한 가능한 미래를 샘플링하면서도 목표 조건을 만족시키는 구조가 필요하다고 봤다.

결국 문제는 “조건을 만족하는 다중 해(trajectories)를 안정적으로 생성하고, 그중 실행 가능한 해를 고르는 계획”이었다.


2. 기존 방법의 한계 (Motivation)

가장 흔한 접근은 모델프리 RL 정책이었다. 관측을 넣으면 행동이 바로 나왔다. 하지만 목표가 바뀌거나 제약이 추가되면 다시 학습해야 했다. 데이터 효율도 낮아서 실무에서는 튜닝 비용이 컸다.

다른 축은 모델기반 계획이었다. 동역학 모델을 학습하고, MPC처럼 최적화를 돌렸다. 이 방식은 제약을 넣기 좋았지만, 최적화가 불안정하거나 지역해에 갇혔다. 특히 고차원 상태나 긴 호라이즌에서 계산량이 급격히 커졌다.

마지막으로 행동 클로닝과 시퀀스 모델이 있었다. 트랜스포머나 RNN으로 궤적을 예측했다. 하지만 손실이 MSE류로 고정되면 멀티모달 분포에서 평균을 내기 쉬웠다. “가장 그럴듯한 하나”가 아니라 “가능한 여러 개”를 다루기 어려웠다.

이 논문은 여기서 한 걸음 더 갔다. 최적화 기반 계획의 장점인 “조건 만족”과, 생성 모델의 장점인 “다양한 샘플”을 같이 가져오려 했다.


3. 제안 방법의 핵심 아이디어 (Key Idea)

저자들은 “계획을 궤적 생성 문제로 바꾸고, 그 생성기를 diffusion으로 학습했다”는 메시지를 제시했다. 행동을 한 스텝씩 찍는 정책이 아니라, 미래의 상태-행동 시퀀스 전체를 한 번에 다루는 관점이었다.

직관적으로는 이런 비유가 맞았다. 지도에서 경로를 찾을 때, 한 발씩만 결정하면 막다른 길에서 흔들렸다. 반대로 여러 후보 경로를 동시에 그려두면, 조건을 만족하는 경로를 고르기 쉬웠다. diffusion은 그 “후보 경로 묶음”을 잘 뽑는 도구로 쓰였다.

기존 대비 차별점은 명확했다.

  • 정책: obs -> action으로 즉시 결정했다.
  • diffusion planning: condition -> trajectory samples로 후보를 생성했다.

즉시 반응이 아니라, 샘플 기반 계획으로 유연성을 확보했다.


4. 아키텍처 설명 (Architecture)

전체 파이프라인은 “궤적 생성기 + 조건(목표/관측) + 선택(평가)” 흐름을 탔다. 중심은 궤적을 복원하는 diffusion 모델이었다. 학습 때는 데이터 궤적에 노이즈를 점점 섞고, 그 노이즈를 제거하는 네트워크를 학습했다.

입력은 대개 다음 요소로 구성됐다. 현재 관측(또는 상태)과 목표 조건이 들어갔다. 출력은 미래 H 스텝의 상태/행동 시퀀스였다. 여기서 중요한 점은 “행동만”이 아니라 “궤적 전체”를 직접 생성했다는 점이었다.

샘플링 시에는 초기에는 랜덤 노이즈 궤적에서 시작했다. 그 다음 반복적으로 denoise를 하며 현실적인 궤적으로 바꿨다. 목표 조건은 denoise 과정에 계속 주입되어, 생성 과정 자체가 조건을 만족하도록 유도했다.

간단한 pseudo-code는 이런 형태였다:

# condition: 현재 관측/상태, 목표, 제약 등
# model: diffusion denoiser (predict noise or x0)

x = randn(T, traj_dim)          # 초기 노이즈 궤적
for t in reversed(range(K)):    # diffusion steps
    eps = model(x, t, condition)
    x = denoise_step(x, eps, t) # DDPM/DDIM류 업데이트
traj_samples = x

# 실행은 보통 첫 액션만 적용하고, 다음 스텝에 다시 계획했다(MPC 스타일)
action = traj_samples[0].action

이 구조가 문제에 맞았던 이유는 단순했다. 조건이 바뀌면 다시 최적화하거나 재학습하는 대신, 조건을 바꿔서 다시 샘플링하면 됐다. 또한 샘플이 여러 개 나오니, 실패 가능성이 있는 환경에서 “안전한 후보”를 고를 여지도 생겼다.


5. 접근 방법의 특징 및 설계 의도 (Design Choices)

가장 큰 설계 선택은 정책을 직접 학습하지 않고, 궤적 분포를 학습했다는 점이었다. 이는 멀티모달 문제에 정면으로 대응했다. 한 개의 평균 경로가 아니라, 여러 가능한 경로를 뽑아두고 선택하게 만들었다.

또 다른 선택은 계획을 “매 스텝 재계산”하는 형태로 운용할 수 있게 했다는 점이었다. diffusion 샘플링이 무겁더라도, 호라이즌을 조절하거나 샘플 수를 줄이는 식으로 트레이드오프를 만들 수 있었다. 실무에서 흔한 MPC 운용과도 연결되었다.

loss 자체는 표준 diffusion 목적을 따르되, 조건 주입이 핵심 역할을 했다. 조건을 네트워크 입력에 넣는 방식은 단순해 보이지만, 계획 문제에서는 강력했다. 목표나 제약이 바뀌는 상황을 “다른 데이터 분포”가 아니라 “다른 조건”으로 처리했기 때문이다.

대안으로는 CVAE나 normalizing flow도 가능했다. 하지만 diffusion은 샘플 품질과 모드 커버리지가 강점이었다. 대신 샘플링 시간이 늘어나는 단점이 남았다. 이 논문은 그 단점을 “계획 유연성”으로 상쇄하려는 의도가 강했다.

요약하면, diffusion을 쓴 이유는 성능 수치보다도 ‘다중 해를 다루는 계획의 형태’가 필요했기 때문이었다.

 


6. 실험 결과 요약

이 계열 논문에서 실험이 주로 보여준 가설은 일관됐다. “확률적 샘플 기반 계획이 단일 정책보다 목표 조건 변화에 강하다”는 가설이었다. 특히 목표가 바뀌거나, 동일 목표에 여러 경로가 가능한 환경에서 장점이 드러났다.

ablation이 있었다면 보통 이런 의미를 가졌다. 조건을 약하게 주입하면 생성은 잘 되지만 목표를 놓쳤다. 반대로 조건을 강하게 걸면 목표는 맞추지만 다양성이 줄었다. 결국 성능은 “조건 만족과 다양성”의 균형에서 결정됐다는 해석이 자연스러웠다.


7. 개인적인 해석 및 실무 관점 코멘트

실무에서 가장 유용한 지점은 “정책 재학습 비용”을 줄이는 관점이었다. 목표가 자주 바뀌는 작업, 예를 들어 픽앤플레이스의 목표 위치가 변하거나, 내비게이션의 목적지가 바뀌는 상황에서 매번 정책을 다시 맞추기 어려웠다. diffusion planning은 조건만 바꿔 샘플링을 다시 돌리면 됐다.

계산량은 분명한 부담이었다. diffusion step 수 K와 샘플 수가 곧 지연시간으로 이어졌다. 그래서 온라인 제어에서는 DDIM 계열 가속, step 축소, 작은 모델, 또는 첫 액션만 실행하는 receding horizon이 현실적인 선택이 됐다.

데이터 요구량도 관건이었다. 좋은 궤적 분포를 배우려면 다양한 성공 사례가 필요했다. 실패 데이터까지 섞인 오프라인 로그라면, 조건을 잘 설계하거나 샘플 선택 단계에서 안전 필터를 붙여야 했다.

실무에서는 “생성”보다 “선택”이 더 중요해지는 경우가 많았다.
diffusion이 후보를 잘 뽑아도, 실행 가능성을 보장하는 평가지표가 필요했다.

후속 아이디어로는 두 방향이 자연스러웠다. 하나는 샘플링을 더 빠르게 만드는 distillation이었다. 다른 하나는 생성된 궤적을 안전 제약으로 필터링하는 결합이었다. 예를 들어 충돌 판별기나 비용 모델을 붙이면, diffusion의 다양성이 실제 성능으로 이어지기 쉬웠다.


정리하면, 이 논문은 계획을 “최적화”나 “정책”이 아니라 “조건부 생성”으로 다시 정의했다. 그 관점 전환이 유연한 행동 합성에서 꽤 설득력 있게 작동했다고 설명했다.