Linear programming uses mathematical equations to solve business problems. If you have to decide, for example, how many and how much of four different product lines to manufacture for Christmas shopping season, linear programming takes your options and mathematically calculates the mix of products that generates maximum profit. Because the number of variables is often huge, linear programmers rely on computers to make the calculations.
To use linear programming, you must convert your problem into a mathematical model. To do this, you need an objective such as maximizing profit or minimizing losses. The model must also include decision variables that affect those objectives, and constraints that limit what you can do. For example, if you have limited supplies and want to know whether to concentrate on high-end products or a larger output of cheaper goods to maximize profit, for this model you have an objective, variables and constraints, so you have what you need to begin.
Linear programming relies, logically enough, on linear equations: If you double sales while everything else stays constant, the equation will show you doubling your revenue. Some decision variables have a non-linear effect, however. If you double your budget for a business start-up, for example, that doesn't mean your first-year profits or expenses double as well. Efficiencies of scale also often do not relate to linear effects. Alternatives to linear programming such as goal programming take nonlinear variables into account.
Linear programming is only effective if the model you use reflects the real world. Every model relies on certain assumptions and they may be invalid: you assume, for example, that tripling production will triple sales, but in reality it saturates the market. Linear equations sometimes give results that don't make sense in the real world, such as a result indicating that you should contract to build 23.75 battleships for the Navy to maximize profits -- how will you deal with the .75 in practical terms?. Skilled linear programmers can tweak models and equations to deal with these problems, however.
Some situations have too many possibilities to fit into a linear programming formula. A medical practice could use linear programming to determine the optimum radiation treatments for cancer patients, but medical conditions are so diverse, doctors inevitably find some that don't fit any linear model. Linear programming also of course has no intuition or gut instinct; Heath Hammett, who works on linear programs for the military, told "Signal" magazine in 2005 that this is why it's necessary for people to review linear programming conclusions before acting on them.