SciELO - Scientific Electronic Library Online

vol.79 número176EVALUATION OF MASS-RIG SYSTEMS FOR SHAKING TABLE EXPERIMENTS índice de autoresíndice de assuntospesquisa de artigos
Home Pagelista alfabética de periódicos  

Serviços Personalizados




Links relacionados

  • Em processo de indexaçãoCitado por Google
  • Não possue artigos similaresSimilares em SciELO
  • Em processo de indexaçãoSimilares em Google



versão impressa ISSN 0012-7353

Dyna rev.fac.nac.minas vol.79 no.176 Medellín nov./dez. 2012





Electronics Engineer, Universidad Industrial de Santander,

Mechatronics Engineer, Ph.D.(c), Universidad Industrial de Santander,

Professor, Ph.D., Escuela de Ingenierías Eléctrica, Electrónica y de Telecomunicaciones, Universidad Industrial de Santander,


Received for review June 4th, 2012, accepted October 9th, 2012, final version October, 16th, 2012


ABSTRACT: This article proposes to use a numeric strategy based on a discrete particle swarm optimization algorithm, to solve a problem related to compensator design in a time-varying feedback control system. At first, it is shown why it is possible to transform a problem of solving a system of linear Diophantine equations, into an optimization one. Some exemplary problems are shown. High quality solutions, i.e. in terms of accuracy and precision, were achieved in relatively short computation times.

KEYWORDS: Particle swarm optimization, compensators, time-varying feedback control, optimization.

RESUMEN: El presente artículo propone utilizar una estrategia numérica basada en un algoritmo de optimización metaheurístico de enjambre de partículas discreto, para resolver un problema de diseño de compensadores en sistemas retroalimentados variantes en el tiempo. Se demuestra inicialmente como se puede convertir el problema de solución del sistema de ecuaciones Diofánticas lineales resultante en la solución de un problema de optimización. Se desarrollan ejemplos demostrativos que ilustran la idea principal. Se lograron soluciones de excelente calidad en cuanto a precisión y exactitud en tiempos de computación relativamente breves.

PALABRAS CLAVE: Enjambre de partículas, compensadores, control realimentado variante en el tiempo, optimización.



The study and analysis of Diophantine equations and their solution approaches, has been an open problem for both, mathematicians and engineers, who strive to solve them for a given application. Since the appearance of Hilbert's tenth problem, the literature reports several attempts at proving that it is unsolvable, i.e., that there is no algorithm that determines if a given polynomial, with integer coefficients has roots in the integer domain [1], [2]. The time and effort of the researchers has paid off: it does not exist. However, instead of meaning the end of a line, it has reoriented the question, especially in engineering, to determine if there are other solution approaches, that without being generic, allow to solve, somehow, “any” Diophantine equation. Here, several proposals can be included, by no means being exhaustive, which are based, for example, on the concepts of state spaces, of inversion in said spaces and of polynomial approximation, as well as on algebraic and geometric studies and on the extension of the well known Euclidean algorithm for the analysis of data dependence, among several others [3-7]. Likewise, some metaheuristics have been used, such as genetic algorithms, simulated annealing, particle swarm optimization and evolutionary computing [8-10]. The purpose of this paper is to demonstrate how to solve the Diophantine equation obtained during the design process of compensators by an optimization strategy, such as the discrete particle swarm optimization algorithm. Some examples are presented to illustrate the procedure.



2.1. Solving a Diophantine equation
In principle, a Diophantine problem is the solution of an equation, or a system of equations, in the integer () or rational () domains, or their generalizations, such as rings generated over , or fields over . Consequently, a Diophantine equation has the form where is a polynomial with integer coefficients and whose solution is restricted, in most cases, to the non-negative integers. A linear Diophantine equation, with unknowns, is defined by eq. (1), where are known rational, or integer, numbers, and are unknowns, i.e., the numbers that should satisfy them, [11]; is a known integer.

This type of equation is, generally, undetermined and with more than one unknown. It is important to remark that it only has a solution if the greatest common divisor (g.c.d.) of the coefficients, is a divisor of . In the case of two unknowns, for example, an equation as the one shown by eq. (2) appears, where are known integers, and the solution only exists if the g.c.d. of and is a divisor of .

Thus, a general solution can be written, as shown by eq. (3), where is an integer, is an integer which represents the g.c.d. and are two particular solutions.

The traditional approach for this case, even though others are available, is based on the famous extended Euclid algorithm [11], [12].

2.2. System of linear Diophantine equations
Consider the system of linear Diophantine equations over , given by eq. (4).

It is evident that if the solution exists in Z, it must also exist in R. This means that it must comply with the Roche-Frobenius theorem, which ultimately poses that:

where A is the coefficient matrix of the system, and (A;C) is the expanded one. Therefore, in order to find the solutions in the integer or rational set, each function must comply such that its g.c.d.:

This way, complying with these two requirements is a sufficient condition for the system to have a solution.

2.3. Diophantine equations in control systems
Diophantine equations appear in the design and synthesis of feedback compensators. According to Kucera's review, the Diophantine equation approach is a transfer function based control theory in which the transfer functions are viewed and handled as algebraic objects [13-16].While conceived for linear finite dimensional time invariant systems, it was generalized and currently includes some time varying infinite dimensional and non linear systems. The approach, in general, is based on the factorization of transfer functions over an appropriate ring, thus reducing the mathematical synthesis of control systems to the solution of linear Diophantine equations in that ring. More recently, Wu [17], developed a systematic approach for solving both linear time-varying and time-invariant Diophantine equations. The pole-placement in a closed-loop structure using output feedback can be done by means of solving those equations. The poles of the overall transfer function are assigned in order to meet some given performance requirements. The approach is based on successively reducing the order of the Diophantine equation using the well known Euclidean algorithm. A complete explanation of this strategy is not included here. It can be found in [17].

2.4. Systems of equations and optimization
Consider the equation given in (1). Let be the function defined by:

Suppose that the eq. (1) has a solution on , and let . Therefore:

if, and only if, minimizes , defined by (5).

If then for each . Thus, and, since for every , then is a minimum for . Now, if minimizes but it does not satisfy equation (1) then must be positive, since for every . Since the system has a solution over , there existssuch that and . Therefore, which shows is not a minimum for. According to the previous statements, a problem of finding the roots of a system of non-linear equations, over a given set , can be transformed into an optimization one (minimization for the current case), with an objective function built in the way shown by equation (5) over the same domain (i.e. ). It is important to remark that this set can be of any nature, as long as it is not empty. In the case of finding the roots of a Diophantine system, the set must guarantee that , with being the set of integer numbers. In other words, must contain points whose coordinates are integers. Another application of this theorem can be seen in [18], [19].

2.5. The algorithm
The implemented algorithm is built up from various interconnected blocks and is similar to the structure of traditional PSO (for real numbers), [20]. A first stage is given by the random assignation of a swarm of user defined integers. Any size can be used here. Likewise, the definition of these values is subject to previous knowledge of the objective function (fitness), as well as to the presence of restrictions. Moreover, an initial velocity of zero can be defined for the particles. After that, the algorithm evaluates, in the given search space, the objective function. With it, local and global best values are established, and both, the velocity and position, of each particle, are reevaluated as shown below. This procedure is iterative and is repeated until the convergence criteria are met, or until all solutions in the search domain are found. An algorithm, considered as a variant of the traditional PSO, was used during this research. In the same fashion as PSO, its version for discrete solutions includes two vectors and , related to the position and velocity of each particle, for every iteration. The first one is a vector of random numbers, initially, in a valid solution interval. The second one can also be a random vector, but it can be assumed to be zero for the first iteration, in order to simplify the algorithm. When the problems become multidimensional, the vectors transform into position and velocity matrices, since there is a value for each unknown. Discrete PSO differs from its traditional version in which the new velocity and position depend on both, an equation and a decision rule, which chooses between the local and global best values for the next iteration. Assuming there is a vector that allows the transition between continuous and discrete PSO, and which takes the value of (-1, 1, or, 0) according to eq. (6), where is the global optimum of the swarm, and the local one, [20].

Afterwards, velocity is updated according to eq. (7).

Then, the decision parameter, vector, is calculated according to eq. (8).

This parameter decides if the next position of the particle is chosen as the local or global optimum, or if it is chosen as a random number in the search domain. Thus, position updating is performed according to eq. (9), where is a constant that defines the intensification (new position equal to the local or global optimum) or diversification (new position equal to a random number), [9].



This section shows some of the results achieved after solving two examples, which illustrate the suggested procedure. A computer with an AMD Turion X2 Dual Core RM-72 processor, at 2.1 GHz, and with 4 GB of RAM memory, was used. For the two examples, the following parameters were used: w = 0.75, and, These values were chosen based on some preliminary tests and on the information available in the literature [9], [20].

4.1. Example 1
As a starting point, the same example presented by Wu in [17] was used. If one wants the control system to have certain modes, that is, to have its finite poles located at certain positions, it is necessary to compensate the given plant so that the closed-loop system has a pre-specified characteristic polynomial. Thus, the closed-loop control system has unitary feedback. It is required to define the compensator, , as a polynomial which satisfies the condition that six poles are located at -1. Let the plant be:

In the frequency domain, , the closed-loop transfer function is given by eq. (10),

where, is the output, is the set point and and are defined as,

After rearranging,

And thus, a Diophantine equation can be established as,

If there are six poles at , it can be found that is,

Considering the information provided in [17], it is known that:

In this example, it is then required to solve the Diophantine equation (14) and find and , given by,

The solution, with the modified Euclid algorithm as appears in [17], is:

Using this solution set, the controller given by eq. (20) can be implemented.

Now, solving the current example with the proposed algorithm, equations (15) to (19) are substituted into the Diophantine equation (eq. (14)), so it is found that,

Parting from eq. (21), the following system of Diophantine equations can be established:

Thus, the objective function given by eq. (23) can be built.

With it, several simulations were run. This article reports, as an example, a set of 20 algorithm runs. It was found that for each repetition, the same answer was found, even though in different run times and number of iterations. This means that the results are of excellent quality, in terms of accuracy and precision. The minimum convergence time was 102.080 s, for 5961 iterations, whilst the highest one was of 445.080 s, for 22805 iterations. The average time was of 226.575 s, with 12173 iterations on average. Figure 1 shows an almost linear relation between convergence time and number of iterations.

4.2. Example 2
Considering a closed loop control system with unity feedback, it is required to find the controller, with the polynomial method, guaranteeing stability and an establishing time below 10 s. The closed-loop dominant pole is located at Thus, the plant is:

The closed-loop transfer function is given by eq. (24). If there is a dominant pole at then,

As in the previous example, the Diophantine equation given by (25) is derived. Its solution was found by expressing as a function of and Therefore, now the problem resides in finding the values of that satisfy

Using Euclid's algorithm as proposed in [17], the solution was found to be:

In order to solve the Diophantine equation (25) with the PSO discrete algorithm, it must be first expanded, generating:

which leads to the system of Diophantine equations given by (28).

Now, the objective function can be constructed as:

Several simulations were run, from which 20 of them are reported in this article. Once again, it was found that the same answer was always reported, with different run times and number of iterations. Thus, an excellent answer quality was also found in this example, which corresponds to the one provided by Euclid's algorithm. The minimum convergence time was 145.032 s for 7001 iterations, while the maximum was of 436.083 s for 19386 iterations. The average run time was 281.263 s with an average of 12774 iterations. Figure 2 shows the step response of the plant and the controller. It is important to remark that it is stable and that it has an establishing time lower than 10 s, complying with the initial requirements.



Based on two illustrative examples, it was shown how a discrete PSO algorithm can be used for the design of compensators in a time-varying feedback control system. It seems plausible to assume that this optimization approach is valid, at least for these examples shown here. The main inconvenience found using this strategy is the algorithm's use of random parameters, which has a definite impact on the computational time. On the other hand, the main advantage, in our opinion, is its simplicity and its straightforward programming.



[1] Davis, M., Putnam, H. and Robinson, J., The Decision Problem for Exponential Diophantine Equations, The Annals of Mathematics, 74, 3, pp. 425-436, 1961.         [ Links ]
[2] Matiyasevich, Y. V., Hilbert's Tenth Problem. MIT Press, 1993.         [ Links ]
[3] Fang, C.-H., A Simple Approach to Solving the Diophantine Equation, IEEE Transactions on Automatic Control, 37, 1, pp. 152-155, 1992.         [ Links ]
[4] Bonilla, E. M., Figueroa, G. M. and Malabare, M., Solving the Diophantine Equation by State Space Inversion Techniques : An Illustrative Example, Proceedings of the 2006 American Control Conference, pp. 3731-3736, 2006.         [ Links ]
[5] Jones, L., A Polynomial Approach to a Diophantine Problem, Mathematics Magazine, 72, 1, pp. 52-55, 1999.         [ Links ]
[6] Mvondo, E. C. B., Cherruault, Y. and Mazza, J.C., Computational resolution of Diophantine equations by means of alpha-dense curves, Kybernetes, 41, 1/2, pp. 51-67, 2012.         [ Links ]
[7] Grosslinger, A. and Schuster, S., On Computing Solutions of Linear Diophantine Equations with One Non-linear Parameter, 2008 10th International Symposium on Symbolic and Numeric Algorithms for Scientific Computing, pp. 69-76, 2008.         [ Links ]
[8] Abraham, S. and Sanglikar, M., Finding Numerical Solution to a Diophantine Equation: Simulated Annealing as a Viable Search Strategy, Proceedings of the International Conference on Mathematical Sciences, 2, pp. 703-712, 2008.         [ Links ]
[9] Abraham, S., Sanyal, S. and Sanglikar, M., Particle Swarm Optimization Based Diophantine Equation Solver, ArXiv, pp. 1-15, Mar. 2010.         [ Links ]
[10] Smart, N., The Algorithmic Resolution of Diophantine Equations. Cambridge University Press, , 1998.         [ Links ]
[11] Contejean, E., An Efficient Incremental Algorithm for Solving Systems of Linear Diophantine Equations, Information and Compuation, 113, pp. 143-172, 1994.         [ Links ]
[12] Hanta, V., Solution of Simple Diophantine Equations by Means of Matlab. [Online]. Available: [Accessed: 19-Apr-2012]         [ Links ].
[13] Kucera, V., Diophantine equations in control-A survey, Automatica, 29, 6, pp. 1361-1375, Nov. 1993.         [ Links ]
[14] Dostal, P., Bobal, V. and Tomastik, M., Application of polynomial method in control of time delay systems, 2004 IEEE International Symposium on Computer Aided Control Systems Design, Taipei, pp. 89-94, 2004.         [ Links ]
[15] Matusu, R., Prokop, R. and Dlapa, M., Robust control of temperature in hot-air tunnel, 16th Mediterranean Conference on Control and Automation, pp. 576-581, Jun. 2008.         [ Links ]
[16] Kong, H., Zhou, B. and Zhang, M., A Stein equation approach for solutions to the Diophantine equations, 2010 Chinese Control and Decision Conference, Xuzhou, pp. 3024-3028, 2010, no. 1.         [ Links ]
[17] Wu, S.-H., Time-varying feedback systems design via Diophantine equation order reduction, Ph.D. Dissertation, The University of Texas at Arlington, 2007.         [ Links ]
[18] Amaya, I., Cruz, J. and Correa, R., Real Roots of Nonlinear Systems of Equations Through a Metaheuristic Algorithm, Revista Dyna, 78, 170, pp. 15-23, 2011.         [ Links ]
[19] Amaya, I., Cruz, J. and Correa, R., Solution of the Mathematical Model of a Nonlinear Direct Current Circuit Using Particle Swarm Optimization, Revista Dyna, 79, 172, pp. 77-84, 2012.         [ Links ]
[20] Jarboui, B., Damak, N., Siarry, P. and Rebai, A., A combinatorial particle swarm optimization for solving multi-mode resource-constrained project scheduling problems, Applied Mathematics and Computation, 195, 1, pp. 299-308, Jan. 2008.         [ Links ]