যাদের এলগরিদম নিয়ে আগ্রহ আছে কিন্তু তেমন কিছুই জানেন না , এই লেখাটি শুধুমাত্র তাদের জন্য । আসুন প্রথমেই এলগরিদমের নামকরণ সম্পর্কে কিছু তথ্য জেনে নেয়া যাক । Algorithm শব্দটি এসেছে ল্যাটিন শব্দ algorismus থেকে , নবম শতাব্দীর পার্সিয়ান গণিতবিদ Al-Khwarizmi র নাম থেকেই মূলত এলগরিদম নামকরণ করা হয় ।
এলগরিদম কি ?
কোন একটি সমস্যা সমাধানের ধারাবাহিক ধাপের সমষ্টিকেই এলগরিদম বলে । সহজ ভাষায় , কোন একটি কাজ সম্পন্ন করার সুনির্দিষ্ট ধাপগুলোর সমষ্টিই এলগরিদম !
দৈনন্দিনের কাজ থেকে শুরু করে গাণিতিক সমস্যার সমাধান , কম্পিউটার প্রোগ্রাম , রোবটিক্স , আর্টিফিসিয়াল ইন্টেলিজেন্সি সব জায়গাতেই এলগরিদমের ব্যাবহার রয়েছে ।
উদাহরণ হিসাবে তরকারী রান্নার কথাই ধরুন , বাজার থেকে তরকারী কিনে রান্না করা পর্যন্ত কয়েকটা ধাপ সম্পন্ন করলেই তরকারী রান্না করা সম্ভব । রান্নার এই ধাপগুলোর উপরই তরকারির স্বাদ এবং মান নির্ভর করে । ঠিক তেমনি কোন সমস্যা সমাধানের ধাপগুলোর উপর সুন্দর এবং দ্রুত সমাধান নির্ভর করে । এই ধাপগুলোর সমষ্টিই হচ্ছে এলগরিদম ।
একই তরকারি যেমন বিভিন্ন ভাবে রান্না করা যায় , ঠিক তেমনি একটি সমস্যা অনেক রকম ভাবেই সমাধান করা যায় ।প্রত্যেকটি সমস্যার জন্য আলাদা আলাদা এলগরিদম রয়েছে , আবার একই সমস্যা সমাধানের জন্য অনেকগুলো এলগরিদম থাকতে পারে ! সাধারণত এলগরিদমকে Pseudocode বলা হয় ।
কম্পিউটার বিজ্ঞানে এলগরিদমঃ-
কম্পিউটার বিজ্ঞান এবং এলগরিদম একই সুতোয় বাঁধা ! এক কথায় বলতে গেলে এলগরিদম ছাড়া কম্পিউটার বিজ্ঞানের কথা ভাবাই যায় না । আপনার স্মার্ট ফোন , কম্পিউটার , ওয়াইফাই রাউটার থেকে শুরুকরে সোশ্যাল নেটওয়ার্কিং সাইট , ই-কমার্স , সার্চ ইঞ্জিন সব কিছুই চলে এলগরিদমের উপর নির্ভর করে ।এক কথায় বলা যায় , বর্তমান প্রযুক্তি পুরোপুরি এলগরিদমের উপর নির্ভরশীল ।
উদাহরন হিসাবে গুগল ম্যাপের কথাই বলি , আমরা প্রায় সবাই গুগল ম্যাপ সম্মন্ধে জানি এবং দরকারে ব্যবহার করি । ধরুন , আপনি ঢাকা থেকে চট্টগ্রাম যাবেন , গুগল ম্যাপে সার্চ করলে দেখবেন কুমিল্লা হয়ে ঢাকা চট্টগ্রাম মহাসড়কের ডিরেকশন দেখাচ্ছে । কিন্তু আপনি ইচ্ছা করলে ভৈরব দিয়েও ঘুরে যেতে পারবেন , তাহলে কেন সরাসরি ঢাকা চট্টগ্রাম মহাসড়কের ডিরেকশন দেখাচ্ছে ?
কারন একটাই , সবচেয়ে কম সময় যে রাস্তায় লাগবে গুগল ম্যাপ সে রাস্তাই দেখাবে । এখানে সবচেয়ে ছোট রাস্তা বের করার জন্য Shortest path Algorithm ব্যাবহার করা হয়েছে ।
প্রতিনিয়ত কম্পিউটার বিজ্ঞানে অসংখ্য এলগরিদম ব্যাবহার করা হচ্ছে , ২য় পর্বথেকে জনপ্রিয় সব এলগরিদম নিয়ে লিখব ইনশাআল্লাহ্ !
আসুন পৃথিবীর বিশেষ বিশেষ কিছু এলগরিদমের সাথে পরিচিত হই ।
1. Merge Sort, Quick Sort and Heap Sort
2. Dijkstra’s algorithm
3. Secure Hash Algorithm
4. Link Analysis
5. Fourier Transform and Fast Fourier Transform
এই পর্বের উদ্দ্যেশই হচ্ছে নতুনদের কাছে এলগরিদমের পরিচয় করিয়ে দেয়া , পরবর্তি পর্ব থেকে স্পেসিফিক কোন এলগরিদম নিয়ে লিখব । প্রযুক্তির সাথেই থাকুন , ধন্যবাদ