brunch

You can make anything
by writing

C.S.Lewis

by 김응석 Jul 06. 2022

AI시대를 위한 기초 수학 7

벡터의 덧셈과 스칼라곱

1. 벡터란?


벡터는 숫자의 순서쌍(Lists of Number)이라는 정의에서 시작해 보자.

숫자에 순서라는 의미를 부여했기 때문에 순서가 바뀌면 다른 벡터가 되는 것은 상식적인 것이다.

A라는 사람의 키와 몸무게가 (175Cm, 70Kg)이라면, B라는 사람에 대해서도 순서를 지켜야 한다.  즉, 똑같이 키와 몸무게 순으로 순서쌍을 만들어야 하는 것이다. 


일반적으로 숫자의 순서쌍인 벡터는 대괄호([ ])안에 표현을 한다.

[ 벡터의 표현 ]

위 A, B 벡터의 경우 두 개 숫자의 순서쌍이다.  이런 경우 2차원 벡터라고 하고, 만약에 숫자 세 개의 순서쌍을 가질 경우 3차원 벡터라고 한다.



2. 벡터의 덧셈

[ 벡터의 덧셈  1]


두 벡터 (2,1)과 (1,2)의 합은 어떻게 구할 것인가?

흔히 대각선법이라는 것을 배웠다.  벡터 2(빨간색)벡터 1(검은색)의 끝점으로 수평이동시킨 다음 그 끝점을 구해서 벡터의 합을 계산하는 것이다.   왜 이렇게 될까?

두 개의 벡터의 순서쌍이 지시하는 데로 이동을 해 보았다.  

[ 벡터의 덧셈 2 ]

벡터 1은(2,1)이다.  

먼저 X축 양의 방향으로 2만큼 이동한 다음, Y축 양의 방향으로 1을 이동한다.

여기에서 벡터 2(1,2)만큼 이동한다.

X축 양의 방향으로 다시 1만큼 이동한 다음, Y축 양의 방향으로 2를 이동하면 두 벡터의 합 벡터에 대한 순서쌍을 확인할 수 있다.   

따라서 벡터 합은 아래와 같이 일반화된다.

벡터 1에 2배를 하면 어떻게 될까?

여기서 숫자 2는 방향성이 없고 벡터의 크기를 조절해 준다.  따라서, 벡터라는 표현을 하지 않고 스칼라(Scalar)라고 한다.  영어의 Scale에서 왔다.

스칼라와 벡터의 곱셈은 결국 벡터의 크기를 조절하는 것이다.



R을 활용한 벡터의 덧셈 표현하기(벡터 1 그림 그리기)


v_exe <- data.frame(vname=c("a","b","a+b", "move"), 

       x0=c(0,0,0,2),y0=c(0,0,0,1), x1=c(2,1,3,3) ,y1=c(1,2,3,3), 

       col=1:4)     

plot(NA, xlim=c(0,4), ylim=c(0,4), xlab="X", ylab="Y")

        with(v_exe, mapply("arrows", x0, y0, x1, y1,col=col))

        with(v_exe, mapply('text', x=x1[1:3]-.1, y=y1[1:3]+.1, 

                labels=expression(list(x[1],y[2]), 

                               list(x[2],y[2]), list(x[1]+x[2],y[1]+y[2]))))

작가의 이전글 AI시대를 위한 기초 수학 6
작품 선택
키워드 선택 0 / 3 0
댓글여부
afliean
브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari