আপডেট 2018-07-26: এটাই! আমরা এখন সেই জায়গায় পৌঁছে যাচ্ছি যেখানে এই ধরণের গেমটি দ্রবণযোগ্য হবে! ওপেনএআইআই ব্যবহার করে এবং গেম ডোটা 2 এর উপর ভিত্তি করে, একটি দল এমন একটি এআই তৈরি করতে পারে যা 5v5 গেমটিতে আধা-পেশাদার গেমারদের পরাজিত করতে পারে । আপনি যদি ডোটা ২ জানেন, তবে আপনি জানেন যে এই গেমটি মেকানিক্সের দিক থেকে ডায়াবলোর মতো গেমগুলির সাথে বেশ মিল, তবে কেউ যুক্তি দিতে পারে যে টিম খেলার কারণে এটি আরও জটিল।
যেমনটি প্রত্যাশা করা হয়েছিল, গভীর শিক্ষার মাধ্যমে পুনর্বহাল শেখার ক্ষেত্রে সর্বশেষ অগ্রগতির জন্য এবং ওপেনএআইআই এর মতো উন্মুক্ত গেম ফ্রেমওয়ার্কগুলি ব্যবহার করে যা আপনি একটি ঝরঝরে এপিআই পেয়ে যাওয়ায় এআই এর বিকাশ সহজতর করে এবং আপনি গেমটি ত্বরান্বিত করতে পারেন বলেও এটি অর্জন করা হয়েছে (এআই খেলল প্রতিদিন নিজের বিরুদ্ধে 180 বছরের গেমপ্লে সমতুল্য!)।
5 আগস্ট 2018 এ (10 দিনের মধ্যে!) , শীর্ষ ডোটা 2 গেমারদের বিরুদ্ধে এই এআইয়ের পরিকল্পনা করার পরিকল্পনা করা হয়েছে। যদি এটি কার্যকর হয় তবে একটি বড় বিপ্লব আশা করুন, সম্ভবত গো গেমটি সমাধান করার মতো মিডিয়াযুক্ত নয়, তবে এটি গেমস এআইয়ের জন্য একটি বিশাল মাইলফলক হবে!
আপডেট 2017-01: আলফাগোর সাফল্যের পর থেকে মাঠটি খুব দ্রুত গতিতে চলেছে এবং প্রায় প্রতি মাসে গেমসে মেশিন লার্নিং অ্যালগরিদমগুলির বিকাশের সুবিধার্থে নতুন ফ্রেমওয়ার্ক রয়েছে। আমি যে সর্বাধিক সন্ধান পেয়েছি তার একটি তালিকা এখানে রয়েছে:
- ওপেনএআইএর ইউনিভার্স : মেশিন লার্নিং ব্যবহার করে কার্যত যে কোনও গেম খেলতে একটি প্ল্যাটফর্ম । এপিআই পাইথন-এ রয়েছে এবং এটি ভিএনসি দূরবর্তী ডেস্কটপ পরিবেশের পিছনে গেমগুলি চালায়, যাতে এটি কোনও গেমের চিত্রগুলি ক্যাপচার করতে পারে! আপনি সম্ভবত মেশিন লার্নিং অ্যালগরিদমের মাধ্যমে ডায়াবলো দ্বিতীয় খেলতে ইউনিভার্স ব্যবহার করতে পারেন!
- ওপেনআইএর জিম : ইউনিভার্সের অনুরূপ তবে বিশেষত শক্তিবৃদ্ধি শেখার অ্যালগরিদমকে লক্ষ্যযুক্ত করা (যাতে এটি আলফাগো দ্বারা ব্যবহৃত কাঠামোর সাধারণীকরণের মতো তবে আরও অনেক গেমের ক্ষেত্রে)। নেই Udemy উপর একটি কোর্স OpenAI জিম ব্যবহার ব্রেকআউট বা নিয়তি মত গেম মেশিন লার্নিং প্রয়োগের আচ্ছাদন।
- টর্চক্রাফ্ট : টর্চ (মেশিন লার্নিং ফ্রেমওয়ার্ক) এবং স্টারক্রাফ্ট: ব্রুড ওয়ারের মধ্যে একটি সেতু ।
- পাইজিটিএ 5 : কেবলমাত্র স্ক্রিন ক্যাপচার ( অনলাইনে প্রচুর ভিডিও সহ ) ব্যবহার করে জিটিএ 5 -এ স্ব-ড্রাইভিং গাড়ি তৈরির একটি প্রকল্প ।
খুব উত্তেজনাপূর্ণ সময়!
গুরুত্বপূর্ণ আপডেট (২০১-0-০6): ওপি দ্বারা উল্লিখিত হিসাবে, শুধুমাত্র ভিজ্যুয়াল ইনপুট ব্যবহার করে গেম খেলতে প্রশিক্ষণ দেওয়ার এই সমস্যাটি এখন বেশ কয়েকটি গুরুতর প্রতিষ্ঠান যেমন ডিপমাইন্ড ডিপ-ক্লিয়ারিং-নেটওয়ার্ক (ডিকিউএন) এর মতো বেশ কিছু আশাব্যঞ্জক ফলাফলকে মোকাবেলা করছে। ) ।
এবং এখন, আপনি যদি পরবর্তী স্তরের চ্যালেঞ্জটি গ্রহণ করতে চান, তবে কেবলমাত্র ভিজ্যুয়াল ইনপুট ব্যবহার করে ডুম খেলতে নেটওয়ার্ক প্রশিক্ষণ দেওয়ার জন্য আপনি বিভিন্ন এআই ভিশন গেম ডেভেলপমেন্ট প্ল্যাটফর্মগুলি যেমন ভিজডুম , একটি উচ্চতর অনুকূলিত প্ল্যাটফর্ম (7000 fps) ব্যবহার করতে পারেন :
ভিজেডডুম এআই বটগুলিকে বিকাশ করতে দেয় যা কেবল দর্শনীয় তথ্য (স্ক্রিন বাফার) ব্যবহার করে ডুম খেলা। এটি মূলত মেশিন ভিজ্যুয়াল লার্নিং এবং বিশেষত গভীরতর শক্তিবৃদ্ধি শেখার গবেষণার জন্য উদ্দিষ্ট। ভিআইজেডম গেম মেকানিক্স সরবরাহ করতে জেডডুমের উপর ভিত্তি করে।
এবং ফলাফলগুলি বেশ আশ্চর্যজনক, তাদের ওয়েবপৃষ্ঠায় ভিডিওগুলি এবং সুন্দর টিউটোরিয়াল (পাইথনে) এখানে দেখুন!
ভূমিকম্প 3 অ্যারেনার জন্যও একই ধরণের প্রকল্প রয়েছে, যাকে বলা হয় কোয়েজেন্টস , যা অন্তর্নিহিত গেমের ডেটাতে সহজ এপিআই অ্যাক্সেস সরবরাহ করে তবে আপনি এটি স্ক্র্যাপ করতে পারেন এবং কেবলমাত্র আপনার এজেন্টকে নিয়ন্ত্রণ করতে স্ক্রিনশট এবং এপিআই ব্যবহার করতে পারেন।
আমরা যদি কেবল স্ক্রিনশট ব্যবহার করি তবে কেন এই জাতীয় প্ল্যাটফর্মটি কার্যকর? এমনকি যদি আপনি অন্তর্নিহিত গেমের ডেটা অ্যাক্সেস না করেন তবে এই জাতীয় প্ল্যাটফর্ম সরবরাহ করে:
- গেমগুলির উচ্চ কার্যকারিতা বাস্তবায়ন (আপনি কম সময়ের সাথে আরও ডেটা / নাটক / শেখার প্রজন্ম তৈরি করতে পারেন যাতে আপনার শেখার অ্যালগরিদমগুলি দ্রুত রূপান্তর করতে পারে!)।
- আপনার এজেন্টগুলিকে নিয়ন্ত্রণ করার জন্য একটি সহজ এবং প্রতিক্রিয়াশীল এপিআই (যেমন, আপনি যদি কোনও খেলা নিয়ন্ত্রণ করতে মানবিক ইনপুটগুলি ব্যবহার করার চেষ্টা করেন তবে আপনার কিছু কমান্ড হারিয়ে যেতে পারে, তাই আপনি আপনার ফলাফলগুলির অবিশ্বস্ততার সাথেও ডিল করতে পারেন ...)।
- কাস্টম পরিস্থিতিতে সহজ সেটআপ ।
- কাস্টমাইজযোগ্য রেন্ডারিং (প্রসেসিংয়ে স্বাচ্ছন্দ্যের জন্য চিত্রগুলি "সরলীকরণ" করতে কার্যকর হতে পারে)
- সিঙ্ক্রোনাইজড ("টার্ন-বাই-টার্ন") খেলুন (যাতে আপনাকে প্রথমে রিয়েলটাইমে কাজ করার জন্য আপনার অ্যালগরিদমের প্রয়োজন হয় না, এটি একটি বিশাল জটিলতা হ্রাস)
- অতিরিক্ত সুবিধা বৈশিষ্ট্য যেমন ক্রসপ্ল্যাটফর্মের সামঞ্জস্যতা, রেট্রোকম্প্যাটিবিলিটি (নতুন গেম আপডেটের সময় আপনি নিজের বটটিকে আর গেমের সাথে কাজ না করার ঝুঁকি দেন না) ইত্যাদি etc.
সংক্ষিপ্তসার হিসাবে, এই প্ল্যাটফর্মগুলির দুর্দান্ত জিনিসটি হ'ল তারা আপনাকে যে আগের প্রযুক্তিগত সমস্যাগুলি মোকাবেলা করেছিল তার অনেকটাই হ্রাস করে (গেম ইনপুটগুলি কীভাবে পরিচালনা করতে হবে, পরিস্থিতিগুলি কীভাবে সেটআপ করা যায় ইত্যাদি) যাতে আপনাকে কেবল শিখন অ্যালগরিদমকে মোকাবেলা করতে হবে নিজেই।
সুতরাং এখন, কাজ করুন এবং আমাদের সেরা এআই ভিজ্যুয়াল বট করুন;)
পুরানো পোস্টটি কেবল ভিজ্যুয়াল ইনপুটগুলিতে নির্ভর করে এআই উন্নয়নের প্রযুক্তিগত সমস্যাগুলি বর্ণনা করে:
উপরের আমার কয়েকজন সহকর্মীর বিপরীতে, আমি মনে করি না যে এই সমস্যাটি অক্ষম। তবে এটি অবশ্যই একটি হেলা শক্ত!
উপরে উল্লিখিত হিসাবে প্রথম সমস্যাটি হ'ল গেমের রাজ্যের প্রতিনিধিত্ব : আপনি কেবল একটি একক চিত্র সহ পুরো রাজ্যের প্রতিনিধিত্ব করতে পারবেন না, আপনাকে কিছু ধরণের মুখস্থ রাখতে হবে(স্বাস্থ্য কিন্তু জিনিসগুলি সজ্জিত এবং আইটেমগুলি ব্যবহারের জন্য উপলব্ধ, অনুসন্ধান এবং লক্ষ্যগুলি ইত্যাদি)। এই জাতীয় তথ্য আনার জন্য আপনার দুটি উপায় রয়েছে: হয় সরাসরি গেমের ডেটা অ্যাক্সেস করে, যা সবচেয়ে নির্ভরযোগ্য এবং সহজ; অথবা হয় আপনি কয়েকটি সাধারণ পদ্ধতি প্রয়োগের মাধ্যমে এই তথ্যগুলির একটি বিমূর্ত উপস্থাপনা তৈরি করতে পারেন (খোলার তালিকা, একটি স্ক্রিনশট নিন, ডেটা উত্তোলন করুন)। অবশ্যই, স্ক্রিনশট থেকে ডেটা আহরণ করতে হয় আপনাকে কিছু তদারকি পদ্ধতিতে (যা আপনি সম্পূর্ণরূপে সংজ্ঞায়িত করেন) বা আনসারভিজড (কোনও মেশিন লার্নিং অ্যালগরিদমের মাধ্যমে প্রয়োগ করতে হবে তবে এটি জটিলতা অনেক বাড়িয়ে দেবে ...)। অকার্যকর মেশিন লার্নিংয়ের জন্য আপনাকে স্ট্রাকচারাল লার্নিং অ্যালগরিদম (যা কীভাবে শ্রেণিবদ্ধ করা বা কোনও মান পূর্বাভাস দেওয়ার চেয়ে ডেটার কাঠামো শিখতে পারে) নামে পরিচিত একটি সাম্প্রতিক ধরণের অ্যালগোরিদম ব্যবহার করতে হবে।http://techtalks.tv/talks/54422/
তারপরে, আরেকটি সমস্যা হ'ল আপনি প্রয়োজনীয় সমস্ত ডেটা আনার পরেও গেমটি কেবল আংশিকভাবে পর্যবেক্ষণযোগ্য । সুতরাং আপনাকে বিশ্বের একটি বিমূর্ত মডেল ইনজেকশনের প্রয়োজন এবং এটিকে গেম থেকে প্রক্রিয়াজাত তথ্য দিয়ে খাওয়ানো দরকার, উদাহরণস্বরূপ আপনার অবতারের অবস্থান, তবে পর্দার বাইরে অনুসন্ধান আইটেম, লক্ষ্য এবং শত্রুদের অবস্থান। আপনি সম্ভবত এর জন্য ভার্মাক 2003 এর মিশ্রণ কণা ফিল্টারগুলি সন্ধান করতে পারেন।
এছাড়াও, আপনার একটি স্বায়ত্তশাসিত এজেন্ট থাকা দরকার , লক্ষ্যগুলি গতিময়ভাবে উত্পন্ন হয়েছিল। বিডিআই এজেন্ট হিসাবে আপনি চেষ্টা করতে পারেন এমন একটি সুপরিচিত আর্কিটেকচার, তবে আপনার সম্ভবত ব্যবহারিক ক্ষেত্রে কাজ করার জন্য আপনাকে সম্ভবত এটির জন্য কোনও মন্তব্য করতে হবে। বিকল্প হিসাবে, রিকার্সিভ পেট্রি নেটও রয়েছে, যা আপনি সম্ভবত পেট্রি নেটগুলির সমস্ত ধরণের পরিবর্তনের সাথে একত্রিত করতে পারেন যা আপনি চান তা অর্জন করার জন্য এটি দুর্দান্ত औपचारিককরণ এবং প্রমাণাদি পদ্ধতি সহ একটি খুব ভাল অধ্যয়ন এবং নমনীয় কাঠামো is
এবং শেষ অবধি, এমনকি আপনি উপরের সমস্তগুলি করে নিলেও, আপনাকে গতিবেগকে গতিতে অনুকরণ করার একটি উপায় খুঁজে বের করতে হবে (একটি ভিডিও ব্যবহার করা দুর্দান্ত হতে পারে তবে সমস্যাটি হ'ল আপনার অ্যালগরিদমটি কেবল নিয়ন্ত্রণ ছাড়াই দর্শনীয় হবে, এবং সক্ষম হয়ে উঠবে) নিজের জন্য চেষ্টা শেখার জন্য খুব গুরুত্বপূর্ণ)। প্রকৃতপক্ষে, এটি সুপরিচিত যে বর্তমানের অত্যাধুনিক অ্যালগরিদম একই জিনিস শিখতে আরও অনেক বেশি সময় নেয় যা (এমনকি আরও শক্তিবৃদ্ধি শেখার মাধ্যমে) শিখতে পারে, সুতরাং প্রক্রিয়াটি গতিতে না পারলে ( অর্থাত্, যদি আপনি গেমের সময়টি দ্রুত করতে না পারেন), আপনার অ্যালগোরিদম এমনকি একটি একক জীবনেও একত্রিত হবে না ...
এই উপসংহারে করতে, তুমি এখানে কি অর্জন করতে চান এ বর্তমান রাষ্ট্রীয় অত্যাধুনিক আলগোরিদিম সীমা (এবং হয়ত একটু পরলোক) । আমি মনে করি এটি সম্ভব হতে পারে তবে এটি হলেও আপনি অনেক সময় ব্যয় করতে যাচ্ছেন , কারণ এটি কোনও তাত্ত্বিক সমস্যা নয় বরং আপনি এখানে ব্যবহার করছেন এমন একটি ব্যবহারিক সমস্যা এবং সুতরাং আপনাকে বাস্তবায়ন করতে হবে এবং প্রচুর সংহত করতে হবে এটি সমাধানের জন্য বিভিন্ন এআই পদ্ধতির ।
এটি নিয়ে পুরো টিমের সাথে কাজ করা বেশ কয়েক দশক গবেষণা যথেষ্ট নাও হতে পারে, সুতরাং আপনি যদি একা থাকেন এবং খণ্ডকালীন সময়ে এটির উপর কাজ করেন (সম্ভবত আপনার জীবনধারণের জন্য কোনও কাজ রয়েছে) তবে আপনি সম্ভবত কোনও জায়গায় পৌঁছে না গিয়ে পুরো জীবনকাল কাটাতে পারেন may একটি কাজের সমাধান।
সুতরাং এখানে আমার সবচেয়ে গুরুত্বপূর্ণ পরামর্শটি হ'ল আপনি নিজের প্রত্যাশা কমিয়ে দিন এবং জটিলতা হ্রাস করার চেষ্টা করবেনআপনার যতটা সম্ভব তথ্য ব্যবহার করে এবং স্ক্রিনশটগুলির উপর নির্ভর করে যতটা সম্ভব এড়ানো (যেমন, সরাসরি গেমটিতে ঝাঁকুনি দেওয়ার চেষ্টা করুন, ডিএলএল ইঞ্জেকশনটি সন্ধান করুন) এবং তদারকি পদ্ধতিগুলি প্রয়োগ করে কিছু সমস্যা সরল করুন, আপনার সমস্যাটিকে বাধা দেবেন না অ্যালগরিদম সবকিছু শিখুন (যেমন, এখনের জন্য যতটা সম্ভব ইমেজ প্রসেসিংটি ফেলে দিন এবং অভ্যন্তরীণ গেম সম্পর্কিত তথ্যের উপর নির্ভর করুন, পরে যদি আপনার অ্যালগরিদম ভালভাবে কাজ করে তবে আপনি আপনার এআই প্রোগ্রামের কিছু অংশ ইমেজ প্রসেসিংয়ের সাথে প্রতিস্থাপন করতে পারেন, এইভাবে গুরুতরভাবে আপনার সম্পূর্ণ লক্ষ্য অর্জনে, উদাহরণস্বরূপ, যদি আপনি বেশ ভালভাবে কাজ করার জন্য কিছু পেতে পারেন তবে আপনি নিজের সমস্যাটিকে আরও জটিল করার চেষ্টা করতে পারেন এবং স্ক্রিনশটগুলিতে নিরীক্ষণযোগ্য মেশিন লার্নিং অ্যালগরিদম দ্বারা তত্ত্বাবধানের পদ্ধতি এবং মেমরি গেমের ডেটা প্রতিস্থাপন করতে পারেন)।
শুভকামনা, এবং যদি এটি কাজ করে তবে একটি নিবন্ধ প্রকাশের বিষয়টি নিশ্চিত করুন, আপনি অবশ্যই এইরকম কঠোর ব্যবহারিক সমস্যা সমাধানের জন্য বিখ্যাত হয়ে উঠতে পারেন!