본문 바로가기
카테고리 없음

MPC, NMPC와 PID제어와의 차이점

by 소요이 2024. 10. 24.
728x90

NMPC(Nonlinear Model Predictive Control),

MPC(Model Predictive Control)

 

차이점 3가지:

  1. 모델의 선형성:
    • MPC선형 모델에 기반한 제어 방식입니다. 시스템의 동작이 선형적으로 표현될 수 있을 때 주로 사용됩니다.
    • NMPC비선형 모델에 적용되며, 복잡한 동작이나 시스템 비선형성이 중요한 경우에 사용됩니다.
  2. 계산 복잡도:
    • MPC는 선형 모델을 다루기 때문에 상대적으로 계산이 간단하고 빠릅니다.
    • NMPC는 비선형 모델을 다루기 때문에 계산이 더 복잡하고 시간이 오래 걸립니다.
  3. 적용 분야:
    • MPC는 선형 시스템에서의 제어 문제에 주로 사용됩니다. 예를 들어, HVAC 시스템이나 선형 공정 제어 등에 적용됩니다.
    • NMPC는 비선형 시스템을 제어할 때 사용되며, 복잡한 자동차 제어, 로봇 제어 등 다양한 분야에서 활용됩니다.

공통점 3가지:

  1. 미래 예측 기반 제어:
    • 두 방식 모두 미래의 시스템 동작을 예측하고 이를 바탕으로 제어 결정을 내리는 예측 제어 방법입니다.
  2. 제약 조건 처리:
    • MPCNMPC 모두 시스템의 제약 조건(입력, 출력, 상태 등)을 고려하여 최적의 제어 입력을 계산하는 공통점이 있습니다.
  3. 실시간 제어:
    • 두 제어 방법 모두 실시간으로 적용할 수 있으며, 반복적으로 최적화 문제를 해결하여 제어 입력을 업데이트하는 방식입니다.

이러한 차이점과 공통점으로 인해 시스템에 따라 적절한 제어 방식을 선택하게 됩니다.

 

[미래 시스템 예측이란?]

 

MPC와 NMPC에서의 미래 시스템 예측은 제어 전략의 핵심 요소로, 시스템의 미래 상태를 미리 계산하여 현재의 제어 입력을 결정하는 방식입니다. 이를 예측 제어라고 하며, 다음과 같은 방식으로 이루어집니다.

1. 시스템 모델 기반의 예측

MPC와 NMPC는 시스템의 수학적 모델을 사용하여 미래의 시스템 상태를 예측합니다. 여기서 시스템 모델은 시스템의 입력과 출력의 관계를 나타내는 수학적 식입니다.

  • MPC: 선형 시스템 모델(주로 선형 미분방정식)을 사용하여, 입력에 따라 시스템의 상태가 어떻게 변화할지를 예측합니다.
  • NMPC: 비선형 시스템 모델을 사용하여 더 복잡한 시스템 동작을 예측합니다. 예를 들어, 차량 동역학이나 로봇 팔의 복잡한 움직임을 예측할 때 비선형 모델을 사용합니다.

2. 예측 지평선 (Prediction Horizon)

예측 제어는 일정한 미래 시간 동안 시스템의 동작을 예측하는데, 이를 예측 지평선(Prediction Horizon)이라고 합니다.

  • 현재 시점에서 미래의 N단계(미래 몇 초 또는 몇 샘플) 동안 시스템 상태를 예측합니다. 이때, 현재의 입력이 미래 상태에 미치는 영향을 계산하여, 최적의 제어 입력을 결정합니다.
  • 예시: 자동차의 주행 경로를 예측할 때, 미래 몇 초 동안의 속도와 방향 변화를 예측하여 브레이크와 가속 페달을 어떻게 조작할지를 결정하는 과정입니다.

3. 비용 함수 (Cost Function) 최소화

예측된 미래 상태는 비용 함수를 통해 평가됩니다. 이 비용 함수는 시스템 성능을 평가하는 기준으로, 제어 목표와 현재 상태 간의 차이를 최소화하는 것을 목표로 합니다.

  • 비용 함수는 예를 들어 다음과 같은 방식으로 구성됩니다.
    • 목표 상태와 예측된 상태 간의 오차 최소화
    • 에너지 소비, 제어 입력의 크기 최소화
    • 안전 제약 조건을 만족시키는 것
    MPCNMPC는 이 비용 함수에 따라 미래 상태를 평가하고, 이를 최소화하는 방향으로 제어 입력을 결정합니다.

4. 실시간 제어 입력 계산

예측된 결과를 바탕으로 현재의 최적 제어 입력을 계산합니다. 하지만, 미래 모든 시간에 대한 제어 입력을 한 번에 계산하지 않고, 가장 가까운 시간에 적용할 제어 입력만을 계산하여 즉시 시스템에 적용합니다.

이후, 시간이 흐르면서 시스템의 상태가 업데이트되면, 다시 새로운 예측을 수행하고 다음 단계의 제어 입력을 계산하는 방식으로 실시간으로 반복됩니다. 이 방식은 예측이 잘못된 경우에도 매 순간 재계산을 통해 보정할 수 있다는 장점이 있습니다.

5. 모델 불확실성에 대한 대응

미래 예측은 모델의 정확성에 크게 의존하지만, 현실 시스템은 예측과 다르게 움직일 수 있습니다.

  • MPCNMPC는 반복적으로 미래를 예측하고 현재의 상태를 지속적으로 갱신하기 때문에, 예측이 잘못되더라도 곧바로 새로운 예측을 반영하여 제어를 보정합니다.
  • 이를 통해 시스템이 예측 불확실성에 대응할 수 있고, 제어 시스템의 안정성과 성능을 유지할 수 있습니다.

따라서, 미래 시스템 예측은 현재의 제어 결정을 최적화하는 데 필수적인 과정이며, 특히 동적인 시스템 제어에서 중요한 역할을 합니다.

 
 
 

 

 

[일반 PID제어와 다른 점?]

 

일반 일반 PID 제어도 반복적으로 현재 상태를 입력으로 받아 갱신하는 방식입니다. 그러나 PID 제어MPC/NMPC 간의 차이점은 예측의 방식과 제어 입력을 결정하는 방식에서 나타납니다.

공통점:

  • 현재 상태를 이용한 제어 갱신:
    PID 제어와 MPC/NMPC 모두 현재 시스템의 상태(오차 값)를 기반으로 제어 입력을 계산하여 지속적으로 시스템에 반영합니다. 이들은 실시간으로 동작하며, 새로운 상태 정보를 받으면 이를 반영하여 제어 신호를 수정합니다.

차이점:

  1. 미래 예측 여부:
    • PID 제어는 오직 현재 상태와 과거의 오차 값(비례, 적분, 미분)만을 사용하여 즉각적인 제어 입력을 결정합니다. 즉, 미래의 시스템 동작을 예측하지 않고 현재의 오차 값을 줄이는 데 집중합니다.
    • MPC/NMPC는 현재 상태뿐만 아니라 미래의 시스템 동작예측합니다. 이 예측을 바탕으로 미래에 발생할 오차까지 고려하여 최적의 제어 입력을 계산합니다. 이를 통해 시스템의 성능을 더 장기적으로 최적화할 수 있습니다.
  2. 제어 입력 결정 방식:
    • PID 제어는 비례, 적분, 미분 항의 합으로 제어 입력을 계산합니다. 이 방식은 단순하고 계산이 빠르지만, 제어 입력의 최적성을 보장하지는 못합니다.
    • MPC/NMPC는 최적화 알고리즘을 사용하여 비용 함수를 최소화하는 제어 입력을 계산합니다. 이 과정에서 시스템의 동작을 여러 단계 예측하여, 제약 조건(예: 입력 제약, 상태 제약)을 만족하는 최적의 입력을 구합니다.
  3. 제약 조건 처리:
    • PID 제어는 기본적으로 제어 입력에 대한 제약 조건을 명시적으로 처리하지 않습니다. 만약 시스템에 제약이 존재하는 경우, 별도의 추가 조치가 필요합니다.
    • MPC/NMPC는 제어 입력이나 상태 변수에 대한 제약 조건을 직접적으로 고려할 수 있습니다. 예를 들어, 입력이 너무 커서 시스템이 손상되지 않도록 제어 신호의 크기를 제한하거나, 특정 상태로 진입하지 않도록 제어하는 것이 가능합니다.

요약:

  • PID 제어는 현재 상태에만 반응하며 단기적으로 오차를 줄이는 데 중점을 둡니다.
  • MPC/NMPC미래 시스템 상태를 예측하고, 이를 기반으로 장기적인 최적의 제어 입력을 결정하는 방식입니다. 이로 인해 더 복잡하지만, 보다 정교한 제어가 가능합니다.

두 제어 방식 모두 실시간으로 상태를 받아 갱신하지만, MPC/NMPC는 예측 제어를 기반으로 하고, PID는 즉각적인 반응형 제어라는 큰 차이점이 있습니다.