Um engenheiro precisa projetar um reator químico (ou tanque de armazenamento gasoso) de formato cilíndrico. Este reator deve ter um volume V fixo, mas o engenheiro químico quer construí-lo usando a menor quantidade de material possível para minimizar o custo de capital (CAPEX), pois o aço inox é um material de alto valor agregado.
Assumindo que o custo do material é diretamente proporcional à área de superfície total do cilindro, minimize a área de superfície de um cilindro, mantendo seu volume de
constante.
Obs: Use os métodos ensinados na disciplina.
A) Monte um problema de otimização.
B) Monte e simule em Scilab o problema de otimização. Dica: para as estimativas iniciais use 10.
A) Monte um problema de otimização.
B) Monte e simule em Scilab o problema de otimização. Dica: para as estimativas iniciais use 10.
Passo 1
O enunciado pede que a gente projete um cilindro de volume fixo
usando a menor quantidade de material possível. Isso significa que precisamos:
- Identificar qual é a grandeza a minimizar (o custo é proporcional à área de superfície total do cilindro).
- Usar a informação dada: o volume do cilindro é
. - Encontrar as dimensões do cilindro (raio
e altura ) que minimizam essa área, respeitando o volume fixo.
Informações relevantes extraídas do enunciado:
- Volume fixo:
. - Formato do reator: cilindro circular reto, presumido com tampas (ou seja, superfície total = tampas + lateral).
- Desejo: minimizar área de superfície total.
A partir daqui vamos montar o problema matematicamente e resolver passo a passo.
Passo 2
Definimos as variáveis e escrevemos as fórmulas básicas (aquelas que você deve ter decoradas ou saber deduzir rápido na prova):
- Raio do cilindro:
(em metros). - Altura do cilindro:
(em metros). - Volume do cilindro (fórmula conhecida):
Aqui
é a constante geométrica (aprox.
),
significa
ao quadrado e
é a altura.
- Área de superfície total de um cilindro fechado (duas tampas + lateral):
Explicando:
é a área das duas bases (cada base tem área
), e
é a área lateral (circunferência
vezes altura
).
Nosso objetivo: minimizar
sujeitando-se à restrição de volume
com
.
Passo 3
Para transformar o problema com restrição num problema de uma única variável (mais simples), usamos a restrição para eliminar
. Da igualdade do volume:
Substituímos isso na expressão da área para obter uma função de
apenas:
Simplificando a segunda parcela (observe
se cancela):
Agora temos um problema de minimização unconstrained em uma variável positiva: minimizar
para
.
Passo 4
Método para encontrar mínimo: cálculo de derivadas (método padrão e ensinado nas disciplinas básicas). A ideia é:
- Calcular a derivada
. - Encontrar pontos críticos com
. - Verificar que é mínimo (segunda derivada positiva no ponto crítico).
Derivando
com respeito a
:
Derivada termo a termo:
Explicando: derivada de
é
; derivada de
é
.
Passo 5
Encontre os pontos críticos impondo
:
Multiplicamos ambos os lados por
(válido pois
):
Isolando
:
Portanto:
Passo 6
Verificação de mínimo (teste da segunda derivada):
Calcule . A partir de
:
Calcule
Explicação: derivada de
é
; derivada de
é
. Como
e
, temos
para todo
. Logo o ponto crítico encontrado é mínimo global na região
. Bom sinal!
Passo 7
Relação simples entre
e
no ponto ótimo (resultado elegante que sempre cai bem na prova):
Tomamos a expressão de usando
ótimo:
Tomamos a expressão de
Substituindo
, obtemos
Fazendo álgebra (mostro a simplificação):
Mas é mais fácil ver uma forma intuitiva: usando
e manipulando, chega-se a
Ou seja, a altura ótima é igual ao diâmetro do cilindro (altura igual ao dobro do raio). Esse é um resultado clássico e útil de decorar: cilindro de menor área para dado volume fechado tem
.
Passo 8
Agora calculamos valores numéricos para
. Usando a fórmula do raio ótimo:
Fazendo as contas (aproximações aritméticas; na prova você pode justificar o uso de uma calculadora, mas aqui eu mostro o valor aproximado):
Como
,
Cálculo da área mínima, usando
. Com
simplifica para:
Substituindo
obtido:
(Os valores foram arredondados em três casas decimais; use mais casas se quiser maior precisão.)
Passo 9
Agora a parte prática: montar e rodar a simulação em Scilab para confirmar numericamente (dica do enunciado: chute inicial = 10). Vou dar um código simples que usa uma rotina de minimização local (fminsearch). Copie e cole no console do Scilab ou em um arquivo .sce e execute.
Código Scilab (cole no Scilab exatamente como está):
/* Minimização da área de um cilindro dado V usando fminsearch */
V = 300; // volume em m^3
function S = area_r(r)
// r vem como vetor em fminsearch, garante que usamos r(1)
rr = r(1);
if rr <= 0 then
S = 1e12; // penalidade para r não positiva
return
end
S = 2*%pi*rr^2 + 2*V/rr;
endfunction
r0 = 10; // chute inicial conforme dica
[r_opt, fval, info] = fminsearch(area_r, r0);
// Se fminsearch devolver r_opt como vetor, pegamos componente 1
if sizeof(r_opt, '*') > 1 then
r_opt = r_opt(1);
end
h_opt = V/(%pi*r_opt^2);
S_opt = 2*%pi*r_opt^2 + 2*V/r_opt;
disp("Resultado da otimização (Scilab):");
disp("r_opt (m) = " + string(r_opt));
disp("h_opt (m) = " + string(h_opt));
disp("S_opt (m2) = " + string(S_opt));
disp("fminsearch info = " + string(info)); // info = 1 => sucesso normalmente
Explicações do código:
- Definimos uma função anônima
area_rque retorna. Colocamos uma penalidade grande quando para evitar regiões inválidas. - Usamos
fminsearchcom chute inicialr0 = 10. - Calculamos a altura a partir do volume e mostramos os resultados.
Passo 10
O que você deve observar ao rodar:
- O algoritmo deve convergir para um valor de
próximo de . Com esse a saída deverá ser algo parecido com: -
- Isso confirma a solução analítica e o resultado prático do código.
Agora fica tranquilo: você tem a formulação, a dedução teórica passo a passo, e o código em Scilab para rodar com chute inicial 10 e confirmar numericamente.
Resposta
A) Problema: minimizar
para
com
, sujeito a
(onde
).
B) Resultado (Scilab / analítico): ,
, área mínima
.
B) Resultado (Scilab / analítico):