PID generalized