Google AI Challenge - כללי - HWzone פורומים
עבור לתוכן
  • צור חשבון

Google AI Challenge


tranq

Recommended Posts

http://ai-contest.com/index.php

יש משחק כזה שנקרא Galcon -- מטרת המשחק הוא לכבוש את כל הפלנטות של האיוב על ידי שליחת ספינות. ספינות בפלנטות מתרבות כל תור, בנוסף ככל שהפלנטה שלך גדולה ככה היא מייצרת יותר ספינות להתקפה.

דרך אגב, במשחק אפשר לשחק פה -- http://www.galcon.com/flash

אז איך זה קשור בעצם לצ'אלנג' ?

אז זהו, מטרה שלך היא לכתוב בוט שיתחרה מול בוטים אחרים של שחקנים מכל העולם, וכמובן יש דירוג -- http://ai-contest.com/rankings.php

מה צריך כדי לשחק?

כדי לשחק צריך להירשם http://ai-contest.com/register.php ולהוריד starter-pack שזה בעצם אוסף של classes & methods לשפה שאתה רוצה לכתוב בוט.

בנתיים יש starter-pack לשפות הבאות: Perl ,C++, Java, Python, C#, Haskell, Lisp, Javascript(node.js), PHP, Lisp, OCaml

http://ai-contest.com/starter_packages.php

יותר מזה, בפורומים שלהם אפשר למצוא עוד כל מיני גרסאות של starter-packages.

הורדתי את הstarter-package, מה עכשיו?

שימו לב, אני משתמש בסטארט-פאקג' של שפת Python לצורך הדגמה אבל בעיקרון הם כולם זהים.

unzip them!

יש לכם את הקבצים הבאים:

example_bots - תיקייה עם בוטים פשוטים כתובים בJAVA שיהיה על מי לנסות את היצירה שלך.

maps - בתיקייה זו יש לך הרבה קבצי טקסט -- אלה הם מפות משחק.

tools - בתיקייה זו יש קבצי הפעלת המשחק.

PlanetWars.py - אוסף של classes&methods שיעזרו לנו לפתח את הבוט שלנו.

MyBot.py - כאן זה הבוט שלנו, כל האלגוריתם שם.

README - טוב, נו, זה ברור. ;)

אפשר לנסות להתחיל את המשחק על ידי הפקודה בcmd

java -jar tools/PlayGame.jar maps/map7.txt 1000 1000 log.txt "python MyBot.py" "java -jar example_bots/DualBot.jar" | java -jar tools/ShowGame.jar

"java -jar example_bots/DualBot.jar" -- שורה זו אומרת באיזה מהבוטים מהתיקייה של שבאה עם הסטארט-פאקג' להשתמש, סתכלו יש שם עוד כמה.

הערה: אם אתם משתמשים בשפה אחרת מPython דאגו לשנות את "python MyBot.py" לפקודה מתאימה.

הערה 2: דאגו לא לשנות את שם הבוט אחרת יהיו בעיות בUPLOAD בהמשך.

אז איך מתחרים מול שחקנים אחרים וצוברים ניקוד?

את החלק של האלגוריתם אני ישאיר לכתוב לכם, כי אני בעצמי עדיין לא כתבי שום דבר נחמד.

אז, אחרי שכתבתים, או חשבתם שכתבתם את "הדבר", צריך לאחסן אותו בZIP, ולשלוח בעמוד של Upload Your Code שנמצא באתר מתחת ל My Account.

קראו היטב את הערות בעמוד זה! ואז Upload.

לפי מה הבנתי, הניקוד מתאפס כל פעם שמעלים מחדש את הבוט.

כדי לראות את ההפסדים\ניצחונות שלכם כנסו לMy Profile ותוכלו לראות את המשחק עצמו.

אז...

יש רק 6 אנשים מישראל והתחרות רצה כמעט וחודש, אתם באים או מה? :hat:

קישור לתוכן
שתף באתרים אחרים

לא הבנתי מה צריך לכתוב בדיוק.

אני משער שמבוא למדעי המחשב וJAVA לא מספיק לזה אה?

יותר ממספיק, זה תחרות לחשיבה לא לתכנות, אתה צריך למצוא את האלרגוריתם היעיל ביותר.

אבל רק אותי זה מטריד שגוגל מחפשת אלגוריתם יעיל לכיבוש פלנטות?

קישור לתוכן
שתף באתרים אחרים

יותר ממספיק, זה תחרות לחשיבה לא לתכנות, אתה צריך למצוא את האלרגוריתם היעיל ביותר.

אבל רק אותי זה מטריד שגוגל מחפשת אלגוריתם יעיל לכיבוש פלנטות?

בהתחשב בקצב גידול של , ובאיך שהם לאט לאט משתלטים על עוד ועוד תחומים,

אני לא חושב שיש מה להיות מוטרדים שהם מחפשים, צריך להיות מוטרדים מזה שהם כנראה כבר מצאו אחד...

קישור לתוכן
שתף באתרים אחרים

לקח לי זמן, אבל הצלחתי לכתוב קוד שמנצח את ה-DualBot.

כמה הערות\הארות: IssueOrder לא מעדכן את העותק המקומי, אז לדוגמא, אם אתם מתכוונים לקרוא לה יותר מפעם אחת בתור ואתם מסתמכים על מספר הספינות בכוכב, אתם צריכים לדעכן את העותק המקומי ע"י Planet.RemoveShips. צריך לשים לב לדבר הזה, כי אחרת מגיעים למצב שאתם שולחים יותר ספינונת ממה שיש בכוכב.

קישור לתוכן
שתף באתרים אחרים

אכן, בנוסף לזה העניין הוא שהפרסר שלהם מעדיף ג'אווה משום מה, קוד זהה מבחינה לוגית רץ יותר טוב כשהוא כתוב בjava מאשר C# למרות שהם מקבלים בסופו של דבר Plaintext ומפרסרים אותו בעצמם.

קישור לתוכן
שתף באתרים אחרים

ארכיון

דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.

×
  • צור חדש...