ความแตกต่างระหว่างเครื่องจักรทัวริงกับเครื่องจักรสถานะ จำกัด ?


27

ฉันกำลังนำเสนอเกี่ยวกับเครื่องจักรทัวริงและฉันต้องการให้พื้นหลังของ FSM ก่อนที่จะแนะนำเครื่องจักรทัวริง ปัญหาคือฉันไม่รู้จริง ๆ ว่าอะไรแตกต่างกันมาก

นี่คือสิ่งที่ฉันรู้ว่ามันแตกต่างกัน:

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

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

แต่นอกเหนือจากนั้นฉันไม่รู้ความแตกต่างที่มากขึ้นซึ่งทำให้ทัวริงเครื่องจักรดีกว่าของ FSM

คุณช่วยฉันได้ไหม?


2
Google ไม่ใช่เรื่องยากสำหรับ "FSM vs. Turing Machine"! นั่นเป็นส่วนที่สนุกในการทำวิจัยของคุณเอง ความแตกต่างที่สำคัญคือเครื่องทัวริงมี "หน่วยความจำ" ที่ไม่มีที่สิ้นสุด แต่ FSM ไม่มี
Dai

ตกลงฉันโกงนิดหน่อยตรงนั้น>.> ;; Gotcha! ขอบคุณ!
Julio Garcia

3
อาร์กิวเมนต์เกี่ยวกับ "ข้อผิดพลาด" ไม่ถูกต้อง ลองวิกิพีเดียและหนังสือเรียน ดูว่าอะไรคือความแตกต่างพื้นฐานวัตถุประสงค์ของการใช้แต่ละอัน (เช่นเมื่อเราไม่สามารถเลือก FSM บน TM ได้) และความสัมพันธ์ของพวกเขา
Parham

@MahmoudAlimohamadi สิ่งที่ฉันหมายถึงคือมีโอกาสมากขึ้นสำหรับ fsm ที่จะลงจอดในสถานะที่ไม่สิ้นสุด
Julio Garcia

@Dai: มันต้องมากขึ้นที่จะบอกว่าเครื่องทัวริงอาจใช้ขนาดใหญ่โดยพลจำนวนหน่วยความจำ จำนวนที่ใช้ไม่มีที่สิ้นสุด
reinierpost

คำตอบ:


24

ความแตกต่างที่สำคัญระหว่างการทำงานของ DFAs (กำหนดขอบเขต จำกัด ของออโตเมติก) และ TM ในแง่ของวิธีการใช้หน่วยความจำ

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

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

DFA อาจถูกมองว่าเป็น TM ที่ไม่มีการเปลี่ยนแปลงสัญลักษณ์เทปใด ๆ หรือย้ายหัวไปทางซ้าย ข้อ จำกัด เหล่านี้ทำให้ไม่สามารถจดจำภาษาบางภาษาที่ TM ยอมรับได้

โปรดทราบว่าฉันใช้คำว่า "DFA" มากกว่า "FSM" เนื่องจากในทางเทคนิคแล้วฉันคิดว่า TM เป็นเครื่อง จำกัด - รัฐเนื่องจาก TMs โดยคำจำกัดความมีสถานะจำนวน จำกัด ความแตกต่างระหว่าง DFA และ TM อยู่ในจำนวนของการกำหนดค่าซึ่งเหมือนกับจำนวนของสถานะสำหรับ DFA แต่ยอดเยี่ยมมากสำหรับ TM


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

@JulioGarcia มันยากที่จะพูดโดยไม่ทราบว่าสิ่งที่คุณเห็น มีเครื่อง Moore และ Mealy ซึ่งสามารถแสดงสัญลักษณ์ในการเปลี่ยน กิจกรรมของเครื่องหยอดเหรียญอาจเป็นแบบอย่างที่ดีกว่าโดยหนึ่งในกลไกเหล่านั้น วานิลลา DFA ยอมรับและปฏิเสธสตริงเท่านั้น ... ตู้หยอดเหรียญควร "ยอมรับ" สตริง "ใด ๆ " ของเหรียญ ขึ้นอยู่กับว่าคุณทำโมเดลผลข้างเคียงพิเศษของการเปลี่ยนแปลงอย่างไรชนิดของหน่วยความจำรอยขีดข่วนที่ต้องการอาจไม่ใช่การเข้าถึงแบบสุ่ม
Patrick87

ฉันไม่สามารถมั่นใจได้อย่างสมบูรณ์ แต่ฉันเดาได้สองครั้ง หนึ่งก็คือมันไม่รู้ว่ามีเงินเท่าไหร่: แค่คิดว่ามันมีเพียงพอ คุณไม่ต้องการสร้างตู้จำหน่ายสินค้าอัตโนมัติแบบนั้นจริง ๆ แต่ก็ยังเป็นตัวอย่างที่มีประโยชน์ของแนวคิด ความเป็นไปได้อีกอย่างก็คือมันไม่ใช่ FSA ที่ "บริสุทธิ์" จริง ๆ : มันเชื่อมต่อกับเซ็นเซอร์ที่สามารถรับข้อมูลนี้จาก "ภายนอก" ของเครื่องได้ เครื่องไม่ทราบหรือไม่สนใจว่าข้อมูลมาจากไหนและไม่สามารถเก็บอะไรไว้ในเซ็นเซอร์ได้ (ดังนั้นจึงไม่ใช่ "หน่วยความจำ" จริง ๆ ) แต่มันก็ยังสามารถทำสิ่งที่เห็นอยู่ที่นั่นได้
Spooniest

16

ทัวริงแมชชีนอธิบายคลาสของภาษาที่ใหญ่กว่าคลาสของภาษาที่นับซ้ำ เครื่องสถานะ จำกัด อธิบายชั้นเรียนของภาษาปกติ

เครื่องจักรสถานะ จำกัด ไม่มี "หน่วยความจำ" มันถูก จำกัด โดยรัฐ

เครื่อง จำกัด - รัฐเป็นเครื่องทัวริง จำกัด ที่หัวสามารถดำเนินการ "อ่าน" เท่านั้นและย้ายจากซ้ายไปขวาเสมอ

ยกตัวอย่างภาษานี้:

L={aibi| i>=0}

เนื่องจากเครื่องจักรสถานะ จำกัด มีขอบเขตในแง่ที่ว่าพวกเขาไม่มีหน่วยความจำ FSM ที่ยอมรับ L จึงไม่สามารถสร้างได้

เพื่อสรุป:

เครื่องสถานะ จำกัด อธิบายภาษาเล็ก ๆ ระดับที่ไม่จำเป็นต้องใช้หน่วยความจำ

เครื่องจักรทัวริงเป็นคำอธิบายทางคณิตศาสตร์ของคอมพิวเตอร์และยอมรับภาษาที่มีขนาดใหญ่กว่า FSM

เครื่องจักรทัวริงมีพลังในการคำนวณมากกว่า FSM มีงานที่ไม่สามารถทำ FSM ได้ แต่มีทัวริงซึ่งสามารถทำได้


3

ฉันมีข้อสงสัยเหมือนกันและฉันเห็นวิดีโอที่ให้ความกระจ่างมากสองเรื่องและคำอธิบายอย่างหนึ่งเกี่ยวกับ Quora ดังนี้

เครื่องจักรสถานะ จำกัด เป็นเพียงชุดของสถานะและช่วงการเปลี่ยนภาพ หน่วยความจำเดียวที่มีคือสถานะที่เป็นอยู่ดังนั้นจำนวนสถานะหน่วยความจำคือ ... จำกัด

เครื่องทัวริงเป็นเครื่องสถานะ จำกัด รวมถึงหน่วยความจำเทป การเปลี่ยนแปลงแต่ละครั้งอาจมาพร้อมกับการดำเนินการบนเทป (ย้ายอ่านเขียน)

ฉันเข้าใจว่าเครื่องทัวริงใช้ / มีเครื่องสถานะ จำกัด เป็นส่วนหนึ่งของขั้นตอนการทำงานรวมถึงการเพิ่มหน่วยความจำที่แก้ไขได้

โปรดดูวิดีโอทั้งสองนี้พวกเขารู้แจ้งด้วย!

https://youtu.be/gJQTFhkhwPA

https://youtu.be/E3keLeMwfHY


2

เท่าที่ฉันเข้าใจความแตกต่างระหว่าง (ทัวริงโมเดล) ทัวริงและ (โมเดลมาตรฐาน) Mealy Machines:

  • เครื่องทัวริงอ่านและเขียนบนเทปเดียวกันกับเครื่อง Mealy อ่านบนเทปอินพุตหนึ่งและเขียนบนเทปเอาต์พุตอื่น
  • เครื่องจักรทัวริงสามารถเปลี่ยน "ทิศทางเทป" (ดำเนินการไปทางซ้ายหรือขวา [หรือหยุด]) กับเครื่องจักร Mealy สามารถดำเนินการไปทางขวาเท่านั้น (นั่นคือสาเหตุที่ไม่มีการตั้งค่าทิศทาง {L, R, H} ในฟังก์ชันการเปลี่ยน [โดยปริยาย {R} ซึ่งหมายความว่าไม่มีทางเลือกเลย])
  • เครื่องจักรทัวริงสามารถหยุดบนเซลล์เทปใด ๆกับเครื่อง Mealy อ่านอินพุตที่สมบูรณ์แล้วหยุดการยอมรับหรือปฏิเสธมัน

-3

เครื่องทัวริงสามารถจัดเก็บเป็นส่วนหนึ่งของเทปสิ่งที่มันต้องการที่จะจำ


5
ยังไม่ชัดเจนว่าคุณหมายถึงอะไร แต่ทั้งสองเครื่องทัวริงและ FSM สามารถทำได้ดังนั้นจึงไม่แตกต่างกัน
David Richerby

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

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