ฉันจะจัดการ AI ที่ซับซ้อนได้อย่างไร [ปิด]


11

ในอดีตฉันใช้ระบบง่าย ๆ เช่น finite state machine (FSMs) และ FSM แบบลำดับชั้นเพื่อควบคุมพฤติกรรม AI รูปแบบนี้แตกออกอย่างรวดเร็วหรือระบบที่ซับซ้อนใด ๆ

ผมเคยได้ยินเกี่ยวกับต้นไม้พฤติกรรม พวกเขาดูเหมือนขั้นตอนต่อไปที่ชัดเจน แต่ฉันยังไม่เห็นการใช้งานจริงหรือลองใช้งานเลย

รูปแบบอื่นใดที่สามารถทำให้พฤติกรรม AI ที่ซับซ้อนสามารถจัดการได้


ฉันยังได้ยินว่ามีหลายวิธีในการจัดการเครื่องจักรของรัฐ
jokoon

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

คำตอบ:


3

ต้นไม้พฤติกรรมเป็นวิธีที่ยอดเยี่ยมในการจัดการ AI และ Ai Game dev เป็นสถานที่ที่ดีที่สุดในการเรียนรู้เกี่ยวกับพวกเขา! มีตัวอย่างของการใช้งานมากมายในสถานที่เช่น Codeplex หรือแม้แต่การนำ Sandbox Engine ของ AIGD ไปใช้งาน (ซึ่งยอมรับค่อนข้างซับซ้อนและสามารถติดตามได้ยาก)

เมื่อปีที่แล้วที่เกม AI คำสารภาพมีความตื่นเต้นมากมายเกี่ยวกับนักวางแผนแต่ปีนี้มีจำนวนมากที่หายไป เคล็ดลับที่ดีที่สุดดูเหมือนจะเป็นเพียงการเริ่มต้นที่เรียบง่าย ผลงานทั้งหมด 20% เพื่อให้คุณได้ 80% ดูเหมือนว่าทุกสิ่งจะถือเป็นจริงในกรณีส่วนใหญ่


2

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

ต้นไม้พฤติกรรมได้รับการออกแบบมาให้ครอบคลุมโซลูชันทั้งหมด - การตัดสินใจเช่นเดียวกับการกระทำ - และสามารถรักษาได้ยาก


2

เทคนิคหนึ่งที่คุณควรคุ้นเคยในกรณีใด ๆ ก็คือแนวทางรายการปฏิบัติการ ในระดับที่ง่ายที่สุดมันเป็นเพียงรายการของวัตถุการกระทำซึ่งวัตถุการกระทำแต่ละอย่างมีการปรับปรุง () วิธีการที่เรียกว่าแต่ละเฟรม คุณสามารถขยายได้อย่างรวดเร็วในเรื่องนี้เพื่ออนุญาตการปิดกั้นการกระทำหลายเลนกลุ่มเด็ก ฯลฯ ทุกอย่างที่คุณสามารถสร้างได้ด้วย FSM ระดับสูงสามารถนำไปใช้ในแบบแยกส่วนยืดหยุ่นและ debuggable กับการกระทำ รายการที่ใช้การกระทำพฤติกรรม

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

หมายเหตุบางประการเกี่ยวกับวิธีใช้พวกมันสามารถพบได้ในเด็คสไลด์นี้: http://sonargame.com/2011/11/01/new-game-slides/

ค่อนข้างแน่ใจว่ามีบทความเกี่ยวกับเรื่องนี้ในซีรี่ส์ AI Programming Wisdom ด้วย

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