Code covered by the BSD License

# The Optimal ITAE Transfer Function for Step Input

by

### Yi Cao (view profile)

31 Jan 2008 (Updated )

Revisit the optimal ITAE transfer function using numerical optimization and digital computer

The Optimal ITAE Transfer Functions for Step Input

# The Optimal ITAE Transfer Functions for Step Input

Revisit the optimal ITAE transfer function for step input using numerical optimization and digital computer.

## Introduction

The Integral of Time miltiply by Absolute Error (ITAE) index is a popular performance criterion used for control system design. The index was proposed by Graham and Lathrop (1953), who derived a set of normalized transfer function coefficients from 2nd-order to 8th-order to minimize the ITAE criterion for a step input. Since then, this set of coefficients has been widely used as a System Prototype for control system design to minimize the ITAE criterion. The most recent example is the MATLAB File Exchange submission by Dr. Duane Hanselman, System Prototype for ITAE Optimum Step Response. Many authors have adopted the coefficient table as a standard material in Control Engineering textbooks, such as "Modern Control Systems" by R.D. Dorf and R.H. Bishop, 9th edition, Prentice-Hall, Inc., 2001.

The orginal coefficients was derived through an analog computer. Hence, thier optimality is questionable particularly for large order systems. The set of coefficient has been revisited by the author in 1989 and a new set of coefficients has been derived using numerical optimization techniques in a digital computer. The new coefficients lead to much lower ITAE criteria. Unfortunately, the work was published in a Chinese journal. Little attention had been drawn since then.

This submission is inspired by Dr. Hanselman's submission, where the old non-optimal coefficients were used to calculate the prototype systems. The function, optimitaestep, reproduces the results obtained about 20 years ago, using MATLAB Optimization Toolbox.

## References

1. D. Graham and R.C. Lathrop, "The Synthesis of Optimum Response: Criteria ans Standard Forms, Part 2", Transactions of the AIEE 72, Nov. 1953, pp. 273-288

2. Y. Cao, "Correcting the minimum ITAE standard forms of zero-displaceemnt-error systems", Journal of Zhejiang University (Natural Science) Vol. 23, N0o.4, pp. 550-559, 1989.

## The new set of coefficients of the optimal ITAE transfer functions

```p=cell(7,1);
p1=cell(7,1);
f=zeros(7,1);
f1=zeros(7,1);
for n=2:8
[p{n-1},f(n-1),p1{n-1},f1(n-1)]=optimitaestep(n);
end
fprintf('\n\n New ITAE coefficients:\n')
for n=2:8
fprintf('\n Order = %i, ITAE = %g\n    ',n,f(n-1))
fprintf('%7.3f  ',p{n-1});
end
fprintf('\n\n Old ITAE coefficients:\n')
for n=2:8
fprintf('\n Order = %i, ITAE = %g\n    ',n,f1(n-1))
fprintf('%7.3f  ',p1{n-1});
end
fprintf('\n');
```
```
New ITAE coefficients:

Order = 2, ITAE = 1.93556
1.000    1.505    1.000
Order = 3, ITAE = 3.11623
1.000    1.783    2.172    1.000
Order = 4, ITAE = 4.56372
1.000    1.953    3.347    2.648    1.000
Order = 5, ITAE = 6.28854
1.000    2.068    4.499    4.675    3.257    1.000
Order = 6, ITAE = 8.29536
1.000    2.152    5.629    6.934    6.792    3.740    1.000
Order = 7, ITAE = 10.5852
1.000    2.217    6.745    9.349   11.580    8.680    4.323    1.000
Order = 8, ITAE = 13.1553
1.000    2.275    7.849   11.888   17.588   16.116   11.339    4.815    1.000

Old ITAE coefficients:

Order = 2, ITAE = 1.97357
1.000    1.400    1.000
Order = 3, ITAE = 3.12131
1.000    1.750    2.150    1.000
Order = 4, ITAE = 4.59838
1.000    2.100    3.400    2.700    1.000
Order = 5, ITAE = 7.11912
1.000    2.800    5.000    5.500    3.400    1.000
Order = 6, ITAE = 9.52379
1.000    3.250    6.600    8.600    7.450    3.950    1.000
Order = 7, ITAE = 14.9526
1.000    4.475   10.420   15.080   15.540   10.640    4.580    1.000
Order = 8, ITAE = 18.551
1.000    5.200   12.800   21.600   25.750   22.200   13.300    5.150    1.000
```

## Step response comparison

Using the Davision fast simulation approach developed by E.J. Davision, An algorithm for the computer simulation of very large dynamic systems, Automatica, 9(6): 665-675, 1973.

```dt=0.01;
tf=20;
t=(0:dt:tf)';
N=numel(t);
y=zeros(N,7);
for n=1:7
A=[zeros(n,1) eye(n);fliplr(-p{n}(2:end))];
B=[zeros(n,1);1];
A=expm([A B;zeros(1,n+2)]*dt);
x=[zeros(n+1,1);1];
for k=1:N
x=A*x;
y(k,n)=x(1);
end
end
y1=zeros(N,7);
for n=1:7
A=[zeros(n,1) eye(n);fliplr(-p1{n}(2:end))];
B=[zeros(n,1);1];
A=expm([A B;zeros(1,n+2)]*dt);
x=[zeros(n+1,1);1];
for k=1:N
x=A*x;
y1(k,n)=x(1);
end
end
subplot(211)
plot(t,y,'Linewidth',2)
grid
title('Step Response of Systems with New Coefficients')
subplot(212)
plot(t,y1,'Linewidth',2)
grid
title('Step Response of Systems with Old Coefficients')
```