Dilema pemrograman linier digunakan untuk mengungkap topik kinerja tujuan maksimum atau minimum pada beberapa batasan. Kendala-kendala ini biasanya berupa kesenjangan. Ketika kendala-kendala ini terpenuhi, seseorang memperoleh alternatif yang layak. Ketika salah satu dari solusi ini mungkin yang tertinggi atau minimum sesuai dengan tujuan yang dicapai, seseorang mendapatkan solusi terbaik/
Dalam banyak kasus kehidupan nyata, seseorang mungkin menuntut agar variabel seleksi berupa bilangan bulat karena kita harus mendapatkan jumlah bus yang diperlukan atau jumlah personel yang diperlukan untuk dikerahkan dan seterusnya. Pelajaran dari tantangan semacam ini dikenal sebagai masalah Pemrograman Integer .
Permasalahan pemrograman integer tidak dapat diselesaikan menggunakan pendekatan Simplex, melainkan ingin diselesaikan dengan bekerja sama dengan departemen dan strategi tertentu. Gambar 1 dapat memvisualisasikan kemungkinan area yang dibatasi oleh batasan dalam masalah optimasi cembung dengan jejak horizontal dan vertikal yang digambar pada setiap tahapan bilangan bulat. Oleh karena itu, penyelesaian masalah Pemrograman Linier Integer akan jatuh pada salah satu garis horizontal atau vertikal di dalam area yang memungkinkan. Himpunan yang mungkin tidak lagi cembung dan mengakibatkan sangat sulit untuk dibersihkan karena bersifat non cembung.
Ada beberapa bentuk pendekatan yang digunakan untuk memperbaiki masalah Pemrograman Linier Integer. Metode yang paling sering digunakan adalah strategi cabang dan terikat.
Department and Bound mencakup pelonggaran batasan Integer dan penyelesaian metode linier dengan menggunakan pendekatan grafis atau simpleks. Jika segera setelah batasan bilangan bulat dilonggarkan, semua variabel keputusan berubah menjadi bilangan bulat, maka kumpulan resolusinya benar.
Namun jika jawaban perangkat lunak linear tenang tidak menghasilkan nilai bilangan bulat sebagai solusi dari variabel keputusan, seseorang harus menggunakan prosedur cabang dan pasti dengan menyelesaikan masalah awal dengan nilai bilangan bulat terbatas dari variabel keputusan akhir yang ditambahkan ke variabel tersebut. ditetapkannya batasan-batasan. Saat rangkaian kesulitan baru ini diselesaikan, jika menghasilkan nilai terbaik dengan nilai bilangan bulat, maka mungkin ada nilai yang jauh lebih baik sehingga cabang lain harus diselidiki. Akhirnya alternatif harus dipilih dari salah satu node di cabang yang sering dikunjungi, yang jumlahnya paling besar atau paling sedikit. Kita harus terus menyelesaikan masalah secara linier secara berulang-ulang dengan batasan bilangan bulat yang lebih baru dan mencari alternatif terbaik yang bisa dilakukan dalam konteksnya. Untuk dilema Pemrograman Integer berdimensi kecil, dapat diperbaiki dengan menggunakan proses grafis untuk menyelesaikan masalahnya.
Perpanjangan dari kesulitan Pemrograman Integer adalah masalah pemrograman bilangan bulat -1 dimana variabel keputusan hanya dapat memperoleh atau 1. Kesulitan semacam ini terutama bermanfaat untuk menyelesaikan tantangan yang mirip dengan masalah knap sack.