กำหนดการเชิงเส้น

ให้ปัญหาของกำหนดการเชิงเส้นเขียนอยู่ในรูป \[ \begin{array}{ll} \left\{ \begin{array}{l} \mbox{maximize} \\ \mbox{minimize} \end{array} \right\} & f(\mathbf{x})=\mathbf{c}^T\mathbf{x} \\ \mbox{ภายใต้เงื่อนไข} & \mathbf{A}\mathbf{x} \left\{\begin{array}{c} \leqslant \\ = \\ \geqslant \end{array}\right\} \mathbf{b} \\ \mbox{และ} & \mathbf{x} \geqslant 0 \end{array} \] โดยที่
     $\mathbf{x}=\{x_1,x_2,\ldots,x_n\}$ เป็นเวกเตอร์ขนาด $n$ ของตัวแปร
     $\mathbf{c}$ เป็นเวกเตอร์ขนาด $n$ ของสัมประสิทธิ์
     $\mathbf{b}$ เป็นเวกเตอร์ขนาด $m$ ของค่าทางขวามือ
     $\mathbf{A}$ เป็นเมตริกซ์ขนาด $m\times n$
     เวกเตอร์ทั้งหมดและเมตริกซ์มีสมาชิกเป็นจำนวนจริง

แอปพลิเคชันนี้ใช้คำนวณหาค่า $\mathbf{x}$ ที่จะทำให้ฟังก์ชัน $f(\mathbf{x})$ มีค่ามากที่สุดหรือน้อยที่สุดตามที่เราต้องการ

ข้อมูลอินพุท

แอปพลิเคชันนี้ต้องใช้ข้อมูลอินพุทสองส่วน

ส่วนแรกมีสองบรรทัดโดยบรรทัดแรกต้องเป็นคำว่า max หรือ min เท่านั้นและบรรทัดที่สองเป็นเวกเตอร์ $\mathbf{c}$

ยกตัวอย่างเช่น เราต้องการหาค่ามากที่สุดของ $f(\mathbf{x})$ เมื่อ $f(\mathbf{x})=x_1+2x_2+3x_3$ เราจะใส่ส่วนแรกของอินพุทเป็น

max
1   2    3

ส่วนที่สองของอินพุทเป็น linear constraints โดยเราจะใส่อินพุทเหมือนกับข้อมูลเมตริกซ์ขนาด $m\times (n+2)$
     $m$ คือจำนวนของ constraints
     $n$ คือจำนวนของตัวแปร
โดยใน $n$ หลักแรกเป็นสมาชิกของเมตริกซ์ $\mathbf{A}$ ข้างต้น    หลักที่ $n+1$ แทนเครื่องหมาย น้อยกว่า เท่ากับ มากกว่า ดังนี้
     เลข -1 แทนเครื่องหมาย $\leqslant$
     เลข 0 แทนเครื่องหมาย $=$
     เลข 1 แทนเครื่องหมาย $\geqslant$
ดังนั้นหลักนี้จะมีค่าที่เป็นไปได้เพียงสามค่าเท่านั้นคือ -1 0 1 ส่วนหลักสุดท้ายเป็นสมาชิกของเวกเตอร์ $\mathbf{b}$

ยกตัวอย่างเช่น เรามี linear constraints เป็นดังนี้ \[ \begin{array}{rcl} x_1 + x_2 - x_3 & = & 1 \\ -2x_1 + x_2 + 2x_3 & \geqslant & -5 \\ x_1 - x_2 & \leqslant & 4 \\ x_2 + x_3 & \leqslant & 5 \end{array} \] เราจะใส่ส่วนที่สองของอินพุทเป็น

  1    1   -1   0   1
 -2    1    2   1  -5
  1   -1    0  -1   4
  0    1    1  -1   5
    
โปรดสังเกตว่าเราใส่ 0 ในแถวที่สามและสี่ตรงส่วนของ $x_3$ และ $x_1$ เพราะว่าตัวแปรเหล่านี้ไม่มีใน constraints ดังกล่าว

คำนวณคำตอบของกำหนดการเชิงเส้น