Control Engineering Basic: Transfer function….

ট্রান্সফার ফাংশন ব্যাখ্যা করার চেষ্টা করলাম।

 

Advertisements
Posted in Control System | Tagged | Leave a comment

মেশিন লার্নিং লেকচার ১

মেশিন লার্নিং ১

খুবই বেসিক কিছু ধারনা 

(বি দ্রঃ আমি মেশিন লার্নিং এ এক্সপার্ট নই।)   

আপনি ফেসবুকে নতুন, আপনার দুইজন ফ্রেন্ড কে মাত্র এড করলেন, সাথে সাথে ফেসবুক আপনারে আর কিছু ফ্রেন্ড সাজেশন দিল, দেখা গেলো তাদের মধ্যে অনেকেই আপনি বাস্তব জীবনে চিনেন।  অথবা আমাজন ডট কম  থেকে কিছু কিনছেন, সাথে সাথে সে এমন আরেকটা জিনিষ  দেখাল, যেটা দেখে আপনি বুঝলেন ‘’হু , এইটাও  তো কিনা লাগে।’  আবার ধরেন  ইউটিউবে একটা পছন্দের  গান শুনতেছিলেন, সেটা শেষ হয়ে আরেকটা শুরু হল, সেটা ও মোটামুটি ভাল লাগলো আপনার । অথবা , আপনি কিছু সাইট ঘুরছিলেন, কিন্তু মাগার ওইসব সাইটের এড যেখানে সেখানে চলে আসতেছে!     

আসলে এই ব্যাপার গুলা কিভাবে ঘটছে?  একটু যদি খেয়াল করেন ব্যাপার গুলা, বুঝতে পারবেন  ফেসবুকের ঘটনা টা অতটা সারপ্রাইজিং না। যাদের কে  fb ফ্রেন্ড  সাজেশন হিসেবে আনছিলো,   তারা হয় আপনি যাদের ফ্রেন্ড ছিলেন , তাদের ফ্রেন্ড; অথবা  আপনার প্রোফাইলে এমন কোন ইনফরমেশন আছে যার সাথে উনাদের বা আপনার বন্ধুদের কিছু ইনফো  মিলে।   

ইউটিউব বা আমাজনের ঘটনাটা ফেসবুকের চেয়ে একটু আলাদা। আপনি অনলাইন মার্কেটিং করলে হয়ত কোথাও এরকম লাইন দেখছেন, “people who bought this also bought …” ~~ আসলে ইউটিউব বা আমাজনে একধরনের প্রোগ্রাম চলে, যা ইউজার কোথায় ক্লিক করল, কে কি কিনল, অমুক যে কিনছে সে আর কি কি কিনছে? এই বিষয় গুলা ক্রমাগত একটা প্রোগ্রাম মনিটর করে এবং আপডেট করতে থাকে একটা ডেটাবেস কে।  ডেটাবেস এ ইনফো গুলা জমা হতে থাকে, অর্থাৎ দিনদিন ডেটাবেস এর বুদ্ধি বাড়তে থাকে।

বুঝতে পারেন নি?  আপনাকে যদি সাদা আরা ধূসর রং দেখিয়ে নাম বলতে বলা হয়, আপনি কি করবেন? আপনি উত্তরে কি  বলবেন  তা নির্ভর করবে আপনি রং দুটো চিনেন কিনা। ধরুন আপনি সাদা আর কালো রং চিনেন, কিন্তু ধূসর চিনেন না। অথবা আপনি ধূসর রং টা  চিনেন কিন্তু সেটার নাম টা মনে করতে পারতেছেন না। মোট কথা, আপনার উত্তর হবে ওই মুহূর্তে  আপনি  “ কতটুক জানেন ”  তার ওপর। ….আবার হতে পারে  ধূসর কে আপনি কালো হিসেবেই জানেন, এবং আজকে জানলেন যে ধূসর একটা আলাদা রং। জানার পর যদি আপনাকে আবার প্রশ্ন করা হয়, আশা করা যায় এবার আপনি এবার সঠিক উত্তর দিবেন।  এবার তাইলে  নিচের লাইন গুলা একবার পড়ুন তো।

~“Machine learning develops algorithms by making prediction from data.”

~Machine learning is the field of study that gives computers the ability to learn without being explicitly programmed.~ Arthur Samuel

 ~ the meaning of ‘prediction’ used is used in machine learning is ‘statistical’

মেশিন লার্নিং কে আমরা মোটামুটি আমাদের অভিজ্ঞতার সাথে তুলনা করতে পারি।।

এখন নিজে ভাবুন তো

~অধিকাংশ অকামের মেইল গুলা স্প্যাম ফোলডারে কিভাবে জমে?

~ফেসবুক আমার ছবি দেখে কিভাবে সাজেস্ট করে ট্যাগ করতে ?

পরের লেকচারে  আমরা তাত্তিক পড়াশোনায় ঢুকে যাবো।

one true fact about machine learning and also for this series:

আপনি চরম ইন্টারেস্ট পাবেন প্রথম দিকে। খালি ইন্ট্রো টা শেষ হইতে দেন। এর পর পাশ ফেল এর ব্যাপার না আসলে আগানো খুব ই মুশকিল  😀

Posted in মেশিন লার্নিং লেকচার | Tagged , , , | 3 Comments

হিউম্যানয়েড ঃ স্টেট অব আর্ট

কিছুদিন আগে হয়ে গেল ডারপা DARPA robotic challenge.  খেয়াল করলে দেখা যাবে এই প্রতিযোগিতায় অংশগ্রহণকারী দলগুলা অনেকেই হয়তো হিউম্যানয়েড ফিল্ডে নতুন, কিন্তু তারা বহু বছর ধরে রোবট নিয়ে গবেষণা / কাজ করে আসছে।  যারা কম্পিটিশনের ভিডিও গুলা দেখেছেন তারা জানেন প্রতিযোগিতায়  কতটা হাস্যকর এবং অদ্ভুত কান্ড করেছে এই রোবটগুলো।  এবারে চ্যাম্পিয়ন হয়েছে HUBO (KAIST)। মোট  অংশগ্রহণকারী দল  ছিল ২৫ টি। http://www.washingtonpost.com/graphics/business/robots/?fb_ref=Default

ফলাফলের জন্য দেখতে পারেন এটা  http://www.theroboticschallenge.org/

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

এরপরের কিছু পোষ্ট মেশিন লারনিং এর ওপর করবো। আগ্রহ পেলে চোখ রাখুন।

Posted in Uncategorized | Tagged | Leave a comment

দীর্ঘ বিরতি প্রসংগঃ এম্বেডেড প্রোগ্রামিং টিউটোরিয়াল

টিউটোরিয়াল বানানোর সময় পাচ্ছিনা। নিজের কাজ নিয়ে বেশ ঝামেলায় আছি।  অনেকেই ঘুড়ে যাচ্ছেন নতুন কিছু দিয়েছি কিনা, মূলত তাদের জন্যই ভাবলাম একটা পোষ্ট দিয়ে বিরতির কথা জানিয়ে দেই। আমি জুলাই মাসের মাঝামাঝি থেকে আবার বেশ বড়সড় করেই আবার শুরু করবো। আরো চমক থাকবে, তারপর ও বেশ কিছু জিনিষ সিরিয়াসলি দেখাবো এটা বোঝানোর জন্য একটা ভিডিও বানিয়ে ফেললাম। 🙂

আশা করছি জুলাই এর মাঝামাঝি থেকে নিয়মিত হব। জুন এ কোনো টিউটোরিয়াল আসবেনা প্রায় নিশ্চিত। তবে কোনো কিছু  নিয়ে হাবিজাবি লিখতে পারি।

Posted in Embedded Tutorial | Tagged , , , , , , , , , , , | Leave a comment

Rehabilitation এর সঠিক বাংলা কি হবে?

রিহ্যাব বললে আমরা অবশ্য ড্রাগ ছাড়ার বিষয়টা বুঝি

Rehabilitation শব্দটা ভেঙ্গে যা বুঝি, Re অর্থাত আবার, habitare, অর্থাত “make fit.”  তবে ”শব্দ” টা অনেকটা এরকম অর্থে ব্যবহার হয়, কোনো দুর্ঘটনা বা অপারেশন জনিত কারনে আমাদের শারিরীক প্রতিবন্ধকতা দূর করে নরমাল অবস্থায় ফিরিয়ে আনার প্রসেস। তো বোঝা গেল যে, Rehabilitation বলতে আসলে physical disabilities থেকে নরমাল স্টেজে ফিরিয়ে আনার প্রক্রিয়া বা কিছুটা ভালো অনুভব করার বিদ্যাকে বুঝায়। Rehabilitation এর কথা বললেই আরও যে কয়েকটা শব্দ চলে আসে, বায়োমেডিক্যাল, বায়ো মেকানিক্স, রোবটিক প্রসথেসিস, অরথসিস (prosthesis- আর্টিফিসিয়াল হাত পা প্রতিস্থাপন কে বলে) (অরথসিস হল আমাদের শরীরের এর কোনো বাইরের অংশের জন্য বানানো কোন যন্ত্র/এটাচ মুভিং পার্ট যেটা আমাদের স্কেলেটাল মোশনের সাথে সামঞ্জস্যপূর্ন অথবা স্কেলেটাল মোশন কে সঠিক মুভমেন্ট দিতে সাহায্য করে এমন কিছু, চিত্র দেখুন)  সাইকোলজি, মেডিটেশন, মেন্টাল হেলথ নিউরোবিজ্ঞান অনেকাংশে জড়িত এই বিদ্যায় ।

leg

চিত্রঃ প্রস্থেটিক লেগ

hand

চিত্রঃ ডেকা আর্ম

wheelchair

 চিত্রঃ ইন্টেলিজেন্ট হুইলচেয়ার ও রোবটিক হ্যান্ড যা মানুষের হাত টার অনুকরন করছে, কিছু সিগন্যাল নিয়ে

gems

Physical disability অনেক রকম হতে পারে। সরাসরি হাত পা প্রতিস্থাপন ছাড়াও, হাটা চলা নরমাল গেইট ফিরিয়ে আনা(GAIT enhancing shoe), হতে পারে মুখে মার্বেল রেখে তোতলামি দূর করা 😀 , ব্রেইন ইন্টারফেস থেকে সিগন্যাল নিয়ে কোনো কিছুর একচুয়েশন–> হাত বা পা, অথবা অন্য কোন অব্জেক্ট কে মুভ করানো, সম্পূর্ন নড়তে অক্ষম ব্যাক্তির ইচ্ছা মত হুইল চেয়ার চালানো অন্য কোনো নিয়ন্ত্রন ছাড়া। তবে Rehabilitation শুধু ফিজিক্যাল একচুএশন এ আটকে নাই। বর্তমানে এই ফিল্ডের গবেষনা আরো অনেক ব্যাপক ।

 ইউ এস এফ (USF)এর এই গবেষনার ভিডিও টি দেখুন

 

খুব অবাক হয়েছেন? আসলে অবাক হওয়ার কিছু নাই। ব্রেইন ইন্টারফেসিং নিয়ে কিছু লিখেছি এখানে।

 

bci

চিত্রঃ ব্রেইন ইন্টারফেসিং EasyCap

ব্রেইন ইন্টারফেসিংঃ  BCI- Brain Computer interfacing

আমরা যখন কোনো কিছুর দিকে তাকাই, পলক ফেলি, অথবা ডান বায়ে ওপরনিচ চোখ সরাই (কিছুটা  ভিজুয়াল ইনপুট) অথবা কোনো কিছু চিন্তা মগ্ন/ অবসন্ন, দুঃখ, আনন্দ, রাগ করি, এগুলা সবগুলা ঘটনাই  আমাদের মস্তিস্কে কিছু পরিবর্তন ঘটায়। এই পরিবর্তন গুলা measure করা হয় কিছু মেথড এ। EEG-electroencephalography, NIRS-Near Infrared Spectroscopy  এরকম ই কিছু পরিচিত গবেষনা যেগুলো প্রতিনিয়ত হচ্ছে ব্রেইন এর ওপর।

আমাদের কাজকর্ম, মোশন, চিন্তা বা আবেগে আমাদের নিউরনের এক্টিভিটি পাল্টায়।

নিউরনের আয়োনিক ফ্লো এর জন্য যে বিভব (voltage) এর পরিবর্তন হয়, তা Measurement হল EEG।

আর Near Infrared Spectroscopy  একধরনের ইমেজিং টেকনিক যেটা low energy radiation দিয়ে ব্রেইন টিস্যুর absorption change গুলো বের করে। These absorption changes reflect changes in the local concentration of oxy- and deoxyhaemoglobin, which in turn are related to and triggered by the alteration of neural activity.

এই EEG-NIRS  থেকে সিগন্যাল গুলো দিয়ে একজন মানুষের ‘নির্দিষ্ট কাজের –> যেমন ডানে তাকানো’  জন্য তার ব্রেইন এক্টিভিটি বের করা যায়। পরে ওই এক্টিভিটি কে কোনো একচুএশন ডিসিশন হিসেবে নেয়া যায় রোবটিক আর্ম বা অন্য কিছুতে। কখনো কখনো ব্রেইন সিগ্ন্যাল এর সাথে চোখের পাতা, মনি এগুলার মুভমেন্ট আরো ভালো ভাবে বোঝার জন্য ক্যামেরাও ব্যবহার হয়।

এছাড়াঃ

হার্ট এ পাম্প প্রতিস্থাপন, রিং পড়ানো এগুলা সরাসরি Rehabilitation নামে পরিচিত নামে পরিচিত না, এগুলা নিয়েও প্রচুর কাজ হচ্ছে। হ্যাপ্টিক রিইয়েলাইজেশন, স্ট্রোক, ব্লাড প্রেশার এই মেজারমেন্ট গুলা নিয়ে বিহেভিয়ার এনাইলাইস হচ্ছে, নতুন নতুন প্রযুক্তি আবিষ্কার হচ্ছে।

leghandp

চিত্রঃ হাত ও পা এর প্রেশার পয়েন্ট এর ডিটেইল

তো আমরা দেখলাম Rehabilitation শব্দটা শুধু শাব্দিক অর্থে আটকে নেই। গবেষনার ব্যাপ্তিও অনেক।

আরো কত গবেষনা হচ্ছে! কোনো শেষ নেই। আপনি ও শুরু করতে পারেন যেকোনো গবেষনা, সেটা যে উন্নত দেশ গুলার মতই যে হতে হবে,  এরকম ভাবলে বোকামি করছেন। গবেষনার জন্ম হয় সমস্যা থেকে। আমাদের সমস্যা আমাদের কেই মিটাতে হবে।

Posted in POSTS | Tagged , , , , , , , , | Leave a comment

SAM4S Xplained Pro kit (ARM based) টিউটোরিয়াল ২

আজকের টিউটোরিয়ালের চারটি পার্ট, প্রথম পার্টে ARMএর খুব সামান্য কিছু থিওরি বলা হয়েছে, ARM development tool নিয়ে কিছু বলেছি, দেখানো স্লাইড টা পাওয়া যাবে এখানে,  https://www.dropbox.com/s/7001efqvg98656h/A%20Short%20Intro.ppsx

সেকেন্ড পার্ট এ হ্যালো ওয়ার্ল্ড প্রোগ্রাম দেখিয়েছি।

Atmel SAM4 এর জেনারেল ডেটাশিট এখানে,

https://www.dropbox.com/s/xhvheq2mlz3odm8/Atmel_11100_32-bit-Cortex-M4-Microcontroller_SAM4S_Datasheet.pdf

পরের দুটা অংশে বোর্ডে ডাউনলোড করে রানিং অবস্থা দেখানো হয়েছে।

১ম পার্ট: ARM সম্পর্কে এক্টুখানি

২নং পার্ট: হ্যালো ওয়ার্ল্ড ইনপুট আউটপুট, SAM4S Xplained Pro kit

৩নং পার্ট: ইনপুট আউটপুট

৪নং পার্ট:আউটপুট

 

যদি board_init() ব্যবহার করতে না চাই, তাহলে নিচের মত লিখেন। ASF এর মডিওল থাকবে আগের মতই, নতুন কিছু যোগ করার দরকার নাই, কেবল ডিলে এর মডিওল ছাড়া

 

#include<asf.h>

#define MY_LED    IOPORT_CREATE_PIN(PIOC,23)

int main(void)

{

sysclk_init();

wdt_disable(WDT); //not necessary, better to disable this in normal application

ioport_init();

ioport_set_pin_dir(MY_LED,IOPORT_DIR_OUTPUT);

while(1)

{

ioport_set_pin_level(MY_LED,1);

delay_s(1);

ioport_set_pin_level(MY_LED,0);

delay_s(1);

}

}

Posted in Embedded Tutorial | Tagged , , , , , , | Leave a comment

SAM4S Xplained Pro kit (ARM based) টিউটোরিয়াল ১

আপনি আজকে প্রথম এই লেকচার দেখে থাকলে, আগের লেকচার টি একবার দেখে নিন। https://nahiansrobotics.wordpress.com/2014/04/22/embedded_tutorial/

আজকের লেকচারে আমরা SAM4S starterkit এর  হার্ড ওয়ার সেট আপ দেখবো, আর  এটমেল এর একটা ডেমো প্রজেক্ট (ATMEL ASF)ডাউনলোড করে দেখবো। এরপরের লেকচার  থেকে আমরা ক্লক সোর্স শুরু দিয়ে করবো, এবং ATSAM4SD32c এর বিভিন্ন পেরিফেরাল ব্যবহার করার কোড লেখা শুরু করবো।

এটমেল স্টুডিও ডাউনলোড করা যাবে এখান থেকে

http://www.atmel.com/tools/ATMELSTUDIO.aspx

Starter kit manual: https://www.dropbox.com/s/si40fjqu0xfjkzo/Atmel-42075-SAM4S-Xplained-Pro_User-Guide.pdf

হার্ডওয়ার সম্পর্কে ধারনা

এটমেল স্টুডিও ও এ এস এফ

ডেমো কোড রানিং

Posted in Embedded Tutorial | Tagged , , , , | Leave a comment