Есть такой вид спорта - спортивное ориентирование. В нём есть задачи, которые просто вопят о программной реализации на смартфонах. Но пока программисты обходили своим вниманием этот рынок программ.
![Пример участка карты с контрольными пунктами Пример участка карты с контрольными пунктами](https://habrastorage.org/getpro/habr/upload_files/6fb/622/40b/6fb62240b7499be9cd2a38a86afda6a9.png)
1. Что такое "Спортивное ориентирование"
В некой природной области (лес, горы) собирается толпа увлечённых людей. В начале соревнования Вам дают карту, на ней обозначены "контрольные пункты" - места где в реальности расположены призмы, компостеры или станции электронной отметки. В общем пункты, которые надо найти и одним из регламентированных способов подтвердить, что Вы на них были. Пункты эти расположены хаотично, рассыпаны облаком на карте. Каждый контрольный пункт имеет свою "цену". Обычно в часах или минутах. Если Вы не "взяли" контрольный пункт (КП), то его цена прибавляется к вашему времени прохождения дистанции. Своего рода - штрафы за невзятие. Побеждает тот, кто финиширует с минимальным временем прохождения дистанции. В принципе, можно сразу пробежать от старта до финиша, не собирая ничего, но полученные штрафы добавятся ко времени прохождения дистанции и оно будет огромным. Но бывает, что контрольные пункты находятся сильно в стороне от основного облака КП или находятся в сложнопроходимой местности. Тогда может получиться, что на взятие КП будет потрачено больше времени, чем штрафное время за его невзятие.
2. Задача планирования маршрута
Ориентировщики обычно идут/бегут "по азимуту" - по прямой от КП к КП. Спортсмены могут развивать скорость до 6 км/ч даже по слегка заваленному и заросшему лесу. Но вариантов последовательности взятия КП может быть множество. Программисты, конечно же, скажут, что это банальная задача коммивояжёра. Да, с небольшими отягощениями. Местность проведения соревнований обычно очень разнообразна по ландшафту: болота, редколесья, поля, пашни, заросшие вырубки, ручьи, завалы, пески, непроходимые ветровалы, овраги, холмы, канавы и многое другое. Очевидно, что по разному ландшафту можно пройти с разной скоростью. По чистому грейдеру (грунтовой дороге, выровненной бульдозером) можно пробежать со скоростью около 6км/ч, по болоту вы будете вязнуть со скоростью 1,5-2км/ч.
![](https://habrastorage.org/getpro/habr/upload_files/5bd/0a5/2ba/5bd0a52bad1d263d526fe32fd9a9d6b4.png)
Бывают два типа соревнований. В первом варианте спортсменам дают карту до старта и у них есть время для планирования маршрута. Во втором варианте карту дают на старте и время начинает отсчёт от времени выдачи карты, и спортсмены решают задачу на ходу. Когда есть запас времени до старта ориентировщики пользуются методом "булавок и нитки". Участник знает свою среднюю скорость по лесу, знает время закрытия финиша (максимальная длительность прохождения дистанции. Помножив одно на другое получает приблизительный километраж дистанции. Этот километраж умножается на масштаб карты и отмеривается нитка полученной длины. Например, масштаб карты - 500 метров в одном сантиметре, ориентировщик планирует маршрут 45км, отрезает нитку 22,5 сантиметра. Затем кладёт карту на пенку (коврик), точки контрольных пунктов, которые планирует брать, накалывает булавками, затем проматывает нитку через все булавки.
![](https://habrastorage.org/getpro/habr/upload_files/9f8/990/3c2/9f89903c2dbe063daf7eca9aac96a933.png)
3.Собственно бизнес-идея для программистов
Нужна программа для смартфона. Для Андроида (никогда не видел, чтобы по лесу бегали с айфонами). Встраивание рекламы смысла почти не имеет, там где будут пользоваться этой программой зачастую не ловит интернет. Программа может быть платной в разумных пределах (не более 600р/месяц). Программа должна поддерживать векторные форматы карт, которые есть в открытом доступе (типа OSM) и работать с ними. При фотографировании выданной на соревнованиях карты программа должна распознать характерные узловые точки на фотографии и привязать их к загруженной векторной карте. Программа должна распознать на фотографии отметки контрольных пунктов и привязать их к загруженной векторной карте - они обозначаются красным кружком с номером тоже красного цвета, ничего другого на карте этими условными обозначениями не отмечают. После чего рассчитать различные варианты маршрута и выдать их клиенту - минимальные штрафы, оптимальное время прохождения дистанции, ландшафты с максимальной средней скоростью. Программа должна принимать информацию от пользователя о взятии КП и динамически перестраивать маршрут с учётом реальной скорости пользователя.
Заключение
Если программа будет содержать все перечисленные функции, то гарантирована обширная аудитория. Только в России спортивным ориентированием занимается около 149 тысяч человек (данные на 30 апреля 2020г.). Это только в России... в мире это в разы более крупная аудитория. Примерно половина спортивных ориентировщиков - завсегдатаи соревнований. Они точно захотят воспользоваться такой программой, дающей тактическое преимущество. Если предположить месячную абонплату в 600 рублей (как у знаменитой Strava) у половины из 149 000человек - это почти 45 миллионов в месяц... А если добавить английскую, французскую, итальянскую, немецкую и испанскую версию... Программ таких нет ещё. Совсем. Требуемые технологии уже есть. Кто первый напишет такую программу, будет иметь шикарный куш.
c_kotik
Называется «хочу программку за 600р/мес» без оплаты разработчика)
А отобьёт ли он свои затраты в итоге через плеймаркет (и будет ли интересна кому то кроме автора) — не моя проблема. Потрясающий маркетинг)
Из серии «выЖтутПрограммисты»)