Programação linear

Programação linear
Às vezes, precisamos de otimização na vida real também para obter o lucro máximo. Portanto, as técnicas de otimização pertencem a um aprendizado profundo, onde tentamos alcançar a perda mínima. Mas, às vezes, temos recursos limitados e queremos obter o lucro máximo; Então a programação linear entra.

A programação linear é um modelo matemático que geralmente é usado em ciência de dados para otimização. A otimização significa que podemos entender o significado como lucro máximo e menos custo. A empresa ou a organização possui principalmente dois objetivos principais, minimização e maximização. A minimização significa reduzir o custo extra que vem em produções para obter os lucros de maximizar. A programação linear é uma técnica de otimização simples que pode ajudar da mesma maneira. A programação linear está em toda parte ao nosso redor; Por exemplo, quando trabalhamos em qualquer projeto, também fazemos estratégias para gerenciar o trabalho em equipe para entregar rapidamente com eficiência.

Terminologia da programação linear:

  1. Função objetiva: A função objetivo será maximizar ou minimizar. O problema que vamos resolver é maximizar os lucros da empresa.
  2. Variável de decisão: Variável de decisão: os valores dessas variáveis ​​de decisão são desconhecidos. Depois de calcular esses valores, encontramos a função objetiva em saída abaixo do programa de programação linear. Calculamos valores de decisão X e Y e depois ajustamos a função objetiva que fornece seu valor final.
  3. Restrição não negativa: Os valores das variáveis ​​de decisão não devem ser negativos ou sempre são iguais a zero ou mais que zero.

Declaração de problemas: Considere uma empresa que fabrica chocolates de dois tipos - A e B. Ambos os chocolates precisam de dois materiais necessários - leite e chocolate. Para fabricar cada chocolate A e B, são necessárias as seguintes quantidades:

  • Cada unidade de A requer 3 unidades de leite e 2 unidades de chocolate
  • Cada unidade de B requer 4 unidades de leite e 1 unidade de chocolate

As ações atuais da empresa têm 25 unidades de leite e 10 unidades de chocolate. A empresa obtém lucros de cada unidade de venda de chocolate como abaixo:

  • Rs. 25 por unidade de venda de chocolate a
  • Rs. 20 por unidade de venda de chocolate B

Agora, a empresa deseja obter seu lucro máximo com as ações disponíveis.

Leite Chocolate Lucro por unidade
A 3 2 Rs 25
B 4 1 Rs 10
Balanço total em estoque 25 10

Solução: A partir do gráfico acima, podemos entender que a empresa deseja aumentar seu lucro. Então, primeiro, vamos definir nossa função de maximizar para este problema. Portanto, usando o modelo matemático, digamos que criamos X unidades de unidades A e Y de B, então podemos dizer que o modelo de função Maximize ficará abaixo:

Deixe o número total de unidades produzidas por A be = x

Deixe o número total de unidades produzidas por B ser = y

Agora, o lucro total é representado por Z

Para calcular o lucro máximo, precisamos multiplicar o total de unidades de chocolate produzidas por A e B com seu lucro unitário de Rs. 25 e Rs. 20, respectivamente.

Lucro: Max z = 25 * x + 20 * y

Agora, temos nossa função de maximizar z.

A empresa sempre quer produzir o máximo possível para obter grandes lucros, mas os materiais são limitados. De acordo com a tabela de informações acima, cada unidade de A e B requer 3 e 4 unidades de leite, respectivamente. Então, a fórmula será como 3 * x + 4 * y. Mas há uma limitação do leite, que é de 25 unidades apenas no estoque. Então, depois de adicionar essa restrição, a fórmula acima será:

3 * x + 4 * y ≤ 25

Da mesma forma, cada unidade de A e B requer 2 e 1 unidades de chocolate, respectivamente. Então a fórmula será como 2 * x + y. Mas há também uma limitação do chocolate, que é de 20 unidades apenas no estoque. Então, depois de adicionar essa restrição, a fórmula acima será:

2 *x + y ≤ 20

O valor dado pelos A e B é sempre positivo, pois são quantidades. Portanto, eles devem ser iguais a zero ou maiores que zero.

x ≥ 0 & y ≥ 0

Então, agora nosso modelo matemático da declaração do problema é feito. Agora, vamos ver no código Python a declaração do problema acima.

Programação Python:

Então, temos que instalar a polpa do pacote Python, que resolve os problemas de programação linear.

Linha 52: Nós importamos a biblioteca PUPPL.

Linha 53: Definimos a declaração do problema e damos o nome adequado do nosso problema. Damos o nome do nosso problema, o lucro da fabricação de chocolate AIS e descrevemos o objetivo da função na próxima variável, que é maximizada.

Linha 54: Definimos a variável para manter as variáveis ​​de decisão. O segundo e o terceiro argumentos são os valores de limite inferior e superior. Também sabemos que não haverá valor negativo, por isso definimos o valor inferior do limite (segundo argumento) para 0 e, no limite superior (terceiro argumento), mencionamos nenhum. A última declaração fala sobre valores como um número inteiro (LPINTEGER).

Linha 57: Definimos nossa função objetiva, conforme dado na declaração do problema.

Linha 58: Criamos nossas variáveis ​​com as restrições, conforme indicado na declaração do problema.

Linha 59: Nós imprimimos nossa declaração de problema.

Linha 60: Salvamos todos os dados do problema em um arquivo.

Linha 61: Chamamos um solucionador de método da biblioteca de celulose para resolver a programação linear.

Linha 63 e 64: Imprimos os valores calculados e o lucro final mostra o RS. 155.

O arquivo abaixo, que estamos economizando na linha não. 60

O arquivo acima tem a saída do objetivo e das restrições que salvamos em um arquivo. Então, da próxima vez, podemos simplesmente carregar e executar o código.

O código Python completo em .O formato py é dado abaixo:

Conclusão

Entendemos exemplos básicos de programação linear e como resolvê -los através da programação Python. Mas na vida real, os problemas mais complexos sempre vêm, então, em vez de resolvê -los manualmente, o país ou a empresa sempre precisa da automação para ser rápida e maximizar os lucros.