Robocode เป็นโปรแกรม Opensource สำหรับการศึกษาเริ่มโดยนาย Mathew Nelson (ซึ่งจัดทำโดย IBM) ในขณะนี้มีผู้คนมากมายเข้ามาเป็นส่วนร่วม แต่คนที่รับผิดชอบโปรเจ๊คตอนนี้ก็คือ Flemming N. Larsen มีหน้าที่แก้บั๊กและพัฒนาเวอร์ชั่นถัดๆไป เกมส์ถูกออกแบบมาเพื่อช่วยเรียนรู้ภาษา Java และความรู้ทางด้านปัญญาประดิษฐ์ ซึ่งเริ่มได้ง่ายมาก หุ่นยนต์ง่ายๆสามารถเขียนได้ภายใน 2-3 นาที แต่ถ้าหุ่นยนต์ที่สมบูรณ์แบบก็จะกินเวลาหลายเดือนหรือมากกว่านั้นแผนการ
ลักษณะของเกมส์
พวกร่วมเข้าแข่งขันเขียนซอฟต์แวร์ควบคุมหุ่นยนต์ขนาดเล็กที่สู้กับหุ่นยนต์ตัวอื่นที่เหมือนกัน (แต่คนละโปรแกรม) หุ่นยนต์เคลื่อนที่ ยิง ค้นหาหุ่นยนต์ตัวอื่น ชนกำแพง(หรือชนกับหุ่นยนต์ตัวอื่น) ถ้าพวกเขาไม่ระมัดระวัง แนวคิดของเกม ทั้งๆที่กติกาของเกมส์นั้นง่ายๆ แต่สิ่งที่สำคัญคือกลยุทธ์ บางหุ่นยนต์อาจจะโปรแกรมถึง 1000 บรรทัดหรือมากกว่านั้น เพื่อกลยุทธ์ที่เฉียบคม บางหุ่นยนต์ที่ประสบความสำเร็จ ก็เลือกใช้วิธีทางสถิติ หรือไม่ก็ใช้เครือข่ายประสาทจำลองในการออกแบบ
การแข่งขันในประเทศไทย
การแข่งขันในประเทศไทยเริ่มขึ้นตั้งแต่วันที่ 1 กรกฏาคม พ.ศ.2551 เป็นต้นไป สามารถติดตามข้อมูลข่าวสารได้จากที่นี้ http://www.vcharkarn.com/robocode
ดาวน์โหลด
เวอร์ชั่นล่าสุดของ Robocode คือ 1.6.0.1 (ออกเมื่อวันที่ 2 มิถุนายน พ.ศ.2551) ซึ่งจะเป็นเวอร์ชั่นที่ใช้ในการแข่งขัน Robocode Thailand Contest 2009
สามารถดาวน์โหลดจากเว็บของวิชาการได้ที่นี่ http://www.vcharkarn.com/robocode/files/robocode-setup-1.6.0.1.jar
สนับสนุนการแจกจ่าย
การที่จะทดสอบหุ่นยนต์ของคนอื่นนั้น เพียงแค่ไปดาวน์โหลดไบต์โค๊ด(ข้อมูลที่ถูกคอมไพล์มาเรียบร้อนแล้ว)มาจากเว็บไซด์ และสามารถทดสอบหุ่นยนต์ที่ดาวน์โหลดมากับหุ่นยนต์ของเราได้ทันที โดยที่ผู้แจกจ่ายสามารถสบายใจได้ว่าซอร์สโค๊ดที่เขียนมาจะไม่ถูกแอบดูหรือนำไปใช้ เนื่องจากผ่านการคอมไพล์มาเรียบร้อยแล้ว
การเคลื่อนที่และการเล็ง
สิ่งที่แข่งขันใน Robocode มีเพียง 2 สิ่ง
1. หลบการชนให้ได้มากที่สุด (ชนกระสุน, ชนหุ่นยนต์, ชนกำแพง)
2. พยายามคาดเดาตำแหน่งที่ศัตรูกำลังจะไป และยิงให้โดนมากที่สุด
เทคนิคต่างๆก็ได้ถูกคิดค้นขึ้น และถูกนำมาใช้ในหุ่นยนต์ดังๆ เช่น
WaveSurfing - ปรับการเคลื่อนที่โดยที่จะพยายามหลบไม่ให้โดนโจมตีแบบเดิมเป็นครั้งที่สอง
StatisticalTargeting - เก็บข้อมูลที่ตรงกับสถานการณ์ของเป้าหมายและตัดสินใจให้ถูกต้อง ใช้ข้อมูลที่เก็บมาทำการตัดสินใจในการยิงเป้าหมาย
GuessFactorTargeting - นี่คือวิธีที่ดีที่สุดในบรรดาวิธี StatisticalTargeting เมื่อสถิติของศัตรูต่างๆอยู่ภายในตัวเลขหนึ่งตัว (GuessFactor)
PatternMatching - พยายามจับรูปแบบของศัตรูด้วยรูปแบบเก่าๆที่เคยจับได้ และนำข้อมูลมาทำการตัดสินใจในการยิง
มีหน้าสองต่อนะครับ :D


Copyright© 2000-2007, Vcharkarn.Com. All rights reserved.
|
คลิ๊กเพื่อดูสถิติ รับรองและสนับสนุนโดย |
![]() สสวท. |
![]() มูลนิธิ พสวท. |
![]() พสวท. |