อัลกอริทึมการค้นหา A* เป็นอัลกอริทึมที่ใช้ค้นหาและค้นหาและวาดกราฟแบบกราฟิกที่ใช้ในโปรแกรมต่าง ๆ เช่น หุ่นหุ่นยนต์ การพัฒนาเกม และระบบนําทาง มันผนวกคุณสมบัติของการค้นหาแบบเครื่องแบบและรูปแบบที่โลภมากที่สุดเข้าด้วยกัน ทําให้มีประสิทธิภาพในการหาเส้นทางที่สั้นที่สุดในกราฟ น้ําหนัก มัคคุเทศก์นี้จะให้วิธีการดําเนินการตามขั้นตอน A โดยใช้ตัวอย่างที่ใช้งานได้จริง

การ เข้าใจ พระ อัยยสถาน

อัลกอริทึม A* หาเส้นทางที่สั้นที่สุดจากโหนดเริ่มต้นไปยังโหนดเป้าหมาย โดยพิจารณาค่าใช้จ่ายในการเข้าถึงโหนด และค่าใช้จ่ายประมาณในการไปถึงเป้าหมายจากโหนดนั้น

การเพิ่มเอ*ทีละขั้น

ทําตามขั้นตอนเหล่านี้เพื่อดําเนินการ A* ในภาษาโปรแกรมเช่น Python:

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

ตัว อย่าง ที่ ใช้ ได้ จริง

ลอง พิจารณา เส้น ทาง ที่ แต่ ละ เซลล์ ใช้ แทน โหนด และ ค่า ใช้ จ่าย ใน การ เคลื่อน ไหว ก็ เป็น แบบ เดียว กัน การ ใช้ ระบบ ความร้อน ใน การ เคลื่อน ไหว เป็น ระยะ ทาง ที่ ห่าง จาก แมน ฮัต ตัน การ ทํา ให้ เอ เป็น ไป ได้ เกี่ยว ข้อง กับ การ สร้าง โครง สร้าง ข้อมูล สําหรับ ระบบ กริด ค่า ใช้ จ่าย และ ปม ของ บิดา มารดา ใน ระหว่าง การ ทํา งาน อัลกอริทึม นี้ จะ สํารวจ เส้น ทาง การ ทํา งาน ของ ตาข่าย โดย ใช้ ตาข่าย เพื่อ กําหนด ตําแหน่ง ให้ ใกล้ เป้า หมาย ที่ อยู่ ใกล้ กับ เส้น ฮี โร ติก ใน ที่ สุด ก็ พบ เส้น ทาง ที่ สั้น ที่ สุด

สรุป

การให้ A เติมเต็ม ต้องการความเข้าใจองค์ประกอบหลักของมัน: รายการที่เปิด, รายการปิด, คํานวณค่าใช้จ่าย, และทําการคํานวณตามขั้นตอนขั้นตอน และนําไปใช้กับตัวอย่างจริง นักพัฒนาสามารถรวม A * ของพวกเขาเข้ากับโปรแกรมของพวกเขาได้อย่างเหมาะสมที่สุด เพื่อค้นหาวิธีแก้ปัญหา