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