সুচিপত্র:

হকিং বট: 5 টি ধাপ
হকিং বট: 5 টি ধাপ

ভিডিও: হকিং বট: 5 টি ধাপ

ভিডিও: হকিং বট: 5 টি ধাপ
ভিডিও: Stephen Hawking এর ৬ টি ভবিষ্যতবাণী || কিভাবে ধ্বংস হবে পৃথিবী ? 2024, নভেম্বর
Anonim
Image
Image
আপনার হকিং বট তৈরি করুন
আপনার হকিং বট তৈরি করুন

হকিং বট হল লেগো মাইন্ডস্টর্মস ইভি Project প্রকল্প যা প্রয়াত স্টিফেন হকিং দ্বারা অনুপ্রাণিত। স্টিফেন হকিংয়ের হাস্যরসের ভাল বোধ ছিল তাই আমি নিশ্চিত যে তিনি এই প্রকল্পটি অনুমোদন করতেন। হকিং বট তার পথে বাধা অতিক্রম করতে পারে এবং নড়াচড়ায় সাড়া দেয় এবং তারপর স্টিফেন হকিং এর বিখ্যাত সাউন্ডবাইটগুলির মধ্যে একটি উচ্চারণ করে এবং চলন্ত বস্তুর দিকে এগিয়ে যায়। এটি অতিস্বনক সেন্সর ব্যবহার করে যা তার পরিবেশকে সুইপিং হেড মুভমেন্ট দিয়ে স্ক্যান করছে।

ধাপ 1: আপনার হকিং বট তৈরি করুন

সমস্ত প্রয়োজনীয় টুকরা মৌলিক EV3 লেগো MINDSTORMS- এ রয়েছে যা আল্ট্রাসোনিক সেন্সর (তার চোখ) বাদ দিয়ে সেট করা আছে যা আলাদাভাবে কিনতে হবে।

ধাপ ২:

ছবি
ছবি

হকিং বটের কোড সবই পাইথন 3 এ লেখা আছে। হকিং বটের ডেবিয়ান লিনাক্স পরিবেশে পাইথন চালানোর জন্য বুটেবল ইমেজ ফাইল ev3dev ওয়েবসাইট থেকে ডাউনলোড করা যাবে। হকিং বট চালানোর কোডটি এখান থেকে ডাউনলোড করা যাবে। সমস্ত কোড একটি ক্লাস ফাইলের মধ্যে রয়েছে যাতে আপনি বিদ্যমান পদ্ধতিগুলি ব্যবহার করতে পারেন বা আপনি যদি চান তবে সেগুলি সংশোধন করতে পারেন।

আপনার রোবটে কিভাবে ডেবিয়ান লিনাক্স এবং পাইথন 3 সেট আপ করবেন সে বিষয়ে বিস্তারিত নির্দেশাবলী সহ এই ভিডিওটি দেখুন। যদিও এটি বিশেষভাবে একটি ম্যাক সেটআপের জন্য এটি প্রক্রিয়াটির সাধারণ বোঝার জন্য এখনও কার্যকর হবে। এই কাজ চলছে। অতিস্বনক সেন্সর কখনও কখনও অবিশ্বস্ত এবং এর জন্য 'বহিরাগত' সনাক্ত করতে স্মার্ট কোড প্রয়োজন। কোডটি আরও দক্ষ এবং কম ত্রুটি-প্রবণ করতে আমি অন্যদের কাছ থেকে অবদান দেখতে চাই।

ধাপ 3: আপনার নিজের হকিং সাউন্ডবাইট তৈরি করুন

ঠিক আছে এখন আপনি কিছু বিখ্যাত উদ্ধৃতি বা অধ্যাপক হকিং এর কিছু সহজ উক্তি চান। এমন অনেক ভিডিও রয়েছে যেখানে আপনি তার কথা শুনতে পারেন এবং তারপরে তার বক্তৃতাগুলি রয়েছে যা জ্ঞান এবং দরকারী শব্দ কামড়ের একটি ভাণ্ডার।

আপনার পছন্দের সাউন্ডবাইটগুলি নির্বাচন এবং কেটে ফেলার জন্য অডাসিটির মতো একটি প্রোগ্রাম প্রয়োজন যা অনেক প্ল্যাটফর্মে কাজ করে।

আপনার সাউন্ডবাইটকে একটি wav মোনো ফাইল হিসাবে SH6, SH7,… SH11, SH12 ইত্যাদি হিসাবে সংরক্ষণ করুন।

নীচে আপনি কয়েকটি নমুনা পাবেন যা আমি উপরের পদ্ধতি অনুসারে তৈরি করেছি।

ধাপ 4: টিপস এবং কৌশল

কৌশল
কৌশল
কৌশল
কৌশল

হকিং বট একটি স্ব-চেক মডিউল নিয়ে আসে যাতে সমস্ত তারগুলি সংযুক্ত থাকে এবং ব্যাটারির শক্তি যথেষ্ট হয়। আলগা, অনুপস্থিত বা এমনকি ক্ষতিগ্রস্ত সংযোগগুলি সহজেই ঘটতে পারে। সুতরাং এই মডিউলটি খুব দরকারী। 'CheckConnection' পদ্ধতি শুধুমাত্র বৈদ্যুতিক সংযোগ আছে কিনা তা পরীক্ষা করে। আপনাকে অবশ্যই নিশ্চিত করতে হবে যে মোটরগুলি সঠিক বন্দরের সাথে সংযুক্ত।

হকিং বটকে তার ভূখণ্ড স্ক্যান করতে এবং সামনের দীর্ঘতম অবিরাম পথ খুঁজে পেতে সোয়াইপিং হেড মুভমেন্ট অপরিহার্য। মাথার নড়াচড়া সামঞ্জস্য করার জন্য তারের পর্যাপ্ত জায়গা প্রয়োজন; অতএব ফটোগ্রাফে দেখানো হিসাবে তাদের একসঙ্গে বাঁধা যুক্তিযুক্ত।

হকিং বট বড় বাধা এবং সমতল এবং মসৃণ পৃষ্ঠে সবচেয়ে ভাল কাজ করে। কার্পেট মোটরগুলির জন্য আরও চ্যালেঞ্জিং এবং বিভিন্ন পৃষ্ঠের জন্য আচরণ সামঞ্জস্য করতে আপনাকে সেটিংস সামঞ্জস্য করতে হতে পারে।

হকিং বট কোনোভাবেই নিখুঁত নয় এবং এটি একটি প্রোটোটাইপ যা আরও উন্নতি থেকে উপকৃত হবে। কোডটি সম্পূর্ণরূপে মন্তব্য করা হয়েছে এবং বিভিন্ন পদ্ধতিগুলি কী করে তা আপনার পক্ষে কাজ করা সহজ হওয়া উচিত। # দিয়ে বিভিন্ন বিট মন্তব্য করা হয়েছে, যদি আপনি 'মুদ্রণ' এর সামনে # সরান তাহলে চলমান প্রোগ্রামটি আপনাকে বিভিন্ন সেন্সর রিডিং এবং হিসাব দেখাবে।

পদক্ষেপ 5: প্রস্তাবিত উন্নতি, আপডেট এবং ভবিষ্যতের ধারণা

এখন যেহেতু আপনি সফলভাবে আপনার রোবট তৈরি করেছেন আপনি এটিকে পরবর্তী স্তরে নিয়ে যেতে চান। আপনি মোশন ডিটেক্টর পদ্ধতি উন্নত করতে পারেন। এই মুহূর্তে এত ঘন ঘন এটি একটি ভুল পড়া পায়। আপনি disA এবং disB (পদ্ধতি ব্লকের নীচে) অসম্মান করে প্রকৃত পাঠগুলি দেখতে পারেন। ভুল রিডিং সাধারণত অন্যান্য রিডিং থেকে আলাদা থাকে যাতে আপনি রোবটকে ভুল পড়ার প্রতিক্রিয়া জানাতে একটি অ্যালগরিদম লিখতে পারেন।

সম্ভবত আপনি রোবটটির সম্পূর্ণ নিয়ন্ত্রণ নিতে চান এবং এর বিভিন্ন ফাংশন রিমোট-কন্ট্রোল করতে চান। আপনি ব্লুটুথের মাধ্যমে এটি করতে পারেন এবং রোবটের সাথে যোগাযোগের জন্য একটি অ্যান্ড্রয়েড প্রোগ্রাম লিখতে পারেন। যাইহোক, ইনফ্রারেড সেন্সরের জন্য হকিং বটের নিয়ন্ত্রণ নেওয়ার জন্য একটি জায়গা খুঁজে পাওয়া অনেক সহজ পন্থা হবে।

রোবটকে তার পরিবেশ সম্পর্কে জানার বিষয়ে কী? এটি একটি k- নিকটতম প্রতিবেশী পদ্ধতি বা সম্ভবত একটি নিউরাল নেটওয়ার্কের মাধ্যমে সম্পন্ন করা যেতে পারে। EV3 ইটের সীমিত প্রক্রিয়াকরণ ক্ষমতা আছে যদিও এটি Numpy সমর্থন করে। একটি বিকল্প একটি ব্রিকপি হবে যা আপনাকে টেন্সরফ্লোর মতো একটি এআই লাইব্রেরি চালানোর অনুমতি দেবে কিন্তু এই গাইডের উদ্দেশ্য ছিল আল্ট্রাসোনিক সেন্সর ছাড়া অনেক ব্যয়বহুল অতিরিক্ত টুকরো কেনার প্রয়োজন ছাড়াই লেগো ইভি 3 মাইন্ডস্টর্মস কিট ব্যবহার করা।

যাইহোক, কে-নিকটতম প্রতিবেশীদের পুনরায় ইনফোসমেন্ট শেখার পদ্ধতির EV3 ইটের উপর কাজ করা উচিত এবং এটি প্রস্তাবিত অ্যালগরিদম। আমি একটি কার্যকর বাস্তবায়ন খুঁজে পেতে বা কোন সমস্যা খুঁজে পেতে আপনার উপর ছেড়ে:

হকিং বটের জন্য শক্তিবৃদ্ধি শেখা

ধারণাটি হল যে 7 টি ইউএসএস রিডিংগুলি একটি ভেক্টরে এনকোড করা হয়েছে এবং শেষ 10 টি হেড স্যুপগুলি 70 টি এন্ট্রির ক্রমিক ভেক্টর তৈরি করতে ব্যবহৃত হয়। প্রথম রিডিং অসম্পূর্ণ তাই শূন্য দিয়ে ভরা হবে। প্রতিটি এন্ট্রিতে ইউএসএস থেকে দূরত্বের মান রয়েছে। এই হল রাজ্য ভেক্টর গুলি। সিস্টেমটি 1000 এন্ট্রির অনুমতি দেয়। তারপরে সবচেয়ে পুরনো এন্ট্রি প্রতিস্থাপিত হবে এবং প্রতিটি s-r জোড়ার বয়স এন্ট্রি এক দ্বারা হ্রাস করা হবে।

বট কোনো বস্তুর 10 সেন্টিমিটারের বেশি কাছে আসতে পারবে না। এটি একটি নেতিবাচক পুরস্কার তৈরি করে। সরলতা জন্য; ভাল কাজগুলি 1 এবং খারাপ কাজগুলি 0. দিয়ে পুরস্কৃত হয়। কার্যকরীভাবে এটি প্রতিটি কর্ম-রাজ্যের সংমিশ্রণের জন্য পুরষ্কারের সম্ভাবনা তৈরি করে। আমরা ছাড়কৃত পুরস্কার এবং অ্যাপসিলন লোভী নীতি ব্যবহার করব।

এটি ডান, সোজা এগিয়ে এবং বাম তিনটি কর্মের জন্য large টি বৃহৎ অবস্থা – পুরস্কার (s-r) টেবিল তৈরি করে-প্রতিটি কর্মের জন্য দ্রুত এবং ধীর গতি থাকতে পারে। আমাদের তখন 6 টি অ্যাকশন এবং 6 টি সন্ধানের এস-আর টেবিল থাকবে।

প্রতিবার একটি নতুন রাজ্যের রেকর্ড করা হলে এটি টেবিলের সাথে তুলনা করা হয়, ইউক্লিডিয়ান দূরত্ব (বা অনুরূপ পরিমাপ) নিকটতম প্রতিবেশী খুঁজে পেতে ব্যবহৃত হয়। এটিকে র‍্যাঙ্ক করা হবে না বরং একটি থ্রেশহোল্ড টি রাজ্যটিকে খুব অনুরূপ হিসাবে গ্রহণ করার জন্য সেট করা হয়েছে, বিদ্যমান রাষ্ট্রকে ওভাররাইট করুন এবং সর্বোচ্চ পুরস্কারের জন্য আপডেট করুন এবং সংশ্লিষ্ট ক্রিয়া সম্পাদন করুন। যদি এটি অনুরূপ না হয় (d> t) প্রতিটি ক্রিয়ার জন্য একটি নতুন s-r জোড়া লিখুন a। যদি s-r এর জন্য কর্মের মধ্যে একটি টাই থাকে (তাদের সকলের একই পুরস্কার রয়েছে) এলোমেলোভাবে নির্বাচন করুন তবে এটি সাধারণ নয় এবং বাদ দেওয়া যেতে পারে।

টিকে পরীক্ষামূলকভাবে নির্ধারণ করতে হবে, যদি টি খুব ছোট হয় তবে অনুরূপ রাজ্যগুলি উপেক্ষা করা হবে এবং প্রতিটি রাজ্যকে অনন্য হিসাবে দেখা হচ্ছে। খুব বড় একটি t এর মানে হল যে এমনকি ভিন্ন রাজ্যগুলি একসাথে একত্রিত হয় যা ভাল পদক্ষেপগুলি বেছে নেওয়ার ক্ষমতাকে প্রভাবিত করতে পারে। সেরা টি নির্ধারণ করতে পরিসংখ্যান পদ্ধতি ব্যবহার করা সম্ভব হতে পারে।

টেবিলটি এরকম কিছু দেখায়: এন্ট্রি নং - স্টেট ভেক্টর– কর্মের জন্য পুরস্কার 1 - কর্মের জন্য পুরস্কার 2 - কর্মের জন্য পুরস্কার 3।

আমি মনে করি প্রকৃত বাস্তবায়ন কঠিন হবে কিন্তু প্রচেষ্টার মূল্যবান হওয়া উচিত। শুভকামনা!

প্রস্তাবিত: