การจัดการงาน IOI Thailand League 2010

จาก Theory Wiki
ไปยังการนำทาง ไปยังการค้นหา

เอกสารนี้ใช้เป็นหน้าหลักเกี่ยวกับการจัดการงานการแข่งขัน IOI Thailand League 2010

ลิงก์ย่อ http://theory.cpe.ku.ac.th/wiki/index.php/League2010

แนวคิด

ปัญหา: ปัจจุบันการแข่ง TOI ที่จัดอยู่ค่อนข้างยากสำหรับคนหัดใหม่และอาจจะเข้าถึงยาก

ทางคณะกรรมการจัดงาน IOI 2011 จึงได้ประสานงานกับทางวิชาการ.คอม ให้เข้ามาช่วยในการประชาสัมพันธ์และการจัดการ ทำให้ ส่วนหลักของการแข่งขัน TOI จะเปลี่ยนไปเป็น IOI Thailand League 2010 โดยมีการเปลี่ยนแปลงคร่าว ๆ ดังนี้

  • มีการแข่งขันหลายระดับ ตอนนี้จะมี 3 ระดับ ระดับบนควรจะเป็นประมาณ TOI.C
  • จัดแข่งรายเดือน ทุกเดือน และมีการเลื่อนระดับ ลักษณะนี้จะคล้าย ๆ กับลีคของกีฬา เพื่อให้ผู้เข้าแข่งขันเห็นการพัฒนาของตนเอง
  • กำหนดการแข่งที่ยืดหยุ่นมากขึ้น มีการแข่งขันออนไลน์ ที่ไม่กำหนดเวลาแค่ 3 - 5 ชั่วโมง แต่ให้เวลานักเรียนเข้ามาทำตอนไหนก็ได้
  • ประชาสัมพันธ์ถึงโรงเรียน มีการไปจัดแข่งที่โรงเรียนต่าง ๆ ด้วย โดยตระเวนไปเดือนละหนึ่งโรงเรียน (ทางวิชาการ.คอมจะช่วยจัดให้ แต่เราสามารถไปเดินสายด้วยก็ได้)

ส่วนการแข่งขันระดับที่สูงขึ้น เช่น TOI.CPP จะยังจัดเหมือนเดิม เป็นครั้งคราวไป

สำหรับทีมงาน

กิจกรรมที่คุณสามารถช่วยได้

หาคุณต้องการช่วยเหลือ มีกิจกรรมมากมายที่คุณสามารถช่วยได้ หลายกิจกรรมสามารถทำได้ยามว่าง (มั๊ง) กรุณาอ่านส่วนช่องทางติดต่อด้านล่างด้วย จะได้ติดต่อกันได้สะดวก

1. ออกโจทย์

อันนี้เป็นกิจกรรมหลักที่น่าจะเป็นแก่นของการจัดการงาน IOI Thailand League เลยก็ว่าได้ คาดว่ากิจกรรมนี้จะสัมพันธ์กับกิจกรรมที่ 2 (ทำ test data) อย่างลึกซึ้ง

ในการเขียนให้ใช้เทมเพลตต่อไปนี้: แบบแรก .doc, แบบสอง .docx

เมื่อเขียนแล้วสามารถนำเข้าสู่โฟลด์เดอร์ dropbox ที่แชร์ไปให้ได้เลย (dropbox? แชร์อะไร? --- กรุณาอ่านด้านล่าง) ในโฟลด์เดอร์นั้นจะมีโครงสร้างคร่าว ๆ ดังนี้

/toi-tasks
  /samples     --- ตัวอย่างที่ใส่ให้ทดลองหลัง register
  /templates   --- เทมเพลตข้างต้น
  /mar53       --- โจทย์และ testdata แยกตามเดือน
  /apr53
  /... 
  /unused      --- คลังโจทย์ที่ยังไม่ได้ใช้
    /toi.a     --- โจทย์ที่มี test data แล้ว แยกตามระดับ
    /toi.b
    /toi.c
    /unclassified  --- โจทย์ที่มี test data แล้ว แต่ยังไม่ได้แยกระดับ
    /testdata  --- test data ของโจทย์ทั้งหมด ไม่แยกระดับ (เพื่อให้การเปลี่ยนระดับโจทย์ทำได้ง่าย)
    /NO-TESTDATA   --- คลังโจทย์ที่รอคอย test data จากคุณ
      /toi.*       --- แยกตามระดับ
      /unclassified  --- ยังไม่ได้แยกระดับ

สมมติว่าวันดีคืนดีคุณคิดโจทย์ได้ อย่ารอช้า เปิดเทมเพลตข้างต้นแล้วเขียนส่งมา ถ้าคุณคิดว่าคุณจะทำ test data เอง แค่นั้นคงพอ แต่ถ้าคิดว่าคงไม่ทำแล้ว (555) กรุณาเมล์แจ้ง (หรือบอกใน facebook) คนที่ว่างจะทยอยทำ test data ให้ต่อไป

2. พัฒนาเฉลยและ test data

จะเพิ่มรายละเอียดอีกเร็ว ๆ นี้

ถ้าวันดีคืนดีคุณว่าง ๆ ไม่มีอะไรทำ อยากเขียนโจทย์แต่ไร้ซึ่งแรงบันดาลใจ... มาเขียนเฉลยและทำ test data กันดีกว่า

ตอนนี้เรายังไม่มีระบบจัดคิว เพราะคาดว่าคนคงยังไม่เยอะขนาดแย่งโจทย์ทำ test data กัน (แต่ถ้ามีเหตุการณ์ประมาณนั้นขึ้น คงต้องช่วยกันหาเว็บจัดการเพิ่มเติม)

เลือกโจทย์ที่อ่านแล้วคุณสนใจ เขียนเฉลยและทำ test data โดยใช้รูปแบบไฟล์ตามรายละเอียดด้านล่าง (ดูส่วนโจทย์และข้อมูลทดสอบ) จากนั้นก็ upload ไฟล์มาใน dropbox ได้เลย

3. แก้ไข ปรับปรุงโจทย์

จะเพิ่มรายละเอียดเร็ว ๆ นี้

4. ทดสอบ test data

จะเพิ่มรายละเอียดเร็ว ๆ นี้

5. ดูแลการเตรียมงาน

จะเพิ่มรายละเอียดเร็ว ๆ นี้

6. ดูแลการแข่งขัน

จะเพิ่มรายละเอียดเร็ว ๆ นี้

ช่องทางติดต่อ

ในการสื่อสารจะใช้เมล์เป้นหลัก โดยจะมีเมล์ลิสต์สองอัน คือ

  • เมล์ลิสต์ของทีมงานทั้งหมด คนที่สนใจช่วยเหลือจะได้รับการเชิญเข้าเมล์ลิสต์นี้ หลัก ๆ จะเอาไว้ประกาศข่าว หรือแจ้งเวลามีคนเพิ่มโจทย์เข้าในระบบเป็นต้น จะเป็นเมล์ลิสต์ที่ส่งเมล์ไม่มากนัก
  • เมล์ลิสต์ของทีมหลัก (core team) สมาชิกในเมล์ลิสต์นี้จะเปลี่ยนไปตามแต่ละครั้ง สมาชิกจากในเมล์ลิสต์ของทีมงานสามารถสมัครเข้าเมล์ลิสต์ทีมหลักเพื่อระบุว่าพร้อมจะช่วยการจัดครั้งนั้น ๆ ได้ เมล์ลิสต์นี้จะมีการสนทนาที่มากกว่าเมล์ลิสต์แรก

ขณะนี้ได้ทดลองเปิดกลุ่มใน facebook ร่วมด้วย หวังว่าจะติดต่อกันสะดวกขึ้น

ส่วนโจทย์และข้อมูลทดสอบจะแชร์ผ่านระบบของ dropbox ที่จะแชร์ให้กับทีมงาน

การพัฒนาโจทย์และข้อมูลทดสอบ

โจทย์ ควรเขียนโดยใช้เทมเพลต แบบแรก .doc, แบบสอง .docx สำหรับทีมงานที่ไม่สะดวกกับรูปแบบดังกล่าวสามารถส่งในรูปแบบอื่นได้เช่นกัน

โจทย์จะต้องระบุ: (1) ขอบเขตทั้งเวลาและหน่วยความจำให้ชัดเจน

ข้อมูลทดสอบ ในกรณีที่การตรวจเป็นแบบการเปรียบเทียบสตริงธรรมดา ระบบ grader ปัจจุบันสามารถอัพโหลดข้อมูลทดสอบและโจทย์ได้ทางหน้าเว็บแล้ว โดยจะอัพโหลดเป็นแฟ้ม .zip, .tar, .tar.gz, หรือ .tgz โดยไฟล์ดังกล่าวจะต้องมีรูปแบบดังนี้

  • ไฟล์ข้อมูลทดสอบ จะมีสองชุด ชุดแรกเป็นตัวอย่างในข้อสอบ (ใช้ตรวจระหว่างการแข่งขัน) และชุดที่สองสำหรับการตรวจจริง
    • ไฟล์ข้อมูลนำเข้าจะมีชื่อ เช่น 1.in, 2.in สำหรับข้อมูลชุดทดสอบจริง สำหรับชุดข้อมูลทดสอบตัวอย่างจะเพิ่ม prefix ex. เข้าไป ตัวอย่างเช่น ex.1.in หรือ ex.2.in
    • หรือถ้าต้องการ group หลาย test case ให้ใช้ a, b, c ในการระบุต่อท้ายหมายเลขข้อมูลทดสอบ เช่น 1a.in, 1b.in, 1c.in หรือ ex.1a.in (โดยปกติข้อมูลชุดทดสอบตัวอย่างมักไม่ต้อง group)
    • ไฟล์ข้อมูลผลลัพธ์ มีนามสกุล .sol ที่ตรงกับไฟล์ข้อมูลนำเข้า
  • ไฟล์โจทย์จะชื่ออะไรก็ได้ ให้มีนามกสุล pdf ไฟล์ดังกล่าวจะถูก link จากโจทย์ให้โดยอัตโนมัติ

สำหรับการตรวจแบบอื่นก็สามารถทำได้ แต่ต้องอัพโหลดและ import ข้อมูลทดสอบแบบ manual

เครื่องสำหรับทดสอบ ในการทดสอบ จัดระดับ และวิจารณ์โจทย์ สามารถใช้เครื่องที่ http://theory.cpe.ku.ac.th/toi-test โดย account จะกระจายให้ทางเมล์ลิสต์ต่อไป

มีไอเดีย แต่ไม่มีเวลาพัฒนาโจทย์

จะระบุต่อไป

ต้องการเข้าร่วมทีมงาน

ติดต่อไปที่รายชื่อต่อไปนี้ (ชื่อจะเพิ่มขึ้นในภายหลัง)

  • จิตร์ทัศน์ ฝักเจริญผล
  • ทักษพร กิตติอัครเสถียร
  • ภัทร สุขประเสริฐ
  • วิชชากร กมลพรวิจิตร
  • อาภาพงศ์ จันทร์ทอง

แล้วคำเชิญต่าง ๆ จะตามมาเอง