FANDOM


لکیری برمجہ کی ایک مثال سائلیب کی مدد سے حل کرتے ہیں۔ وکیپیڈیا پر یہ مثال ہم نے گراف کی مدد سے حل کی تھی۔

مثال 1עריכה

ایک کاشتکار کے پاس 10 ایکڑ زمین ہے جس پر وہ مٹر اور گاجر کی فصل کاشت کرنا چاہتا ہے۔ مٹر کی فصل میں ہر ایکڑ کے لیے 2 میٹرک ٹن کھاد درکار ہوتی ہے جبکہ گاجر کی فصل کے لیے 1 میٹرک ٹن فی ایکڑ۔ فرض کرو کہ کاشتکار کو صرف 12 میٹرک ٹن کھاد دستیاب ہے۔ اب منڈی میں مٹر کی فی ایکڑ پیداوار کے 9 ہزار روپے ملتے ہیں جبکہ گاجر کی ایک ایکڑ پیداوار کے 4 ہزار روپے۔ ہمیں یہ ڈھونڈنا ہے کہ کتنے ایکڑ پر مٹر اُگائے جائیں اور کتنے پر گاجر تاکہ کاشتکار کو زیادہ سے زیادہ آمدنی ہو۔

فرض کرو کہ گاجر x ایکڑ پر کاشت کی جاتی ہے اور مٹر y ایکڑ پر۔ اب چونکہ کل رقبہ 10 ایکڑ ہے، اس لیے

\ x + y \le 10

کھاد مٹرکو 2 میٹرک ٹن فی ایکڑ، اور گاجر کو 1 میٹرک ٹن فی ایکڑ۔ جبکہ کاشتکار کے پاس کھاد کی ساری مقدار 12 میٹرک ٹن ہے، اس لیے

\ x + 2y \le 12

اس کے علاوہ چونکہ زیر کاشت رقبہ منفی نہیں ہو سکتا، اس لیے

\ x \ge 0
\ y \ge 0

مٹر کی قیمت 9 ہزار فی ایکڑ اور گاجر کی قیمت 4 ہزار فی ایکڑ کے حساب سے کاشتکار کی آمدنی ہو گی

\ f(x,y) = 4 x + 9 y

جسے وہ زیادہ سے زیادہ کرنا چاہتا ہے۔

سائلیب میں یہ مسلئہ linpro کی مدد سے حل کیا جاتا ہے۔ منافع فنکشن کے لیے ہم لکھتے ہیں:

--> p = [ 4 ; 9]
p =
    4
    9

تو منافع فنکشن یہ ہوئی (میٹرکس صورت میں)

 f(x,y) = p^t \begin{bmatrix} x \\ y \end{bmatrix}


اب نامساوات کو میٹرکس صورت یوں لکھ کر

  \begin{bmatrix}
1 & 1 \\
1 & 2
\end{bmatrix}
\begin{bmatrix} x \\ y \end{bmatrix}  \le 
\begin{bmatrix} 10 \\ 12 \end{bmatrix}

یا

  C
\begin{bmatrix} x \\ y \end{bmatrix}  \le b

جو سائلیب کی زبان میں یوں کہہ سکتے ہیں

--> C = [ 1  1; 1 2];
--> b = [ 10 ; 12];

اب سائلیب کو بتاتے ہیں کہ x اور y کی کم سے کم (min) اور زیادہ سے زیادہ (max) قیمت کیا ہو سکتی ہے:

--> cmin = [ 0 ; 0];
--> cmax = [ 10 ; 10];

چونکہ سائلیب linpro منافع فنکشن کی بجائے نقصان فنکشن استعمال کرتی ہے اس لیے ہم اسے منفی p بتاتے ہیں۔ آخری صفر کا مطلب ہے کہ C, b میں سب نامساوات ہیں (مساوات کوئی نہیں)

--> [X, lag, f] = linpro(-p, C, b, cmin, cmax, 0)
--> f =
    -54
    X =
       0
       6

تو جواب یہ آیا

 \begin{bmatrix} x \\ y \end{bmatrix} =
\begin{bmatrix} 0 \\ 6 \end{bmatrix}

یعنی گاجر کاشت نہ کی جائے، اور مٹر چھ ایکڑ پر کاشت کیا جائے۔ اور منافع ہو گا 54 ہزار۔


مثال 3 کے لیے لکیری برمجہ میں ثنویت کی تعریف ملاحظہ کریں۔

مثال 3 עריכה

اوپر مثال 1 میں مقدم مسلئہ کو یوں لکھا جا سکتا ہے

تکبیر
f(x_1, x_2) = \begin{bmatrix} 4 & 9 \end{bmatrix}
\begin{bmatrix} x_1 \\ x_2 \end{bmatrix}
جبکہ
\begin{bmatrix} 1 & 1 \\ 1 & 2 \end{bmatrix}
\begin{bmatrix} x_1 \\ x_2 \end{bmatrix}
\le \begin{bmatrix} 10 \\ 12 \end{bmatrix}

اب ثنوی مسلئہ کو یوں سمجھا جا سکتا ہے۔ فرض کرو کہ کوئی شخص کاشتکار سے ساری کھاد (بارہ میٹرک ٹن) خریدنا چاہتا ہے اور زمیں (دس ایکڑ) فصل کے دورانیہ کے لیے کرائے پر لینا چاہتا ہے۔ اب اس شخص کا مسلئہ یہ ہو گا کہ کاشتکار کو کیا قیمت کی پیشکش کرے۔ یہ شخص ایک ایکڑ کے کرائے کی قیمت y_1 روپے لگاتا ہے، اور کھاد کی فی میٹرک ٹن قیمت y_2 روپے لگاتا ہے، تو پوری قیمت یہ بنی

g(y_1,y_2) = 10 y_1 + 12 y_2

ظاہر ہے کہ یہ شخص کم سے کم قیمت لگانا پسند کرے گا۔

چونکہ ایک ایکڑ زمین اور ایک میٹرک ٹن کھاد کے استعمال سے چار ہزار روپے مالیت کی گاجر پیدا ہوتی ہے، اس لیے کاشتکار یہ سودا اسی وقت قبول کرے گا جبکہ

 1 y_1 + 1 y_2 \ge 4

اور چونکہ ایک ایکڑ زمین اور دو میٹرک ٹن کھاد کے استعمال سے نو ہزار روپے مالیت کا مٹر پیدا ہوتا ہے، اس لیے کاشتکار یہ سودا اسی وقت قبول کرے گا جبکہ

 1 y_1 + 2 y_2 \ge 9

تو ثنوی لکیری برمجہ مسلئہ یہ بنا

تصغیر
g(y_1, y_2) = \begin{bmatrix} 10 & 12 \end{bmatrix}
\begin{bmatrix} y_1 \\ y_2 \end{bmatrix}
جبکہ
\begin{bmatrix} 1 & 1 \\ 1 & 2 \end{bmatrix}
\begin{bmatrix} y_1 \\ y_2 \end{bmatrix}
\ge \begin{bmatrix} 4 \\ 9 \end{bmatrix}

سائلیب میں اس کا حل یوں نکلے گا۔

--> p = [ 4 ; 9]
p =
    4
    9
--> C = [ 1  1; 1 2];
--> b = [ 10 ; 12];
--> cmin = [ 0 ; 0];
--> cmax = [ 10 ; 10];

اب چونکہ linpro کو نامساوات کی "کم" صورت چاہیے، اس لیے ہم C اور b کو منفی لکھیں گے۔ یعنی

-\begin{bmatrix} 1 & 1 \\ 1 & 2 \end{bmatrix}
\begin{bmatrix} y_1 \\ y_2 \end{bmatrix}
\le -\begin{bmatrix} 4 \\ 9 \end{bmatrix}

چونکہ g نقصان فنکشن ہی ہے، اس لیے p کو مثبت ہی رہنے دیں گے

--> [Y, lag, g] = linpro(p, -C, -b, cmin, cmax, 0)
--> g =
    54
    Y =
       0
       4.5

اس مسلئہ کا حل یہ نکالا کہ کل قیمت 54 ہزار ہی نکلے گی، اور y_1=0، y_2=4.5۔ یعنی اپنی دانست میں یہ شخص کھاد کی قیمت ساڑھے چار پزار روپے فی میٹرک ٹن لگائے، اور زمین کا کرایہ صفر۔

Ad blocker interference detected!


Wikia is a free-to-use site that makes money from advertising. We have a modified experience for viewers using ad blockers

Wikia is not accessible if you’ve made further modifications. Remove the custom ad blocker rule(s) and the page will load as expected.

ברחבי אתר Wikia

ויקי אקראית