Önce amaç fonksiyonunu belirtelim:
değerini maksimize etmek istiyoruz.
Kısıtlarımı sıralayalım:
İlk işimiz bu kısıtların grafiğini çizip çözüm alanını belirlemek.
Kısıt ():
Grafikte çizmek için denklem:
Kesim noktaları:
olduğunda (ama olduğu için burada sınırlıyız)
olduğunda
Kısıt ():
Grafikte denklem:
Kesim noktaları:
olduğunda (ama )
olduğunda (ama )
3 ve 4. Kısıtlar: ve
5 ve 6. Kısıtlar: ve
Noktaları belirleyelim:
Tüm kısıtların kesiştiği bölge bizim uygun çözüm alanımız. Bu bölgedeki köşe noktalar maksimum değer için adaylarımız.
C Noktası ()
E Noktası ()
F Noktası ()
G Noktası ()
Köşe noktalarındaki Z değerlerini hesaplıyoruz:
C Noktası ():
E Noktası ():
F Noktası ():
G Noktası ():
Maksimum değeri 46 ve bu değer noktasında elde ediliyor.
(hatta yaklaşık 2,333)
Yani:
Bir de görselini ekleyelim, şansına bugün python kütüphanelerini yenilemiştim :)

Eğer kod üzerinden düzenlemek de istersen diye kodunu da bırakıyorum, kod içerisinde açıklama yazmadım ama fark edersin zaten sayıların yerlerinden:
import matplotlib.pyplot as plt
import numpy as np
x1 = np.linspace(0, 3, 400)
x2_c1 = (21 - 7 * x1) / 3
x2_c2 = (42 - 6 * x1) / 7
x2_c3 = 4 * np.ones_like(x1)
x1_c4 = 3 * np.ones_like(x1)
vertices = np.array([
[3, 0],
[9/7, 4],
[7/3, 4],
[3, 24/7]
])
plt.figure(figsize=(8, 6))
plt.plot(x1, x2_c1, label="7x1 + 3x2 = 21", linestyle='--', color='blue')
plt.plot(x1, x2_c2, label="6x1 + 7x2 = 42", linestyle='--', color='green')
plt.axhline(y=4, color='purple', linestyle='--', label="x2 = 4")
plt.axvline(x=3, color='orange', linestyle='--', label="x1 = 3")
x_feasible = [3, 9/7, 7/3, 3]
y_feasible = [0, 4, 4, 24/7]
plt.fill(x_feasible, y_feasible, 'lightgray', alpha=0.5, label='Uygun Bölge')
for point, label in zip(vertices, ['C', 'E', 'F', 'G']):
plt.scatter(point[0], point[1], color='red')
plt.text(point[0], point[1], f' {label}({point[0]:.2f}, {point[1]:.2f})', fontsize=10, color='black')
plt.title("Doğrusal Programlama Probleminin Grafiksel Çözümü")
plt.xlabel("x1")
plt.ylabel("x2")
plt.xlim(0, 3.5)
plt.ylim(0, 4.5)
plt.grid(True)
plt.legend()
plt.show()
Direkt exe olarak da gönderedebiilirdim ama şimdi Evrim Ağacı standartlarına göre exe linki bırakmak sıkıntı olabilir, kütüphanelerini yüklersin ya zor değil python kuruluysa şunlardan indirirsin:
pip install matplotlib numpy
pip show matplotlib numpy