ข้อ จำกัด ของออโตมาตะกับเครื่องสถานะ จำกัด ต่างกันอย่างไร?


16

ฉันใช้ FSM ในการออกแบบวงจรดิจิตอลตามลำดับ แต่ฉันไม่คุ้นเคยกับ Finite Automata ใครสามารถช่วยฉันในการทำความเข้าใจความแตกต่าง 'พื้นฐาน' ระหว่างสองคนนี้ได้หรือไม่?


5
จากวิกิพีเดีย : "... ในทฤษฎีออโตมาตะสาขาวิชาวิทยาการคอมพิวเตอร์เชิงทฤษฎีเครื่องออโตเมทริกจำกัด (DFA) - หรือที่รู้จักกันในนามเครื่อง จำกัด แน่นอนของรัฐ - เป็นเครื่องสถานะ จำกัด ที่ยอมรับ / ปฏิเสธสตริงสัญลักษณ์ จำกัด และสร้างได้เฉพาะ การคำนวณที่ไม่ซ้ำกัน (หรือเรียกใช้) ของหุ่นยนต์สำหรับแต่ละอินพุตสตริง ... " DFA เป็นคำที่ต้องการใช้ในทฤษฎีออโตมาตะ FSM เป็นคำที่ต้องการใช้ในการใช้งานจริง
Vor

4
ฉันคิดว่า FSM นั้นครอบคลุมมากขึ้นรวมถึง Mealy และ Moore อัตโนมัติ NFA เป็นรูปแบบหนึ่งที่เฉพาะเจาะจง
กราฟิลส์

@ ราฟาเอล: ฉันเห็นด้วยกับคุณ FSM ดูเหมือนกว้างขึ้น (แม้วิกิพีเดียทำให้ความแตกต่างระหว่าง Transducers, Acceptors, Classifiers และ Sequencers) "DFA" ~ "FSM acceptors" (FSM ที่มีเอาต์พุตใช่ / ไม่ใช่เท่านั้น) ... นอกจากนี้ FSM ในการออกแบบวงจรมักจะใช้ประโยชน์จากเอาต์พุต ... บางทีคุณอาจเปลี่ยนความคิดเห็นของคุณเป็นคำตอบ
V

โดยส่วนตัวแล้วฉันใช้ FSM เป็นคำศัพท์กว้าง ๆ ซึ่งรวมถึงเครื่อง DFA, NFA, Mealy และ Moore, (finite-state) transducers เป็นต้น ทุกอย่างมีพื้นที่ จำกัด และไม่มีหน่วยความจำเสริม
Dan

1
@ ราฟาเอลในทฤษฎีทางการ (หรือทฤษฎีการคำนวณ) เราชอบที่จะใช้คำว่า "Automata" - เพื่อเน้นว่าเครื่องของเราคือเครื่อง 'อัตโนมัติ' (เคลื่อนไหวเหมือนคอมพิวเตอร์ของคุณ) - "อัตโนมัติ" ในแง่ที่ครั้งหนึ่ง คุณได้รับการกำหนดกฎการเปลี่ยนแปลงคุณไม่จำเป็นต้องใช้ความคิดสร้างสรรค์ที่ชัดเจนในการประมวลผล / จำแนกสตริง (คุณเพียงแค่ต้องอ้างถึงกฎการเปลี่ยนแปลงในแต่ละขั้นตอน) - ในขณะที่คำศัพท์เครื่องเป็นที่ต้องการในบริบทของอุปกรณ์ (แทนที่จะเป็นแบบจำลอง) - แม้ว่าทั้งคู่จะเป็นคำพ้องความหมายของกันและกัน
Grijesh Chauhan

คำตอบ:


12

เท่าที่ฉันเข้าใจทั้งคู่มี "สถานะ" และ "การกระทำ" ที่ทำให้เครื่องย้ายจากสถานะหนึ่งไปอีกสถานะหนึ่งบนสัญญาณอินพุต ดังนั้นแนวคิดความคิดเหมือนกัน มีรายละเอียดแตกต่างกันบ้างเล็กน้อย

ใน FSM สำหรับการออกแบบวงจรสัญญาณอินพุตส่วนใหญ่จะถือว่าเป็นบิต (ไบนารี) ในขณะที่สถานะออโตมาต้า จำกัด สามารถมีตัวอักษร "นามธรรม" ทั่วไปของสัญลักษณ์อินพุต ประการที่สอง FSM ยังสร้างเอาท์พุทที่เกี่ยวข้องกับสถานะที่เข้าถึงได้เช่นกัน ในคำศัพท์ออโตมาตะส่วนขยายนี้เรียกว่าเครื่อง Moore ออโตมาตามีสถานะขั้นสุดท้าย (หรือยอมรับ) ซึ่งเป็นสัญญาณที่อ่านได้ดี ในที่สุด FSM ส่วนใหญ่จะกำหนดขึ้นเช่นสำหรับแต่ละอินพุตในบางสถานะมีหนึ่งสถานะถัดไป ในทฤษฎีออโตมาตาเรายังพิจารณาตัวแปร nondeterministic ที่หนึ่งอาจมีทางเลือกในการย้าย


6

จากประสบการณ์ของฉันเช่นเดียวกับบทความ Wikipedia มีเครื่องจักรสถานะ จำกัดหลายชนิดรวมถึง

บางความคิดที่บินไปรอบ ๆ ส่วนใหญ่แตกต่างในแรงจูงใจ บางอย่างเกิดจากภาษาและ / หรือทฤษฎีการคำนวณอื่น ๆ จากสถาปัตยกรรมคอมพิวเตอร์

โปรดทราบว่าคุณยังสามารถเปลี่ยนกระบวนทัศน์ต่าง ๆ เพื่อรับออโตมาตะซึ่งยังคง จำกัด ขอบเขตโดยอัตโนมัติเช่น

อย่างที่คุณเห็นวานิลลาไฟไนต์ออโตมาตะที่สอนใน TCS 101 นั้นเป็นเพียงรสชาติเดียวของหลาย ๆ คนโดยแต่ละคนมีคำจำกัดความของตนเอง


2

แม้ว่าแนวคิดหลักที่พวกเขาทั้งสองพึ่งพาเหมือนกัน ทั้งสองใช้สถานะที่ จำกัด และข้ามไปยังสถานะอื่นเป็นฟีดอินพุต อย่างไรก็ตาม FSM เป็นเครื่องจักรเช่น full adder หรือ SR flipflop มีบิตเป็นอินพุตและเอาต์พุต ใช่ FSA มีเอาท์พุทบิต 0 สำหรับสถานะไม่สิ้นสุดและ 1 สำหรับการยกเลิกสถานะ แต่มันเป็นกลไกนามธรรมและไม่เห็น มีความแตกต่างใน digraphs ที่วาดเพื่อเป็นตัวแทนของพวกเขา นอกจากนั้น FSA นั้นเป็นอุปกรณ์แบบลอจิคัลและการคำนวณในขณะที่ FSM เป็นอุปกรณ์แบบลอจิคัลแบบดิจิทัล

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.