Instytut Politechniczny Państwowa Wyższa Szkoła Zawodowa

Transkrypt

Instytut Politechniczny Państwowa Wyższa Szkoła Zawodowa
Instytut Politechniczny
Państwowa Wyższa Szkoła Zawodowa
Diagnostyka i niezawodność robotów
Laboratorium nr 3
Generacja realizacji zmiennych losowych
Prowadzący: mgr inż. Marcel Luzar
Cele ćwiczenia:
Generowanie realizacji zmiennych losowych i prezentacja graficzna wyników
losowania.
Symulowanie badania niezawodnościowego i estymacja parametrów rozkładu
zmiennej losowej opisującej czas życia elementu.
1. Generalizacja realizacji zmiennych losowych
W pakiecie statystycznym systemu Matlab znajduje się szereg funkcji służących do
generowania realizacji zmiennych losowych. Noszą one nazwę generatorów zmiennych
losowych. Lista tych funkcji wygląda następująco:
Dla przykładu wywołanie funkcji normrnd(mu, sigma) spowoduje wygenerowanie jednej
realizacji zmiennej losowej z rozkładu normalnego o parametrach mu =μ,. sigma = σ.
Prosty program pozwalający wygenerować wektor składający się z ustalonej liczby np.
n =10 realizacji zmiennych losowych pochodzących z rozkładu normalnego o parametrach
μ =0 i σ=1 może wyglądać na przykład tak:
To samo można zrobić prościej wywołując funkcję generatora z dodatkowymi
parametrami (patrz plik pomocy). Program upraszcza się wtedy do postaci:
Uwaga: Proszę sprawdzić, co się stanie, jeśli powyższy program zostanie uruchomiony kilkakrotnie? Jak za
każdym razem będzie wyglądał wektora t.
3. Graficzna prezentacja wyników losowania przy pomocy histogramu
Do pokazania na rysunku wyników losowania służy między innymi funkcja hist(...) ,
pozwalająca na utworzenie rysunku histogramu danych. Przykład użycia funkcji rysującej
histogram może być taki:
Uwaga: W przypadku użycia funkcji hist(... ) bez dodatkowych parametrów (tak jak powyżej), zarówno zakres
jak i liczba słupków histogramu dobierana jest automatycznie. Dodatkowe informacje dotyczące zmiany
wyglądu histogramu znajdują się w pliku pomocy.
4. Graficzna prezentacja wyników losowania przy pomocy wykresu
probabilistycznego
W pakiecie statystycznym systemu MATLAB dostępne są dwie funkcje pozwalające na
graficzną prezentację „dopasowania" danych do określonego rozkładu. Są to funkcje
normplot(...) i weibplot(...) . Pierwsza z nich pozwala ocenić „dopasowanie " danych do
rozkładu normalnego a druga do rozkładu Weibulla. Obowiązuje zasada, że im bardziej dane
pasują do określonego rozkładu, tym lepiej układają się wzdłuż linii prostej. Na przykład jeśli
wylosować dane z rozkładu normalnego i sporządzić dla nich wykres probabilistyczny w
układzie współrzędnych dla tego rozkładu uzyska się efekt taki jak pokazano poniżej:
Wykonanie programu pozwoli na prezentacje danych przy pomocy wykresu.
Jak widać punkty odpowiadające wynikom losowania układają się dość dobrze wzdłuż linii
prostej co pozwala przypuszczać, że rzeczywiście pochodzą z rozkładu normalnego.
5. Wyznaczanie parametrów rozkładu prawdopodobieństwa metodą
największej wiarogodności
Do wyznaczania parametrów rozkładów metodą
przygotowano w pakiecie statystycznym następujące funkcje.
największej
wiarogodności
Przykładowo wywołanie funkcji normfit(t) spowoduje obliczenie dla danych zapisanych
jako elementy wektora t parametrów rozkładu normalnego, który „najlepiej pasuje" do tych
danych. Program pozwalający wygenerować wektor t oraz wyznaczenie parametrów
rozkładu normalnego dla tego wektora ilustruje kolejny przykład.
6. Zadania do wykonania
Wykorzystując funkcje pakietu statystycznego napisać proste programy realizujące
poniższe zadania:
• Dla elementu nienaprawialnego, którego czas życia opisany jest rozkładem
wykładniczym o parametrze X = 1000 wylosować trzy próby. Pierwsza o liczności
n = 50, druga dla n = 500, trzecia gdy n = 5000. Wyniki losowań zapisać do plików
binarnych.
Uwaga 1: Proszę używać funkcji exprnd(...), fopen(...), fclose(...), fwrite(...).
Uwaga 2: Proszę zwrócić uwagę, że w pakiecie statystycznym przyjęto zapis rozkładu
wykładniczego w postaci
Konsekwencją takiej notacji jest to, że średni czas życia dla elementu o tak opisanym
rozkładzie wynosi nie 1/ X lecz X tak więc w przypadku gdy funkcję exprnd(...) wywołamy
dla przykładu z parametrem X = 1000 symulujemy realizację czasu życia elementu o
wartości średniej czasu życia 1000 jednostek czasu.
• Napisać program (programy) odczytujące dane z plików i rysujące histogramy dla tych
danych.
Uwaga: Proszę używać funkcji fread(...) i hist(...).
• Zmodyfikować programy (programy) rysujące histogram przez dodanie rysowania
wykresów probabilistycznych na siatce rozkładu Weibulla i normalnego. Jeden
program powinien rysować teraz, co najmniej trzy wykresy, histogram i dwa wykresy
probabilistyczne.
Uwaga: Proszę używać funkcji weibplot(...), normplot(...), figure().
• Uzupełnić dotychczas napisany program (programy) o obliczanie estymatorów
parametrów rozkładu metodą największej wiarogodności. Sprawdzić jak wyglądają
estymatory dla rozkładu wykładniczego (z tego rozkładu losowano dane) i rozkładu,
Welbulla. Obliczyć estymator wartości średniej dla rozkładu Weibulla.
Uwaga: Proszę używać funkcji expfit(...), weibfit(...), weibstat(...).
• Napisać program rysujący wykres przebiegu estymatora największej wiarogodności
średniego czasu życia elementu w funkcji liczności próby. Założyć, że czas życia
elementu opisany jest zmienną losową o rozkładzie wykładniczy z parametrem X =
1000 a liczności próby wynoszą 50, 100,500, 1000, 5000, 10000,
50000, 100000, 500000, 1000000.
Uwaga: Proszę używać funkcji exprnd(..., )expfit(...) a w miejsce funkcji plot(...)
zastosować funkcję semiologx(...).
W sprawozdaniu należy skomentować otrzymane rezultaty.
7. Literatura
1. Grabski F., Jaźwiński J., „Metody bayesowskie w niezawodności i diagnostyce”,
Wydawnictwo WKŁ 2001
2. Maksymiuk J., „Niezawodność maszyn i urządzeń elektrycznych”, Wydawnictwo Oficyna
Wydawnicza Politechniki Warszawskiej 2003
3. Wendy L. Martinez, Angel Martinez, Jeffrey Solka, „Exploratory Data Analysis with
MATLAB”, Second Edition, Wydawnictwo CRC PR INC