এখানে আমি একটি আকর্ষণীয় সমস্যাটি ভেবেছিলাম অন্যান্য দিনের কথা, যার মধ্যে কোডের বিটগুলির সাথে কোডের বিটগুলির সাথে প্রতিদ্বন্দ্বিতা জড়িত রয়েছে কেবলমাত্র কোডটিতে থাকা একটি সম্পত্তি নয়, কোডের অন্য বিটগুলির বিরুদ্ধে একটি খেলা খেলে।
আপনার কাজটি এমন একটি প্রোগ্রাম তৈরি করা যা কোনও গো বোর্ডের বর্তমান অবস্থা গ্রহণ করে এবং কোনটি কী পদক্ষেপ বা পাস করতে হবে তা নির্ধারণ করে।
আপনার প্রোগ্রামটি নিম্নলিখিতগুলি ইনপুট হিসাবে গ্রহণ করবে:
19 টি লাইন, প্রতিটি 19 অক্ষর সমেত বর্তমানে গো বোর্ডে টুকরোগুলি উপস্থাপন করে। একটি চরিত্র
0
খালি বর্গক্ষেত্রকে উপস্থাপন করে,1
কালো এবং2
সাদা।প্রতিটি খেলোয়াড়ের কয়েদী টুকরা সংখ্যার প্রতিনিধিত্ব করে এমন দুটি সংখ্যা (কালো, পরে সাদা)।
যার পালা তার পালা (কালো বা সাদা) প্রতিনিধিত্বকারী একটি নম্বর। উপরে হিসাবে,
1
কালো, এবং2
সাদা।
এবং নিম্নলিখিতগুলির মধ্যে একটি আউটপুট:
স্থানাঙ্কগুলির একটি জুড়ি যা স্থানাঙ্কগুলিকে
a b
প্রতিনিধিত্ব করে move1 1
শীর্ষ-বাম বর্গক্ষেত্র, এবং প্রথম এবং দ্বিতীয় সংখ্যাগুলি যথাক্রমে নীচে এবং ডানদিকে সরানো উপস্থাপন করে।স্ট্রিং
pass
, যা উত্তরণের পদক্ষেপের প্রতিনিধিত্ব করে।
উদাহরণস্বরূপ, প্রোগ্রামটি নিম্নলিখিত ইনপুট গ্রহণ করতে পারে:
0000000000000000000
0000000000000000000
0000000000000000000
0001000000000002000
0000000000000000000
0000000000000000000
0001210000000000000
0000100000000000000
0000000000000000000
0000000000000000000
0000000000000000000
0000000000000000000
0000000000000000000
0000000000000000000
0000000000000000000
0002000000000001000
0000000000000000000
0000000000000000000
0000000000000000000
0 0 1
এটি এমন একটি গেম উপস্থাপন করে যেখানে কেবল কয়েকটি চাল চালানো হয়েছে।
তারপরে প্রোগ্রামটি আউটপুট দেয় 6 5
, যার অর্থ "উপরে থেকে 6th ষ্ঠ বিন্দুতে একটি কালো পাথর এবং বাম থেকে 5 ম"। এটি সাদা পাথর ক্যাপচার হবে 7 5
। বোর্ডের অবস্থা তখন পরিবর্তিত হবে:
0000000000000000000
0000000000000000000
0000000000000000000
0001000000000002000
0000000000000000000
0000100000000000000
0001010000000000000
0000100000000000000
0000000000000000000
0000000000000000000
0000000000000000000
0000000000000000000
0000000000000000000
0000000000000000000
0000000000000000000
0002000000000001000
0000000000000000000
0000000000000000000
0000000000000000000
1 0 2
(মনে রাখবেন যে একটি সাদা পাথর ধরা পড়লেও এটি কালো রঙের বন্দী হিসাবে গণ্য হয়েছে))
আপনার কোড অবশ্যই নিম্নলিখিত বৈশিষ্ট্যগুলি সন্তুষ্ট করতে হবে:
যদি আপনার প্রোগ্রামটিকে একই ইনপুট স্থিতি দেওয়া হয় তবে তা অবশ্যই সর্বদা একই আউটপুট উত্পাদন করে। এটি গো এআই এর নির্ধারণবাদ। এটিতে অবশ্যই কোনও এলোমেলো উপাদান থাকা উচিত নয়।
আপনার প্রোগ্রামটি কী পদক্ষেপ নেবে তা নির্ধারণ করতে অবশ্যই প্রায় 60 সেকেন্ডের বেশি সময় নেওয়া উচিত নয়। কম্পিউটিং পাওয়ারে ভিন্নতার কারণে এই নিয়মটি কঠোরভাবে প্রয়োগ করা হবে না তবে এটি অবশ্যই একটি যুক্তিসঙ্গত সময়ে একটি পদক্ষেপ নিতে হবে।
আপনার প্রোগ্রামের উত্স কোডটি মোট 1 মেগাবাইট (1,048,576 বাইট) অতিক্রম করতে হবে না।
আপনার প্রোগ্রামটি সর্বদা আইনী পদক্ষেপ নিতে হবে। আপনার প্রোগ্রামটি এমন কোনও পদক্ষেপ নিতে পারে না যেখানে একটি পাথর ইতিমধ্যে উপস্থিত রয়েছে, এবং এমন কোনও টুকরো স্থাপন করতে পারে না যার ফলস্বরূপ তার নিজস্ব পাথরগুলির একটি গোষ্ঠী ধরা পড়বে। (এই চ্যালেঞ্জের উদ্দেশ্যে নিয়মের একটি ব্যতিক্রম হ'ল একটি প্রোগ্রামকে এমন একটি অবস্থান তৈরি করার অনুমতি দেওয়া হয়েছিল যা মূলত সেখানে ছিল - কারণ এটি কেবলমাত্র একটি বোর্ডের বর্তমান অবস্থান হিসাবে দেওয়া হয়, এটি কোন ধরণের পদক্ষেপ গ্রহণ করেছিল তা সংরক্ষণ করার আশা করা যায় না আগে.)
আপনার জমা দেওয়ার পরে গো-এর একটি গেম যেখানে বোর্ডের রাজ্যটি খালি শুরু হয় এবং গোটা গেমের বোর্ডের পজিশনের ব্যবস্থা করা হয় এবং একটি পদক্ষেপ গ্রহণ করে তা অন্য সমস্ত সাবমিশনের বিপক্ষে অল-প্লে-সমস্ত টুর্নামেন্টে খেলবে each ।
প্রতিটি জোড় জমা দুটি রাউন্ড খেলবে - প্রতিটি প্লেয়ার কালো হওয়ার সাথে একটি রাউন্ড। যেহেতু এই সমস্যায় থাকা এআইগুলি সম্পূর্ণ নির্দোষ, তাই একই জাতীয় দু'জন এক সাথে খেলে সর্বদা একই খেলাটি খেলতে পারা যায়।
জয়ের শর্তগুলি হ'ল:
যদি আপনার প্রোগ্রামটি খেলাটির শেষ পর্যন্ত খেলতে থাকে তবে বিজয়ী নির্ধারণ করতে গো এর চীনা স্কোরিং বিধি ব্যবহার করা হবে। কোনও কোমি প্রয়োগ করা হবে না।
যদি আপনার প্রোগ্রামটি এমন এক পর্যায়ে চলে যায় যে কোনও পূর্ববর্তী অবস্থানে পৌঁছেছে, সুতরাং এটি অসীম লুপের কারণ হয়ে থাকে, তবে দুটি প্রোগ্রাম বেঁধে দেওয়া হবে বলে ঘোষণা করা হবে।
অন্যান্য জমা দেওয়ার তুলনায় আপনার জমাটি কত পয়েন্ট স্কোর করবে। একটি জয় মূল্য 1 পয়েন্ট, এবং একটি টাই অর্ধেক পয়েন্ট মূল্য সর্বাধিক পয়েন্ট সহ জমাটি সার্বিক বিজয়ী।
এটি একটি কিং-অফ-পার্বত্য চ্যালেঞ্জ, যাতে যে কোনও সময়ে যে কোনও নতুন এন্ট্রি পোস্ট করতে পারে এবং যখন এটি ঘটে তখন পর্যায়ক্রমিকভাবে পর্যালোচনা করা হবে।