Patent Publication Number: US-2023147581-A1

Title: Control apparatus for vibration actuator, and vibration driving apparatus, interchangeable lens, imaging apparatus, and automatic stage including same

Description:
CROSS-REFERENCE TO RELATED APPLICATIONS 
     This application is a Continuation of International Patent Application No. PCT/JP2021/027461, filed Jul. 26, 2021, which claims the benefit of Japanese Patent Applications No. 2020-133219, filed Aug. 5, 2020, and Japanese Patent Applications No. 2020-198282, filed Nov. 30, 2020, all of which are hereby incorporated by reference herein in their entirety. 
    
    
     BACKGROUND OF THE INVENTION 
     Field of the Invention 
     The present invention relates to a control apparatus for a vibration actuator, and a vibration driving apparatus, an interchangeable lens, an imaging apparatus, and an automatic stage including the same. 
     Background Art 
     A vibration actuator (ultrasonic motor) is a non-electromagnetically driven actuator configured to generate high-frequency vibration on an electromechanical energy transducer, such as a piezoelectric element, coupled to an elastic body by applying an alternating-current voltage to the electromechanical energy transducer. The vibration energy is taken out as continuous mechanical motion. 
     Vibration actuators are small, lightweight, and high in precision, and have excellent actuator performance (motor performance), such as high torque during low-speed driving, compared to electromagnetically driven actuators. However, their nonlinear actuator characteristics (motor characteristics) are difficult to model, and a control system of elaborate design is desirable since the controllability changes depending on the driving condition and the temperature environment. Moreover, there are a lot of control parameters, such as a frequency, a phase difference, and a voltage amplitude, and adjustments are complicated. 
       FIG.  45 A  is a control block diagram of a conventional typical proportional-integral-derivative (PID)-controlled vibration driving apparatus (see PTL 1). 
     A driving circuit to which control amounts to be described below are input outputs two-phase (phase-A and -B) alternating-current voltages (alternating-current signals). A relative speed (hereinafter, also referred to simply as a “speed”) of the vibration actuator can be controlled by controlling the frequency (1/period), phase difference, and voltage amplitude (see  FIG.  45 B ) of the two-phase alternating-current voltages output from the driving circuit. The voltage amplitude can be changed by adjusting a pulse width to be described below input from a PID controller to the driving circuit. In  FIG.  45 B , the numerals (1), (2), and (3) represent the frequency, phase difference, and voltage amplitude of the two-phase alternating-current voltages output from the driving circuit, respectively. 
     A position deviation that is a difference between a target position generated by a position instruction unit and a relative position of the vibration actuator detected by a position detection unit (target position−relative position) is input to the PID controller (control amount output unit). The PID controller then successively outputs control amounts (frequency, phase difference, and pulse width) PID-calculated based on the position deviation input to the PID controller at each control sampling period. The control amounts output from the PID controller are input to the driving circuit. The driving circuit to which the control amounts are input outputs the two-phase alternating-current voltages, and the speed of the vibration actuator is controlled by the two-phase alternating-current voltages output from the driving circuit. Position feedback control is thereby performed. 
       FIG.  45 C  is a diagram schematically illustrating a frequency-speed characteristic of the vibration actuator. Specifically,  FIG.  45 C  illustrates that the gradient of the frequency-speed characteristic is large at a frequency (f1) in a high-speed range (low-frequency range), and small at a frequency (f2) in a low-speed range (high-frequency range). 
       FIG.  45 D  is a diagram schematically illustrating a phase difference-speed characteristic of the vibration actuator. This diagram compares the phase difference-speed characteristics at the frequency (f2) in the low-speed range and at the frequency (f1) in the high-speed range. 
     As illustrated in  FIGS.  45 C and  45 D , the vibration actuator varies in the gradient of the frequency-speed characteristic and in the phase difference-speed characteristic depending on the use speed range, and the control performance thus changes depending on the phase difference. 
     If the ambient temperature changes, for example, from room temperatures to low temperatures, the resonance frequency of the vibration actuator shifts to higher frequencies based on the temperature characteristic of the piezoelectric element. In such a case, the control performance also changes with the ambient temperature since the speed and the gradient of the frequency-speed characteristic of the vibration actuator driven at the same frequency vary. 
     The speed and the gradient also depend on individual differences of vibration actuators, and the control performance also varies from one vibration actuator to another. The control performance changes over time as well. 
     PID control gains (proportional, integral, and derivative gains in the PID control) are desirably designed to secure a sufficient gain margin and phase margin with all the changing factors taken into consideration. 
     CITATION LIST 
     Patent Literature 
     PTL 1: Japanese Patent Application Laid-Open No. 2016-144262 
     SUMMARY OF THE INVENTION 
     A vibration actuator control apparatus including a control amount output unit different from a conventional PID controller as its main control amount output unit has thus been desired. The present invention is directed to providing a vibration actuator control apparatus including a control amount output unit different from a conventional PID controller as its main control amount output unit. 
     According to an aspect of the present invention, a control apparatus for a vibration actuator that relatively moves a contact body in contact with a vibrator with respect to the vibrator using vibration occurring on the vibrator includes a control amount output unit including a trained model trained to, if a target speed to relatively move the contact body with respect to the vibrator at is input, output a control amount to relatively move the contact body with respect to the vibrator. 
     Further features of the present invention will become apparent from the following description of exemplary embodiments with reference to the attached drawings. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         FIG.  1    is a control block diagram of a vibration driving apparatus according to a first exemplary embodiment. 
         FIG.  2 A  is a diagram illustrating a neural network (NN) configuration of a learning model and a trained model according to the first exemplary embodiment. 
         FIG.  2 B  is a diagram illustrating the NN configuration of the learning model and the trained model according to the first exemplary embodiment. 
         FIG.  2 C  is a diagram illustrating the NN configuration of the learning model and the trained model according to the first exemplary embodiment. 
         FIG.  3 A  is a diagram for describing a driving principle of a linear driving vibration actuator. 
         FIG.  3 B  is a diagram for describing the driving principle of the linear driving vibration actuator. 
         FIG.  3 C  is a diagram for describing the driving principle of the linear driving vibration actuator. 
         FIG.  3 D  is a diagram for describing the driving principle of the linear driving vibration actuator. 
         FIG.  4    is a perspective view for describing a lens driving mechanism of a lens barrel. 
         FIG.  5    is a control block diagram of the vibration driving apparatus according to the first exemplary embodiment (where a speed deviation is input to the trained model instead of a target deviation). 
         FIG.  6    is a flowchart of machine learning and control by the trained model according to the first exemplary embodiment. 
         FIG.  7 A  and  FIG.  7 B  are a timing chart for describing batch learning and online learning by a training unit. 
         FIG.  8 A  is an explanatory diagram illustrating a case where adaptive moment estimation (Adam) is used as a technique for optimizing NN parameters. 
         FIG.  8 B  is an explanatory diagram illustrating the case where Adam is used as the technique for optimizing NN parameters. 
         FIG.  8 C  is an explanatory diagram illustrating the case where Adam is used as the technique for optimizing NN parameters. 
         FIG.  9 A  compares the results of calculation by Adam, Root Mean Square Propagation (RMSProp), Momentum, and stochastic gradient descent (SGD) using the learning model according to the first exemplary embodiment and training data obtained by actual measurement. 
         FIG.  9 B  illustrates learning examples of a control amount (phase difference) using Adam. 
         FIG.  10 A  is an explanatory diagram illustrating a result of feedback control performed with a predetermined target position pattern, using conventional proportional-integral-derivative (PID) control. 
         FIG.  10 B  is an explanatory diagram illustrating a result of feedback control performed with the predetermined target position pattern, using the control according to the present exemplary embodiment. 
         FIG.  10 C  is an explanatory diagram illustrating a result of feedback control performed with the predetermined target position pattern, using the control according to the present exemplary embodiment. 
         FIG.  11 A  illustrates a result indicating robustness of a control apparatus according to the present exemplary embodiment. 
         FIG.  11 B  illustrates a result indicating robustness of the control apparatus according to the present exemplary embodiment. 
         FIG.  12    is a control block diagram of a vibration driving apparatus according to a second exemplary embodiment (where results of control by a PID controller are used as training data). 
         FIG.  13    is a control block diagram of a vibration driving apparatus according to a third exemplary embodiment (where results of control by open driving are used as training data). 
         FIG.  14    is a control block diagram of a vibration driving apparatus according to a fourth exemplary embodiment (where a trained model and a PID controller are used in combination). 
         FIG.  15    is a control block diagram of the vibration driving apparatus according to the fourth exemplary embodiment (where the trained model and the PID controller are used in combination, and an output from the PID controller is input to the trained model and added to outputs from the trained model as well). 
         FIG.  16    is a control block diagram of a vibration driving apparatus according to a fifth exemplary embodiment (where a trained model and a PID controller are used in combination). 
         FIG.  17    is a control block diagram of a vibration driving apparatus according to a sixth exemplary embodiment (where control is performed using a trained model trained by machine learning using a phase difference, a frequency, and a pulse width as control amounts). 
         FIG.  18    is a diagram illustrating an NN configuration with the phase difference, the frequency, and the pulse width as outputs. 
         FIG.  19    is a control block diagram of a vibration driving apparatus according to a seventh exemplary embodiment. 
         FIG.  20 A  is a diagram illustrating an NN configuration of a learning model and a trained model according to the seventh exemplary embodiment. 
         FIG.  20 B  is a diagram illustrating the NN configuration of the learning model and the trained model according to the seventh exemplary embodiment. 
         FIG.  20 C  is a diagram illustrating the NN configuration of the learning model and the trained model according to the seventh exemplary embodiment. 
         FIG.  21    is a control block diagram of a vibration driving apparatus according to an eighth exemplary embodiment. 
         FIG.  22 A  is a diagram illustrating an NN configuration of a learning model and a trained model according to the eighth exemplary embodiment. 
         FIG.  22 B  is a diagram illustrating the NN configuration of the learning model and the trained model according to the eighth exemplary embodiment. 
         FIG.  22 C  is a diagram illustrating the NN configuration of the learning model and the trained model according to the eighth exemplary embodiment. 
         FIG.  23    is a control block diagram of a vibration driving apparatus according to a ninth exemplary embodiment. 
         FIG.  24 A  is a diagram illustrating an H-layer recurrent NN structure of a learning model and a trained model according to the ninth exemplary embodiment. 
         FIG.  24 B  is a diagram illustrating the H-layer recurrent NN structure of the learning model and the trained model according to the ninth exemplary embodiment. 
         FIG.  24 C  is a diagram illustrating the H-layer recurrent NN structure of the learning model and the trained model according to the ninth exemplary embodiment. 
         FIG.  25    is a flowchart for a case where Adam is used as an algorithm for optimizing parameters of the recurrent NN. 
         FIG.  26 A  is an explanatory diagram illustrating a result of feedback control performed with a predetermined target position pattern, using conventional PID control. 
         FIG.  26 B  is an explanatory diagram illustrating a result of feedback control performed with the predetermined target position pattern, using control according to the present exemplary embodiment. 
         FIG.  26 C  is an explanatory diagram illustrating a result of feedback control performed with the predetermined target position pattern, using control according to the present exemplary embodiment. 
         FIG.  27 A  illustrates a result of a simulation demonstrating high-frequency responsiveness of a control apparatus for a vibration actuator according to the present exemplary embodiment. 
         FIG.  27 B  illustrates a result of a simulation demonstrating high-frequency responsiveness of the control apparatus for the vibration actuator according to the present exemplary embodiment. 
         FIG.  28 A  is a development diagram of an NN structure. 
         FIG.  28 B  is a development diagram of an H-layer recurrent NN structure. 
         FIG.  28 C  is a development diagram of a Z-layer recurrent NN structure. 
         FIG.  29 A  illustrates a result indicating robustness of the control apparatus for the vibration actuator according to the present exemplary embodiment. 
         FIG.  29 B  illustrates a result indicating robustness of the control apparatus for the vibration actuator according to the present exemplary embodiment. 
         FIG.  30    is a control block diagram of a vibration driving apparatus according to a tenth exemplary embodiment (where results of control by a PID controller are used as training data). 
         FIG.  31    is a control block diagram of a vibration driving apparatus according to an eleventh exemplary embodiment (where results of control by open driving are used as training data). 
         FIG.  32    is a control block diagram of a vibration driving apparatus according to a twelfth exemplary embodiment (where a trained model and a PID controller are used in combination). 
         FIG.  33    is a control block diagram of a vibration driving apparatus according to a thirteenth exemplary embodiment (where a trained model and a PID controller are used in combination). 
         FIG.  34    is a control block diagram of a vibration driving apparatus according to a fourteenth exemplary embodiment (where control is performed using a trained model trained with a phase difference, a frequency, and a pulse width as control amounts). 
         FIG.  35    is a diagram illustrating an H-layer recurrent NN structure of a learning model and a trained model according to the fourteenth exemplary embodiment. 
         FIG.  36 A  is a diagram illustrating a Z-layer recurrent NN structure of a learning model and a trained model according to a fifteenth exemplary embodiment (where control is performed using a trained model trained with a phase difference and a frequency as control amounts). 
         FIG.  36 B  is a diagram illustrating a Z-layer recurrent NN structure of the learning model and the trained model according to the fifteenth exemplary embodiment (where control is performed using the trained model trained with the phase difference and the frequency as control amounts). 
         FIG.  36 C  is a diagram illustrating a Z-layer recurrent NN structure of the learning model and the trained model according to the fifteenth exemplary embodiment (where control is performed using the trained model trained with the phase difference and the frequency as control amounts). 
         FIG.  37    is a control block diagram of a vibration driving apparatus according to a sixteenth exemplary embodiment. 
         FIG.  38    is a diagram illustrating an H-layer recurrent NN structure of the vibration driving apparatus according to the sixteenth exemplary embodiment. 
         FIG.  39    is a control block diagram of a vibration driving apparatus according to a seventeenth exemplary embodiment. 
         FIG.  40    is a diagram illustrating an H-layer recurrent NN structure of the vibration driving apparatus according to the seventeenth exemplary embodiment. 
         FIG.  41    is a control block diagram of a vibration driving apparatus according to a nineteenth exemplary embodiment. 
         FIG.  42 A  is a diagram illustrating an H-layer recurrent NN structure according to a twentieth exemplary embodiment (where long short-term memory (LSTM) is applied to a learning model). 
         FIG.  42 B  is a diagram illustrating the H-layer recurrent NN structure according to the twentieth exemplary embodiment (where LSTM is applied to the learning model). 
         FIG.  43 A  is a plan view illustrating appearance of an imaging apparatus that is an application example of a control apparatus for a vibration actuator according to a twenty-first exemplary embodiment. 
         FIG.  43 B  is a schematic diagram illustrating an internal configuration of the imaging apparatus that is an application example of the control apparatus for the vibration actuator according to the twenty-first exemplary embodiment. 
         FIG.  44    is a perspective view illustrating appearance of a microscope that is an application example of the control apparatus for the vibration actuator according to the twenty-first exemplary embodiment. 
         FIG.  45 A  is an explanatory diagram illustrating a conventional typical PID-controlled vibration driving apparatus. 
         FIG.  45 B  is an explanatory diagram illustrating the conventional typical PID-controlled vibration driving apparatus. 
         FIG.  45 C  is an explanatory diagram illustrating the conventional typical PID-controlled vibration driving apparatus. 
         FIG.  45 D  is an explanatory diagram illustrating the conventional typical PID-controlled vibration driving apparatus. 
     
    
    
     DESCRIPTION OF THE EMBODIMENTS 
       FIG.  1    is a control block diagram of a vibration driving apparatus according to a first exemplary embodiment. A vibration driving apparatus  17  includes a control apparatus  15  and a vibration motor  13  (vibration actuator). In  FIG.  1   , the control apparatus  15  refers to the vibration driving apparatus  17  excluding the vibration actuator  13 . 
     The control apparatus  15  includes a trained model control unit  10  (control unit) for controlling the vibration actuator  13 , a driving unit  11 , a machine learning unit  12  (training unit) including a speed detection unit  16  (speed detecting unit) and a learning model  106 , and a position detection unit  14  (position detecting unit). The driving unit  11  includes an alternating-current signal generation unit  104  (alternating-current signal generating unit) and a boosting circuit  105 . 
     The vibration actuator  13  includes a vibrator  131  and a body to be driven (contact body)  132 . The speed detection unit  16  detects a speed (hereinafter, referred to as a “relative speed”) of the contact body  132  relative to the vibrator  131 . The position detection unit  14  detects a position (hereinafter, also referred to as a “relative position”) of the contact body  132  relative to the vibrator  131 . An absolute encoder or an incremental encoder is used as the position detection unit  14 . However, the position detection unit  14  is not limited thereto. Any unit that can detect position information can be used as the position detection unit  14 . The speed detection unit  16  is not limited to one (speed sensor) that directly detects speed information, and may be one that indirectly detects speed information through calculation of position information. Any unit that can detect speed information can be used as the speed detection unit  16 . 
     The control unit  10  is configured such that signals for controlling driving of the vibrator  131  (relative movement of the contact body  132  with respect to the vibrator  131 ) can be generated. More specifically, a target speed (first speed) and a position deviation are input to a trained model, and the resulting outputs, namely, a phase difference and a frequency are used as control amounts (first control amounts) of the vibration actuator  13 . The target speed (first speed) refers to a speed set for the relative speed (second speed, detected speed) to follow in relatively moving the contact body  132  with respect to the vibrator  131 . The position deviation refers to a difference between a target position (first position) and the relative position (second position, detected position). The target position (first position) refers to a position set for the relative position (second position, detected position) to follow in relatively moving the contact body  132  with respect to the vibrator  131 . A pulse width for changing a voltage amplitude may be used as a first control amount. 
     The control unit  10  includes a speed instruction unit  101  (speed instructing unit, speed generating unit) that generates the target speed, and a position instruction unit  102  (position instructing unit, position generating unit) that generates the target position. The control unit  10  also includes a trained model  103  (control amount output unit, control amount output device) to which the target speed and the position deviation are input and from which the phase difference and the frequency are output. 
     The speed instruction unit  101  generates the target speed at each unit time. The position instruction unit  102  generates the target position at each unit time. A difference at each unit time between the target position generated by the position instruction unit  102  at each unit time and the relative position detected by the position detection unit  14  at each unit time is calculated as the position deviation. The difference is given by the relative position at each unit time—the target value at each unit time. 
     For example, the target speed and the target position are generated at each control sampling period that is the unit time. Specifically, an instruction value indicating the target speed is output from the speed instruction unit  101  at each control sampling period, and an instruction value indicating the target position is output from the position instruction unit  102  at each control sampling period. The instruction values may be values associated with the target speed and the target position instead of the target speed and the target position themselves. The control sampling period refers to one cycle from the acquisition of a position deviation in  FIG.  1    to immediately before a start of acquisition of another position deviation through the output of the control amounts, the application of alternating-current voltages to the vibrator  131 , and the detection of the relative speed (second speed, detected speed) and the relative position (second position, detected position). The position or speed of the vibration actuator  13  is feedback-controlled in the foregoing cycle. Note that the target speed may be generated by differentiating the target position at each unit time. Conversely, the target position may be generated by integrating the target speed. 
     Using the target speed and the position deviation, the trained model  103  calculates and outputs the control amounts (phase difference and frequency). The trained model  103  includes a neural network (NN) configuration illustrated in  FIG.  2 A . The NN includes an input layer X, a hidden layer H, and an output layer Z. In the present exemplary embodiment, input data is set such that the target speed is input x 1  and the position deviation is input x 2 . Output data is set such that the phase difference is output z 1  and the frequency is output z 2 . 
     The input layer X includes two neurons (X 1  and X 2 ), the hidden layer H seven neurons (H 1 , H 2 , . . . , H 7 ), and the output layer Z two neurons (Z 1  and Z 2 ). A typical sigmoid function ( FIG.  2 B ) is used as an activation function. The number of neurons in the hidden layer H is not limited to seven, and desirably in the range of 3 to 20. The reason is that there is a trade-off between the leaning accuracy and the leaning speed. The smaller the number of neurons in the hidden layer H, the lower the leaning accuracy but the faster the training convergence (the higher the leaning speed). The greater the number of neurons in the hidden layer H, the more improved the leaning accuracy but the lower the leaning speed. While a sigmoid function or a rectified linear unit (ReLU) (ramp function) is typically used as the activation function of an output layer, a linear function ( FIG.  2 C ) is used here to cope with the negative sign of the phase difference that is a control amount. 
     The neurons (first neurons) of the input layer X and the neurons (second neurons) of the hidden layer H are connected with weights (first weights) “wh”. The thresholds for the neurons (second neurons) of the hidden layer H are “θh”. The neurons (second neurons) of the hidden layer H and the neurons (third neurons) of the output layer Z are connected with weights “wo”. The thresholds for the neurons (third neurons) of the output layer Z are “θo”. The weights and thresholds applied are values trained by a machine learning unit  12  to be described below. The trained NN can be regarded as a collection of common feature patterns extracted from time-series data on the relative speed and the control amounts of the vibration actuator  13 . The outputs therefore have values obtained by functions with the weights and the thresholds as variables (parameters). 
     The control amounts (phase difference and frequency) output from the NN are input to the alternating-current signal generation unit  104 , whereby the speed and driving direction of the vibration actuator  13  are controlled. The alternating-current signal generation unit  104  generates two-phase alternating-current signals based on the phase difference, the frequency, and a pulse width. 
     The boosting circuit  105  includes coils and transformers, for example. The alternating-current signals (alternating-current voltages) boosted to a desired driving voltage by the boosting circuit  105  are applied to a piezoelectric element of the vibrator  131  and drive the contact body  132 . 
     An example of a vibration actuator to which the present exemplary embodiment can be applied will be described with reference to the drawings. The vibration actuator to which the present exemplary embodiment can be applied includes a vibrator and a contact body.  FIGS.  3 A to  3 D  are diagrams for describing the driving principle of a linear driving (linear) vibration actuator using a chip vibrator, which is an example of the vibration actuator  13 . The vibration actuator  13  illustrated in  FIG.  3 A  includes the vibrator  131  and the contact body  132  driven by the vibrator  131 . The vibrator  131  includes an elastic body  203  and a piezoelectric element  204  that is an electromechanical energy transducer bonded to the elastic body  203 . The application of alternating-current voltages to the piezoelectric element  204  generates two vibration modes illustrated in  FIGS.  3 C and  3 D , whereby the contact body  132  put in contact with protrusions  202  with pressure is moved in the direction of the arrow. The vibration actuator  13  to which the present exemplary embodiment can be applied is not limited to a linear driving (linear) vibration actuator using a chip vibrator, and various forms of vibration actuators are applicable. For example, the present exemplary embodiment can be applied to a ring-shaped (rotary) vibration actuator using a chip vibrator. The present exemplary embodiment can also be applied to an annular (rotary) vibration actuator using a ring-shaped vibrator. The vibration actuator  13  may be any actuator that can relatively move the vibrator  131  and the contact body  132  using vibration generated on the vibrator  131  by applying voltages to an electromechanical energy transducer. 
       FIG.  3 B  is a diagram illustrating an electrode pattern of the piezoelectric element  204 . For example, two longitudinally equally divided electrode areas are formed on the piezoelectric element  204  of the vibrator  131 . The electrode areas have the same polarization direction (+). An alternating-current voltage VB is applied to one of the two electrode areas of the piezoelectric element  204  located to the right in  FIG.  3 B . An alternating-current voltage VA is applied to the one located to the left. 
     If the alternating-current voltages VB and VA have a frequency near the resonance frequency of the first vibration mode and have the same phase, the entire piezoelectric element  204  (two electrode areas) extends at one moment and contracts at another. As a result, vibration (hereinafter, thrust vibration) in the first vibration mode illustrated in  FIG.  3 C  occurs on the vibrator  131 . The protrusions  202  are thereby displaced in a thrust direction (Z direction). 
     If the alternating-current voltages VB and VA have a frequency near the resonance frequency of the second vibration mode and have 180° different phases, the right electrode area of the piezoelectric element  204  contracts and the left electrode area extends at one moment. The relationship is reversed at another moment. As a result, vibration in the second vibration mode illustrated in  FIG.  3 D  (hereinafter, feed vibration) occurs on the vibrator  131 . The protrusions  202  are thereby displaced in a driving direction (feed direction, X direction). 
     Vibration in the first and second vibration modes combined can therefore be excited by applying the alternating-current voltages having a frequency near the resonant frequencies of the first and second vibration modes to the electrodes of the piezoelectric element  204 . 
     With the two vibration modes combined, the protrusions  202  make an elliptical motion in a cross-section perpendicular to a Y direction (direction perpendicular to the X and Z directions) in  FIG.  3 D . The elliptical motion drives the contact body  132  in the direction of the arrow in  FIG.  3 A . The direction of the relative movement between the contact body  132  and the vibrator  131 , i.e., the direction in which the contact body  132  is driven by the vibrator  131  (here, X direction) is referred to as the driving direction. 
     The amplitude ratio R of the second vibration mode to the first vibration mode (the amplitude of the feed vibration/the amplitude of the thrust vibration) can be changed by changing a phase difference between the two-phase alternating-current voltages input to the two equally divided electrode areas. In this vibration actuator  13 , the speed of the contact body  132  can be changed by changing the amplitude ratio of the vibrations. 
     In the foregoing description, a case where the vibrator  131  remains stationary (fixed) and the contact body  132  moves (is driven) is described as an example. However, the present invention is not limited thereto. The contact body  132  and the vibrator  131  can relatively change the positions of their contact portions in any manner. For example, the contact body  132  may be stationary (fixed) while the vibrator  131  moves (is driven). In other words, as employed in the present exemplary embodiment, to “drive” means to change the relative position of the contact body  132  with respect to the vibrator  131 , and the absolute position of the contact body  132  (for example, the position of the contact body  132  with reference to the position of a casing accommodating the contact body  132  and the vibrator  131 ) does not necessarily need to be changed. 
     In the foregoing description, the linear driving (linear) vibration actuator  13  is described as an example. In other words, a case where the vibrator  131  or the contact body  132  moves (is driven) linearly is described as an example. However, the present invention is not limited thereto. The contact body  132  and the vibrator  131  can relatively change the positions of their contact portions in any manner. For example, the vibrator  131  and the contact body  132  may move in a rotational direction. An example of the vibration actuator  13  where the vibrator  131  and the contact body  132  move in a rotational direction is a ring-shaped (rotary) vibration actuator including a ring-shaped vibrator. 
     The vibration actuator  13  is used for autofocus driving of a camera, for example. 
       FIG.  4    is a perspective view for describing a lens driving mechanism of a lens barrel. A lens holder driving system using a vibration actuator includes a vibrator, a lens holder, and a first guide bar and a second guide bar that are disposed in parallel and slidably hold the lens holder. In the present exemplary embodiment, a case where the second guide bar is a contact body and the second guide bar is fixed while the vibrator and the lens holder move integrally will be described. 
     The vibrator generates a relative movement force between the vibrator and the second guide bar in contact with the protrusions of the elastic body thereof, using elliptical motion of the protrusions of the vibrator generated by the application of driving voltages to the electromagnetic energy transducer. With such a configuration, the lens holder integrally fixed to the vibrator can be moved along the first and second guide bars. 
     Specifically, a contact body driving mechanism  300  mainly includes a lens holder  302  that is a lens holding member, a lens  306 , a vibrator coupled with a flexible printed circuit board, a pressure magnet  305 , two guide bars  303  and  304 , and a not-illustrated base. Here, the vibrator  131  will be described as an example of the vibrator. 
     A first guide bar  303  and a second guide bar  304  are each held by and fixed to the not-illustrated base at both ends so that the guide bars  303  and  304  are located in parallel with each other. The lens holder  302  includes a cylindrical holder portion  302   a , a holding portion  302   b  that holds and fixes the vibrator  131  and the pressure magnet  305 , and a first guide portion  302   c  that is fitted to the first guide bar  303  and functions as a guide. 
     The pressure magnet  305  for constituting a pressure unit includes a permanent magnet and two yokes located at both ends of the permanent magnet. The pressure magnet  305  and the second guide bar  304  form a magnetic circuit therebetween, whereby an attractive force is generated between the members. The pressure magnet  305  is located at a distance from the second guide bar  304 . The second guide bar  304  is disposed to make contact with the vibrator  131 . 
     The attractive force applies a pressurizing force between the second guide bar  304  and the vibrator  131 . The two protrusions of the elastic body make contact with the second guide bar  304  with pressure to form a second guide portion. The second guide portion forms a guide mechanism using the magnetic attractive force. The vibrator  131  and the second guide bar  304  can be separated by external force. Measures against such a situation will now be described. 
     A retainer portion  302   d  disposed on the lens holder  302  is configured to make contact with the second guide bar  304  so that the lens holder  302  moves back to a desired position. Desired alternating-current voltages (alternating-current signals) are applied to the vibrator  131 , whereby a driving force is generated between the vibrator  131  and the second guide bar  304 . The lens holder  302  is driven by the driving force. 
     The relative position and the relative speed are detected by a not-illustrated position sensor attached to the contact body  132  (second guide bar  304 ) or the vibrator  131 . The relative position is fed back to the control unit  10  as a position deviation, whereby the vibration actuator  13  is feedback-controlled to follow the target position at each unit time. The machine learning unit  12  uses the relative speed and the control amounts (phase difference and frequency) output from the control unit  10  as training data. The training data refers to data including input data paired with output data (correct answer data). In the present exemplary embodiment, the training data is data including the relative speed serving as input data, paired with the control amounts (phase difference and frequency) serving as output data (correct answer data). The present exemplary embodiment is described by using a two-phase driving control apparatus that drives the piezoelectric element  204  as an electromechanical energy transducer in two separate phases as an example. However, the present exemplary embodiment is not limited to the two-phase driving, and can be applied to a vibration actuator of three or more phases. 
     Next, the machine learning unit  12  will be described in detail. The learning model  106  includes an NN configuration (see  FIG.  2   ) with the relative speed from the speed detection unit  16  and a target deviation as inputs, and the phase difference and the frequency as outputs. The target deviation refers to a value set for the position deviation to follow in relatively moving the contact body  132  with respect to the vibrator  131 . The target deviation here is a value having the same dimension (data format) as that of the position deviation. For example, the target deviation is set to zero. An offset value to compensate for play in the mechanical system may be given as the target deviation. The learning model  106  may use a speed deviation that is a difference between the target speed and the detected speed as an input (see  FIG.  5   ) instead of the target deviation. It has been found that motor characteristics that have conventionally been unable to be obtained can be collaterally learned by giving the speed deviation. Specifically, the learning model  106  is trained with features corresponding to the frequency response (transfer characteristic) of the vibration actuator  13  based on a relationship between various vibration components included in the speed deviation and the control amounts. The weight values and thresholds of the NN related to the speed deviation that is an input are thus trained to appropriate values, whereby the control system can be compensated. 
     The control amounts (phase difference and frequency) output from the control unit  10  are used as correct answer data, and errors are calculated by comparison with the control amounts output from the learning model  106  that is untrained or under training. While the phase difference and the frequency are used as the control amounts in this example, a combination of the pulse width and the frequency or a combination of the pulse width and the phase difference can also be used as the control amounts. The number of neurons in the output layer Z of the NN may be one. The machine learning unit  12  may be designed to select any one of the phase difference, frequency, and pulse width as a control amount. 
       FIG.  6    is a flowchart of machine learning and control by the trained model  103  according to the present exemplary embodiment. In step S 1 , initial values of the weights and thresholds of the trained model  103  in the control unit  10  are set using a random function (untrained state). In step S 2 , the vibration actuator  13  is controlled using the untrained model (untrained NN). 
     In step S 3 , time-series data on the control amounts (phase difference and frequency) output from the untrained model during the driving of the vibration actuator  13  and the relative speed detected by the speed detection unit  16  is obtained as training data. 
     In step S 4 , machine learning-based optimization calculation using the learning model  106  is performed with the control amounts in the training data as correct answer data. Optimization refers to adjusting NN parameters such that the output from the NN in response to the input to the NN approaches the training data, and is not limited to adjusting the NN parameters such that the output from the NN with respect to the input to the NN becomes the same as the training data. The learning model  106  has the same NN configuration as that of the trained model  103  used for control. The weights and thresholds of the NN are optimized by the machine learning, and the parameters of the trained model  103  in the control unit  10  are updated. 
     In step S 5 , the vibration actuator  13  is controlled using the trained model  103  of which the weights and thresholds are updated. The machine learning unit  12  includes a program for causing a not-illustrated computer to perform these steps. 
     After the control, the processing returns to step S 3  to obtain training data to cope with a change in the driving condition or the temperature environment. As a method for obtaining the training data, batch learning where training is performed with driving stopped or online learning where training is successively performed during driving is implemented. 
       FIGS.  7 A and  7 B  illustrate a timing chart for describing the batch learning and the online learning by the machine learning unit  12  (method for outputting the control amount for the vibration actuator  13 ). The horizontal axis indicates time. The vertical axis indicates a target position pattern to be given as instruction values for the sake of feedback control of the vibration actuator  13 . 
       FIG.  7 A  illustrates an example of the batch learning where training is performed with the driving stopped (other than when the contact body  132  is relatively moved with respect to the vibrator  131 ). In this example, time-series data on the relative speed and the control amounts detected in a driving period of the vibration actuator  13  is obtained as training data, and the machine learning is performed and the NN parameters (weights and thresholds) are updated using a stopped period. Note that the machine learning does not necessarily need to be performed in every stopped period. For example, training may be performed only when a change in the temperature environment or the driving condition is detected. 
       FIG.  7 B  illustrates an example of the online learning where training is successively performed during driving (when the contact body  132  is relatively moved with respect to the vibrator  131 ). In this example, the machine learning is performed online in parallel with the driving periods of the vibration actuator  13 , whereby the NN parameters are updated during the driving periods. The application of the online learning can cope with load variations occurring during a driving period that are unable to be handled by the batch learning. 
     The machine learning in the foregoing step S 4  will be further described with reference to  FIG.  8 A  and subsequent diagrams.  FIG.  8 A  is a flowchart for a case where adaptive moment estimation (Adam) is used as a technique (optimization algorithm) for optimizing the NN parameters. 
     Steps S 1  and S 2  are the same as described above with reference to  FIG.  6   . 
     In step S 3 , a control amount (n) and a detected speed (n) that are time-series training data illustrated in  FIG.  8 B  are obtained. The control amount (n) and the detected speed (n) are measurement data in the case where the vibration actuator  13  is controlled using the untrained model. The detected speed (n) is the speed detected by the speed detection unit  16  when the vibration actuator  13  is driven with the control amount (n). The numbers of samples n of each of the control amount (phase difference) and the detected speed are 3400. The measurement data is actually measured data when the vibration actuator  13  was driven for 0.34 sec at a control sampling rate of (1/the control sampling period)=10 kHz. 
     The training data does not necessarily need to be obtained at the control sampling rate, and can be thinned to save memory and reduce training time. In the present exemplary embodiment, an error e(n) is calculated by comparing an output z(n), which is the result calculated (derived) and output by the learning model  106  with the detected speed (n) as an input of the learning model  106 , with correct answer data t(n) in the training data. Specifically, the error e(n) is calculated by e(n)=(t(n)−z(n)) 2 . 
     In step S 4 , an error E of the 3400 samples (=Σe(n)=Σ(t(n)−z(n)) 2 ) is calculated in the first loop, and an error gradient ∇E of each of the weights (wh and wo) and thresholds (θh and θo) is calculated. 
     Next, the parameters are optimized using Adam, which is one of the optimization calculation techniques (optimization algorithms), and the error gradients ∇E as follows: 
     
       
         
           
             
               
                 
                   
                     
                       ν 
                       t 
                     
                     = 
                     
                       
                         
                           β 
                           1 
                         
                         · 
                         
                           v 
                           
                             t 
                             - 
                             1 
                           
                         
                       
                       + 
                       
                         
                           ( 
                           
                             1 
                             - 
                             
                               β 
                               1 
                             
                           
                           ) 
                         
                         · 
                         
                           ∇ 
                           E 
                         
                       
                     
                   
                   ⁢ 
                   
 
                   
                     
                       s 
                       t 
                     
                     = 
                     
                       
                         
                           β 
                           2 
                         
                         · 
                         
                           s 
                           
                             t 
                             - 
                             1 
                           
                         
                       
                       + 
                       
                         
                           ( 
                           
                             1 
                             - 
                             
                               β 
                               2 
                             
                           
                           ) 
                         
                         · 
                         
                           ∇ 
                           
                             E 
                             2 
                           
                         
                       
                     
                   
                   ⁢ 
                     
                   
                     
                       w 
                       t 
                     
                     = 
                     
                       
                         w 
                         
                           t 
                           - 
                           1 
                         
                       
                       - 
                       
                         η 
                         · 
                         
                           
                             v 
                             1 
                           
                           
                             
                               
                                 s 
                                 t 
                               
                               + 
                               ε 
                             
                           
                         
                       
                     
                   
                 
               
               
                 
                   [ 
                   
                     Eqs 
                     . 
                          
                     1 
                   
                   ] 
                 
               
             
           
         
       
     
     Here, w t  is the amount of update of a parameter, ∇E is the error gradient, v t  is a moving average of the error gradient ∇E, s t  is a moving average of the square of the error gradient ∇E, η is a learning rate, and c is a divide-by-zero prevention constant. Parameters are η=0.001, ρ 1 =0.9, β2=0.999, and ε=10e-12. The weights and the thresholds are updated each time the optimization calculation is repeated, and the output z(n) of the learning model  106  approaches the correct answer data t(n). As a result, the error E decreases. 
     In step S 5 , the vibration actuator  13  is controlled using the trained NN of which the weights and the thresholds are updated. 
       FIG.  8 C  illustrates the transition of the error E based on the number of calculation loops. Techniques (algorithms) other than the foregoing may be used as the optimization technique (optimization algorithm). 
       FIG.  9 A  compares the calculation results by Adam, Root Mean Square Propagation (RMSProp), Momentum, and stochastic gradient descent (SGD), using the learning model  106  according to the present exemplary embodiment and training data obtained by actual measurement. Adam provided the most excellent result in terms of the number of times of calculation, stability, and the eventual error. 
       FIG.  9 B  illustrates a learning example of the control amount (phase difference) by Adam. It can be seen that the output z of the learning model  106  at the first loop is greatly different from the control amount of the correct answer data t. The output z of the learning model  106  at the 5000th loop of repetitive calculation is approximately the same as the control amount of the correct answer data t. In this learning example, the optimization is performed with the number of loops as 5000. However, the number of loops is desirably adjusted as appropriate based on the convergence rate. 
     The configuration of the control apparatus  15  according to the present exemplary embodiment has been described above. The control unit  10  and the machine learning unit  12  include, for example, a digital device, such as a central processing unit (CPU) and a programmable logic device (PLD) (including an application specific integrated circuit [ASIC]), and elements, such as an analog-to-digital (A/D) converter. The alternating-current signal generation unit  104  of the driving unit  11  includes a CPU, a function generator, and a switching circuit, for example. The boosting circuit  105  of the driving unit  11  includes coils, transformers, and capacitors, for example. The control unit  10 , the machine learning unit  12 , and the driving unit  11  may each be composed of a plurality of elements or circuits instead of a single element or circuit. The processing in the control unit  10 , the machine learning unit  12 , and the driving unit  11  may be performed by any of the elements or circuits. 
       FIGS.  10 A,  10 B, and  10 C  compare the results of feedback control performed with a predetermined target position pattern, using conventional proportional-integral-derivative (PID) control and the control by the trained model  103  according to the present exemplary embodiment. The target position pattern is a trapezoidal driving pattern with a maximum target speed of 50 mm/s to make 5-mm-stroke reciprocations including positioning operations. The horizontal axes indicate time (sec). The vertical axes indicate, in order from above, a phase difference control amount (deg), the detected speed (mm/s) and the speed deviation (mm/s), and the target position (number of encoder pulses: 8000 pls per 1 mm) and the position deviation (μm). 
       FIG.  10 A  illustrates the result of control by a vibration actuator control apparatus using a conventional PID controller (see  FIG.  45 A ). For the conventional PID control, the frequency (driving frequency) of the alternating-current voltages applied to the vibration actuator  13  was fixed at 93 kHz. The vibration actuator  13  was controlled by operating only the phase difference. 
     Between the speed deviation and the position deviation, the position deviation in particular tends to increase in acceleration and deceleration domains. The reason is that the vibration actuator  13  is affected by the inertia of the body to be driven the vibration actuator  13  drives. It can also be seen that it takes a long time for the position deviation to settle down (for the actual position to stop changing after the target position stops changing). The position deviation can be reduced by further increasing the PID control gain. However, a PID control gain having a certain gain margin and phase margin was applied to provide robustness against a change in the driving condition (use frequency range of 91 kHz to 95 kHz) and the ambient temperature. 
       FIG.  10 B  illustrates the result of control by the control apparatus  15  for the vibration actuator  13  using the trained model  103  according to the present exemplary embodiment. The driving frequency was also fixed at 93 kHz, and only the phase difference was operated for control. It was found that the application of the present exemplary embodiment improves the position deviation in all the domains during acceleration, deceleration, and settling-down. 
       FIG.  10 C  illustrates the result of control by the control apparatus  15  for the vibration actuator  13  using the trained model  103 . The frequency was operated in parallel with the phase difference, whereby the driving frequency was operated starting at 93 kHz. Note that the frequency has a signless absolute value. The driving frequency was always operated to frequencies lower than 93 kHz. If there is a plurality of control amounts as in this example, there are an indefinite number of combinations of the control amounts at which a predetermined speed can be obtained in machine learning. The relationship between the control amounts is therefore desirably defined in advance in obtaining the training data. 
     In the present exemplary embodiment, the training is performed by defining the ratio between the frequency and the phase difference. Alternatively, for example, parameters that make the position deviation or power most favorable may be defined by setting NN parameters using a random function and comparing a plurality of training results. It was found that the use of the phase difference and the frequency as the control amounts can extend the speed range of the vibration actuator  13 , and improves the speed deviation and the position deviation compared to the PID control. Note that  FIGS.  10 B and  10 C  illustrate imaginary variations in the phase difference due to PID control (top charts). The variations represent the output of a control amount obtained by an observation device performing PID control based on the position deviation, and are not directly used to control the vibration actuator  13 . 
     Such a PID control amount can be used to detect a control anomaly of the trained model  103 . More specifically, if the control amount output from the trained model  103  is compared with the PID control amount and found to deviate greatly from a predetermined range, the NN parameters can be predicted to be different from normal values, and the parameters can be reset. This function is not an indispensable configuration in obtaining the effects of the present exemplary embodiment, but can improve reliability in terms of guaranteeing the control performance of the trained model  103 .  FIGS.  11 A and  11 B  illustrate results indicating the robustness of the control apparatus  15  according to the present exemplary embodiment. Feedback control was performed using a predetermined target position pattern, which is a trapezoidal driving pattern with a maximum target speed of 50 mm/s to make 5-mm-stroke reciprocations including positioning operations. The horizontal axes indicate time (sec). The vertical axes indicate the target position in units of encoder pulses (left axes), and the position deviation in units of μm (right axes). 
       FIG.  11 A  illustrates the result of control by the trained model  103  trained at a frequency of 95 kHz.  FIG.  11 B  illustrates the result of control by the trained model  103  trained at a frequency of 91 kHz. As described above with reference to  FIGS.  45 A,  45 B,  45 C, and  45 D , the gradient of the speed varies with the control frequency due to the nonlinear characteristics of the vibration actuator  13 . Conventional PID control thus has difficulty in accommodating control at various frequencies. 
     According to the present exemplary embodiment, a trained model  103  capable of coping with a change in the gradient of the speed curve can be generated by machine learning. Favorable controllability can thus be provided at different frequencies. 
     A second exemplary embodiment of the machine learning according to the present invention will be described.  FIG.  12    is a control block diagram of a vibration driving apparatus in a case where a control result of PID control is used as training data. In  FIG.  12   , the control blocks excluding a vibration actuator  13  constitute a control apparatus. These control blocks perform feedback control on the position of the vibration actuator  13  using a PID controller  901 . The PID controller  901  receives a position deviation as an input, and outputs a phase difference and a frequency as PID-calculated control amounts. The controller may have a configuration other than that of a PID controller. For example, proportional (P), proportional-integral (PI), and proportional-derivative (PD) controllers can also be applied. 
     A machine learning unit  12  trains a learning model  106  using a relative speed (detected speed) detected by a speed detection unit  16  and the control amounts (phase difference and frequency) output from the PID controller  901 . The present exemplary embodiment is characterized in that the result of control by the PID controller  901  and the result of control by the trained model (learning model  106 ) trained using the control amounts of the PID controller  901  as correct answer data can be compared. The comparison with the PID controller  901  enables determination as to whether the learning model  106  is well trained. The reliability of the trained model can thus be guaranteed. 
     A third exemplary embodiment of the machine learning according to the present invention will be described.  FIG.  13    is a control block diagram of a vibration driving apparatus in a case where the result of control by open driving is used as training data. In  FIG.  13   , the control blocks excluding a vibration actuator  13  constitute a control apparatus. These control blocks are characterized in that the vibration actuator  13  is not feedback-controlled. 
     A pattern waveform generated by a driving pattern generation unit  1001  (driving pattern instruction unit) is output (instructed) from an open driving unit  1002  to an alternating-current signal generation unit  111 . For example, signals that repeat a sine wave pattern or a rectangular pattern are used. 
     In the present exemplary embodiment, a phase-difference sine wave pattern and a frequency sine wave pattern having the same frequency are output. The control performance of a trained model (learning model  106 ) can be adjusted by adjusting the ratio of the amplitudes of the sine wave patterns. In this example, the phase-difference sine wave pattern has an amplitude of 90°, and the frequency sine wave pattern an amplitude of 1 kHz. 
     A machine learning unit  12  trains the learning model  106  using a relative speed detected by a speed detection unit  16  and control amounts (phase difference and frequency) output from the open driving unit  1002 . The present exemplary embodiment is characterized in that the result of control by the open driving unit  1002  and the result of control by the trained model trained using the control amounts of the open driving unit  1002  as correct answer data can be compared. The comparison with the open driving unit  1002  enables determination as to whether the trained model is well trained. The reliability of the trained model can thus be guaranteed. 
     Another exemplary embodiment (fourth exemplary embodiment) of the control unit  10  according to the first exemplary embodiment illustrated in  FIG.  1    will be described.  FIG.  14    is a control block diagram of a vibration driving apparatus in a case where a trained model and a PID controller are used in combination. In  FIG.  14   , the control blocks excluding a vibration actuator  13  constitute a control apparatus. These control blocks perform feedback control on the position of the vibration actuator  13  using a PID controller  1401  (first PID controller) and a trained model  103 . 
     The first PID controller  1401  receives a position deviation as an input, and outputs a PID-calculated position deviation. Configurations other than a PID controller may be used. For example, P, PI, and PD controllers can be applied. 
     The trained model  103  receives a target speed and the PID-calculated position deviation as inputs. A machine learning unit  12  trains a learning model  106  using a relative speed detected by a speed detection unit  16  and control amounts (phase difference and frequency) output from the trained model  103 . While the trained model  103  receives the PID-calculated position deviation as an input, the PID-calculated position deviation may also be added to the output (control amounts) from the trained model  103  as in a fifth exemplary embodiment to be described below (see  FIG.  15   ). The purpose is to make the PID-calculated amount of the position deviation function in series and in parallel to the trained model  103 . The serial component can significantly increase the effect of the position deviation (responsiveness improves). The parallel component can provide the effect of stabilizing the control system. The trained model  103  according to the present exemplary embodiment can thus be configured with PID calculators in series and in parallel, whereby a control system having a high degree of freedom can be constructed. 
     The application of the present exemplary embodiment enables gain adjustment to the position deviation input to the trained model  103 . The control system can thus be more finely adjusted. 
     Another exemplary embodiment (fifth exemplary embodiment) of the control unit  10  according to the first exemplary embodiment illustrated in  FIG.  1    will be described.  FIG.  16    is a control block diagram of a vibration driving apparatus in a case where a trained model and a PID controller are used in combination. In  FIG.  16   , the control blocks excluding a vibration actuator  13  constitute a control apparatus. These control blocks perform feedback control on the position of the vibration actuator  13  by adding control amounts output from a PID controller  1501  (second PID controller) and control amounts output from a trained model  103 . 
     The second PID controller  1501  receives a position deviation as an input, and outputs a PID-calculated phase difference and frequency. Configurations other than a PID controller may be used. For example, P, PI, and PD controllers can also be applied. A phase compensator may also be disposed at the stage subsequent to the PID controller  1501 . The trained model  103  receives a target speed and the position deviation, but the position deviation may be zero. 
     The trained model  103  outputs a phase difference and a frequency, to which the phase difference and the frequency output from the second PID controller  1501  are added, respectively. A machine learning unit  12  trains a learning model  106  using the added control amounts and a relative speed detected by a speed detection unit  16 . 
     The application of the present exemplary embodiment enables gain adjustment to the position deviation input to the trained model  103 . The control system can thus be finely adjusted. 
     Another exemplary embodiment (sixth exemplary embodiment) of the control unit  10  according to the first exemplary embodiment illustrated in  FIG.  1    will be described.  FIG.  17    is a control block diagram of a vibration driving apparatus in a case where control is performed using a trained model trained with a phase difference, a frequency, and a pulse width as control amounts. In  FIG.  17   , the control blocks excluding a vibration actuator  13  constitute a control apparatus. The control blocks perform feedback control on the position of the vibration actuator  13  using control amounts (phase difference, frequency, and pulse width) output from a trained model  1601 . 
     The trained model  1601  receives a target speed and a position deviation as inputs, and outputs the phase difference, the frequency, and the pulse width calculated by the NN to a driving unit  11 , whereby the vibration actuator  13  is controlled. A machine learning unit  12  obtains the three control amounts output from the trained model  1601  and a relative speed detected by a speed detection unit  16  as learning data, and performs machine learning using a learning model  1602 .  FIG.  18    is a diagram illustrating an NN configuration with the phase difference, the frequency, and the pulse width as outputs. The trained model  1601  and the learning model  1602  include the NN configuration with the target speed and the position deviation as inputs and the three control amounts as outputs. The training data used in the machine learning may be measurement data resulting from the control by the trained model  1601  as described above, or measurement data obtained in a case where the vibration actuator  13  is controlled using an untrained model of which parameters are set using a random function. Alternatively, measurement data obtained by open driving or measurement data obtained by PID control may be used. 
     In determining the weights and thresholds of the NN, condition parameters optimum in terms of the position deviation and power consumption may be selected from a plurality of pieces of training data. The reason is that there are an indefinite number of combinations of conditions, namely, the phase difference, the frequency, and the pulse width, at which the vibration actuator  13  provides a predetermined speed. 
     The application of the present exemplary embodiment increases the parameters to operate the vibration actuator  13  with. The control performance can thus be finely adjusted by performing appropriate machine learning. 
     Another exemplary embodiment (seventh exemplary embodiment) of the control unit  10  according to the first exemplary embodiment illustrated in  FIG.  1    will be described.  FIG.  19    corresponds to the control block diagram of the vibration driving apparatus  17  of  FIG.  1    from which the position instruction unit  102  and the position detection unit  14  are omitted. In  FIG.  19   , the control blocks excluding a vibration actuator  13  constitute a control apparatus.  FIGS.  20 A to  20 C  are diagrams illustrating an NN configuration of a learning model  106  and a trained model control unit  10  used in  FIG.  19   . 
     Even with such a configuration, a trained model  103  can be generated as in the foregoing exemplary embodiments. 
     Another exemplary embodiment of the control unit  10  according to the first exemplary embodiment illustrated in  FIG.  1    will be described.  FIG.  21    corresponds to the control block diagram of the vibration driving apparatus  17  of  FIG.  1    from which the position instruction unit  102  and the position detection unit  14  are omitted and where feedback control using a speed deviation is performed instead of the feedback control using a position deviation. In  FIG.  21   , the control blocks excluding a vibration actuator  13  constitute a control apparatus.  FIGS.  22 A to  22 C  are diagrams illustrating an NN configuration of a learning model  106  and a trained model control unit  10  used in  FIG.  21   . 
     Even with such a configuration, a trained model  103  can be generated as in the foregoing exemplary embodiments. 
     An eighth exemplary embodiment will be described. If, in the foregoing exemplary embodiments, the control apparatus includes a control amount output unit including a trained model trained to output first control amounts when an instruction about a first speed is issued, the machine learning unit  12  may be omitted from the control apparatus. Such a control apparatus  15  has a disadvantage of being unable to train the trained model again. However, the simpler configuration without the machine learning unit  12  is advantageous if the vibration driving apparatus is less likely to perform the machine learning again. 
     In the foregoing exemplary embodiments, a storage unit for storing the parameters of the trained model (the first weights, the second weights, the thresholds for the second neurons, and the thresholds for the third neurons) may be included. The trained model may be trained by replacing the parameters of the trained model with those stored in the storage unit. A memory such as a read-only memory (ROM) is used as the storage unit. However, this is not restrictive. Any storage unit that can store the parameters of the trained model may be used. 
     In the foregoing exemplary embodiments, an environment sensor for detecting a state of an environment may be included. The trained model may be trained if the environment sensor detects a change in the environment. The environment sensor may be at least either one of a temperature sensor and a humidity sensor. 
       FIG.  23    is a control block diagram of a vibration driving apparatus according to a ninth exemplary embodiment. A vibration driving apparatus  17  includes a control apparatus  15  and a vibration actuator  13 . In  FIG.  23   , the control apparatus  15  refers to the vibration driving apparatus  17  excluding the vibration actuator  13 . 
     The control apparatus  15  includes a trained model control unit  10  (control unit) for controlling the vibration actuator  13 , a driving unit  11 , a machine learning unit  12  including a learning model  116 , a position detection unit  14 , and a speed detection unit  16 . The driving unit  11  includes an alternating-current signal generation unit  104  and a boosting circuit  105 . 
     The vibration actuator  13  includes a vibrator  131  and a contact body  132 . The speed detection unit  16  detects a speed (relative speed) of the contact body  132  relative to the vibrator  131 . The position detection unit  14  detects a position (relative position) of the contact body  132  relative to the vibrator  131 . An absolute encoder or an incremental encoder is used as the position detection unit  14 . However, the position detection unit  14  is not limited thereto. The speed detection unit  16  is not limited to one that directly detects speed information (speed sensor), and may be one that indirectly detects speed information through calculation of position information. 
     The control unit  10  is configured to be able to generate signals for controlling driving of the vibrator  131  (relative movement of the contact body  132  with respect to the vibrator  131 ). More specifically, a target speed and a position deviation are input to a trained model  113 , and the resulting outputs, namely, an output phase difference and a frequency, are used as control amounts (first control amounts) of the vibration actuator  13 . The target speed refers to a speed set for an actual speed (detected speed) to follow in relatively moving the contact body  132  with respect to the vibrator  131 . The position deviation refers to a difference between a target position and an actual position (detected position). The target position refers to a position set for the actual position (detected position) to follow in relatively moving the contact body  132  with respect to the vibrator  131 . A pulse width for changing a voltage amplitude may be used as a control amount. 
     The control unit  10  includes a speed instruction unit  101  that issues an instruction about the target speed, and a position instruction unit  102  that issues an instruction about the target position. The control unit  10  also includes a control amount output unit  103  including a trained model that receives the target speed and the position deviation as inputs and outputs the phase difference and the frequency. The “control amount output unit including the trained model” will hereinafter be also referred to simply as a “trained model”. 
     The driving unit  11  incudes the alternating-current signal generation unit  104  and the boosting circuit  105 . 
     The speed instruction unit  101  generates a target speed at each unit time and issues an instruction about the target speed. The position instruction unit  102  generates a target position at each unit time and issues an instruction about the target position. A difference between the target position and the detected position detected by the position detection unit  14  at each unit time is calculated as the position deviation. The difference is given by the detected position at each unit time—the target position at each unit time. 
     For example, the target speed and the target position are generated at each control sampling period that is the unit time. Specifically, the speed instruction unit  101  outputs an instruction value indicating the target speed at each control sampling period. The position instruction unit  102  outputs an instruction value indicating the target position at each control sampling period. These instruction values may be values associated with the target speed and the target position instead of the target speed and the target position themselves. 
     The control sampling period refers to one cycle from the acquisition of a position deviation in  FIG.  23    to immediately before a start of acquisition of another position deviation through the output of the control amounts, the application of alternating-current voltages to the vibrator  131 , and the detection of the actual speed (detected speed) and the actual position (detected position). The position or speed of the vibration actuator  13  is feedback-controlled in the foregoing cycle. Note that the target speed may be generated by differentiating the target position at each unit time. Conversely, the target position may be generated by integrating the target speed. 
     The trained model  113  calculates the control amounts (phase difference and frequency) using the target speed and the position deviation, and outputs the control amounts. The trained model  113  has a recurrent neural network (RNN) structure illustrated in  FIGS.  24 A,  24 B, and  24 C . An RNN includes an input layer X, a hidden layer H, an output layer Z, and a state layer C, and has a deep learning structure. The present exemplary embodiment is characterized by the application to the feedback control of the vibration actuator  13 , taking advantage of the characteristic of an RNN that machine learning is performed while storing time-series information. In the present exemplary embodiment, input data is set so that the target speed is input x 1  and the position deviation is input x 2 . Output data is set so that the phase difference is output z 1  and the frequency is output z 2 . 
     The input layer X includes two neurons (X 1  and X 2 ), the hidden layer H seven neurons (H 1 , H 2 , . . . , and H 7 ), and the output layer Z two neurons (Z 1  and Z 2 ). A typical sigmoid function ( FIG.  24 B ) is used as the activation function. The number of neurons in the hidden layer H is not limited to seven, and desirably in the range of 3 to 20. The reason is that there is a trade-off between the leaning accuracy and the leaning speed. The smaller the number of neurons in the hidden layer H, the lower the leaning accuracy but the faster the training convergence (the higher the leaning speed). The greater the number of neurons in the hidden layer H, the more improved the leaning accuracy but the lower the leaning speed. While a sigmoid function or ReLU (ramp function) is typically used as the activation function of an output layer, a linear function ( FIG.  24 C ) is used here to cope with the negative sign of the phase difference that is a control amount. 
     The state layer C includes seven neurons (C 1 , C 2 , . . . , and C 7 ). The outputs of the hidden layer H are retained in the respective neurons of the state layer C. In other words, the pieces of time-series data at the previous control sampling are retained. The data retained in the state layer C is made to recur to the hidden layer H at the next control sampling. Specifically, the data (target speed and position deviation) from the input layer X and the retained data from the state layer C are multiplied by respective weights and input to the hidden layer H. As a result, the output data (phase difference and frequency) is calculated with the past time-series data stored. 
     The neurons (first neurons) of the input layer H and the neurons (second neurons) of the hidden layer H are connected with weights (first weights) wh. The thresholds for the neurons (second neurons) of the hidden layer H are θh. The neurons (second neurons) of the hidden layer H and the neurons (third neurons) of the output layer Z are connected with weights wo. The thresholds for the neurons (third neurons) of the output layer Z are θo. The neurons (fourth neurons) of the state layer C and the neurons (second neurons) of the hidden layer H are connected with weights wc. The weights and thresholds applied are values trained by the machine learning unit  12  to be described below. The trained RNN can be regarded as a collection of common feature patterns extracted from time-series data on the actual speed (detected speed) and the control amounts of the vibration actuator  13 . The outputs therefore have values obtained by functions with the weights and the thresholds as variables (parameters). 
     The control amounts (phase difference and frequency) output from the RNN are input to the alternating-current signal generation unit  104 , whereby the speed and driving direction of the vibration actuator  13  are controlled. The alternating-current signal generation unit  104  generates two-phase alternating-current signals based on the phase difference, the frequency, and a pulse width. 
     The boosting circuit  105  includes coils and transformers, for example. The alternating-current signals (alternating-current voltages) boosted to a desired driving voltage by the boosting circuit  105  are applied to a piezoelectric element of the vibrator  131  and drive the contact body  132 . 
     The machine learning in the foregoing step S 4  will be further described with reference to  FIG.  25   .  FIG.  25    is a flowchart in a case where Adam is used as a technique (optimization algorithm) for optimizing the RNN parameters. Steps S 1  to S 5  are similar to those described above with reference to  FIG.  8 A  and subsequent drawings except that the error gradients calculated and used are the error gradients ∇E of the weights (wh, wc, and wo) and the thresholds (θh and θo). 
       FIGS.  26 A,  26 B, and  26 C  compare the results of control in cases where feedback control is performed with a predetermined target position pattern, using the conventional PID control and the control by the trained model  113  according to the present exemplary embodiment. The target position pattern is a trapezoidal driving pattern with a maximum target speed of 50 mm/s to make 5-mm-stroke reciprocations including positioning operations. The horizontal axes indicate time (sec). The vertical axes indicate, in order from above, a phase difference control amount (deg), the detected speed (mm/s) and the speed deviation (mm/s), and the target position (number of encoder pulses: 8000 pls per 1 mm) and the position deviation (μm). 
       FIG.  26 A  illustrates the result of control by a vibration actuator control apparatus using a conventional PID controller (see  FIG.  45 A ). For the conventional PID control, the frequency (driving frequency) of the alternating-current voltages applied to the vibration actuator  13  was fixed at 93 kHz. The vibration actuator  13  was controlled by operating only the phase difference. 
     Between the speed deviation and the position deviation, the position deviation in particular tends to increase in acceleration and deceleration domains. The reason is that the vibration actuator  13  is affected by the inertia of the body to be driven that the vibration actuator  13  drives. It can also be seen that it takes a long time for the position deviation to settle down (for the actual position to stop changing after the target position stops changing). The position deviation can be reduced by further increasing the PID control gain. However, a PID control gain having a certain gain margin and phase margin was applied to provide robustness against a change in the driving condition (use frequency range of 91 kHz to 95 kHz) and the ambient temperature. 
       FIG.  26 B  illustrates the result of control by a vibration actuator control apparatus (control apparatus  15  in  FIG.  23   ) using the trained model  113  (trained model having an H-layer RNN structure) according to the present exemplary embodiment. The H-layer RNN refers to an NN where the outputs of the hidden layer H are stored in the state layer C and made to recur to the hidden layer H.  FIGS.  24 A,  24 B, and  24 C  illustrate the H-layer RNN structure. 
     The control apparatus  15  of the vibration actuator using the trained model  113  according to the present exemplary embodiment performs control by fixing the driving frequency and changing the phase difference. Specifically, the driving frequency (“frequency” in  FIG.  23   , output z 2  in  FIG.  24 A ) was fixed at 93 kHz, and the vibration actuator  13  was controlled by changing the phase difference (the phase difference in  FIG.  23   , output z 1  in  FIG.  24 A ). It was found that the application of the H-layer RNN according to the present exemplary embodiment improved the position deviation in all the domains during acceleration, deceleration, and settling-down. 
       FIG.  26 C  illustrates the result of control by a vibration actuator control apparatus using a trained model (trained model having a Z-layer RNN structure) according to the present exemplary embodiment (the control apparatus  15  of  FIG.  23    where the H-layer RNN trained model  113  and learning model  116  are replaced with Z-layer RNN ones). The Z-layer RNN refers to an NN where the outputs of the output layer Z are stored in the state layer C and made to recur to the hidden layer H.  FIGS.  36 A,  36 B, and  36 C  illustrate the Z-layer RNN structure. 
     The control apparatus  15  of the vibration actuator using the foregoing Z-layer RNN trained model according to the present exemplary embodiment performs control by fixing the driving frequency and changing the phase difference. Specifically, the driving frequency (“frequency” in  FIG.  23   , output z 2  in  FIG.  36 A ) was fixed at 93 kHz, and the vibration actuator  13  was controlled by changing the phase difference (the phase difference in  FIG.  23   , output z 1  in  FIG.  36 A ). It was found that the application of the Z-layer RNN according to the present exemplary embodiment improved the position deviation in all the domains during acceleration, deceleration, and setting-down. 
     In the present exemplary embodiment, the input data is set so that the target speed is input x 1  and the position deviation is input x 2 . The output data is set so that the phase difference is output z 1  and the frequency is output z 2 . 
     While the case of using the phase difference and the frequency as the control amounts is illustrated for the purpose of description, the output may be the phase difference alone, or the driving frequency (“frequency” in  FIG.  23   ) alone. The pulse width may be used. 
     The hidden layer H includes seven neurons, and uses a sigmoid function ( FIG.  36 B ) as the activation function. The activation function of the output layer Z is a linear function ( FIG.  36 C ). The state layer C includes two neurons, and the outputs of the output layer Z are retained in the respective neurons of the state layer C. In other words, the pieces of time-series data at the previous control sampling are retained. The data retained in the state layer C is made to recur to the hidden layer H at the next control sampling. Specifically, the data from the input layer X (target speed and position deviation) and the retained data from the state layer C (phase difference and frequency) are multiplied by respective weights and input to the hidden layer H. As a result, the output data (phase difference and frequency) is calculated with the past time-series data stored. 
     The neurons of the input layer X and the hidden layer H are connected with weights wh. The neurons of the state layer C and the hidden layer H are connected with weights wc. The thresholds for the neurons of the hidden layer H are θh. The neurons of the hidden layer H and the output layer Z are connected with weights wo. The thresholds for the neurons of the output layer Z are θo. All the weights and thresholds applied are values trained by the machine learning unit  12 . 
     It was found that the application of the present exemplary embodiment improved the position deviation in all the domains during acceleration, deceleration, and settling-down. 
       FIGS.  26 B and  26 C  illustrate imaginary variations in the phase difference due to PID control (top charts). The variations represent the output of a control amount obtained by an observation device performing PID control based on the position deviation, and are not directly used to control the vibration actuator  13 . Such a PID control amount can be used to detect a control anomaly of the trained model  113 . More specifically, if the control amount output from the trained model  113  is compared with the PID control amount and found to deviate greatly from a predetermined range, the RNN parameters can be predicted to be different from normal values, and the parameters can be reset. This function is not an indispensable configuration in obtaining the effects of the present exemplary embodiment, but can improve reliability in terms of guaranteeing the control performance of the trained model  113 . 
       FIGS.  27 A and  27 B  illustrate the results of a simulation demonstrating high-frequency responsiveness of the control apparatus  15  for the vibration actuator  13  according to the present exemplary embodiment. Feedback control was performed with a predetermined target position pattern (position instruction values) indicated by the solid-lined sine wave. The target position pattern was a sine wave driving pattern with a maximum target speed of 30 mm/s to make reciprocations over a small distance (50 to 100 μm) at a high frequency (100 Hz or 200 Hz). The horizontal axes indicate time (ms), and the vertical axes position (mm).  FIG.  27 A  illustrates the result of control with position instruction values at 100 Hz.  FIG.  27 B  illustrates the result of control with the 200-Hz target position pattern. It can be seen that the PID control lagged behind the target position pattern greatly in phase and failed to provide sufficient following performance. This is more noticeable the higher the frequency of the target position pattern. By contrast, it can be seen that the RNN control (control by the RNN-based control unit  10 ) according to the present exemplary embodiment provides favorable followability to the target position pattern. In other words, it can be seen that the RNN control according to the present exemplary embodiment lagged less behind the target position pattern in terms of temporal phase (lagged less behind the target position pattern in phase in the time axis direction) than the PID control. The reason is considered to be that the RNN stores past time-series information and thus improves the prediction accuracy of the control amounts during acceleration and deceleration. A specific description will now be given. 
     In driving the vibration actuator  13  to follow a target speed, the actual speed (detected speed) inevitably deviates from the target speed (there occurs a following delay in the detected speed). To reduce such a following delay, the control amounts are desirably output based on a predicted target speed. NN control (control by an NN-based control unit) outputs the control amounts based only on the target speed (output from the input layer X) as the speed instruction, and does not predict the target speed (see  FIG.  28 A ). 
     By contrast, the RNN control (H-layer RNN control) predicts the target speed by inputting (adding) the outputs from the state layer C (past outputs from the hidden layer H) to the hidden layer H along with the target speed (output from the input layer X). In other words, the outputs from the state layer C are based on the history of the past target speed (include information about the history of the past target speed). The control amounts are thus output with the future target speed predicted by adding such outputs from the state layer C to the current target speed (see  FIG.  28 B ). In  FIG.  28 B , the number of neurons in the hidden layer H is two for simplicity of the diagram. However, the same applies if the number of neurons in the hidden layer H is three or more. 
     Another RNN control (Z-layer RNN control) predicts the target speed by inputting (adding) the outputs from the output layer Z (past outputs from the output layer Z) to the hidden layer H along with the target speed (output from the input layer X). In other words, the outputs from the state layer C are based on the history of the past target speed (includes information about the history of the past target speed). The control amounts are thus output with the future target speed predicted by adding such outputs from the state layer C to the current target speed (see  FIG.  28 C ). In  FIG.  28 C , the number of neurons in the hidden layer H is two for simplicity of the diagram. However, the same applies if the number of neurons in the hidden layer H is three or more. 
       FIGS.  29 A and  29 B  illustrate results indicating robustness of the control apparatus  15  according to the present exemplary embodiment. Feedback control was performed with a predetermined target position pattern, which is a trapezoidal driving pattern with a maximum target speed of 50 mm/s to make 5-mm-stroke reciprocations including positioning operations. The horizontal axes indicate time (sec). The vertical axes indicate the target position in units of encoder pulses (left axes), and the position deviation in units of μm (right axes). 
       FIG.  29 A  illustrates the result of control using the trained model  113  trained with a starting frequency of 95 kHz.  FIG.  29 B  illustrates the result of control using the trained model  113  trained with a starting frequency of 91 kHz. As described above with reference to  FIGS.  45 A,  45 B,  45 C, and  45 D , the conventional PID control has difficulty in coping with different starting frequencies since the speed gradient varies due to the nonlinear characteristics of the vibration actuator  13 . By contrast, the present exemplary embodiment can generate a trained model  113  capable of coping with a change in the gradient of the speed curve by machine learning, and can thus provide favorable controllability even with different starting frequencies. 
     A tenth exemplary embodiment of the machine learning according to the present invention will be described. 
       FIG.  30    is a control block diagram in a case where the result of control by a vibration actuator control apparatus using a PID controller is used as training data. These control blocks perform feedback control on the position of a vibration actuator  13  by using a PID controller  901 . The PID controller  901  receives a position deviation as an input, and outputs a phase difference and a frequency that are PID-calculated control amounts. Configurations other than a PID controller may be used. For example, P, PI, and PD controllers can be applied. 
     Like the ninth exemplary embodiment, a machine learning unit  12  trains a learning model  116  using a detected speed detected by a speed detection unit  16  and the control amounts output from the PID controller  901 . The present exemplary embodiment is characterized in that the result of control by the PID controller  901  and the result of control by the trained model (learning model  116 ) can be compared. The comparison with the PID controller  901  enables determination as to whether the trained model is well trained. The reliability of the trained model can thus be guaranteed. 
     An eleventh exemplary embodiment of the machine learning according to the present invention will be described. 
       FIG.  31    is a control block diagram in a case where the result of control by open driving (the result of control by a vibration actuator control apparatus using an open driving unit) is used as training data. These control blocks are characterized in that a vibration actuator  13  is not feedback-controlled. A pattern waveform generated by a driving pattern generation unit  1001  is output from an open driving unit  1002  to an alternating-current signal generation unit  111 . For example, repetitive signals having a sine wave pattern or a rectangular pattern are used. In the present exemplary embodiment, phase-difference and frequency sine wave patterns having the same frequency are output. The control performance of a trained model can be adjusted by adjusting the ratio of the amplitudes of the sine wave patterns. In this example, the phase-difference sine wave pattern has an amplitude of 90°, and the frequency sine wave pattern has an amplitude of 1 kHz. 
     Like the ninth exemplary embodiment, a machine learning unit  12  trains a learning model  116  using a detected speed detected by a speed detection unit  16  and the control amounts output from the open driving unit  1002 . The present exemplary embodiment can use the results obtained during open driving as the training data, and can provide similar effects. 
     Another exemplary embodiment (twelfth exemplary embodiment) of the control unit  10  according to the ninth exemplary embodiment illustrated in  FIG.  23    will be described. 
       FIG.  32    is a control block diagram in a case where a trained model and a PID controller are used in combination. These control blocks perform feedback control on the position of a vibration actuator  13  by using a PID controller  1401  and a trained model  113 . The PID controller  1401  receives a position deviation as an input and outputs a PID-calculated position deviation. Configurations other than a PID controller may be used. For example, P, PI, and PD controllers can be applied. The trained model  113  receives a target speed and the PID-calculated position deviation as inputs. A machine learning unit  12  trains a learning model  116  by using a detected speed detected by a speed detection unit  16  and the control amounts output from the trained model  113 . 
     The application of the present exemplary embodiment enables gain adjustment to the position deviation input to the trained model  113 . This enables fine adjustments to the control system (adjustments to the control amounts). 
     Another exemplary embodiment (thirteenth exemplary embodiment) of the control unit  10  according to the ninth exemplary embodiment illustrated in  FIG.  23    will be described. 
       FIG.  33    is a control block diagram in a case where a trained model and a PID controller are used in combination. These control blocks perform feedback control on the position of a vibration actuator  13  by adding the control amounts from a PID controller  1501  and those from a trained model  113 . The PID controller  1501  receives a position deviation as an input, and outputs a PID-calculated phase difference and frequency. Configurations other than a PID controller may be used. For example, P, PI, and PD controllers can be applied. A phase compensator may be disposed at the stage subsequent to the PID controller  1501 . The trained model  113  receives a target speed and the position deviation as inputs, but the position deviation may be zero. The trained model  113  outputs a phase difference and a frequency, to which the phase difference and the frequency output from the PID controller  1501  are added, respectively. A machine learning unit  12  trains a learning model  116  using the added control amounts and a detected speed detected by a speed detection unit  16 . 
     The application of the present exemplary embodiment enables gain adjustment to the position deviation. This enables fine adjustments to the control system (adjustments to the control amounts). 
     Another exemplary embodiment (fourteenth exemplary embodiment) of the control unit  10  according to the ninth exemplary embodiment illustrated in  FIG.  23    will be described. 
       FIG.  34    is a control block diagram for performing control using a trained model trained with a phase difference, a frequency, and a pulse width as control amounts. These control blocks perform feedback control on the position of a vibration actuator  13  using control amounts (phase difference, frequency, and pulse width) output from a trained model  1601 . The trained model  1601  receives a target speed and a position deviation as inputs, and outputs a phase difference, a frequency, and a pulse width calculated by an RNN to a driving unit  11 , whereby the vibration actuator  13  is controlled. A machine learning unit  12  obtains the three control amounts output from the trained model  1601  and a detected speed detected by a speed detection unit  16  as training data, and performs machine learning using a learning model  1602 . 
       FIG.  35    illustrates an H-layer RNN structure of the learning model  1602  with a phase difference, a frequency, and a pulse width as outputs. The trained model  1601  and the learning model  1602  of  FIG.  34    have the H-layer RNN structure with the target speed and the position deviation as inputs and with the three control amounts as outputs. The training data to be used for the machine learning may be measurement data obtained during control by the trained model  1601  as described above, or measurement data obtained during control by an untrained model of which parameters are set using a random function. Alternatively, measurement data obtained by open driving or measurement data obtained by PID control may be used. In determining the weights and thresholds of the RNN, condition parameters optimum in terms of the position deviation and power consumption may be selected from a plurality of pieces of training data. The reason is that there are an indefinite number of combinations of conditions, namely, the phase difference, the frequency, and the pulse width, at which the vibration actuator  13  provides a predetermined speed. 
     The application of the present exemplary embodiment increases the parameters to operate the vibration actuator  13  with. The control performance can thus be finely adjusted by performing appropriate machine learning. 
     Another exemplary embodiment (fifteenth exemplary embodiment) of the control unit  10  according to the ninth exemplary embodiment illustrated in  FIG.  23    will be described. 
       FIGS.  36 A,  36 B, and  36 C  illustrate a Z-layer RNN structure of a learning model with a phase difference and a frequency as outputs. The trained model  113  and the learning model  116  of  FIG.  23    may have the Z-layer RNN structure with the target speed and the position deviation as inputs and the two control amounts as outputs. Training data to be used for the machine learning may be measurement data obtained during control by the trained model  113  as described above, or measurement data obtained during control by an untrained model of which parameters are set using a random function. Alternatively, measurement data obtained by open driving or measurement data obtained by PID control may be used. In determining the weights and thresholds of the RNN, condition parameters optimum in terms of the position deviation and power consumption may be selected from a plurality of pieces of training data. The reason is that there are an indefinite number of combinations of conditions, namely, the phase difference and the frequency, at which the vibration actuator  13  provides a predetermined speed. 
     As illustrated in  FIG.  26 C , the application of the present exemplary embodiment (Z-layer RNN) can improve the position deviation in all the domains during acceleration, deceleration, and settling-down. 
     Another exemplary embodiment (sixteenth exemplary embodiment) of the control unit  10  according to the ninth exemplary embodiment illustrated in  FIG.  23    will be described. 
       FIG.  37    corresponds to the control block diagram of the vibration driving apparatus  17  of  FIG.  23    from which the position instruction unit  102  and the position detection unit  14  are omitted. In  FIG.  37   , the control blocks excluding a vibration actuator  13  constitute a control apparatus  15 .  FIG.  38    is a diagram illustrating an RNN structure of a learning model  116  and a trained model  113  used in  FIG.  37   . 
     Even with such a configuration, the trained model  113  can be generated as in the foregoing exemplary embodiments. 
     Another exemplary embodiment (seventeenth exemplary embodiment) of the control unit  10  according to the ninth exemplary embodiment illustrated in  FIG.  23    will be described. 
       FIG.  39    corresponds to the control block diagram of the vibration driving apparatus  17  illustrated in  FIG.  23    from which the position instruction unit  102  and the position detection unit  14  are omitted and where feedback control based on a speed deviation is performed instead of the feedback control based on the position deviation. In  FIG.  39   , the control blocks excluding a vibration actuator  13  constitute a control apparatus  15 .  FIG.  40    is a diagram illustrating an RNN structure of a learning model  116  and a trained model  113  used in  FIG.  39   . 
     Even with such a configuration, the trained model  113  can be generated as in the foregoing exemplary embodiments. 
     An eighteenth exemplary embodiment will be described. In the foregoing exemplary embodiments, if the control apparatus  15  includes a control amount output unit  103  including a trained model that is trained to output the first control amount(s) when an instruction about the first speed is issued, the machine learning unit  12  may be omitted from the control apparatus  15 . Such a control apparatus  15  has the disadvantage of being unable to train the trained model again. However, the simple configuration without the machine learning unit  12  is advantageous if the vibration driving apparatus  17  is less likely to perform the machine learning again. 
     In the foregoing exemplary embodiments, a storage unit for storing the parameters of the trained model (the first weights, the second weights, the third weights, the thresholds for the second neurons, and the threshold(s) for the third neuron(s)) may be included. The trained model may be trained by replacing the parameters of the trained model with those stored in the storage unit. A memory such as a ROM is used as the storage unit. However, this is not restrictive. Any storage unit that can store the parameters of the trained model may be used. 
     In the foregoing exemplary embodiments, an environment sensor for detecting a state of an environment may be included. The trained model may be trained if the environment sensor detects a change in the environment. The environment sensor may be at least either one of a temperature sensor and a humidity sensor. 
     Another exemplary embodiment (nineteenth exemplary embodiment) of the control unit  10  according to the ninth exemplary embodiment illustrated in  FIG.  23    will be described. 
       FIG.  41    is a diagram illustrating a control apparatus  15  for a vibration actuator  13  according to the nineteenth exemplary embodiment of the present invention, and adaptive control using an RNN. A machine learning unit is not illustrated or necessarily needed in this example. The control unit  10  includes a first trained model  1611 , a second trained model  1612 , and an adaptive control unit  108 . The two trained models  1611  and  1612  have the same RNN structure. A target speed and a position deviation are input to the first trained model  1611 . A detected speed and a target deviation (zero) are input to the second trained model  1612 . 
     The adaptive control unit  108  calculates an error gradient based on error data on the control amounts output from the two trained models  1611  and  1612  at each control sampling period. The weight and threshold parameters of the RNNs are updated using SGD, and reflected on the two trained models  1611  and  1612 . In other words, the data between the control sampling periods is used as training data. 
     The calculation at each control sampling period is repeated during driving, and the control amounts (phase difference and frequency) output from the first trained model  1611  and the control amounts output from the second trained model  1612  converge to minimize the error. This enables feedback control to follow the target speed and bring the position deviation close to zero. 
     As described above, the RNN-based trained models  1611  and  1612  according to the present exemplary embodiment can be applied to adaptive control to compensate for a change in the characteristics of the vibration actuator  13  during driving. 
     Another exemplary embodiment (twentieth exemplary embodiment) of an NN used in a learning model according to the present invention will be described. 
       FIGS.  42 A and  42 B  are diagrams illustrating a control apparatus for a vibration actuator according to the twentieth exemplary embodiment of the present invention and the structure of a long short-term memory (LSTM)-based learning model. LSTM is a derivative network of an RNN. LSTM includes a loop inside and can retain information. Weights in the future are thus determined based on past weights. In addition to the structure of having a loop inside the RNN, LSTM also includes a forget gate, an input gate, and an output gate. In particular, the provision of the forget gate enables long-term learning of continuous data that is unable to be achieved by RNNs. 
       FIG.  42 A  illustrates the configuration in the case where LSTM is applied to a learning model according to the present exemplary embodiment. LSTM receives an input Xt from an input layer X and an output Ht−1 of a hidden layer H at a previous time (t−1), and outputs an output Ht to an output layer Z. LSTM includes a memory cell inside, and stores the internal state at each time. 
       FIG.  42 B  is a block diagram illustrating the internal configuration of the LSTM. The forget gate, the input gate, and the output gate are a sigmoid function each. The forget gate determines how much past information to store. The input gate determines which value to update. The memory cell is updated using a tan h function. The tan h function generates a new candidate value to be added to the memory cell. The output gate selects a memory cell candidate element and selects how much information to pass on to the next time. 
     The LSTM model described above is a basic one, and not limited to the illustrated network. The connection between the network elements may be changed. A quasi-recurrent neural network (QRNN) may be used instead of LSTM. 
     A twenty-first exemplary embodiment will be described. In the first exemplary embodiment, the control apparatus  15  for the vibration actuator  13  is described to be used to drive an autofocus lens of an imaging apparatus. However, application examples of the present invention are not limited thereto. For example, as illustrated in  FIGS.  43 A and  43 B , the control apparatus  15  for the vibration actuator  13  can be used to drive a lens or image sensor for camera shake correction.  FIG.  43 A  is a plan view (top view) illustrating appearance of an imaging apparatus  60 .  FIG.  43 B  is a schematic diagram illustrating an internal configuration of the imaging apparatus  60 . 
     The imaging apparatus  60  broadly includes a main body  61  and a lens barrel  62  detachably attachable to the main body  61 . The main body  61  includes an image sensor  63  that converts an optical image formed of light passed through the lens barrel  62  into an image signal, and a camera control microcomputer  64  that controls overall operation of the imaging apparatus  60 . Examples of the image sensor  63  include a charge-coupled device (CCD) sensor and a complementary metal-oxide-semiconductor (CMOS) sensor. 
     The lens barrel  62  includes a plurality of lenses L, such as a focus lens and a zoom lens, located at predetermined positions. The lens barrel  62  also includes a built-in image blur correction apparatus  50 . The image blur correction apparatus  50  includes a disc member  56  and vibrators  131  disposed on the disc member  56 . An image blur correction lens  65  is located in a hole at the center of the disc member  56 . 
     The image blur correction apparatus  50  is disposed so that the image blur correction lens  65  can be moved within a plane orthogonal to the optical axis of the lens barrel  62 . In such a case, a control apparatus  15  according to the present exemplary embodiment is used to drive the vibrators  131 , whereby the vibrators  131  and the disc member  56  are relatively moved with respect to contact bodies  132  fixed to the lens barrel  62 , and the image blur correction lens  65  is driven. 
     The control apparatus  15  according to the present exemplary embodiment can be also used to drive a lens holder for moving the zoom lens. For the purpose of lens driving, another control apparatus  15  according to the present exemplary embodiment can thus be mounted on an interchangeable lens in addition to the imaging apparatus  60 . 
     The control apparatus  15  for the vibration actuator  13  described in the first exemplary embodiment can be also used to drive an automatic stage. For example,  FIG.  44    is a perspective view illustrating appearance of a microscope. The control apparatus  15  can be used to drive the automatic stage of the microscope. 
     The microscope illustrated in  FIG.  44    includes an imaging unit  70  including a built-in image sensor and optical system, and an automatic stage  71  disposed on a base. The automatic stage  71  includes a stage  72  to be moved by vibration actuators. An object to be observed is placed on the stage  72 , and the imaging unit  70  captures a magnified image of the object. If the observation range is wide, the stage  72  is moved by driving the vibration actuators using the control apparatus  15  according to the first or second exemplary embodiment. 
     The object to be observed is thereby moved in an X direction or a Y direction in the diagram to obtain a large number of captured images. A not-illustrated computer connects the captured images, whereby a single high-resolution image of the wide observation range can be obtained. 
     The exemplary embodiments of the present invention have been described above in detail. However, the present invention is not limited to these specific exemplary embodiments, and various modes not departing from the gist of the invention are also included in the present invention. The foregoing exemplary embodiments merely demonstrate several exemplary embodiments of the present invention, and the exemplary embodiments can be combined as appropriate. 
     The present invention is not limited to the foregoing exemplary embodiments, and various changes and modifications can be made without departing from the spirit and scope of the present invention. The following claims are therefore attached to make the scope of the present invention public. 
     According to an exemplary embodiment of the present invention, a vibration actuator control apparatus including a control amount output unit different from a conventional PID controller as its main control amount output unit can be provided. 
     OTHER EMBODIMENTS 
     Embodiment(s) of the present invention can also be realized by a computer of a system or apparatus that reads out and executes computer executable instructions (e.g., one or more programs) recorded on a storage medium (which may also be referred to more fully as a ‘non-transitory computer-readable storage medium’) to perform the functions of one or more of the above-described embodiment(s) and/or that includes one or more circuits (e.g., application specific integrated circuit (ASIC)) for performing the functions of one or more of the above-described embodiment(s), and by a method performed by the computer of the system or apparatus by, for example, reading out and executing the computer executable instructions from the storage medium to perform the functions of one or more of the above-described embodiment(s) and/or controlling the one or more circuits to perform the functions of one or more of the above-described embodiment(s). The computer may comprise one or more processors (e.g., central processing unit (CPU), micro processing unit (MPU)) and may include a network of separate computers or separate processors to read out and execute the computer executable instructions. The computer executable instructions may be provided to the computer, for example, from a network or the storage medium. The storage medium may include, for example, one or more of a hard disk, a random-access memory (RAM), a read only memory (ROM), a storage of distributed computing systems, an optical disk (such as a compact disc (CD), digital versatile disc (DVD), or Blu-ray Disc (BD)™), a flash memory device, a memory card, and the like. 
     While the present invention has been described with reference to exemplary embodiments, it is to be understood that the invention is not limited to the disclosed exemplary embodiments. The scope of the following claims is to be accorded the broadest interpretation so as to encompass all such modifications and equivalent structures and functions.