ในโลกที่คณิตศาสตร์พบกับศิลปะ Turing Drawings ยืนหยัดเป็นการทดลองที่น่าสนใจซึ่งยังคงดึงดูดผู้ที่ชื่นชอบเทคโนโลยีหลายปีหลังจากการสร้างขึ้น การสาธิตด้วย JavaScript และ HTML5 นี้สร้าง Turing machines แบบสุ่มที่ผลิตรูปแบบภาพที่น่าทึ่งบนแคนวาส 2 มิติ เปิดหน้าต่างสู่ความงามของกระบวนการคำนวณ
จากกฎเกณฑ์ง่ายๆ สู่ภาพที่ซับซ้อน
Turing Drawings แสดงให้เห็นว่ากฎการคำนวณที่ค่อนข้างเรียบง่ายสามารถสร้างรูปแบบที่ซับซ้อนและสวยงามอย่างน่าประหลาดใจได้ ผู้ใช้ตามฟอรั่มสนทนาต่างๆ ได้แบ่งปันการค้นพบของพวกเขาเกี่ยวกับการกำหนดค่าที่น่าสนใจเป็นพิเศษ ตั้งแต่โครงสร้างคล้ายฟรักทัลไปจนถึงภาพเคลื่อนไหวที่คล้ายกับปรากฏการณ์ธรรมชาติ โครงการนี้อนุญาตให้ทุกคนสำรวจจุดตัดระหว่างความสุ่มและความเป็นระเบียบในการคำนวณ โดยบางรูปแบบแสดงโครงสร้างที่เป็นระเบียบในขณะที่อื่นๆ ดูเหมือนจะตกอยู่ในความวุ่นวาย
ฉันพบว่ามันน่าหลงใหล การคำนวณในระดับเล็ก (การสำรวจพฤติกรรมของ Turing machine, cellular automata ฯลฯ) ส่วนใหญ่ถูกมองว่าเป็นเพียงความอยากรู้อยากเห็นในวงการนักพัฒนาสมัครเล่นในปัจจุบัน แต่ฉันสงสัยว่าสิ่งนี้จะเปลี่ยนไปเมื่อเวลาผ่านไปเมื่อเราพัฒนาเครื่องมือที่ดีขึ้นเพื่อจำแนกลักษณะการคำนวณ
ประเภทของรูปแบบที่สร้างโดย Turing Drawings
- แบบเศษส่วน (Fractal)
- แบบสแกน (Scan)
- แบบเมทริกซ์ (Matrix)
- แบบเคลื่อนไหว (Movement)
- แบบการคำนวณ (Computation)
- แบบซับซ้อน (Complex)
- แบบสี่เหลี่ยม (Quads)
- แบบครีบ (Fins)
- แบบใบมีด (Blades)
- แบบความโกลาหล (Chaos)
- แบบน้ำเชี่ยว (Rapids)
- แบบตัวเติมเต็ม (Filler)
- แบบชัก (Seizures)
- แบบหกล้น (Spill)
- แบบแพนเจีย (Pangaea)
- แบบดาวตก (Shooting Stars)
- แบบรู (Holes)
การปรับปรุงและแรงบันดาลใจจากชุมชน
โครงการดั้งเดิมได้สร้างแรงบันดาลใจให้เกิดการแยกโครงการและโครงการที่คล้ายกันมากมาย สมาชิกชุมชนคนหนึ่งได้เพิ่มฟังก์ชันการทำงานเพิ่มเติมรวมถึงการให้คะแนนและการแบ่งปันเครื่องจักร ความเร็วในการจำลองที่ปรับได้ และขนาดแคนวาสที่ปรับได้ คนอื่นๆ ได้สร้างการนำไปใช้ของตนเองด้วยวิธีการที่แตกต่างกัน เช่น นิพจน์แบบสแต็กที่ทำให้การออกแบบภาพเฉพาะง่ายขึ้นโดยแลกกับความยืดหยุ่นในการคำนวณ
การสนทนาในชุมชนเผยให้เห็นว่าของเล่นเชิงคำนวณที่ดูเหมือนจะเรียบง่ายเหล่านี้ทำหน้าที่เป็นทั้งความบันเทิงและการสำรวจแนวคิดทางคณิตศาสตร์ที่ลึกซึ้ง ผู้ใช้จำนวนมากได้แบ่งปันลิงก์ไปยังการกำหนดค่าที่พวกเขาชื่นชอบ สร้างแคตตาล็อกอย่างไม่เป็นทางการของรูปแบบที่น่าสนใจซึ่งมีตั้งแต่ลักษณะคล้ายน้ำเชี่ยวที่ดูเป็นธรรมชาติไปจนถึงการกำหนดค่าที่สร้างภาพลวงตาเมื่อดูเป็นเวลานาน
โครงการที่คล้ายคลึงกันที่ถูกกล่าวถึงในการสนทนาของชุมชน
- IBNIZ
- https://c50.fingswotidun.com/ (วิธีการแบบ Stack-based expression)
- https://tixy.land/
- https://www.dwitter.net
- https://susam.net/cfrs.html (กราฟิกแบบเต่าที่มีเพียง 6 คำสั่ง)
- https://susam.net/fxyt.html (แบบ Stack-based ที่มี 36 คำสั่ง)
ทฤษฎีการคำนวณในการปฏิบัติ
สิ่งที่ทำให้ Turing Drawings น่าสนใจเป็นพิเศษสำหรับผู้ที่มีใจรักด้านเทคนิคคือวิธีที่มันแสดงแนวคิดพื้นฐานในทฤษฎีการคำนวณ การอภิปรายเกี่ยวกับว่าการกำหนดค่าบางอย่างจะถึงสถานะคงที่หรือไม่นั้นเกี่ยวข้องกับปัญหาการหยุด (halting problem) อันมีชื่อเสียงในวิทยาการคอมพิวเตอร์ ผู้แสดงความคิดเห็นบางคนสังเกตว่าแม้ว่าเหล่านี้จะเป็นเครื่องจักรสถานะจำกัด (finite state machines) ในทางเทคนิค (เนื่องจากเทปมีขนาดจำกัด) การคาดการณ์พฤติกรรมของพวกมันยังคงเป็นความท้าทาย
โครงการนี้ยังมีการเปรียบเทียบกับ cellular automata และการจำแนกประเภทของระบบการคำนวณของ Stephen Wolfram ผู้ใช้สังเกตเห็นว่าการกำหนดค่าที่น่าสนใจที่สุดคือการกำหนดค่าที่แสดงรูปแบบขนาดใหญ่ในขณะที่ยังคงพัฒนาอย่างไม่สามารถคาดเดาได้ในระดับจุลภาค—ลักษณะของสิ่งที่ Wolfram จะจัดประเภทเป็นระบบที่ซับซ้อน
สำหรับผู้ที่สนใจในการสำรวจจุดตัดที่น่าหลงใหลนี้ระหว่างศิลปะและการคำนวณ Turing Drawings ยังคงมีให้ใช้งานฟรีทางออนไลน์ โดยมีชุมชนที่ยังคงค้นพบและแบ่งปันรูปแบบใหม่ๆ อย่างต่อเนื่อง ไม่ว่าจะเข้าถึงในฐานะความอยากรู้อยากเห็นทางคณิตศาสตร์ เครื่องมือทางศิลปะ หรือสื่อการสอนสำหรับแนวคิดการคำนวณ มันเสนอหน้าต่างที่เข้าถึงได้อย่างเป็นเอกลักษณ์สู่ความงามที่สามารถเกิดขึ้นจากกฎอัลกอริทึมอย่างง่าย
อ้างอิง: Turing-Drawings