Линейные комбинации и линейная оболочка
Любой вектор плоскости можно собрать из двух непараллельных стрелок — нужно лишь подобрать коэффициенты.
Линейная комбинация векторов $\vec{v}_1, \dots, \vec{v}_k$ — это вектор вида $c_1 \vec{v}_1 + \dots + c_k \vec{v}_k$, где $c_i$ — произвольные числа.
Линейная комбинация — это «рецепт»: взять столько-то одного вектора, столько-то другого и сложить. Множество всех таких рецептов называют линейной оболочкой (span). Этот простой вопрос — «что можно собрать?» — лежит в основе понятий базиса, ранга и размерности.
Что такое span
Возьмём два вектора на плоскости. Если они не параллельны, то, подбирая коэффициенты $c_1$ и $c_2$, можно дотянуться до любой точки плоскости — их линейная оболочка есть вся плоскость. Если же векторы параллельны (один кратен другому), любая их комбинация лежит на одной прямой — оболочка «схлопывается» в линию.
$$\text{span}(\vec{v}_1, \vec{v}_2) = \{\, c_1 \vec{v}_1 + c_2 \vec{v}_2 \;\mid\; c_1, c_2 \in \mathbb{R} \,\}$$
Найти коэффициенты
Пусть базисные векторы $\vec{e}_1 = (1, 1)$ и $\vec{e}_2 = (1, -1)$, а цель — вектор $\vec{w} = (5, 6)$. Нужно решить:
$$c_1 (1, 1) + c_2 (1, -1) = (5, 6) \;\Longrightarrow\; \begin{cases} c_1 + c_2 = 5 \\ c_1 - c_2 = 6 \end{cases}$$
def combo(c1, c2, e1, e2):
return [c1 * e1[i] + c2 * e2[i] for i in range(len(e1))]
e1 = [1, 1]
e2 = [1, -1]
# решаем c1+c2=5, c1-c2=6 вручную:
c1 = (5 + 6) / 2 # 5.5
c2 = (5 - 6) / 2 # -0.5
print("c1 =", c1, " c2 =", c2)
print("проверка:", combo(c1, c2, e1, e2))Вывод:
c1 = 5.5 c2 = -0.5 проверка: [5.0, 6.0]
Координаты в новом базисе
Числа $(5{,}5;\, -0{,}5)$ — это координаты вектора $\vec{w}$ в базисе $\{\vec{e}_1, \vec{e}_2\}$. Тот же самый вектор $(5, 6)$ в стандартном базисе имеет координаты $(5, 6)$, а в нашем — другие. Координаты всегда относительны выбранного базиса; это ключевая идея последнего раздела курса.
Как работает под капотом
Функция combo буквально реализует определение: умножает каждый базисный вектор на свой коэффициент и складывает. Систему из двух уравнений мы решили вручную сложением и вычитанием, но в общем случае подбор коэффициентов — это и есть решение системы линейных уравнений, которым мы займёмся в разделе про метод Гаусса. Линейная комбинация — это операция «вперёд» (по коэффициентам строим вектор), а поиск коэффициентов — операция «назад».
Частые ошибки
- Считать, что два любых вектора покрывают плоскость. Если они параллельны — оболочка лишь прямая.
- Забывать, что коэффициенты могут быть отрицательными и дробными — иначе «дотянуться» до некоторых точек не выйдет.
- Путать вектор и его координаты. Один и тот же вектор в разных базисах записывается разными наборами чисел.
Итог
- Линейная комбинация — взвешенная сумма векторов с произвольными коэффициентами.
- Span (линейная оболочка) — множество всех таких комбинаций: что вообще можно собрать.
- Два непараллельных вектора покрывают всю плоскость; параллельные — только прямую.
- Координаты вектора зависят от выбранного базиса.