Направления на маяк нет?
Ну технически оно есть, но оно неизвестно. Могу лишь пытаться встать на него, в чем и заключается алгоритм.
Надумано. Если ее можно вычислить по заданным параметрам - значит ее можно применить.
Уточним. Можно вычислить... скорость изменения мощности (как вы и писали, градиент мощности), но скорость движения - нет. Функциональная зависимость между расстоянием до маяка и мощность неизвестна. Известен только характер зависимости: ближе - "мощнее". Если же мы говорим о производной мощности, то да - это вполне обыгрываемый параметр, как вторая производная - разница изменения мощностей на двух последовательных участках траектории.
Мощность наверняка рассеивается по какому-то экспоненциальному закону,..
Согласен. И потому сразу прошу прощения за свое нехилое уточнение (к сожалению, сразу не написал в формулировке).
Да уж, кажись нехилое уточнение.... чем больше мощность, тем робот ближе к маяку. Качественная зависимость такова, но количественная не известна (т. е. невозможно однозначно сказать, что данная мощность соответствует конкретному расстоянию до маяка - можно только сравнив две мощности в двух разных точках пространства, сказать какая из них ближе, но не насколько, а сравнив две разницы, сказать, какая из них соответствует более оптимальному направлению)
поэтому "разница_мощностей_в_двух_точках_при_оптимальном_курсе" быстро устареет.
Ну тут само за себя говорит мое "уточнение". Я ищу эту "разницу_мощностей_в_двух_точках_при_оптимальном_курсе" постоянно (сравнивая текущую "разницу_мощностей_в_двух_точках_при_оптимальном_курсе" с нынешней "разница_мощностей_в_двух_точках" - та что больше, та и становится новой "разницей_мощностей_в_двух_точках_при_оптимальном_курсе"). И тут сразу напарываюсь на косяк своего решения - случается так, что из-за дискретности времени я пролетаю мимо оптимального направления (на шаге i-1 определяю что для оптимального приближения надо чуток повернуть, скажем направо, а на шаге i, пролетев линию курса, определяю, что надо еще повернуть ... направо(!)) - получаю недостижимую уставку и как следствие - нечто вроде перерегулирования (приводит к тому что мой робот начинает нарезать петли). У меня сразу возникли мысли о производной от разницы мощностей в двух последовательных точках на двух последовательных участках траектории. И если ее брать за ошибку регулирования, то результат не достигается - робот выбирает почти любой курс в сектор размером с полуокружность в сторону маяка, стабилизирует это направление и прет по легко закручивающейся спирали. Думаю над симбиозом обеих идей и проверяю Ваш способ.
Тут условиями задачи заданы два параметра - направление и расстояние
Неверно - направление не дано. Если бы было дано направление, в чем прикол алгоритма? Его и надо отыскать. Говоря более четко, точных траекторий на маяк бесконечное множество - на маяк можно начинать ехать из любой точки любого радиуса вокруг маяка. Расстояние кстати тоже не дано.
Спасибо всем за интересный разговори и помощь.