AI VIDEO BRIEFING
심플렉스 알고리즘 수학 원리: 선형계획법 최적해를 슬랙 변수와 가우스 소거로 찾는 법
심플렉스 알고리즘이 선형계획법의 최적해를 찾는 과정을 단계별로 설명한다. 슬랙 변수, ≤ 표준형 변환, 비율 검사, 가우스 소거로 꼭짓점을 옮겨가며 수익을 최대화하는 원리를 쿠키·도넛 예시와 함께 짚는다.

핵심 메시지
쉽게 이해하기
영상은 심플렉스 알고리즘의 큰 그림에서 출발한다. 알고리즘은 원점에서 시작해 수익이 늘어나는 이웃 꼭짓점으로 이동하고, 더 이상 늘지 않는 곳에서 멈춘다. 이번 편은 그 과정의 수학적 디테일, 즉 행렬 위에서 실제로 무슨 계산이 일어나는지를 다룬다.
문제 설정부터 짚는다. 실현가능한 해들의 영역을 실현가능영역, 최대화하려는 식(여기서는 수익)을 목적함수, 나머지 조건을 제약이라 부른다. 변수는 음수가 될 수 없고, 제약은 선형이어야 한다. 두 점을 잇는 선분이 영역 밖으로 튀어나가면 알고리즘이 제대로 작동하지 않으며, 변수를 지수로 쓸 수도 없다.
다음은 표준형으로의 변환이다. 모든 제약을 ≤ 형태로 통일하는데, ≥ 제약은 양변에 -1을 곱해 부호를 뒤집고, 등호 제약은 ≤와 ≥ 두 부등식으로 쪼갠 뒤 ≥ 쪽을 다시 -1로 뒤집는다. 그다음 각 부등식에 슬랙 변수를 더해 등식으로 바꾼다. 예컨대 쓸 수 있는 밀가루 10kg 중 8kg만 썼다면 차이 2kg를 슬랙 변수가 채워 좌우변을 맞춘다. 계수와 총량을 행렬에 담고 첫 행에 -1을 곱해 준비를 마친다.
이동 규칙은 세 단계다. 먼저 첫 행에서 가장 큰 음수가 있는 열로 이동 방향을 정한다. 다음으로 총량을 그 열의 양수 값들로 나눈 비율을 모두 구해 가장 작은 값을 택하는데, 더 큰 값은 영역 밖이기 때문이다. 마지막으로 가우스 소거(행 축소)로 선택한 열을 1과 0들로 정리하면, 행렬에서 그 꼭짓점의 좌표와 그때의 수익을 바로 읽을 수 있다.
이 과정을 반복한다. 쿠키·도넛 예시에서는 원점에서 (0,10)으로 옮겨 수익 30을 얻고, 다시 (10,10)으로 옮겨 수익 50에 이르렀을 때 첫 행에 음수가 없어 종료했다. 도넛·쿠키·브라우니 세 변수를 x·y·z로 둔 예시에서는 (9,9,4)에서 수익 22가 최적이었다. 첫 행에 더 이상 음수가 없으면 어느 방향으로 가도 수익이 늘지 않으므로 그 점이 최적해다.
주요 인사이트
- 알고리즘은 '눈이 없다.' 어느 꼭짓점이 실현가능영역 안인지 볼 수 없으므로, 총량을 열의 양수로 나눈 비율을 모두 계산하고 가장 작은 값을 택해 영역을 벗어나지 않게 한다.
- ≤로의 통일과 슬랙 변수 도입은 알고리즘을 단순화하는 장치다. 부등호 방향에 따라 경우를 나누지 않아도 되게 하고, 부등식을 등식·행렬 연산으로 다룰 수 있게 만든다.
- 심플렉스의 핵심 반복은 사실상 가우스 소거다. 선택한 열을 1과 0들로 만드는 행 축소가 꼭짓점의 좌표와 그때의 수익을 행렬에서 바로 읽게 해준다.
- 종료 조건은 명확하다. 첫 행에 더 이상 음수가 없으면 어느 방향으로 가도 수익이 늘지 않는다는 뜻이므로 그 점이 최적해다.
자주 묻는 질문
심플렉스 알고리즘은 최적해를 어떻게 찾나?
원점에서 출발해, 수익을 늘리는 이웃 꼭짓점으로 한 번에 하나씩 옮겨간다. 어느 이웃으로 가도 수익이 더 늘지 않는 꼭짓점에 도달하면 그곳이 최적해다.
제약을 왜 모두 '≤' 형태로 바꾸나?
부등호 방향을 통일하면 매 단계에서 서로 다른 경우를 나눠 검사할 필요가 없어 알고리즘이 단순해지기 때문이다. ≥ 제약은 양변에 -1을 곱하고, 등호 제약은 ≤와 ≥ 두 부등식으로 쪼갠 뒤 ≥ 쪽을 다시 -1로 뒤집는다.
슬랙 변수는 무엇을 하나?
부등식을 등식으로 바꾸는 보조 변수다. 예컨대 쓸 수 있는 밀가루가 10kg인데 실제로 8kg만 썼다면, 차이 2kg를 슬랙 변수가 채워 좌변 합계를 우변과 정확히 맞춘다.
알고리즘은 언제 멈추나?
행렬 첫 행에 더 이상 음수가 없을 때 멈춘다. 음수가 없다는 것은 어떤 방향으로 이동해도 수익이 늘지 않는다는 의미이므로, 그 좌표가 최적값이다.
원문과 출처
이 글은 원본 영상의 자막을 바탕으로 한국어 독자를 위해 요약했습니다. 전체 맥락과 최신 정보는 원문에서 확인하세요.
YouTube 원본 영상 보기 ↗