Pemrograman tujuan
Bentuk dasar

Karena model GP dibuat dari adaptasi model pemrograman linear (LP), perumusan model GP dapat dihasilkan dari mengubah notasi dan asumsi-asumsi model LP. Pada model LP, rumusan model dapat dinyatakan dalam bentuk kanonik sebagai
{\begin{aligned}\min &\,Z=\sum _{j=1}^{n}c_{j}x_{j}\\{\text{dengan kendala}}&\,f_{i}(\mathbf {x} )\geq b_{i};\,{\text{untuk }}i=1,\,\dots ,\,m\\&\,\quad \,x_{j}\geq 0;\,{\text{untuk }}j=1,\,\dots ,\,n.\end{aligned}}
Pada bentuk di atas,  m menyatakan banyaknya kendala,  x_{j}disebut variabel keputusan, dan  Z disebut fungsi objektif. Fungsi linear f_{i}(\mathbf {x} )=\sum _{j=1}^{n}a_{ij}x_{j}menyatakan persamaan kendala ke- i, yang dapat bernilai lebih besar (memiliki deviasi positif) daripada nilai target  b_{i}. Dengan bantuan aritmetika dasar, model LP tersebut juga dapat menyertakan kendala dalam bentuk "kurang dari" dan "sama dengan." Akan tetapi, terlepas dari jenis kendala yang digunakan, model LP hanya mempertimbangkan solusi yang memenuhi semua kendala. Ketika kendala-kendala dalam model LP tidak semuanya dapat saling dipenuhi, model LP disebut infeasible dan tidak memiliki solusi. Agar tetap menghasilkan solusi yang wajar dalam kondisi tersebut, Charnes dan Cooper menganggap masing-masing kendala yang menyusun model LP sebagai sebuah fungsi: h_{i}(\mathbf {x} )={\Big |}f_{i}(\mathbf {x} )-b_{i}{\Big |};\;\;{\text{untuk }}i=1,\,\dots ,\,Q.Fungsi-fungsi ini dianggap sebagai sebuah tujuan (goal) yang perlu dipenuhi agar menghasilkan solusi feasible. Dengan kata lain, solusi feasible dihasilkan ketika  h_{i}(\mathbf {x} )=0. Pada keadaan hal tersebut tidak mungkin terjadi, solusi "terbaik" selanjutnya adalah solusi yang terletak sedekat mungkin dengan tujuan-tujuan yang ditetapkan, dan dapat dicari dengan melakukan optimisasi {\begin{aligned}\min &\,Z=\sum _{i=1}^{Q}(d_{i}^{+}+d_{i}^{-})\\{\text{dengan kendala}}&\,f_{i}(\mathbf {x} )-d_{i}^{+}+d_{i}^{-}=b_{i};\,{\text{untuk }}i=1,\,\dots ,\,Q\\&\,d_{i}^{+},\,d_{i}^{-}\geq 0;\,\,{\text{untuk }}i=1,\,\dots ,\,Q\\&\,x_{j}\geq 0;\,\,{\text{untuk }}j=1,\,\dots ,\,n\end{aligned}}dengan  d_{i}^{+} disebut variabel deviasi positif dan  d_{i}^{-} disebut variabel deviasi negatif. Variabel  Q digunakan untuk menyatakan banyaknya tujuan yang dipertimbangkan model. Bentuk di atas selanjutnya menjadi dasar dari model GP. Kendala-kendala pada model GP yang melibatkan variabel-variabel deviasi disebut dengan kendala lunak (soft constraint, juga disebut goal constraint). Istilah 'kendala lunak' digunakan untuk membedakannya dengan kendala pada model LP, yang selanjutnya dirujuk sebagai kendala tegas (hard constraint). Kendala tegas dapat disertakan dalam model GP namun disarankan tidak dalam jumlah yang banyak. Penggunaan kendala tegas yang berlebihan dapat meniadakan solusi-solusi alternatif yang mungkin menarik bagi pengambil keputusan. Tanpa mengurangi keumuman, semua kendala pada model GP dalam artikel ini dianggap sebagai kendala lunak -- dengan kata lain,  Q:=m.
Lebih lanjut, fungsi  Z pada bentuk di atas disebut dengan fungsi pencapaian, untuk membedakannya dengan model LP. Fungsi ini hanya menyertakan variabel-variabel deviasi yang ingin diminimumkan dan tidak melibatkan variabel-variabel keputusan. Variabel-variabel deviasi dapat dihasilkan dari  f_{i}(\mathbf {x} ), menggunakan hubungan
d_{i}^{+}={\frac {1}{2}}{\Big [}|h_{i}(\mathbf {x} )|+h_{i}(\mathbf {x} ){\Big ]}={\begin{cases}h_{i}(\mathbf {x} )-b_{i}&{\text{jika }}h_{i}(\mathbf {x} )\geq b_{i}\\0&{\text{lainnya.}}\\\end{cases}}dan
d_{i}^{-}={\frac {1}{2}}{\Big [}|h_{i}(\mathbf {x} )|-h_{i}(\mathbf {x} ){\Big ]}={\begin{cases}b_{i}-h_{i}(\mathbf {x} )&{\text{jika }}h_{i}(\mathbf {x} )\leq b_{i}\\0&{\text{lainnya.}}\\\end{cases}}
Pendefinisian variabel-variabel deviasi di atas mengartikan sebuah kendala tidak dapat mengalami pencapaian melebihi target (nilai deviasi positif  d_{i}^{+}>0) sekaligus pencapaian dibawah target (nilai deviasi  d_{i}^{-}>0) secara bersamaan.