Seyed asgary ghasempouri.ppt

‫روش ي جديد برای آزمون مدل ماشين‬
‫های محدوديت احتمالی‬
‫سيد عسگري قاسمپوري‬
‫استاد پروژه‪ :‬دکتر علي موقر رحيم آبادي‬
‫استاد مشاور‪ :‬دکتر سيد حسن ميريان حسين آبادي‬
‫دانشگاه صنعتی شريف‬
‫دانشکده کامپيوتر‬
‫‪1‬‬
‫‪Sharif university of technology‬‬
‫‪Computer department‬‬
‫از ‪21‬‬
‫مقدمه‬
‫‪‬‬
‫طراحی به روش پيمانه اي و مؤلفه گرا‬
‫‪‬‬
‫‪‬‬
‫تعامل پيمانه ها با يکديگر‬
‫واسط بين پيمانه ها‬
‫‪‬‬
‫زبان هماهنگ سازی ريو‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫معني ريو‬
‫‪‬‬
‫‪‬‬
‫قابل بيان با ماشين محدوديت‬
‫ريو با کانال های گم کننده يا خراب کننده پيام‬
‫‪‬‬
‫‪2‬‬
‫سيستم های همروند مبتنی بر مؤلفه‬
‫کانال ها‬
‫قابل بيان با ماشين محدوديت احتمالی‬
‫‪Sharif university of technology‬‬
‫‪Computer department‬‬
‫از ‪21‬‬
‫چالش ها‬
‫‪‬‬
‫آيا مدار ريو طراحی شده نيازهای سيستم را برآورده می سازد؟‬
‫‪‬‬
‫‪‬‬
‫آيا مدار ريو شامل کانال های گم کننده و خراب کننده نيازهای سيستم را‬
‫برآورده می سازد؟‬
‫‪‬‬
‫‪3‬‬
‫آزمون مدل ماشين محدوديت معادل مدار ريو‬
‫آزمون مدل ماشين محدوديت احتمالي معادل‬
‫‪Sharif university of technology‬‬
‫‪Computer department‬‬
‫از ‪21‬‬
‫رئوس مطالب‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪4‬‬
‫انواع کانال ها در ريو‬
‫مدارهای ريو‬
‫ماشين محدوديت معادل هر کانال‬
‫کانال های گم کننده پيام و ماشين محدوديت احتمالي ساده‬
‫کانال های سنکرون و ماشين محدوديت احتمالي‬
‫بررس ی منطق زمانی )‪(PCTL‬‬
‫نتيجه گيری و کارهای آتی‬
‫‪Sharif university of technology‬‬
‫‪Computer department‬‬
‫از ‪21‬‬
‫انواع کانال درريو‬
‫‪‬‬
‫هر کانال دارای يک سر مبدإ و يک سر مقصد می باشد‪.‬‬
‫‪‬‬
‫کانال ‪ FIFO1‬با ميانگير تک سلولی‬
‫‪‬‬
‫‪‬‬
‫کانال ‪ FIFO‬نامحدود‬
‫‪‬‬
‫‪‬‬
‫داده در سر مبدإ نوشته شده و از سر مقصد خوانده می شود‪.‬‬
‫نوشتن همواره فعال است ولی خواندن زمانی که ميانگير پر باشد فعال است‪.‬‬
‫کانال سنکرون‬
‫‪‬‬
‫نوشتن در مبدإ مستلزم خواندن همزمان داده در مقصد است (برای هماهنگ سازی)‬
‫کانال سنکرون‬
‫‪5‬‬
‫کانال ‪ FIFO‬نامحدود‬
‫‪Sharif university of technology‬‬
‫‪Computer department‬‬
‫کانال ‪FIFO1‬‬
‫از ‪21‬‬
‫انواع کانال (ادامه ‪)...‬‬
‫‪‬‬
‫کانال های سنکرون‬
‫‪‬‬
‫مانی فعال است که در سر مقصد بطور همزمان‬
‫‪d‬‬
‫تصفيه کننده ‪ :P‬نوشتن ‪ P‬ز‬
‫داده خوانده شود‬
‫‪‬‬
‫‪‬‬
‫نوشتن همواره فعال است ولی داده دور ريخته مي شود‬
‫اگر‪d  P‬‬
‫توليد کننده ‪ :P‬اگر داده ای در سر مبدإ نوشته شود‪ ،‬يکی از داده های موجود در‬
‫‪ P‬بطور همزمان در مقصد خوانده می شود‪.‬‬
‫‪P‬‬
‫کانال توليد کننده ‪P‬‬
‫‪6‬‬
‫‪P‬‬
‫کانال تصفيه کننده ‪P‬‬
‫‪Sharif university of technology‬‬
‫‪Computer department‬‬
‫از ‪21‬‬
‫مدارريو‬
‫‪‬‬
‫گرافی است شامل‪:‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫گره ها‪ :‬مجموعه های غير تهی از سر کانال ها‬
‫يال ها‪ :‬کانال های بين گره ها‬
‫انواع گره در ريو‪:‬‬
‫‪‬‬
‫گره مبدإ‪ :‬فقط شامل سرهای مبدإ کانال ها مي باشد‬
‫‪‬‬
‫‪‬‬
‫گره مقصد‪ :‬فقط شامل سرهای مقصد کانال ها می باشد‬
‫‪‬‬
‫‪‬‬
‫نوشتن در گره مبدإ ‪ A‬زمانی موفقيت آميز خواهد بود که تمام سرهای مبدإ متالقی در ‪ A‬داده را بپذيرند و در آن صورت داده بر‬
‫روی آن سرها نوشته خواهد شد (تکرار کننده)‬
‫خواندن در گره مقصد ‪ A‬زمانی موفقيت آميز است که حداقل يکی از سر کانال های موجود در ‪ A‬داده مفيد ارائه کند (ادغام‬
‫کننده غير قطعی)‬
‫گره مرکب‪ :‬شامل سرهای مبدإ و مقصد کانال ها می باشد‬
‫‪‬‬
‫يک داده مفيد که بوسيله يکي از سرهاي مقصد ارائه شده دريافت گشته و در تمام سرهاي مبدإ منقطع در ‪ A‬نوشته مي شود‬
‫گره مرکب‬
‫‪7‬‬
‫گره مبدإ‬
‫‪Sharif university of technology‬‬
‫‪Computer department‬‬
‫گره مقصد‬
‫از ‪21‬‬
‫مدارريو (يک مثال)‬
‫‪‬‬
‫گره ‪ A‬مبدإ‪ B ،‬مقصد‪ C ،‬و ‪ D‬مرکب می باشند‬
‫)‪ (A,C‬کانال فيلتر با الگوی }‪ P={0‬و )‪ (A,D‬کانال فيلتر‬
‫با الگوی }‪ P={1‬می باشد‬
‫)‪ (C,B‬توليد کننده ‪ 1‬و )‪ (D,B‬توليد کننده ‪ 0‬است‪.‬‬
‫‪‬‬
‫اگر داده ‪ 0‬در ‪ A‬نوشته شود کانال )‪ (A,C‬آن را عبور می‬
‫دهد ولی کانال )‪ (A,D‬آن را از بين می برد‪.‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫اگر داده ‪ 1‬در ‪ A‬نوشته شود کانال )‪ (A,D‬آن را عبور می‬
‫دهد ولی کانال )‪ (A,C‬آن را از بين می برد‪.‬‬
‫‪‬‬
‫‪8‬‬
‫در گره ‪ C‬مقدار ‪ 0‬دريافت شده و مقدار ‪ 1‬در ‪ B‬خوانده می‬
‫شود‬
‫در گره ‪ D‬مقدار ‪ 1‬دريافت شده و در گام بعدی مقدار ‪ 0‬در ‪B‬‬
‫خوانده می شود‬
‫‪Sharif university of technology‬‬
‫‪Computer department‬‬
‫از ‪21‬‬
‫ماشين محدوديت‬
‫‪‬‬
‫يک سيستم حالت‪-‬گذار برچسب دار شامل‪:‬‬
‫‪ ‬حالت‪ :‬بيان گر پيکربندی مدار ريو متناظر (وضعيت ميانگير ها در هر لحظه)‬
‫‪ ‬گذار‪ :‬بر چسب دار با جفت >‪<N, g‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪9‬‬
‫‪ N‬گره های مدار ريو معادل است که جريان داده بطور همزمان در آن مشاهده می گردد‪.‬‬
‫‪ g‬شرطي بر روی داده های مشاهده شده مي باشد‬
‫گذاری که از حالت ‪ q‬بيرون می آيد نشان دهنده جريان داده ممکن در پيکربندی مربوطه و تأثير آن بر‬
‫پيکربندی است‬
‫‪Sharif university of technology‬‬
‫‪Computer department‬‬
‫از ‪21‬‬
‫ماشين محدوديت کانال ‪FIFO1‬‬
‫‪‬‬
‫فرضيات‪:‬‬
‫‪‬‬
‫‪‬‬
‫‪10‬‬
‫دامنه داده فقط ‪ 0‬و ‪ 1‬می باشد‬
‫‪ A‬سر مبدإ و ‪ B‬سر مقصد است‬
‫‪Sharif university of technology‬‬
‫‪Computer department‬‬
‫از ‪21‬‬
‫احتمال درماشين محدوديت‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪11‬‬
‫داده نوشته شده در سر مبدإ گم شود و با‬
‫در کانال ‪ FIFO‬با احتمال ‪‬‬
‫‪ 1‬درستی در ميانگير قرار گيرد‬
‫‪‬به‬
‫داده‬
‫احتمال ‪‬‬
‫داده ذخيره شده در ميانگير در يکی از گام ها‬
‫در کانال ‪ FIFO‬با احتمال ‪‬‬
‫گم شود و با احتمال گم نشود‪1 ‬‬
‫داده‬
‫در کانال سنکرون داده نوشته شده در سر مبدإ ‪ A‬با احتمال با ‪‬‬
‫خوانده شده در سر مقصد ‪ B‬متفاوت باشد‬
‫‪Sharif university of technology‬‬
‫‪Computer department‬‬
‫از ‪21‬‬
‫کانال ‪ FIFO1‬با خطای نوشتن‬
‫‪‬‬
‫‪12‬‬
‫با احتمال ‪‬داده قبل از قرار گرفتن در ميانگير گم می شود‬
‫‪Sharif university of technology‬‬
‫‪Computer department‬‬
‫از ‪21‬‬
‫کانال ‪ FIFO1‬با خطای گم کردن‬
‫‪‬‬
‫‪13‬‬
‫با احتمال ‪‬داده نوشته شده در ميانگير گم می شود‬
‫‪Sharif university of technology‬‬
‫‪Computer department‬‬
‫از ‪21‬‬
‫کانال سنکرون خراب کننده پيام‬
‫‪‬‬
‫‪14‬‬
‫داده نوشته شده در ‪ A‬با احتمال خ‪‬راب می گردد‬
‫‪Sharif university of technology‬‬
‫‪Computer department‬‬
‫از ‪21‬‬
‫کانال سنکرون خراب کننده تصادفی‬
‫‪‬‬
‫‪15‬‬
‫به ازاي هر داده ای که در سر مبدإ کانال نوشته شود بطور همزمان يکی از‬
‫داده های تصادفی موجود در دامنه را توليد می کند و در سر مقصد‬
‫خوانده می شود‬
‫‪Sharif university of technology‬‬
‫‪Computer department‬‬
‫از ‪21‬‬
‫کانال سنکرون گم کننده احتمالی‬
‫‪‬‬
‫‪16‬‬
‫داده نوشته شده در ‪ A‬با احتمال گم‪ ‬می شود‬
‫‪Sharif university of technology‬‬
‫‪Computer department‬‬
‫از ‪21‬‬
PCTL ‫منطق زمانی‬
‫فرمول های حالت‬

‫است‬s ‫ار‬
‫برقر‬
‫اي تمام‬
S
s ‫ ب‘ر‬true 
a  L (s ) ‫اگگر‬

s‘ a
s ‘ 1  2 
s ‘ 1  s ‘ 2
‫اگگر‬
s ‘ 
Probs ({  Paths |  ‘  ) ~ p
‫اگگر‬
s ‘ 
s ‘ P~ p [ ]
‫اگگر‬


‫فرمول های مسير‬
 (1) ‘ 
i  t ,( (i ) ‘ 2   ( j ) ‘ 1 , j  i )
k  0,  ‘ 1 U k 2
21 ‫از‬
Sharif university of technology
Computer department

‫اگگر‬
‘ X 
 ‘ 1 U  t2 
‫اگگر‬
 ‘ 1U2
‫اگگر‬

17
‫نتيجه گيری و کارهای آتي‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫ضرورت استفاده از ريو برای اتصال مؤلفه ها‬
‫آزمون مدل برای ماشين محدوديت احتمالي‬
‫بسط منطق زمانی ‪ PCTL‬برای ماشين محدوديت‬
‫روش های پيشنهادی‪:‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪18‬‬
‫تبديل ماشين محدوديت به زنجيره پيوسته زمان مارکوف و استفاده از الگوريتم‬
‫های آزمون مدل آن‬
‫ايجاد الگوريتم های آزمون مدل برای ماشين محدوديت‬
‫مقايسه دو روش‬
‫پياده سازی ابزار بر اساس روش کاراتر‬
‫‪Sharif university of technology‬‬
‫‪Computer department‬‬
‫از ‪21‬‬
‫مراجع‬
1.
2.
3.
4.
5.
6.
7.
21 ‫از‬
Arbab F., Reo: A channel-based coordination model for component composition.
Mathematical Structures in Computer Science, 14(3):1–38, 2004.
Arbab F., Baier C., de Boer C., and Rutten J., Models and temporal logics for timed
component connectors. In Proc. SEFM’04. IEEE CS Press, 2004.
Arbab F., Baier C., Rutten J., and Sirjani M., Modeling component connectors in reo by
constraint automata. Science of Computer Programming, special issue on Foundations
of Coordination Languages and Software Architectures (to appear), 2005. see
http://web.informatik.unibonn.de/I/baier/publikationen.html.
Arbab F., and Rutten J., A coinductive calculus of component connectors. In Recent
Trends in Algebraic Development Techniques, Proc. 16th Int. Workshop on Algebraic
Development Techniques (WADT 2002), volume 2755 of LNCS, pages 35–56, 2003.
Aziz A., Sanwal K., Singhal V., Brayton R., Verifying continuous time Markov chains. In
R. Alur and T. Henzinger, editors, Proc. 8th International Conferenec on Computer Aided
Verification (CAV 96), Volume 1102 of LNCS, pages 269-276. Springer 1996.
Aziz A., Singhal V., Balarin F., Brayton R., Sangiovanni-Vincentelli A., It usually works:
The temporal logic of stochastic systems. In P. Wolper, editor, Proc. 7th International
Conference on Computer Aided Verification (CAV 95), Volume 939 of LNCS, pages 155165. Springer 1995.
Baier C.,Katoen J., Hermanns H., Approximate symbolic model checking of continuoustime Markov chains. In J. Baeten and S. MAuw, editors, Proc 10th International
Conference on Concurrency Theory (CONCUR 99), volume 1664 of LNCS, pages 146161. Springer, 1999.
Sharif university of technology
Computer department
19
‫مراجع‬
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
21 ‫از‬
Ciancarini P., Coordination models and languages as software integrators. ACM Comput. Surv.,
28(2):300–302, 1996.
CIM. http://www.almende.com/cim/.
Clarke D., Costa D., and Arbab F., Modeling coordination in biological systems. In Proc. of the Int.
Symposium on Leveraging Applications of Formal Methods (ISoLA 2004), 2004.
de Boer F.S., Bonsangue M.M., Graf S., and de Roever W.-P., editors. Formal Methods for
Components and Objects, volume 2852 of LNCS. Springer, 2003.
Diakov N., and Arbab F., Compositional construction of web services using Reo. In Proc. International
Workshop on Web Services: Modeling, Architecture and Infrastructure (ICEIS 2004), Porto, Portugal,
April 13-14, 2004.
Gelernter D., and arriero N., Coordination languages and their significance. Commun. ACM, 35(2):97–
107, 1992.
Hansson H., Jonsson B., A logic for reasoning about time and probability. Formal Aspect of
Computing, 6(5):512-535,1994.
Kemeny J., Snell J., Knapp A., Denumerable Markof Chains. D. Van Nostrand Company, 1996.
Nierstrasz O., Gibbs S., and Tsichritzis D., Component-oriented software development. Commun.
ACM, 35(9):160–165, 1992.
Omicini A., Zambonelli F., Klusch M., and Tolksdorf R., editors. Coordination of Internet Agents:
Models, Technologies, and Applications. Springer, 2001.
Zlatev Z., Diakov N., and Pokraev S., Construction of negotiation protocols for E-Commerce
applications. ACM SIGecom Exchanges, 5(2):11–22, November 2004.
Sharif university of technology
Computer department
20
‫سئوالت ؟‬
21 ‫از‬
Sharif university of technology
Computer department
21