آلات الحالات المنتهية – إشارة المرور والأوتومات الحتمي وغير الحتمي واللغات النمطية
علوم الحاسوبالخوارزميات وحل المشكلات15–16 سنة
جارٍ التحميل…
سجّل الدخول للتشغيلشغّل آلات حالات جاهزة (إشارة مرور، آلة بيع، بوابة دوارة) خطوة بخطوة على سلسلة من الأحداث، ولاحظ الحالة الحالية والمخرج وجدول التتبع؛ وأضف حالات واسحبها واربطها لترسم آلتك الخاصة. ويختبر وضع «آلة القبول» الكلمات التي يقبلها أوتومات منتهٍ حتمي (DFA) أو غير حتمي (NFA)، مثل الأعداد الثنائية القابلة للقسمة على 3 والكلمات المنتهية بـ ab، مع جدول انتقال الحالات وتعبير نمطي وقواعد نمطية مكافئة وتحويل NFA إلى DFA. وتقارن ملاحظة كل نموذج بالنظام الحقيقي لمناقشة التجريد.
الدرس: آلات الحالات المنتهية: الحالات والانتقالات والمخرجات؛ الأوتومات المنتهي الحتمي وغير الحتمي؛ التعابير النمطية والقواعد النمطية
ماذا تعرض
لآلة الحالات المنتهية مجموعة منتهية من الحالات، وحالة بداية، وأبجدية مدخلات، وانتقالات على الصورة: حالة + رمز → الحالة التالية. وهي لا تتذكر شيئًا سوى حالتها الحالية. تُصدر آلة ميلي مخرجاتها على الانتقالات، وتربط آلة مور المخرجات بالحالات، أما آلة القبول فتجيب بنعم أو لا: هل تنتمي الكلمة إلى لغة ما؟ واللغات التي تقبلها الأوتومات المنتهية هي بالضبط اللغات النمطية، التي تصفها أيضًا التعابير النمطية والقواعد النمطية. ويمكن تحويل كل NFA إلى DFA مكافئ ببناء المجموعات الجزئية.
طريقة الاستخدام
في وضع «آلة ذات مخرجات» اختر «آلة نموذجية» وانقر «خطوة» أو «تشغيل» لإدخال رموز الشريط واحدًا تلو الآخر؛ وترسل أزرار الرموز أحداثًا إضافية. في وضع «آلة القبول» اختر «أوتومات نموذجي»، واكتب «كلمة الإدخال» وتتبّعها خطوة بخطوة، ثم استخدم «اختبار» أو «اعرض الكلمات المقبولة». افتح «تحرير الآلة» لإضافة الحالات وسحبها وربطها، أو انقر «تحويل NFA إلى DFA».
المعاملات القابلة للتغيير
- الوضع آلة ذات مخرجات, آلة القبول
- آلة نموذجية (وضع آلة ذات مخرجات) إشارة المرور, آلة البيع, البوابة الدوارة
- أوتومات نموذجي (وضع آلة القبول) DFA: أعداد ثنائية تقبل القسمة على 3, NFA: كلمات تنتهي بـ ab, DFA: كلمات تنتهي بـ ab, DFA: عدد زوجي من الآحاد (بت التماثل)
- كلمة الإدخال (فارغة = كلمة نموذجية)
- سرعة التشغيل 0.5–4 رمز/ثانية
- فتح لوحة تحرير الآلة
أسئلة للاستكشاف
- ما تفاصيل إشارة المرور الحقيقية التي حُذفت من النموذج، ولماذا يُعد ذلك مقبولًا؟
- هل يقبل أوتومات القابلية للقسمة على 3 الكلمة 110، وما الحالات التي يمر بها خطوة بخطوة؟
- لماذا يحتاج NFA الكلمات المنتهية بـ ab إلى انتقالات أقل من DFA المكافئ له؟