PRIMEIRA LISTA DE EXERCICÍOS(CICLO 3)
Professor: ADRIANO
Matricula: 202900004
Disciplina: Programação no Rstudio/Rmarkdown
A Fábrica Marvel Toy deseja fazer três modelos de barcos de brinquedo para as suas vendas. Eles descobriram que um modelo do navio a vapor leva uma hora no cortador, 2 horas na pintura, e 4 horas de trabalho na montagem. Este modelo produz $ 6 de lucro. O modelo do veleiro de quatro mastros leva 3 horas no cortador, 3 horas na pintura e o montador 2 horas na montagem e produz $ 3 de lucro. O modelo veleiro de dois mastros leva uma hora no cortador, três horas na pintura, uma hora na montagem, produzindo $ 2 de lucro. O cortador está disponível apenas por 45 horas, o pintor por 50 horas, e o montador por 60 horas. Supondo que eles possam vender todos os modelos que são construídos, encontre as restrições do problema e descreva como a solução ótima é obtida.
- Objetivo
Maximizar as vendas
- Variáveis de Decisão
x1 Navio a Vapor x2 Veleiro 4 mastros x3 Veleiro 2 mastros
- Função objetiva
Max Z= 6X1+3X2+2X3
- Restrições
1x1 + 3x2 + 1x2 <= 45 2x1 + 3x2 + 3x2 <= 50 4x1 + 2x2 + 1x3 <= 60 x1,x2,x3 >=0
Coeficientes de x1,x2,x3 na função objetiva.
func.objetiva <- c(6,3,2) #c
Coeficientes de x1,x2,x3 nas restrições. Sempre em matriz como mostro no texto acima.
coeficientes.restricoes <- matrix (c(1,3,1,2,3,3,4,2,1), ncol = 3, byrow = TRUE) # matriza
Sinal das restrições. Deve obedecer a ordem da matriz de coeficientes.
direcao.restricoes <- c("<=","<=","<=")
Limite das restrições. Deve obedecer a ordem da matriz de coeficientes.
limites.restricoes <- c(45,50,60) # vetor b
solucao.problema <- lp("max", func.objetiva, coeficientes.restricoes, direcao.restricoes,
limites.restricoes)
Reggio Advertising Company deseja planejar uma campanha publicitária em três meios diferentes - televisão, rádio e revistas. O objetivo da publicidade é alcançar tantos clientes em potencial quanto possível. Os resultados de um estudo de mercado são fornecidos abaixo:
A empresa não quer gastar mais do que $ 800.000 na publicidade. Além disso, requer que:
(1)pelo menos 2 milhões as exposições ocorrem entre mulheres; (2) publicidade em televisão seja limitada a $ 500.000; (3) pelo menos 3 publicidades sejam compradas na televisão diurna, e duas unidades durante horário nobre; (4) o número de unidades de publicidade no rádio e em revistas deve ser entre 5 e 10. Formular o problema de programação linear.
- Objetivo
Maximizar os clientes
- Variáveis de Decisão
TD TN RAD REV
- Função objetiva
Max z = 400TD+900TN+ 500RAD + 200VER
- Restrições
40TD+75TN+30RAD+15REV<=800 300TD+400TN+200RAD+100REV<=2000 40TD+75TN<=500 TD>=3 TN>=2 RAD>=5 RAD<=10 REV>=5 REV<=10
-Modelagem
Max z = 400TD + 900TN + 500RAD + 200REV
40TD + 75TN + 30RAD + 15REV <= 800
300TD + 400TN + 200RAD + 100REV <= 2000
40TD + 75TN <= 500
TD >= 3
TN >= 2
RAD >= 5
RAD <= 10
REV >= 5
REV <= 10
Coeficientes de TD, TN, RAD, REV na função objetiva.
func.objetiva <- c(400,900,500,200) #c
Coeficientes de TD, TN, RAD, REV nas restrições. Sempre em matriz como mostro no texto acima.
coeficientes.restricoes <- matrix (c( 40, 75, 30, 15,
300,400,200,100,
40, 75, 0, 0,
1, 0, 0, 0,
0, 1, 0, 0,
0, 0, 1, 0,
0, 0, 1, 0,
0, 0, 0, 1,
0, 0, 0, 1),ncol = 4, byrow = TRUE) # matriza
Sinal das restrições. Deve obedecer a ordem da matriz de coeficientes.
direcao.restricoes <- c("<=","<=","<=",">=",">=",">=","<=",">=","<=")
Limite das restrições. Deve obedecer a ordem da matriz de coeficientes.
limites.restricoes <- c(800,2000,500,3,2,5,10,5,10) # vetor b
solucao.problema <- lp("max", func.objetiva, coeficientes.restricoes, direcao.restricoes,
limites.restricoes)
Uma fábrica de tomate em conserva tem 5.000 quilos de tomates de grau A e 10.000 quilos de tomates grau B, os quais serão transformados em tomates em lata e pasta de tomate. Os tomates em lata devem ser compostos de pelo menos 80 por cento de tomates de grau A, enquanto a pasta de tomate deve ser feita com pelo menos 10 por cento de tomates desta mesma qualidade (grau A). Os tomates em lata são vendidos por US $ 0,08 por quilo e os tomates em pasta são vendidos por US $ 0,05 por quilo. Formule um programa linear para resolver quanto de cada produto deve ser feito, se a empresa quiser maximizar a sua receita.
- Objetivo
Maximizar a receita.
- Variáveis de Decisão
A-> Quantidade Tomate de Grau A.
TAL - TOMATE DE GRAU A LATA TBL - TOMATE DE GRAU B LATA
B -> Quantidade Tomate de Grau B.
TAP- TOMATE DE GRAU A PASTA TBP- TOMATE DE GRAU B PASTA
- Função objetiva
Max z = 0,08TAL + 0,08TBL + 0,05TAP + 0,05TBP
- Restrições
TAL+TAP <= 5000 TBL+TBP <= 10000 0,2TAL - 0,8TBL > = 0 0,9TAP - 0,1TBP >= 0
- Modelagem
Max z = 0,08TAL + 0,08TBL + 0,05TAP + 0,05TBP TAL + TAP <= 5000 TBL + TBP <= 10000 0,2TAL - 0,8TBL >= 0 0,9TAP - 0,1TBP >= 0
fo4 <- c(0.08, 0.01, 0.02, 0.09)
coef_rest4 <- matrix(c(1, 1, 0, 0,
0, 0, 1, 1
), ncol = 4, byrow = TRUE)
direcao4 <- c("<=", "<=")
rest4 <- c(5000, 10000)
lp("max", fo4, coef_rest4, direcao4, rest4)
## Success: the objective function is 1300
tabela4 <- data.frame(FROM = c("Lata", "Pasta"), TL = c(0.08, 0.02), TP = c(0.01, 0.09))
kable(tabela4)
| FROM | TL | TP |
|---|---|---|
| Lata | 0.08 | 0.01 |
| Pasta | 0.02 | 0.09 |
A fim de se produzir 1000 toneladas de aço não oxidante para válvulas de motor, pelo menos as seguintes quantidades de manganês, cromo e molibdênio, serão necessários semanalmente:
10 unidades de manganês, 12 unidades de cromo 14 unidades de molibdênio (uma unidade corresponde a 10Kg).
Esses metais são obtidos de revendedores de metais não ferrosos, que, para atrair os mercados os disponibilizam em caixas de três tamanhos, P, M e G. Uma caixa P custa $ 9 e contém 2 unidades de manganês, 2 unidades de cromo e 1 unidade de molibdênio.
Uma caixa M custa $ 12 e contém 2 unidades de manganês, 3 unidades de cromo e 1 unidade de molibdênio.
Um caso G custa US $ 15 e contém 1 unidade de manganês, 1 unidade de cromo e 5 unidades de molibdênio. Quantas caixas de cada tipo devem ser compradas semanalmente para que as quantidades necessárias de manganês, cromo e molibdênio sejam obtidas no menor custo possível?
Qual é o menor custo possível? Formule e resolva por programação linear.
- Objetivo
Minimizar a quantidade de caixas
- Variáveis de Decisão
P - Pequeno M - Médio
G - Grande
- Função objetiva Min Z = 9p + 12m + 15g
- Restrições
2p+2m+1g >= 10
2Ma+3C+1Mo >= 12
1Ma+1C+5Mo >= 14
p,m,g>=0
Coeficientes de P,M,G na função objetiva.
func.objetiva <- c(9,12,15) #c
Coeficientes de P,M,G nas restrições. Sempre em matriz como mostro no texto acima.
coeficientes.restricoes <- matrix (c(2,2,1,2,3,1,1,1,5), ncol = 3, byrow = TRUE) # matriza
Sinal das restrições. Deve obedecer a ordem da matriz de coeficientes.
direcao.restricoes <- c(">=",">=",">=")
Limite das restrições. Deve obedecer a ordem da matriz de coeficientes.
limites.restricoes <- c(10,12,14) # vetor b
solucao.problema <- lp("max", func.objetiva, coeficientes.restricoes, direcao.restricoes,
limites.restricoes)
O grupo Unido tem duas fazendas que cultivam trigo e milho. Por causa dos solos e condições climáticas diferentes, existem diferenças nos rendimentos e custos de cultivo nas duas fazendas.
Os rendimentos e custos são: Código lançado.
Cada fazenda possui 100 acres disponíveis para cultivo; 11.000 alqueires de trigo e 7.000 alqueires de milho devem ser cultivados. Determine um plano de plantio que irá minimizar o custo de atender a essas demandas.
- Objetivo
Minimizar custo p/ atender demandas.
- Variáveis de Decisão
T <- cultivo de trigo
M <- cultivo de milho
MF1
MF2
TF1
TF2
- Função objetiva
Min Z = 100MF1+120MF2+90TF1+80TF2
- Restrições
MF1 + TF1 <= 100
MF2 + TF2 <= 100
500MF1 + 650MF2 = 7000
400TF1+350TF2 =11000
MF1,MF2,TF1,TF2 >=0
- Modelagem
Min Z = 100MF1 + 120MF2 + 90TF1 + 80TF2
MF1 + TF1 <= 100
MF2 + TF2 <= 100
500MF1 + 650MF2 = 7000
400TF1 + 350TF2 =11000
Coeficientes de MF1,MF2,TF1,TF2 na função objetiva.
func.objetiva <- c(100,120,90,80) #c
Coeficientes de MF1,MF2,TF1,TF2 nas restrições. Sempre em matriz como mostro no texto acima.
coeficientes.restricoes <- matrix (c( 1, 0, 1, 0,
0, 1, 0, 1,
500,650, 0, 0,
0, 0,400,350), ncol = 4, byrow = TRUE) # matriza
Sinal das restrições. Deve obedecer a ordem da matriz de coeficientes.
direcao.restricoes <- c("<=","<=","=","=")
Limite das restrições. Deve obedecer a ordem da matriz de coeficientes.
limites.restricoes <- c(100,100,7000,11000) # vetor b
solucao.problema <- lp("min", func.objetiva, coeficientes.restricoes, direcao.restricoes,
limites.restricoes)
Considere que existem 3 silos que são necessários para satisfazer a demanda de 4 fábricas (Mills), conforme tabela a seguir. (Um silo é uma área de armazenamento da fazenda usada para armazenar grãos e Moinho é uma fábrica de moagem de grãos). Determine o quanto de cada silo deve ir para cada fábrica afim de que o custo de transporte seja minimizado.
- Objetivo
Minimizar o custo dos transportes.
- Função objetiva
Min: 10s11 + 2s12 + 20s13 + 11s14+ 12s21 + 7s22 + 9s23 + 20s24+ 4s31 + 14s31 + 16s33 + 18s34+ RMarkdown. RMarkdown.
- Restrições RMarkdown. S.a: s11 + s12 + s13 + s14 =
15
s21 + s22 + s23 + s24 = 25
s31 + s32 + s33 + s34 = 10
s11 + s21 + s31 = 5
s12 + s22 + s32 = 15
s13 + s23 + s33 = 15
s14 + s24 + s34 = 15
- Modelagem
Min: 10s11 + 2s12 + 20s13 + 11s14+ 12s21 + 7s22 + 9s23 + 20s24+ 4s31 + 14s32 + 16s33 + 18s34
s11 + s12 + s13 + s14 = 15
s21 + s22 + s23 + s24 = 25
s31 + s32 + s33 + s34 = 10
s11 + s21 + s31 = 5
s12 + s22 + s32 = 15
s13 + s23 + s33 = 15
s14 + s24 + s34 = 15
Coeficientes na função objetiva.
func.objetiva <- c(10, 2, 20, 11, 12, 7, 9, 20, 4, 14, 16, 18)
Coeficientes nas restrições. Sempre em matriz como mostro no texto acima.
coeficientes.restricoes <- matrix (c(1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1,
1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0,
0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0,
0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0,
0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),
ncol = 12, byrow = TRUE)
Sinal das restrições. Deve obedecer a ordem da matriz de coeficientes.
direcao.restricoes <- c("=","=","=","=","=","=","=")
Limite das restrições. Deve obedecer a ordem da matriz de coeficientes.
limites.restricoes <- c(15, 25, 5, 10, 15, 15, 15)
solucao.problema <- lp("min", func.objetiva, coeficientes.restricoes, direcao.restricoes,
limites.restricoes)
Tabela da matriz.
tabela <- data.frame(FROM =c("silo1","silo2","silo3","demanda"), Mil1=c(10, 12, 4, 5), Mil=c(2, 7, 14,15),
Mil3=c(20, 9, 16, 15), Mil4=c(11, 20, 18, 15), Supply=c(15, 25, 10,15))