คืนนั้นมืดและเต็มไปด้วยความหวาดกลัว สองทีมจะต้องต่อสู้กับความมืดรวบรวมทรัพยากรและก้าวไปจนถึงทุกวัย ตอนกลางวันพบว่ามีความเร่งรีบอย่างยิ่งที่จะรวบรวมและสร้างทรัพยากรที่สามารถพาคุณไปตลอดทั้งคืน วางแผนและขยายอย่างระมัดระวัง - เมืองใด ๆ ที่ล้มเหลวในการผลิตแสงสว่างเพียงพอจะถูกบริโภคด้วยความมืด
ยินดีต้อนรับสู่ Lux AI Challenge Season 1!

Lux AI Challenge เป็นการแข่งขันที่คู่แข่งออกแบบตัวแทนเพื่อจัดการกับการเพิ่มประสิทธิภาพหลายตัวแปรการรวบรวมทรัพยากรและปัญหาการจัดสรรในสถานการณ์ 1v1 กับคู่แข่งรายอื่น นอกเหนือจากการเพิ่มประสิทธิภาพตัวแทนที่ประสบความสำเร็จจะต้องสามารถวิเคราะห์คู่ต่อสู้และพัฒนานโยบายที่เหมาะสมเพื่อให้ได้มา
ในการเริ่มต้นให้ไปที่ส่วนการเริ่มต้นของเรา การแข่งขันจะดำเนินไปจนถึงวันที่ 6 ธันวาคม 2564 และการส่งจะครบกำหนดเวลา 23.59 น. UTC ในหน้าการแข่งขัน: https://www.kaggle.com/c/lux-ai-2021
ต้องขอบคุณผู้สนับสนุนของเรา Quantco, J Ventures และ Qaimera เรามีเงินรางวัล $ 10,000 พร้อมกับรางวัลอื่น ๆ ที่ไม่ใช่ตัวเงินในปีนี้! สำหรับข้อมูลเพิ่มเติมโปรดดู https://www.lux-ai.org/sponsors-2021
อย่าลืมเข้าร่วมชุมชนของเราที่ https://discord.gg/awjt3uacgn เพื่อแชทวางกลยุทธ์และเรียนรู้กับคู่แข่งรายอื่น! เราจะโพสต์ประกาศในฟอรัม Kaggle และบนความไม่ลงรอยกัน
สิ่งนี้ถูกสร้างขึ้นโดยทีม Lux AI Challenge โดยใช้แพ็คเกจมิติ
ข้อมูลจำเพาะของซีซั่น 1 สามารถพบได้ที่นี่: https://lux-ai.org/specs-2021 รายละเอียดเหล่านี้ว่าเกมทำงานอย่างไรและกฎอะไรที่ตัวแทนของคุณต้องปฏิบัติตาม
คุณจะต้องใช้ node.js เวอร์ชัน 12 หรือสูงกว่า ดูคำแนะนำการติดตั้งที่นี่คุณสามารถดาวน์โหลดเวอร์ชันที่แนะนำได้
รายละเอียดส่วนถัดไปการตั้งค่าที่แนะนำเพื่อพัฒนาและแข่งขันบอทของคุณ สำหรับผู้ใช้ที่ต้องการใช้โน๊ตบุ๊ค Python และ Jupyter / Kaggle Interactive Notebooks อย่าลังเลที่จะข้ามส่วนนี้และติดตามสมุดบันทึกการสอน
เปิดบรรทัดคำสั่งและติดตั้งการออกแบบการแข่งขันด้วย
npm install -g @lux-ai/2021-challenge@latest
คุณอาจเพิกเฉยต่อคำเตือนใด ๆ ที่ปรากฏขึ้นนั้นไม่เป็นอันตราย ในการเรียกใช้การจับคู่จากบรรทัดคำสั่ง (CLI) เพียงแค่เรียกใช้
lux-ai-2021 path/to/botfile path/to/otherbotfile
และการจับคู่จะทำงานด้วยบันทึกการบันทึกและจัดเก็บบันทึกข้อผิดพลาดและการเล่นซ้ำในโฟลเดอร์ errorlogs ใหม่และโฟลเดอร์ replays บันทึกที่เก็บไว้ใน Errorlogs จะรวมเอาต์พุตข้อผิดพลาดทั้งหมดและสิ่งที่พิมพ์ไปยังข้อผิดพลาดมาตรฐานโดยตัวแทนของคุณ คุณสามารถดูการเล่นซ้ำที่เก็บไว้ในโฟลเดอร์รีเพลย์โดยใช้ Visualizer ของเรา หากต้องการดูการเล่นซ้ำในพื้นที่ให้ทำตามคำแนะนำที่นี่ https://github.com/lux-ai-challenge/luxviewer2021/
สำหรับรายการคำสั่งทั้งหมดจาก CLI ให้เรียกใช้
lux-ai-2021 --help
หรือไปที่ส่วนถัดไปเพื่อดูคำแนะนำเพิ่มเติมเกี่ยวกับวิธีการใช้เครื่องมือบรรทัดคำสั่งรวมถึงการสร้างรีเพลย์สถานะและเรียกใช้กระดานผู้นำท้องถิ่นเพื่อการประเมินผล นอกจากนี้คุณยังสามารถเรียกใช้ทั้งหมดนี้ใน Docker โดยใช้ไฟล์ cli.sh ใน repo นี้ดูคำแนะนำที่นี่
แต่ละภาษาการเขียนโปรแกรมมีชุดสตาร์ทเตอร์คุณสามารถค้นหาเอกสารทั่วไป API ทั่วไปได้ที่นี่: https://github.com/lux-ai-challenge/lux-design-2021/tree/master/kits
โฟลเดอร์ Kits ในที่เก็บนี้เก็บชุดเริ่มต้นที่มีอยู่ทั้งหมดที่คุณสามารถใช้เพื่อเริ่มการแข่งขันและสร้างตัวแทน AI และแสดงวิธีเริ่มต้นด้วยภาษาที่คุณเลือกและวิ่งจับคู่กับบอทนั้น เราขอแนะนำอย่างยิ่งให้อ่านเอกสารสำหรับภาษาที่คุณเลือก ในลิงค์ด้านล่าง
นอกจากนี้ยังมีชุมชนหลายแห่งที่มีเครื่องมือที่จะช่วยให้ผู้คนสร้างบอทที่ดีขึ้นอย่าลังเลที่จะตรวจสอบสิ่งเหล่านั้นและใช้สิ่งที่เหมาะสมกับความต้องการของคุณ
ต้องการใช้ภาษาอื่น แต่ไม่รองรับ? อย่าลังเลที่จะแนะนำภาษาให้กับปัญหาของเราหรือดีกว่าสร้างชุดเริ่มต้นเพื่อให้ชุมชนใช้และสร้าง PR ไปยังที่เก็บนี้ ดูเอกสาร MD ของเราสำหรับข้อมูลเพิ่มเติมเกี่ยวกับเรื่องนี้
หากต้องการติดตามการเปลี่ยนแปลงและอัปเดตการแข่งขันและเครื่องยนต์ให้ดูประกาศในฟอรัมหรือความไม่ลงรอยกัน ดู https://github.com/lux-ai-challenge/lux-design-2021/blob/master/changelog.md สำหรับบันทึกการเปลี่ยนแปลงเต็มรูปแบบ
เครื่องมือ CLI มีหลายตัวเลือก ตัวอย่างเช่นตัวเลือกหนึ่งคือเมล็ดพันธุ์และตั้งค่าเมล็ด 100 เพียงแค่วิ่ง
lux-ai-2021 --seed=100 path/to/botfile path/to/otherbotfile
ซึ่งจะวิ่งจับคู่โดยใช้เมล็ด 100
คุณสามารถบอกเครื่องมือ CLI ได้ว่าจะจัดเก็บบันทึกเอเจนต์หรือจับคู่รีเพลย์ผ่าน --storeLogs, --storeReplay ตั้งค่าตัวเลือกบูลีนเหล่านี้เช่นนั้น
# to set to true
lux-ai-2021 --statefulReplay
# to set to false
lux-ai-2021 --storeLogs=false
โดยค่าเริ่มต้นเครื่องมือจะสร้างขั้นต่ำ, การกระทำ , รีเพลย์ที่มีขนาดเล็กและทำงานใน Visualizer แต่ไม่มีข้อมูลสถานะเช่นทรัพยากรบนแผนที่ในแต่ละเทิร์น ในการสร้างรีเพลย์ ที่เป็นสถานะ ตั้งค่าตัวเลือก --statefulReplay เป็น TRUE หากต้องการแปลงการเล่นซ้ำที่ใช้แอ็คชั่นเป็นหนึ่งสถานะให้ตั้งค่าตัวเลือก --convertToStateful เป็น TRUE และส่งผ่านไฟล์เพื่อแปลง
เลือกที่ที่ไฟล์เล่นซ้ำถูกเก็บไว้ที่การตั้งค่า --out=path/to/file.json
นอกจากนี้คุณยังสามารถเปลี่ยนระดับการบันทึกได้โดยการตั้ง --loglevel=x สำหรับหมายเลข x จาก 0 เป็น 4 ค่าเริ่มต้นคือ 2 ซึ่งจะพิมพ์ไปยังเทอร์มินัลคำเตือนเกมและข้อผิดพลาดทั้งหมด
คุณสามารถเรียกใช้ลีดเดอร์บอร์ด / ทัวร์นาเมนต์ในพื้นที่ของคุณเองเพื่อประเมินบอทหลาย ๆ ครั้งในครั้งเดียวผ่าน
lux-ai-2021 --rankSystem="trueskill" --tournament path/to/agent1 path/to/agent2 path/to/agent3 path/to/agent4 ...
สิ่งนี้จะเรียกใช้ลีดเดอร์บอร์ดที่จัดอันดับโดย Trueskill และพิมพ์ผลลัพธ์เป็นตารางไปยังคอนโซลของคุณ ตัวแทนถูกจับคู่อัตโนมัติกับฝ่ายตรงข้ามที่มีคะแนนคล้ายกัน แนะนำให้เพิ่ม --storeReplay=false --storeLogs=false เนื่องจากการให้การทำงานนี้เป็นเวลานานจะสร้างการเล่นซ้ำและไฟล์บันทึกจำนวนมาก
ดู lux-ai-2021 --help สำหรับตัวเลือกเพิ่มเติม
เครื่องมือนี้ตรงกับ Lux-AI-20121 อย่างแน่นอน แต่ทำงานบน Ubuntu 18.04 ซึ่งเป็นระบบเป้าหมายที่เซิร์ฟเวอร์การแข่งขันใช้ ตรวจสอบให้แน่ใจว่าได้ติดตั้ง Docker ก่อน
หากต้องการใช้เครื่องมือ LUX-AI-20121 CLI เพียงแค่เรียก bash cli.sh และจะยอมรับข้อโต้แย้งที่แน่นอนเดียวกัน ในการเรียกใช้ครั้งแรกมันจะสร้างอิมเมจนักเทียบท่าและเรียกใช้คอนเทนเนอร์ในพื้นหลัง การวิ่งในอนาคตจะเร็วขึ้นมาก ยิ่งไปกว่านั้นสิ่งนี้ใช้การติดตั้ง BIND ดังนั้นคุณสามารถแก้ไขไฟล์ได้ในเครื่องคอมพิวเตอร์ของคุณและจะสะท้อนให้เห็นในคอนเทนเนอร์ Docker และในทางกลับกัน
ข้อแม้เพียงอย่างเดียวของเครื่องมือนี้คือไม่มีการเข้าถึงไฟล์ในไดเรกทอรีเหนือไดเรกทอรีการทำงานปัจจุบัน (เอาต์พุตของคำสั่ง pwd )
ยิ่งกว่านั้นเครื่องมือนี้จะไม่ได้รับแพ็คเกจ Python ที่ติดตั้งไว้ในคอมพิวเตอร์ของคุณ หากต้องการเพิ่มแพ็คเกจโปรดดาวน์โหลด DockerFile จาก repo นี้ลงในไดเรกทอรีเดียวกับไฟล์ cli.sh และเพิ่มคำสั่งการติดตั้งเช่นเดียวกับด้านล่างของไฟล์
RUN pip3 install <package_name>
หลังจากเปลี่ยน DockerFile ให้เรียกใช้ bash cli.sh clean เพื่อทำความสะอาดสิ่งของนักเทียบท่าเก่าแล้วใช้ cli.sh ตามปกติ
นี่คือรายการเครื่องมือชุมชนทั้งหมดที่สร้างโดยชุมชนของเรา!
ดูคำแนะนำเกี่ยวกับการบริจาค
การออกแบบดั้งเดิมสำหรับซีซั่น 1 ที่ได้รับการยอมรับจาก Bovard และ Stone
การออกแบบ UI/UX โดย ISA
ด้วยความช่วยเหลือในการทดสอบความสมดุลจาก David
เราขอขอบคุณผู้สนับสนุน 3 คนของเรา Quantco, J Ventures และ Qaimera ในปีนี้เพื่อให้เราสามารถจัดหาเงินรางวัลและโอกาสที่น่าตื่นเต้นให้กับคู่แข่งของเรา! สำหรับข้อมูลเพิ่มเติมเกี่ยวกับพวกเขาลองดูที่นี่: https://www.lux-ai.org/sponsors-2021
หากคุณใช้สภาพแวดล้อม Lux AI Season 1 ในงานของคุณโปรดอ้างอิงที่เก็บนี้
@software{Lux_AI_Challenge_S1,
author = {Doerschuk-Tiberi, Bovard and Tao, Stone},
month = {7},
title = {{Lux AI Challenge Season 1}},
url = {https://github.com/Lux-AI-Challenge/Lux-Design-2021},
version = {1.0.0},
year = {2021}
}