On robust optimization of wind farm maintenance and operation under uncertainty. ISEN 689 Project report, Fall Eunshin Byon

Size: px
Start display at page:

Download "On robust optimization of wind farm maintenance and operation under uncertainty. ISEN 689 Project report, Fall Eunshin Byon"

Transcription

1 On robust optimization of wind farm maintenance and operation under uncertainty ISEN 689 Project report, Fall 2007 Eunshin Byon 1 Introduction Wind power capacity has been rapidly increasing in the past decade, but the market share of wind energy still remains a small portion of the entire energy market. The amount of electricity generated from wind power has tripled in the past five years [1]. Therefore, wind becomes the second largest source of new power generation in the U.S. after natural gas. However, wind capacity is still just over 1% of world-wide electricity use [1]. The main factor to increase marketability of wind power is the cost. To this end, researchers and practitioners put emphasis on reducing operation costs as well as making new turbines with larger capacity. In this project, I will focus on minimizing operation cost by building an efficient and effective maintenance policy. Every maintenance activity involves skilled laborers, time, and heavy-duty equipment. Thanks to the advent of sensor technology, many turbine manufactures have installed conditionbased monitoring equipment with many sensors within turbines. This monitoring equipment reduces the need to carry out scheduled, and/or corrective maintenance, both of which are very costly. These condition monitoring systems generate sensor signals to represent the turbine states. With the obtained sensor signals, we have to make decisions about which maintenance actions should be taken. The actions will include normal operation, dispatching crew with 1

2 necessary equipment, or carrying out intensive care to get more accurate information. However, no active research on building an optimal, or at least, efficient policy for wind farm maintenance and operation exits yet. In order to decide which actions to take, we need to consider several factors. Weather conditions are one of the most important factors because wind is the primary source of wind power. The probabilities about the turbine state, which is derived from sensor signals, are another important input factor. Other factors include turbine age, repair history and so on [2]. Most of these factors involve uncertainty, under which we have to take proper maintenance actions. In this project, I developed the two optimal decision making models considering the aforementioned uncertainties. The model will involve a two-stage decision process in a rolling horizon manner under the framework of large scale stochastic programming. In the first stage, we have to decide the required resource size (labor, time, equipment, etc) for the current horizon and prepare the necessary resource for the next horizon. The second stage involves the uncertainty of short-term weather conditions and the turbine states. After more accurate short-term weather conditions are forecasted and turbine states are realized, optimal maintenance actions will be decided in the second stage. To implement the model, I used Benders decomposition algorithm, which has been commonly used in electric power systems for generating unit planning, generation maintenance scheduling, and so on [3]. Later, the model will be implemented with L-shaped algorithm and other decomposition methods to improve the computation efficiency. 2

3 This project will be a pioneering work in this area. Because condition-based monitoring technique itself is in the infant stage, no significant research has been done on how to utilize the (sensor) output from the condition-based monitoring system. Therefore, this project will be good guidelines for ongoing and future research in wind farm operation and maintenance area. 2 Background 2.1 Wind turbine components A wind turbine is composed of several components as shown in Figure 1. Among these components, gearbox (0.3 failures/year) and control (0.34 failures/year) are the most frequently failed components[4]. Thus, in the project, those two components will be used in the illustrative examples of Section 4. Figure 1: Condition-based maintenance 2.2 Condition-based maintenance Statistical reliability-based preventive maintenance is to find the minimum total cost objective(or maximum availability) by establishing fixed statistically optimal PM(Preventive 3

4 Maintenance) intervals at which to replace of overhaul equipment or components, while condition based maintenance approach involves the use of sensor-based monitoring of equipment condition in order to predict when machine failure will occur[5]. Under condition-based PM, intervals between PM work are no longer fixed, but are performed only when needed. Even though the degradation of a component is a continuous precess, we can categorize the condition into several discrete states as shown in Figure 2. In the corrective maintenance policy, we fix the component when it fails. But we might be able to reduce the maintenance cost by fixing the component earlier, say, when it is in alarm state, before the breakdown. In this project, I set the policy that once the component is transited to alarmed state, we need to consider maintenance action. normal alert alarm failed Figure 2: Condition-based maintenance 3 Model Formulation Suppose that the decisions can be made in discrete time. The problem can be modeled in a rolling horizon fashion. Suppose that maintenance decision is made in the beginning of the period in the following way. 1. In the first-stage, there is a set of turbines that should be maintained (turbines in failed 4

5 or alarmed state). These jobs are known in the beginning of the period. Thus we need to decide the maintenance actions for these first-stage jobs. Also, we need to prepare the necessary resources (man power, equipment, parts) for the next period. For the next period, we know the probability that a set of jobs occur at the next period. Based on this information, labor hours (and other resources) must be prepared for anticipated jobs. 2. In the beginning of the next period, uncertainties for this new period (such as number of alarmed/failed turbines, weather conditions) are realized. Now we need to decide the maintenance action for this period and the labor hours (and other resources) should be changed adaptively. 3.1 Model Formulation 1. Policy Once the set of turbines in the failed state or alarmed state are known in the beginning of the period, all the turbines in these states should be fixed during the period. 2. Rationale In the power industry, availability of generators are very important. Thus, all of the turbines need to be available almost any time to meed the load (energy demand). 3. Assumptions All of the necessary parts and equipments are available when needed. In the beginning of the period, we know the number of the current failed/alarmed turbines. 4. Decisions Adequate manpower should be decided to fix all of the alarmed or failed turbines. That is, 5

6 first stage decision variable: Adjusted man power to fix all of the current alarmed or failed turbines. Man-power preparation for the next period. second stage decision variable: Adjusted man power to fix all of the alarmed or failed turbines in the next stage. 5. Notation Data: Sets I: Index set of jobs (or index of failure modes) J: Condition state (2=alarm state, 3=failure state) K: Index set of required skills Ω: Set of scenarios Data: Stage 1 and Stage 2 c 1k : Unit labor cost for unscheduled (or outsourced) manpower with skill k c 2k : Unit labor cost for reserved (or, scheduled, pre-assigned) manpower with skill k. In general, c 1k > c 2k. h ijk : # Hours needed for repairing one turbine in i th failure mode, j th state which requires k th skill. g ij : Repairing cost to fix one turbine in i th failure mode, j th state. Repairing cost includes parts cost and equipment usage cost. In general, repairing cost to fix a failed turbine is more expensive than to fix an alarmed turbine. That is, g i2 g i3 N: Total number of turbines Data: Stage 1 H k : Pre-assigned labor hour with skill k for the current period n ij : # turbines in i th failure mode, j th state (known, fixed). Data: Stage 2 p ω : Probability of scenario ω Ω. 6

7 τ ω ij : # turbines in ith failure mode, j th state under scenario ω Ω Decision Variables: Stage 1 x 1k : Labor hours for k th skill to be added after the turbine states for the current period are realized x 2k : Labor hours for k th skill reserved for anticipated jobs in the next period Decision Variables: Stage 2 y ω 1k : Added (unscheduled, outsourced) labor hours for kth skill under scenario ω Ω 6. Model formulation (SP1 ) min s.t. c 1k x 1k + c 2k x 2k + g ij n ij + E[f(x, ω)] k K k K i I j J (1) x 1k n ij h ijk H k, k K i I j J (2) x 1k, x 2k 0,, k K where, for each outcome ω Ω, f(x, ω) = min c 1k y1k ω + g ij τij ω (3) k K i I j J s.t. y1k ω τijh ω ijk x 2k, k K (4) i I j J 0, k K y ω 1k The first stage objective function (i.e., Equation (1)) includes Adjusted labor cost for the current period Reserved labor cost for the next period Repairing cost for alarmed or failed turbines for the current period Expected cost for the next period 7

8 The constraint, Equation (2), adjusts the labor hours to fix all of turbines under maintenance consideration. The total acquired labor hour, that is, reserved hour plus adjusted hour (=H k + x 1k ) should be greater than, or equal to the total required labor hour, i I j J n ijh ijk. Similarly, the second stage objective function (i.e., Equation (3)) includes the adjusted labor cost and the repairing cost for alarmed or failed turbines in the second stage. The constraint Equation (4) also adjusts the labor hours to fix all of alarmed or failed turbines in the second stage. 7. Scenarios Uncertainty comes from the number of alarmed or failed turbine components in the second period (τ ij, i I, j J = {2, 3}). Thus the maximum number of scenarios is ) I, where refers the cardinality of set and N is the number of total turbines ( N(N+1) 2 in the wind farm. 8. Implementation Model SP1 is the two-stage stochastic problem. Thus it can be solved by the Bender s decomposition, or L-shaped algorithm. 9. Restriction of SP1 No consideration of setup cost (ex. a binary variable might need to be introduced to add setup cost. For example, suppose that z is the variable to indicate whether the maintenance action is carried out. Then, z = 1 if there are any failed or alarmed turbines). What if we want to incorporate the case that the alarmed/failed turbines in the current stage doesn t necessarily need to be fixed now, but to be delayed to the following periods? In this case, the randomness (or scenarios) will depend on the first-stage decision. The model (SP2 ) introduced in Section 5 models this situation by extending the current model. 8

9 4 Illustrative Example of SP1 In this example, we consider two failure modes: gearbox and control. The relevant data are summarized in Table 1. Table 1: Relevant data (a)unit repairing cost (g ij ) gearbox control alarmed 4,200 2,100 failed 8,400 3,000 (b) reparing hour (h ijk ) gearbox control alarmed 36 6 failed (c) unit labor cost (c 1k, c 2k ) gearbox control adjusted reserved First horizon In the very first beginning, it s not likely to have any alarmed or failed turbine in practice. So we didn t have any reserved labor hour. Thus, the data for the first-stage is as in Table 2. However, we expect some of the turbine components will have problems in the next horizon. Table 3 shows the distribution of the number of alarmed/failed components in each failure mode. Assuming the independence between gearbox failures and control failures, we have eight possible scenarios with the corresponding probabilities. 9

10 Table 2: first stage data (a)number of turbines (n ij ) gearbox control alarmed 0 0 failed 0 0 (b) Reserved labor hour (H k ) gearbox control 0 0 With the data from Table 1 to Table 3, the values of decision variables are as in Table 4. Since there are no turbines to be fixed right now, we don t have to adjust the labor hour for the current horizon. But based on the information about the possible failures in the next horizon, we prepare the labor hours: 288 hours and 144 hours for gearbox, control maintenance, respectively. Once the specific scenario is realized in the next period (i.e., once we know the number of alarmed/failed turbines in each failure mode in the beginning of the second period), we can add the necessary labor hours as shown in Table 4(b). For example, we have to add 108 labor hours for gearbox maintenance if scenario #3 is observed. The total expected cost for the first period and second period is $45, Second horizon Suppose that scenario #3 is realized. That is, we observe three alarmed/four failed gearboxes and 5 alarmed/7 failed controls. From the table 4(a), the reserved labor hours were 288 and 114 hours each for gearbox and control maintenance. Then, we need to add 108 labor hours for gearbox maintenance (See table 6(a)), which is same as in the row of scenario #3 of 4(b). The reason that we have same result is that we use rolling horizon manner. Also, suppose that the possible scenarios and the corresponding probabilities of the next (third) horizon are given as in Table 5. Then, we need to prepare the 504 hours and 198 hours for these possible alarms/failures. Once the specific scenario is observed in the next period, we should adapt the labor hour as shown in (See table 6(b)). 10

11 Table 3: Distribution of # alarmed/failed turbine components for second period (a)gearbox (τ 1j ) alarmed failed probability (b) control (τ 2j ) alarmed failed probability Same process can be applied in later horizons. Figure 3 shows the summary of the decision process. 5 Model Extension (SP2 ) In the previous model SP1, we assumed that all of the alarmed or failed turbines should be fixed during the period. That is, we didn t allow the delay of the maintenance jobs. This may not be cost-effective for some situation. Suppose that the wind farm is located very far from the operation center. Offshore wind farm will be a good example. If only one turbine is in the alarmed state, carrying out maintenance jobs won t be economical because every maintenance involves costly action to carry huge cranes, etc (even vessels if the turbines are offshore). The second model (SP2 ) extends the first model by incorporating the decision about whether we dispatch crew for maintenance jobs or delay the action. 1. Policy Once the set of turbines in the alarmed/failed states are known in the beginning of the period, we will decide to carry out maintenance action or not. If we decide to dispatch 11

12 Table 4: Result for first horizon (a) first stage variable (x 1k, x 2k ) labor hour gearbox control adjusted hour for the first horizon 0 0 reserved hour for the second horizon (b) second stage variable (y 1k ) adjusted hour for second period gearbox control scenario #1 0 0 scenario # scenario # scenario # scenario #5 0 0 scenario # scenario # scenario # crew, all of the alarmed/failed turbines will be fixed during the period. 2. Rationale We want to minimize the total cost. Cost include the setup cost for maintenance action, labor cost, repairing cost, and also revenue losses. Dispatching crew itself requires expensive setup cost. Thus we may want to fix multiple turbines through one visit. On the other hand, delaying the maintenance action cause another costs too. We may lose revenue from the failed, thus stopped turbines. Also, if the alarmed turbines are transited to the failed state by delaying maintenance, the repairing cost to fix these failed turbines can be increased (See Table 7). 3. Assumptions 12

13 Table 5: Distribution of # alarmed/failed turbines for second period (a)gearbox (τ 1j ) alarmed failed probability (b) control (τ 2j ) alarmed failed probability All of the necessary parts and equipments are available when needed. In the beginning of the period, we know the number of the current alarmed/failed turbines, weather conditions during the period. 4. Decisions In addition to deciding adequate man power as in SP1, we decide whether to carry out maintenance action or delay it in each period. That is, First stage decision variable: Whether to carry out maintenance in the current stage. If so, adjusted man power to fix all of the current alarmed or failed turbines. And man power preparation for the next period. Second stage decision variable: Whether to carry out maintenance in the next stage. If so, adjusted man power to fix all of the alarmed or failed turbines. 5. Notation The newly added notations are as follows. 13

14 Table 6: Result for second horizon (a) first stage variable (x 1k, x 2k ) labor hour gearbox control adjusted hour for the first horizon reserved hour for the second horizon (b) second stage variable (y 1k ) adjusted hour for second period gearbox control scenario #1 0 0 scenario # scenario #3 0 0 scenario # scenario # scenario # scenario # scenario # Data: Stage 1 and Stage 2 S: Setup cost for maintenance action Data: Stage 1 l: Revenue losses from one failed turbine if not maintained in the current period (known) Table 7: Cost trade-off Maintenance action Doing nothing Carrying our maintenance Relevant costs revenue losses from failed turbines, increased repair cost setup cost 14

15 Labor hour Reserved hour for current epoch Adjusted hour for currentepoch Reserved hour for next epoch horizon #1 Gearbox control horizon #2 Gearbox control Scenario #3 realized Scenario #6 realized horizon #3 Gearbox control horizon #4 Gearbox control Figure 3: Summary of decision process n f : Number of turbines in failed state of any failure mode. Note that n f i I n i3. The inequality holds when any turbine is in the failed state of more than two failure modes. L 1 : Minimum number of turbines that should be operated in the first period to meet the load Data: Stage 2 θ ω : Revenue losses from one failed turbine if not maintained in the second period under scenario ω Ω. This parameter value will depend on weather condition because the amount of power generation depends on the weather condition. For example, more power is generated in the windy season. n ω ij : The number of turbines in i th failure mode, j th state in the second period among the alarmed/failed turbines in the previous period. When not maintained in the previous period, some of turbines in alarmed state can be transited to failed state. n ω f : The number of failed turbines in the second period among the alarmed/failed turbines in the previous period. Note that n ω f i I n ω i3. The inequality holds when some turbines are in the failed state of more than two failure modes. 15

16 τij ω : The number of newly observed alarmed/failed turbines in the second stage under scenario ω Ω, which were not in alarmed/failed states in the first stage. τf ω : # turbines in failed state of any failure mode under scenario ω Ω. Note that τ ω f i I τ ω i3. L 2 : Minimum number of turbines that should be operated in the second period to meet the load Decision Variables: Stage 1 x 3 : Binary variable to represent whether to carry out maintenance action in the current period (x 3 = 0 if doing nothing, x 3 = 1 if doing maintenance) Decision Variables: Stage 2 y3 ω : Binary variable to represent whether to carry out maintenance action in the next period under scenario ω Ω (y 3 = 0 if doing nothing, y 3 = 1 if doing maintenance) 6. Model formulation (SP2 ) 16

17 min s.t. Sx 3 + c 1k x 1k + c 2k x 2k + g ij n ij x 3 + l n f (1 x 3 ) k K k K i I j J +E[f(x, ω)] (5) x 1k n ij h ijk x 3 H k, k K (6) i I j J N n f (1 x 3 ) L 1 (7) x 3 = {0, 1}, x 1k, x 2k 0, k K where, for each outcome ω Ω, f(x, ω) = min Sy 3 + c 1k y1k ω + g ij (τij ω + (1 x 3 )n ω ij ) y 3 k K i I j J +θ ω (τ ω f + (1 x 3)n ω f )(1 y 3 ) (8) s.t. y1k ω ( ) τij ω + (1 x 3 )n ω ij h ijk y 3 x 2k, k K (9) i I j J N (τ ω f + (1 x 3)n ω f )(1 y 3 ) L 2 (10) y 3 = {0, 1}, y1k ω 0, k K The first stage objective function, that is, Equation (5) includes Setup cost for the current period Adjusted labor cost for the current period. Note that when we decide doing nothing, we don t have to add extra man-power. This is satisfied in Equation (5) and (6). When x 3 = 0, x 1k 0 holds in the constraint (6) all the time. And the problem will force to x 1k = 0 to minimize the corresponding objective value k K c 1kx 1k. When x 3 = 1, Equation (6) equals to (2) in the previous model. Reserved labor cost for the next period Repairing cost for alarmed or failed turbines Revenue losses when not fixing the failed turbines in the current period Expected cost for the next period 17

18 Equation (7) is availability condition. To meat the energy demand (load), at least some number of turbines should be operated. In the second stage, the number of alarmed/failed turbines in i th failure mode, j th state is τ ω ij + (1 x 3)n ω ij. τ ω ij is the number of newly observed alarmed/failed turbines in the second stage, which were not in alarmed/failed states in the first stage, and n ij represent the number of turbines in i th failure mode, j th state in the second period among the alarmed/failed turbines in the previous period. When not maintained in the previous period, n ik will not be necessarily same as n ik because some alarmed turbines can move to the failed state. Therefore, the number of alarmed/failed turbines in the second stage will depend on first-stage decision. Similarly, τ ω f + (1 x 3)n ω f is the number of the total failed turbines in the second stage. 7. Scenarios Uncertainty comes from several factors, which include the number of alarmed or failed turbines in the next period (τij ω, i I, j J = {2, 3}), how many alarmed turbines in the first period will transit to the failed state in the second period when not maintained, and the possible number of revenue losses. Thus the maximum number of scenarios is ) I N I (# possible values of revenue losses). The number of possible values ( N(N+1) 2 of revenue losses will be infinite because revenue loss is continuous random variable. So we may need the discrete approximation approach ([6]). 8. Implementation Model SP2 is the two-stage mixed integer(binary) stochastic problem. Both of the master problem and subproblem has one binary decision variable and other continuous variables. So it cannot be solved by the L-shaped or binary first-stage algorithm, but should be solved by other decomposition algorithms. 9. Restriction of SP2 In the first model SP1, the scenarios in the second stage don t depend on the first-stage decision. But in this model, the scenarios depend on whether there is 18

19 maintenance action in the first stage. Thus, the first and second stage decision will affect the scenarios in the next stages. So we may need to add the expected cost E(x, y, ω) in the second stage objective function. This makes the problem as multi-stage problem. 6 Conclusion In this project, two stochastic programming (SP) optimization models are suggested for wind farm operation and maintenance. Both models are based on a rolling horizon decision process. In the first model, necessary labor hours are prepared and adjusted using the most recent information to fix any alarmed or failed turbine components. The second model extends the first model. In the second model, we can delay the maintenance action in later horizons if the number of alarmed/failed components are small and setup cost is huge. The first model can be implemented using Benders decomposition or L-shaped algorithm. The second model involves one binary decision variable in each stage, and thus different algorithm is needed. This work provides a dynamic data-driven framework for wind farm operation and maintenance policy, which will enable a cost-effective generation of wind electricity. And the progress in wind turbines will also benefit the power generation, automobile, aerospace, and engine industries. We need to extend the current SP optimization models by incorporating more sophisticated uncertainty factors and also to multi-period decision model. Also, the SP model will be Integrated with simulation whereby, the simulation generates the necessary data and validates the optimal policies from the optimization model. 19

20 References [1] World Wind Energy Association Statistics, Jan [2] Y. Ding, E. Byon, C. Park, J. Tang, Y. Lu,and X. Wang, Dynamic Data-Driven Fault Diagnosis of Wind Turbine Systems, ICCS 2007, Part I, LNCS 4487, pp , [3] M. Shahidehpour and M. Marwali, Maintenance Scheduling in Restructured Power Systems, Kluwer Academic Publishers, Norwell, Massachusetts, [4] G.J.W.van Bussel and M.B.Zaaijer, Reliability, Availability and Maintenance aspects of large-scale offshore wind farms, a concepts study, Marine Renewable Energy Conference (MAREC), March 2001 [5] L.Mann, A.Saxena and G.M.Knapp, Statistical-based or Condition-based Preventive Maintenance?, Journal of Quality in Maintenance Engineering, Volume 1, Number 1, 1995, pp (14) [6] R.Schultz, Continuity Properties of Expectation Functions in Stochastic Integer Programming, Mathematics of Operations Research 18,