단위벡터 (Unit Vector)

수학
한 줄 정의: 크기(길이)가 정확히 1인 벡터로, 방향 정보만을 나타내고 싶을 때 사용합니다.

쉽게 풀면

나침반 바늘을 떠올려봅시다. 나침반 바늘은 "북쪽이 어느 방향인지"만 알려줄 뿐, 바늘 자체의 길이가 얼마나 되는지는 중요하지 않습니다. 벡터에서도 크기(길이)는 무시하고 방향만 딱 뽑아내고 싶을 때가 있는데, 이때 쓰는 것이 단위벡터입니다. 어떤 벡터든 자기 자신의 크기로 나누어 주면(성분을 벡터의 길이로 나누면) 방향은 그대로이면서 길이만 1로 줄어든 단위벡터를 만들 수 있습니다. 예를 들어 크기가 5인 벡터를 5로 나누면 크기가 1인 단위벡터가 되는 식입니다. 좌표축 방향의 기본 단위벡터(x축 방향은 흔히 i, y축 방향은 j로 표기)는 다른 모든 벡터를 성분으로 표현하는 기준 틀로도 쓰입니다.

왜 중요한가

단위벡터는 크기와 방향이라는 두 정보를 분리해서 다룰 수 있게 해주기 때문에, 물리학의 힘과 운동 방향 표현, 컴퓨터 그래픽스의 조명·반사 계산, 로보틱스의 자세 제어 등 방향 정보 자체가 핵심인 여러 공학·과학 분야에서 기본 도구로 쓰입니다. 서로 다른 크기를 가진 벡터들을 방향만 놓고 비교하거나, 좌표계를 구성하는 기준 축을 정의할 때도 단위벡터가 표준적인 표현 방식이 됩니다.

논문에서는 이렇게 쓰입니다

"입사광의 진행 방향을 단위벡터로 정규화한 뒤, 표면 법선벡터와의 내적을 이용해 반사각을 계산하였다."

이 문장은 방향 정보만 비교하기 위해 벡터의 길이를 1로 맞춘(정규화한) 다음, 그 방향 벡터끼리 각도 계산에 이용했다는 뜻으로, 방향만이 중요하고 크기는 의미가 없는 물리량을 다룰 때 단위벡터로 정규화하는 절차가 논문에서 자주 등장합니다.

"로봇 팔 끝단의 이동 방향을 단위벡터로 표현하고, 이를 각 관절의 목표 각속도 벡터로 변환하는 제어 알고리즘을 설계하였다."

로보틱스 연구에서 로봇이 나아가야 할 방향을 단위벡터로 표준화해 나타낸 뒤, 이를 실제 관절을 움직이는 명령으로 바꾸는 계산에 활용했다는 뜻입니다.

"자기장 벡터를 단위벡터로 정규화하여 방향 성분만 추출한 뒤, 인접한 스핀들 간의 정렬 정도를 코사인 유사도로 평가하였다."

물성물리학 연구에서 자기장의 세기는 배제하고 방향 정보만 남긴 단위벡터를 이용해, 여러 스핀이 서로 얼마나 같은 방향을 향하고 있는지를 정량적으로 비교했다는 의미입니다.

조금 더 깊게 보면

벡터를 단위벡터로 만드는 정규화 과정은 벡터의 각 성분을 그 벡터의 크기(노름, norm)로 나누는 것으로, 여기서 노름은 일반적으로 각 성분의 제곱합에 제곱근을 취한 유클리드 노름이 쓰이지만 분야에 따라 다른 정의의 노름을 사용하기도 합니다. 여러 개의 단위벡터가 서로 직교하면서 하나의 좌표계를 이루는 경우를 정규직교기저(orthonormal basis)라 부르는데, 이런 기저를 사용하면 임의의 벡터를 각 단위벡터와의 내적만으로 간단히 성분 분해할 수 있어 좌표 변환이나 벡터 연산이 크게 단순화됩니다.

주의할 점

벡터를 단위벡터로 만드는 과정("정규화")에서 영벡터(크기가 0인 벡터)는 나눗셈이 불가능하므로 단위벡터를 만들 수 없다는 점에 주의해야 합니다. 또한 단위벡터는 방향 정보만 담고 있을 뿐 크기 정보가 사라지므로, 원래 벡터의 크기가 필요한 계산에서는 단위벡터에 원래의 크기를 다시 곱해 주어야 합니다. 벡터의 정사영이나 벡터의 외적 계산에서도 방향만 비교할 때는 먼저 단위벡터로 바꾸는 경우가 많습니다.

관련 용어