দ্রষ্টব্য: এই চ্যালেঞ্জটি বর্তমানে মারা গেছে, কারণ আমি কোনও ম্যাচ চালানোর জন্য প্রয়োজনীয় ভাষাগুলি ইনস্টল করতে অক্ষম। যদি অন্য কারও কাছে এটি করার সময় এবং আগ্রহ থাকে তবে আমি বিরোধী নই।
লিডারবোর্ডের জন্য পোস্টের নীচে দেখুন।
এটি হিল চ্যালেঞ্জের একটি আধা-সমবায় রাজা, যেখানে বটগুলি দ্বিমাত্রিক গ্রিড গ্রাফের মাধ্যমে পথ তৈরি করে। যে বটটি সর্বাধিক ট্র্যাফিকের সাথে নোডগুলি নিয়ন্ত্রণ করে সে বিজয়ী। তবে এটি সংযোগের পথটি তৈরি করতে একাধিক বটের সংস্থান গ্রহণ করে, সুতরাং বটগুলি একসাথে কাজ করতে হবে - কিছুটা হলেও।
গেমপ্লের
নীচে, N > 0
খেলতে বট সংখ্যা হওয়া যাক ।
গ্রিড
খেলা আকারের একটি দ্বি-মাত্রিক পূর্ণসংখ্যা গ্রিড উপর গাওয়া হয় , যার নীচে বাঁদিকের তুল্য হয় । প্রতিটি তুল্য সঙ্গে তিন স্থানাঙ্ক থেকে বহির্গামী প্রান্ত হয়েছে , এবং উপরে, যেখানে -coordinates মডিউল নেয়া হয় । এর অর্থ গ্রিডটি পূর্ব এবং পশ্চিম প্রান্তে প্রায় আবৃত থাকে ps প্রতিটি নীচের স্থানাঙ্ক হ'ল উত্স , এবং প্রতিটি শীর্ষ স্থানাঙ্ক একটি সিঙ্ক ।⌊4/3N2⌋ × ⌊4/3N2⌋
(0,0)
(x,y)
0 ≤ y < ⌊4/3N2⌋-1
(x-1,y+1)
(x,y+1)
(x+1,y+1)
x
⌊4/3N2⌋
(x,0)
(x,⌊4/3N2⌋-1)
নিম্নলিখিত ছবিতে একটি 8 × 8
গ্রিড দেখানো হয়েছে ।
গ্রাফের প্রতিটি প্রান্তটি হয় নিষ্ক্রিয় , সক্রিয় বা ভাঙ্গা । সমস্ত উল্লম্ব নিষ্ক্রিয় শুরু হয়, এবং বট দ্বারা সক্রিয় করা যেতে পারে, যা পরে তাদের মালিক হবে be এছাড়াও, বটগুলি উল্লম্ব ভাঙ্গতে পারে এবং সেগুলি মেরামত করা যায় না।
টার্ন অর্ডার
একটি ঘুরিয়ে একটি ধ্বংস পর্ব এবং একটি অ্যাক্টিভেশন পর্ব থাকে । ধ্বংসের পর্যায়ে, প্রতিটি বট একটি নিষ্ক্রিয় ভার্টেক্সকে ভেঙে দিতে পারে। সেই প্রান্তটি তখন থেকেই ভেঙে গেছে এবং কারও দ্বারা সক্রিয় করা হতে পারে না। অ্যাক্টিভেশন পর্যায়ে, প্রতিটি বট একটি নিষ্ক্রিয় প্রান্তকে সক্রিয় করতে পারে। তারপরে, তারা সেই শীর্ষস্থানটির মালিক, এবং এটি অন্য কারও দ্বারা পুনরায় সক্রিয় করা যায় না। বেশিরভাগ বট একক ভার্টেক্সের মালিক হতে পারে, যদি তারা সকলে একই পালাটি সক্রিয় করে। প্রতিটি পর্যায়ে, শীর্ষস্থানীয় নির্বাচনগুলি একই সাথে সম্পন্ন হয়।
স্কোরিং
এক রাউন্ড ঠিক বাঁক জন্য স্থায়ী । এর পরে, রাউন্ডটি নীচে স্কোর করা হয়। প্রতিটি সক্রিয় উত্স ভার্টেক্স থেকে আমরা বারবার অ্যাক্টিভ শীর্ষকোষের সাথে এলোমেলোভাবে গভীরতা-প্রথম অনুসন্ধান সম্পাদন করি (অর্থাত্ প্রতিটি প্রান্তের বাচ্চারা একটি এলোমেলো ক্রমে পরিদর্শন করা হয়)। যদি উত্স থেকে কিছুটা ডুবে যাওয়ার জন্য কোনও পাথ খুঁজে পাওয়া যায়, তবে সেই পথের সমস্ত প্রান্তের জন্য, শীর্ষবিন্দুর প্রতিটি মালিক একটি পয়েন্ট পাবেন।N2
N
পুরো গেমটি 100 রাউন্ডের জন্য স্থায়ী হয় এবং সামগ্রিকভাবে সর্বাধিক পয়েন্ট সহ বট বিজয়ী হয়। স্কোরের বৈকল্পিকতা খুব বেশি হলে আমি এই সংখ্যাটি বাড়িয়ে তুলতে পারি।
অতিরিক্ত বিধি
- নিয়ামক বা অন্যান্য জমা দেওয়ার সাথে কোনও বিশৃঙ্খলা নেই।
- প্রতিযোগী প্রতি সর্বাধিক এক জমা।
- গেমের শুরুতে একটি ব্যক্তিগত পাঠ্য ফাইল বাদে কোনও বাহ্যিক সংস্থান পরিষ্কার করা হয়নি।
- নির্দিষ্ট প্রতিপক্ষকে বীট বা সমর্থন করতে আপনার বট ডিজাইন করবেন না।
- আপনার বটটি সংকলন এবং চালনার জন্য আদেশগুলি সরবরাহ করুন। ডেবিয়ান লিনাক্সের জন্য অবাধে উপলভ্য যে কোনও সংকলক / দোভাষী গ্রহণযোগ্য।
নিয়ামক
কন্ট্রোলার পাইথন 3 এ লেখা এবং এটি গিটহাবে পাওয়া যায় । বিস্তারিত নির্দেশাবলীর জন্য README ফাইলটি দেখুন। আপনাকে শুরু করতে এখানে একটি এপিআই রয়েছে:
- প্রতিটি রাউন্ডের শুরুতে বটগুলি শুরু হয় এবং রাউন্ডের শেষ অবধি অবিরত থাকে। নিউলাইন-সমাপ্ত বার্তা ব্যবহার করে STDIN এবং STDOUT এর মাধ্যমে নিয়ামকের সাথে যোগাযোগ।
BEGIN [num-of-bots] [num-of-turns] [side-length]
শুরুতে ইনপুট হয়।DESTROY [turn]
প্রতিটি ধ্বংস পর্বের শুরুতে ইনপুট। আপনার বটটি কোনওVERTEX x,y
একটি শীর্ষটি বাছাই করতে বা এর সাথে প্রতিক্রিয়া জানাবেNONE
।BROKEN [turn] [your-choice] [other-choices]
প্রতিটি ধ্বংস পর্বের শেষে ইনপুট। অন্যান্য বটগুলির ক্রম প্রতিটি গেমের শুরুতে এলোমেলোভাবে করা হয় তবে এটি চলাকালীন স্থির থাকে। পছন্দ হিসাবেx,y
বা উপস্থাপন করা হয়N
।ACTIVATE [turn]
এবংOWNED [turn] [your-choice] [other-choices]
অ্যাক্টিভেশন পর্যায়ের উপরের সমতুল হয়, এবং একই শব্দার্থবিদ্যা আছে।SCORE [your-score] [other-scores]
খেলা শেষে ইনপুট হয়।- তোমার বট হয়েছে 1 সেকেন্ড ফেজ ফলাফল বিশ্লেষণ এবং পরবর্তী প্রান্তবিন্দু বেছে নিতে, এবং 1 সেকেন্ড স্কোর দেওয়া পর প্রস্থান করার জন্য। আমি আমার তুলনামূলকভাবে পুরানো ল্যাপটপে সাবমিশনগুলি পরীক্ষা করব, তাই এখানে কিছুটা মার্জিন রেখে দেওয়া ভাল।
আপনার আউটপুট বাফার ফ্লাশ করতে দয়া করে মনে রাখবেন। এটি না করা কিছু পরিবেশে নিয়ামককে স্তব্ধ করতে পারে।
লিডারবোর্ড
3/13/2015 আপডেট হয়েছে
পিস মেকার প্রস্তুত এবং চলমান, এবং ফানেলওয়েব একটি আপডেটও পেয়েছে। স্কোরগুলি বিশালতার অর্ডারে উঠে গেল। সংযোগকারী দুটি গেমের সময়সীমা অতিক্রম করে।
Funnelweb: 30911
Connector: 18431
Watermelon: 3488
Annoyance: 1552
Explorer: 735
Checkpoint: 720
Random Builder: 535
FaucetBot: 236
Peacemaker: 80
এএসসিআইআই আর্ট গ্রাফিক্সের সাথে সম্পূর্ণ লগটি নিয়ামকের সংগ্রহস্থলটিতে পাওয়া যাবে graphical_log.txt
।
কিছু পর্যবেক্ষণ:
- এর সামনে একটি একক প্রান্তটি ভেঙে খুব সহজেই সংযোগকারী থামানো যেতে পারে। আমার সন্দেহ হয় বিরক্তি প্রায়শই এটি করে। যাইহোক, এটি বর্তমানে সামান্য অর্থবোধ করে কারণ কেবল সংযোজক কল্পনা করেই কোনও পথ তৈরি করতে পারে।
- সংযোগ পথে চলার কারণেই তরমুজ একটি শালীন স্কোর অর্জন করতে পারে (যেহেতু ডিএফএস এর শীর্ষাংশগুলি খুব সম্ভবত ব্যবহার করে)।
- এক্সপ্লোরার তরমুজ থেকে লতা বাড়তে পছন্দ করে।
- সংযুক্তকারী সাধারণত গ্রিডের নীচের অর্ধেক অংশে এটি ল্যাচ করায় আপডেট হওয়া ফানেলওয়েব সত্যিই ভাল স্কোর পায়।
- গেমগুলি বেশ দীর্ঘ হচ্ছে, আমার মেশিনে গড়ে প্রায় 25 সেকেন্ড সময় লাগে।
4/3*N^2
এবং এমনকি সেখানেও, বটগুলিকে বৈধ পথ তৈরিতে সমস্যা হয়েছিল। যাইহোক, সংযোগকারী একটি ত্রুটির কারণে সাময়িকভাবে অযোগ্য ঘোষণা করা হয়েছিল, এবং এখন এটি ঠিক করা হয়েছে, আমি গেমগুলি আরও আকর্ষণীয় হওয়ার প্রত্যাশা করি। আমি আজ রাতে আরও একটি ব্যাচ চালাবো।