Sie sind auf Seite 1von 4

---

title: "DRE - 3. Übung"


subtitle: "Methode nach Nelson"
output: html_document
---

## Einleitung Methode nach Nelson


Die Methode nach Nelson ist ein nicht-parametrisches Verfahren zur Schätzung der
kumulativen Ausfallrate bei Vorhandensein (multipler) rechtszensierter Daten.
Durch Gleichsetzen der allgemeinen Definition der Ausfallrate mit der von
Nelson eingeführten Ausfallrate können Ausfallwahrscheinlichkeiten bestimmt werden.

Die Ausfallwahrscheinlichkeiten lassen sich durch die folgende Gleichung bestimmen:


$$F_i(t)=1-exp\left[-H_{Nel, i}(t)\right]$$
Hierbei bestimmt sich $H_{Nel, i}(t)$ durch:
$$H_{Nel, i}(t) = \sum_{i=1}^n \lambda_{Nel, i} $$
und $$\lambda_{Nel, i}=\frac{1}{r_i}$$

## Einbinden/Installieren der benötigten R Packages


```{r, Packages laden, message = FALSE, warning = FALSE}
if (!require(weibulltools)) {
install.packages("weibulltools") # Installationsroutine
require(weibulltools) # Einbinden des Packages
}

if (!require(tidyverse)) {
install.packages("tidyverse") # Installationsroutine
require(tidyverse) # Einbinden des Packages
}

if (!require(plotly)) {
install.packages("plotly") # Installationsroutine
require(plotly) # Einbinden des Packages
}
```

## Aufgabe Nelson-Verfahren

Bei einem Versuch sind fünf von zehn Probanden ausgefallen. Damit sind fünf
Probanden ohne Schaden geblieben. Die beiliegende Tabelle fasst den Versuch
zusammen.

i | Lastzyklen | Status
:-----: | :-----: | :-----:
1 | 10.000 | F
2 | 18.000 | F
3 | 40.000 | F
4 | 75.000 | F
5 | 90.000 | F
6 | 160.000 | S
7 | 25.000 | S
8 | 50.000 | S
9 | 100.000 | S
10 | 150.000 | S

1. Berechnen Sie mit den Werten der ausgefallenen Probanden die beiden
Weibullparameter b und T. Verwenden Sie zur Schätzung der
Ausfallwahrscheinlichkeiten
den Medianrang-Schätzer und zur Schätzung der Parameter die Medianrang-
Regression.
Visualisieren Sie Ihre Ergebnisse im Weibull-Wahrscheinlichkeitsnetz.
2. Bestimmen Sie die Weibullparameter b und T nun nach dem Nelson-Verfahren.
Nutzen Sie für die Visualisierung das Wahrscheinlichkeitsnetz aus Aufgabenteil
1.
3. Aufgrund eines Irrtums müssen die Lebensdauern der Probanden, die ohne Schaden
überlebt haben, korrigiert werden: Alle Probanden (Survivor) weisen 200.000 cyc
auf.
Bestimmen Sie die Weibullparameter b und T nach dem Nelson-Verfahren. Nutzen Sie
für
die Visualisierung wieder das gleiche Wahrscheinlichkeitsnetz.
4. Was ändert sich, wenn die Survivors nun statt 200.000 cyc bisher 500.000 cyc
gelaufen sind?
5. Sind beim Nelson-Verfahren b-Werte kleiner, gleich oder größer 1 plausibel?

Lösung zu Aufgabenteil 1:

```{r, Aufgabe 1 - Teil 1, warning = FALSE}


# Aufgabenteil 1: Medianrang-Regression und Visualisierung im
Wahrscheinlichkeitsnetz:

# Daten erzeugen:
cycles <- c(10000, 18000, 40000, 75000, 90000, 160000, 25000, 50000, 100000,
150000)
status <- c(1, 1, 1, 1, 1, 0, 0, 0, 0, 0)

# Medianrang-Schätzungen:
mr_cycles <- mr_method(x = cycles[1:5])
mr_cycles

# Medianrang-Regression:
mrr_cycles <- rank_regression(x = mr_cycles$characteristic, y = mr_cycles$prob,
event = mr_cycles$status)
mrr_cycles

# Visualisierung:
mrr_plot <- plot_prob(x = mr_cycles$characteristic, y = mr_cycles$prob,
event = mr_cycles$status, title_main = "Weibull - Wahrscheinlichkeitsnetz",
title_x = "Lastzyklen", title_y = "Ausfallwahrscheinlichkeit in %",
title_trace = "Ausfälle (MR)") %>%
plot_mod(x = mr_cycles$characteristic, loc_sc_params =
mrr_cycles$loc_sc_coefficients,
title_trace = "MRR (x on y)")
mrr_plot
```

Lösung zu Aufgabenteil 2:

```{r, Aufgabe 1 - Teil 2, warning = FALSE}


# Aufgabenteil 2: Rang-Regression mit Wahrscheinlichkeiten nach Nelson-Methode
# und Visualisierung im selbigen Wahrscheinlichkeitsnetz:

# Nelson-Verfahren:
nel_cycles <- nelson_method(x = cycles, event = status)
nel_cycles

# Rang-Regression mit geschätzten Wahrscheinlichkeiten nach Nelson:


mrr_nelson <- rank_regression(x = nel_cycles$characteristic, y = nel_cycles$prob,
event = nel_cycles$status)
mrr_nelson

# Regressionsgerade nach Nelson: Vorbereitung


plot_nel_reg <- predict_prob(q = c(5000, 150000), loc_sc_params =
mrr_nelson$loc_sc_coefficients,
distribution = "weibull")

# Visualisierung:
mrr_plot2 <- mrr_plot %>%
add_trace(data = nel_cycles, type = "scatter", mode = "markers", x =
~characteristic,
y = ~SPREDA::qsev(prob), name = "Ausfälle (Nelson)", color = I("#006400"),
hoverinfo = "text", text = ~paste(paste("Lastzyklen", ":", characteristic),
paste("<br>", paste0("Ausfallwahrscheinlichkeit", ":")), round(prob, digits =
5))) %>%
add_lines(x = c(5000, 150000), y = SPREDA::qsev(plot_nel_reg),
name = "RR - Nelson (x on y)", color = I("#29AB87"),
hoverinfo = "text", hoverinfo = "text",
text = ~paste(paste("T<sub>Nel</sub>", ":", round(mrr_nelson$coefficients[[1]],
digits = 2)),
"<br>", paste("b<sub>Nel</sub>", ":",
round(mrr_nelson$coefficients[[2]], digits = 2))))
mrr_plot2
```

Lösung zu Aufgabenteil 3:

```{r, Aufgabe 1 - Teil 3, warning = FALSE}


# Aufgabenteil 3: Korrektur der Lastzyklen für die Survivor und anschließende
# Rang-Regression mit geschätzten Ausfallwarscheinlichkeiten nach Nelson.
# Visualisierung des Ergebnisses im selbigen Wahrscheinlichkeitsnetz:

cycles_corrected <- cycles


cycles_corrected[status == 0] <- 200000

# Nelson-Verfahren:
nel_cycles_corrected <- nelson_method(x = cycles_corrected, event = status)
nel_cycles_corrected

# Rang-Regression mit geschätzten Wahrscheinlichkeiten nach Nelson:


mrr_nelson_corrected <- rank_regression(x = nel_cycles_corrected$characteristic,
y = nel_cycles_corrected$prob, event = nel_cycles_corrected$status)
mrr_nelson_corrected

# Regressionsgerade für Nelson mit korrigierten Lastzyklen: Vorbereitung


plot_nel_corrected_reg <- predict_prob(q = c(5000, 200000),
loc_sc_params = mrr_nelson_corrected$loc_sc_coefficients, distribution =
"weibull")

# Visualisierung:
mrr_plot3 <- mrr_plot2 %>%
add_trace(data = nel_cycles_corrected, type = "scatter", mode = "markers", x =
~characteristic,
y = ~SPREDA::qsev(prob), name = "Ausfälle\n(Nelson korrigiert)", color =
I("#FFFB00"),
hoverinfo = "text", text = ~paste(paste("Lastzyklen", ":", characteristic),
paste("<br>", paste0("Ausfallwahrscheinlichkeit", ":")), round(prob, digits =
5))) %>%
add_lines(x = c(5000, 200000), y = SPREDA::qsev(plot_nel_corrected_reg),
name = "RR - Nelson\nkorrigiert (x on y)", color = I("#FFD300"),
hoverinfo = "text", hoverinfo = "text",
text = ~paste(paste("T<sub>Nel</sub>", ":",
round(mrr_nelson_corrected$coefficients[[1]], digits = 2)),
"<br>", paste("b<sub>Nel</sub>", ":",
round(mrr_nelson_corrected$coefficients[[2]], digits = 2))))
mrr_plot3
```

Lösung zu Aufgabenteil 4:

```{r, Aufgabe 1 - Teil 4, warning = FALSE}


# Aufgabenteil 4: Erneute Korrektur der Lastzyklen für die Survivor.

cycles_corrected2 <- cycles


cycles_corrected2[status == 0] <- 500000

# Nelson-Verfahren:
nel_cycles_corrected2 <- nelson_method(x = cycles_corrected2, event = status)
nel_cycles_corrected2

# Vergleich mit nel_cycles_corrected


identical(nel_cycles_corrected$prob, nel_cycles_corrected2$prob)
```

Bei den nicht-parametrischen Schätzern, wie z.B der Nelson-Aalen-Schätzer, wird


das Lebensdauermerkmal nur indirekt zur Schätzung der Ausfallwahrscheinlichkeiten
verwendet. Der entscheidende Faktor ist der zugeordnete Rang, sodass sich aufgrund
einer höheren Lastzyklenzahl, bei gleich bleibendem Rang der Survivor, nichts an
der Schätzung der Ausfallwahrscheinlichkeit ändert.

Lösung zu Aufgabenteil 5:

Die Ausfallrate nach Nelson berechnet sich durch die Gleichung $\lambda_{Nel, i}=\
frac{1}{r_i}$.
$r_i$ ist hierbei der inverse Rang einer Beobachtung. Somit wird durch die
Einführung
von Nelsons Ausfallrate implizit vorausgesetzt, dass die Ausfallrate eine monoton
steigende Funktion ist. Solche Ausfallratenverläufe passen jedoch nur zu einem
Weibullparameter b, der echt größer als 1 ist. Daher ist das Nelson-Verfahren im
vorliegenden Fall als ungeeignet zu betrachten.

Das könnte Ihnen auch gefallen