Skip to content

Commit 31f831e

Browse files
Merge pull request #520 from Quantum-Software-Development/FabianaCampanari-patch-1
Add files via upload
2 parents 0680685 + 3846cb8 commit 31f831e

File tree

3 files changed

+139
-0
lines changed

3 files changed

+139
-0
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,139 @@
1+
2+
# Resolução de Problema de Programação Linear pelo Método Simplex
3+
4+
Este relatório apresenta a resolução completa do problema de programação linear usando o método Simplex, simulando uma resolução feita à mão, como seria realizada em um caderno.
5+
6+
## Problema de Programação Linear
7+
8+
O problema a ser resolvido é:
9+
10+
Max. Z = 5x₁ + 4x₂
11+
12+
Sujeito a:
13+
14+
- x₁ + 2x₂ ≤ 6
15+
- -2x₁ + x₂ ≤ 4
16+
- 5x₁ + 3x₂ ≤ 15
17+
- x₁, x₂ ≥ 0
18+
19+
20+
## Preparação do Problema para o Método Simplex
21+
22+
### Introdução de Variáveis de Folga
23+
24+
O primeiro passo é converter as restrições de desigualdade em equações, introduzindo variáveis de folga:
25+
26+
- x₁ + 2x₂ + s₁ = 6
27+
- -2x₁ + x₂ + s₂ = 4
28+
- 5x₁ + 3x₂ + s₃ = 15
29+
30+
A função objetivo na forma padrão:
31+
Z - 5x₁ - 4x₂ = 0
32+
33+
### Construção do Tableau Inicial
34+
35+
O tableau inicial é formado pelos coeficientes das variáveis nas restrições, as variáveis de folga, e a função objetivo (com coeficientes negativos):
36+
37+
38+
| Base | x₁ | x₂ | s₁ | s₂ | s₃ | b |
39+
| :-- | :-- | :-- | :-- | :-- | :-- | :-- |
40+
| s₁ | 1 | 2 | 1 | 0 | 0 | 6 |
41+
| s₂ | -2 | 1 | 0 | 1 | 0 | 4 |
42+
| s₃ | 5 | 3 | 0 | 0 | 1 | 15 |
43+
| Z | -5 | -4 | 0 | 0 | 0 | 0 |
44+
45+
## Resolução Passo a Passo pelo Método Simplex
46+
47+
### Primeira Iteração
48+
49+
**Passo 1: Identificar a variável que entra na base**
50+
51+
Analisamos a linha Z e escolhemos a variável com coeficiente mais negativo. Neste caso, x₁ tem coeficiente -5, portanto x₁ entrará na base.
52+
53+
**Passo 2: Identificar a variável que sai da base**
54+
55+
Calculamos as razões para determinar qual variável sairá da base:
56+
57+
- Linha 1 (s₁): 6/1 = 6
58+
- Linha 2 (s₂): não calculamos porque o coeficiente -2 não é positivo
59+
- Linha 3 (s₃): 15/5 = 3
60+
61+
A menor razão positiva é 3, correspondente à linha 3, então s₃ sairá da base.
62+
63+
**Passo 3: Operações de pivoteamento**
64+
65+
O elemento pivô é 5 (linha 3, coluna x₁).
66+
67+
1. Dividimos a linha do pivô (linha 3) pelo valor do pivô (5):
68+
-[^2][^1][^12] ÷ 5 = [1, 0.6, 0, 0, 0.2, 3]
69+
2. Eliminamos os outros elementos da coluna pivô:
70+
- Linha 1:[^1][^1][^3] - 1×[1, 0.6, 0, 0, 0.2, 3] = [0, 1.4, 1, 0, -0.2, 3]
71+
- Linha 2: [-2, 1, 0, 1, 0, 4] - (-2)×[1, 0.6, 0, 0, 0.2, 3] = [0, 2.2, 0, 1, 0.4, 10]
72+
- Linha Z: [-5, -4, 0, 0, 0, 0] - (-5)×[1, 0.6, 0, 0, 0.2, 3] = [0, -1, 0, 0, 1, 15]
73+
74+
Obtemos o seguinte tableau:
75+
76+
77+
| Base | x₁ | x₂ | s₁ | s₂ | s₃ | b |
78+
| :-- | :-- | :-- | :-- | :-- | :-- | :-- |
79+
| s₁ | 0 | 1.4 | 1 | 0 | -0.2 | 3 |
80+
| s₂ | 0 | 2.2 | 0 | 1 | 0.4 | 10 |
81+
| x₁ | 1 | 0.6 | 0 | 0 | 0.2 | 3 |
82+
| Z | 0 | -1 | 0 | 0 | 1 | 15 |
83+
84+
### Segunda Iteração
85+
86+
**Passo 1: Identificar a variável que entra na base**
87+
88+
Na linha Z, o coeficiente de x₂ é -1, então x₂ entrará na base.
89+
90+
**Passo 2: Identificar a variável que sai da base**
91+
92+
Calculamos as razões:
93+
94+
- Linha 1 (s₁): 3/1.4 = 2.143
95+
- Linha 2 (s₂): 10/2.2 = 4.545
96+
- Linha 3 (x₁): 3/0.6 = 5
97+
98+
A menor razão positiva é 2.143, correspondente à linha 1, então s₁ sairá da base.
99+
100+
**Passo 3: Operações de pivoteamento**
101+
102+
O elemento pivô é 1.4 (linha 1, coluna x₂).
103+
104+
1. Dividimos a linha do pivô (linha 1) pelo valor do pivô (1.4):
105+
- [0, 1.4, 1, 0, -0.2, 3] ÷ 1.4 = [0, 1, 0.714, 0, -0.143, 2.143]
106+
2. Eliminamos os outros elementos da coluna pivô:
107+
- Linha 2: [0, 2.2, 0, 1, 0.4, 10] - 2.2×[0, 1, 0.714, 0, -0.143, 2.143] = [0, 0, -1.571, 1, 0.714, 5.286]
108+
- Linha 3: [1, 0.6, 0, 0, 0.2, 3] - 0.6×[0, 1, 0.714, 0, -0.143, 2.143] = [1, 0, -0.429, 0, 0.286, 1.714]
109+
- Linha Z: [0, -1, 0, 0, 1, 15] - (-1)×[0, 1, 0.714, 0, -0.143, 2.143] = [0, 0, 0.714, 0, 0.857, 17.143]
110+
111+
Obtemos o seguinte tableau:
112+
113+
114+
| Base | x₁ | x₂ | s₁ | s₂ | s₃ | b |
115+
| :-- | :-- | :-- | :-- | :-- | :-- | :-- |
116+
| x₂ | 0 | 1 | 0.714 | 0 | -0.143 | 2.143 |
117+
| s₂ | 0 | 0 | -1.571 | 1 | 0.714 | 5.286 |
118+
| x₁ | 1 | 0 | -0.429 | 0 | 0.286 | 1.714 |
119+
| Z | 0 | 0 | 0.714 | 0 | 0.857 | 17.143 |
120+
121+
### Verificação de Otimalidade
122+
123+
Como todos os coeficientes na linha Z são não-negativos, atingimos a solução ótima.
124+
125+
## Solução Ótima
126+
127+
Expressando a solução em frações para maior precisão:
128+
129+
- x₁ = 12/7 ≈ 1.714
130+
- x₂ = 15/7 ≈ 2.143
131+
- Valor máximo de Z = 120/7 ≈ 17.143
132+
133+
134+
## Conclusão
135+
136+
Aplicando o método Simplex, encontramos que a solução ótima para o problema de programação linear é produzir aproximadamente 1.714 unidades do produto 1 e 2.143 unidades do produto 2, resultando em um valor máximo da função objetivo Z = 17.143.
137+
138+
O método Simplex mostrou-se eficiente, convergindo para a solução ótima em apenas duas iterações. As variáveis de folga s₁ e s₃ são zero na solução ótima, indicando que as restrições correspondentes são ativas (estão no limite), enquanto s₂ = 5.286, indicando que a segunda restrição não é ativa.
139+
Loading

0 commit comments

Comments
 (0)