METHOD AND HARDWARE ARCHITECTURE FOR CONTROLLING A PROCESS OR FOR PROCESSING DATA BASED ON QUANTUM SOFT COMPUTING

Abstract: A method of controlling a process (Plant) driven by a control signal (U*) for producing a corresponding output comprises producing an error signal ( epsilon ) as a function of a state of the process (X) and of a reference signal (Y), generating a control signal (U*) as a function of the error signal ( epsilon ) and of a parameter adjustment signal (CGS) and feeding it to the process (Plant), deriving a signal (S) representative of a quantity to be minimized calculated by processing paired values of the state (X) of the process and the control signal (U*), calculating a correction signal (K2) from a set of several different values of the control signal (U*), that minimize the derived signal (S) to be minimized, calculating the parameter adjustment signal (CGS) by a neural network and fuzzy logic processor from the error signal ( epsilon ) and correction signal (K2). The method of the invention is characterized in that the correction signal (K2) is periodically calculated by a Quantum Genetic Search Algorithm consisting in a merging of a genetic algorithm and a quantum search algorithm. A hardware embodiment of the method of the invention has been disclosed.

Description: "METHOD AND HARDWARE ARCHITECTURE FOR CONTROLLING A PROCESS OR FOR PROCESSING DATA BASED ON QUANTUM SOFT COMPUTING" FIELD OF THE INVENTION This invention generally relates to a method and a hardware for controlling a process or for processing data in a database, and more specifically to control a process and/or including search-of-minima intelligent operations. The method of the invention is outstandingly useful for minimum searching among a set of values and in particular for realizing hardware control systems exploiting artificial intelligence to robust smart control a nonlinear process and/or to search in a database. BACKGROUND OF THE INVENTION Feedback control systems are widely used to maintain the output of a dynamic system at a desired value in spite of external disturbances that would displace it from the desired value. For example, a household space heating furnace, controlled by a thermostat, is an example of a feedback control system. The thermostat continuously measures the air temperature inside the house, and when the temperature falls below a desired minimum temperature the thermostat turns the furnace on. When the interior temperature reaches the desired minimum temperature, the thermostat turns the furnace off. The thermostat-furnace system maintains the household temperature at a substantially constant value in spite of external disturbances such as a drop in the outside temperature. Similar types of feedback controls are used in many applications. A central component in a feedback control system is a controlled object, a machine or a process that can be defined as a "plant", whose output variable is to be controlled. In the above example, the "plant" is the house, the output variable is the interior air temperature in the house and the disturbance is the flow of heat (dispersion) through the walls of the house. The plant is controlled by a control system. In the above example, the control system is the thermostat in combination with the furnace. The thermostat-furnace system uses simple on-off feedback control system to maintain the temperature of the house. In many control environments, such as motor shaft position or motor speed control systems, simple on-off feedback control is insufficient. More advanced control systems rely on combinations of proportional feedback control, integral feedback control, and derivative feedback control. A feedback control based on a sum of proportional, plus integral, plus derivative feedback, is often referred as a PID control. A PID control system is a linear control system that is based on a dynamic model of the plant. In classical control systems, a linear dynamic model is obtained in the form of dynamic equations, usually ordinary differential equations. The plant is assumed to be relatively linear, time invariant, and stable. However, many real- world plants are time varying, highly nonlinear, and unstable. For example, the dynamic model may contain parameters (e.g., masses, inductance, aerodynamics coefficients, etc.) which are either only approximately known or depend on a changing environment. If the parameter variation is small and the dynamic model is stable, then the PID controller may be satisfactory. However, if the parameter variation is large or if the dynamic model is unstable, then it is common to add adaptive or intelligent (Al) control functions to the PID control system. Al control systems use an optimizer, typically a nonlinear optimizer, to program the operation of the PID controller and thereby improve the overall operation of the control system. Classical advanced control theory is based on the assumption that near equilibrium points all controlled "plants" can be approximated as linear systems. Unfortunately, this assumption is rarely true in the real world. Most plants are highly nonlinear, and often do not have simple control algorithms. In order to meet these needs for a nonlinear control, systems have been developed that use soft computing concepts such as genetic algorithms (GA), fuzzy neural networks (FNN), fuzzy controllers and the like. By these techniques, the control system evolves (changes) in time to adapt itself to changes that may occur in the controlled "plant" and/or in the operating environment. A control system for controlling a plant based on soft computing is depicted in Fig. 1. Using a set of inputs, and a fitness function, the genetic algorithm works in a manner similar to an evolutional process to arrive at a solution which is, hopefully, optimal. The genetic algorithm generates sets of "chromosomes" (that is, possible solutions) and then sorts the chromosomes by evaluating each solution using the fitness function. The fitness function determines where each solution ranks on a fitness scale. Chromosomes (solutions) which are more fit, are those which correspond to solutions that rate high on the fitness scale. Chromosomes which are less fit, are those which correspond to solutions that rate low on the fitness scale. Chromosomes that are more fit are kept (survive) and chromosomes that are less fit are discarded (die). New chromosomes are created to replace the discarded chromosomes. The new chromosomes are created by crossing pieces of existing chromosomes and by introducing mutations. The PID controller has a linear transfer function and thus is based upon a linearized equation of motion for the controlled "plant". Prior art genetic algorithms used to program PID controllers typically use simple fitness and thus do not solve the problem of poor controllability typically seen in linearization models. As is the case with most optimizers, the success or failure of the optimization often ultimately depends on the selection of the performance (fitness) function. Evaluating the motion characteristics of a nonlinear plant is often difficult, in part due to the lack of a general analysis method. Conventionally, when controlling a plant with nonlinear motion characteristics, it is common to find certain equilibrium points of the plant and the motion characteristics of the plant are linearized in a vicinity near an equilibrium point. Control is then based on evaluating the pseudo (linearized) motion characteristics near the equilibrium point. This technique is scarcely, if at all, effective for plants described by models that are unstable or dissipative. Computation of optimal control based on soft computing includes GA as the first step of global search for optimal solution on a fixed space of positive solutions. The GA searches for a set of control weights for the plant. Firstly the weight vector K - ,...,k n }is used by a conventional proportional-integral-differential (PID) in the generation of a signal δ(κ) which is applied to the plant. The entropy S(δ(κ)) associated to the behaviour of the plant on this signal is assumed as a fitness function to minimize. The GA is repeated several times at regular time intervals in order to produce a set of weight vectors. The vectors generated by GA are then provided to a FNN and the output of the FNN to a fuzzy controller. The output of the fuzzy controller is a collection of gain schedules for the PID - controller that controls the plant. For soft computing systems based on GA, there is very often no real control law in the classical control sense, but rather, control is based on a physical control law such as minimum entropy production. This allows robust control because the GA, combined with feedback, guarantee robustness. However, robust control is not necessarily optimal control. The GA attempts to find a global optimum solution for a given solution space. Any random disturbance (m(t) in Fig. 1) of the plant can "kick" the GA into a different solution space. It is desirable, however, to search for a global optimum in multiple solution spaces in order to find a "universal" optimum. The application of new knowledge-based control algorithms in advanced intelligent control theory of complex dynamic systems (as in controlling objects) has brought in necessity of the development of new processing methods such as Computational Intelligence (CI). Traditional computing basic tools for CI is GA, FNN, Fuzzy Sets theory, Evolution Programming, Qualitative Probabilistic Reasoning and etc. Application of CI in the advanced control theory of complex system motion has brought to two researching ways: 1) the study of stable non- equilibrium motion; and 2) an unstable non-equilibrium motion of complex dynamic systems. In the first case (of stable non-equilibrium motion) the development and design of intelligent control algorithms can be described in the structure submitted in Fig. 1. The peculiarity of the given structure is the consideration of the control object in accordance with the fuzzy system theory as a "black box" or non-linear models of plants. The study and optimization of "input-output" relations is based on soft computing as GA, FNN and fuzzy control (FC) for the description of the changing law of a PID-controller parameters with a minimum entropy production and control error. At the small random initial states, uncontrollable external excitations or small change of parameters or structure of controlled objects (plants), such an approach guarantees a robust and stable control for fixed spaces of possible excitations and solutions. In case of a global unstable dynamic control objective such an approach based on the presence of a robust and stable control does not guarantee success in principle. For such a kind of unstable dynamic control objectives, the development of new intelligent robust algorithms based on the knowledge about a movement of essentially non-linear unstable non-holonomic dynamic systems is necessary. OBJECT AND SUMMARY OF THE INVENTION It has been found and is the object of the present invention a new method and a respective hardware architecture for controlling a generic process using an algorithm that is obtained substantially by merging a Genetic Algorithm and a Quantum Search Algorithm. A hardware structure of a generic control system with a reduced number of sensors is described. Several practical embodiments of such a structure are described. By way of example, the novel structure of the invention is used for implementing a control system with a reduced number of sensors for an internal combustion engine and for a vehicle suspension. Naturally, the method as well as the hardware architecture of the invention can also be used efficiently for searching data in a database and in similar applications. Integrated silicon devices containing circuits that implement the different steps of the method of the invention are also described. The invention is concisely defined in the attached claims. BRIEF DESCRIPTION OF THE DRAWINGS The particular aspects and advantages of the invention will become clearer through the following description of several important embodiments of the and by referring to the attached drawings, wherein: Figure 1 is a general structure of an Intelligent Control System based on Soft- Computing; Figure 2 is a general structure of an Intelligent Smart Control System, based on Quantum Soft-Computing; Figure 3 is a block diagram of Quantum Algorithms; Figure 4 is a block diagram of an Encoder; Figure 5 is a general structure of the Quantum Block in Fig. 3; Figure 6 is an example of Quantum Circuit; Figure 7.a shows an example of tensor product transformation; Figure 7.b shows an example of dot product transformation; Figure 7.c shows the identity transformation; Figure 7.d shows an example of propagation rule; Figure 7.e shows an example of iteration rule; Figure 7.f explains the input/output tensor rule; Figure 8 is an example of a circuit realizing Grover 's Quantum Gate; Figure 9 is a Grover's Quantum Gate; Figure lO.a shows a possible set of input probability amplitudes; Figure lO.b shows a set of probability amplitudes after Step 1 of Fig. 8; Figure lO.c shows a set of probability amplitudes after Step 2 of Fig. 8; Figure lO.d shows a set of probability amplitudes after Step 3 of Fig. 8; Figure ll.a is an example of a vector superposition; Figure ll.b is the set of vectors of Fig. 1 La after 4 Hhas been applied; Figure ll.c is the set of vectors of Fig. l l.b after the entanglement operator U f (with x=001) has been applied; Figure ll.d is the set of vectors of Fig. l l .b after having applied the interference operator D„®I; Figure ll.e is the set of vectors of Fig. 1 l.b after having applied the entanglement operator U F a second time; Figure ll.f is the set of vectors of Fig. l l.b after having applied the interference operator D„®I a second time; Table 1 resumes the information analysis of Grover's algorithm for a general number of iterations; Table 2 resumes the information analysis of Grover's algorithm for the first iteration; Table 3 resumes the information analysis of Grover's algorithm for the second iteration; Figure 12 shows the analogy between GA and QSA; Figure 13 is a block diagram for QGSA; Figure 14 is a block diagram of Quantum Genetic Search Algorithm; Figure 15 describes the structure of classical Genetic Algorithms and Quantum Searching Algorithms for global optimization; Figure 16 describes the general structure of Quantum Algorithms; Figure 17 depicts a quantum network for Quantum Searching Algorithm; Figure 18 is a diagram of a Quantum Searching Algorithm; Figure 19 shows several possible distributions of road profiles; Figure 20.a compares different dynamic behaviour of pitch angle of a vehicle after a simulation of a fuzzy control; Figure 20. b compares the phase portraits of the time diagrams of Fig. 20. a; Figure 21. compares the entropy accumulation of the corresponding dynamic behaviour of Fig. 20. a; Figure 21. b compares the phase portraits of the time diagrams of Fig. 21.a; Figure 22 is a block diagram of the accelerator of the invention; Figure 23 is a block diagram of a Quantum Gate implementing the Grover's Algorithm; Figure 24 is an example of a Quantum Gate for Deutsch-Jozsa Algorithm; Figure 25 is an embodiment of a superposition subsystem for Deutsch-Jozsa Algorithm; Figure 26 is an embodiment of an interference subsystem for Deutsch-Jozsa Algorithm; Figure 27 is an example of a Quantum Gate for Grover's Algorithm; Figure 28 is an embodiment of a superposition subsystem for Grover's Algorithm; Figure 29 is an embodiment of an interference subsystem for Grover's Algorithm; Figure 30 is an embodiment of a K l entanglement subsystem; Figure 31 is an embodiment of a K th interference subsystem; Figure 32 is a basic structure of intelligent control system simulator with reduced number of sensors; Figure 33 is a more detailed structure of the intelligent control system simulator with reduced number of sensors of Fig. 32; Table 4 resumes the meaning of labels in Fig. 33; Figure 34 depicts an internal combustion piston engine; Figure 35 is a block diagram of a reduced control system for an internal combustion engine not implementing a Quantum Genetic Search Algorithm; Figure 36 is a block diagram of a reduced control system for an internal combustion engine implementing a Quantum Genetic Search Algorithm. DESCRIPTION OF SEVERAL EMBODIMENT OF THE INVENTION As stated above, the fundamental aspect of the present invention consists in the intuition that the merging of a Quantum Algorithm with a Genetic Algorithm obtaining what may be defined as a Quantum Genetic Search Algorithm would, as indeed has been found true, enhance formidably the function of teaching a Fuzzy Neural Network in implementing intelligent control systems as well as for searching data in a database. Such a merging has been possible because of the "similarity" between a Quantum Algorithm and a Genetic Algorithm, and in order to make more easily comprehensible the description of the novel Quantum Genetic Search Algorithm of the invention, it is deemed useful to preliminarily present a brief review of the Genetic Algorithm theory and of the Quantum Algorithm theory. GENETIC ALGORITHMS Genetic Algorithms (GA's) are global search algorithms based on the mechanics of natural genetics and natural selection. In the genetic search, a finite length binary string represents each design variable and the set of all possible solutions is so encoded into a population of binary strings. Genetic transformations, analogous to biological reproduction and evolution, are subsequently used to vary and improve the encoded solutions. Usually, three main operators i.e. crossover, mutation and selection are used in the genetic search. The selection process is one that biases the search toward producing more fit members in the population and eliminating the less fit ones. Hence, a fitness value is first assigned to each string in the population. One simple approach to select members from an initial population is to assign each member a probability of being selected, on the basis of its fitness value. A new population pool of the same size as the original is then created with a higher average fitness value. The process of selection simply results in more copies of the dominant design to be present in the population. The crossover process allows for an exchange of design characteristics among members of the population pool with the intent of improving the fitness of the next generation. Crossover is executed by selecting strings of two mating parents, randomly choosing two sites on the strings, and swapping strings of 0's and l's between these chosen sites. Mutation safeguards the genetic search process from a premature loss of valuable genetic material during selection and crossover. The process of mutation consists into choosing a few members from the population pool on the basis of their probability of mutation and switch 0 to 1 or vice versa at a randomly selected mutation rate on the selected string. In the foregoing discussion, the mechanics of the genetic search are simple. However, there are some key differences from traditional methods that contribute to the strength of the approach. GA's work on function evaluations alone and do not require function derivatives. While derivatives contribute to a faster convergence towards the optimum, they may also direct the search towards a local optimum. Furthermore, since the search proceeds from several points in the design space to another set of design points, the method has a higher probability of locating a global minimum as opposed to those schemes that proceed from one point to another. In addition, genetic algorithms work on a coding of design variables rather than variables themselves. This allows for an extension of these algorithms to design space consisting of a mix of continuous, discrete and integer variables. In the context of GAs operating on binary strings, a schema (or similarity template) is a string of symbols taken from the alphabet {0,1,#} . The character # is interpreted as "don't care" symbol, so that a schema can represent several bit strings. For example, the schema #10#1 represents four strings: 1001 1 ,0101 1 , 1 1001 , and 11011. The number of non-# symbols is called the order 0(H) of a schema H. The distance between the furthest two non-# symbols is called the defining length L(H) of the schema. Holland obtained a result (the schema theorem) that predicts how the number of strings in a population matching (or belonging to) a schema is expected to vary from one generation to the next (Holland, 1992). The theorem is as follows: where m(H,t) is the number of strings matching the schema H at generation t, f(H,t) is the mean fitness of the strings matching H, f(t) is the mean fitness of the strings in the population, p m is the probability of mutation per bit, p c is the probability of crossover, N is the number of bits in the strings, M is the number of strings in the population, andE[w(H,t + l)] is the expected number of strings matching the schema H at generation t +1. This is slightly different version of Holland's original theorem. Equation (1) applies when crossover is performed taking both parents from the mating pool (Goldberg, 1989). The three horizontal curly brackets beneath the equation indicate which operators are responsible for each term. The bracket above the equation represents the probability of disruption of the schema H at generation t due to crossover P d (H,t) . Such a probability depends on the frequency of the schema in the mating pool but also on the intrinsic fragility of the schema L(H)/(N-1). QUANTUM ALGORITHMS The problems solved by the quantum algorithms may be stated as follows: The structure of a quantum algorithm is outlined, by a high level representation, in the schematic diagram of Fig. 3. The input of a quantum algorithm is always a function /from binary strings into binary strings. This function is represented as a map table, defining for every string its image. Function / is firstly encoded into a unitary matrix operator U depending on /properties. In some sense, this operator calculates /when its input and output strings are encoded into canonical basis vectors of a Complex Hubert Space: U F maps the vector code of every string into the vector code of its image by/ BOX 1 : UNITARY MATRIX U F A squared matrix U F on the complex field is unitary if its inverse matrix coincides with its conjugate transpose: U F Λ = U F " A unitary matrix is always reversible and preserves the norm of vectors. When the matrix operator U F has been generated, it is embedded into a quantum gate G, a unitary matrix whose structure depends on the form of matrix U F and on the problem we want to solve. The quantum gate is the heart of a quantum algorithm. In every quantum algorithm, the quantum gate acts on an initial canonical basis vector (we can always choose the same vector) in order to generate a complex linear combination (let's call it superposition) of basis vectors as output. This superposition contains all the information to answer the initial problem. After this superposition has been created, measurement takes place in order to extract this information. In quantum mechanics, measurement is a non- deterministic operation that produces as output only one of the basis vectors in the entering superposition. The probability of every basis vector of being the output of measurement depends on its complex coefficient (probability amplitude) in the entering complex linear combination. The segmental action of the quantum gate and of measurement constitutes the quantum block. The quantum block is repeated k times in order to produce a collection of k basis vectors. Being measurement a non-deterministic operation, these basic vectors won't be necessarily identical and each one of them will encode a peace of the information needed to solve the problem. The last part of the algorithm consists into the interpretation of the collected basis vectors in order to get the right answer for the initial problem with a certain probability. Encoder The behaviour of the encoder block is described in the detailed schematic diagram of Fig. 4. Function/is encoded into matrix U F in three steps. Step 1 The map table of function /{ 0,1 } "- { 0,1 } m is transformed into the map table of the iniective function F:{0,1 }" +m →{0,l }" +m such that: F(x Q , .., x„. u y 0 , .., ■■, x„-ι)θ(y 0 , •■, m- ι)) (2) The need to deal with an injective function comes from the requirement that U is unitary. A unitary operator is reversible, so it can't map 2 different inputs in the same output. Since U will be the matrix representation of F, F is supposed to be injective. If we directly employed the matrix representation of function / we could obtain a non-unitary matrix, since/could be non-injective. So, injectivity is fulfilled by increasing the number of bits and considering function F instead of function/ Anyway, function /can always be calculated from F by putting (y 0 , ••, V m -ι)=(0 >" ,0) in the input string and reading the last m values of the output string. BOX 2: XOR OPERATOR θ The XOR operator between two binary strings p and q of length m is a string s of length m such that the z ' -fh digit of s is calculated as the exclusive OR between the z ' -fh digits of p and q: p=(po, ..,p n -\) q=(qo, .., q n -\) s =p ® q = ((po+qo) mod 2, .., (p n -i+<?n-i) mod 2)) Step 2 Function F map table is transformed into U F map table, following the following constraint: se {0,l }" +m : U F [τ( S )]= τ [F(s)] (3) The code map τ : { 0, 1 } n m → C 2 " +m (C 2 " +m is the target Complex Hubert Space) is such that: o v, x n+nι -, ) = τ(x 0 )® .. ® τ{x n+m _, ) = I X 0 .J „ Code τ maps bit values into complex vectors of dimension 2 belonging to the canonical basis of C . Besides, using tensor product, τ maps the general state of a binary string of dimension n into a vector of dimension 2", reducing this state to the joint state of the n bits composing the register. Every bit state is transformed into the corresponding 2-dimesional basis vector and then the string state is mapped into the corresponding 2"-dimesional basis vector by composing all bit- vectors through tensor product. In this sense tensor product is the vector counterpart of state conjunction. Examples: Vector Tensor Products Basis vectors are denoted using the ket notation \i>. This notation is taken from Dirac description of quantum mechanics. Step 3 UF map table is transformed into UF using the following transformation rule: This rule can easily be understood considering vectors \i> and | > as column vectors. Belonging these vectors to the canonical basis, UF defines a permutation map of the identity matrix rows. In general, row | > is mapped into row | >. This rule will be illustrated in detail on the first example of quantum algorithm: Grover's algorithm. Quantum block The heart of the quantum block is the quantum gate, which depends on the properties of matrix UF. The scheme in Fig. 5 gives a more detailed description of the quantum block. The matrix operator UF in Fig. 5 is the output of the encoder block represented in Fig. 4. Here, it becomes the input for the quantum block. This matrix operator is firstly embedded into a more complex gate: the quantum gate G. Unitary matrix G is applied k times to an initial canonical basis vector \i> of dimension _" +m . Every time, the resulting complex superposition G|0..01..1> of basis vectors is measured, producing one basis vector |x,> as result. All the measured basis vectors {|x/>,..,|x > } are collected together. This collection is the output of the quantum block. The "intelligence" of such algorithms is in the ability to build a quantum gate that is able to extract the information necessary to find the required property of/ and to store it into the output vector collection. The structure of the quantum gate for every quantum algorithm will be discussed in detail, observing that a general description is possible. In order to represent quantum gates we are going to employ some special diagrams called quantum circuits. An example of quantum circuit is reported in Fig. 6. Every rectangle is associated to a matrix 2"x2", where n is the number of lines entering and leaving the rectangle. For example, the rectangle marked U F is associated to matrix U F - Quantum circuits let us give a high-level description of the gate and, using some transformation rules, which are listed in Fig. 7, it is possible to compile them into the corresponding gate-matrix. It will be clearer how to use these rules when we afford the first examples of quantum algorithm. Example: Matrix Tensor Product 5 6 10 12 7 8 14 16 15 18 20 24 21 24 28 32 Decoder The decoder block has the function to interpret the basis vectors collected after the iterated execution of the quantum block. Decoding these vectors means to retranslate them into binary strings and interpreting them directly if they already contain the answer to the starting problem or use them, for instance as coefficients vectors for some equation system, in order to get the searched solution. This part will not being investigated in detail because it is a non-interesting easy classical part. Because of the particular importance of the Grover's Algorithm in the realization of controllers, a brief description of the Grover's algorithm is given. GROVER'S PROBLEM Grover's problem is so stated: In Deutsch-Jozsa' s algorithm we distinguished two classes of input functions and we were supposed to decide what class the input function belonged to. In this case the problem is in some sense identical in its form, even if it is harder because now we are dealing with 2" classes of input functions (each function of the kind described constitutes a class). Encoder In order to make the discussion more comprehensible, we prefer firstly to consider a special function with n=2. Then we discuss the general case with n-2 and finally we analyze the general case with n>0. Al. Introductory example Let's consider the case: n = 2 /(01)=1 In this case/map table is so defined: Step 1 Function / is encoded into injective function F, built according to the usual statement: F:{θ,l}" +I →{0,l}" +1 :F(x 0 ,x ] ,y 0 ) = (x 0 ,x ] ,f(x 0 ,x ] )@y 0 ) Then F map table is: Step 2 Let's now encode F into the map table of U F using the usual rule: Vse {0,l }"^ U F [τ(s)]= τ[F(s)] where ris the code map defined in Equation (3). This means: Step 3 From the map table of U F we are supposed to calculate the corresponding matrix operator. This matrix is obtained from Equation (4) using the rule: U F is so calculated: U F |00> |01> |10> |1 1> |00> I 0 0 0 |01> 0 C 0 0 |10> 0 0 I 0 |1 1> 0 0 0 I The effect of this matrix is to leave unchanged the first and the second input basis vectors of the input tensor product, flipping the third one when the first vector is |0> and the second is |1>. This agrees with the constraints on U F stated above. B. General case with n=2 Let's now take into consideration the more general case: The corresponding matrix operator is: with M x =CΛ\/i≠x M,=I. C. General case It is fairly natural to generalize operator U F from the case n=2 to the case ri>\. In fact, we always find operator C on the main diagonal of the block matrix, in correspondence of the celled labeled by vector |x>, where x is the binary string having image one by/ Therefore: U F |00> |01> ... | 11> |00> Moo 0 0 |01> 0 M i 0 |1 1> 0 0 Mu Matrix U F , the output of the encoder, is embedded into the quantum gate. We describe this gate using a quantum circuit such that depicted in Fig. 8. Operator D„ is called diffusion matrix of order n and it is responsible of interference in this algorithm. It plays the same role as QFT„ in Shor's algorithm and of "H in Deutsch-Jozsa' s and Simon's algorithms. This matrix is defined in this way: D„ |0..0> |0..1> \i> |1..0> |1..1> |0..0> -1+1/2" " ' 1/2" "1 1/2"-' 1/2"- 1 1/2"-' |0..1> 1/2"-' -1+1/2"-' 1/2"-' 1/2"-' 1/2"-' \i> 1/2"-' 1/2"-' -1+1/2"-' 1/2"-' 1/2" "1 |1..0> 1/2"-' 1/2"-' 1/2"-' -1+1/2"-' 1/2"-' |1..1> 1/2"-' 1/2"-' 1/2"-' 1/2"-' -1+1/2"-' Using the identity transformation (Fig. 7.c), the previous circuit can be compiled into the circuit of Fig. 9. A2. Introductory example: Dynamic Analysis In the introductory example we dealt above, U had the following form: UF |00> |01> |10> |1 1> |00> I 0 0 0 |01> 0 C 0 0 |10> 0 0 I 0 |11> 0 0 0 I Let's calculate the quantum gate G=[(D 2 ®I) -U F ] • ( H) in this case: D 2 ®J |00> |01> |10> |1 1> |00> -1/2 1/2 1/2 1/2 |01> 1/2 -1/2 1/2 1/2 |10> 1/2 1/2 -1/2 III |11> 1/2 1/2 7/2 -1/2 Choosing h=\, we obtain: Now, consider the application of G to vector |001>: G|00l) = -|00)®(C + /)H|l) + -|0l)®(-C + 3/)H|l) + -|ιo)®(c + /)H|ι) + -|n)®(c + /)H|ι Let's calculate the operator (-C+3I)H/4. Then -C+3I |o> |i |0> 3 -1 |i -1 Therefore: 1 4 (-c+3/)H|ι) = -^βo)-|ι)) Let's calculate the operator (C+I)H/4. Then: C+I |0> |1> |o> 1 1 1 1 Therefore: i(c + /)H|ι) = o This means that |001> is mapped into vector |01>(|0>-|l>)/2 , 1/2. Taking the binary values of the first two vectors of dimension 2, we find x. It might be useful to picture the evolution of the probability amplitude of every basis vector while operator 3 H. U F and D_®I are applied in sequence. This is done in Fig. 10. Operator 3 Hputs the initial canonical basis vector |001> into a superposition of all basis vectors with the same (real) coefficients in modulus, but with positive sign if the last vector is |0>, negative otherwise. Operator U F creates correlation: it flips the third vector if the first two vector are |0> and |1>. Finally, D_®I produces interference: for every basis vector | oX V)> it calculates its output probability amplitude b γ inverting its initial probability amplitude c xoxm and summing the double of the mean a y0 of the probability amplitude of all vectors in the form |xoXιV;o>. In our example α 0 = l/(4-2 I/2 ), g. \ - -1/(4-2' 2 ). Take, for instance, basis vector |000>. Then «Ooo=-«ooo+2«o=-l/(2-2 1 2 )+2/(4-2 1/2 )=0. D. General case with n=2 In general, ifn-2, / has the following form: where M x = CΛ\/i≠x:M,= I (x, i : {0, 1 }" ). Let's calculate the quantum gate G=(D_®I) • 2+1 - U F -( H) in this general case G |00> |01> |00> (-Moo+Mo i +Mι o+Mi i )H/4 (-M 0 o-Mo,+M,o-Mι,)H/4 |01> (Moo-Moι+M,o+M,,)H/4 (Moo+M 0 ι+M 10 -M,ι)H/4 |10> (Moo+M 0 ι-Mιo+Mιι)H/4 (Moo-Mo,-M,o-Mι,)H/4 |11> (Moo+Moι+M,o-Mn)H/4 (Moo-Moι+M, 0 +Mι,)H/4 G |10> |11> |00> (-Moo+Moι-Mιo-Mιι)H/4 (-Moo-Mo i -M, o+ i , )H/4 |01> (Moo-Mo i -Mi o-M,ι)H/4 (Moo+Moι-M,o+Mn)H/4 |10> (Moo+Moι+Mιo-Mι H/4 (Moo-M 0 ι+M 10 +M,,)H/4 |11> (Moo+Mo ι-M,o+M,,)H/4 (Moo-Mo i -Mi o-Mi OH/4 Now, consider the application of G to vector |001>: GJ00^=^|00}®(-M 00 +M 0] +M I0 +M n )H^l)+^|0l)®(M 00 -M 01 +M 10 +M π )H^l) + i|lθ)®(M 00 +M 0] -M, 0 +M n )H^l)+^|ll)®(M 00 +M 0 ,+M, 0 -M u )H^l) Consider the following cases: e=00: G|001) = — |OO) ® (- C + 3/)H|l) + — j 01) ® (c + /)H|1) + G\ 001) = — |OO> ® (C + /)H|1) + -| 01) ® (- C + 3/)H|l) + -|ιo) ® (c + /)H|ι) + -|ι l) ® (c + /)H|ι) = I o =10: G|00l) = -|00)®(C + 7)H|l) + -|0l)®(C + /)H|l) + -|lθ)®(-C + 3/)H|l) + -[ll)®(C + x=\\ G|θOl) = -|θθ)®(C + /)H|l) + -|θl)®(C + /)H|l) + lθ)®(C + /)H|l) + -|ll)®(-C + This means that if we measure the output vector and encode back the first two basis vectors of dimension 2 in the resulting tensor product, we get the following results: E. General case (ri>0) In the general case n>0, U F has the following form: where M x = CΛVZ ' ≠X:M,= 7 (X, G : {0,1 }" ). D„®I |0..0> |0..1> \i> |1..0> |1..1> |0..0> -7+7/2"-' 7/2" "1 7/2" "1 7/2"- 1 7/2" "1 |0..1> 7/2"-' -7+7/2"-' 7/2"-' 7/2" " ' 7/2"-' \t> 7/2" "1 7/2"-' -7+7/2"-' 7/2" " ' 7/2"-' |1..0> 7/2"-' 7/2"-' 7/2"-' -7+//2" "1 7/2" "1 |1..1> 7/2" "1 7/2"-' 7/2"-' 7/2" " ' -7+7/2"-' Now, suppose h=\. Then: Being M x = C and Vz ' ≠x:M,= I. this column may be written as: and so: Now, consider to apply matrix operator {[-l+(2"-l)/2"-']7+ CΩ. nΛ }HΩ. n/2 and matrix operator {(2"-l)2" " '7+ [-\ + \/2 nA ]C}H/2 n/2 to vector |1>: This means: ' Λ = l 0..01) = 0..1)+ .. + 2" - 2 2" 1 + 1 + 1..1) ® >-|ι> > + .. + (« + l) 2 2 which can be written as a block vector: Now, let us suppose of applying the operator (D„®T) -U F to a vector in this form: where a and β are real number such that (2"-l)« +β =1. The result is: This means that if we start from vector G/, = ι|0..01>, which is in the form considered, and we apply h times operator (D„®I ) ■ U F , the coefficients at time / are such that: So ? increases while a decreases. Consider for example the vector superposition in Fig. 11.a. By applying the operator H the vector superposition becomes the superposition of Fig. l l.b. Applying the entanglement operator U F with x=001, the vector superposition of Fig. 11 x is produced and, after the application of D„®I the superposition is the one depicted in Fig. l l .d. Here, the probability amplitudes of non-interesting vectors are not null, but they are very small. Suppose to apply operator U F again: the resulting superposition is reported in Fig. l l.e. Then, by applying D„®I, we obtain the vector linear combination of Fig. l l.f. We can observe that the probability amplitude of the desired vectors has increased in modulus. This means a greater probability to measure vectors |0010> or |0011>. If we do measurement after h repetitions of operator D„ -U F , what is the probability P(h) to measure vectors |x>®|0> or |X>®| 1>? We can show that the: The quantum block is repeated only 1 time with a sufficiently large h=0(2" 2Λ ). So, the final collected basis vector is unique. Information Analysis A3. Introductory example: Information Analysis of Grover 's algorithm Let us consider the operator that encoding the input function as: 7 0 0 0 0 0 0 0 o c o o o o o o 0 0 7 0 0 0 0 0 0 0 0 7 0 0 0 0 U F = 0 0 0 0 7 0 0 0 0 0 0 0 0 7 0 0 0 0 0 0 0 0 7 0 0 0 0 0 0 0 0 7 Table 1 represents a general iteration algorithm for information analysis of Grover's QA. In Tables 2 and 3 two iterations of this algorithm are reported. From these tables we observe that: 1. The entanglement operator in each iteration increases correlation among the different qubits; 2. The interference operator reduces the classical entropy but, as side effect, it destroys part of the quantum correlation measure by the Von Neumann entropy. Grover algorithm builds in several iterations intelligent states (see Eq.(7)). Every iteration firstly encodes the searched function by entanglement, but then partly destroys the encoded information by the interference operator; several iterations are needed in order to conceal both the need to have encoded information and the need to access it. Grover's algorithm is from Searching Group of Algorithms. The Principle of Minimum Classical (Quantum) Entropy in output of QA means success result on intelligent output states. The searching QA's needed checking minimum of Classical Entropy and co-ordination the gap with Quantum Entropy Amount. The ability of co-ordination of these both values characterizes the intelligence of searching QA's. Decoder As in Deutsch's algorithm, when the output vector from the quantum gate has been measured, we must interpret it in order to find x. From the analyses we did above, this step is very simple. In fact, it is sufficient to choose a large h in order to get the searched vector |x>®|0> or |X>®| 1 > with probability near to 1. After getting it we encode back into their binary values the first n basis vector in the resulting tensor product, obtaining string x as final answer. Therefore, it is evinced that Grover's algorithm can be used in search problems. A search problem can always be so stated: given a truth function / : {θ,l}" → {θ,l} such that there is only one input x e 0,l}" : /(x) = 1 find x : this is exactly the kind of problem that can be solved by the Grover's algorithm. Comparing between them the algorithm above analyzed, it is clear that quantum algorithms have the same structure: a collection of vectors is sequentially submitted to a superposition operator, to an entanglement operator and to an interference operator. The resulting set of vectors is analyzed by a measurement block which extract the desired information. Finally it must be observed that the differences among quantum algorithms consist essentially in the choice of the interference operator Int, the entanglement operator U F and of the superposition operator S. The input vector is a sort of message that traverses a quantum channel made of three main sub-channels: superposition, entanglement and interference. The entanglement channel is the true input of the algorithm gate. It belongs to a given family depending on the problem to solve and on its input. The superposition and especially the interference channels are chosen in such a way that several measurements effectuated at the end of the channel reveal what kind of entanglement has taken place at the middle of the channel. In conclusion, it can be stated that Quantum Algorithms are global random searching algorithms based on the quantum mechanics principles, laws, and quantum effects. In the quantum search, each design variable is represented by a finite linear superposition of classical initial states, with a sequence of elementary unitary steps manipulate the initial quantum state | z) (for the input) such that a measurement of the final state of the system yields the correct output. It begins with elementary classical preprocessing, and then it applies the following quantum experiment: starting in an initial superposition of all possible states, it computes a classical function, applies a Quantum Fast Fourier Transform (QFFT), and finally performs a measurement. Depending on the outcome it may carry out one more similar quantum experiments, or complete the computation with some classical post-processing. Usually, three principle operators, i.e. linear superposition (coherent states), entanglement, and interference, are used in the quantum search algorithm. In general form the structure of quantum search algorithm can be described as Interference A+l G = {lnt ® I m ) U F H„ ® s, (5) Entanglement Superposition J In this quantum algorithms and genetic algorithms structures have the following interrelations: Interferene Entaπglemat A+l Q A (Gate): (/«/®/,„) o Siipcr mmm In Fig. 12 the structures of GA and QSA are compared. In GA a starting population is randomly generated. Mutation and crossover operators are then applied in order to change the genome of some individuals and create some new genomes. Some individuals are then cut off according to a fitness function and selection of good individuals is done generating a new population. The procedure is then repeated on this new population till an optimum is found. By analogy in QSA an initial basis vector is transformed into a linear superposition of basis vector by the supeφosition operator. Quantum operators such as entanglement and interference then act on this supeφosition of states generating a new one where some states (the non-interesting) have reduced their probability amplitude in modulus and some other (the most interesting) have increased it. The process is repeated several times in order to get to a final probability distribution where an optimum can be easily observed. The quantum entanglement operator acts in analogy to the genetic mutation operator: in fact it maps every basis vector in the entering superposition into another basis vector by flipping some bits in the ket label. The quantum interference operator acts like the genetic crossover operator by building a new supeφosition of basis states from the interaction of the probability amplitudes of the states in the entering supeφosition. But the interference operator includes also the selection operator. In fact, interference increases the probability amplitude modulus of some basis states and decreases the probability amplitude modulus of some other ones according to a general principle, that is maximizing the quantity with T = {l,...,«} . This quantity is called the intelligence of the output state and measure how the information encoded into quantum correlation by entanglement is accessible by measurement. The role of the interference operator is in fact to preserve the Von Neumann entropy of the entering entangled state and to reduce at its minimum the Shannon entropy, which has been increased to its maximum by the supeφosition operator. Note that there is a strong difference between GA and QSA: in GA the fitness functions changes with different instances of the same problem, whereas mutation and crossover are always random. In QSA the fitness function is always the same (the intelligence of the output state), whereas the entanglement operator strongly depends on the input function / . We propose in this patent to merge the two schemes of GA and QSA undergoing the analogy between them and integrating their peculiarities. The new scheme concerns quantum genetic search algorithms (QGSA) and is depicted in Fig. 13. An initial supeφosition with t random non-null probability amplitude values is firstly generated \input) = (8) Every ket corresponds to an individual of the population and in the general case is labeled by a real number. So, every individual corresponds to a real number x, and is implicitly weighted by a probability amplitude value c, . The action of the entanglement and interference operators is genetically simulated: k different paths are randomly chosen, where each path corresponds to the application of an entanglement and interference operator. The entanglement operator consists into an injective map transforming each basis vector into another basis vector. This is done defining a mutation ray ε > 0 and extracting t different values ε x ,...,ε, such that - ε ≤ ε t ≤ ε . Then the entanglement operator V F for path j is defined by the following transformation rule: \x. + ε, (9) When \ F ' acts on the initial linear supeφosition, all basis vectors in it undergo mutation \ψ > = Σ< x, + ε. (10) /=! The mutation operator ε can be described as following relation 1 for bit permutation 0 0 for bit permutation 1 (1 1) - 1 for phase permutaion Suppose there are eight states in the system, encoded in binary as 000, 001, 010, 011, 100, 1 10, 1 1 1. One of possible states that may be in during a computation is 10) . A unitary transform is usually constructed so that it is performed at the bit level. 0 I ofo For example, the unitary transformation will switch the state \ θ) to 11 l o y and ll) to | θ) (NOT operator). Mutation of a chromosome in GA alters one or more genes. It can also be described by changing the bit at a certain position or positions. Switching the bit can be simply carried out by the unitary NOT-transform. The unitary transformation that acts, as example on the last two bits wall transform the state |l00l) to state [l 01 1) and the state 10111) to the state J0101) and so on can be described as the following matrix is a mutation operator for the set of vectors | 0000),J000l),...,|l 1 11 A phase shift operator Z can be described as the following Z : , and 0) → 1) operator Y : . , , , is a combination of negation NOT and a phase shift |ι) → -|o) y operator Z . Remark 1. As example, the following matrix operates a crossover on the last two bits transforming 101 1 and 0110 in 1010 and 0111, where the cutting point is at the middle (one-point crossover). The two-bit conditional phase shift gate has the following matrix form and the controlled NOT (CNOT) gate that can created entangled states is described by the following matrix: The interference operator Int' is chosen as a random unitary squared matrix of order t whereas the interference operators for the other paths are generated from Int 1 according to a suitable law. Examples of such matrices are the Hadamard transformation matrix H, and the diffusion matrix D, , that have been defined above, but many other ones can be built. The application of entanglement and interference operators produces a new supeφosition of maximum length t : output ') + ε, (14) The average entropy value for this state is now evaluated. Let E(x) be the entropy value for individual x. Then The average entropy value is calculated by averaging every entropy value in the supeφosition with respect to the squared modulus of the probability amplitudes. According to this sequence of operations, k different superpositions are generated from the initial one using different entanglement and interference operators. Every time the average entropy value is evaluated. Selection consists in holding only the supeφosition with minimum average entropy value. When this supeφosition is obtained, it becomes the new input supeφosition and the process starts again. The interference operator that has generated the minimum entropy supeφosition is hold and Int 1 is set to this operator for the new step. The computation stops when the minimum average entropy value falls under a given critical limit. At this point measurement is simulated, that is a basis value is extracted from the final supeφosition according to the squared modulus of its probability amplitude. The whole algorithm is resumed on Fig.14 in the followings: 1. \ input) = ∑c,| ,) with x, random real numbers and c, random complex / numbers such that ∑||c,|| ~ =1; Int' unitary operator of order t randomly /=1 generated; . -4 = with —ε≤ε ≤ε randomly generated and Vz ' ,,/,,7 .l ≠ x. +ε .l . with Int' unitary squared matrix of order t; . +ε l/t ) with j* = arg minJ Jlc' fEk +ε, ) V L'-ι 6. If E* < E' and information risk increment is lower than a pre-established quantity Δ then extract x,. + ε,, from the distribution |x, + ε t /t , \\c /t I 7. Else set \input) to \ output *) , Int 1 to Int ' * and go back to step 2. Remark 2. Step 6 includes methods of accuracy estimation and reliability measurements of the successful result. The simulation of quantum search algorithm is represented through information flow analysis, information risk increments and entropy level estimations: 1) Applying a quantum gate G on the input vector stores information into the system state, minimizing the gap between the classical Shannon entropy and the quantum von Neumann entropy; 2) Repeating said of applying for calculation (estimation) of information risk increments (see below, Remark 3); 3) Measuring said basis vector for estimation the level of average entropy value; 4) Decoding said basis vector of successful result for computation time stopping when the minimum average entropy value falls under a given critical level limit. Remark 3. The information risk increments are calculated (estimated) according to the following formula: - jr(w 2 )2l(p : p) ≤ (δr = r - r) < Jr (w 2 j2l(p : p) where: • W is the loss function; • is an average risk for the corresponding probability density function p(x,θ); • x = (x, , ... x„ ) is a vector of measured values; • θ is an unknown parameter; • l(p : p) = is the relative entropy (the Kullback- Leibler measure of information divergence). As stated above, a GA searches for a global optimum in a single solution space. In order to clearly understand the meaning of this statement, further clarifications follows. A detailed description of the structures of GA and QSA algorithms is showed in Fig. 15. In the GA search, a solution space 301 leads to an initial position (input) 302. The initial position 302 is coded into binary strings using a binary coding scheme 310. GA operators as selection 303, crossover 304, and mutation 305 are applied to the coded strings to generate a population. Through a fitness function 306 (such as a fitness function based on minimum entropy production rate or some other desirable property) a global optimum for the single space 301 is found. Example. The "single solution space" includes any possible coefficient gains of PID controller of plant under stochastic disturbance with fixed statistical properties as the correlation function and probability density function. After stochastic simulation of dynamic behaviour of plant under stochastic excitation with GA we can received the optimal coefficient gains of intelligent PID controller only for stochastic excitation with fixed statistical characteristics. In this case we define the "single space of possible solutions" as 301. If we use stochastic excitation on plant with another statistical characteristics then intelligent PID controller do not can realize control law with fixed KB. In this case we define a new space of possible solutions as 350. Remark 4. If we want the universal look-up table for intelligent PID controller from many single solution spaces, then the application of GA do not give us a final corrected result (GA - operators not include supeφosition and quantum correlation as entanglement). GA give the global optimum on the single solution space. In this case we loss the important information about statistical correlation between coefficient gains in the universal look-up table. By contrast, in the QSA shown in Fig. 15, a group of N solution spaces 350 are used to create an initial position (input) 351. Quantum operators such as supeφosition 352, entanglement 353, and interference 354 operate on the initial position to produce a measurement. Supeφosition is created using a Hadamard transformation 361 (one-bit operation). Entanglement is created through a Controlled-ΝOT (CΝOT) operation 362 (a two-bit operation). Interference is created through a Quantum Fourier Transform (QFT) 363. Using the quantum operators, a universal optimum for covering all the spaces in the group 350 is found. Remark 5. Thus, the classical process of selection is loosely analogous to the quantum process of creating a supeφosition. The classical process of crossover is loosely analogous to the quantum process of entanglement. The classical process of mutation is loosely analogous to the quantum process of interference. Fig. 16 shows a general structure of a QSA having a conceptual level 400, a structure level 401, a hardware level 402, and software level 403. At the conceptual level 400, an initial state 410 is provided to a process block 420 that creates a superposition of states. The supeφosition of states is provided to a process block 430 that provides a unitary operator U f to the entanglement. An output of the process block 430 is provided to a solution block 440 that computes an interference of solutions. An output of the solution block 440 is provided to observation/measurement block 460. At the structure level, an input is coded as a series of quantum bits (qubits) are prepared in an initial state (e.g., a logical zero state) and provided that are provided to a Hadamard Transform Matrix 421 to produce the supeφosition. The supeφosition from the matrix 421 to provide to the operator U f that produce the entanglement where U f is in general case a solution to the Schrodinger equation in a process block 431. An output from the process block 431 is provided to a Quantum Fourier Transform (QFT) to provide the interference. The output of the QFT 441 is provided to a Transform Matrix 451. An output of the Transform Matrix 451 is provided as a solution of quantum searching process with maximum probability amplitude 461. At the hardware level, the supeφosition 420 is produced by rotation gates 422. the operator U f is implemented as a consequence of elementary gate operations and CNOT-gates 432, the QFFT 441 is implemented as a consequence of Hadamard and Permutation (P) operator gates, and the Transform Matrix 451 is implemented using rotation gates 452. Fig. 17 illustrates the QSA as an architecture involving the sequence from an initial state, through the creation of supeφosition. Entanglement is applied to the supeφosition using quantum parallelism inherent a coherent quantum system with entangled states. The parallelism collapsed when interference is introduced to produce a supeφosition of solutions through the QFFT. Fig. 17 illustrates these processes by comparing the classical double slit experiment to logical quantum operations and to the quantum search operations. Remark 6. In the classical double slit, a source creates a particle having an initial supeφosition of states. This is analogous to the quantum algorithm operation of applying a Hadamard (rotation gates) transform to a qubit initial to an eigenstate. Returning to the double slit, entanglement is produced with the particle passes through the slits. This corresponds to the process of operating on the supeφosition using the unitary operator U f . Again returning to the double slit, interference is produced when the entangled particles strike a photographic film placed behind the slits to produce an interference pattern (a supeφosition of solutions). This corresponds to the QFFT. Finally, selection of the desired solution corresponds to choosing the largest probability from the QFFT (that is, the brightest line produced on the film). The use of the QSA in connection with a GA or FNN is shown Fig. 18. A generator of initial states 604 works in connection with the GA 605 and, optionally a fuzzy neural network (FNN) 603, to produce a set of initial states. The initial states are provided to a Hadamard transform 602 to produce a supeφosition of states 601. The supeφosition of classical states is provided to a process block 606 that introduce entanglement through the use of operators such as a CNOT. An output from the process block 606 is provided to an interference block 607 that computes an interference of the entanglement states using QFFT. An output from the interference block 607 is provided block to a measurement/observation block 608 which selects a desired solution from the supeφosition of solutions computed by the block 607. An output from the measurement/observation block 608 is provided to a decision- making block 609. The decision block 609 makes decisions such as inputs for the generator of initial states 604 and, optionally, a new fitness function for the GA 605. The decision block 609 can also provide data to, and receive data from a decoding block 610. The decoding block 610 can communicate with sensors, other control systems, users, etc. The basis of quantum computation is obtained from the laws of quantum theory wherein information is something that encoded in the state of a physical system, and a computation is something that can be carried out on an actual physical realizable device. A concrete example showing how a random excitation on control object can "kick" the single space of solutions for fuzzy controller is described in the followings. Example. The KB of the intelligent suspension control system was received with GA and with stochastic simulation using the random Gaussian signal as road. After on-line simulation with fuzzy controller we use another two real road signal (road measurements in Japan). The results of simulation for pitch angles in Fig. 20 and 21 are shown. Fig. 20 shows that the changing in statistical characteristics of roads (see Fig. 19) kick the single space of solutions for fuzzy controller. In this case we must repeat the simulation with GA and use another single space of solution with the fitness function as entropy production for fuzzy controller with non-Gaussian excitation on control object. More in details, we are applying GA to minimization of the dynamic behavior of the dynamic system (Plant), and to minimization of entropy production rate. We are using different kinds of random signals (as a stochastic disturbances) which are represents the profiles of roads. Some of this signals were measured from real roads, in Japan, and some of them were created using stochastic simulations with forming filters based on FPK (Fokker - Planck - Kolmogorov) equation. On Fig. 19 three typical road signals are presented. Charts 1901, 1902, 1903 represents changing rates of the signals. Assigned time scale is calculated the way that simulates the vehicle speed of 50kph. First two signals (HouseWC) and (HouseEC) are the measured real roads of Japan. Third signal is a Gaussian road obtained by stochastic simulation with the fixed type of the correlation function. We can see that the dynamic characteristics of this roads are similar (see charts (A)), but statistical characteristics of HouseWC road are very different from statistical characteristics of Gaussian and of HouseEC roads (see charts (B)). HouseWC road represents so called Non-Gaussian (color) stochastic process. Big difference in the statistical characteristics of the road signals gives us completely different responses from dynamic system and as a result, required different control solutions. Figs. 20 and 21 illustrate the dynamic and thermodynamic response of the suspension system (PLANT) to the mentioned above excitations. Charts (a) represent dynamic behaviour of the pitch angle of the vehicle under HouseWC (linel), HouseEC (line 2) and Gaussian (line 3) roads. The knowledge base as a look-up table for fuzzy controller in this case was obtained using Gaussian road signal, and then applied to the HouseWC and HouseEC roads. We see that system response from the roads with the same characteristics are similar, which means that GA has found the optimum solution for Gaussian-like signal shapes, but response obtained from the system with HouseWC road is a completely different signal. For this Non-Gaussian road we need new control GA strategy that differs from the mentioned above e.g. it requires solution from different single space of solutions. On the phase portrait (Charts (b)) the difference of system responses is more visible. It is desirable, however, to search for a global optimum in multiple solution spaces to find a "universal" optimum. A quantum genetic search algorithm provides the ability to search multiple spaces simultaneously (as described below). Fig. 2 shows a modified version of the intelligent control system of the invention, wherein a Quantum Genetic Search Algorithm (QGSA) is inteφosed between the GA and the FNN. The QGSA searches several solution spaces, simultaneously, in order to find a universal optimum, that is, a solution that is optimal considering all solution spaces. Accelerator for quantum algorithms A hardware accelerator for simulating quantum algorithms on a classical computer is described here in below. The accelerator has a modular structure allowing its generalization to complex models. Starting from known modules, we build an architecture whose objective is the minimization of exponential time required for quantum algorithms simulation on classical computer. The main advantage of this methodology is the possibility of using the logic underlying quantum algorithms in the domain of Genetic Algorithm, opening the way to the new branch of Quantum Genetic Search Algorithm. The hardware accelerator is composed by • Encoder, Decoder, these blocks are the real interfaces with classical devices connected to the accelerator. • Quantum Block: it includes all non-classical operations that have to be performed. It is composed of Quantum Gate and Measurement Gate. • Quantum Gate: it is the core of the accelerator and it is composed three modules that mix the information in a quantum way. The three modules are the following: • Superposition Module: it depends on the class of problems to solve. • Entanglement Module: it takes the information from the encoder. • Interference Module: its operations are iterated until a solution is reached. • Measurement Gate: extract quantum information through a series of pseudo-random routines. The final information is sent to the Decoder. The three blocks of Supeφosition, Entanglement and Interference, suitably dimensioned for a certain number of qubits, constitute a Quantum Gate, in its general form. These three blocks are then "prepared" in order to implement the desired algorithm. Example of Quantum Gates implementing Grover's Algorithm are depicted in Figs. 23 and 27, and an example of Quantum Gate implementing Deutsch-Jozsa Algorithm is depicted in Fig. 24. Let us explain more in details how can be designed all the blocks that are enclosed in the scheme. • Superposition: On this step a tensor product among vectors is needed. This operation can be implemented by means of electric multipliers and mux- demux devices. H-Matrices can be build using ROM cells. • Entanglement: The large matrix U F , which needs to be modified according to F, can be made using an EPROM device. • Interference: It needs the same kind of blocks needed for Superposition. Only the connection are different. In the following two examples of quantum gates utilization (see Figs. 24-29) are proposed. Figs. 24 to 26 are relative to Deutsch-Jozsa' s Quantum Algorithms for decision making and Figs. 27 to 29 are relative to Grover's Quantum Algorithms for search in unstructured database. As it can be seen from the above schemes, the core of each subsystem is the Tensor Product Gate that performs the tensor product between a pair of input vectors, outputting a matrix whose components are products of values of all possible different pairs constituted by a component of an input vector and a component of the other vector. A tensor Product Gate can be implemented in a hardware form by suitably connecting a plurality of multipliers. The quantum gates here represented have only two qubits but they can be improved very easily. In fact each Tensor Product Gate that is added to subsystems provides a doubling of qubits in the gate, if this happens jointly with a suitable re-sizing of mux-demux blocks present in scalar products. It can also be noted that Interference Blocks in the proposed algorithms seems to be different from the architectural point of view. In fact the simplicity of Deutsch-Jozsa algorithm allows us to adopt a simplified structure, when building a gate implementing only this kind of algorithm. However the structure of Grover Interference is more general and could implement Deutsch-Jozsa, too. This fact gives to the second example of gate a feature of universality. For what concerns Quantum Genetic Search Algorithm Structure, its hardware part can be easily derived, with light modifications, from Grover's entanglement and interference blocks. In fact the only difference lies in a random generation of all the matrices, but keeping them unitary in all cases. An example of a possible embodiment of a random entanglement operator and of a random interference subsystem are depicted in Figs. 30 and 31. The core of the entanglement subsystem is the Dot Product Gate that performs the dot product between a pair of input vectors having the same number of components, outputting a value calculated as the sum of products of paired values of the components of the input vectors. A Dot Product Gate can be implemented in a hardware form by a using at least a multiplier, calculating the products of the paired values, and an adder, summing that products. Algorithm for searching in a database The Quantum Genetic Search Algorithm of the invention may be satisfactorily used even as an algorithm for searching in a database an item Xj belonging to a set X that is closest to a certain value Y 0 . As previously stated, a search problem can always be restated as a Grover's problem. Given that the Quantum Genetic Search Algorithm of the invention may be regarded as a particularly efficient kind of Quantum Algorithm, it is possible to use a Quantum Genetic Search Algorithm for solving a search problem choosing superposition, entanglement and interference operators according to a Grover's algorithm. More specifically, an algorithm for searching in a database an item Xj belonging to a set X that is closest to a certain value Y 0 is defined by: representing in vector form each item belonging to the set X producing an initial set of vectors; calculating a second set of vectors by a linear superposition of vectors of the initial set of vectors according to a Grover's Quantum Search Algorithm; performing on vectors of the second set a certain number of parallel computations of random entanglement operations and random interference operations according to a Grover's Quantum Search Algorithm, producing as many vectors representatives of items of the set X; associating to each resulting value of the parallel computations a fitness function which must be as greater as smaller the difference between the above mentioned resulting value and the desired value Y 0 is; performing a selection operation of resulting values of the parallel computations according to a Genetic Algorithm using said fitness functions; identifying the searched item Xj as the final result of the selection. Method for controlling a process and relative controller The QGSA can be used in a method for controlling a process (PLANT) driven by a control signal (u*). The control signal (u*) is calculated as a function of a parameter adjustment signal (CGS) and an error signal (ε), obtained as the difference between the state of the process (x) and of a reference signal (Y). The object of the method is to minimize a certain physical quantity, which can be for example the entropy production of the controlled process. To reach this goal, a signal (s) representative of the quantity to be minimized is derived by processing paired values of said state (x) of the process and said control signal (u*). The method of the invention advantageously uses the Quantum Genetic Search Algorithm to find the best control signal (u*) to input the process to control. Such a control signal is produced by a controller with an adjustable transfer characteristic as a function of a vector of values to assign to the parameters of the controller. So the problem of controlling a process can be restated in the following manner: find a vector of values that minimizes a certain quantity which is function of said vector, i.e. find a vector that minimizes a certain vector function. Therefore, it is evident that Genetic Algorithms are of great importance in methods for controlling a process and how a Quantum Genetic Search Algorithm can be effectively used in such applications. First a correction signal (κ2) is periodically calculated from a set of several different values of said control signal (u*), that minimize said derived signal (s) to be minimized. This correction signal (κ2) is calculated applying to a set of vectors representing as many different control signals (U*) a Quantum Genetic Search Algorithm, using a fitness function that is as greater as lower the quantity to be minimized is. Finally such correction signal (κ.2) is fed to a fuzzy neural network that produces said parameter adjustment signal (CGS) provided together the error signal (ε) to a fuzzy processor, which adjusts the transfer characteristic of the controller. Many different embodiments of this method can be implemented by changing the physical quantity to be minimized, which can be for example the difference between the Shannon and von Neumann Entropy or the Heisenberg uncertainty or, more specifically, for an internal combustion engine, the entropy production of the thermodynamic process. It is also possible to have a suitably adapted Quantum Genetic Search Algorithm of the invention choosing the interference and entanglement operators according to any of quantum problems: for example it is possible to choose such operators according to Grover's problem or a Shor's problem. A preferred embodiment of the method of the invention consists in running a Genetic Algorithm with the set of vectors representing as many different control signals (u*), producing a temporarily correction signal (K), which is elaborated by a Quantum Genetic Search Algorithm. This embodiment is preferred because in that way the convergence of the Quantum Genetic Search Algorithm is faster. A structure of a preferred hardware embodiment of the method of the invention is depicted in Fig. 2. The process (PLANT) driven by a control signal u* is placed in a classical feed-back control loop together with a PID controller. The PID produce the driving signal U* depending on an error signal ε calculated as a function of a state of the process x and of a reference signal Y. A circuit block derives a signal s representative of a quantity to be minimized, which can be the entropy production for example, calculated by processing paired values of the state x of the process and the control signal u*. The signal S can be input into a circuit QGSA implementing a Quantum Genetic Search Algorithm, outputting a correction signal κ2, or can be first managed by a circuit GA implementing a Genetic Algorithm, that produces a temporary correction signal K to input the QGSA circuit. Although the circuit implementing the GA is not essential in the structure depicted in Fig. 2, because a Quantum Genetic Search Algorithm of the invention may be considered as a "generalization" of a Genetic Algorithm, generally the circuit GA implementing a Genetic Algorithm is present in the system's architecture. This because the GA circuit produces structured data for the Quantum Genetic Search Algorithm, allowing a faster convergence of the algorithm. Generally it can be stated that a Genetic Algorithm produces optimal solution from single space of solution: it means that with the GA circuit implementing a Genetic Algorithm we can compress information from single space of solution with the guarantee of the safety of informative parameters in signal K. The quantum search on structured data guarantees the search of successful solution with higher probability and accuracy than on unstructured data. A fuzzy neural network FNN produces a driving signal depending on values of the correction signal κ2 output by the QGSA, and a fuzzy controller FC adjusts the transfer characteristic of the classical PID controller depending on values of the driving signal and of the error signal ε. Training system for an intelligent control system with reduced number of sensors The Quantum Genetic Search Algorithm can be used to realize an intelligent control system able to drive a process with a reduced number of sensors as compared to an optimal intelligent control system of the prior art. Before using a Fuzzy Neural Network (FNN), a "training" phase is necessary in which the FNN learns how to drive the process to be controlled. This "training" is run at the factory or repair center using many different sensors of physical quantities that characterize the running of the process. Generally, in this phase, several sensors that cannot be supported in the normal operation of the process are used. For this reason, it is also necessary to teach the FNN how to drive the process with a reduced number of sensors, i.e. only with these sensors that will be present in the normal operation of the process. This goal can be reached by the architecture depicted in Fig. 32 and in Fig. 33 in a greater detail. Table 4 is a legend of functional blocks and signals present in the mentioned figures. The general structure of reduced control system is shown in Figs. 32 and 33. Fig 32 is a block diagram showing a reduced control system 480 and a optimal control system 420. The optimal control system 420, together with an optimizer 440 and a compensator of sensor information 460 are used to teach the reduced control system 480. In Fig. 32, a desired signal (representing the desired output) is provided to an input of the optimal control system 420 and to an input of the reduced control system 480. The optimal control system 420 having m sensors, provides an output sensor signal x h and an optimal control signal x a . A reduced control system 480 provides an output sensor signal v Λ and a reduced control signal y a . The signals x h and y h includes data from k sensors where k ≤ m - n . The k sensors typically being the sensors that are not common between sensor systems 422 and 482. The signals x h and y h are provided to first and second inputs of subtractor 491. An output of the subtractor 491 is a signal ε h , where ε h = x h — y h ■ The signal ε h is provided to a sensor input of a sensor compensator 460. The signals x a and y a are provided to first and second inputs of subtractor 490. An output of the subtractor 490 is a signal ε a where ε a = x„ — y a . The signal ε a is provided to a control signal input of the sensor compensator 460. A control information output of sensor compensator 460 is provided to a control information input of the optimizer 440. A sensor information output of the sensor compensator 460 is provided to a sensor information input of the optimizer 440. A sensor signal 483 from the reduced control system 480 is also provided to an input of the optimizer 440. An output of the optimizer 440 provides a teaching signal 443 to an input of the reduced control system 480. In the description that follows, off-line mode typically refers to a calibration mode, wherein the control object 428 (and the control object 488) is run with an optimal set of m sensors. In one embodiment, the off-line mode is run at the factory or repair center where the additional sensors (i.e., the sensors that are in the m set but not in the n set) are used to train the FNN1 426 and the FNN2 486. The on-line mode typically refers to an operational mode (e.g., normal mode) where system is run with only the n set of sensors. Fig. 33 is a block diagram, showing the details of the blocks in Fig. 32. In Fig. 33, the output signal x Λ is provided by an output of sensor set m 422 having m sensors given by m = k + n . The information from the sensor system m 422 is a signal (or group of signals) having optimal information content 7, . In other words, the information 7, is the information from the complete set of m sensors in the sensor system 422. The output signal x a is provided by an output of a control unit 425. The control signal x a is provided to an input of a control object 428. An output of the control object 428 is provided to an input of the sensor system 422. Information I k from the set k of sensors is provided to an on-line learning input of a fuzzy neural network (FN 1) 426 and to an input of a first genetic algorithm (GAl) 427. Information I n from the set of sensors n in the sensor system 422 is provided to an input of a control object model 424. An off-line tuning signal output from the algorithm GAl 427 is provided to an off-line tuning signal input of the FNN1 426. A control output from the FNN 426 is the control signal x a , which is provided to a control input of the control object 428. The control object model 424 and the FNN 426 together comprise an optimal fuzzy control unit 425. Also in Fig. 33, the sensor compensator 460 includes a multiplier 462, multiplier 466, an information calculator 464, and an information calculator 468. The multiplier 462 and the information calculator 464 are used in on-line (normal) mode. The multiplier 466 and the information calculator 468 are provided for off- line checking. The signal ε a from the output of the adder 490 is provided to a first input of the multiplier 462 and to a second input of the multiplier 462. An output of the multiplier 462, being a signal ε 2 , is provided to an input of the information calculator 464. The information calculator 464 computes H„ (y) ≤ I(x a ,y a ) . An output of information calculator 464 is an information criteria for accuracy and reliability I( a ,y a ) - max of control signal in reduced control system. The signal ε h from the output of the adder 491 is provided to a first input of the multiplier 466 and to a second input of the multiplier 466. An output of the multiplier 466, being a signal ε h 2 , is provided to an input of the information calculator 468. The information calculator 468 computes H h (y) < I(x h ,y h ) . An output of information calculator 468 is an information criteria for accuracy and reliability, 7(x Λ , y h ) — » max of output signal of control object with reduced number of sensors. The optimizer 440 includes a second genetic algorithm (GA2) 444 and an entropy model 442. The signal 7(x α , y a ) -> max from the information calculator 464 is provided to a first input of the algorithm (GA2) 444 in the optimizer 440. An entropy signal S — > min is provided from an output of the thermodynamic model 442 to a second input of the genetic algorithm GA2 444. The signal I(x h ,y h ) — > max from the information calculator 468 is provided to a third input of the algorithm (GA2) 444 in the optimizer 440. The signals I(x a ,y a ) → max and I(x h ,y h ) → max provided to the first and third inputs of the algorithm (GA2) 444 are information criteria, and the entropy signal S(k 2 ) → min provided to the second input of the algorithm (GA2) 444 is a physical criteria based on entropy. An output of the algorithm GA2 444 is a teaching signal for a FNN2 486 described below. The reduced control system 480 includes a reduced sensor set 482, a control object model 484, the FNN2 486, and control object 488. When run in a special off-line checking (verification) mode, the sensor system 482 also includes the set of sensors k . The control object model 484 and the FNN2 486 together comprise a reduced fuzzy control unit 485. An output of the control object 488 is provided to an input of the sensor set 482. An 7 2 output of the sensor set 482 contains information from the set n of sensors, where n = (k + k 2 ) < m , such that 7 2 < 7, . The Information 7 2 is provided to a tuning input of the FNN2 486, to an input of the control object model 484 and to an input of the entropy model 442. The teaching signal 443 from the algorithm GA2 444 is provided to a teaching signal input of the FNN2 486. A control output from the FNN2 486 is the signal y u , which is provided to a control input of the control object 488. The control object models 424 and 484 may be either full or partial models. A full mathematical model representation of control objects is a description with differential equations including dissipative processes, while a partial model is a model obtained without a complete analytical description. As example, for a suspension control system, it is possible to write non-linear equations for the system "car + suspension" and calculate in analytical form the entropy production rate using dissipative terms of nonlinear equations, while for an engine control system the analytical description of mathematical model is not available. Although Figs. 32 and 33 show the optimal system 420 and the reduced system 480 as separate systems, typically the system 420 and 480 are the same system. The system 480 is "created" from the system 420 be removing the extra sensors and training the neural network. Thus, typically, the control object models 424 and 484 are the same. The control object 428 and 488 are also typically the same. Fig. 33 shows arrow an off-line tuning arrow mark from GAl 427 to the FNNl 426 and from the GA2 444 to the FNN2 486. Fig. 33 also shows an on-line learning arrow mark 429 from the sensor system 422 to the FNNl 426. The tuning of the GA2 444 means to change a set of bonding coefficients in the FNN2 486. The bonding coefficients are changed (using, for example, an iterative backward propagation or trial error process) so that 7(x, y) trends toward a maximum and S trends toward a minimum. In other words, the information of the coded set of the coefficients is sent to the FNN2 486 from GA2 444 as I(x,y) and S are evaluated. Typically, the bonding coefficients in the FNN2 486 are tuned in offline mode at a factory or service center. The teaching signal 429 is a signal that operates on the FNNl 426 during operation of the optimal control system 420 with an optimal control set. Typically, the teaching signal 429 is provided by sensors that are not used with the reduced control system 480 when the reduced control system is operating in on-line mode. The GAl 427 tunes the FNNl 426 during off-line mode. The signal lines associated with x h and y h are dashed to indicate that the x h and y h signals are typically used only during a special off-line checking (i.e., verification) mode. During the verification mode, the reduced control system is run with an optimal set of sensors. The additional sensor information is provided to the optimizer 440 and the optimizer 440 verifies that the reduced control system 480 operates with the desired, almost optimal, accuracy. For stable and unstable control objects with a non-linear dissipative mathematical model description and reduced number of sensors (or a different set of sensors) the control system design is connected with calculation of an output accuracy of the control object and reliability of the control system according to the information criteria I(x a ,y a ) —> max and I(x h ,y h ) -» max . Control system design is also connected with the checking of stability and robustness of the control system and the control object according to the physical criteria S(k 2 ) → min . In a first step, the genetic algorithm GA2 444 with a fitness function described as the maximum of mutual information between an optimal control signals x u and a reduced control signal y a is used to develop teaching signal 443 for the fuzzy neural network FNN2 486 in an off-line simulation. The fuzzy neural network FNN2 486 is realized using a learning process with back-propagation of error for adaptation to the teaching signal, and to develop a look-up table for changing the parameters of PID-controller in the controller 485. This provides sufficient conditions for achieving the desired control reliability with sufficient accuracy. In a second step, the genetic algorithm GA2 444, with a fitness function described as the minimum entropy, S or production rate dS/dt , (calculated according to a mathematical model or experimental results of sensor measurement information of the control object 488), is used to realize a node-correction look-up table in the FNN2 486. This approach provides stability and robustness of the reduced control system 480 with reliable and sufficient accuracy of control. This provides a sufficient condition of design for the robust intelligent control system with the reduced number of sensors. The first and second steps above need not be done in the listed order or sequentially. In the simulation of unstable objects, both steps are preferably done in parallel using the fitness function as the sum of the physical and the information criteria. After the simulation of a look-up table for the FNN2 486, the mathematical model of control object 484 is changed on the sensor system 482 for checking the qualitative characteristics between the reduced control system with the reduced number of sensors and the reduced control system with a full complement (optimum number) of sensors. Parallel optimization in GA2 444 with two fitness functions is used to realize the global correction of a look-up table in the FNN2 486. The entropy model 442 extracts data from the sensor system information 7 2 to help determine the desired number of sensors for measurement and control of the control object 488. Figs. 32 and 33 show the general case when the reduction of sensors excludes the measurement sensors in the output of the control object and the calculation comparison of control signal of information criteria is possible. The sensor compensator 460 computes the information criteria as a maximum of mutual information between the two control signals x a and y a (used as the first fitness function for the GA2 444). The entropy model 442 present the physical criteria as a minimum production entropy (used as the second fitness function in GA2 444) using the information from sensors 482. The output of GA2 444 is the teaching signal 443 for the FNN2 486 that is used on-line to develop the reduced control signal y a such that the quality of the reduced control signal y h is similar to the quality of the optimal control signal x a . Thus, the optimizer 440 provides stability and robustness of control (using the physical criteria), and reliability with sufficient accuracy (using the information criteria). With off-line checking, the optimizer 440 provides correction of the control signal y u from the FNN2 486 using new information criteria. Since the information measure is additive, it is possible to do the on-line/off-line steps in sequence, or in parallel. In off-line checking, the sensor system 482 typically uses all of the sensors only for checking of the quality and correction of the control signal y tι . This approach provides the desired reliability and quality of control, even when the control object 488 is unstable. For the reduced sensor system 482 (with n sensors) the FNN2 486 preferably uses a learning and adaptation process instead of a Fuzzy Controller (FC) algorithm. If the Control Object will work in different environments, with different statistical characteristics, then, global optimizer 450 is used. Global optimizator 450 includes GA2 444 and QGSA 448. Output 449 of GA2 is input of QGSA 448. Output of QGSA 448 is a teaching signal for FNN2 486. Output 449 must be generated for each single solution space. Reduced control system applied to an internal combustion engine In one embodiment, the reduced control system is applied to an internal combustion piston engine, a jet engine, a gas-turbine engine, a rocket engine etc., to provide control without the use of extra sensors, such as, for example, an oxygen sensor. Fig. 34 shows an internal combustion piston engine, having four sensors, an intake air temperature sensor 602, a water temperature sensor 604, a crank angle sensor 608. The air temperature sensor 602 measures the air temperature in an intake manifold 620. A fuel injector 629 provides fuel to the air in the intake manifold 620. The intake manifold 620 provides air and fuel to a combustion chamber 622. Burning of the fuel-air mixture in the combustion chamber 622 drives a piston 628. The piston 628 is connected to a crank 626 such that movement of the piston 628 turns the crank 626. The crank angle sensor 606 measures the rotational position of the crank 626. The water sensor measures the temperature of the water in a water jacket 630 surrounding the combustion chamber 622 and the piston 628. Exhaust gases from the combustion chamber 622 are provided to an exhaust manifold 624 and the air-fuel ratio sensor 608 measures the ratio of air to fuel in the exhaust gases. Fig. 35 is a block diagram showing a reduced control system 780 and an optimal control system 720. The optimal control system 720, together with an optimizer 740 and a sensor compensator 760 are used to teach the reduced control system 780. In Fig. 35, a desired signal (representing the desired engine output) is provided to an input of the optimal control system 720 and to an input of the reduced control system 780. The optimal control system 720, having five sensors, provides an optimal control signal x a and an sensor output signal x Λ . A reduced control system 780 provides a reduced control output signal y a , and an output sensor signal y h . The signals x h and y h include data from the A/F sensor 608. The signals x h and y h are provided to first and second inputs of a subtractor 791. An output of a subtractor 791 is a signal ε h where ε h = x h -y h . The signal ε h is provided to a sensor input of a sensor compensator 760. The signals x a and y a are provided to first and second inputs of a subtractor 790. An output of the subtractor 790 is a signal ε a where ε a = x a - y a . The signal ε a is provided to a control signal input of the sensor compensator 760. A control information output of the sensor compensator 760 is provided to a control information input of the optimizer 740. A sensor information output of the sensor compensator 760 is provided to a sensor information input of the optimizer 740. A sensor signal 783 from the reduced control system 780 is also provided to an input of the optimizer 740. An output of the optimizer 740 provides a teaching signal 747 to an input of the reduced control system 780. The output signal x h is provided by an output of a sensor system 722 having five sensors, including the intake temperature sensor 602, the water temperature sensor 604, the crank angle sensor 607, and air-fuel ration (A/F) sensor 608. The information from the sensor system 722 is a group of signals having optimal information content 7, . In other words, the information 7, is the information from the complete set of five sensors in the sensor system 722. The output signal x a is provided by an output of a control unit 725. The control signal x a is provided to an input of an engine 728. An output of engine 728 is provided to an input of the sensor system 722. Information I kλ from the A/F sensor 608 is provided to an on-line learning input of a fuzzy neural network (FNN) 726 and to an input of a first Genetic Algorithm (GAl) 727. Information I k] from the set of four sensors excluding the A/F sensor 608 is provided to an input of an engine model 724. An off-line tuning signal output from the algorithm GAl 727 is provided to an off-line tuning signal input of the FNN 726. A control output from the FNN 726 is a fuel injector the control signal £/, , which is provided to a control input of the engine 728. The signal £/, is also the signal x (l . The engine model 724 and the FNN 726 together comprise an optimal control unit 725. The sensor compensator 760 includes a multiplier 762, a multiplier 766, an information calculator 764. The multiplier 762 and the information calculator 764 are used in on-line (normal) mode. The multiplier 766 and the information calculator 768 are provided for off-line checking. The signal ε a from the output of the adder 790 is provided to a first input of the multiplier 762 and to a second input of the multiplier 762. An output of the multiplier 762, being a signal ε 2 , is provided to an input of the information calculator 764. The information calculator 764 computes H α (y) < 7(x n ,_y„) . An output of the information calculator 764 is an information criteria for accuracy and reliability, I(x a , a ) → max . The signal ε h from the output of the adder 791 is provided to a first input of the multiplier 766 and to a second input of the multiplier 766. An output of the multiplier 764, being a signal ε 2 , is provided to an input of the information calculator 768. The information calculator 768 computes H h (y) < I(x h ,y h ) . An output of the information calculator 768 is an information criteria for accuracy and reliability, 7(x Λ , y h ) -> max . The optimizer 740 includes a second Genetic Algorithm (GA2) 744 and a hermodynamic (entropy) model 742. The signal 7(x α ,_y„) - max from the information calculator 764 is provided to a first input of the algorithm (GA2) 744 in the optimizer 740. An entropy signal S → min is provided form an output of the thermodynamic model 742 to a second input of the algorithm (GA2) 744. The signal I(x h ,y h ) — > max from the information calculator 768 is provided to a third input of the algorithm (GA2) 744 in the optimizer 740. The signals I(x a ,y a ) -» max and I(x h ,y h ) - max provided to the first and third inputs of the algorithm (GA2) 744 are information criteria, and the entropy signal S(k2) -» min provided to the second input of the algorithm GA2 744 is a physical criteria based on entropy. An output of the algorithm GA2 744 is a teaching signal for the FNN 786. The reduced control system 780 includes a reduced sensor system 782, an engine model 784, the FNN 786, and an engine 788. The reduced sensor system 782 includes all of the engine sensors in the sensor system 722 except the A/F sensor 608. When run in a special off-line checking mode, the sensor system 782 also includes A/F sensor 608. The engine model 784 and the FNN 786 together comprise a reduced control unit 785. An output of the engine 788 is provided to an input of the sensor set 782. An 7 2 output of the sensor set 782 contains information from four engine sensors, such that 7 2 < 7, . The information 7 2 is provided to an input of the control object model 784, and to an input of the thermodynamic model 742. The teaching signal 747 from the algorithm GA2 744 is provided to a teaching signal input of the FNN 786. A control output from the FNN 786 is an injector control signal U 2 . which is also the signal y u . Operation of the system shown in Fig. 35 is in many respects similar to the operation of the system shown in Figs. 32 and 33. The thermodynamic model 742 is built using the thermodynamic relationship between entropy production and temperature information from the water temperature sensor 604 ( T w ) and the air temperature sensor 602 ( T A ). The entropy production S(T W ,T A ) , is calculated using the relationship where Δr is the duration of a finite process. The external specific work between two arbitrary states follows in the form From equation (17), with V = T w and T f = T A , then the minimal integral of the entropy production is S where AT = τ f - τ (18) The function from equation (17) satisfies the backward Hamilton - Jacobi equation. Fig. 36 is used QGSA in the case when partial engine model presented as a stochastic A/F ratio (Bounded control). It means, that statistical properties of stochastic A/F ratio are modeled with different density probability functions (Gaussian, Non-Gaussian as Uniform distribution, Rayleigh distribution and etc.). Reduced control system applied to a vehicle suspension Another embodiment consists of a control system for a vehicle suspension to provide control of the suspension system using data from a reduced number of sensors. In this case the optimized control system provides an optimum control signal based on data obtained from a plurality of angle (pitch and roll) and position sensors. An embodiment of an intelligent control system of a vehicle suspension can be obtained using a similar hardware architecture to the one depicted in Fig. 36 for an internal combustion engine. The main difference consists in substituting several functional blocks with the appropriate functional blocks for a vehicle suspension. For example, blocks 728 and 788 must be the vehicle suspension system, blocks 724 and 784 must be a vehicle suspension model, sensors 722 and 782 must be the appropriate sensors for monitoring a vehicle suspension, such as position sensors and roll angle sensors.

Claims: CLAIMS . A method of controlling a process (PLANT) driven by a control signal (u*) for producing a corresponding output, comprising producing an error signal (ε) as a function of a state of said process (x) and of a reference signal (Y), generating a control signal (u*) as a function of said error signal (ε) and of a parameter adjustment signal (CGS) and feeding it to said process (PLANT), deriving a signal (s) representative of a quantity to be minimized calculated by processing paired values of said state (x) of the process and said control signal (U*), calculating a correction signal (κ2) from a set of several different values of said control signal (U*), that minimize said derived signal (s) to be minimized, calculating said parameter adjustment signal (CGS) by a neural network and fuzzy logic processor from said error signal (ε) and correction signal (κ2), characterized in that said correction signal (κ2) is periodically calculated by a Quantum Genetic Search Algorithm consisting in a merging of a genetic algorithm and a quantum search algorithm comprising the following steps: producing an initial set of vectors representing in vector form several different possible values of said correction signal (κ2); calculating a second set of vectors by a linear superposition of vectors of said initial set; performing on vectors of said second set a certain number of parallel computations of random entanglement operations and random interference operations according to a quantum search algorithm, producing as many vectors representatives of values of said control signal (u*) of the process (PLANT); associating to each resulting value of said parallel computations a fitness function as greater as lower the quantity to be minimized (s), calculated using paired values of said control signal (u*) and state (x) of the process (PLANT) corresponding to the considered resulting value, is; performing a selection operation of resulting values of said parallel computations according to a genetic algorithm using said fitness functions; calculating said correction signal (κ2) as the final result of said selection. 2. The method according to claim 1 wherein said initial set of vectors is obtained by producing a first set of vectors representing several different possible values of said correction signal (κ2); applying a genetic algorithm (GA) on said first set of vectors calculating a temporary correction signal (K) using a fitness function as greater as lower the quantity to be minimized (s), calculated using paired values of said control signal (u*) and state (x) of the process (PLANT) corresponding to the considered resulting value, is; producing said initial set as a collection of the different values of said temporary correction signal (K). 3. The method of claims 1 or 2 wherein said derived signal (s) to be minimized represents the information distance between Shannon entropy and von Neumann entropy of pairs of said control signal (u*) and state (x); said fitness function is the information intelligence measure of each resulting value of said parallel computations. 4. The method of claims 1 or 2 wherein said derived signal (s) to be minimized is the Heisenberg uncertainty. 5. The method according to one of the preceding claims wherein said quantum search algorithm is a Grover quantum search algorithm. 6. The method according to one of the preceding claims wherein said linear supeφosition is a Hadamard rotation. 7. The method according to one of the preceding claims wherein said interference operation is obtained by an interference operator constituted with a random unitary squared matrix implementing a Fast Quantum Fourier Transform. A controller of a process (PLANT) driven by a control signal (u*) comprising a first circuit block producing an error signal (ε) as a function of a state of said process (x) and of a reference signal (Y), a second circuit block with adjustable transfer characteristic generating a control signal (u*) as a function of said error signal (ε) and feeding it to said process (PLANT), a third circuit block deriving a signal (s) representative of a quantity to be minimized calculated by processing paired values of said state (x) of the process and said control signal (u*), a fourth circuit block calculating a correction signal (κ2) from a set of several different values of said control signal (u*), that minimize said derived signal (s) representing the entropy production capacity, a fuzzy neural network producing a driving signal depending on values of said correction signal (κ2), a fuzzy controller adjusting the transfer characteristic of said second circuit block depending on values of said driving signal and said error signal (ε), characterized in that said fourth circuit block performs the following operations producing an initial set of vectors representing in vector form several different possible values of said correction signal (κ2); calculating a second set of vectors by a linear supeφosition of vectors of said initial set; performing on vectors of said second set a certain number of parallel computations of random entanglement operations and random interference operations according to a quantum search algorithm, producing as many vectors representatives of values of said control signal (u*) of the process (PLANT); associating to each resulting value of said parallel computations a fitness function as greater as lower the quantity to be minimized (s), calculated using paired values of said control signal (u*) and state (x) of the process (PLANT) corresponding to the considered resulting value, is; performing a selection operation of resulting values of said parallel computations according to a genetic algorithm using said fitness functions; calculating said correction signal (κ2) as the final result of said selection. The controller of the preceding claim wherein said initial set of vectors is obtained by producing a first set of vectors representing several different possible values of said correction signal (κ2); calculating a temporary correction signal (K.) by a genetic algorithm (GA) applied on said first set of vectors using a fitness function as greater as lower the quantity to be minimized (s), calculated using paired values of said control signal (u*) and state (x) of the process (PLANT) corresponding to the considered resulting value, is; producing said initial set as a collection of the different values of said temporary correction signal (K). The controller according to one of claims 8 or 9 wherein said process to control (PLANT) is an internal combustion engine and said third circuit derives a signal (S) representative of the entropy production of said engine. The controller according to one of claims 8 or 9 wherein said derived signal (s) to be minimized represents the information distance between Shannon entropy and von Neumann entropy of pairs of said control signal (u*) and state (x); said fitness function is the information intelligence measure of each resulting value of said parallel computations. The controller according to one of claims from 8 to 11 wherein said second circuit block is a proportional-integral-differential controller (PID). A method of searching in a database an item (x,) belonging to a set (X) that is closest to a certain value (Yo), consisting in a merging of a genetic algorithm and a quantum search algorithm comprising the following steps: representing in vector form each item belonging to said set (X) producing an initial set of vectors; calculating a second set of vectors by a linear supeφosition of vectors of said initial set of vectors according to a Grover quantum search algorithm; performing on vectors of said second set a certain number of parallel computations of random entanglement operations and random interference operations according to a Grover quantum search algorithm, producing as many vectors representatives of items of said set (X); associating to each resulting value of said parallel computations a fitness function as greater as smaller the difference between said resulting value and said desired value (Y 0 ) is; performing a selection operation of resulting values of said parallel computations according to a genetic algorithm using said fitness functions; identifying said searched item (Xj) as the final result of said selection. A random entanglement gate for carrying out random entanglement operations according to a quantum search algorithm on an input set of vectors comprising a certain number (N) of random generators each producing a respective random vector, said certain number (N) of dot gates each composed of at least a multiplier calculating products of paired values of the components of a pair of input vectors having the same number of components, and at least an adder outputting the sum of said products, each coupled with a respective random vector and with a respective vector of said input set of vectors, producing a random entanglement set of vectors. A random interference gate for carrying out random interference operations according to a Grover quantum search algorithm on an input set of vectors comprising a circuit producing a random diffusion matrix, constituted by an identity block outputting an identity matrix, a random generator outputting a random unitary matrix, a first tensor gate, composed of at least a multiplier calculating components of an output matrix as products of values of all possible different pairs constituted by a component of a first input vector and a component of a second input vector, coupled with said identity matrix and said random unitary matrix, producing a first matrix (4XN1), a second tensor gate, similar to said first tensor gate, coupled with said first matrix (4XN1) and with said random unitary matrix, producing a second matrix (4XN2), a third tensor gate, similar to said first tensor gate, being input with two copies of said identity matrix, producing a third matrix (4XN3), a fourth tensor gate, similar to said first tensor gate, coupled with said first matrix (4XN3) and with said identity matrix, producing a fourth matrix (4XN4), a subtractor coupled with said matrices second (4XN2) and fourth (4XN4), producing said random diffusion matrix as the difference between said second matrix (4XN2) and said fourth matrix (4XN4); a block outputting the result of said interference operation by calculating a scalar product between said random diffusion matrix and said set of input vectors. An accelerator for quantum algorithm execution by a classical computer for finding a certain property of a bit vector function (/) being processed, composed of an encoder producing from said bit vector function (f) a set of values representing a transfer matrix (U F ); an accelerator core (QUANTUM_BLOCK) comprising: a quantum gate implementing in succession a linear supeφosition, an entanglement operation and interference operation on an input set of vectors according to a quantum algorithm using said transfer matrix (U F ) as entanglement operator, producing a second set of vectors, a block (MEASUREMENT) calculating for each vector of said second set a probability coefficient as the squared root of the sum of squares of components of said vector respect said input set of vectors, and selecting an output vector from said second set by running a random choice routine using said probability coefficients; a decoder comparing said output vector in a look-up table and outputting a signal representative of the property of said bit vector function (/) corresponding to said output vector. The accelerator of claim 16 wherein said encoder produces said set of values representing said transfer matrix (U F ) as a set of values representing the transfer matrix of an injective bit vector function (F) whose domain dimension is equal to the sum between the domain dimension N and of the co-domain dimension M of said function (/), transforming each bit vector (A) of its domain in a respective bit vector (B) obtained by linking the first N bits of said vector (A) to a bit vector obtained by carrying out a XOR operation between the last M bits of said vector (A) and the corresponding bits of a vector obtained applying said bit vector function (f) to a bit vector constituted by the first N bits of said vector (A). The accelerator according to one of claims 16 or 17 wherein said quantum gate is composed of a supeφosition subsystem executing said linear supeφosition, an entanglement subsystem executing said entanglement operation and an interference subsystem executing said interference operation according to a Deutsch-Jozsa quantum algorithm, said supeφosition subsystem being composed of a set of a number N+1 of matrix blocks, each one being input with a respective vector of said input set of vectors and producing a respective rotated vector obtained by carrying out a Hadamard rotation, a first tensor gate, composed of at least a multiplier calculating components of an output matrix as products of values of all possible different pairs constituted by a component of a first input vector and a component of a second input vector, carrying out the tensor product of a number N of said rotated vectors, producing a certain matrix (2XN), a second tensor gate similar to said first tensor gate, carrying out the tensor product of said certain matrix (2XN) and the rotated vector not being input in said first tensor gate, producing a linear supeφosition set of vectors; said entanglement subsystem producing an entanglement set of vector by applying said transfer matrix (U F ) to said linear supeφosition set of vectors; said interference subsystem being composed of a tensor gate similar to said first tensor gate, being input with a Hadamard matrix (H) and an identity matrix (I), producing an output matrix (OUTl), a dot gate, composed of at least a multiplier calculating products of paired values of the components of a pair of input vectors having the same number of components, being input with said output matrix (Ouτl) and with the vector produced by said entanglement operator, producing said second set of vectors. 19. The accelerator according to one of claims 16 or 17 wherein said quantum gate is composed of a supeφosition subsystem executing said linear supeφosition, an entanglement subsystem executing said entanglement operation and an interference subsystem executing said interference operation according to a Grover quantum algorithm, said supeφosition subsystem being composed of a set of a number N+1 of matrix blocks, each one being input with a respective vector of said input set of vectors and producing a respective rotated vector obtained by carrying out a Hadamard rotation, a first tensor gate, composed of at least a multiplier calculating components of an output matrix as products of values of all possible different pairs constituted by a component of a first input vector and a component of a second input vector, carrying out the tensor product of a number N of said rotated vectors, producing a certain matrix (2XN), a second tensor gate, similar to said first tensor gate, carrying out the tensor product of said certain matrix (2XN) and the rotated vector not being input in said first tensor gate, producing a linear superposition set of vectors; said entanglement subsystem producing an entanglement set of vectors by applying said transfer matrix (U F ) to said linear supeφosition set of vectors; said interference subsystem being composed of a dot gate, composed of at least a multiplier calculating products of paired values of the components of a pair of input vectors having the same number of components, being input with said entanglement set of vectors and with a diffusion matrix (D N ) producing said second set of vectors. A training system of an intelligent control system with reduced number of sensors comprising an intelligent control system with a certain number of sensors (m) constituted by a replica of a process to control (428), a fuzzy control unit (425) producing a driving signal (x a ) being input to said replica process (428), a first set of a second number (k) of sensors of as many states of said replica process producing a sensor signal (xb) fed to said fuzzy control unit, a second set of a third number of sensors (kl ) of as many states of said replica process producing a second sensor signal (4222) fed to said fuzzy control unit, a third set of a fourth number of sensors (k2) of as many states of said replica process producing a third sensor signal (4221), a circuit block implementing a first genetic algorithm (GAl) calculating from said third sensor signal (4221) a teaching signal input to said fuzzy control unit (425); an intelligent control system to be trained with a fifth number of sensors (n) constituted by a process to control (488), a second fuzzy control unit (485) producing a second driving signal (y a ) being input to said process to control (488), a replica of said first set of said second number (k) of sensors of as many states of said process producing a fourth sensor signal (y ), a replica of said second set of said third number of sensors (kl) sensing as many states of said process producing a fifth sensor signal (4822) fed to said second fuzzy control unit (485), a replica of said third set of said fourth number of sensors (k2) of as many states of said process (488) producing a sixth sensor signal (4821), a circuit block producing from said fifth sensor signal (4821) a signal (S[k]) representative of a physical quantity to be minimized (s), a global optimizer (450) deriving a teaching signal (443) for said second fuzzy controller (485) from said signal (S[k]) and from a pair of signals representing the mutual information between said first driving signal (x a ) and said second driving signal (y a ) and the mutual information between said sensor signal (X b ) and said fourth sensor signal (yb), respectively; a compensator of sensor information (450) calculating said pair of signals representing the mutual information between said first driving signal (x a ) and said second driving signal (y a ) and the mutual information between said sensor signal (x b ) and said fourth sensor signal (y b ), respectively. 1. The training system of claim 20 wherein said global optimizer (450) is a block deriving said teaching signal (443) by implementing a second Genetic Algorithm. . The training system of claim 20 wherein said global optimizer (450) is a block deriving said teaching signal (443) by implementing a Quantum Genetic Search Algorithm as described in claim 1. 23. The training system of claims 21 and 22 wherein said global optimizer (450) is a block deriving said teaching signal (443) as the final result of said Quantum Genetic Search Algorithm applied on the output of said second Genetic Algorithm. 24. The training system according to one of claims from 20 to 23 wherein said physical quantity to be minimized is the entropy production of said process (488). 5. The training system of any of the claims from 20 to 24 wherein said process to control (488) is an internal combustion engine and said replica process (428) is a replica of said internal combustion engine, said first set of sensors comprises an air fuel ratio sensor, said second set of sensors comprises a crank angle sensor and a pressure sensor, said third set of sensors comprises an air temperature sensor and a water temperature sensor. 6. The training system of any of the claims from 20 to 24 wherein said process to control (488) is a vehicle suspension and said replica process (428) is a replica of said vehicle suspension, at least one of said sets of sensors comprises at least one sensor belonging to the group composed of position sensors, pitch sensors and roll angle sensors. 7. A method for training a fuzzy control unit (485) of an intelligent control system (480) comprising a process to control (488), a fuzzy control unit (485) producing a first driving signal (y a ) being input to said process to control (488), a first set of a first number (k) of sensors of as many states of said process (488) producing a first sensor signal (y b ), a second set of said second number of sensors (kl) sensing as many states of said process (488) producing a second sensor signal (4822) fed to said fuzzy control unit (485), a third set of a third number of sensors (k2) of as many states of said process (488) producing a third sensor signal (4821), a circuit block producing from said third sensor signal (4821) a signal (S[kj) representative of a physical quantity to be minimized (s), a global optimizer (450) producing a temporary teaching signal (442) for said fuzzy control unit (485), using a control system (420) of a replica (428) of said process to control comprising a replica of said process to control (428), a control unit (425) producing a second driving signal (x a ) being input to said replica process (428), a replica of said sets first, second and third of said numbers of sensors first (k), second (kl) and third (k2) of as many states of said replica process (428), respectively, producing sensor signals fourth (x b ), fifth (4222) and a sixth (4221), respectively, fed to said control unit, characterized in that it comprises the following steps: inputting both control systems (480, 420) with a signal representative of a desired output provided from outside; calculating the mutual information (II) of paired values of said driving signals first (y a ) and second (x a ); calculating the mutual information (12) of paired values of said sensor signals first (y b ) and fourth (x b ); inputting said fuzzy control unit (485) with a final teaching signal (443) calculated in function of said temporary teaching signal (442) said mutual information of driving signals (II) and said mutual information of sensor signals (12). The method of claim 27 wherein said final teaching signal (443) is derived by implementing a Genetic Algorithm on said temporary teaching signal (442) using a fitness function depending on said mutual information values (11 , 12). 29. The method of claim 27 wherein said final teaching signal (443) is derived by implementing a Quantum Genetic Search Algorithm, as described in claim 1, on said temporary teaching signal (442) using a fitness function depending on said mutual information values (II, 12). 30. The method of claim 28 wherein said final teaching signal (443) is derived by implementing a Genetic Algorithm on said temporary teaching signal (442) using a fitness function depending on said mutual information values (II, 12) and by applying to a value calculated by said Genetic Algorithm a Quantum Genetic Search Algorithm. 31. The method according to one of claims from 27 to 30 wherein said physical quantity to be minimized (s) is the entropy production of said process to control (488). 32. The method according to one of claims from 27 to 30 wherein said process to control (488) is an internal combustion engine, at least one of said sets of sensors first and second comprises at least one sensor belonging to the group composed of crank angle sensors, pressure sensors and water temperature sensors, said third set of sensors comprises at least an air fuel ratio sensor. 3. The method according to one of claims from 27 to 31 wherein said process to control (488) is a suspension vehicle, at least one of said sets of sensors comprise at least one sensor belonging to the group composed of position sensors, pitch sensors and roll angle sensors.

Inventors: AMATO PAOLO, GHISI FABIO, KURAWAKI ICHIRO, PANFILOV SERGUEI, PORTO MASSIMO, RIZZOTTO GIANGUIDO, ULYANOV SERGUEI, AMATO, PAOLO, GHISI, FABIO, KURAWAKI, ICHIRO, PANFILOV, SERGUEI, PORTO, MASSIMO, RIZZOTTO, GIANGUIDO, ULYANOV, SERGUEI
Applicants: AMATO PAOLO, GHISI FABIO, KURAWAKI ICHIRO, PANFILOV SERGUEI, PORTO MASSIMO, RIZZOTTO GIANGUIDO, ST MICROELECTRONICS SRL, ULYANOV SERGUEI, YAMAHA MOTOR EUROP, AMATO, PAOLO, GHISI, FABIO, KURAWAKI, ICHIRO, PANFILOV, SERGUEI, PORTO, MASSIMO, RIZZOTTO, GIANGUIDO, STMICROELECTRONICS S.R.L., ULYANOV, SERGUEI, YAMAHA MOTOR EUROPE N.V.
Application year: 2000
Main classification: G05B13
IPC codes: G05B13, G06F17, G06N1