# ЛР-02: Транспортная задача

Эта лабораторная линия посвящена транспортной модели как специальному случаю линейного программирования. Главная идея простая: каждая клетка транспортной таблицы означает отдельный маршрут, а мы ищем самый дешёвый допустимый план перевозок.

## Как идти по материалам

1. Сначала прочитайте теорию.
2. Затем откройте свой `student notebook` в корне папки.
3. После собственной попытки посмотрите разобранные examples.

## Student notebooks

- `lab_02_student_civil_01.ipynb` — лекарства в районные больницы
- `lab_02_student_civil_02.ipynb` — школьное питание
- `lab_02_student_military_01.ipynb` — топливо для частей
- `lab_02_student_military_02.ipynb` — запчасти на ремонтные базы

## Worked examples

- `examples-civil/` — 3 полностью разобранных гражданских транспортных кейса
- `examples-military/` — 3 полностью разобранных военных транспортных кейса

## Что студент должен уметь после ЛР-02

- проверять баланс запасов и спроса;
- добавлять фиктивный узел в открытой задаче;
- собирать `c`, `A_eq`, `b_eq`, `bounds` для `linprog`;
- понимать, зачем нужны `flatten()` и `reshape()`;
- интерпретировать полученный план перевозок, а не только минимальную стоимость.
