سیستم های وقایع گسسته
Download
Report
Transcript سیستم های وقایع گسسته
سمینار درس
کنترل پیشبین مبتنی بر مدل ()MPC
کنترل پیشبین مبتنی بر مدل در سیستم های وقایع گسسته
MPC on Discrete Event Systems
استاد درس :دکتر فرزاد توحید خواه
ارائه دهنده :گلناز بغدادی
فهرست مطالب
• مقدمه ای بر سیستم های وقایع گسسته
• دلیل معرفی سیستم های وقایع گسسته
• مثالهایی از انواع سیستم های وقایع گسسته
• مدلسازی سیستم های وقایع گسسته
• معرفی انواع روشهای مدلسازی سیستم های وقایع گسسته
• مقایسه انواع روشهای مدلسازی
• ارائه مثالهایی از مدل های پرکاربرد در مدلسازی سیستم های وقایع گسسته صنعتی و
بیولوژیکی
• کنترل پیشبین مبتنی بر مدل در سیستم های وقایع گسسته
• بیان تفاوت مفاهیم کنترلی در سیستم های وقایع گسسته
• شرح نحوه اعمال کنترل پیشبین برروی انواعی از مدلهای ارائه شده
• مقایسه الگوریتم یادگیری تقویت شده با کنترل پیشبین مبتنی بر مدل
• کاربرد الگوریتم یادگیری تقویت شده در سیستم های وقایع گسسته
مقدمه ای بر
سیستم های وقایع گسسته
سیستم های وقایع گسسته ( )DEVSدر سال 1976توسط دکتر برنارد زیگلر ( )B. Zeiglerمعرفی شدند
لغت "گسسته" به معنای "گسسته بودن زمان" و یا به معنای "گسسته بودن حالت ها" نیست.
Discrete state
x3
CVDS
x4
Holding
time
time
e6
e5
x2
x5
x1
e3 e4
e2
e1
دینامیک چنین سیستم هایی را رویداد ها می سازند که ممکن است این رویداد ها زمانی که آغاز می شوند دارای سیر تکاملی
گسسته و یا پیوسته باشند.
تمرکز اولیه ،برروی شروع و پایان چنین رویداد هایی است ،زیرا هر پایانی باعث یک شروع جدید می شود
مثال (یک سیستم تولید)
رویداد ها :ماشین شروع به کار می کند ،خراب می شود ،کارش تمام
شده است ،تعمیرش به اتمام رسیده است.
حالت ها :ماشین بیکار است ،در حال انجام کار است ،خراب شده
است ،در دست تعمیر است.
انتقال بین حالت ها با رویداد ها برچسب می خورند.
x3
ماشین در حال انجام کار است
x4
x2
x1
time
e5
e4
e3
e2
e1
ماشین در حال انجام کار است
ماشین بیکار است
zi g i ( z i , u i , t )
…
x1
Switching Time
x2
xi
Temporal State, x
xi+1 = fi(xi,ui,t)
7
مثال های دیگر
فرایند های تجاری” :ورود اسناد“" ،پردازش یک سند” و ...
کنترل زمانبندی ورود اسناد و مراحل انجام کار و استفاده از منابع جهت جلوگیری از ایجاد صف های از اسناد که
نیاز به پردازش دارند.
شبکه های ارتباطی” :تماسهای تلفنی“” ،رسیدن یک فایل برای پرینت“” ،تقاضا از سرور برای تحویل یک صفحه
معین“.... ،
کنترل ترافیک موجود برروی لینک های ارتباطی ،بهینه سازی ساختار شبکه و انتخاب طول مناسبی از صف
سیستم های کامپیوتری :درخواست استفاده از ابزارهای ورودی و خروجی همانند کنترلر شبکه ،دستورالعمل
های ماشین و....
کنترل اولویت بندی و انتخاب مسیر اجرای عملیات و تخصیص منابع
سیستم های تولیدی :ورود مواد اولیه ،بیکار شدن ماشین ،شروع به کار ماشین... ،
کنترل در جهت به اتمام رسیدن تولید مشخص در یک زمان مشخص ،جلوگیری از پر شدن بافر ها
سیستم های بیولوژیکی :رسیدن اطالعات سنسوری مختلف به مغزو اعصاب ،تغییرات غلظت عناصر شیمیایی
مختلف در خون یا بافت های دیگر
کنترل در جهت اولویت بندی پردازش اطالعات سنسوری ،انتخاب مسیر مناسب جهت پاسخ.... ،
سیستم حمل و نقل
سیستم های صف
مسائل مطرح در سیستمهای وقایع گسسته
وظایف متعددی وجود دارد که ممکن است الزم باشد بعض ی از آنها حتما انجام شوند.
ممکن است الزم باشند بعض ی وظایف با ترتیب خاص ی انجام شوند.
ممکن است الزامی به اجرای بعض ی از وظایف نباشد.
گاهی ممکن است بین اجرای دو وظیفه باالجبار انتخابی انجام شود.
مجموعه ای از منابع وجود دارد که ممکن است بین عناصر موجود در سیستم های وقایع گسسته به اشتراک
گذاشته شود.
فرایند رویداد ها که توصیف کننده یک سیستم وقایع گسسته است توسط یک برنامه کنترلی اداره و اجرا می
شوند.
مدلسازی سیستم های
وقایع گسسته
روشهای مدلسازی متعددی برای توصیف سیستم های وقایع گسسته ارائه
شده است:
• مدلهای جبری-ماکس پالس
• شبکه های پتری
• مدلهای تصادفی مانند مدلهای مارکوف
• ...
مدلهای جبری ماکس-پالس
13
مثال :سیستم تولید نشان داده شده در شکل زیر را در نظر بگیرید .این سیستم متشکل از 3واحد (ماشین) پردازشگر است .هر واحد
فقط زمانی برروی یک محصول شروع به کار می کند که پردازش قبلی برروی محصول به پایان رسیده باشد .همچنین فرض می شود که
هر واحد به محض اینکه تمامی قطعات حاضر شود شروع به کار می کند.
p1=1, p2=2, p3=2
t2=1
t3=3
t1=1
:u(k) نشان دهنده لحظه زمانی است که در آنها بسته ای از مواد خام برای سیکل ) (k+1ام به سیستم داده می شود.
:xi(k) نشان دهنده لحظه زمانی است که در آن واحد iدر سیکل kام شروع به کار می کند.
:y(k) نشان دهنده لحظه زمانی است که در آن محصول kام سیستم را ترک می کند .
14
15
خصوصیات جبر ماکس-پالس
• مناسب برای بررس ی زمان بندی سیستم های وقایع گسسته
• مناسب برای برنامه ریزی و آنالیز زمانبندی های پیچیده
• متخصصین این حوزه در فرانسه ،هلند و چین هستند
16
)Carl Adam Petri(1939)( شبکه های پتری
17
اجزای تشکیل دهنده یک مدل پتری کالسیک
•
•
•
•
•
•
•
•
•
Places
Transitions
Direct arcs
Input places
Output places
Tokens
Consume token
Produce token
Marking
p1
t1
p2
state transition of form (1, 0) (0, 1)
p1 : input place
p2: output
place
18
مثال
• Finite tree
• Infinite tree
20
چراغ راهنما
21
red1
red2
yr1
yr2
yellow1
rg1
gy1
yellow2
rg2
gy2
green1
green2
Two safe traffic lights
red1
red2
safe
yr1
yr2
yellow1
rg1
gy1
yellow2
rg2
gy2
green1
green2
22
Two safe and fair traffic lights
red1
red2
safe2
yr1
yr2
yellow1
rg1
yellow2
gy1
rg2
gy2
safe1
green1
green2
23
Example: life-cycle of a person
child
puberty
marriage
bachelor
married
divorce
death
dead
Current State
Reachable State
Dead State
24
اضافه کردن وزن به اتصاالت
br
red
black
2H2 + O2 2H2O
rr
bb
2
t
H2
2
H2O
O2
25
26
p1 t1
•
•
•
•
•
•
p2 t2
Sequential Execution
Synchronization
Merging
Concurrency
Conflict
Confusion
t1
p3
مسائل مطرح در رویداد ها
27
شبکه های پتری رنگی
28
شبکه های پتری زمانی
FIFO
29
مدل چراغ راهنما با شبکه های پتری زمانی
30
شبکه های پتری سلسله مراتبی
Unfolding
: مولفه بیان نمود5 یک شبکه پتری کالسیک را می توان با
•
•
•
•
•
S is a set of places
T is a set of transitions
F is a set of arcs s.t.
M0 is an initial marking
W is the set of arc weights
:به این ترتیب معادالت حالت سیستم به صورت زیر قابل بیان است
M’ = M0 + WT * σ
Where
is how many times each transition
fires
WT state transition matrix
1
2
C
W
0
0
0
1
1
0
1
1
1
0
0
1
0
2
• S={p1,p2,p3,p4}
T={t1,t2,t3,t4}
• F={(p1,t1) (p2,t2) (p3,t3)
(p4,t4) (t1,p2)(t2,p3)(t2 p4)
(t3,p1) (t4,p2)}
M0 Initial state (1,1,2,1)
σ Firing sequence (t2 t3 t1 t4)
Mn Final state (1,3,2,0)
حالت اولیه
حالت نهایی
1 1 1
3 1 2
2 2 0
0 1 0
تعداد تکرار دنباله رویداد ها
0
1
1
0
1
1
1
0
0 1
1 1
*
0
1
2 1
34
خصوصیات شبکه های پتری
• امکان نمایش محدود از حالت های نامحدود حالت ماشین ها
• مناسب برای مسائل با سایز کوچک
• مراجع و شواهد متعددی در مورد این مدل و کاربردهای آن در مدلسازی
سیستم های تولیدی و صنعتی وجود دارد.
Example: In a Restaurant (Scenario 1)
Waiter
free
Customer 1
Customer 2
Take
order
Take
order
wait
Order
taken
wait
eating
eating
Serve food
Tell
kitchen
Serve food
35
Example: In a Restaurant (Scenario 2)
Waiter
free
Customer 1
Customer 2
Take
order
Take
order
wait
Order
taken
wait
eating
eating
Serve food
Tell
kitchen
Serve food
36
مقایسه مدلهای معرفی شده
سیستم های جبر ماکس-پالس (برنامه ریزی و زمان بندی)
شبکه های پتری (توالی و تکرار رویداد ها)
37
به کار گیری شبکه های پتری در مدلسازی شبکه های بیولوژیکی
Wnt signaling pathway
38
کنترل پیشبین مبتنی بر مدل در
سیستم های وقایع گسسته
PLANT
EVENT-DRIVEN
DYNAMICS
TIME-DRIVEN
DYNAMICS
CONTROLLER
l
m
A
l
m
B
m
l
l
m
l
C
l
2m
42
کنترل پیشبین مبتنی بر مدل در سیستم های جبر خطی ماکس-پالس
کنترل پیشبین مبتنی بر مدل در سیستم های جبر خطی ماکس-پالس
تابع هزینه در سیستم های کالسیک
که دراین روابط rسیگنال مرجع (زمان نهایی مورد انتظار برای تولید محصول) Np ،افق پیش بین y(k+j|k) ،
تخمین خروجی در زمان k+jبر اساس اطالعات موجود در زمان λ ، kیک عد اسکالر که درجه اهمیت سیگنال
کنترل نسبت به خطا را نشان می دهد و ) u(k+j-1سیگنال کنترل است
اگر زمانی نهایی مورد نظر Rبرای تولید محصوالت مشخص باشد و اگر برای هر مقدار تاخیر بعد از این زمان
تعیین شده مجبور به پرداخت جریمه باشیم بخش JOUTدر تابع هزینه را می توان به صورت زیر برای
سیستم های وقایع گسسته خطی ماکس –پالس تعریف نمود:
اگر عالوه بر شرایط قبلی ،برای مثال با محصووالت فاسود شودنی روبورو باشویم کوه نتووانیم آنهوا را زود تور از تواری
تعیین شده تولید کنیم آنگاه تابع هزینه را می توان به صورت زیر تعریف نمود:
و یا اگر فقط بخواهیم که زمان تولید را به یک حالت تعادل برسانیم می توان از تابع هزینه زیر استفاده نمود:
در مورد بخش JINنیز به صورت زیر عمل می شود:
تعریف شد ،اما در مورد سیستم های
معیار هزینه ورودی در سیستم های کالسیک به صورت
وقایع گسسته خطی ماکس -پالس مینیمم کردن این تابع منجر به کوچک کردن لحظات زمانی ورودی می شود .که
ممکن است نتیجه آن سرریز بافر ورودی باشد .بنابراین به نظر می رسد که بهتر باشد تابع ورودی ماکسیمم شود .در
مورد سیستم های تولیدی به این معنا است که مواد خام با حداکثر تاخیر ممکن به سیستم داده شود.
که در نتیجه آن سایز بافر ورودی نیز می تواند کوچک گرفته شود .همچنین سر ریز شدن ممکن است باعث
ناپایداری در سیستم شود .به این ترتیب به نظر می رسد که برای سیستمهای وقایع گسسته MPLبهتر است تابع
هزینه ورودی به صورت زیر تعریف شود که دقیقا مخالف سیستم های کالسیک زمان گسسته خطی است.
اما در مورد سیستم های وقایع گسسته MPLمولفه ) u(k+jداللت بر زمان دادن ورودی (مواد
خام) به سیستم در رویداد k+jام دارد به این ترتیب با افزایش jبدیهی است که زمان نیز افزایش می
یابد و ثابت ماندن این زمان از یک رویدادی به بعد ،بی معنا به نظر می رسد .بنابراین در این سیستم ها
این مسئله به این صورت تغییر داده می شود که به جای زمان ورودی ،نرخ تغییرات زمان ورودی در نظر
گرفته می شود ،به بیان دیگر:
قیود
extended linear complementarity problem (ELCP)
تعاریف کنترلی در سیستم های وقایع گسسته
پایداری :یک سیستم وقایع گسسته پایدار است اگر در سطح تمامی بافر هایش محدود باقی بماند .همچنین تاخیر بین زمان
تولید محصول و زمان مورد انتظار (مطلوب) نیز محدود باشد.
به این ترتیب می توان گفت در مورد یک سیستم SISOروابط زیر برقرار باشد پایداری سیستم تضمین می شود:
که در این روابط Myr, Mry, Myuمقادیری ثابت محدود و ) y(kزمان تولید خروجی در رویداد kام و ) r(kزمان مطلوب و
مورد انتظار برای تولید محصول است.
یک مسئله مهم در اینجا این است که پایداری یک ویژگی ذاتی سیستم نیست و به تاری و زمان شروع دادن ورودی و زمان پایان تولید
خروج دارد.
تعاریف کنترلی در سیستم های وقایع گسسته
امکان پذیری :زمانی که هیچگونه پاسخی برای ) u(kبدست نیاید می گوییم کنترل این سیستم امکان پذیر نیست .این حالت
در صورت تداخل قیود اتفاق می افتد .که می توان تعدادی از قیود را با توجه به اولویتشان بازتر نمود.
انتخاب دنباله زمان پایان )r(k
کنترل پیشبین مبتنی بر مدل در شبکه های پتری
The derivative of firing vector represents the flow of the timed model
The flow of the forced (or controlled) timed contPN will be denoted
کنترل پیشبین مبتنی بر مدل در شبکه های پتری
حالت اولیه
تعداد تکرار دنباله رویداد ها
0 1
1 1
*
0
1
2 1
1
0
0
1
1
1
0
1
1 1 1
3 1 2
2 2 0
0 1 0
حالت نهایی
کنترل پیشبین مبتنی بر مدل در شبکه های پتری
مثال
مقایسه الگوریتم یادگیری
تقویت شده با کنترل پیشبین
مبتنی بر مدل
الگوریتم یادگیری تقویت شده
Reinforcement Learning
در يادگیری تقويتی))Reinforcement earningسيستم تالش میکند تا تقابالت خود با
يک محيط پويا را از طريق خطا و آزمايش بهينه نمايد .در يادگیری تقويتی هيچ نوع زوج
ورودی -خروجی ارائه نمیشود .به جای آن ،پس از اتخاذ يك عمل ،حالت بعدی و پاداش
بالفصل به عامل ارائه میشود .هدف اوليه برنامهريزی عاملها با استفاده از تنبيه و
تشويق است بدون آنکه ذکری از چگونگی انجام وظيفه آنها شود.
یادگیری تقویتی از اینرو مورد توجه است که راهی برای آموزش عاملها برای انجام یک عمل
از طریق دادن پاداش و تنبیه است بدون اینکه الزم باشد نحوه انجام عمل را برای عامل
مشخص نمائیم.
الگوریتم یادگیری تقویت شده
Reinforcement Learning
در یک مسئله RLاستاندارد با اجزای اصلی زیر روبرو هستیم:
عامل
که قرار است یادگیری را از طریق تعامل با محیط انجام دهد .برای اینکار باید
◦ اعمالی که عامل میتواند در محیط انجام دهد مشخص باشند.
محیط
برای محیط باید مشخصه های زیر تعیین شوند:
◦
◦
وضعیت
پاداش
Agent
Policy
Reward
Action
Environment
عامل میتواند از طریق ورودیهایش تشخیص دهد که در چه وضعیتی قرار دارد.
عامل در وضعیت Stعمل atرا انجام میدهد .اینکار باعث میشود وضعیت
a2 : r 2
محیط به St+1تغییر نماید .در اثر این تغییر وضعیت عامل سیگنال
reinforcementو یا پاداش rt+1را از محیط دریافت می نماید.
این محیط باید قابل مشاهده ویا حداقل تا قسمتی قابل مشاهده برای
عامل باشد ). (partially observable
مشاهده محیط ممکن است از طریق خواندن اطالعات یک سنسور،
توضیح سمبلیک و غیره باشد.
عمل یادگیری عبارت است ازیاد گرفتن یک سیاست که در واقع نگاشتی از
وضعیت به عمل است به نحوی که استفاده از این سیاست برای انتخاب
اعمال منجر به دریافت پاداش حداکثر از محیط گردد.
State
0
1
s0
0 s 1
1 s 2
a :r
a :r
} t ( s , a ) Pr{ a t a | s t sسیاست
الگوریتم یادگیری تقویت شده
Reinforcement Learning
در RLوقتی عامل در یک حالت خاص عملی را انجام
میدهد ،در مقابل پاداش (reward or
)reinforcementدریافت میکند .در این سیستم عامل
وظیفه دارد تا پاداش دریافتی در دراز مدت را حداکثر
نماید.
یکی از نکات طراحی یک سیستم RLتعریف یک
reinforcement functionمناسب با اهداف عامل
است.
پاداش
اگر دنباله ای از پاداش ها بصورت زیر موجود باشند:
rt 1 , rt 2 , rt 3 ...
عامل باید سعی نماید تا پاداشی را که از محیط دریافت میکند حد اکثر
نماید .در واقع امید ریاضی پاداش را به حداکثر میرساند.
} E { rt
در بسیاری از مسایل تعامل با محیط بصورت اپیزودی انجام میشود.
مثال روباتی که قرار است خروج از اتاق را یاد بگیرد به محض
خارج شدن از اتاق یک اپیزود یادگیری خاتمه می یابد .لذا کل پاداشی
که با شروع از یک حالت Stو رسیدن به حالت نهائی ( خاتمه اپیزود
یادگیری) STبدست می آید برابر است با:
R t r t 1 rt 2 ... rT
در نظر گرفتن پاداشهای آینده
اگر پاداش Rtمجموع پاداشی باشد که عامل با شروع از زمان t
میتواند جمع کند به طرق مختلف میتوان این پاداش را محاسبه نمود.
یک راه بصورت زیر است که در آن به پاداشهای نزدیکتر ارزش
بیشتری داده میشود.
0 1
r
k
t k 1
...
k 0
2
t3
r
t2
r
t 1
+50
r
t
R
+3
-1 -1
r9
r4 r5
3 ... 1 1 ... 50
8
60
r1
4
1
9
R
یکی از نکات مهم در انتخاب عمل نحوه لحاظ کردن رخداد های آینده در تصمیم فعلی
عامل است .برای اینکه یک عامل بتواند تاثیر رخدادهای آینده در انتخاب عمل مناسب
برای حالت فعلی را در نظر بگیرد مدلهای مختلفی پیشنهاد شده است:
finite horizon
ساده ترین مدل این است که عامل برای انتخاب عمل مقادیر پاداشی را که در hمرحله
بعد میگیرد محاسبه نموده و عملی را انتخاب نماید که مجموع پاداش را حداکثر نماید.
h
tk
r
)
k 0
t
V (S
(discounted cumulative reward) infinite horizon
در این روش بجای hمرحله ،پاداش درازمدت دریافتی در نظر گرفته میشود .این روش
بسیار مرسوم بوده و به پاداشهائی که در آینده گرفته خواهد شد ارزش کمتری نسبت
به پاداشهای فوری داده میشود.
0 1
61
r
k
tk
k 0
...
2
t2
r
t 1
r r
t
)
t
V (S
average reward
در این روش فرقی بین پاداشهای نزدیک و دور در نظر گرفته
نمیشود.
1
h
tk
r
k 0
h
h
lim
)
t
V (S
هدف یادگیری تقویتی این است که یک خط مش ی بهینه ای مثل * پیدا نماید به نحویکه مقدار
امید ریاض ی فوق را برای تمامی حاالت ماکزیمم کند.
در واقع RLسعی دارد عامل را وادار کند در اثر تجربه با محیط سیاست خود را تغییر داده و طوری
رفتار نماید که در دراز مدت پاداش بیشتری کسب نماید.
62
Reinforcement learning example
Start
S2
S4
S3
Arrows indicate
strength between
two problem
states
Start maze …
S8
S5
S7
Goal
Start
S2
The first response
leads to S2 …
S4
S3
S8
S7
The next state is
chosen by randomly
sampling from the
possible next states
weighted by their
associative strength
Associative strength =
line width
S5
Goal
Start
S2
S4
S3
S8
S5
Suppose the randomly
sampled response
leads to S3 …
S7
Goal
Start
S2
At S3, choices lead to
either S2, S4, or S7.
S4
S3
S8
S5
S7 was picked
(randomly)
S7
Goal
Start
S2
By chance, S3 was
picked next…
S4
S3
S8
S5
S7
Goal
Start
S2
Next response is S4
S4
S3
S8
S5
S7
Goal
Start
S2
And S5 was chosen
next (randomly)
S4
S3
S8
S5
S7
Goal
Start
S2
And the goal is
reached …
S4
S3
S8
S5
S7
Goal
مقایسه الگوریتم یادگیری تقویت شده با کنترل پیش
بین مبتنی بر مدل
Reinforcement learning and model predictive control are two families of control
techniques which tackle control problems by formalizing them as optimal
control problems.
While MPC techniques assume that a model of the optimal control problem
is available, reinforcement learning techniques assume that the only information
available from the model is the one gathered from interaction with the system.
مدلهای مارکو
با تشکر از توجه شما