Ответ на этот вопрос очень зависит от системы.Вы правы, говоря, что система с открытым контуром нереализуема.Планирование / контроль обычно выполняется в два этапа.
1) Генерация траектории: обычно это делается прогнозируемо или в разомкнутом контуре (P в MPC).В зависимости от способности контроля нижнего уровня это не нужно делать слишком часто.Например, если выполнение траектории отклоняется от запланированного выше некоторого порога (или выходит за рамки гарантий стабильности), вам придется перепланировать.
2) Отслеживание / выполнение траектории: заданная номинальная траектория (включая номинальный разомкнутый контур)контроли), контроллер нижнего уровня пытается следовать этому как можно точнее.Это будет включать стабилизирующий контроллер, такой как LQR или что-то подобное.
Ключ к пониманию того, что является «слишком быстрым» для перепланирования, заключается в том, насколько сильно ваша система дрейфует с течением времени и какую гарантию безопасности вы хотите произвести.Например, если вы допустите буфер в 5 см вокруг препятствий в плане с разомкнутым контуром, то подходящее время для перепланировки будет, когда робот отклонится от траектории (например, в R3) на некоторый порог менее 5 см.Если вы перепланируете позже, вы не сможете гарантировать, что ваш робот не столкнется со статическими препятствиями в окружающей среде.
Очевидно, что это зависит от точности вашей модели, а также от того, насколько хорошо ваша работа вашего низкоуровневого регулятора соответствует этой траектории.В идеале, если ваша модель достаточно точна, и если ваш низкоуровневый контроль очень хорош, то перепланирование не требуется (при условии статической среды).