কখনো কখনো, আমাদের একাধিক ভেরিয়েবল লিনিয়ার প্রোগ্রামিং দিয়ে সমাধান করতে হয়। লিনিয়ার প্রোগ্রামিং সমাধানের অনেক পদ্ধতি রয়েছে। লিনিয়ার প্রোগ্রামিং সমাধানের সবচেয়ে হাতের কাছে পদ্ধতি হলো গ্রাফিং। এই আর্টিকেলে, আমি এক্সেলে লিনিয়ার প্রোগ্রামিং গ্রাফ করার বিস্তারিত ধাপগুলো দেখাব।
আপনি আমাদের প্র্যাকটিস ওয়ার্কবুক এখান থেকে বিনামূল্যে ডাউনলোড করতে পারেন!
লিনিয়ার প্রোগ্রামিং কী?
লিনিয়ার প্রোগ্রামিং হলো একটি গাণিতিক টুল যা অনেক গাণিতিক ফাংশন এবং কনস্ট্রেইন্ট দিয়ে একটি পরিস্থিতি বিশ্লেষণ করে এবং আপনার উদ্দেশ্যের অপ্টিমাম পয়েন্ট খুঁজে বের করে। এই কৌশলটি ব্যাবসায়িক বিনিয়োগ, প্রোডাকশন সাইকেল, আমাদের প্রয়োজনীয় পণ্য ক্রয় ইত্যাদি অপ্টিমাইজ করতে ব্যাপকভাবে ব্যবহৃত হয়।
লিনিয়ার প্রোগ্রামিং-এর মৌলিক উপাদানসমূহ
- ডিসিশন ভেরিয়েবলস: এই ভেরিয়েবলগুলো লিনিয়ার প্রোগ্রামিং দিয়ে আমাদের উদ্দেশ্যের অপ্টিমাম পয়েন্ট ক্যালকুলেট করার জন্য প্রয়োজন। আমাদের ডিসিশন, কনস্ট্রেইন্টস এবং উদ্দেশ্য ফাংশনের পরিস্থিতি এই ভেরিয়েবলস দিয়ে সেট হয়।
- কনস্ট্রেইন্টস: কনস্ট্রেইন্টস হলো শর্তাবলী যা উদ্দেশ্য ফাংশনকে সীমাবদ্ধ করে এবং ফিজিবল রিজন নির্ধারণ করে। সেগুলো সমতা বা অসমতা দুটোই হতে পারে।
- উদ্দেশ্য ফাংশন: এটি আপনার উদ্দেশ্যের ফাংশন। আপনাকে সঠিক কনস্ট্রেইন্টস দিয়ে এই সমীকরণকে সन्तুষ্ট করতে হবে অপ্টিমাল সমাধান পেতে।
- ফিজিবল রিজন: সঠিক কনস্ট্রেইন্টস প্রয়োগ করার পর উদ্দেশ্য ফাংশনর অপ্টিমাল রিজন। অপ্টিমাল সমাধান এই রিজনের কোথাও থাকে।
- ফিজিবল সলিউশন: ফিজিবল রিজনের কর্ণ পয়েন্টগুলোর জন্য উদ্দেশ্য ফাংশনের সমাধানগুলো ফিজিবল সলিউশন।
- অপ্টিমাল সলিউশন: অপ্টিমাল সলিউশন হলো আপনার উদ্দেশ্য ফাংশনর অপ্টিমাল পয়েন্ট। আপনি এটি ক্যালকুলেটেড ফিজিবল সলিউশনগুলো থেকে পেতে পারেন।

এক্সেলে লিনিয়ার প্রোগ্রামিং গ্রাফ করার ধাপসমূহ
মান লিজিয়ে, আপনাকে একটি উদ্দেশ্য ফাংশন দিয়ে থাকা F = 6X+8Y। আপনাকে এই ফাংশন সর্বোচ্চ করতে হবে নিচের কনস্ট্রেইন্টস দিয়ে:
2X+4Y <= 60
4X+2Y <= 48
এখন, আপনি এক্সেলে লিনিয়ার প্রোগ্রামিং গ্রাফ করে নিচের ধাপগুলো ব্যবহার করে অপ্টিমাম পয়েন্ট খুঁজে বের করতে পারেন।

📌 ধাপ ১: উদ্দেশ্য ফাংশন এবং কনস্ট্রেইন্ট লাইন পয়েন্টস রেকর্ড করুন
এক্সেলে লিনিয়ার প্রোগ্রামিং গ্রাফ করতে, সবচেয়ে প্রথমে, আপনাকে আপনার উদ্দেশ্য ফাংশন এবং কনস্ট্রেইন্টসের পয়েন্টস রেকর্ড করতে হবে।
- এটি করতে, প্রথমে উদ্দেশ্য ফাংশন এবং কনস্ট্রেইন্টসের কোইফিশিয়েন্ট এবং চিহ্নগুলো সঠিকভাবে রেকর্ড করুন।

- এখন, প্রথম কনস্ট্রেইন্ট, C1-এর জন্য, সমীকরণের দুটি পয়েন্ট খুঁজে বের করুন লাইন আঁকার জন্য। আপনি এটি করতে পারেন X=0 নেওয়া দিয়ে, যা Y=১৫ দেবে। একইভাবে, Y=0 নিলে X=৩০ পাবেন।

- পরবর্তী, দ্বিতীয় কনস্ট্রেইন্ট, C2-এর জন্য অনুরূপভাবে দুটি পয়েন্ট খুঁজে বের করুন। এখানে, X=0 নিলে Y=২৪ পাবেন। এবং, একইভাবে, Y=0 নিলে X=১২ পাবেন।

ফলস্বরূপ, আপনার উদ্দেশ্য ফাংশন, কনস্ট্রেইন্টস, এবং কনস্ট্রেইন্টস আঁকার জন্য দুটি পয়েন্ট সহ একটি ওয়ার্কশিট হবে। ওয়ার্কশিটটি চূড়ান্তভাবে নিচের মত দেখাবে।

📌 ধাপ ২: ফিজিবল রিজন খুঁজে বের করুন
প্রথম ধাপ অনুসরণ করার পর, আপনাকে এখন ফিজিবল রিজন খুঁজে বের করতে হবে।
- এটি করতে, প্রাথমিকভাবে, B6:C8 সেলগুলো সিলেক্ট করুন। তারপর, ইনসার্ট ট্যাব >> চার্টস গ্রুপ >> ইনসার্ট স্ক্যাটার অর বাবল চার্ট টুল >> স্ক্যাটার উইথ স্মুথ লাইনস অপশন বেছে নিন।

- ফলস্বরূপ, আপনি B6:C8 সেলের মান অনুযায়ী স্মুথ লাইনসহ একটি স্ক্যাটার প্লট পাবেন।

- কিন্তু, প্লটটি আপনার প্রয়োজনীয় ফরম্যাটে নেই। তাই, চার্টে রাইট-ক্লিক করুন। তারপর, কনটেক্সট মেনু থেকে সিলেক্ট ডেটা… অপশন বেছে নিন।

- পরिणামস্বরূপ, সিলেক্ট ডেটা সোর্স উইন্ডো প্রদর্শিত হবে। এরপর, এখানে series1 অপশন বেছে নিন এবং এডিট বাটনে ক্লিক করুন।

- এই মুহূর্তে, এডিট সিরিজ উইন্ডো প্রদর্শিত হবে। সিরিজ নেম: টেক্সট বক্সে, C1 লিখুন। সিরিজ X ভ্যালুস: টেক্সট বক্সে, রেঞ্জ হিসেবে B6:B7 সেল সিলেক্ট করুন। একইভাবে, সিরিজ Y ভ্যালুস: টেক্সট বক্সে, রেঞ্জ হিসেবে C6:C7 মান সিলেক্ট করুন। শেষে, ওকে বাটনে ক্লিক করুন।

- এখন, আপনি আবার সিলেক্ট ডেটা সোর্স উইন্ডোতে ফিরে এলেন। এখানে, অ্যাড বাটনে ক্লিক করুন।

- ফলস্বরূপ, আরেকটি এডিট সিরিজ উইন্ডো প্রদর্শিত হবে। সিরিজ নেম: টেক্সট বক্সে, C2 লিখুন। পরবর্তী, সিরিজ X ভ্যালুস: টেক্সট বক্সে, ডেটা রেঞ্জ হিসেবে B11:B12 সেল সিলেক্ট করুন। একইভাবে, সিরিজ Y ভ্যালুস: টেক্সট বক্সে, ডেটা রেঞ্জ হিসেবে C11:C12 সেল সিলেক্ট করুন। পরবর্তী, ওকে বাটনে ক্লিক করুন।

- এখন, আপনি আবার সিলেক্ট ডেটা সোর্স উইন্ডোতে ফিরে এলেন। পরবর্তী, এখানে ওকে বাটনে ক্লিক করুন।

- পরিণামস্বরূপ, আপনি আপনার লিনিয়ার প্রোগ্রামিং-এর সকল কনস্ট্রেইন্টসহ একটি স্ক্যাটার গ্রাফ পাবেন। এবং, গ্রাফটি নিচের মত দেখাবে।

- এখন, যেহেতু দুটি কনস্ট্রেইন্টই কম বা সমান অসমতায় আছে, দুটি কনস্ট্রেইন্ট লাইনই অরিজিন দিকে যাবে। ফলস্বরূপ, ফিজিবল এলিয়া নিচের আকৃতির মত হবে।

অতএব, ABCD হলো ফিজিবল রিজন, এবং A, B, C, এবং D হলো রিজনের কর্ণ পয়েন্ট।
📌 ধাপ ৩: অপ্টিমাম সমাধান খুঁজে বের করুন
ফিজিবল রিজন নির্ধারণ করার পর, আপনাকে এখন ফিজিবল সলিউশনগুলো খুঁজে বের করতে হবে।
- এটি করতে, সবশেষে, আপনাকে কর্ণ পয়েন্টগুলোর X এবং Y কো-অর্ডিনেট খুঁজে বের করতে হবে। গ্রাফ এবং কনস্ট্রেইন্ট ভ্যালু টেবিল থেকে, আমরা A, B এবং C পয়েন্টগুলো খুব সহজে পেতে পারি যেগুলো যথাক্রমে (0,15), (0,0), এবং (12,0)।

- এখন, পয়েন্ট D-এর কো-অর্ডিনেট খুঁজে বের করতে, সেলস D5:D6 সিলেক্ট করুন এবং নিচের ফর্মুলা ইনসার্ট করুন যেটি MMULT এবং MINVERSE ফাংশন জড়িত। পরবর্তী, Ctrl+Shift+Enter চাপুন।
=MMULT(MINVERSE('Finding Points of Constraints'!C6:D7), 'Finding Points of Constraints'!F6:F7)
🔎 ফর্মুলা ব্রেকডাউন:
- MINVERSE(‘Finding Points of Constraints’!C6:D7)
এটি ফাইন্ডিং পয়েন্টস অফ কনস্ট্রেইন্টস ওয়ার্কশিটের C6:D7 সেলের মানগুলোর ইনভার্স ম্যাট্রিক্স ফেরত দেবে।
ফলাফল: (-0.166666667, 0.333333333) & (0.333333333, -0.166666667)
- =MMULT(MINVERSE(‘Finding Points of Constraints’!C6:D7), ‘Finding Points of Constraints’!F6:F7)
এটি পূর্বের ফলাফলের অ্যারে এবং ফাইন্ডিং পয়েন্টস অফ কনস্ট্রেইন্টস ওয়ার্কশিটের F6:F7 অ্যারের ম্যাট্রিক্স প্রোডাক্ট ফেরত দেবে।
ফলাফল: {6,12}
- ফলস্বরূপ, আপনি দুটি কনস্ট্রেইন্ট লাইনların ছেদ পয়েন্ট D-এর কো-অর্ডিনেট পাবেন।

- এখন, আপনার কাছে সকল কর্ণ পয়েন্ট আছে। এই মুহূর্তে, আপনাকে এই পয়েন্টগুলো থেকে ফিজিবল সলিউশন খুঁজে বের করতে হবে। এর জন্য, নিচের ফর্মুলা C7 সেলে লিখুন। পরবর্তী, এন্টার বাটন চাপুন।
=(C5*'Finding Points of Constraints'!$C$5)+('Finding Points of Constraints'!$D$5*C6)
- =(C5*’Finding Points of Constraints’!$C$5)
এটি C5 সেলের মান এবং ফাইন্ডিং পয়েন্টস অফ কনস্ট্রেইন্টস ওয়ার্কশিটের C5 সেলের মানের গুণফল ক্যালকুলেট করবে।
ফলাফল: 0
- (‘Finding Points of Constraints’!$D$5*C6)
এটি ফাইন্ডিং পয়েন্টস অফ কনস্ট্রেইন্টস ওয়ার্কশিটের D5 সেলের মান বর্তমান ওয়ার্কশিটের C6 সেলের মানের সাথে গুণ করবে।
ফলাফল: 120
- =(C5*’Finding Points of Constraints’!$C$5)+(‘Finding Points of Constraints’!$D$5*C6)
এটি পূর্বের দুটি ফলাফল যোগ করবে।
ফলাফল: 120
- ফলস্বরূপ, আপনি কর্ণ পয়েন্ট, A-এর জন্য আপনার উদ্দেশ্য ফাংশনর মান পাবেন। পরবর্তী, আপনার কার্সর সেলের নিচে ডানে রাখুন। ফলে, ফিল হ্যান্ডেল প্রদর্শিত হবে। এটিকে ডানে টানুন অন্য সব পয়েন্টের জন্য একই ফর্মুলা কপি করতে।

- ফলস্বরূপ, আপনি সকল ফিজিবল সলিউশন পাবেন।

- শেষে, আপনাকে F-এর সর্বোচ্চ মান খুঁজে বের করতে হবে আপনার লিনিয়ার প্রোগ্রামিং গ্রাফ দিয়ে সমাধান করতে যেহেতু আপনাকে F সর্বোচ্চ করতে হয়। এখন, যেহেতু আপনি দেখতে পাচ্ছেন F-এর সর্বোচ্চ মান ১৩২ D (6,12) পয়েন্টে। তাই, আপনার অপ্টিমাম পয়েন্ট হলো D (6,12) পয়েন্ট।

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