Reliability-Based Design (RBD) : Solution
Reliability-Based Design (RBD) : Solution
h
b
Solution
The design variable are 𝐝 = (b, h) and 𝐗 = (𝐿); the objective function is 𝑓(𝑏, ℎ, 𝜇𝐿 ) = 𝑏ℎ𝜇𝐿 .
The random parameters are 𝐏 = (𝑃𝑥 , 𝑃𝑦 , 𝑆𝑦 , 𝐸). There are two failure modes. For the failure
mode of excessive stress, the limit-state function is given by
6𝐿 𝑃𝑥 𝑃𝑦
𝐺1 = ( + ) − 𝑆𝑦 ≤ 0
𝑏ℎ 𝑏 ℎ
For the failure mode of excessive deflection, the limit-state function is given by
4𝐿3 𝑃𝑥 2 𝑃𝑦 2
𝐺2 = 𝑑0 − √( ) + ( 3) ≤ 0
𝐸 𝑏3 ℎ 𝑏ℎ
All the information we know are listed below.
𝑃𝑥 ~𝑁(500,1002 ) lb
𝑃𝑦 ~𝑁(500,1002 ) lb
𝑆𝑦 ~𝑁(40 × 103 , (2 × 103 )2 ) psi
𝐸~𝑁(29 × 106 , 3 × 106 ) psi
𝐿~𝑁(𝜇𝐿 , 0.12 ) in
𝑑0 = 2.5 in
1 in ≤ 𝑏 ≤ 20 in, 1 in ≤ ℎ ≤ 20 in, 50 in ≤ 𝜇𝐿 ≤ 100 in
[𝑅1 ] = [𝑅2 ] = 0.999, or [𝑝𝑓1 ] = [𝑝𝑓2 ] = 0.001
In order to find the optimal solution, we minimize 𝑓(𝑑, ℎ, 𝜇𝐿 ) with two reliability constraints.
The optimization model is given by
min
⏟ 𝑓 = 𝑏ℎ𝜇𝐿
𝐷𝑉=(𝑏,ℎ, 𝜇𝐿 )
6𝐿 𝑃𝑥 𝑃𝑦
Pr {𝐺1 = ( + ) − 𝑆𝑦 ≤ 0} ≤ [𝑝𝑓1 ]
𝑏ℎ 𝑏 ℎ
4𝐿3 𝑃𝑥 2 𝑃𝑦 2
Pr {𝐺2 = 𝑑0 − √ ( 3 ) + ( 3 ) ≤ 0 } ≤ [𝑝𝑓1 ]
𝐸 𝑏 ℎ 𝑏ℎ
1 ≤ 𝑏 ≤ 20
1 ≤ ℎ ≤ 20
{50 ≤ 𝜇𝐿 ≤ 100
The First Order Second Moment method (FOSM) is used for reliability analysis, and Matlab is
used to solve the optimization model. The optimal solution is as follows:
Design variables: (𝑏, ℎ, 𝜇𝐿 ) = (1.95,3.09,50) in
Objective function: 𝑓(𝑏, ℎ, 𝜇𝐿 ) = 301.67 in2
Probability of failure for failure mode 1: 𝑝𝑓1 = 0.001
Probability of failure for failure mode 2: 𝑝𝑓2 = 0
The compare RBD with deterministic optimization (only mean values are used), we give the
results from both methods in the following table.
%Posterior analysis
obj = rbd_obj_fun(dv);
[g,ceq] = rbd_con_fun(dv,required_pf); %g=pf-required_pf
pf = g+required_pf;
%Display the results
disp('------------------RBD Results-------------------');
disp(['The optimal point = ',num2str(dv)]);
disp (['The objective function = ',num2str(obj)]);
for i = 1:2
disp(['Probability of failure mode ',num2str(i),' = ',...
num2str(pf(i))]);
end
2) Objective function
%Objective function
function f = rbd_obj_fun(dv,required_pf)
%dvs=[b,h,uL]
f = dv(1)*dv(2)*dv(3); %Volume
3) Constraint function
% Constraint functions
% FOSM is used to calculate the probability of failure
function [g,ceq] = rbd_con_fun(dv,required_pf)
ceq = []; %No equality constraints
%d=(b,h), X=(L), P=(Px,Py,S,E)
%dv=[b,h,uL];
b = dv(1); h = dv(2); L = dv(3);
Px = 500; Py = 1000; S = 4.0e4; E = 29.0e6; %Mean
sL = 0.1; sPx = 100; sPy = 100; sS = 2.0e3; sE = 3.0e6; %Std
%Calculate mean of g
ug1 = S-6*L/b/h*(Px/b+Py/h);
ug2 = 2.5-4*L^3/E*((Px/b^3/h)^2+(Py/b/h^3)^2)^0.5;
%Calculate std of g
dg1dL = 6/b/h*(Px/b+Py/h);
dg1dPx = 6*L/b/h/b;
dg1dPy = 6*L/b/h/h;
dg1dE = 0;
dg1dS = 1;
dg2dL = -12*L^2/E*(Px^2/b^6/h^2+Py^2/b^2/h^6)^(1/2);
dg2dPx = -4*L^3/E/(Px^2/b^6/h^2+Py^2/b^2/h^6)^(1/2)*Px/b^6/h^2;
dg2dPy = -4*L^3/E/(Px^2/b^6/h^2+Py^2/b^2/h^6)^(1/2)*Py/b^2/h^6;
dg2dE = 4*L^3/E^2*(Px^2/b^6/h^2+Py^2/b^2/h^6)^(1/2);
dg2dS = 0;
stdg1 =
((dg1dL*sL)^2+(dg1dPx*sPx)^2+(dg1dPy*sPy)^2+(dg1dE*sE)^2+(dg1dS*
sS)^2)^0.5;
stdg2 =
((dg2dL*sL)^2+(dg2dPx*sPx)^2+(dg2dPy*sPy)^2+(dg2dE*sE)^2+(dg2dS*
sS)^2)^0.5;
%Calculate reliability
pf(1) = normcdf(-ug1/stdg1);
pf(2) = normcdf(-ug2/stdg2);
%Constraints
g(1) = pf(1)-required_pf(1); %Matlab uses g<=0
g(2) = pf(2)-required_pf(2);