15.14 라그랑주 승수법의 원리

1. 개요

라그랑주 승수법(Lagrange multiplier method)은 구속이 있는 최적화 문제와 구속이 있는 동역학 문제를 푸는 강력한 방법이다. 라그랑주 곱셈수(Lagrange multiplier)를 도입하여 구속 조건을 변분 또는 미분 방정식에 자연스럽게 통합한다. 본 절에서는 라그랑주 승수법의 원리와 동역학에서의 적용을 다룬다.

2. 라그랑주 승수법의 기본 개념

2.1 구속이 있는 최적화

함수 f(\mathbf{x})의 극값을 구속 g(\mathbf{x}) = 0 아래에서 찾는 문제를 고려한다.

2.2 라그랑주 함수

이 문제를 풀기 위해 라그랑주 함수(Lagrange function)를 정의한다.

\mathcal{L}(\mathbf{x}, \lambda) = f(\mathbf{x}) + \lambda g(\mathbf{x})

여기서 \lambda가 라그랑주 곱셈수이다.

2.3 정류 조건

\mathcal{L}의 정류점은 다음의 조건을 만족한다.

\frac{\partial \mathcal{L}}{\partial x_i} = 0, \quad \frac{\partial \mathcal{L}}{\partial \lambda} = 0

두 번째 조건은 구속 g = 0을 회복한다.

2.4 다중 구속

여러 구속 g_k(\mathbf{x}) = 0, k = 1, \ldots, m이 있는 경우 각 구속에 대해 라그랑주 곱셈수가 도입된다.

\mathcal{L}(\mathbf{x}, \boldsymbol{\lambda}) = f(\mathbf{x}) + \sum_{k=1}^{m}\lambda_k g_k(\mathbf{x})

3. 동역학에서의 라그랑주 승수법

3.1 구속이 있는 변분 문제

해밀턴의 원리를 구속 \phi(\mathbf{q}, t) = 0 아래에서 적용하는 경우를 고려한다.

\delta\int_{t_1}^{t_2}L(\mathbf{q}, \dot{\mathbf{q}}, t)\, dt = 0

with constraint \phi(\mathbf{q}, t) = 0.

3.2 변형된 라그랑지언

라그랑주 승수법을 적용하면 변형된 라그랑지언이 정의된다.

\bar{L} = L + \sum_{k=1}^{m}\lambda_k \phi_k(\mathbf{q}, t)

3.3 변형된 라그랑주 방정식

이로부터 다음의 변형된 라그랑주 방정식이 유도된다.

\frac{d}{dt}\frac{\partial L}{\partial \dot{q}_i} - \frac{\partial L}{\partial q_i} - \sum_{k=1}^{m}\lambda_k\frac{\partial \phi_k}{\partial q_i} = Q_i^{\text{nc}}

또는 음의 부호 규약을 사용하여

\frac{d}{dt}\frac{\partial L}{\partial \dot{q}_i} - \frac{\partial L}{\partial q_i} = Q_i^{\text{nc}} + \sum_{k=1}^{m}\lambda_k\frac{\partial \phi_k}{\partial q_i}

3.4 구속력의 의미

라그랑주 곱셈수 \lambda_k는 구속 \phi_k를 유지하기 위해 발생하는 일반화 구속력의 크기를 나타낸다.

4. 미분-대수 방정식 (DAE)

4.1 결합 시스템

라그랑주 방정식과 구속 조건이 결합된 시스템은 미분-대수 방정식(Differential-Algebraic Equation, DAE)을 형성한다.

\begin{cases} \mathbf{M}(\mathbf{q})\ddot{\mathbf{q}} + \mathbf{C}(\mathbf{q}, \dot{\mathbf{q}})\dot{\mathbf{q}} + \mathbf{g}(\mathbf{q}) - \boldsymbol{\Phi}_{\mathbf{q}}^T\boldsymbol{\lambda} = \boldsymbol{\tau} \\ \boldsymbol{\Phi}(\mathbf{q}, t) = 0 \end{cases}

4.2 인덱스

DAE의 인덱스는 시스템의 수치 해법의 어려움을 나타낸다. 위치 구속의 경우 일반적으로 인덱스 3의 DAE가 된다.

4.3 인덱스 감소

인덱스를 줄이기 위해 구속 조건을 미분하여 사용한다. 가속도 구속 조건이 주로 사용된다.

\boldsymbol{\Phi}_{\mathbf{q}}\ddot{\mathbf{q}} + \dot{\boldsymbol{\Phi}}_{\mathbf{q}}\dot{\mathbf{q}} + \boldsymbol{\Phi}_t = 0

5. 비홀로노믹 구속의 처리

5.1 비홀로노믹 구속에 대한 적용

비홀로노믹 구속에 대해서도 라그랑주 곱셈수를 도입할 수 있다.

\sum_{j}A_{kj}(\mathbf{q}, t)\dot{q}_j + a_k(\mathbf{q}, t) = 0

라그랑주 방정식은 다음과 같이 확장된다.

\frac{d}{dt}\frac{\partial L}{\partial \dot{q}_i} - \frac{\partial L}{\partial q_i} = Q_i^{\text{nc}} + \sum_{k}\lambda_k A_{ki}

5.2 다랑베르 원리와의 연결

비홀로노믹 시스템에서 라그랑주 곱셈수의 도입은 다랑베르(d’Alembert)의 원리와 일치한다.

6. 라그랑주 곱셈수의 결정

6.1 가속도 구속의 활용

가속도 구속 조건은 라그랑주 곱셈수의 결정에 사용된다. 가속도 구속과 동역학 방정식을 결합하여 다음의 선형계가 얻어진다.

\begin{bmatrix} \mathbf{M} & -\boldsymbol{\Phi}_{\mathbf{q}}^T \\ \boldsymbol{\Phi}_{\mathbf{q}} & \mathbf{0} \end{bmatrix}\begin{bmatrix} \ddot{\mathbf{q}} \\ \boldsymbol{\lambda} \end{bmatrix} = \begin{bmatrix} \boldsymbol{\tau} - \mathbf{C}\dot{\mathbf{q}} - \mathbf{g} \\ -\dot{\boldsymbol{\Phi}}_{\mathbf{q}}\dot{\mathbf{q}} - \boldsymbol{\Phi}_t \end{bmatrix}

이를 풀어 가속도와 라그랑주 곱셈수를 동시에 결정한다.

6.2 풀이 방법

이 선형계는 일반적인 선형 대수 방법으로 풀린다. 행렬의 특수 구조(KKT 행렬)을 활용한 효율적 알고리즘이 있다.

7. 응용

7.1 매니퓰레이터의 폐쇄형 연쇄

폐쇄형 연쇄 매니퓰레이터의 동역학은 라그랑주 곱셈수로 처리된다.

7.2 차륜형 이동 로봇

차륜형 이동 로봇의 비홀로노믹 구속이 라그랑주 곱셈수로 통합된다.

7.3 접촉 제약

매니퓰레이터의 환경과의 접촉 제약은 라그랑주 곱셈수로 표현될 수 있으며, 이는 접촉력을 명시적으로 다룬다.

7.4 운동 계획의 제약

운동 계획에서 환경의 제약(예: 충돌 회피)이 라그랑주 곱셈수로 처리될 수 있다.

8. 본 절의 의의

본 절은 라그랑주 승수법의 원리를 다루었다. 라그랑주 승수법은 구속이 있는 동역학 시스템의 분석과 풀이에 핵심적인 도구이며, 매니퓰레이터의 다양한 응용에서 활용된다.

9. 참고 문헌

  • Goldstein, H., Poole, C., & Safko, J. (2002). Classical Mechanics (3rd ed.). Addison-Wesley.
  • Lanczos, C. (1986). The Variational Principles of Mechanics (4th ed.). Dover.
  • Haug, E. J. (1989). Computer-Aided Kinematics and Dynamics of Mechanical Systems. Allyn and Bacon.
  • Featherstone, R. (2008). Rigid Body Dynamics Algorithms. Springer.

version: 1.0