Нет, это совсем не дискретная штука, а штука, обладающая моделью
объекта. Вот я перевёл нагреватель экструдера 3Д-принтера с ПИД на
MPC - предсказательное управление. Алгоритм запрограммирован для
нагревателя. Входные параметры: - мощность нагревателя;
- теплоёмкость нагреваемого блока с соплом;
- тепловые потери без обдува;
- тепловые потери с обдувом;
- теплоёмкость эктструдируемого прутка;
- окружающая температура;
- скорость подачи прутка;
- целевая температура;
- измеренная температура.
При первоначальной калибровке, уточняются параметры модели - теплосъём и теплоёмкость блока. Потом алгоритм поддерживает заданную температуру с учётом скорости подачи прутка и включения/выключения обдува. И, так как обладает моделью объекта, делает это оптималным образом - например, накидывает мощность при увеличении скорости подачи прутка даже если температура экструдера ещё не начала падать.
UPD: собственно, результат очень хороший. Если ПИД работал с перелётом градусов 5-7 при включении и при интенсивной печати, а при переходе между разными скоростями подачи, температура скакала градусов до трёх, то теперь, с MPC, не более градуса колебания (ну, по крайней мере по индикатору).