Programaçao nao-linear
Um modelo matemático é uma representação simples de uma situação real. Esta simples representação dos modelos é devido à realidade ser complexa, seria praticamente impossível e ou economicamente inviável incluir a representação do problema todas as variáveis que podem interferir no resultado do fenômeno que estamos estudando, ou por ser grande ou por desconhecimento. Assim com o modelo em geral abrange somente as variáveis mais relevantes e que tem maior impacto sobre o problema.
Trabalhando com um grupo restrito de aspectos, um modelo só será útil e adequado caso represente, com a maior credibilidade a reação das variáveis selecionadas. Esta reação, no entanto, raramente se mostra tão simples de ser trabalhado como nos problemas de programação linear. A maioria dos modelos que trata de problemas reais apresenta algum grau de não-linearidade.
Problemas com variedades de produtos, em que a margem de lucro por produto varia de acordo com a quantidade vendida, e problemas de transporte, com custos variáveis que dependem da quantidade enviada, são apenas alguns exemplos que ocorrem nos quais o comportamento das variáveis relevantes é não-linear.
Problemas de otimização em que a função-objetivo e ou pelo menos uma das restrições envolvidas não são funções lineares das variáveis de decisão são denominados problemas de programação não-linear (PNL ou nonlinear programming, em Inglês).
Um problema de programação não-linear pode ser genericamente representado da seguinte forma:
Otimizar: Z = f(
s.r.
≤=≤
Percebemos que essa representação é ampla demais para que haja um único algoritmo capaz de resolver todos os problemas que podem ser incluídos nesse formato.
Resolver problemas lineares é relativamente simples. Precisamos apenas:
1) Definir a região viável delimitada pelas restrições;
2) Identificar o extremo (no caso de solução ótima única) da região viável em que a função-objetivo apresenta o maior valor, para um problema de