---
type: phase-brd
phase_id: PH-4.advanced-routing
title: "Продвинутый роутинг: красивый маршрут, связка, разведка"
version: 1
status: done
created_at: 2026-05-18
authors:
  - "agent:stream"
---

# PH-4 — Продвинутый роутинг

## Цель

Добавить три специализированных режима маршрутизации: «Красивый маршрут» (замкнутый круг через POI), «Связка» (соединить два трека грунтовками), «Разведка» (статистика грунтовок в радиусе).

## Scope

- **Красивый маршрут** — замкнутый круг заданной длины через живописные POI (озёра, виды, руины, броды)
- **Связка** — соединить два загруженных трека оптимальным грунтовым участком
- **Разведка** — показать статистику грунтовок в радиусе 20/50/100 км от точки

## Что реализовано

- Алгоритм «Красивый маршрут»: выбор POI в радиусе → TSP-оптимизация порядка → OSRM route
- UI загрузки GPX для режима «Связка»
- Алгоритм соединения: найти ближайшие точки двух треков → построить грунтовый мост
- «Разведка»: spatial query по SQLite → агрегация по типам → визуализация на карте (heatmap)
- Переключение режимов в toolbar

## Ключевые решения

| Решение | Причина |
|---------|---------|
| TSP через nearest-neighbor heuristic | Достаточно для 5-10 POI, O(n²) приемлемо |
| Spatialite для spatial queries | Уже есть в стеке, не нужен отдельный сервис |
| Радиусы 20/50/100 км | Покрывают типичные дневные маршруты |

## Дата завершения

04.05.2026
