2.3 Q, R Selection via GA
In order to choose the weighting matrices of LQR control algorithm, it is often by trial and error method. Another method to find an expected values of weighting matrices component is using guided random search, this is one of the easiest way and it could be handle by search function in Matlab simulation source. The most simple and well known technique for guided random search in machine learning application is using the Genetic Algorithm (GA), as shown in figure 3.
Genetic algorithm performed chromosome operation and individual evaluation. In the first iteration, chromosome operation generates the initial population consists of 10 populations randomly with logarithmic distribution. Each population consists of 5 chromosomes, 4 chromosomes of Q vector matrix, and 1 chromosome of R matrix. Individual evaluation consists of selection procedure according to the fitness function variables of time domain characteristic; such as maximum overshoot tolerance is 10%, maximum rise time tolerance is
15%, maximum settling time tolerance is 10%, maximum steady-state error tolerance is 0.2%, also to check the location of the close-loop poles whether it near by imaginary axis. If there are several values are passed through those selection criterions than GA choose 2 best values, then it transfer to become a new candidate in next generation selection together with new 8 populations, where 6 from randomly generated and the 2 other new populations from both crossover and mutation from 2 best previous populations. Finally, in the end of iteration only one best value is selected.
Fig. 3. GA Flowchart
An Implementation of GA into LQ Servo control algorithm as depicted in figure 4. The purpose of this combination is to obtain the global optimal feedback gain K, which could be change anytime during runtime. The purpose of changing K is to suppress undesired controller performances.
Was this article helpful?