תור M/M/1

בתורת התורים, תור M/M/1 הוא מודל תורים בעל שרת יחיד וללא מגבלה על קיבולת התור המשמש לעיתים קרובות למידול של מערכות בשל פשטותו המתמטית. הסימון M/M/1 מייצג על פי סימון קנדל מערכת כלהלן: תהליך מופע הלקוחות הוא תהליך פואסון (ועל כן משך הזמן שבין הופעה להופעה הוא בעל התפלגות מעריכית) זמני השירות בעלי התפלגות מעריכית גם הם קיים שרת יחיד במערכת קיבולת התור שבו הלקוחות ממתינים הוא אינסופי הלקוחות נגזרים מאוכלוסייה אינסופית של מבקשי שירות פוטנציאליים שיטת השירות היא FCFS, כלומר מגיע ראשון מקבל שירות ראשון. מאחר שמדובר בשרת יחיד הדבר שקול לנכנס ראשון יוצא ראשון. ההכללה של תור M/M/1 למערכת בעלת מספר כלשהו של שרתים מכונה תור M/M/c. אם נגדיר את מספר הלקוחות במערכת, k, כמשתנה המצב, תור M/M/1 הוא תהליך לידה ומוות (Birth-death process) מהפשוטים ביותר, שבו קצב הלידה (הגעת לקוח חדש לתור) וקצב המוות (סיום שירות ויציאה מהמערכת) קבועים עבור כל המצבים למעט מצב הקצה שבו אין לקוחות במערכת (במצב הקצה קצב המוות הוא אפס). יהי λ קצב מופע הלקוחות ו-μ קצב השירות, שניהם קבועים כאמור עבור כל המצבים למעט מצב האפס. מכאן אפשר לנסח את משוואות המצב הדיפרנציאליות המתארות את הסתברות המערכת להיות במצב k בזמן t: p 0 ′ ( t ) = μ 1 p 1 ( t ) − λ 0 p 0 ( t ) {\displaystyle p_{0}^{\prime }(t)=\mu _{1}p_{1}(t)-\lambda _{0}p_{0}(t)} p k ′ ( t ) = λ k − 1 p k − 1 ( t ) + μ k + 1 p k + 1 ( t ) − ( λ k + μ k ) p k ( t ) {\displaystyle p_{k}^{\prime }(t)=\lambda _{k-1}p_{k-1}(t)+\mu _{k+1}p_{k+1}(t)-(\lambda _{k}+\mu _{k})p_{k}(t)} במצב שיווי המשקל הנגזרות מתאפסות ועל כן קצב הכניסה למצב מסוים שווה לקצב היציאה ממנו, כך שמתקבלות המשוואות הבאות: λ 0 p 0 ( t ) = μ 1 p 1 ( t ) {\displaystyle \lambda _{0}p_{0}(t)=\mu _{1}p_{1}(t)} ( λ k + μ k ) p k ( t ) = λ k − 1 p k − 1 ( t ) + μ k + 1 p k + 1 ( t ) {\displaystyle (\lambda _{k}+\mu _{k})p_{k}(t)=\lambda _{k-1}p_{k-1}(t)+\mu _{k+1}p_{k+1}(t)} שאותן ניתן לפתור ביחד עם משוואת נורמליזציה אחת לסכום ההסתברויות: ∑ k = 0 ∞ p k = 1 {\displaystyle \sum _{k=0}^{\infty }p_{k}=1} הסכום המתקבל במשוואת הנורמליזציה הוא טור גאומטרי המתכנס רק עבור μ>λ, אז ניתן לומר שקיים מצב שיווי משקל בו המערכת תהיה יציבה, שכן אחרת התור ילך ויגדל לאינסוף. מכאן נגזר תנאי שיווי המשקל של התור, שניתן לתארו מילולית כתנאי הדורש שקצב השירות יהיה גדול מקצב מופע הלקוחות. נהוג להגדיר את היחס בין הקצבים כפרמטר של המערכת: ρ = λ μ . {\displaystyle \scriptstyle \rho \,=\,{\tfrac {\lambda }{\mu }}.} , וכאמור, המערכת תגיע לשיווי משקל רק עבור ρ < 1 {\displaystyle \rho <1} . פתרון תהליך הלידה והמוות מניב את ההסתברות שהמערכת תהיה במצב k, כלומר שבמערכת כולה יהיו k לקוחות, והיא: Prob ( q = k ) = π k = ( 1 − ρ ) ρ k . {\displaystyle {\mbox{Prob}}(q=k)=\pi _{k}=(1-\rho )\rho ^{k}.\,} באמצעות הסתברויות אלו ניתן לחשב בקלות יחסית את המדדים האחרים: תוחלת ושונות מספר הלקוחות במערכת, שנהוג לסמן כ-L: L ¯ = ρ 1 − ρ {\displaystyle {\overline {L}}={\frac {\rho }{1-\rho }}} σ L 2 = ρ ( 1 − ρ ) 2 {\displaystyle \sigma _{L}^{2}={\frac {\rho }{(1-\rho )^{2}}}} . תוחלת מספר הלקוחות הממתינים בתור (כלומר לקוחות שממתינים ואינם מקבלים שירות): L ¯ Q = ρ 2 1 − ρ {\displaystyle {\overline {L}}_{Q}={\frac {\rho ^{2}}{1-\rho }}} תוחלת מספר הלקוחות המקבלים שירות בכל רגע (במקרה של שרת יחיד גם שקול לניצולת השרת, כלומר ממוצע החלק היחסי מהזמן שהוא משרת לקוחות): L ¯ S = λ x ¯ = ρ {\displaystyle {\overline {L}}_{S}=\lambda {\overline {x}}=\rho } תוחלת משך השהייה במערכת (המתנה בתור וקבלת שירות יחד) ניתנת לחישוב באופן מיידי באמצעות חוק ליטל: W = L ¯ λ = 1 μ − λ {\displaystyle W={\frac {\overline {L}}{\lambda }}={\frac {1}{\mu -\lambda }}} תוחלת משך ההמתנה בתור (לא כולל זמן קבלת השירות) ניתנת גם היא לחישוב באמצעות חוק ליטל: W Q = L ¯ Q λ = W − x ¯ = W − 1 μ = ρ μ − λ {\displaystyle W_{Q}={\frac {{\overline {L}}_{Q}}{\lambda }}=W-{\overline {x}}=W-{\frac {1}{\mu }}={\frac {\rho }{\mu -\lambda }}}