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:
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:
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:
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.