Reliability Allocation and Optimization
During the process of developing a new product, the engineer is often faced with the task of designing a system that conforms to a set of reliability specifications. The engineer is given the goal for the system and must then develop a design that will achieve the desired reliability of the system while performing all of the system's intended functions at a minimum cost. This involves a "balancing act'' of determining how to allocate reliability to the components in the system so the system will meet its reliability goal while at the same time insuring that the system meets all of the other associated performance specifications.
The simplest method for allocating reliability is to distribute the reliabilities uniformly among all components. For example, suppose a system with five components in series has a reliability objective of 90% for a given operating time. The uniform allocation of the reliability goal to all components would require each component to have a reliability of 98% for the specified operating time, since (0.98)5 is approximately equal to 0.90. While this manner of allocation is easy to calculate, it is generally not the best way to allocate reliability for a system. The optimum method of allocating reliability would take into account the cost or relative difficulty of improving the reliability of different subsystems or components.
The reliability optimization process begins with the development of a model that represents the entire system. This is accomplished with the construction of a system reliability block diagram that represents the reliability relationships of the components in the system. From this model, the system reliability impact of different component modifications can be estimated and considered alongside the costs that would be incurred in the process of making those modifications. It is then possible to perform an optimization analysis for this problem, finding the best combination of component reliability improvements that meet or exceed the performance goals at the lowest cost. ReliaSoft's BlockSim system reliability, maintainability and availability software can be used to perform this type of analysis.
Before deciding whether to improve the reliability of a system by fault tolerance or avoidance, a reliability assessment for each component in the system should be made. Once the reliability values for the components have been quantified, an analysis can be performed in order to determine if that system's reliability goal will be met. If it becomes apparent that the system's reliability will not be adequate to meet the desired goal at the specified mission duration, steps can be taken to determine the best way to improve the system's reliability so that it will reach the desired target.
Consider a system with three components connected reliability-wise in series. The reliabilities for each component for a given time are: R1 = 70%, R2 = 80%, and R3 = 90%. The reliability goal RG = 85% is required for this system.
The current reliability of the system is RS = R1 · R2 · R3 = 50.4%. Obviously, this is far short of the system's required reliability performance. It is apparent that the reliability of the system's constituent components will need to be increased in order for the system to meet its goal. First, we will try increasing the reliability of one component at a time to see whether the reliability goal can be achieved. The following figure shows the effect on the overall system reliability of raising the reliability of individual components.
The preceding figure shows that even by raising the individual component reliability to a hypothetical value of 1 (100% reliability, i.e. the component will never fail), the overall system reliability goal will not be met by improving the reliability of just one component. The next logical step would be to try to increase the reliability of two components. The question now becomes: which two? One might also suggest increasing the reliability of all three components. A basis for making such decisions needs to be found in order to avoid the "trial and error" aspect of altering the system's components randomly in an attempt to achieve the system reliability goal. The question becomes one of how to do this most efficiently and cost effectively. We will need more information to make an informed decision as to how to go about improving the system's reliability. How much does each component need to be improved for the system to meet its goal? How feasible is it to improve the reliability of each component? Would it actually be more efficient to raise the reliability of two or three components?
In order to answer these questions, we must introduce another variable into the problem - cost. Cost does not necessarily have to be in dollars; it could be in terms of non-monetary resources, like time. By associating cost values to the reliabilities of the system's components, we can find an optimum design that will provide the required reliability at a minimum cost.
The next challenge is to model the cost as a function of reliability. The preferred approach would be to formulate the cost function from actual cost data. This can be done from past experience. If a reliability growth program is in place, the costs associated with each stage of improvement can also be quantified. Defining the different costs associated with different vendors or different component models is also useful in formulating a model of component cost as a function of reliability.
However, there are many cases where no such information is available. For this reason, a general behavior model of the cost versus the component's reliability was developed for performing reliability optimization in BlockSim. The objective of this function is to model an overall cost behavior for all types of components. Of course, it is impossible to formulate a model that will be precisely applicable to every situation, but the proposed relationship is general enough to cover most applications. The default cost function in BlockSim acts like a penalty function for increasing a component's reliability. An exponential behavior for the cost is assumed, and the function has the following form:
Note that this penalty function is dimensionless. It essentially acts as a weighting factor that describes the difficulty in increasing the component reliability from its current value.
The following observations can be made about this cost function:
Note that the time associated with this maximum achievable reliability is the same as that of the overall system reliability goal. Almost any component can achieve a very high reliability value, provided the mission time is short enough. For example, a component with an exponential distribution and a failure rate of one failure per hour has a reliability that drops below 1% for missions greater than five hours. However, it can achieve a reliability of 99.9% as long as the mission is no longer than four seconds. For the purposes of optimization in BlockSim, the reliability values of the components are associated with the time for which the system reliability goal is specified. For example, if the problem were to achieve a system goal of 99% reliability at 1000 hours, the maximum achievable reliability values entered for the individual components would be the maximum reliability that each component could attain for a mission of 1000 hours.
BlockSim employs a nonlinear programming technique to minimize the system cost function. The system has a minimum (current) and theoretical maximum reliability value that is defined by the minimum and maximum reliabilities of the components, and by the way the system is configured. That is, the structural properties of the system are accounted for in the determination of the optimum solution. For example, the optimization for a system of three units in series will be different than the optimization for a system consisting of the same three units in parallel. The optimization occurs by varying the reliability values of the components within their respective constraints of maximum and minimum reliability in a way that the overall system goal is achieved. Obviously, there can be any number of different combinations of component reliability values that might achieve the system goal. The optimization routine essentially finds the combination that results in the lowest overall system cost.
Implementing the Optimization
Obviously, the method of implementing the reliability optimization is going to be related to the cost, and this is something the reliability engineer must take into account when deciding on what type of cost function is going to be used for the optimization. In fact, if we take a closer look at the fault tolerance scheme, we can see some parallels with the general behavior cost model included in BlockSim.
For example, consider a system that initially consists of a single unit. The cost of that unit, including all associated mounting and hardware costs, is one dollar. The reliability of this unit for a given mission time is 30%. It has been determined that this is inadequate and that a second component is to be added in parallel to boost the reliability. The reliability for the two-unit parallel system is RS = 1 - (1 - 0.3)2 = 0.51, or 51%. So, the reliability has increased by a value of 21%, and the cost has increased by one dollar. In a similar fashion, we can continue to add additional units in parallel, thus increasing the reliability and the cost. We now have an array of reliability values and the associated costs that we can use to develop a cost function for this fault tolerance scheme. The following figure shows the relationship between cost and reliability for this example.
As can be seen, this looks quite similar to the general behavior cost model discussed earlier. In fact, the standard regression analysis function available in Weibull++ indicates that an exponential model fits this cost model quite well. The function is given by the equation
C(R) = 0.3756 · e3.1972 · R
where C is the cost in dollars and R is the fractional reliability value. Thus, it is apparent that using an exponential model to represent the general relationship between cost and reliability is valid.
Copyright © 2001 ReliaSoft Corporation, ALL RIGHTS RESERVED