Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
WIND TURBINE CONTROL BASED ON REINFORCEMENT LEARNING
Document Type and Number:
WIPO Patent Application WO/2021/052686
Kind Code:
A1
Abstract:
Methods, systems, and devices for wind turbine control based on reinforcement learning are disclosed. The method comprises receiving data indicative of a current environmental state of the wind turbine, determining one or more controlling actions of the wind turbine based on the current environmental state of the wind turbine and a reinforcement learning algorithm, and applying the determined one or more controlling actions to the wind turbine.

Inventors:
GOLLNICK BERT (DE)
Application Number:
PCT/EP2020/072731
Publication Date:
March 25, 2021
Filing Date:
August 13, 2020
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
SIEMENS GAMESA RENEWABLE ENERGY AS (DK)
International Classes:
F03D7/02; F03D7/04; G05B13/02
Foreign References:
JP2019146420A2019-08-29
EP3406894A12018-11-28
CN102102626A2011-06-22
Other References:
TOMIN NIKITA ET AL: "Intelligent Control of a Wind Turbine based on Reinforcement Learning", 2019 16TH CONFERENCE ON ELECTRICAL MACHINES, DRIVES AND POWER SYSTEMS (ELMA), IEEE, 6 June 2019 (2019-06-06), pages 1 - 6, XP033579195, DOI: 10.1109/ELMA.2019.8771645
WEI CHUN ET AL: "Reinforcement-Learning-Based Intelligent Maximum Power Point Tracking Control for Wind Energy Conversion Systems", IEEE TRANSACTIONS ON INDUSTRIAL ELECTRONICS, IEEE SERVICE CENTER, PISCATAWAY, NJ, USA, vol. 62, no. 10, 1 October 2015 (2015-10-01), pages 6360 - 6370, XP011668491, ISSN: 0278-0046, [retrieved on 20150909], DOI: 10.1109/TIE.2015.2420792
BIN QIN ET AL: "Pitch angle control based on renforcement learning", THE 26TH CHINESE CONTROL AND DECISION CONFERENCE (2014 CCDC), IEEE, 31 May 2014 (2014-05-31), pages 18 - 21, XP032618860, ISBN: 978-1-4799-3707-3, [retrieved on 20140710], DOI: 10.1109/CCDC.2014.6852110
Attorney, Agent or Firm:
ASPACHER, Karl-Georg (DE)
Download PDF:
Claims:
Patent claims

1. A method of controlling a wind turbine (80), comprising: receiving (202) data indicative of a current environmen- tal state of the wind turbine (80); determining (204) one or more controlling actions of the wind turbine (80) based on the current environmental state of the wind turbine (80) and a reinforcement learning algorithm (700); and applying (206) the determined one or more controlling actions to the wind turbine (80).

2. The method of claim 1, wherein the current environmental state of the wind turbine (80) specifies one or more of the following: a wind speed, a turbulence intensity, a site ele- vation, a temperature, a vertical wind shear, or a horizontal wind shear.

3. The method of any claim 1 or 2, wherein the one or more controlling actions comprise at least one of keep-idling or start-up.

4. The method of any one of the preceding claims, wherein the one or more controlling actions are determined based on a predefined set of controlling actions, wherein each of the controlling actions in the predefined set of controlling ac- tions is associated with a reference reward value given that that respective controlling action is determined at the cur- rent environmental state.

5. The method of claim 4, wherein the one or more controlling actions are determined based on the predefined set of con- trolling actions taking the respective reference reward value into account.

6. The method of claim 4, wherein the one or more controlling actions are determined based on the predefined set of con- trolling actions using an arbitrary selection.

7. The method of any one of claims 4 to 6, further compris- ing: upon applying the determined one or more controlling ac- tions: receiving measurement data associated with a current reward value; performing a comparison between the reference reward value and the current reward value; and training the reinforcement learning algorithm (700) based on the comparison.

8. The method of any one of claims 1 to 3, further compris- ing: predicting a reward value for a future point in time based on a predefined value function of the reinforcement learning algorithm (700), wherein the one or more controlling actions are determined based on a predefined set of control- ling actions taking the predicted reward value into account.

9. The method of claim 8, wherein the value function compris- es a linear function or a neural network.

10. The method of any one of claims 8 or 9, further compris- ing: upon applying the determined one or more controlling ac- tions: receiving measurement data associated with a current aggregate reward value; performing a comparison between the predicted reward value and the current aggregate reward value; and training the reinforcement learning algorithm (700) based on the comparison.

11. The method of any one of claims 4 to 10, wherein the re- ward value comprises a net power output of the wind turbine (80).

12. The method of any one of the preceding claims, further comprising: pre-training (201) the reinforcement learning algorithm (700) by using tuples of environmental states, controlling actions, and net power outputs which are obtained from other wind turbines (80) or expert knowledge.

13. A device for controlling a wind turbine (80), the device comprising one or more processors, the one or more processors being configured to: receive data indicative of a current environmental state of the wind turbine (80); determine one or more controlling actions of the wind turbine (80) based on the current environmental state of the wind turbine (80) and a reinforcement learning algorithm (700); and apply the determined one or more controlling actions to the wind turbine (80).

14. The device of claim 13, wherein the one or more proces- sors are configured to perform the method of any one of claims 1 to 12.

Description:
Description

Wind Turbine Control based on Reinforcement Learning

TECHNICAL FIELD

Various embodiments of the invention relate to methods and devices for controlling a wind turbine by utilizing a rein- forcement learning algorithm.

BACKGROUND

Wind turbines have been used for many years as a more envi- ronmental friendly energy source. Depending on the wind speed, wind turbines will produce more or less energy. Typi- cally, operation of a wind turbine below a certain wind speed is not feasible.

Thus, typically, each wind turbine has a pre-defined cut-in wind speed. Whenever the real-time wind speed - e.g., meas- ured by a nacelle anemometer - exceeds the cut-in wind speed, the wind turbine will start-up to produce power. For wind speeds below the cut-in wind speed, the wind turbine is idling.

Such techniques of using a simple predefined threshold as cut-in wind speed face certain restrictions and drawbacks.

For example, sometimes the feasibility of starting the wind turbine to produce energy depends not only by the local wind speed (typically taken as a point measurement on hub height), but also other environmental parameters. Examples include the wide-area wind field, especially wind shear (both vertically and horizontally over the rotor area of the wind turbine). In addition, the vertical wind shear is mainly driven by temper- ature. Further, turbulence intensity is a main contributor to the kinetic energy in the wind. The temperature and site ele- vation influence air density, which linearly impacts the en- ergy in the wind field. Consequently, in scenarios in which the cut-in wind speed is locally defined, the wind turbine cannot be controlled pre- cisely and thus the power output of the wind turbine is not optimal .

SUMMARY

Therefore, there is a need for advanced techniques of con- trolling the wind turbine. In particular, there is a need to control the wind turbine taking into account various environ- mental parameters.

This need is met by the features of the independent claims. The features of the dependent claims define embodiments.

A method of controlling a wind turbine comprises receiving data indicative a current environmental state of the wind turbine. The method also comprises determining one or more controlling actions of the wind turbine based on the current environmental state of the wind turbine and a reinforcement learning algorithm. The method further comprises applying the determined one or more controlling actions to the wind tur- bine.

A system for controlling a wind turbine comprises one or more computers, the one or more computers are configured to re- ceive data indicative of a current environmental state of the wind turbine; determine one or more controlling actions of the wind turbine based on the current environmental state of the wind turbine and a reinforcement learning algorithm; and apply the determined one or more controlling actions to the wind turbine.

A device for controlling a wind turbine, the device compris- ing one or more processors, the one or more processors are configured to receive data indicative of a current environ- mental state of the wind turbine; determine one or more con- trolling actions of the wind turbine based on the current en- vironmental state of the wind turbine and a reinforcement learning algorithm; and apply the determined one or more con- trolling actions to the wind turbine.

A computer program product or a computer program or a comput- er-readable storage medium includes program code. The program code can be executed by at least one processor. Executing the program code causes the at least one processor to perform a method of controlling a wind turbine. The method comprises receiving data indicative of a current environmental state of the wind turbine; determining one or more controlling actions of the wind turbine based on the current environmental state of the wind turbine and a reinforcement learning algorithm; and applying the determined one or more controlling actions to the wind turbine.

It is to be understood that the features mentioned above and those yet to be explained below may be used not only in the respective combinations indicated, but also in other combina- tions or in isolation without departing from the scope of the invention .

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 schematically illustrates a wind turbine.

FIG. 2 schematically illustrates a reinforcement learning al- gorithm according to various examples.

FIG. 3 schematically illustrates a diagram for a policy p in connection with a reinforcement learning algorithm.

FIG. 4 is an example state tree to schematically illustrate core ideas of reinforcement learning algorithms that are uti- lized in various embodiments of this application. FIG. 5 is a flow diagram of an example method for controlling a wind turbine in response to an environmental state.

FIG. 6 schematically illustrates aspects with respect to a system that can be configured to execute the method for con- trolling a wind turbine.

DETAILED DESCRIPTION OF EMBODIMENTS

In the following, embodiments of the invention will be de- scribed in detail with reference to the accompanying draw- ings. It is to be understood that the following description of embodiments is not to be taken in a limiting sense. The scope of the invention is not intended to be limited by the embodiments described hereinafter or by the drawings, which are taken to be illustrative only.

The drawings are to be regarded as being schematic represen- tations and elements illustrated in the drawings, which are not necessarily shown to scale. Rather, the various elements are represented such that their function and general purpose become apparent to a person skilled in the art. Any connec- tion or coupling between functional blocks, devices, compo- nents, or other physical or functional units shown in the drawings or described herein may also be implemented by an indirect connection or coupling. A coupling between compo- nents may also be established over a wireless connection. Functional blocks may be implemented in hardware, firmware, software, or a combination thereof.

Various techniques described herein generally relate to con- trolling a wind turbine. More specifically, one or more oper- ational parameters of the wind turbine can be controlled, by applying one or more respective controlling actions. As a general rule, the kind and type of operational parameters that are subject to the control can vary in the various exam- ples described herein. For instance, start-up and idling of the wind turbine could be controlled. When idling, the wind turbine blades can be fixed or free- wheeling. However, a generator of the wind turbine does not connect to a power grid, i.e., the wind turbine does not transmit electricity to the power grid. Start-up then marks the transition into a mode in which energy is generated by the generator and transmitted to the power grid by a connec- tion between the generator and the power grid. The blades are rotating and driven by the wind.

FIG. 1 schematically illustrates an exemplary wind turbine 80. The wind turbine 80 includes blades 81 attached to a hub 82. The hub 82 is connected to a nacelle 83, mounted on a tower 84. The nacelle 83 houses a generator, coupled with the hub rotating along with the blades 81. This connection can be via a shaft and gear.

There are various operational parameters that can be subject to controlling actions. Examples include: configuration of the gear; pitch angle of the blades 81; start-up and idling; yaw angle of the nacelle 82: etc..

The controlling actions associated with the operational pa- rameters can be determined based on certain logic that relies on reinforcement learning.

Various techniques described herein generally relate to rein- forcement learning. Reinforcement learning generally de- scribes a machine-learning process associated with taking an appropriate action (here: how to map one or more environmen- tal parameters indicating an environmental state to one or more controlling actions of the wind turbine) that maximizes a reward (here: various options exist, e.g., power output). Reinforcement learning is generally different from supervised learning: labeled training data is not required; rather, re- inforcement learning enables to learn during operation by monitoring the reward. Data indicative of the current environmental state is re- ceived and one or more controlling actions are determined.

Various techniques are based on the finding that reference techniques - in which a wind turbine has a pre-defined cut-in wind speed - face certain restrictions and drawbacks. For in- stance, the power output often does not only depend on the wind speed, but rather the complete wind field (especially wind shear, both vertically and horizontally over the rotor area) rather than just a point measurement on hub height.

The vertical wind shear is mainly driven by temperature. The mounting of the anemometer might negatively impact the wind speed measurement. The measurement of parameters might be wrong. The turbulence intensity is a main contributor to the kinetic energy in the wind, but is not part of the existing cut-in procedure. Temperature and site elevation drive the air density, which linearly impacts the energy in the wind field. None of these parameters are part of the current con- trol scheme on cut-in behavior. So no day/night, or seasonal variations are covered.

These drawbacks are mitigated by the techniques described herein by using reinforcement learning. All such environmen- tal parameters or states as described above can be used in connection with the reinforcement learning. Here, the learn- ing process is permanently ongoing and challenges itself.

After the one or more controlling actions have been deter- mined, the determined one or more controlling actions are ap- plied to the wind turbine 80.

FIG. 2 schematically illustrates aspects with respect to a reinforcement learning algorithm 700.

Generally speaking, reinforcement learning is a type of ma- chine learning and it is different from the other machine- learning techniques. Its inherent components are an agent module 703, an environment module 701, a policy module 702, and a reward module 704.

The reinforcement learning algorithm 700 includes an environ- mental module 701. The environmental module 701 is configured to receive data indicative of one or more environmental states of an environment of the wind turbine 80.

Examples of environmental states (or parameters) of the wind turbine 80 that can be used in the various examples described herein include temperature, rotational speed of the blades, location including longitude and latitude, air pressure, pre- cipitation, humidity, local time, wind speed, a turbulence intensity, a site elevation, a vertical wind shear, or a hor- izontal wind shear etc.. The techniques described herein are flexible in that a larger or smaller number of environmental states (or parameters) can be considered.

There are various options available of obtaining the data in- dicative of environmental states. For instance, data indica- tive of environmental states can be measured by one or more sensors. Alternatively or additionally, data indicative of environmental states can also be simulated or generated by one or more computer programs or input by experts. For exam- ple, the simulated data indicative of environmental states can be one or more outputs of a function in response to one or more inputs of measurement data obtained from one or more sensors. For instance, experts or engineers can utilize weather models to simulate extreme weathers and obtain simu- lated environmental parameters, such as wind speed, turbu- lence intensity, vertical wind shear, and horizontal wind shear etc.. The function can be a linear function or a non- linear function represented by a neural network.

The reinforcement learning algorithm 700 also includes a pol- icy module 702 that comprises one or more policies. The poli- cy module 702 can determine a policy associated with a map- ping from environmental states - obtained from the environ- mental module 701 - to controlling actions to be taken when in those states. The policy may be a simple function or a lookup table for some examples, whereas it may involve exten- sive computation such as search process in other examples. In addition, the policy can also be a non-linear function real- ized by a neural network executing a supervised learning al- gorithm.

The reinforcement learning algorithm 700 also includes an agent module 703. The agent module 703 is configured to apply the one or more controlling actions, based on the input of the policy module 702. The agent module 703 cooperates with the policy module 702, and also with a reward module 704.

The reinforcement algorithm 700 also includes the reward mod- ule 704. The reward module 704 can determine a reward value in a short-term temporal context after performing each deter- mined action - i.e., without any changes in the environmental states. The reward module 704 also can determine a long-term reward value. The objective of the agent module 703 is to op- timize the reward value. The reward value thus defines what are the "good" and "bad" actions to be performed in a given state. The reward value may be used to alter the policy of the policy module 702; if a controlling action determined based on the policy is followed by low reward, then the poli- cy may be changed to select some other controlling actions in that situation in the future. In general, the reward value may be a value of a stochastic function of the state of the environment and the controlling actions taken.

Next, the function of the reinforcement learning algorithm 700 will be explained.

The agent module 703 interacts with the environment of the wind turbine 80. See action A t . In this process, the agent module 703 cooperates with the reward module 704 to obtain a reward value for determining the appropriate controlling ac- tion. Then the agent module 703 may determine the next con- trolling action based on previous reward value and in this way define the next controlling action, which will then re- sult in new reward values, and so on. So these terms, agent, environment, state, action (or controlling action), and re- ward, are the most important ones to understand it.

In FIG. 2, the subscript t refers to the current timestep and t + 1 to the next timestep. The agent module 703 is in a cur- rent state S t associated with a current reward value R t . The agent module 703 then applies the determined controlling ac- tion A t , and thus also may change the environment. As a re- sult a reward value R t+ 1 is gained, that can be either posi- tive or negative, and the state changes, S t+1 . This is illus- trated by the feedback branch 710.

This idea of reinforcement learning is different from other Machine Learning techniques. In supervised learning, a target variable is known upfront and an algorithm can learn the pat- tern between dependent and independent variables. In unsuper- vised learning, no target variable is known. In Reinforcement Learning, new knowledge is "learned" with time. In this re- gard reinforcement Learning is a mixture of unsupervised and supervised learning. It comes closest to "human" learning.

Next, a practical example of using reinforcement learning for control of a wind turbine, in particular start-up and idling, is explained. The environmental state is monitored by the en- vironmental module 701. The environmental state corresponds to the wind-turbine 80 in the field at stand-still and tech- nically able to try a turbine start. The environmental module

701 communicates with the wind turbine's controller which may have access to all measurement data and provide the measure- ment data to the environmental module 701. The agent module 703 can apply controlling actions based on a reference reward value or a predicted reward value obtained from the reward module 704, the current state S t of the wind turbine 80, the measured reward value R t , and the policy of the policy module

702. The possible actions that the wind turbine 80 can perform based on its state and reward, are: don't start (keep idling); start the turbine.

The state S t is defined by some or all parameters that have an impact on cutting-in of the turbine. Among these are: Measured wind speed (by nacelle anemometer); Turbulence in- tensity; Site elevation; Outdoor temperature; Vertical or horizontal wind shear (if any of these are available from more complex measurement devices or control algorithms).

The reward value is defined as the produced power of the wind turbine 80.

An iterative learning process is performed, in which the tur- bine 80 for each timestep measures its state and decides for an action (start or don't start). Then, it gets a reward (produced power after start or power at standstill) and has a new state, which is defined by its condition measurements.

The learning process is continuous, because the algorithm runs repeatedly for the complete lifetime of the turbine - this is in contrast to a one-time parameter definition up- front.

With this setup, the algorithm 700 learns to adapt to its am- bient conditions and can start-up the wind turbine 80 whenev- er the best conditions are available. The learning process goes on, so the turbine 80 learns to adapt to new states, e.g. a service technician slightly changes the mount- ing of anemometer and thus changes wind speed reading, or it can adapt to day/night changes, seasonal changes, etc.

Next, details with respect to the policy of the policy module 702 are explained in connection with FIG. 2. FIG. 3 is a diagram for a policy, p, by which a look-ahead from an environmental state s to its possible successor envi- ronmental states S ' . Each open circle represents an environ- mental state and each solid circle represents a state-action pair, ( s, a). Starting from environmental state, s, the root node at the top, the agent module 703 could take any of some set of actions - three are shown in the diagram - based on its policy p. From each of these, the environmental module 701 could respond with one of several next environmental state, S (two are shown in the figure), along with a reward, r, depending on its dynamics given by a function p.

The value function specifies what is good in a long run. Roughly speaking, the value of a future state is the predict- ed total amount of reward that the agent module 703 can accu- mulated over the future, starting from the current state, by selecting a chain of controlling actions successively. Where- as the reward value determines the immediate desirability of environmental states, the value of value function indicates the long-term desirability of the chain of states after tak- ing into account the states that are likely to follow and the rewards available in those states. For example, a state might always yield a low reward value, but still have a high value of the value function, because it is regularly followed by other states that yield high rewards.

The model for representing the environment considered by the policy module 702 is something which mimics behaviors of the environment, or more generally, which allows inferences to be made about how the environment will behave. For instance, the model might infer the next state and next reward given a state and action.

In various embodiments, solving a reinforcement learning task means, roughly, finding a policy that achieves a high reward value, e.g., immediately for fixed environmental states or over a long run for varying environmental states. An optimal policy is defined to be better than or equal to any other policies if its reward value or the value of the value func- tion is greater than or equal to that of any other policies for all states.

FIG. 4 is an example state tree to schematically illustrate aspects of reinforcement learning algorithms that are uti- lized in various embodiments of this application.

This state tree includes a plurality of nodes (s t , s t+1 , . , s t+k) , and a plurality of edges (a t , a t+1 , . , s t indi- cates a current environmental state at time or step t. s t+1 , s t+2' s t+k indicate three future environmental states at step or time t+ 1, t+ 2, and t+ k, respectively. a t' a t+1 , and a t+k _ 1 indicate actions taken at state s t' s t+1' and s t+k-1' respec- tively.

Each environmental state of s t , s t+1 , ... and s t+k may be a member of a subset or complete set of an environmental state space S = {s 1 ,s 2 ,···,s n-1 ,s n }, in which n may be finite or infi- nite. Each member of the environmental state space S repre- sents an environmental state which has been or would be en- countered by the agent. Each action of a t' a t+1 , . , and a t+k _ 1 may be selected from a subset or complete set of an action space A = {a 1 ,a 2 ,···,a m }, in which m may be finite or infinite. Each member of the action space represents an action that has been or would be performed by the agent module 703.

There are various options available for determining the one or more controlling actions. Two options that can be applied are (i) action-reward methods and (ii) action-value methods.

First (i) action-reward methods will be explained.

Each action may be associated with a reference reward value given that that respective action is taken at a respective environmental state. For example, r t is the reference reward value given that a t is taken at s t , and r t may be determined by a function of a t and s t , e.g., r t = f(s t ,a t ), which may com- prise a linear function or a neural network. Thus, different combinations of (s t ,a t) result in different reference reward values and different actions taken at s t correspond to dif- ferent reference reward values. For instance, r t = f(s 3 ,a 8 ), if a 8 is selected as the action a t at s t = s 3 .

For instance, the neural network for determining the refer- ence reward value could be trained based on training data available based on historical site measurements of the envi- ronmental state. The neural network could be a convolutional neural network.

At the current state s t , in some cases, one action, e.g., a t ' may be determined based on a predefined set of actions, e.g., {a 1 ,a 3 ,a 8 ,···a m-1 }, which is a subset of the action space A, by taking the respective reference reward value, e.g., r t , into account. For example, the action a t may be determined as the one with the maximum reference reward value in the predefined set of actions. Alternatively or additionally, the action a t may be determined based on a predefined set of actions, e.g., {a 1 ,a 3 ,a 8 ,···a m-1 }, using an arbitrary selection (i.e., using a random contribution).

In some other cases, at the current state s t , more actions, e.g., a t and a t+1 , may be determined based on more predefined set of actions, e.g., {a 1 ,a 3 ,a 8 ,···a m-1 },and {a 2 ,a 5 ,a 16 , ... a m-10 }, re- spectively, by taking the respective reference reward values, e.g., r t and r t+1 , into account. For example, both a t and a t+1 may be determined as the one with the maximum reference re- ward value in the predefined set of actions, respectively. Alternatively or additionally, the actions a t and a t+1 may be determined based on predefined set of actions, e.g.,

{a 1 ,a 3 ,a 8 ,···a m-1 } and {a 2 ,a 5 ,a 16 ,···a m-10 }, using an arbitrary selec- tion (i.e., using a random contribution). In addition, the more predefined set of actions may be the same or different.

After applying the determined one or more actions, the rein- forcement learning algorithms will receive measurement data associated with a current reward value, which is a real re- ward value (i.e., not a predefined reference reward value). For instance, this measurement could be a power measurement of a power output of the generator. For example, after apply- ing a t or a t and a t+1 , the reinforcement learning algorithms will receive the current reward value at time (or step) t+ 1 or t+ 2, respectively. Then, the reinforcement learning algo- rithms will perform a comparison between the reference reward value and the current reward value. Afterwards, the rein- forcement learning algorithms are trained based on the com- parison. As will be appreciated, the reinforcement learning algorithm can thus be trained without requiring predefined labeled training data (as would be the case, e.g., for super- vised learning). Rather, during operation of the wind tur- bine, the training can be implemented using the comparison between the reference reward value (anticipated in the model) and the actual reward value indicated by the measurement da- ta.

Next, (ii) action-value methods will be explained for deter- mining the appropriate controlling action.

In some embodiments, at the current state s t , the reinforce- ment learning algorithms may predict a reward value for a fu- ture point in time, e.g., time t+ 1 or t+ k, for k > 1, based on a predefined value function of the reinforcement learning algorithms. The value function may comprise a linear function or a neural network. Thus, a predicted reward value is ob- tained.

For instance, the neural network could be trained based on training data available based on historical site measurements of the environmental state. The neural network could be a convolutional neural network.

Then, one action a t or a chain of actions from a t to a t+k-1 are determined based on the corresponding set of actions, respec- tively, by taking the predicted reward value into account. For example, the action a t or the chain of actions from a t to a t+k-1 may be determined as the one or the chain with the max- imum predicted reward value.

After applying the determined one action a t or chain of ac- tions from a t to a t+k-1 the reinforcement learning algorithms will receive measurement data associated with a current ag- gregate reward value. For example, after applying a t or the chain of actions from a t to a t+k-1 the reinforcement learning algorithms will receive the current reward value at time (or step) t+ 1 or t+k, respectively. Then, the reinforcement learning algorithms will perform a comparison between the predicted reward value and the current aggregate reward val- ue. Afterwards, the reinforcement learning algorithms are trained based on the comparison.

By using reinforcement learning, appropriate control actions can be taken for the operational control of a wind turbine, without requiring supervision or complete models of the envi- ronment. Reinforcement learning can also make use of as many environmental parameters as possible to precisely select ac- tions. In addition, the learning process of the reinforcement learning algorithms continues during normal operation of the wind turbine, therefore, the agent can learn to adapt to new environmental states. Thus, optimal short-term or long-term goals can be achieved by applying the reinforcement learning algorithms .

FIG. 5 is a flow diagram of an example method 200 for con- trolling a wind turbine (e.g., the wind turbine 80 of FIG. 1) in response to an environmental state. For convenience, the method will be explained as being performed by a system of one or more computers located in one or more locations. For example, a reinforcement learning system running one or more reinforcement learning algorithms mentioned above, can per- form the method 200. The method of FIG. 5 can employ one or more reinforcement learning algorithms 700 as described above in connection with the preceding FIGs..

At optional step 201, the reinforcement learning algorithm is pre-trained by using tuples of environmental states, control- ling actions, and net power outputs which are obtained from other wind turbines or expert knowledge, before implementing the reinforcement learning algorithm to control the wind tur- bine.

Then, for the following steps the (pre-trained) reinforcement learning algorithm is applied.

At step 202, data indicative of a current environmental state of the wind turbine is received.

The current environmental state of the wind turbine specifies a value of at least one of the following parameters: a wind speed, a turbulence intensity, a site elevation, a tempera- ture, a vertical wind shear, or a horizontal wind shear. The one or more controlling actions comprise at least one of keep-idling or start-up.

At step 204, one or more controlling actions of the wind tur- bine based on the current environmental state of the wind turbine and a reinforcement learning algorithm, e.g., the re- inforcement learning algorithm 700 of FIG. 2, are determined.

The reinforcement learning algorithm may utilize any one of the above-mentioned action-reward methods or the action-value methods. In addition, the reinforcement learning algorithm also may utilize other existing reinforcement learning algo- rithms, such as, Q-Learning, Deep Q-Learning, Double Deep Q- Learning, Dynamic Programming (DP), Temporal-Difference (TD) Learning, Monte Carlo Methods, Policy Gradient Methods, On- policy Prediction with Approximation, etc. When determining the one or more controlling actions, it is possible to take into account one or more reward values. For example, reference reward values or predicted reward values can be used. Reward values can, in particular, include the net power output of the wind turbine.

In some cases, the one or more controlling actions are deter- mined based on a predefined set of controlling actions (e.g., by an appropriate selection process) from the predefined set, wherein each of the controlling actions in the predefined set of controlling actions is associated with a reference reward value given that that respective controlling action is deter- mined at the current environmental state.

A respective reference reward for each controlling action in the predefined set of controlling actions may be respectively generated by processing the current environmental state to- gether with the corresponding controlling action using an ac- tion reward neural network. The action reward neural network may be trained by supervised learning using labeled data ob- tained from experiences. Alternatively, a database which stores arrays or tables representing mappings from (environ- mental state, action) pairs to reference rewards may be searched .

In some implementations, the action reward neural network is configured to receive as input a current state together with a controlling action and to process the current state togeth- er with the controlling action to generate a respective ref- erence reward for the action.

The one or more controlling actions are determined based on the predefined set of controlling actions taking the respec- tive reference reward value into account. For example, the one or more controlling actions may be determined as one or more controlling actions with the maximum reference reward or maximum sum of reference reward. Sometimes, to balance explo- ration and exploitation of the reinforcement learning algo- rithm, the one or more controlling actions are determined based on the predefined set of controlling actions using an arbitrary selection. For instance, it would be possible to randomly or at least partly randomly select (arbitrary selec- tion) one or more controlling action from the predefined set of controlling actions with a probability e (0< e < 1) and se- lect one or more controlling actions with the maximum refer- ence reward or maximum sum of reference reward with a proba- bility 1 — e . It is preferred to set 0<e<0.1.

In some other cases, a reward value for a future point in time may be predicted based on a predefined value function of the reinforcement learning algorithm, wherein the one or more controlling actions are determined based on a predefined set of controlling actions taking the predicted reward value into account.

The value function is used to predict a long-term reward, such as, several hours, a whole day, a week and so on. On this timescale, typically the environmental conditions change. On the other hand, the above-mentioned reference re- ward is used to estimate a short-term reward, such as, one minute or several minutes where environmental conditions are considered to be rather stable.

For example, it would be possible to predict a respective re- ward value for a future point in time for each possible chain of controlling actions selected from the predefined set of controlling actions, respectively, by processing the current environmental state together with the corresponding chain of controlling actions using an action value neural network. The action value neural network may be trained by supervised learning using labeled data obtained from experiences. Alter- natively, the value function may be a predefined linear func- tion.

In some implementations, the action value neural network is configured to receive as input a current state together with a chain of controlling actions and to process the current state together with the chain of controlling actions to gen- erate a respective reward value for a future point for the chain of controlling actions.

After generating reward values of all or part of possible chains of controlling actions starting from the current state and ending at the future point, it is possible to determine the chain of controlling actions with the highest predicted reward value as the one or more controlling actions to be performed .

At step 206, the determined one or more controlling actions are applied to the wind turbine. After the determination of the one or more controlling actions by the reinforcement learning algorithm, it is possible to apply the one or more controlling actions to control the wind turbine.

In some cases, for the action-reward methods, upon applying the determined one or more controlling actions, measurement data associated with a current reward value is received, and a comparison between the reference reward value and the cur- rent reward value is performed, and the reinforcement learn- ing algorithm is trained based on the comparison.

In some other cases, for the action-value methods, upon ap- plying the determined one or more controlling actions, it is possible to receive a measurement associated with a current aggregate reward value, performs a comparison between the predicted reward value and the current aggregate reward val- ue, and trains the reinforcement learning algorithm based on the comparison.

In addition, either the reference reward or the predefined value function comprises a net power output of the wind tur- bine or other parameters for assessing the performance of the wind turbine. The method 200 for controlling a wind turbine can learn by the reinforcement learning algorithms from direct interaction with the environment, without requiring exemplary supervision or complete models of the environment. The reinforcement learning algorithms can also make use of as many environmen- tal parameters as possible to precisely select controlling actions of the wind turbine. In addition, the learning pro- cess of the reinforcement learning algorithms never end, therefore, the reinforcement learning algorithms can learn to adapt to new environmental states. Thus, optimal short-term and/or long-term goals, such as, net power output of the wind turbine, can be achieved by applying the reinforcement learn- ing algorithms to control the wind turbine.

In various embodiments, a prediction of future environmental states of the wind turbine using an environmental states pre- diction model can be performed. The environmental states pre- diction model may be a neural network.

The environmental states prediction neural network is config- ured to receive as input a current weather information and information of mechanical structure of the wind turbine to generate future environmental states including predictions of at least one of the following parameters: a wind speed, a turbulence intensity, a site elevation, a temperature, a ver- tical wind shear, or a horizontal wind shear. The current weather information comprises various images and/or data cap- tured by weather satellites or radars, data measured by equipment or devices at weather stations.

Also, a current weather information and information of me- chanical structure of the wind turbine may be received and future environmental states may be generated by the environ- mental states prediction neural network. Then, it is possible to determine one or more controlling actions of the wind tur- bine based on not only the current environmental state but also the future environmental states of the wind turbine and a reinforcement learning algorithm. Both the short-term re- ward and the long-term reward are predicted by further taking the future environmental states into account.

By further taking predictions of future environmental states into account, the method 200 for controlling a wind turbine can utilize more information of the environment to determine more precise and reliable controlling actions and further ob- tain more power output.

FIG. 6 schematically illustrates aspects with respect to a device 400. The device 400 includes one or more processors 410 and a memory 420. The one or more processors 410 can load program code from the memory 420 and execute the loaded pro- gram code. The program code could define the reinforcement learning algorithm 700 and the modules 701-704 (cf. FIG. 2). Then, the one or more processors 410 can perform various techniques as described herein to control the wind turbine 310. The one or more processors 410 may comprise CPUs, GPUs, TPUs, or any other neural network processors.

Specifically, the one or more processors 410 are configured to receive a current environmental state of the wind turbine 80, determine one or more controlling actions of the wind turbine 80 based on the current environmental state of the wind turbine 80 and a reinforcement learning algorithm, and apply the determined one or more controlling actions to the wind turbine 80.

The wind turbine 80 can thus include a communication inter- face 71, one or more sensors 72, and a control unit 73.

The device 400 includes a communication interface 430. For example, the device 400 may receive a current environmental state of the wind turbine 80 via the communication interface 430 from sensors 72 associated with the wind turbine 80. It would be also possible that the device 400 receives a current weather information from a database 340 that belongs to a me- teorological center. In addition, the device 400 may send, to the controlling element 73 of the wind turbine 80, control- ling signals including the one or more controlling actions, via the communication interface 430. The device 400 may include a user interface 440 for users to interact with the device 400. For example, the user can input data or information into the device 400 via the user inter- face 440, such as, tuples of environmental states, control- ling actions, and net power outputs which are obtained from other wind turbines or expert knowledge, information of me- chanical structure of the wind turbine.

The device 400 may be used to execute the program codes of the above-mentioned reward neural network, value neural net- work, and environmental states prediction neural network, re- spectively.

Summarizing, techniques of controlling a wind turbine based on reinforcement learning have been described. This is used to make efficient use of various environmental information, including but not limited to the wind speed, to control the wind turbine, thereby achieving an optimal power output of the wind turbine.