Stage 1b: Жадный алгоритм размещения, 3 стратегии, STRtree #12

Closed
opened 2026-04-26 11:25:34 +00:00 by lekss361 · 2 comments
lekss361 commented 2026-04-26 11:25:34 +00:00 (Migrated from github.com)

Backend:

  • Жадное заполнение прямоугольников MKD-корпусами на сетке
  • 3 стратегии:
    • max_area — максимизация общей площади застройки
    • max_insolation — оптимизация инсоляции (южная ориентация, отступы)
    • balanced — компромисс по площади + инсоляции + плотности
  • STRtree (Shapely RTree) для проверки коллизий
  • Профилировка: цель ≤10 сек на вариант, fallback acceptance 15 сек

Frontend:

  • Визуализация корпусов поверх карты (полигоны Leaflet)
  • Метрики ТЭП (built area, total floor area, density) под каждым вариантом
  • Сравнение вариантов рядом — таблица или side-by-side

Acceptance:

  • 3 варианта генерятся за ≤15 сек на тестовом участке (1 га)
  • Корпуса не пересекаются (STRtree validation)
  • Корпуса не выходят за границы участка с учётом отступов
  • Метрики ТЭП считаются и отображаются

Связанные: WorkSplit_Generative_Stage1.

**Backend:** - Жадное заполнение прямоугольников MKD-корпусами на сетке - 3 стратегии: - `max_area` — максимизация общей площади застройки - `max_insolation` — оптимизация инсоляции (южная ориентация, отступы) - `balanced` — компромисс по площади + инсоляции + плотности - STRtree (Shapely RTree) для проверки коллизий - Профилировка: цель ≤10 сек на вариант, fallback acceptance 15 сек **Frontend:** - Визуализация корпусов поверх карты (полигоны Leaflet) - Метрики ТЭП (built area, total floor area, density) под каждым вариантом - Сравнение вариантов рядом — таблица или side-by-side **Acceptance:** - [ ] 3 варианта генерятся за ≤15 сек на тестовом участке (1 га) - [ ] Корпуса не пересекаются (STRtree validation) - [ ] Корпуса не выходят за границы участка с учётом отступов - [ ] Метрики ТЭП считаются и отображаются Связанные: `WorkSplit_Generative_Stage1`.
Owner

Status update — Stage 1b НЕ реализован. Жадного алгоритма + STRtree коллизий в backend нет (модуль app/services/generative/ отсутствует или скелетный).

Generative Stage 1 milestone open. Этот issue остаётся core item для milestone. Priority определяется бизнес-планом (Max + пилотные клиенты vs continued Site Finder polish).

Status update — Stage 1b НЕ реализован. Жадного алгоритма + STRtree коллизий в backend нет (модуль `app/services/generative/` отсутствует или скелетный). Generative Stage 1 milestone open. Этот issue остаётся core item для milestone. Priority определяется бизнес-планом (Max + пилотные клиенты vs continued Site Finder polish).
Owner

Closing as duplicate of #55 (B1-2: Generative Stage 1b — Greedy алгоритм + STRtree).

#55 — это superset с priority/critical и привязкой к B1 серии. Greedy placement + STRtree spatial index — единая задача в #55. Blocked by #54 (Shapely foundation).

Audit reference: audits/issues_audit_2026_05_16.md (2026-05-17).

Closing as duplicate of #55 (B1-2: Generative Stage 1b — Greedy алгоритм + STRtree). `#55` — это superset с priority/critical и привязкой к B1 серии. Greedy placement + STRtree spatial index — единая задача в #55. Blocked by #54 (Shapely foundation). Audit reference: `audits/issues_audit_2026_05_16.md` (2026-05-17).
Sign in to join this conversation.
No project
No assignees
2 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: lekss361/gendesign#12
No description provided.