Metoda bisekcji

Metoda bisekcjimetoda bisekcjiMetoda bisekcji jest sposobem na wyznaczanie miejsca zerowego funkcji. Aby można było jej użyć do wskazania miejsca zerowego funkcji w przedziale a; b, muszą zostać spełnione następujące warunki:

  1. funkcja w zadanym przedziale a; b jest ciągłaciągłość funkcji w przedzialeciągła,

  2. wartości funkcji na końcach przedziału a; b mają różne znaki.

Specyfikacja problemu:

Dane:

  • f(x) – funkcja ciągła w zadanym przedziale

  • a, b – liczby rzeczywiste, końce przedziału poszukiwań pierwiastka

  • delta – liczba rzeczywista, przybliżenie określające maksymalną długość przedziału

  • epsilon – liczba rzeczywista, przybliżenie wartości funkcji w punkcie x0

Wynik:

  • x0 – liczba rzeczywista, przybliżenie miejsca zerowego

Algorytm znajdowania miejsca zerowego metodą połowienia przedziału możemy zapisać za pomocą listy kroków:

  1. Wyznacz x0 jako środek przedziału a; b.

  2. Sprawdź, czy dla argumentu x0 wartość funkcji f(x0) zbliży się do zera z przybliżeniem epsilon lub długość przedziału a; b będzie mniejsza od dokładności delta. Jeżeli tak, udało się znaleźć przybliżenie pierwiastka funkcji x0. Zakończ algorytm.

  3. W przeciwnym wypadku wybierz jedną z połówek przedziału. Lewy lub prawy koniec przedziału przyjmie wartość x0:

    1. Jeżeli f(x0)·f(a)<0, to b=x0

    2. Jeżeli f(x0)·f(b)<0, to a=x0

  4. Przejdź do punktu 1.

Przeanalizujmy wykres funkcji:

R146GNw8Cj4Sb
Źródło: Contentplus.pl Sp. z o.o., licencja: CC BY-SA 3.0.

Jest to wykres funkcji opisanej wzorem:

f ( x ) = x 3 5 x 2 + 2 x + 5

Naszym zadaniem jest wyznaczenia pierwiastka funkcji w przedziale 0; 4.

Nie jesteśmy w stanie wskazać miejsca zerowego funkcji, posługując się metodami poznanymi na lekcjach matematyki. Możemy jednak określić jego przybliżoną wartość, korzystając z metody bisekcji. Musimy jednak sprawdzić, czy spełnione są dwa warunki niezbędne, aby zastosować tę metodę.

Założenia metody połowienia podziału

Przyjrzyjmy się jeszcze raz wykresowi funkcji. Sprawdźmy, jakie wartości przyjmuje ona na końcach przedziału, w którym chcemy szukać pierwiastka.

RoRDCN9RyzLdv
Źródło: Contentplus.pl Sp. z o.o., licencja: CC BY-SA 3.0.

Oto wartości funkcji dla argumentów wyznaczających końce przedziału (x=0 oraz dla x=4):

f ( 0 )   =   5
f ( 4 ) =   3

Funkcja na końcach przedziału przyjmuje wartości różniące się znakami. Dla argumentu x=0 wartość funkcji jest dodatnia, natomiast dla x=4 ujemna. Wiedząc też, że funkcja jest ciągła w zadanym przedziale, możemy skorzystać z twierdzenia Darboux.

Mówi ono, że jeśli funkcja jest ciągła w zadanym przedziale i wartości funkcji dla krańców przedziałów są różnych znaków, to istnieje punkt pośredni c     ( a ,   b ) taki, że f ( c )   =   0.

Algorytm bisekcji – pseudokod

Przeanalizujmy zapisany za pomocą pseudokodu algorytm bisekcji dla funkcji f w przedziale a; b. Dokładność wyznaczenia pierwiastka opisują parametry delta oraz epsilon – określają one, z jakim przybliżeniem wyznaczymy miejsce zerowe. Parametr epsilon jest przybliżeniem wartości funkcji w punkcie x0 – nie będziemy szukać punktu, w którym wartość funkcji wynosi zero, lecz takiego, dla którego różni się ona od zera o wartości z zakresu e p s i l o n ,   e p s i l o n . Przybliżenie delta określa minimalną długość przedziału, przy której możemy kontynuować dzielenie go na połowy.

Zwróconą wartością jest obliczone przybliżenie miejsca zerowego x0.

Linia 1. długośćPrzedziału znak równości b minus a. Linia 2. dopóki prawda wykonuj dwukropek. Linia 3. długośćPrzedziału znak równości długośćPrzedziału prawy ukośnik 2. Linia 4. x0 znak równości a plus długośćPrzedziału. Linia 6. jeżeli wartośćBezwzględna otwórz nawias okrągły długośćPrzedziału zamknij nawias okrągły otwórz nawias ostrokątny delta LUB wartośćBezwzględna otwórz nawias okrągły f otwórz nawias okrągły x0 zamknij nawias okrągły zamknij nawias okrągły otwórz nawias ostrokątny epsilon wykonaj dwukropek. Linia 7. zwróć x0 i zakończ algorytm. Linia 9. jeżeli f otwórz nawias okrągły x0 zamknij nawias okrągły asterysk f otwórz nawias okrągły a zamknij nawias okrągły otwórz nawias ostrokątny 0 wykonaj dwukropek. Linia 10. b znak równości x0. Linia 11. w przeciwnym razie wykonaj dwukropek. Linia 12. a znak równości x0.

W pierwszej linii zapisane zostało polecenie obliczenia długości przedziału, w którym jest poszukiwane miejsce zerowe funkcji.

Następnie wewnątrz pętli przedział jest dzielony na dwie równe części; x0 oznacza punkt środkowy przedziału a; b.

Jeżeli przedział będzie krótszy od wartości delta lub wartość bezwzględna z wartości funkcji w punkcie x0 będzie mniejsza od epsilon, przerywamy pętlę i zwracamy wartość punktu środkowego x0.

W przypadku, gdy punkt środkowy nie spełni żadnego z warunków, nie będzie on przybliżeniem miejsca zerowego, lecz stanie się nowym prawym lub lewym końcem przedziału. Wartości funkcji na końcach przedziału muszą mieć zawsze różne znaki. Jeżeli zatem iloczyn wartości funkcji w punkcie środkowym i na lewym końcu przedziału ma wartość ujemną, punkt środkowy staje się nowym prawym końcem przedziału. W przeciwnym wypadku będzie on końcem lewym.

Wyznaczenie pierwiastka funkcji trzeciego stopnia

Znajdźmy miejsce zerowe funkcji opisanej wzorem:

f ( x ) = x 3 5 x 2 + 2 x + 5

w przedziale 0; 2. Wartości epsilondelta niech wynoszą 0,15.

Sprawdźmy, czy funkcja spełnia założenia.

  1. Własnością funkcji wielomianowej jest ciągłość. Rozpatrywana funkcja jest opisana za pomocą wielomianu, a zatem zachowuje ciągłość dla dowolnych liczb rzeczywistych – także w przedziale 0; 2.

  2. Wartości funkcji na końcach przedziału 0; 2 mają różne znaki, ponieważ:

f ( 0 ) = 5
f ( 2 ) = 3

Funkcja spełnia wymagane założenia, a zatem możemy przejść do realizowania algorytmu bisekcji.

Przedział ma długość 2; dzielimy go na pół, a więc punkt środkowy to x0=1.

Sprawdzamy, czy:

  • wartość bezwzględna z długości przedziału jest mniejsza od 0,15 lub

  • wartość funkcji w punkcie środkowym jest mniejsza od 0,15.

Wartość funkcji w punkcie x0 to:

f ( 1 )   =   3

Żaden z warunków nie jest spełniony, więc punkt środkowy staje się lewym lub prawym końcem przedziału. Sprawdzamy, czy iloczyn wartości funkcji w punkcie środkowym i lewym końcu przedziału daje wartość ujemną:

f ( 1 )     f ( 0 )   =   3     5   =   15   >   0

Iloczyn nie daje wartości ujemnej, więc punkt środkowy staje się lewym końcem przedziału.

Teraz poszukujemy miejsca zerowego w przedziale 1; 2. Ponownie dzielimy długość przedziału na dwie równe części; środek przedziału to x0=1,5.

Sprawdzamy warunki, czy:

  • wartość bezwzględna z długości przedziału jest mniejsza od 0,15 lub

  • wartość funkcji w punkcie środkowym jest mniejsza od 0,15.

Pierwszy warunek nie jest spełniony, ponieważ długość przedziału wynosi 0,5. Natomiast wartość funkcji w punkcie środkowym to:

f ( 1 , 5 )   =   0 , 125

Wartość bezwzględna z wartości funkcji w punkcie środkowym jest mniejsza od 0,15, więc zwrócona zostaje wartość x0 równa 1,5. Przybliżeniem miejsca zerowego funkcji

f ( x ) = x 3 5 x 2 + 2 x + 5

w przedziale 0; 2 jest 1,5.

Słownik

ciągłość funkcji w przedziale
ciągłość funkcji w przedziale

funkcję f   :   a; b     nazywamy ciągłą, gdy dla każdego x     a; b istnieje granica (dla x=a prawostronna, zaś dla x=b lewostronna) funkcji f w punkcie x oraz granica ta wynosi f(x)

metoda bisekcji
metoda bisekcji

(metoda połowienia przedziału, metoda równego podziału) jedna z metod rozwiązywania równań nieliniowych, jeśli funkcja spełnia następujące warunki:

  1. funkcja w zadanym przedziale a; b jest ciągła

  2. wartości funkcji na końcach przedziału a; b mają różne znaki

pierwiastek funkcji
pierwiastek funkcji

(miejsce zerowe) argument, dla którego funkcja przyjmuje wartość zero