Skip to article frontmatterSkip to article content
Site not loading correctly?

This may be due to an incorrect BASE_URL configuration. See the MyST Documentation for reference.

보강 4-2. 미지수와 기준을 만들기

Translating the World, Part 2 — 없던 것을 발명하는 두 가지 방식

앞 편에서는 미지수가 상황에 이미 이름을 갖고 있었다. 총산출, 가격, 할인계수, 재고 — 전부 누군가 이미 부르던 것이다. 사다리 첫째 칸이 어렵지 않았다.

이번 편은 다르다. 두 가지를 우리가 직접 만들어야 한다.

앞 편의 도구를 그대로 쓴다. 여섯 상자번역 사다리다. 다만 이번에는 사다리 첫째 칸과 넷째 칸에서 자주 막힌다.


3막 · 미지수를 만든다

이 막에서 다섯 가지 발명 수법이 손에 남는다.

  1. 부등호를 등호로 바꾸는 여유변수 — 남는 양에 이름을 붙인다

  2. 아직 모르는 결과값을 미지수에 편입 — 게임의 값을 몰라도 계에 넣는다

  3. 쌍대 변수 — 제약 하나에 값을 하나씩 붙인다

  4. 노드마다 숫자 하나 — 간선을 다 세지 않고 최선임을 확인한다

  5. 배율을 미지수로 — 표 자체를 고치는 대신 행과 열의 배율을 찾는다


25. 아직 모르는 그 값을 미지수 자리에 올린다 ★★☆

세우기 모르는 것이 둘이다. 배치 비율과, 그 결과 얻게 될 회수액. 둘째 것을 나중에 계산하려 하지 말고, 지금 미지수 자리에 같이 올려 보라.

번역 25
사다리이 문제에서
① 세로로 세울 것배치 비율 x1,x2x_1, x_2 그리고 연평균 회수액 vv, 셋
② 이미 아는 수(0,0,1)(0, 0, 1) — 앞 둘은 “같아야 한다”, 마지막은 “합이 1”
③ 규칙 한 줄밀수업자의 선택 하나마다 한 줄, 그리고 합이 1. 셋 다 독립
④ 어느 상자상자 1
⑤ 선대가 답하지 않는 것두 순수전략이 정말 둘 다 쓰이는지. 아니면 해에 음수가 나온다

먼저 확인할 것이 있다. 회수액 표를 놓고

A=[4123]A = \begin{bmatrix}4&1\\2&3\end{bmatrix}

(1)에서 각 행의 최소는 (1,2)(1, 2) 라 그 최대가 2 이고, 각 열의 최대는 (4,3)(4, 3) 이라 그 최소가 3 이다. 둘이 다르므로 안장점이 없다. 곧 어느 한 항구에 몰빵하는 답은 없고 섞어야 한다.

세관이 비율 x\vv{x} 로 섞으면, 밀수업자가 어느 쪽으로 오든 세관의 기대 회수액이 같아야 한다. 그렇지 않으면 밀수업자가 작은 쪽으로만 갈 것이기 때문이다.

4x1+2x2=v,x1+3x2=v,x1+x2=14x_1 + 2x_2 = v, \qquad x_1 + 3x_2 = v, \qquad x_1 + x_2 = 1

(2)의 세 줄에는 미지수가 셋(x1,x2,vx_1, x_2, v) 있다. vv 를 왼쪽으로 넘기면 그냥 정방계다.

[421131110][x1x2v]=[001]\begin{bmatrix}4&2&-1\\1&3&-1\\1&1&0\end{bmatrix} \begin{bmatrix}x_1\\x_2\\v\end{bmatrix} = \begin{bmatrix}0\\0\\1\end{bmatrix}

(3)의 행렬식은 4 라 가역이다. 풀면

x=(14, 34),v=52\vv{x} = \left(\tfrac14,\ \tfrac34\right), \qquad v = \tfrac52

이다. 인천에 약 91일, 부산에 약 274일이고 연평균 2.5억원을 회수한다.

검산. 밀수업자가 인천을 고르면 14(4)+34(2)=1+32=52\frac14(4) + \frac34(2) = 1 + \frac32 = \frac52, 부산을 고르면 14(1)+34(3)=14+94=52\frac14(1) + \frac34(3) = \frac14 + \frac94 = \frac52 로 같다. 어느 쪽으로 와도 같으니 밀수업자에게 유리한 선택이 없다.

밀수업자 쪽도 같은 방법으로 풀린다. 계수행렬만 전치하면

[411231110]y=[001]y=(12, 12)\begin{bmatrix}4&1&-1\\2&3&-1\\1&1&0\end{bmatrix}\vv{y} = \begin{bmatrix}0\\0\\1\end{bmatrix} \qquad\Longrightarrow\qquad \vv{y} = \left(\tfrac12,\ \tfrac12\right)

이고 (5)의 값도 v=52v = \frac52 로 같다. 두 사람이 서로 다른 계를 푸는데 답의 셋째 성분이 같다. 그것이 게임의 값이다.

빠지기 쉬운 곳 — 이 수법은 두 순수전략이 모두 양의 확률로 쓰인다는 가정 아래에서만 성립한다. 지지집합이 더 작으면 해에 음수가 나오고, 그때는 선형계가 아니라 선형계획을 풀어야 한다. 그래서 안장점이 없다는 것을 먼저 확인한 것이다.

회수 : L03 역행렬 · L05 전치 · L20 크래머


26. 부등호를 등호로 바꾸려면 무엇에 이름을 붙여야 하는가 ★★☆

세우기 담당자 말이 맞다. 지금은 등식이 하나도 없다. 무엇에 이름을 붙이면 등식이 되는가.

번역 26
사다리이 문제에서
① 세로로 세울 것생산량 둘 그리고 공장마다 노는 시간 셋, 합쳐 다섯
② 이미 아는 수가용 시간 (4,12,18)(4, 12, 18)
③ 규칙 한 줄공장 하나의 시간 수지, 세 줄이고 셋 다 독립
④ 어느 상자상자 2 (줄보다 미지수가 많다)
⑤ 선대가 답하지 않는 것x0\vv{x} \ge \vv{0} 이라는 조건. 그것을 넣는 순간 선형계획이다

노는 시간에 이름을 붙인다. 공장 ii 가 쉬는 시간을 sis_i 라 하면 부등식이 등식이 된다.

x1+s1=4,2x2+s2=12,3x1+2x2+s3=18x_1 + s_1 = 4, \qquad 2x_2 + s_2 = 12, \qquad 3x_1 + 2x_2 + s_3 = 18

(6)의 세 줄을 쌓으면 이렇게 된다.

Ax=b,A=[101000201032001],b=(4, 12, 18)A\vv{x} = \vv{b}, \qquad A = \begin{bmatrix}1&0&1&0&0\\0&2&0&1&0\\3&2&0&0&1\end{bmatrix}, \qquad \vv{b} = (4,\ 12,\ 18)

(7)의 계는 줄 3개에 미지수 5개다. L07의 계산 그대로 자유변수가 53=25 - 3 = 2 개다. 답이 무수히 많다.

그런데 여기서 L07이 준 것이 하나 더 있다. 다섯 열 중 셋을 골라 피벗 열로 삼고 나머지 둘을 0으로 두면 3×33\times3 계가 남는다. 고르는 방법이

(53)=10\binom{5}{3} = 10

가지다. (8) 중 두 가지는 고른 세 열이 종속이라 못 푼다. 남은 8가지가 기저해다.

세 열을 골랐다면 남은 두 미지수는 0이고, 고른 세 열이 만드는 3×33\times3 계를 푼다.

BxB=b,B=A[:,S],S=3B\,\vv{x}_B = \vv{b}, \qquad B = A[:,\,S], \qquad \lvert S \rvert = 3

(9)에서 detB0\det B \neq 0 이면 답이 하나 나온다. 열 a1\vv{a}_1a2\vv{a}_2 를 함께 고르면서 여유변수를 하나만 남기는 두 경우가 종속이라 못 푼다.

여덟 기저해 중 성분이 전부 0 이상인 것이 다섯이다. 그 다섯이 꼭짓점이다.

꼭짓점(x1,x2)(x_1, x_2)이익 zz
원점(0,0)(0, 0)0
(4,0)(4, 0)12
(4,3)(4, 3)27
(0,6)(0, 6)30
최적(2,6)(2, 6)36\mathbf{36}

나머지 셋은 각각 s3=6s_3 = -6, s1=2s_1 = -2, s2=6s_2 = -6노는 시간이 음수다. 그런 공장은 없다.

왼쪽에서 점이 실행가능한 꼭짓점 다섯, 십자가 셋이 노는 시간이 음수로 나온 기저해다.
꼭짓점을 세는 일과 피벗 열을 고르는 일이 같은 일이다.

Figure 1:왼쪽에서 점이 실행가능한 꼭짓점 다섯, 십자가 셋이 노는 시간이 음수로 나온 기저해다. 꼭짓점을 세는 일과 피벗 열을 고르는 일이 같은 일이다.

한걸음 더 — 이익이 최대인 곳이 왜 하필 꼭짓점인가. 목적함수가 선형이므로 같은 이익을 주는 점들이 직선을 이루고, 그 직선을 평행이동하면 영역을 벗어나기 직전에 반드시 꼭짓점에 닿는다. 그래서 꼭짓점만 세면 된다. 여기서는 다섯 개뿐이다.

빠지기 쉬운 곳x0\vv{x} \ge \vv{0} 은 선형계가 아니다. 이 책은 여덟 개의 기저해를 전부 구한 뒤 부호를 눈으로 확인했다. 실제 선형계획법은 그렇게 하지 않고 꼭짓점을 하나씩 옮겨 다닌다. 그 옮겨 다니는 일이 무엇인지가 다음 문제다.

회수 : L06 열공간 · L07 피벗과 자유변수 · L08 완전해 · L09 독립


27. 계획을 고칠 때마다 처음부터 다시 푸는가 ★★★

세우기 꼭짓점 하나에서 이웃 꼭짓점으로 옮길 때, 고른 세 열 중 하나만 바뀐다. 열 하나가 바뀌면 역행렬은 얼마나 바뀌는가.

번역 27
사다리이 문제에서
① 세로로 세울 것이번엔 벡터가 아니라 행렬 — 소거행렬 EE
② 이미 아는 수들어올 열 as\vv{a}_s 와 나갈 자리 rr
③ 규칙 한 줄Eas=erE\vv{a}_s = \vv{e}_r 이어야 한다
④ 어느 상자상자 1
⑤ 선대가 답하지 않는 것어느 열을 넣을지 고르는 규칙. 그건 최적화의 몫이다

기저 BB 에서 열 하나만 바꿔 BB' 이 될 때

(B)1=EB1(B')^{-1} = E\,B^{-1}

이고, (10)EE단위행렬에서 한 열만 바뀐 것이다. 축 원소를 arsa_{rs} 라 하면 EErr 번째 열이

(a1sars, , 1ars, , amsars)\left(-\frac{a_{1s}}{a_{rs}},\ \dots,\ \frac{1}{a_{rs}},\ \dots,\ -\frac{a_{ms}}{a_{rs}}\right)

이다. (11)의 꼴이 L02의 소거행렬 그대로다. 한 열을 er\vv{e}_r 로 만드는 일이니 당연하다.

실제로 해 보자. 출발 기저는 여유변수 셋이라 B=IB = I 다.

첫 걸음 — 제품 2를 넣는다. 그 열이 a2=(0,2,2)\vv{a}_2 = (0, 2, 2) 이고 b=(4,12,18)\vv{b} = (4, 12, 18) 이므로, 어느 줄이 먼저 바닥나는지 비율로 본다.

122=6 (2행),182=9 (3행)2행이 축, 축 원소 2\frac{12}{2} = 6\ (\text{2행}), \qquad \frac{18}{2} = 9\ (\text{3행}) \qquad\Longrightarrow\qquad \text{2행이 축, 축 원소 } 2

(12)에서 2행을 골랐으니 (11)에 넣으면

E1=[1000120011],E1a2=(0, 1, 0)E_1 = \begin{bmatrix}1&0&0\\0&\tfrac12&0\\0&-1&1\end{bmatrix}, \qquad E_1\vv{a}_2 = (0,\ 1,\ 0)

이다. (13)의 확인처럼 열이 정확히 e2\vv{e}_2 가 됐다.

둘째 걸음 — 제품 1을 넣는다. 같은 식으로

E2=[10130100013]E_2 = \begin{bmatrix}1&0&-\tfrac13\\0&1&0\\0&0&\tfrac13\end{bmatrix}

가 나온다. (14)까지 곱하면 최종 역행렬이다.

B1=E2E1=[11313012001313]xB=B1b=(2, 6, 2)B^{-1} = E_2E_1 = \begin{bmatrix} 1 & \tfrac13 & -\tfrac13\\ 0 & \tfrac12 & 0\\ 0 & -\tfrac13 & \tfrac13 \end{bmatrix} \qquad\Longrightarrow\qquad \vv{x}_B = B^{-1}\vv{b} = (2,\ 6,\ 2)

(15)에서 기저가 (s1,x2,x1)(s_1, x_2, x_1) 이므로 s1=2s_1 = 2, x2=6x_2 = 6, x1=2x_1 = 2 다. 최적 꼭짓점 (2,6)(2, 6), 이익 36만원으로 상황의 답과 같다.

세 꼭짓점을 지나며 이익이 0 \to 30 \to 36 으로 오른다. 저장한 것은 역행렬 아홉 칸이
아니라 소거행렬마다 바뀐 열 하나씩이다.

Figure 2:세 꼭짓점을 지나며 이익이 030360 \to 30 \to 36 으로 오른다. 저장한 것은 역행렬 아홉 칸이 아니라 소거행렬마다 바뀐 열 하나씩이다.

개발자가 설명하기 어려웠던 것이 이것이다. 저장하는 것은 B1B^{-1} 전체가 아니라 EE 들의 목록이고, EE 하나는 숫자 세 개면 적힌다. 아홉 칸이 아니라 세 칸이다.

한걸음 더 — 걸음을 많이 걸으면 EE 가 쌓여 곱셈이 늘고 반올림 오차도 쌓인다. 그래서 실무에서는 주기적으로 BB 를 다시 분해한다. 보강 2가 말한 대로 빠른 갱신과 안정성이 맞바꿈 관계다.

회수 : L02 소거행렬 · L03 역행렬 · L04 분해를 다시 하는 값 · L07 기저 교환


28. 잔업 한 시간에 얼마까지 쳐줄 것인가 ★★★

세우기 새로운 미지수를 만든다. 공장마다 "시간 한 단위의 값"을 붙여 보라. 그 값들이 만족해야 할 줄은 무엇인가.

번역 28
사다리이 문제에서
① 세로로 세울 것공장별 시간의 값 y1,y2,y3y_1, y_2, y_3, 셋
② 이미 아는 수기저에 든 활동의 이익 cB\vv{c}_B
③ 규칙 한 줄기저 열 하나마다 한 줄, 세 줄
④ 어느 상자상자 1
⑤ 선대가 답하지 않는 것이 값이 얼마나 멀리까지 유효한지. 기저가 바뀌면 값도 바뀐다

최적 기저에서 y\vv{y} 가 만족해야 할 것은 이것이다.

BTy=cBB^{\mathsf T}\vv{y} = \vv{c}_B

(16)전치가 나오는 것이 이 문제의 전부다. 원문제는 열을 활동으로 읽었는데, 값을 물으면 행을 자원으로 읽게 된다. L05가 말한 그 전치다.

최적 기저는 열 (as1,a2,a1)(\vv{a}_{s_1}, \vv{a}_2, \vv{a}_1) 이므로

B=[101020023],cB=(0, 5, 3)B = \begin{bmatrix}1&0&1\\0&2&0\\0&2&3\end{bmatrix}, \qquad \vv{c}_B = (0,\ 5,\ 3)

이다. (17)cB\vv{c}_B 에서 첫 성분이 0인 것은 여유변수 s1s_1 이 이익을 안 내기 때문이다. 전치해서 풀면

[100022103]y=[053]y=(0, 32, 1)\begin{bmatrix}1&0&0\\0&2&2\\1&0&3\end{bmatrix}\vv{y} = \begin{bmatrix}0\\5\\3\end{bmatrix} \qquad\Longrightarrow\qquad \vv{y} = \left(0,\ \tfrac32,\ 1\right)

(18)의 답이 답이다. 1공장은 0원, 2공장은 1.5만원, 3공장은 1만원이다.

1공장이 0인 것에 뜻이 있다. (15)에서 s1=2s_1 = 2 였다. 1공장은 이미 2시간이 남아돌므로 한 시간 더 준다고 이익이 늘지 않는다.

검산. 2공장 가용시간을 12에서 13으로 올려 실제로 다시 풀어 보자.

xB=B1(4, 13, 18)=(2+13, 132, 213)x1=53,x2=132\vv{x}_B = B^{-1}(4,\ 13,\ 18) = \left(2+\tfrac13,\ \tfrac{13}{2},\ 2-\tfrac13\right) \qquad\Longrightarrow\qquad x_1 = \tfrac53,\quad x_2 = \tfrac{13}{2}

(19)의 이익은 3(53)+5(132)=5+32.5=37.53(\frac53) + 5(\frac{13}{2}) = 5 + 32.5 = 37.5 다. 36+1.536 + 1.5 로 정확히 y2y_2 만큼 늘었다.

그러니 잔업 시급이 1.5만원 미만이면 남는 장사다. 다시 풀 필요가 없었다.

y\vv{y} 가 곧 값인지 한 줄로 보인다. 최적 이익은 z=cBTxBz = \vv{c}_B^{\mathsf T}\vv{x}_B 이고 xB=B1b\vv{x}_B = B^{-1}\vv{b} 이므로

z=cBTB1b=((BT)1cB)Tb=yTbz = \vv{c}_B^{\mathsf T}B^{-1}\vv{b} = \left(\left(B^{\mathsf T}\right)^{-1}\vv{c}_B\right)^{\mathsf T}\vv{b} = \vv{y}^{\mathsf T}\vv{b}

이다. (20)의 마지막 꼴에서 b\vv{b} 의 성분 하나를 1만큼 올리면 이익이 정확히 그 자리의 yiy_i 만큼 는다. 기저가 안 바뀌는 동안은 그렇다.

한걸음 더 — 이 값이 영원히 유효한 것은 아니다. 시간을 계속 늘리면 어느 순간 다른 제약이 먼저 바닥나 기저가 바뀌고 그때 y\vv{y} 도 달라진다. "한 시간에 1.5만원"은 지금 기저가 유지되는 범위 안에서만 맞는 말이다.

회수 : L03 역행렬 · L05 전치 · L08 유일해 · L10 네 부분공간


29. 거점마다 숫자를 하나씩 붙인다 ★★★

세우기 경로를 다 세지 않고 최선임을 확인하려면 무엇이 필요한가. 거점마다 숫자를 하나씩 붙여 보라.

번역 29
사다리이 문제에서
① 세로로 세울 것길마다의 운송량 y\vv{y}, 다섯
② 이미 아는 수노드별 순유출입 f=(6,0,0,6)\vv{f} = (-6, 0, 0, 6)
③ 규칙 한 줄노드 하나의 흐름 보존, 네 줄인데 독립은 셋
④ 어느 상자상자 2
⑤ 선대가 답하지 않는 것길마다의 용량 제한. 그것이 있으면 다시 선형계획이다

L12의 결합행렬을 그대로 쓴다. 간선을 행, 노드를 열로 놓고 꼬리에 -1, 머리에 +1 이다.

A=[11000110101000110101],ATy=fA = \begin{bmatrix} -1&1&0&0\\ 0&-1&1&0\\ -1&0&1&0\\ 0&0&-1&1\\ 0&-1&0&1 \end{bmatrix}, \qquad A^{\mathsf T}\vv{y} = \vv{f}

(21)에서 rankA=41=3\rank A = 4 - 1 = 3 이다. 연결된 그래프의 결합행렬은 늘 노드 수보다 하나 작다(L12).

그러면 루프 공간의 차원이

53=2=mn+1=54+15 - 3 = 2 = m - n + 1 = 5 - 4 + 1

이다. (22)의 오일러 공식대로 독립인 루프가 둘이다.

담당자의 답은 y=(6,6,0,6,0)\vv{y} = (6, 6, 0, 6, 0) 이고 비용이 36만원이다. 검산하면 ATy=(6,0,0,6)A^{\mathsf T}\vv{y} = (-6, 0, 0, 6) 로 흐름이 보존된다.

이제 최선임을 확인한다. 노드마다 숫자 xix_i 를 붙이고, 간선의 축소비용을 다음처럼 잰다.

cˉe=ce(x머리x꼬리)\bar{c}_e = c_e - (x_{\text{머리}} - x_{\text{꼬리}})

(23)의 값이 0 이상이면 그 간선을 쓰는 것이 이득이 아니다. 쓰고 있는 간선 셋에서 cˉe=0\bar{c}_e = 0 이 되도록 x\vv{x} 를 정하면

x=(0, 2, 3, 6)\vv{x} = (0,\ 2,\ 3,\ 6)

이고, (24)의 전위로 나머지 둘을 재면 안 쓰는 간선 e3e_3e5e_5 에서 축소비용이 각각 43=14 - 3 = 154=15 - 4 = 1 이다. 둘 다 0 이상이므로 최선이다.

빠지기 쉬운 곳x\vv{x} 는 유일하지 않다. 전체에 상수를 더해도 차이가 안 바뀌기 때문이다. 곧 N(A)=span(1)N(A) = \operatorname{span}(\vv{1}) 이고, 상황의 기준 통화 이야기와 같은 구조다. 하나를 0으로 고정하면 나머지가 정해진다.

회수 : L07 자유변수 · L08 해집합 · L10 네 부분공간 · L12 결합행렬


30. 줄이 다섯인데 마음대로 정할 수 있는 것이 왜 둘인가 ★★☆

세우기 줄 다섯 중 하나가 나머지에서 따라 나온다. 어느 것인가, 그리고 왜 그런가.

번역 30
사다리이 문제에서
① 세로로 세울 것여섯 칸 x11,,x23x_{11}, \dots, x_{23}
② 이미 아는 수공급 (30,20)(30, 20) 과 수요 (20,15,15)(20, 15, 15)
③ 규칙 한 줄공장 하나 또는 대리점 하나, 다섯 줄인데 독립은 넷
④ 어느 상자상자 2
⑤ 선대가 답하지 않는 것배차가 정수여야 한다는 것. 여기서는 다행히 저절로 정수가 나온다
T=[111000000111100100010010001001]T = \begin{bmatrix} 1&1&1&0&0&0\\ 0&0&0&1&1&1\\ 1&0&0&1&0&0\\ 0&1&0&0&1&0\\ 0&0&1&0&0&1 \end{bmatrix}

(25)의 각 열에 1이 정확히 둘 있다. 칸 하나는 공장 하나와 대리점 하나에 걸쳐 있기 때문이다. 이것이 완전이분그래프의 결합행렬이다.

이제 종속을 찾는다. 공급 줄을 다 더하면 전부 1이 되고, 수요 줄을 다 더해도 전부 1이 된다.

(1행)+(2행)=(1,1,1,1,1,1)=(3행)+(4행)+(5행)(\text{1행}) + (\text{2행}) = (1,1,1,1,1,1) = (\text{3행}) + (\text{4행}) + (\text{5행})

(26)의 등식이 그 종속이다. "공급 총합 = 수요 총합"이라는 사실이 행 사이의 관계로 나타난 것이다.

그래프가 연결이므로 종속은 이 하나뿐이고

rankT=51=4=m+n1\rank T = 5 - 1 = 4 = m + n - 1

이다. (27)에서 자유변수가 64=26 - 4 = 2 개다. 담당자가 둘을 정해야 했던 이유가 이것이다.

북서코너부터 채우면 x11=20x_{11} = 20, x12=10x_{12} = 10, x22=5x_{22} = 5, x23=15x_{23} = 15 이고 나머지 둘은 0이다. 0이 아닌 성분이 정확히 4개 = m+n1m+n-1 이고, 그 넷이 노드 다섯을 잇는 신장나무를 이룬다.

빠지기 쉬운 곳 — 만약 공급 총합과 수요 총합이 다르면 (26)의 종속이 깨지고 rankT=5\rank T = 5 가 되지만, 그때는 해가 아예 없다. 랭크가 오르는 것이 좋은 소식이 아닌 드문 경우다.

회수 : L05 전치 · L07 자유변수 · L09 독립 · L12 결합행렬


31. 미지수를 여섯으로 늘렸는데도 답이 하나가 아니다 ★★★

세우기 미지수를 여섯으로 늘렸는데 답이 여전히 여럿이다. 남은 자유도 하나가 무엇을 뜻하는가.

번역 31
사다리이 문제에서
① 세로로 세울 것직원 잉여 uiu_i 셋과 집 월세 pjp_j 셋, 여섯
② 이미 아는 수값어치 표
③ 규칙 한 줄등식이 걸리는 쌍마다 한 줄, 다섯 줄이고 다섯 다 독립
④ 어느 상자상자 2
⑤ 선대가 답하지 않는 것월세가 0 이상이어야 한다는 것. 그것이 자유도를 잘라 준다

배정된 쌍에서는 값어치가 잉여와 월세로 정확히 갈리고, 나머지 쌍에서는 옮길 마음이 없어야 하므로 부등식이 된다.

ui+pj=vij  (배정된 쌍),ui+pjvij  (나머지)u_i + p_j = v_{ij}\ \ (\text{배정된 쌍}), \qquad u_i + p_j \ge v_{ij}\ \ (\text{나머지})

먼저 배정부터 확인하자. 값어치 표에서 대각선이 12+8+7=2712 + 8 + 7 = 27 이고, 나머지 다섯 배정은 22, 22, 20, 19, 18 로 전부 작다. 대각선이 최적이다.

이제 (28)에서 등식이 걸리는 쌍을 찾으면 (1,1)(1,1), (2,1)(2,1), (2,2)(2,2), (3,1)(3,1), (3,3)(3,3) 의 다섯이다. 이 다섯 줄을 미지수 여섯에 대해 쌓으면 AA5×65\times6 이고 각 행에 1이 정확히 둘 있다. 또 결합행렬이다.

rankA=5dimN(A)=65=1\rank A = 5 \qquad\Longrightarrow\qquad \dim N(A) = 6 - 5 = 1

(29)의 영공간 기저가 무엇인지 보자.

n=(1, 1, 1  1, 1, 1)\vv{n} = (1,\ 1,\ 1\ |\ -1,\ -1,\ -1)

확인은 한 줄이면 된다. 어느 등식이든 ui+pju_i + p_j 꼴이므로

(ui+1)+(pj1)=ui+pj(u_i + 1) + (p_j - 1) = u_i + p_j

이고, (31)의 좌변이 우변과 같으니 다섯 줄 전부가 그대로 유지된다.

(30)의 뜻은 이렇다. 모든 잉여를 1씩 올리고 모든 월세를 1씩 내려도 아무 등식도 깨지지 않는다.

곧 남은 자유도 하나는 회사와 직원 사이의 이득 배분 그 자체다. 선형대수는 그것을 정해 주지 않는다.

총무팀이 "월세가 되도록 낮게"라고 했으니 그 방향으로 끝까지 밀면

p=(2, 0, 0),u=(10, 8, 7)\vv{p} = (2,\ 0,\ 0), \qquad \vv{u} = (10,\ 8,\ 7)

이고, (32)에서 더 내리면 월세가 음수가 된다. 해 전체는

(u;p)=(10,8,72,0,0)+t(1,1,11,1,1),t0(\vv{u};\vv{p}) = (10,8,7\,|\,2,0,0) + t\,(-1,-1,-1\,|\,1,1,1), \qquad t \ge 0

이다. (33)의 꼴이 L08의 “특수해 + 영공간” 그대로다.

검산. u1+p1=10+2=12=v11u_1 + p_1 = 10 + 2 = 12 = v_{11} ✓. 그리고 직원 1이 둘째 집을 보면 u1+p2=10+0=105=v12u_1 + p_2 = 10 + 0 = 10 \ge 5 = v_{12} 이므로 옮길 마음이 없다. 아홉 쌍 전부 확인하면 여유가 최소 0이다.

빠지기 쉬운 곳 — 부등식 조건 p0\vv{p} \ge \vv{0} 이 자유도를 잘라 주는 것이지 선형계가 잘라 주는 것이 아니다. "되도록 낮게"라는 총무팀의 말이 tt 를 고르는 기준이었다. 4막에서 이 이야기를 본격적으로 한다.

회수 : L06 영공간 · L07 특수해 · L09 독립 · L12 결합행렬


32. 세 줄 중 하나를 버려도 되는 이유 ★★★

세우기 이 표는 두 가지 사실을 동시에 갖고 있다. JJ 의 영공간에 무엇이 있고, 좌영공간에는 무엇이 있는가.

번역 32
사다리이 문제에서
① 세로로 세울 것균형가격 p\vv{p}, 셋
② 이미 아는 수반응표 JJ
③ 규칙 한 줄시장 하나의 청산, 세 줄인데 독립은 둘
④ 어느 상자상자 2
⑤ 선대가 답하지 않는 것균형이 존재하는지. 선형화는 균형 근처에서만 맞는다

두 가지 경제 법칙이 각각 하나씩 준다.

하나, 왈라스 법칙. 모든 값에서 pTz(p)=0\vv{p}^{\mathsf T}\vv{z}(\vv{p}) = 0 이다. "사람들이 가진 돈만큼만 산다"는 뜻이다. 이것을 p\vv{p} 로 미분하고 균형에서 z=0\vv{z} = \vv{0} 을 넣으면

pTJ=0TJTp=0\vv{p}^{\mathsf T}J = \vv{0}^{\mathsf T} \qquad\Longleftrightarrow\qquad J^{\mathsf T}\vv{p}^{*} = \vv{0}

이다. (35)의 식은 p\vv{p}^{*}좌영공간에 있다는 말이다.

둘, 0차 동차성. 모든 값에 같은 배율을 곱해도 수요가 안 바뀐다. 곧 z(λp)=z(p)\vv{z}(\lambda\vv{p}) = \vv{z}(\vv{p}) 다. 오일러 정리를 쓰면

Jp=0J\vv{p}^{*} = \vv{0}

이다. (36)의 식은 p\vv{p}^{*}영공간에 있다는 말이다.

p=(1,2,3)\vv{p}^{*} = (1, 2, 3) 을 넣어 검산하면 둘 다 0\vv{0} 이 나온다. 그러므로 detJ=0\det J = 0 이고 rankJ=2\rank J = 2 다. 연구원 말이 맞다.

이제 팀장의 둘째 물음이다. 아무거나 버려도 되는가. 셋째 값을 p3=3p_3 = 3 으로 고정하고 남은 둘로 2×22\times2 계를 만들면

[19251][p1p2]=[153],det=9(p1, p2)=(1, 2)\begin{bmatrix}19&-2\\-5&1\end{bmatrix}\begin{bmatrix}p_1\\p_2\end{bmatrix} = \begin{bmatrix}15\\-3\end{bmatrix}, \qquad \det = 9 \qquad\Longrightarrow\qquad (p_1,\ p_2) = (1,\ 2)

가 나온다. 다른 줄을 버려도 마찬가지다. 세 경우의 행렬식이 각각 3, -6, 9전부 0이 아니다. 이 표에서는 아무거나 버려도 된다.

한걸음 더 — 그런데 늘 그렇지는 않다. 어떤 재화의 균형가격이 0이면 (자유재라면) 이야기가 달라진다. p=(1,2,0)\vv{p}^{*} = (1, 2, 0) 인 표를 만들어 보면

J=[422211001]J' = \begin{bmatrix}4&-2&2\\-2&1&-1\\0&0&1\end{bmatrix}

이고 (38)Jp=JTp=0J'\vv{p}^{*} = J'^{\mathsf T}\vv{p}^{*} = \vv{0} 을 만족한다. 그런데 p3=0p_3 = 0 을 고정하고 2×22\times2 를 만들면 어느 줄을 버려도 행렬식이 0이다. 1행과 2행이 서로 비례하기 때문이다.

값이 0인 재화를 기준으로 잡으면 안 된다. 기준은 반드시 양의 값을 갖는 재화로 골라야 한다. 이것이 (37)의 답이 우연히 잘 된 이유이기도 하다.

회수 : L06 영공간 · L09 독립 · L10 좌영공간 · L14 직교


33. 5년 전 표로 올해 표 만들기 ★★★

세우기 칸을 직접 미지수로 두면 옛 표의 정보가 버려진다. 옛 표를 살리면서 새 합계를 맞추려면 무엇을 미지수로 둘 것인가.

번역 33
사다리이 문제에서
① 세로로 세울 것칸이 아니라 행 배율 r\vv{r} 과 열 배율 s\vv{s}, 넷
② 이미 아는 수옛 표 Z0Z_0 와 새 합계
③ 규칙 한 줄합계 하나마다 한 줄, 네 줄인데 독립은 셋
④ 어느 상자상자 2
⑤ 선대가 답하지 않는 것옛 구조가 아직 유효하다는 가정. 산업이 바뀌었으면 무의미하다

새 표를 이렇게 둔다.

Z=diag(r)Z0diag(s)Zij=ri(Z0)ijsjZ = \operatorname{diag}(\vv{r})\,Z_0\,\operatorname{diag}(\vv{s}) \qquad\Longleftrightarrow\qquad Z_{ij} = r_i\,(Z_0)_{ij}\,s_j

(39)에서 왼쪽 대각행렬이 행을 늘리고 오른쪽이 열을 늘린다. 옛 표의 0인 칸은 0으로 남는다. 구조가 보존된다는 뜻이고, 이것이 이 방법의 값이다.

미지수는 m+n=4m + n = 4 개인데 자유도가 하나 모자란다. (kr, s/k)(k\vv{r},\ \vv{s}/k) 가 같은 ZZ 를 주기 때문이다.

실질 자유도=m+n1=3\text{실질 자유도} = m + n - 1 = 3

조건도 넷인데 "행 합계의 총합 = 열 합계의 총합"이 이미 걸려 있어 독립인 것이 셋이다. (40)의 자유도와 딱 맞는다. 상황m+n1m+n-1 이 여기서 또 나온다.

풀면 다음이 나온다.

r=(2, 1),s=(1, 12)Z=[20203020]\vv{r} = (2,\ 1), \qquad \vv{s} = \left(1,\ \tfrac12\right) \qquad\Longrightarrow\qquad Z = \begin{bmatrix}20&20\\30&20\end{bmatrix}

(41)의 행 합이 (40,50)(40, 50), 열 합이 (50,40)(50, 40) 으로 발표값과 정확히 맞는다.

배율 자체는 유일하지 않다. (r,s)(\vv{r}, \vv{s})(4,2)(4, 2)(12,14)(\frac12, \frac14) 로 바꿔도 같은 ZZ 가 나온다. 정해지는 것은 곱 risjr_i s_j 뿐이다.

실무에서 푸는 법. 비선형계를 직접 풀지 않고 행과 열을 번갈아 맞춘다.

반복ZZ
1회[19.1819.3130.8220.69]\begin{bmatrix}19.18 & 19.31\\ 30.82 & 20.69\end{bmatrix}
2회[19.9919.9930.0120.01]\begin{bmatrix}19.99 & 19.99\\ 30.01 & 20.01\end{bmatrix}
3회[20.0020.0030.0020.00]\begin{bmatrix}20.00 & 20.00\\ 30.00 & 20.00\end{bmatrix}

회당 오차가 약 1/1001/100 로 줄어 세 번이면 소수 넷째 자리까지 맞는다. 이것을 RAS 법이라 부른다.

빠지기 쉬운 곳 — 옛 표에 0인 칸이 있으면 새 표에서도 0이다. 만약 옛 표가 [100040]\begin{bmatrix}10&0\\0&40\end{bmatrix} 이었다면 행 합이 (10r1,40r2)(10r_1, 40r_2) 이고 열 합이 (10r1,40r2)(10r_1, 40r_2)행 합과 열 합이 같을 수밖에 없다. 목표가 (40,50)(40,50)(50,40)(50,40) 이면 40=5040 = 50 이라는 모순이 되어 답이 없다.

회수 : L03 대각행렬 곱 · L05 전치 · L09 자유도 세기


34. 합계만 공개된 표 — 복원 못 하는 정도를 세는 법 ★★☆

세우기 표를 합계로 보내는 것은 선형 사상이다. 그 사상의 랭크와 영공간을 세면 답이 나온다.

번역 34
사다리이 문제에서
① 세로로 세울 것아홉 칸을 편 벡터, 아홉
② 이미 아는 수합계 여섯
③ 규칙 한 줄합계 하나마다 한 줄, 여섯 줄인데 독립은 다섯
④ 어느 상자상자 2
⑤ 선대가 답하지 않는 것칸이 음수가 아니라는 것. 그것이 범위를 더 좁혀 준다

미지수 9개, 방정식 6줄인데 총합이 양쪽에서 같아야 하므로 독립인 것이 5줄이다.

rank=5dimN=95=4=(31)(31)\rank = 5 \qquad\Longrightarrow\qquad \dim N = 9 - 5 = 4 = (3-1)(3-1)

(42)(m1)(n1)(m-1)(n-1) 이 일반 공식이다. 일반적으로 세어 보면

dimN=mn(m+n1)=(m1)(n1)\dim N = mn - \left(m + n - 1\right) = (m-1)(n-1)

이고, (43)m+n1m+n-1(27)에서 본 그 수다. 합계를 만드는 사상의 랭크가 늘 m+n1m+n-1 이다.

3×33\times3 이면 2×2=42\times2 = 4 차원어치를 정할 수 없다.

영공간의 기저가 보기 좋다. i,ji, j 가 1 또는 2일 때

Eij=[](i,j) 에 +1, (i,3) 과 (3,j) 에 1, (3,3) 에 +1E_{ij} = \begin{bmatrix}\cdot\end{bmatrix} \quad\text{: } (i,j)\text{ 에 } +1,\ (i,3)\text{ 과 } (3,j)\text{ 에 } -1,\ (3,3)\text{ 에 } +1

인 네 개다. 예로 i=j=1i=j=1 이면

E11=[101000101]E_{11} = \begin{bmatrix}1&0&-1\\0&0&0\\-1&0&1\end{bmatrix}

이고 (45)의 행 합도 열 합도 전부 0이다. 이만큼을 더해도 합계가 안 바뀐다.

연구자의 둘째 물음에 답한다. 반례를 만들 수 있다.

Z=[102030203010301020],Z=[151530153510301020]Z = \begin{bmatrix}10&20&30\\20&30&10\\30&10&20\end{bmatrix}, \qquad Z' = \begin{bmatrix}15&15&30\\15&35&10\\30&10&20\end{bmatrix}

(46)의 두 표는 여섯 합계가 모두 60으로 같은데 아홉 칸 중 넷이 다르다. Z=Z+5E11Z' = Z + 5E_{11} 이기 때문이다.

한걸음 더 — 그러면 아예 손을 놓아야 하는가. 아니다. 두 가지가 남는다. 하나는 칸이 음수가 아니라는 조건이 범위를 좁혀 준다는 것이고, 다른 하나는 옛 표라는 추가 정보를 넣는 것이다. 그게 상황의 RAS 법이었다.

정보가 모자랄 때 답은 "못 푼다"가 아니라 "무엇을 더 가져올 것인가"다.

회수 : L06 영공간 · L07 자유변수 · L09 차원 · L10 네 부분공간


4막 · 기준을 만든다

답이 여럿일 때 하나를 고르려면 기준이 있어야 한다. 그리고 그 기준은 상황이 주지 않는다. 우리가 정한다.

이 막의 문제들은 전부 같은 모양이다. 줄이 모자라거나 아예 없고, "무엇을 가장 작게 만들 것인가"를 정하는 순간 계가 결정된다.


35. 흔들림이 가장 작은 배분 ★★★

세우기 조건이 답을 정해 주지 않는다. 그러면 무엇이 정해 주는가.

번역 35
사다리이 문제에서
① 세로로 세울 것비중 w\vv{w}, 셋
② 이미 아는 수1 하나뿐
③ 규칙 한 줄1Tw=1\vv{1}^{\mathsf T}\vv{w} = 1, 한 줄
④ 어느 상자상자 2 → 기준을 정하면 상자 1
⑤ 선대가 답하지 않는 것SS 를 어떻게 추정했는지. 표본에서 재면 오차가 크다

먼저 상황을 정직하게 적자. 미지수 셋에 줄 하나다. 해집합이 평면이다. 선형대수는 여기서 할 말이 없다.

우리가 기준을 만든다. "흔들림이 가장 작게"를 고르면 최소화 대상이 정해진다.

minw wTSwsubject to1Tw=1\min_{\vv{w}}\ \vv{w}^{\mathsf T}S\vv{w} \qquad\text{subject to}\qquad \vv{1}^{\mathsf T}\vv{w} = 1

(48)의 목적함수가 이차형식이다. L27에서 배운 그 이차형식이고, SS 가 양의 정부호이므로 최솟값이 존재한다(고윳값이 0.586,2,3.4140.586, 2, 3.414 로 전부 양수다).

제약 아래 최소를 찾는 조건을 쓴다. 라그랑주 승수 λ\lambda 를 붙이면

2Sw+λ1=0,1Tw=12S\vv{w} + \lambda\vv{1} = \vv{0}, \qquad \vv{1}^{\mathsf T}\vv{w} = 1

이고, (49)의 두 조건을 한 행렬에 쌓으면 4×44\times4 테두리 계가 된다.

[4201242102411110][w1w2w3λ]=[0001]\begin{bmatrix}4&2&0&1\\2&4&2&1\\0&2&4&1\\1&1&1&0\end{bmatrix} \begin{bmatrix}w_1\\w_2\\w_3\\\lambda\end{bmatrix} = \begin{bmatrix}0\\0\\0\\1\end{bmatrix}

(50)의 왼쪽 위가 2S2S 이고 테두리가 제약이다. 미지수가 넷으로 늘었지만 줄도 넷이라 상자 1이 됐다.

닫힌 꼴로도 쓸 수 있다. (49)의 첫 줄을 w\vv{w} 에 대해 풀면

w=λ2S11\vv{w} = -\frac{\lambda}{2}\,S^{-1}\vv{1}

이고, (51)의 식을 둘째 줄 1Tw=1\vv{1}^{\mathsf T}\vv{w} = 1 에 넣으면

λ21TS11=1λ2=11TS11-\frac{\lambda}{2}\,\vv{1}^{\mathsf T}S^{-1}\vv{1} = 1 \qquad\Longrightarrow\qquad -\frac{\lambda}{2} = \frac{1}{\vv{1}^{\mathsf T}S^{-1}\vv{1}}

이다. (52)의 값을 다시 (51)에 넣으면 λ\lambda 가 사라지고

w=S111TS11\vv{w} = \frac{S^{-1}\vv{1}}{\vv{1}^{\mathsf T}S^{-1}\vv{1}}

이다. detS=4\det S = 4 이고

S1=14[321242123]S11=14(2, 0, 2)=(12, 0, 12)S^{-1} = \tfrac14\begin{bmatrix}3&-2&1\\-2&4&-2\\1&-2&3\end{bmatrix} \qquad\Longrightarrow\qquad S^{-1}\vv{1} = \tfrac14(2,\ 0,\ 2) = \left(\tfrac12,\ 0,\ \tfrac12\right)

이므로 (54)에서 1TS11=1\vv{1}^{\mathsf T}S^{-1}\vv{1} = 1 이고 답이 그대로 나온다.

w=(12, 0, 12),wTSw=1,λ=2\vv{w}^{*} = \left(\tfrac12,\ 0,\ \tfrac12\right), \qquad \vv{w}^{*\mathsf T}S\vv{w}^{*} = 1, \qquad \lambda = -2

가운데 자산에 0을 준다. 1번과 3번이 서로 무관해서 둘을 반씩 섞으면 흔들림이 가장 잘 상쇄되기 때문이다.

검산. 균등배분 (13,13,13)(\frac13,\frac13,\frac13)109=1.111\frac{10}{9} = 1.111, 가운데를 공매도한 (1,1,1)(1,-1,1)2 로 둘 다 1보다 크다.

후보를 고를 때 성분합이 1인지 먼저 확인해야 한다. (1,1,0)(1,-1,0) 처럼 합이 0인 것은 애초에 비교 대상이 아니다. 돈을 다 넣지 않은 배분이기 때문이다.

왼쪽 등고선이 같은 흔들림을 주는 비중들이다. 가장 안쪽 점이 답이다.
제약(평면)이 답을 고른 것이 아니라 등고선(기준)이 골랐다.

Figure 3:왼쪽 등고선이 같은 흔들림을 주는 비중들이다. 가장 안쪽 점이 답이다. 제약(평면)이 답을 고른 것이 아니라 등고선(기준)이 골랐다.

빠지기 쉬운 곳w\vv{w} 에 음수가 나올 수 있다. 여기서는 안 나왔지만 공분산이 조금만 달라도 나온다. 공매도가 안 되는 계좌라면 w0\vv{w} \ge \vv{0} 을 넣어야 하고, 그러면 이차계획이 되어 이 책 밖이다.

회수 : L03 역행렬 · L08 유일해 · L25 대칭 · L27 양의 정부호


36. 제약이 붙으면 미지수가 하나 는다 ★★★

세우기 조건이 하나에 미지수가 셋이다. 문제 35와 같은 모양이다. 이번엔 승수가 무슨 뜻인지까지 읽어 보라.

번역 36
사다리이 문제에서
① 세로로 세울 것라인별 처리량 x\vv{x}그리고 승수 λ\lambda, 넷
② 이미 아는 수총량 12
③ 규칙 한 줄정류 조건 셋과 총량 하나, 넷
④ 어느 상자상자 1 (승수를 넣고 나면)
⑤ 선대가 답하지 않는 것라인마다 처리 용량 상한. 그것이 있으면 다시 부등식이다

요금이 x12+2x22+2x32x_1^2 + 2x_2^2 + 2x_3^2 이므로 이차형식으로 쓰면 계수행렬이 Q=diag(2,4,4)Q = \operatorname{diag}(2, 4, 4) 다(2계 도함수라 두 배가 붙는다).

min 12xTQxsubject to1Tx=12\min\ \tfrac12\vv{x}^{\mathsf T}Q\vv{x} \qquad\text{subject to}\qquad \vv{1}^{\mathsf T}\vv{x} = 12

정류 조건과 제약을 블록으로 쌓으면 KKT 계가 된다.

[Q11T0][xλ]=[012]\begin{bmatrix}Q & \vv{1}\\ \vv{1}^{\mathsf T} & 0\end{bmatrix} \begin{bmatrix}\vv{x}\\\lambda\end{bmatrix} = \begin{bmatrix}\vv{0}\\12\end{bmatrix}

(57)의 계를 풀면

x=(6, 3, 3),λ=12,det=32\vv{x}^{*} = (6,\ 3,\ 3), \qquad \lambda = -12, \qquad \det = -32

이다. 요금은 36+18+18=7236 + 18 + 18 = 72 만원으로 반장의 144보다 훨씬 싸고 균등배분의 80보다도 싸다.

(6,3,3)(6,3,3) 인가. 정류 조건 Qx=λ1Q\vv{x} = -\lambda\vv{1} 을 성분으로 보면 2x1=4x2=4x3=122x_1 = 4x_2 = 4x_3 = 12 다. 곧 한계비용이 세 라인에서 같아야 한다. 싼 라인에 더 보내되, 제곱이라 무한정 보낼 수는 없다.

이 점이 정말 최소인가. N(1T)N(\vv{1}^{\mathsf T}) 의 기저를 열로 세워 Z=[111001]Z = \begin{bmatrix}-1&-1\\1&0\\0&1\end{bmatrix} 로 두면

ZTQZ=[6226],고윳값=4, 8Z^{\mathsf T}QZ = \begin{bmatrix}6&2\\2&6\end{bmatrix}, \qquad \text{고윳값} = 4,\ 8

이고 (60)의 둘 다 양수다. 제약 위에서 곡률이 양수이므로 최소점이다. QQ 자체가 양의 정부호이니 이 확인은 사실 필요 없지만, 다음 문제에서는 필요하다.

회수 : L07 영공간의 기저 · L18 행렬식 · L25 대칭 · L27 정부호


37. 체증하는 품목이 하나 있는데도 최대인 이유 ★★★

세우기 연구원은 HH 를 통째로 봤다. 그런데 갈 수 있는 방향이 제한돼 있다. 그 제한 위에서 곡률을 재려면 무엇을 해야 하는가.

번역 37
사다리이 문제에서
① 세로로 세울 것갈 수 있는 방향 v\vv{v}, 예산을 유지해야 하니 2차원
② 이미 아는 수반응표 HH
③ 규칙 한 줄pTv=0\vv{p}^{\mathsf T}\vv{v} = 0, 한 줄
④ 어느 상자상자 5 (크기와 방향을 잰다)
⑤ 선대가 답하지 않는 것이 점이 1계 조건을 만족하는지. 여기서는 만족한다고 두었다

가격이 같으므로 p=(1,1,1)\vv{p} = (1,1,1) 이고, 예산을 유지하며 갈 수 있는 방향은 pTv=0\vv{p}^{\mathsf T}\vv{v} = 0 인 것들, 곧 N(pT)N(\vv{p}^{\mathsf T})2차원이다.

기저를 z1=(1,1,0)\vv{z}_1 = (1,-1,0), z2=(1,0,1)\vv{z}_2 = (1,0,-1) 로 잡아 Z=[111001]Z = \begin{bmatrix}1&1\\-1&0\\0&-1\end{bmatrix} 로 세운다. 그러면

Hz1=(1, 3, 0),Hz2=(1, 0, 3)ZTHZ=[2112]H\vv{z}_1 = (1,\ 3,\ 0), \qquad H\vv{z}_2 = (1,\ 0,\ 3) \qquad\Longrightarrow\qquad Z^{\mathsf T}HZ = \begin{bmatrix}-2&1\\1&-2\end{bmatrix}

성분을 하나만 손으로 확인해 보자. (1,1)(1,1) 자리는

z1THz1=(1,1,0)(1,3,0)=13=2\vv{z}_1^{\mathsf T}H\vv{z}_1 = (1,-1,0)\cdot(1,3,0) = 1 - 3 = -2

이고, (1,2)(1,2) 자리는 z1THz2=(1,1,0)(1,0,3)=1\vv{z}_1^{\mathsf T}H\vv{z}_2 = (1,-1,0)\cdot(1,0,3) = 1 이다. (63)의 계산이 (62)의 행렬 첫 칸과 맞는다.

그 행렬이 축소 헤시안이다. 예산평면 위에서의 곡률이다.

고윳값을 구하면 -1-3 으로 둘 다 음수다. 곧 어느 방향으로 가도 만족이 줄어든다. 이 점은 최대점이 맞다.

검산 두 가지. 커피를 tt 늘리고 빵을 tt 줄이면 v=(1,1,0)\vv{v} = (1,-1,0) 이고

vTHv=13=2만족 변화=12(2)t2=t2\vv{v}^{\mathsf T}H\vv{v} = 1 - 3 = -2 \qquad\Longrightarrow\qquad \text{만족 변화} = \tfrac12(-2)t^2 = -t^2

커피를 tt 늘리고 빵과 우유를 t2\frac t2 씩 줄이면 v=(1,12,12)\vv{v} = (1,-\frac12,-\frac12) 이고

vTHv=13434=12만족 변화=12(12)t2=t24\vv{v}^{\mathsf T}H\vv{v} = 1 - \tfrac34 - \tfrac34 = -\tfrac12 \qquad\Longrightarrow\qquad \text{만족 변화} = \tfrac12\left(-\tfrac12\right)t^2 = -\tfrac{t^2}{4}

(65)의 손해가 (64)보다 작다. 손해를 나눠 지면 덜 아프다. 그래도 여전히 음수다.

같은 판정을 행렬식으로도 할 수 있다. 유테두리 행렬을 만들면

B=[0111110010301003],detB3×3=2,detB=3B = \begin{bmatrix}0&1&1&1\\1&1&0&0\\1&0&-3&0\\1&0&0&-3\end{bmatrix}, \qquad \det B_{3\times3} = 2, \qquad \det B = -3

이고 (66)의 부호가 +,+, - 로 번갈아 간다. 이것이 제약 아래 최대의 부호 규칙이다. 다만 규칙을 외우기보다 ZTHZZ^{\mathsf T}HZ 로 환원하는 편이 안전하다.

회수 : L06 영공간 · L18 행렬식 · L19 여인수 · L27 정부호


38. 답이 평면이면 어느 점을 고르나 ★★☆

세우기 줄이 하나에 미지수가 셋이다. 또 평면이다. 이번에는 무엇을 기준으로 고를 것인가.

번역 38
사다리이 문제에서
① 세로로 세울 것최종수요 d\vv{d}, 셋
② 이미 아는 수목표 배출 296
③ 규칙 한 줄배출 총량, 한 줄
④ 어느 상자상자 3 (최소노름)
⑤ 선대가 답하지 않는 것왜 하필 노름을 최소로 하는가. 다른 기준도 얼마든지 있다

배출은 총산출에서 나오고 총산출은 최종수요에서 나온다. 두 단계를 이으면

cTx=cT(IA)1d=aTd\vv{c}^{\mathsf T}\vv{x} = \vv{c}^{\mathsf T}(I-A)^{-1}\vv{d} = \vv{a}^{\mathsf T}\vv{d}

이고, (67)a\vv{a}유발 배출계수다. 계산하면

(IA)1=[2.81.21.61.32.71.10.91.12.3]aT=(10,0,0)(IA)1=(28, 12, 16)(I-A)^{-1} = \begin{bmatrix}2.8&1.2&1.6\\1.3&2.7&1.1\\0.9&1.1&2.3\end{bmatrix} \qquad\Longrightarrow\qquad \vv{a}^{\mathsf T} = (10,0,0)(I-A)^{-1} = (28,\ 12,\ 16)

이다. (68)의 계수가 뜻하는 바가 재미있다. 제조와 서비스는 직접 오염을 전혀 안 내는데도 유발계수가 12와 16이다. 그들이 농림 제품을 쓰기 때문이다.

조건은 한 줄뿐이다.

28d1+12d2+16d3=29628d_1 + 12d_2 + 16d_3 = 296

(69)의 줄은 1×31\times3 행렬이라 랭크 1, 영공간 2차원이다. 기저는 (3,7,0)(-3, 7, 0)(4,0,7)(-4, 0, 7) 이고, 해집합이 평면 전체다.

기준을 정한다. "어느 부문에도 치우치지 않게"를 노름 최소로 옮기면 답이 유일해진다. L33의 최소노름 해다.

왜 답이 a\vv{a} 방향인지는 한 줄로 나온다. 해를 d=ta+n\vv{d} = t\,\vv{a} + \vv{n} (nN(aT)\vv{n} \in N(\vv{a}^{\mathsf T})) 으로 쪼개면 두 조각이 직교하므로

d2=t2a2+n2\lVert \vv{d} \rVert^2 = t^2\lVert\vv{a}\rVert^2 + \lVert\vv{n}\rVert^2

이고, (70)에서 n\vv{n} 은 목표에 아무 기여도 안 하면서 노름만 키운다. 그러니 n=0\vv{n} = \vv{0} 으로 두는 것이 최소다.

d=a296aTa=(28,12,16)2961184=(7, 3, 4)\vv{d}^{*} = \vv{a}\,\frac{296}{\vv{a}^{\mathsf T}\vv{a}} = (28,12,16)\cdot\frac{296}{1184} = (7,\ 3,\ 4)

(71)의 검산은 28(7)+12(3)+16(4)=196+36+64=29628(7) + 12(3) + 16(4) = 196 + 36 + 64 = 296 이다. 노름 제곱이 49+9+16=7449+9+16 = 74 다.

다른 후보와 견줘 본다.

후보d2\lVert\vv{d}\rVert^2
최소노름 (7,3,4)(7,3,4)74\mathbf{74}
균등 배분83.8
(10, 0, 1)(10,\ 0,\ 1)101
(0, 8, 12.5)(0,\ 8,\ 12.5)220.2
왼쪽에서 평면 위 어느 점이든 296을 정확히 맞춘다. 원점에서 평면에 내린 수선의
발이 최소노름 해다. 오른쪽에서 넷 다 목표를 맞추지만 크기가 다르다.

Figure 4:왼쪽에서 평면 위 어느 점이든 296을 정확히 맞춘다. 원점에서 평면에 내린 수선의 발이 최소노름 해다. 오른쪽에서 넷 다 목표를 맞추지만 크기가 다르다.

검산 한 번 더. d\vv{d}^{*} 를 넣으면 총산출이 (29.6, 21.6, 18.8)(29.6,\ 21.6,\ 18.8) 이고 배출이 10×29.6=29610 \times 29.6 = 296 으로 정확히 맞는다.

빠지기 쉬운 곳 — 최소노름이 “옳은” 답이 아니다. 단지 우리가 고른 기준일 뿐이다. "기존 수요에서 가장 적게 바뀌게"를 기준으로 삼으면 다른 답이 나오고, 그것도 똑같이 정당하다. 다섯째 칸에 그것을 적어야 한다.

회수 : L07 영공간 · L08 해집합 · L09 차원 · L33 최소노름 해


39. 네 번밖에 못 도는 실험 ★★☆

세우기 네 조합을 고르면 4×44\times4 행렬이 하나 정해진다. 그 행렬의 무엇이 좋고 나쁨을 정하는가.

번역 39
사다리이 문제에서
① 세로로 세울 것평균과 세 효과, 넷
② 이미 아는 수네 번의 수율
③ 규칙 한 줄실험 한 번마다 한 줄, 네 줄
④ 어느 상자상자 5 (부피를 잰다)
⑤ 선대가 답하지 않는 것인자끼리 함께 작용하는 효과. 네 줄로는 못 잰다

낮음을 -1, 높음을 +1 로 코드화하고 열을 (상수항, A, B, C)로 세운다. 세 가지 선택을 견줘 보자.

선택 1(+,,)(+,-,-), (,+,)(-,+,-), (,,+)(-,-,+), (+,+,+)(+,+,+)

X1=[1111111111111111],X1TX1=4I,detX1=16X_1 = \begin{bmatrix}1&1&-1&-1\\1&-1&1&-1\\1&-1&-1&1\\1&1&1&1\end{bmatrix}, \qquad X_1^{\mathsf T}X_1 = 4I, \qquad \lvert\det X_1\rvert = 16

(72)에서 네 열이 서로 직교다. 상황8I8I 와 같은 구조다.

선택 2 — 전부 낮음에서 시작해 하나씩만 올린다

X2=[1111111111111111],detX2=8X_2 = \begin{bmatrix}1&-1&-1&-1\\1&1&-1&-1\\1&-1&1&-1\\1&-1&-1&1\end{bmatrix}, \qquad \lvert\det X_2\rvert = 8

(73)의 값을 보려면 1행을 나머지에서 빼면 된다. (0,2,0,0)(0,2,0,0), (0,0,2,0)(0,0,2,0), (0,0,0,2)(0,0,0,2) 가 되어 행렬식이 1×23=81 \times 2^3 = 8 이다.

선택 3 — 냉각을 네 번 다 "높음"으로 둔다

detX3=0\lvert\det X_3\rvert = 0

(74)의 값이 0인 이유가 명확하다. 냉각 열이 상수항 열과 똑같다. 열이 종속이므로 냉각 효과와 전체 평균을 갈라낼 수 없다.

선택detX\lvert\det X\rvertdet(XTX)\det(X^{\mathsf T}X)판정
116\mathbf{16}256\mathbf{256}최선
2864부피가 절반
300못 잰다

detX\lvert\det X\rvert 가 왜 좋고 나쁨을 정하는가. L20에서 행렬식이 부피였다. XX 의 행들이 만드는 부피가 클수록 네 점이 서로 멀리 떨어져 있다는 뜻이고, 그만큼 효과를 또렷이 가를 수 있다.

선택 1이 4차 하다마르 상한 16을 정확히 달성한다. 성분이 ±1\pm14×44\times4 행렬이 가질 수 있는 최대 행렬식이 44/2=164^{4/2} = 16 이고, 그것은 열이 직교일 때만 나온다.

빠지기 쉬운 곳 — 선택 3은 실험을 아무리 반복해도 못 고친다. 자료의 양이 아니라 자료의 방향 문제다. 상황에서 본 것과 같은 이야기다.

회수 : L09 독립 · L16 최소제곱 · L18 행렬식 · L20 부피


40. 이론에 어긋난 추정표를 가장 덜 고치기 ★★★

세우기 아홉 칸을 R9\R^9 의 한 점으로 보라. 그러면 "이론에 맞는 표들"은 무엇이고, "가장 적게 고친다"는 무슨 뜻인가.

번역 40
사다리이 문제에서
① 세로로 세울 것고친 표 SS, 아홉 칸
② 이미 아는 수추정표 MM
③ 규칙 한 줄대칭 조건 세 줄 (s12=s21s_{12}=s_{21} 등)
④ 어느 상자상자 3
⑤ 선대가 답하지 않는 것왜 프로베니우스 노름인가. 칸마다 정밀도가 다르면 가중해야 한다

행렬도 벡터다. 아홉 칸을 R9\R^9 의 점으로 보고 내적을 이렇게 정한다.

X,Y=tr(XTY)=i,jXijYij\langle X, Y\rangle = \tr(X^{\mathsf T}Y) = \sum_{i,j}X_{ij}Y_{ij}

(76)의 내적이 그냥 성분끼리 곱해 더한 것이다. 행렬을 길게 편 벡터의 보통 내적이다.

이제 R9\R^9 이 두 조각으로 갈린다.

{X:X=XT}6차원  {X:X=XT}3차원=R9\underbrace{\{X : X = X^{\mathsf T}\}}_{6\text{차원}} \ \oplus\ \underbrace{\{X : X = -X^{\mathsf T}\}}_{3\text{차원}} = \R^{9}

(77)의 두 부분공간이 서로 직교다. 대칭행렬 SS 와 반대칭행렬 KK 에 대해 S,K=tr(STK)=tr(SK)\langle S,K\rangle = \tr(S^{\mathsf T}K) = \tr(SK) 인데, 이 값은 전치를 취하면 부호가 뒤집혀 자기 자신의 음수가 되므로 0이다.

그러면 가장 가까운 대칭행렬은 직교사영이다.

S=M+MT2=[0.40.10.10.10.40.10.10.10.4]S = \frac{M + M^{\mathsf T}}{2} = \begin{bmatrix}-0.4&0.1&0.1\\0.1&-0.4&0.1\\0.1&0.1&-0.4\end{bmatrix}

버려지는 조각은 반대칭 부분이다.

K=MMT2(1,3) 에 0.2, (3,1) 에 0.2, 나머지 0K = \frac{M - M^{\mathsf T}}{2} \quad\text{: } (1,3)\text{ 에 } 0.2,\ (3,1)\text{ 에 } -0.2,\ \text{나머지 } 0

(78)의 표와 (79)에서 +0.3-0.1 의 평균 0.1 을 양쪽에 넣고, 차이의 절반 0.2 를 버린 것이다.

피타고라스가 성립한다.

M2=S2+K20.62=0.54+0.08\lVert M\rVert^2 = \lVert S\rVert^2 + \lVert K\rVert^2 \qquad\Longleftrightarrow\qquad 0.62 = 0.54 + 0.08
왼쪽이 추정표, 가운데가 남긴 것, 오른쪽이 버린 것이다. 버린 조각이
남긴 것과 직교하기 때문에 이것이 가장 적게 고친 결과다.

Figure 5:왼쪽이 추정표, 가운데가 남긴 것, 오른쪽이 버린 것이다. 버린 조각이 남긴 것과 직교하기 때문에 이것이 가장 적게 고친 결과다.

고친 표가 이론의 다른 조건도 만족하는가. 고윳값을 보면 0.2,0.5,0.5-0.2, -0.5, -0.5 로 전부 음수다. 음의 정부호이므로 "값이 오르면 수요가 준다"는 조건도 맞는다. 운이 좋았다 — 대칭으로 고친다고 정부호까지 따라오는 것은 아니다.

빠지기 쉬운 곳(76)의 내적은 아홉 칸을 똑같이 중요하게 본다. 어떤 칸은 표본이 많아 정밀하고 어떤 칸은 아니라면, 가중 내적을 써야 하고 그러면 사영도 달라진다. 다섯째 칸에 적을 것이 이것이다.

회수 : L11 행렬공간 · L15 투영 · L25 대칭 · L27 정부호


41. "통제한다"는 말이 자료에 하는 일 ★★☆

세우기 다중회귀를 한 번에 푸는 대신 두 단계로 쪼개 보라. 그러면 "통제"가 눈에 보인다.

번역 41
사다리이 문제에서
① 세로로 세울 것두 계수
② 이미 아는 수매출 편차
③ 규칙 한 줄분기 하나마다 한 줄, 네 줄
④ 어느 상자상자 3
⑤ 선대가 답하지 않는 것통제해도 인과는 안 나온다. 빠진 변수가 또 있을 수 있다

먼저 답부터. XTX=[20884]X^{\mathsf T}X = \begin{bmatrix}20&8\\8&4\end{bmatrix} 이고 XTy=(48,20)X^{\mathsf T}\vv{y} = (48, 20) 이므로

β=116[48820][4820]=116(192160, 384+400)=(2, 1)\vv{\beta} = \frac{1}{16}\begin{bmatrix}4&-8\\-8&20\end{bmatrix}\begin{bmatrix}48\\20\end{bmatrix} = \frac{1}{16}(192-160,\ -384+400) = (2,\ 1)

이고 단순회귀는 x1Ty/x1Tx1=48/20=2.4\vv{x}_1^{\mathsf T}\vv{y}/\vv{x}_1^{\mathsf T}\vv{x}_1 = 48/20 = 2.4 다.

이제 두 단계로 쪼갠다. 이것이 FWL 정리다.

1단계. 광고비에서 가격으로 설명되는 부분을 뺀다.

x~1=x1x1Tx2x2Tx2x2=(3,1,1,3)84(1,1,1,1)=(1, 1, 1, 1)\tilde{\vv{x}}_1 = \vv{x}_1 - \frac{\vv{x}_1^{\mathsf T}\vv{x}_2}{\vv{x}_2^{\mathsf T}\vv{x}_2}\vv{x}_2 = (-3,-1,1,3) - \frac{8}{4}(-1,-1,1,1) = (-1,\ 1,\ -1,\ 1)

(82)의 잔차가 가격으로 설명되지 않는 광고비다. 이것이 통제의 실체다.

2단계. 그 잔차로 매출을 잰다.

x~1Tyx~1Tx~1=6+(4)+(2)+84=84=2.0\frac{\tilde{\vv{x}}_1^{\mathsf T}\vv{y}}{\tilde{\vv{x}}_1^{\mathsf T}\tilde{\vv{x}}_1} = \frac{6+(-4)+(-2)+8}{4} = \frac{8}{4} = 2.0

(83)의 값이 (81)의 첫 성분과 정확히 같다. 한 번에 푼 것과 두 단계로 쪼갠 것이 같은 답을 준다.

왜 2.4가 2.0으로 내려가는가. 차이를 분해하면

2.4=2.0광고비의 몫+1.0가격 계수×0.4x1Tx2/x1Tx12.4 = \underbrace{2.0}_{\text{광고비의 몫}} + \underbrace{1.0}_{\text{가격 계수}}\times\underbrace{0.4}_{\vv{x}_1^{\mathsf T}\vv{x}_2/\vv{x}_1^{\mathsf T}\vv{x}_1}

(84)0.4가격을 광고비에 회귀했을 때의 기울기다. 광고를 늘린 분기에 가격도 올렸으므로, 단순회귀의 2.4에는 가격의 몫이 섞여 있었다.

이것이 누락변수 편의다. 편의의 크기는 (빠진 변수의 계수) × (두 변수의 관계)다.

검산. 잔차 e=(1,1,1,1)\vv{e} = (1,-1,-1,1) 이 두 설명변수와 내적이 0이고, 피타고라스가 정수로 맞는다. yTy=120\vv{y}^{\mathsf T}\vv{y} = 120, 적합값 제곱합 116, 잔차 제곱합 4, R2=116/120=29/30R^2 = 116/120 = 29/30.

회수 : L14 직교 · L15 투영 · L16 최소제곱


42. 두 공장을 한 덩어리로 놓으면 부호가 뒤집힌다 ★★☆

세우기 여섯 점을 한꺼번에 놓은 것이 문제다. 공장 구분을 계에 넣으려면 무엇을 미지수로 더해야 하는가.

번역 42
사다리이 문제에서
① 세로로 세울 것기울기 하나 그리고 공장별 절편 둘, 셋
② 이미 아는 수생산량 여섯
③ 규칙 한 줄작업자 하나마다 한 줄, 여섯 줄
④ 어느 상자상자 3
⑤ 선대가 답하지 않는 것공장이 왜 다른지. 설비인지 제품인지는 자료가 말 안 한다

통합 회귀부터. 전체 평균 (4,8)(4, 8) 을 빼면 xc=(3,2,1,1,2,3)\vv{x}_c = (-3,-2,-1,1,2,3), yc=(2,3,4,4,3,2)\vv{y}_c = (2,3,4,-4,-3,-2) 이고

기울기=xcTycxcTxc=3228=87=1.143\text{기울기} = \frac{\vv{x}_c^{\mathsf T}\vv{y}_c}{\vv{x}_c^{\mathsf T}\vv{x}_c} = \frac{-32}{28} = -\frac87 = -1.143

이다. (85)의 기울기가 인사팀의 답이다. 계산은 맞다.

공장 더미를 넣는다. DD6×26\times2 공장 표시 행렬로 두고 y=xβ+Dα+u\vv{y} = \vv{x}\beta + D\vv{\alpha} + \vv{u} 를 푼다.

DTD=diag(3,3)D^{\mathsf T}D = \operatorname{diag}(3,3) 이므로 사영을 지우는 행렬이

MD=ID(DTD)1DTM_D = I - D(D^{\mathsf T}D)^{-1}D^{\mathsf T}

이고, (86)의 행렬이 블록대각이라 각 블록이 I313J3I_3 - \frac13 J_3 다. 곧 각 공장 안에서 평균을 빼는 것이다. 계산할 필요도 없이 뜻이 읽힌다.

MDM_D 를 씌우고 기울기를 재면

β=(MDx)T(MDy)(MDx)T(MDx)=+1\beta = \frac{(M_D\vv{x})^{\mathsf T}(M_D\vv{y})}{(M_D\vv{x})^{\mathsf T}(M_D\vv{x})} = +1

이다. (87)에서 부호가 뒤집혔다. 공장별 절편은 가 공장 9, 나 공장 -1 이다.

왼쪽이 인사팀의 그림이고 오른쪽이 반장의 그림이다. 같은 여섯 점이다.
두 덩어리의 높이 차이가 통합 직선을 아래로 끌어내렸다.

Figure 6:왼쪽이 인사팀의 그림이고 오른쪽이 반장의 그림이다. 같은 여섯 점이다. 두 덩어리의 높이 차이가 통합 직선을 아래로 끌어내렸다.

검산. 가 공장 2년차 예측이 9+1(2)=119 + 1(2) = 11 로 실제와 같고, 나 공장 2년차가 1+1(6)=5-1 + 1(6) = 5 로 역시 같다. 잔차가 전부 0이므로 각 공장 안에서 세 점이 정확히 한 직선 위에 있다. rankMD=62=4\rank M_D = 6 - 2 = 4 다.

무엇이 벌어진 것인가. 나 공장은 경력이 많은데 생산량이 낮다. 공장 자체가 다르기 때문이다(설비가 낡았든 제품이 어렵든). 그 차이를 모형에 넣지 않으면 공장 차이가 경력 효과로 잘못 읽힌다.

빠지기 쉬운 곳 — 반대 방향의 실수도 있다. 공장 더미를 넣으면 공장 사이의 정보를 통째로 버린다. 만약 "경력이 많은 사람이 좋은 공장으로 옮겨간다"가 알고 싶은 것이었다면, 더미를 넣는 순간 그 답을 못 보게 된다.

통제할 것과 안 할 것을 정하는 일은 자료가 아니라 물음이 정한다.

회수 : L10 네 부분공간 · L11 랭크 · L15 투영 · L16 최소제곱


43. 뒤집을 수 없는 표를 랭크를 낮춰 다시 짓기 ★★☆

세우기 아홉 칸을 세 숫자로 줄였다. 그 대가로 무엇을 잃고 무엇을 얻는가.

번역 43
사다리이 문제에서
① 세로로 세울 것최소분산 비중 w\vv{w}, 셋
② 이미 아는 수요인 반응 b\vv{b} 와 잡음 분산
③ 규칙 한 줄합이 1, 한 줄
④ 어느 상자상자 5 (그리고 기준을 정하면 1)
⑤ 선대가 답하지 않는 것요인이 정말 하나뿐인지. 둘이면 이 표가 틀린다

요인모형으로 공분산을 짓는다.

Σ=bbT+D=[2232563610],D=I\Sigma = \vv{b}\vv{b}^{\mathsf T} + D = \begin{bmatrix}2&2&3\\2&5&6\\3&6&10\end{bmatrix}, \qquad D = I

(88)bbT\vv{b}\vv{b}^{\mathsf T}랭크 1이다(L11). 0이 아닌 고윳값이 bTb=14\vv{b}^{\mathsf T}\vv{b} = 14 하나뿐이므로

고윳값(Σ)=15, 1, 1\text{고윳값}(\Sigma) = 15,\ 1,\ 1

이다. (89)에서 큰 것 하나와 작은 것 둘로 갈린다. 큰 쪽이 공통 요인, 작은 쪽이 개별 잡음이다. 보강 1의 주성분 이야기와 같은 그림이다.

역행렬도 닫힌 꼴로 나온다. 셔먼-모리슨을 쓰면

Σ1=IbbT1+bTb=IbbT15\Sigma^{-1} = I - \frac{\vv{b}\vv{b}^{\mathsf T}}{1 + \vv{b}^{\mathsf T}\vv{b}} = I - \frac{\vv{b}\vv{b}^{\mathsf T}}{15}

이다. (90)에서 3×33\times3 소거를 한 번도 안 했다. 아홉 칸을 세 숫자로 줄인 대가가 여기서 돌아온다.

(53)의 공식에 넣으면

Σ11=1b(bT1)15=(1,1,1)(1,2,3)615=(0.6, 0.2, 0.2)\Sigma^{-1}\vv{1} = \vv{1} - \frac{\vv{b}(\vv{b}^{\mathsf T}\vv{1})}{15} = (1,1,1) - (1,2,3)\frac{6}{15} = (0.6,\ 0.2,\ -0.2)

이고 성분합이 0.6 이므로

w=(1, 13, 13),wTΣw=53\vv{w} = \left(1,\ \tfrac13,\ -\tfrac13\right), \qquad \vv{w}^{\mathsf T}\Sigma\vv{w} = \tfrac53

이다. (92)의 셋째 성분이 음수다. 3번 자산을 공매도한다.

왜 그런가. 3번이 요인에 가장 세게 반응하므로(b3=3b_3 = 3), 그것을 팔아 포트폴리오 전체의 요인 노출을 줄인다. 실제로

wTb=1+231=23\vv{w}^{\mathsf T}\vv{b} = 1 + \tfrac23 - 1 = \tfrac23

(93)의 값이 개별 반응 1,2,31, 2, 3 어느 것보다도 작다.

검산이 예쁘다. 분산을 요인 몫과 잡음 몫으로 쪼개면

wTΣw=(wTb)2+wTw=49+119=159=53\vv{w}^{\mathsf T}\Sigma\vv{w} = (\vv{w}^{\mathsf T}\vv{b})^2 + \vv{w}^{\mathsf T}\vv{w} = \tfrac49 + \tfrac{11}{9} = \tfrac{15}{9} = \tfrac53

(94)의 등식이 맞는다.

빠지기 쉬운 곳 — 요인이 하나라는 가정이 틀리면 이 표 전체가 틀린다. 표를 못 뒤집는 문제를 구조를 가정해 푼 것이고, 그 가정이 새 위험이다. 자유도를 9에서 3으로 줄인 대가다.

회수 : L11 랭크 1 · L21 고윳값 · L25 대칭 · L29 SVD · L35 주성분


44. 미지수가 숫자가 아니라 회전이다 ★★☆

세우기 각도를 미지수로 두면 비선형이 된다. 대신 무엇을 미지수로 두면 다룰 수 있는가.

번역 44
사다리이 문제에서
① 세로로 세울 것각도가 아니라 회전행렬 RR 자체
② 이미 아는 수도면 좌표와 측정 좌표
③ 규칙 한 줄점 하나마다 두 줄, 여덟 줄. 미지수는 넷인데 제약이 붙는다
④ 어느 상자상자 3 + 상자 5
⑤ 선대가 답하지 않는 것부품이 늘어났거나 뒤집혔을 가능성. 회전만 허용했다

각도 θ\theta 를 미지수로 두면 cosθ\cos\theta, sinθ\sin\theta 가 섞여 1차가 아니다. 행렬 RR 전체를 미지수로 올리고, 대신 조건을 붙인다.

minR ARTBF2subject toRTR=I\min_{R}\ \lVert AR^{\mathsf T} - B\rVert_F^2 \qquad\text{subject to}\qquad R^{\mathsf T}R = I

(95)에서 AA 의 행이 도면 점, BB 의 행이 측정 점이다.

목적함수를 펼쳐 보자.

ARTBF2=ARTF22tr ⁣(RATB)+BF2\lVert AR^{\mathsf T} - B\rVert_F^2 = \lVert AR^{\mathsf T}\rVert_F^2 - 2\tr\!\left(R A^{\mathsf T}B\right) + \lVert B\rVert_F^2

(96)의 첫 항은 회전이 길이를 안 바꾸므로 ARTF2=AF2\lVert AR^{\mathsf T}\rVert_F^2 = \lVert A\rVert_F^2 이고, 셋째 항도 RR 과 무관하다. RR 이 들어 있는 것은 가운데 항뿐이고 앞에 -2 가 붙어 있다. 그러니 최소화가 최대화로 바뀐다.

maxRTR=I tr ⁣(RTM),M=ibiaiT=[4.81.66.41.2]\max_{R^{\mathsf T}R=I}\ \tr\!\left(R^{\mathsf T}M\right), \qquad M = \sum_i \vv{b}_i\vv{a}_i^{\mathsf T} = \begin{bmatrix}4.8&-1.6\\6.4&1.2\end{bmatrix}

(97)MM 을 SVD 하면 답이 바로 나온다.

M=UΣVT,σ=(8, 2),V=I,U=[0.60.80.80.6]M = U\Sigma V^{\mathsf T}, \qquad \sigma = (8,\ 2), \qquad V = I, \qquad U = \begin{bmatrix}0.6&-0.8\\0.8&0.6\end{bmatrix}

(98)에서 최적 회전이 R=UVTR = UV^{\mathsf T} 다.

R=[0.60.80.80.6],θ=arccos(0.6)53.13R = \begin{bmatrix}0.6&-0.8\\0.8&0.6\end{bmatrix}, \qquad \theta = \arccos(0.6) \approx 53.13^{\circ}

검산. Ra1=(1.2,1.6)=b1R\vv{a}_1 = (1.2, 1.6) = \vv{b}_1 이고 나머지 셋도 정확히 맞는다. 잔차가 0이다. 부품은 멀쩡하고 그냥 비뚤게 놓였을 뿐이었다.

왜 SVD 가 답을 주는가. tr(RTUΣVT)=tr(VTRTUΣ)\tr(R^{\mathsf T}U\Sigma V^{\mathsf T}) = \tr(V^{\mathsf T}R^{\mathsf T}U\Sigma) 이고, Z=VTRTUZ = V^{\mathsf T}R^{\mathsf T}U 도 직교행렬이라 대각 성분이 1을 넘을 수 없다. 그러니 tr(ZΣ)σ1+σ2\tr(Z\Sigma) \le \sigma_1 + \sigma_2 이고 등호는 Z=IZ = I, 곧 R=UVTR = UV^{\mathsf T} 일 때다.

빠지기 쉬운 곳detR=1\det R = -1 이 나오면 회전이 아니라 반사다. 부품을 뒤집어야 맞는다는 뜻이고, 대개는 측정을 잘못한 것이다. 막으려면 UU 의 마지막 열 부호를 뒤집어 det=+1\det = +1 을 강제한다.

회수 : L16 최소제곱 · L17 직교행렬 · L29 SVD · L30 선형변환 · L34 다섯 분해


코다 · 표시가 없다

앞의 스물처럼 위치가 답을 알려주지 않는다.


45. ★★☆

번역 45
사다리이 문제에서
① 세로로 세울 것정착 상태, 그리고 “탓의 크기”
② 이미 아는 수변화 규칙 AA
③ 규칙 한 줄x=Ax+d\vv{x} = A\vv{x} + \vv{d}
④ 어느 상자상자 4
⑤ 선대가 답하지 않는 것추정한 AA 의 오차. 0.5 근처면 판정이 뒤집힐 수 있다

수렴하는지부터 본다. 대각합이 0.3, 행렬식이 0.020.12=0.10.02 - 0.12 = -0.1 이므로 특성방정식이 λ20.3λ0.1=0\lambda^2 - 0.3\lambda - 0.1 = 0 이고

λ=0.5,0.2ρ(A)=0.5<1\lambda = 0.5,\quad -0.2 \qquad\Longrightarrow\qquad \rho(A) = 0.5 < 1

이다. (101)에서 수렴한다. 상황의 급수 조건 그대로다.

손으로 더 쉽게 보는 법이 있다. 두 열의 합이 각각 0.2+0.3=0.50.2+0.3 = 0.5, 0.4+0.1=0.50.4+0.1 = 0.5 로 같다. 곧

1TA=0.51T\vv{1}^{\mathsf T}A = 0.5\,\vv{1}^{\mathsf T}

이므로 (102)에서 0.5왼쪽 고유벡터 1\vv{1} 에 붙은 고윳값이다. 상황에서 열 합 0.8 을 읽은 것과 같다.

이제 총증폭을 잰다. 열 합이 전부 0.5 이므로

1T(IA)1=110.51T=21T\vv{1}^{\mathsf T}(I-A)^{-1} = \frac{1}{1-0.5}\vv{1}^{\mathsf T} = 2\,\vv{1}^{\mathsf T}

이고, (103)에서 어느 공정에 충격을 주든 총 파급이 정확히 2배다.

둘째 물음은 다른 벡터가 답한다. "탓이 크다"를 "정착 상태에서 차지하는 몫이 크다"로 읽으면 오른쪽 고유벡터를 봐야 한다.

Av=0.5vv=(4, 3)A\vv{v} = 0.5\,\vv{v} \qquad\Longrightarrow\qquad \vv{v} = (4,\ 3)

(104)에서 1공정이 4/74/7, 2공정이 3/73/7 을 차지한다.

빠지기 쉬운 곳 — 둘째 고윳값이 -0.2음수다. 수렴이 한쪽에서 다가가는 것이 아니라 위아래로 진동하며 다가간다. 주마다 오르내리는 것을 보고 "모형이 틀렸다"고 판단하면 안 된다.

회수 : L21 고윳값 · L22 급수 · L24 왼쪽·오른쪽 고유벡터


46. ★★★

번역 46
사다리이 문제에서
① 세로로 세울 것제품별 감축량 셋, 그리고 승수 하나
② 이미 아는 수총 감축량 12
③ 규칙 한 줄총량 하나
④ 어느 상자상자 1 (기준을 정한 뒤)
⑤ 선대가 답하지 않는 것"불만의 제곱"이 옳은 척도인지. 그건 영업의 판단이다

이것은 문제 36완전히 같은 문제다. 폐수가 주문으로 바뀌었을 뿐이다.

Q=diag(2, 4, 4),1Tx=12x=(6, 3, 3)Q = \operatorname{diag}(2,\ 4,\ 4), \qquad \vv{1}^{\mathsf T}\vv{x} = 12 \qquad\Longrightarrow\qquad \vv{x}^{*} = (6,\ 3,\ 3)

(105)에서 총 불만이 72다. 생산팀장의 균등배분은 80이다.

여기서 볼 것은 답이 아니라 두 팀장의 말이다.

생산팀장의 "공평"은 감축량을 같게 하는 것이고, 영업팀장의 "공평"은 불만을 같게 하는 것이다. 후자를 계산해 보면 x12=2x22=2x32x_1^2 = 2x_2^2 = 2x_3^2xi=12\sum x_i = 12 를 걸어 x=(122/(2+2), )\vv{x} = (12\sqrt2/(\sqrt2+2),\ \ldots) 이 되고, 어느 쪽도 (6,3,3)(6,3,3) 이 아니다.

(6,3,3)(6,3,3) 은 셋째 기준, 곧 총 불만을 최소로 하는 것의 답이다. 그때 한계 불만이 같아진다.

2x1=4x2=4x3=122x_1 = 4x_2 = 4x_3 = 12

빠지기 쉬운 곳 — 감축량에 상한이 있으면(제품 1의 남은 작업량이 5뿐이라면) x1=6x_1 = 6 이 불가능하다. 그러면 부등식이 붙어 이차계획이 되고, 답이 (5, 3.5, 3.5)(5,\ 3.5,\ 3.5) 로 바뀐다. 선형계가 낸 답이 실행 가능한지 반드시 확인하자.

회수 : L25 대칭 · L27 정부호 · L07 영공간


이 편의 회수표

문제현실의 말선형대수의 말상자회수
25결과값도 아직 모른다vv 를 미지수에 편입, 3×33\times31L03 L05 L20
26등호로 된 줄이 없다여유변수, (53)\binom53 기저해2L06 L07 L08 L09
27매번 다시 푸나B1=EB1B'^{-1}=EB^{-1}1L02 L03 L04 L07
28잔업 시급 얼마까지BTy=cBB^{\mathsf T}\vv{y}=\vv{c}_B1L03 L05 L08 L10
29경로를 다 세야 하나노드 전위와 축소비용2L07 L08 L10 L12
30왜 하나가 아니라 둘인가rankT=m+n1\rank T = m+n-12L05 L07 L09 L12
31여섯인데 답이 여럿dimN(A)=1\dim N(A)=1, 이득 배분2L06 L07 L09 L12
32셋째 줄을 버려도 되나Jp=0J\vv{p}=\vv{0}JTp=0J^{\mathsf T}\vv{p}=\vv{0}2L06 L09 L10 L14
33옛 표를 살리려면diag(r)Z0diag(s)\operatorname{diag}(\vv{r})Z_0\operatorname{diag}(\vv{s})2L03 L05 L09
34합계만으로 얼마나 아나영공간 (m1)(n1)(m-1)(n-1)2L06 L07 L09 L10
35조건이 하나뿐테두리 계, S11S^{-1}\vv{1}2→1L03 L08 L25 L27
36가장 싸게 나누기KKT, 한계비용 균등1L07 L18 L25 L27
37체증인데 최대인가ZTHZZ^{\mathsf T}HZ 축소 헤시안5L06 L18 L19 L27
38권고안을 어느 것으로최소노름 해3L07 L08 L09 L33
39어느 넷을 고를까detX\lvert\det X\rvert, 하다마르5L09 L16 L18 L20
40가장 덜 고치기대칭 부분공간으로의 사영3L11 L15 L25 L27
41통제한다는 게 뭔가FWL, 두 번의 잔차화3L14 L15 L16
42부호가 뒤집혔다MDM_D 로 더미를 지운다3L10 L11 L15 L16
43못 뒤집는 표랭크1 + 대각, 셔먼-모리슨5L11 L21 L25 L29 L35
44몇 도 돌릴까R=UVTR=UV^{\mathsf T}3·5L16 L17 L29 L30 L34
45발산하나 정착하나왼쪽·오른쪽 고유벡터4L21 L22 L24
46공평하게 나누기세 가지 공평, 세 가지 답1L07 L25 L27

경제 12문제, 산업공학 10문제다.


마치며...

3막에서 없던 미지수를 발명했고, 4막에서 무엇을 최소로 할지 정했다.

다음 편에서는 마지막 일을 한다. 지금까지 우리가 정한 것들이 틀렸는지를 우리가 재는 법이다. 5막의 제목이 "의심한다"인 이유가 그것이다.


이번 글의 내용을 파이썬으로 확인해 보려면 보강 4-2 실습 노트북으로 넘어가면 된다. 스물둘의 답을 전부 검산하고, 기준을 바꿔 가며 답이 어떻게 움직이는지 보고, 전치를 빠뜨렸을 때 회전이 반대로 나오는 것과 자유재를 기준으로 잡았을 때 계가 무너지는 것을 직접 확인할 수 있다.