การเดินทางในเขาวงกต
เขาวงกตเป็นเส้นทางที่ซับซ้อน เหมือนเรามีแผนที่ทางหลายที่เชื่อมโยงไปมา เราเริ่มที่จุดเริ่มต้นและมีเป้าหมายปลายทางที่ชัดเจน การเดินทางย่อมมีทางเลือกได้มากมายแต่เป้าหมายของเราคือต้องการเดินทางให้ถึงที่หมายปลายทางให้รวดเร็วที่สุด คือระยะทางที่สั้นที่สุด
เขาวงกตนี้มีกำแพงกั้นและมีทางเดิน สิ่งที่ต้องการคือเดินทางจากทางเข้า และเป้าหมายคือทางออก เราจะมีวิธีการเดินทางได้อย่างไร
สิ่งแรกที่จะต้องทำคือหาทางแทนปัญหา และหาวิธีแก้ปัญหาการแทนปัญหามีหลายวิธีเช่น
แทนปัญหาเป็นกราฟ
วิธีที่นิยมแทนโหนดของกราฟ และระยะทางระหว่างโหนดไปโหนดเป็นระยะทางตามทิศทางการเดินจริงในเขาวงกต เช่นจากโหนด(1,1) ไปยังโหนด(2,3) มีค่าเท่ากับ 6 โดยถือว่าจุดเริ่มต้นของการเริ่มเดินทางอยู่ที่โหนด(1,1) และโหนด(2,3) ไปยังโหนด (2,4) มีระยะทางเท่ากับ 2 ดังนั้นกราฟที่ปรากฎจะเป็นกราฟที่มีระยะทาง โดยสิ่งที่ต้องการคือกำหนดสถานะของการเริ่มเดินทางและสถานะเป้าหมายคือการสิ้นสุดการเดินทาง ซึ่งสามารถกำหนดสถานะได้ดังนี้
นอกจากการแทนด้วยกราฟแล้วเรายังสามารถใช้หลักการแทนข้อมูลเพื่อที่จะทำการคำนวณได้ง่าย การแทนข้อมูลนี้ทำได้ด้วยการให้เขาวงกตนี้เสมือนเป็นอาเรย์ข้อมูลชุดหนึ่ง โดยแทนข้อมูลนี้ด้วยตัว