[ Pobierz całość w formacie PDF ]
U(x) = x/((1-2x)(1-3x)) Mimo iż U(x) jest już dobrze wyrażonÄ… funkcjÄ… tworzÄ…cÄ…, nie jesteÅ›my w stanie odgadnąć jej współczynników bÄ™dÄ…cych zarazem rozwiÄ…zaniem równania rekurencyjnego. W tym celu musimy rozpisać otrzymany wynik na uÅ‚amki proste, a nastÄ™pnie tak dobrać staÅ‚e A i B, by funkcja tworzÄ…ca pozostaÅ‚a bez zmian: U(x) = x/((1-2x)(1-3x)) = A/(1-2x) + B/(1-3x) 87 - Grafy i rekurencje - StÄ…d A = -1, B = 1 Czyli ostatecznie U(x) = 1/(1-3x) -1/(1-2x) Skoro (1-±x)-1 = 1 + ±x + ±2x2 + ±3x3 + ±4x4 ... to un = 3n 2n. Formalizacja: Funkcja tworzÄ…ca dla równania rekurencyjnego k-tego stopnia ma postać: U(x) = R(x) / (1 + a1x + a2x2 + ... + akxk ) (*) gdzie a1, a2,... sÄ… liczbami z równania rekurencyjnego un+k+ a1un+k-1+...+akun = 0 Dla takiej funkcji tworzÄ…cej definiuje siÄ™ równanie pomocnicze: tk + a1tk-1 + a2tk-2 + ... +ak = 0 (**) Równanie (**) ma w zbiorze liczb zespolonych k pierwiastków. WÅ›ród nich wyróżniamy pierwiastki ±1, ±2, ... ,±s z odpowiednimi krotnoÅ›ciami m1, m2, ... ,ms , przy czym suma wszystkich krotnoÅ›ci wynosi k. Równanie (**) może być wiÄ™c zapisane w nastÄ™pujÄ…cy sposób: (t- ±1)m1 * (t- ±2)m2 * ... * (t- ±s)ms = 0 co po podstawieniu za t’! 1/x i pomnożeniu przez xk daje: (1- ±1x)m1 * (1- ±2x)m2 * ... * (1- ±sx)ms = 0 stÄ…d funkcja tworzÄ…ca może być zapisana jako: U(x) = R(x)/ ((1- ±1x)m1 * (1- ±2x)m2 * ... * (1- ±sx)ms) Teraz pozostaje już tylko rozÅ‚ożyć funkcjÄ™ tworzÄ…cÄ… na czynniki, które pomogÄ… nam zidentyfikować wartoÅ›ci równania rekurencyjnego. U(x) = (...)/(1- ±1x)m1 + (...)/(1- ±2x)m2 + ... + (...)/(1- ±sx)ms Gdyby krotność każdego rozwiÄ…zania równania byÅ‚a równa 1, to rozkÅ‚ad byÅ‚by trywialny, a dobór odpowiednich czynników natychmiastowy. Gdy jednak krotnoÅ›ci sÄ… różne od 1, należy przeprowadzić nastÄ™pujÄ…cÄ… redukcjÄ™: Ci, j (...) m = gdzie Ci,j sÄ… odpowiednimi staÅ‚ymi. " j (1-±i x)m j=1 (1-±i x) Jako przykÅ‚ad wezmy nastÄ™pujÄ…ce równanie rekurencyjne: u0 = 0, u1 = -9, u2 = 1, u3 = 21 un+4 5un+3 + 6un+2 + 4un+1 8un = 0 88 - Grafy i rekurencje - którego równanie pomocnicze ma postać: t4 5t3 + 6t2 + 4t 8 = 0 lub (t - 2)3(t + 1) = 0 Każdemu pierwiastku tego równania bÄ™dzie w rozwiÄ…zaniu równania rekurencyjnego odpowiadaÅ‚ wielomian stopnia o jeden mniejszego niż krotność pierwiastka: un = (An2 + Bn + C)*2n + D*(-1)n Po rozwiÄ…zaniu zestawu równaÅ„ wyznaczajÄ…cego wartoÅ›ci A, B, C, D: u0 = 0 = C + D u1 = -9 = 2A + 2B + 2C D u2 = -1 = 16A +8B +4C + D u3 = 21 = 72A + 24B + 8C D otrzymujemy koÅ„cowy wzór na n- ty element równania rekurencyjnego: un = (n2 - n - 3)*2n + 3*(-1)n Na koniec przedstawimy jeszcze równanie rekurencyjne liniowe, które posiada czynnik wolny i wyznaczymy jego funkcjÄ™ tworzÄ…cÄ…: u0 = 0, u1 = 1 un+2 un+1 6un = n U(x) = u0 + u1x + u2x2 + u3x3 + ... = x + (u1 + 6u0 + 0)x2 + (u2 + 6u1+1)x3 + (u3 + 6u2 + 2)x4 + ... = x + (u1x2 + u2x3 + u3x4 +...) + 6(u0x2 + u1x3 + u2x4 + ...) + + (x3 +2x4 + 3x5 +...) = x + xU(x) + 6x2U(x) + x3(1 + 2x + 3x2 + ...) = x + xU(x) +6x2U(x) + x3(1-x)-2 czyli funkcja tworzÄ…ca ma postać: U(x) = (x3(1 - x)-2 + x)/(1 x 6x2) Wyznaczenie kolejnych wyrazów odpowiadajÄ…cego jej równania rekurencyjnego może być dobrym ćwiczeniem utrwalajÄ…cym przedstawionÄ… teoriÄ™. 89 - Grafy i rekurencje - RozdziaÅ‚ VIII PrzykÅ‚adowe procesy rekurencyjne VIII. 1 Stan rejestru przesuwajÄ…cego Załóżmy, że dany jest przerzutnik pokazany na poniższym rysunku: d q0 c d napiÄ™cie danych c impuls zapisu q0 napiÄ™cie stanu przerzutnika Rysunek 40 Przerzutnik danych Pod wpÅ‚ywem impulsu c do przerzutnika zapisywana jest dana d, tzn. stan q przyjmuje wartość d. Rejestr przesuwajÄ…cy jest szeregowym zestawem przerzutników pokazanym na poniższym rysunku. qN qN-1 qn qn-1 q1 QN QN-1 QQ Q1 d n n-1 Nn ... 1 ... c Qn stan n- tego przerzutnika Rysunek 41 Rejestr przesuwajÄ…cy W rejestrze tym pod wpÅ‚ywem impulsu zapisu c stan Qn-1 zostaje zapisany do nastÄ™pnego przerzutnika. Oznaczamy stan poczÄ…tkowy rejestru przez: Q0 = [ qN0, ...,qn0 ,..., q10 ] Po pierwszym impulsie zapisu stan rejestru przyjmuje postać: Q1 = [ qN1, ..., qn1 , ..., qn1 ] 90 - Grafy i rekurencje - przy czym q11 = d q21 = q10 ........................... qn1 = qn-10 ........................... qN1 = qN-10 W analogiczny sposób modyfikowany jest stan rejestru przesuwajÄ…cego po kolejnych impulsach zapisu. W rejestrach przesuwajÄ…cych ze sprzężeniem zwrotnym sygnaÅ‚ d jest funkcjÄ… stanu rejestru: d = f ( qN,...,qn ,..., q1 ) FunkcjÄ™ tÄ™ realizuje ukÅ‚ad bramek logicznych. Tak wiÄ™c stany rejestru opisujÄ… równania rekurencyjne: q1k = f(q1k-1, ..., qnk-1, & , qNk-1 ) qnk = qn-1k-1 n=2, ..., N Na podstawie danego stanu poczÄ…tkowego Qº można wygenerować graf stanów Qk, k = 1,...,K. q4 q3 q2 q1 4321 q3* q4 Rysunek 42 PrzykÅ‚adowa modyfikacja rejestru przesuwajÄ…cego Stan poczÄ…tkowy rejestru: Q0 = [q40 q30 , q20 , q10 ] = [ 1101 ] , Kolejne stany tworzÄ… ciÄ…g przedstawiony na rysunku Q0 = [ 1101 ] Q1 = [ 1011 ] Q2 = [ 0110 ] Q3 = [ 1100 ] Q4 = [ 1001 ] Q5 = [ 0010 ] 91 - Grafy i rekurencje - Q6 = [ 0100 ] Q7 = [ 1000 ] Q8 = [ 0000 ] Po 8 impulsach rejestr znajdzie siÄ™ w ustalonym stanie [ 0, 0, 0, 0, 1 ]. W analogiczny sposób można podstawić zmiany stanu rejestru przesuwajÄ…cego dowolnego ukÅ‚adu realizujÄ…cego funkcjÄ™ f. VIII. 2 Stan procesu montażu Załóżmy, że dana jest linia montażowa pokazana na poniższym rysunku .... 0 1 n N .... Rysunek 43 Linia montażowa Linia skÅ‚ada siÄ™ z N stacji montażowych. Operacje na stacjach sÄ… wykonywane przez roboty przemysÅ‚owe. Stacja ni 0 sÅ‚uży do sprowadzania nowych obiektów do montażu. W trakcie cyklu każdy robot wykonuje operacje na obiekcie znajdujÄ…cym siÄ™ na jego stacji. Po zakoÅ„czeniu operacji przez wszystkie roboty, każdy obiekt jest przesuwany (synchronicznie) na kolejnÄ… stacjÄ™. Na linii montowane sÄ… równoczeÅ›nie obiekty M różnych wersji. Czasy montażu obiektów różnych wersji na stacjach dane sÄ… macierze: T = [ tm, n ] m = 1,..,M n = 1,...,N gdzie: tm,n czas montażu obiektu m tej wersji na n-tej stacji Czas każdego cyklu wyznaczamy jako Ck = max Cnk 1d" n d" N gdzie: Cnk =tm, n jeÅ›li w k- tym takcie na n- tej stacji byÅ‚ montowany obiekt m- tej wersji. 92 - Grafy i rekurencje - Załóżmy, że zamówienia na obiekty dane sÄ… w wektorze; Z = [ Zm ] m = 1,...,M gdzie: Zm liczba obiektów m- tej wersji Problem polega na zmontowaniu zamówionych obiektów w najkrótszym czasie. Oznaczamy przez Xk wektor stanu linii montażowej po k- tym cyklu, ( k = 0, 1, ..., K ). Stan ten definiujemy nastÄ™pujÄ…co; Xk = [ Xnk ] n = 0,1, ... , N gdzie: Xnk - numer wersji obiektu znajdujÄ…cego siÄ™ na n- tej stacji po k- tym cyklu. Stan poczÄ…tkowy X0 jest dany. Załóżmy, że X00 = 0 Xn0 > 0 n =1, ...,N To znaczy, że na każdej stacji montażowej znajduje siÄ™ jakiÅ› obiekt. Czas pierwszego cyklu wyznaczamy z warunku: C1 = max Cn1 1 d" n d" N przy czym Cn1 = tm,n oraz m = Xn0 W trakcie pierwszego ( i każdego nastÄ™pnego )cyklu do stacji zaÅ‚adunkowej jest podawany obiekt wybranej wersji. Decyzja o obiekcie zaÅ‚adowanym do linii w k-tym cyklu bÄ™dzie oznaczona przez dk , przy czym: m, jeÅ›li w k- tym cyklu do linii jest zaÅ‚adowany obiekt m tej wersji { dk = 0, jeÅ›li w k-tym cyklu do linii nie jest zaÅ‚adowany żaden obiekt 93 - Grafy i rekurencje - Stan linii montażowej po takcie k jest zależny od stanu linii po poprzednim takcie oraz od decyzji w k- tym takcie. Rekurencyjne równania stanu majÄ… postać: Xk = fx (X k-1 , dk ) k = 1,..., K W postaci jawnej mamy Xnk = Xn-1k-1 n = 2,...,N X1k = dk Ponadto obliczamy czas cyklu Ck, k = 1, ..., K. W analogiczny sposób można przedstawić rekurencyjne równanie zamówieÅ„: Zk = fz ( Zk-1 , Xk-1 ) k =1, ..., K W postaci jawnej mamy: Zmk-1 1 , dla XNk-1 = m { Zmk = Zmk-1 , dla XNk-1 `" m
[ Pobierz całość w formacie PDF ] zanotowane.pldoc.pisz.plpdf.pisz.plalternate.pev.pl
|