প্রকল্প সম্পর্কে
OptiChess হলো একটি পরীক্ষামূলক দাবা ইঞ্জিন এবং অ্যানালাইসিস টুল যা অ্যালগরিদমিক গবেষণার জন্য ডিজাইন করা হয়েছে। এটি GrogrosZero-এর ওপর ভিত্তি করে তৈরি, যা একটি হাইব্রিড সার্চ সিস্টেম। এই সিস্টেমটি UCT-স্টাইল নোড সিলেকশনের সাথে alpha-beta pruning, ইন্টিগ্রেটেড quiescence search এবং Win/Draw/Loss (WDL) স্ট্যাটিস্টিক্যাল ইভ্যালুয়েশনকে একত্রিত করে।
এর প্রধান প্রযুক্তিগত বৈশিষ্ট্যগুলোর মধ্যে রয়েছে:
- মেমরি ম্যানেজমেন্ট: একটি বাউন্ডেড, জিরো-অ্যালোকেশন সার্চ যা Node এবং Board অবজেক্টের জন্য প্রি-অ্যালোকেটেড পুল ব্যবহার করে, যাতে হট পাথে হিপ অ্যালোকেশন দূর করা যায়।
- ইঞ্জিন আর্কিটেকচার: এতে একটি Zobrist-keyed ট্রান্সপজিশন টেবিল, ৩১টি ওয়েটেড টার্ম বিশিষ্ট একটি ইভ্যালুয়েটর এবং একটি ঐচ্ছিক পরীক্ষামূলক নিউরাল নেটওয়ার্ক ইভ্যালুয়েশন অন্তর্ভুক্ত রয়েছে।
- অ্যানালাইসিস GUI: raylib দিয়ে তৈরি, যা ক্যান্ডিডেট মুভ অ্যারো, ইভ্যালুয়েশন গ্রাফ এবং গেম ট্রি ভেরিয়েশনসহ একটি ভিজ্যুয়াল বোর্ড প্রদান করে।
- স্ক্রিন বাইন্ডিং: একটি উইন্ডোজ-নির্দিষ্ট ক্ষমতা যা ইঞ্জিনটিকে পিক্সেল কালার বিশ্লেষণের মাধ্যমে সরাসরি স্ক্রিন থেকে দাবার পজিশন পড়তে দেয়, যা ব্রাউজার-ভিত্তিক গেমের লাইভ অ্যানালাইসিস সম্ভব করে তোলে।
- টেস্টিং স্যুট: একটি ইন্টারঅ্যাক্টিভ স্যুট যা Perft মুভ জেনারেশন ভ্যালিডেশন, রেফারেন্স পজিশনের বিপরীতে ইভ্যালুয়েশন একুরেসি এবং ট্যাকটিক্যাল পাজল সলভিং কভার করে।
প্রকল্পটি C++20 এবং CMake ব্যবহার করে Windows x64-এর জন্য তৈরি করা হয়েছে। এটি কোনো UCI-কমপ্লায়েন্ট ইঞ্জিন নয় এবং এটি প্রতিযোগিতামূলক খেলার পরিবর্তে গবেষণার উদ্দেশ্যে তৈরি।
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.