This book covers all aspects of linear programming from the two-dimensional LPs and their extension to higher dimensional LPs, through duality and sensitivity analysis and finally to the examination of commented software outputs.The book is organised into three distinct parts: the first part studies the concepts of linear programming and presents its founding theorems complete with proofs and applications; the second part presents linear programming in the diversity of its variants (Integer Programming, Game Theory, Transportation Problem, Assignment Model), and highlights the modelling problems that are involved in network optimisation; the final part furthers the discussion on selected topics and presents an opening to nonlinear programming through quadratic programming.