O capítulo descreve problemas de programação inteira e mista. Apresenta um exemplo ilustrativo sobre escolha de produção que maximiza lucro, resolvido por enumeração. Explica que soluções de problemas relaxados podem não ser inteiras, requerendo métodos específicos.
O documento discute erros numéricos, representação de números e conversão entre bases numéricas. Aborda 1) as fontes possíveis de erros em simulações numéricas, como imprecisão nos dados e operações; 2) a representação finita de números em computadores, notadamente a necessidade de arredondamento; 3) métodos para conversão entre bases binária e decimal.
Este documento introduz conceitos básicos de cálculo numérico. Aborda o que é um algoritmo e como ele deve ser estruturado para resolver problemas de forma eficiente. Também explica as principais etapas para modelagem matemática e resolução numérica de problemas, incluindo modelagem, escolha de métodos numéricos e critérios de parada.
Este documento discute os conceitos fundamentais da aritmética de máquina, incluindo valores exatos e aproximados, dígitos significativos, truncamento, arredondamento e erros. Apresenta também os conceitos de precisão da máquina, instabilidade e como esses fatores podem afetar os cálculos realizados em computadores.
O documento apresenta um índice com os principais tópicos de matemática que serão abordados, incluindo conjuntos numerais, operações algébricas, porcentagem, geometria e estatística. Os tópicos são divididos em seções com explicações concisas sobre cada conceito matemático.
1) O documento discute equações literais, que são equações que contêm pelo menos duas variáveis.
2) Equações literais podem ser resolvidas em relação a qualquer uma das variáveis, isolando-a num dos membros da equação.
3) Ao resolver uma equação literal em relação a uma variável, as outras variáveis passam a funcionar como números.
Equações Diferenciais Lineares de Ordem Superior
1) O documento discute problemas de valor inicial e de contorno para equações diferenciais lineares de ordem superior, apresentando definições e teoremas sobre a existência e unicidade de soluções para esses problemas. 2) Também apresenta conceitos como independência linear, wronskiano e conjunto fundamental de soluções para equações diferenciais homogêneas. 3) Discutem-se ainda soluções gerais para equações diferenciais homogêneas e não-homogêneas.
O documento descreve o que são equações literais e como resolvê-las. As equações literais são equações que contêm mais de uma variável e podem ser resolvidas em relação a qualquer uma das variáveis. Ao resolver uma equação literal, isola-se a variável desejada em um dos membros da equação usando as mesmas regras para resolver equações numéricas.
O documento discute erros numéricos, representação de números e conversão entre bases numéricas. Aborda 1) as fontes possíveis de erros em simulações numéricas, como imprecisão nos dados e operações; 2) a representação finita de números em computadores, notadamente a necessidade de arredondamento; 3) métodos para conversão entre bases binária e decimal.
Este documento introduz conceitos básicos de cálculo numérico. Aborda o que é um algoritmo e como ele deve ser estruturado para resolver problemas de forma eficiente. Também explica as principais etapas para modelagem matemática e resolução numérica de problemas, incluindo modelagem, escolha de métodos numéricos e critérios de parada.
Este documento discute os conceitos fundamentais da aritmética de máquina, incluindo valores exatos e aproximados, dígitos significativos, truncamento, arredondamento e erros. Apresenta também os conceitos de precisão da máquina, instabilidade e como esses fatores podem afetar os cálculos realizados em computadores.
O documento apresenta um índice com os principais tópicos de matemática que serão abordados, incluindo conjuntos numerais, operações algébricas, porcentagem, geometria e estatística. Os tópicos são divididos em seções com explicações concisas sobre cada conceito matemático.
1) O documento discute equações literais, que são equações que contêm pelo menos duas variáveis.
2) Equações literais podem ser resolvidas em relação a qualquer uma das variáveis, isolando-a num dos membros da equação.
3) Ao resolver uma equação literal em relação a uma variável, as outras variáveis passam a funcionar como números.
Equações Diferenciais Lineares de Ordem Superior
1) O documento discute problemas de valor inicial e de contorno para equações diferenciais lineares de ordem superior, apresentando definições e teoremas sobre a existência e unicidade de soluções para esses problemas. 2) Também apresenta conceitos como independência linear, wronskiano e conjunto fundamental de soluções para equações diferenciais homogêneas. 3) Discutem-se ainda soluções gerais para equações diferenciais homogêneas e não-homogêneas.
O documento descreve o que são equações literais e como resolvê-las. As equações literais são equações que contêm mais de uma variável e podem ser resolvidas em relação a qualquer uma das variáveis. Ao resolver uma equação literal, isola-se a variável desejada em um dos membros da equação usando as mesmas regras para resolver equações numéricas.
The document discusses a new project to build 3 new buildings for a school. It outlines the key steps in the project including hiring an architect, getting necessary permits and approvals, developing blueprints, putting the project out to bid, selecting a contractor, and completing construction in 3 phases with an expected completion date of 18 months. Community feedback will be solicited at key points in the process.
La Unión Europea ha acordado un paquete de sanciones contra Rusia por su invasión de Ucrania. Las sanciones incluyen restricciones a los bancos rusos, la prohibición de la venta de aviones y equipos a Rusia, y sanciones contra funcionarios rusos. Los líderes de la UE esperan que las sanciones aumenten la presión económica sobre Rusia y la disuadan de continuar su agresión contra Ucrania.
Este documento fornece informações sobre o processo seletivo para o mestrado em educação na Pontifícia Universidade Católica do Rio Grande do Sul, incluindo três linhas de pesquisa, professores associados a cada linha e requisitos para a candidatura como currículo, memorial, e prova escrita.
ATENÇÃO ATENÇÃO ATENÇÃO
NÃO PERCA TEMPO...
GANHE ATÉ 1,25 % AO DIA DO VALOR INVESTIDO
GANHO DE INDICAÇÃO ATÉ O 9 NÍVEL
10% 5% 5% 3% 3% 1% 1% 1% 1%
FAÇA SEUS INVESTIMENTOS PELO CARTÃO DE CRÉDITO EM ATÉ 12X , AO FAZER SEU CADASTRO VÁ EM COMPRAR COLOCA O VALOR E VAI NA OPÇÃO PAYPAL ...
http://www.publityy.com/?dinheirorapido
http://www.publityy.com/?dinheirorapido
Dokumen tersebut membahas tentang konfigurasi routing pada tiga buah router untuk membentuk topologi jaringan. Terdapat penjelasan mengenai pengaturan alamat IP, pembuatan tabel routing statis dan dinamis, serta konfigurasi protokol routing RIP versi 1."
O documento apresenta os trabalhos de três alunos da 6a série sobre figuras planas, áreas e perímetros, incluindo os trabalhos de Duarte Pereira, Lara Calado e Miguel Silva.
O documento discute oportunidades de fusões e aquisições no Brasil para consolidação de mercado, momento de ajustes para viabilidade de nova fase de crescimento e saídas criativas para empresas familiares, como planos de desenvolvimento e internacionalização ou captação de investimentos.
O documento descreve a organização dos seres vivos, desde o nível mais alto de organismos até o nível mais baixo de átomos. Ele lista e define cada nível de organização biológica, incluindo organismos, sistemas, órgãos, tecidos, células, organelas, moléculas e átomos. Acima do nível de organismo, ele também lista e define populações, comunidades, ecossistemas e a biosfera.
Dokumen tersebut memberikan panduan cara mengimbas virus pada komputer dengan menggunakan perisian antivirus. Ia menjelaskan proses quick scan untuk menghapuskan virus dalam sistem operasi, removable media scan untuk memastikan tiada virus pada pemacu kilat, dan folder scan untuk memilih folder tertentu yang ingin diimbas. Dokumen ini juga menyediakan pilihan custom scan untuk mengimbas seluruh komputer dan semua pemacu kilat.
1. O documento apresenta um modelo de programação linear para resolver um problema de alocação de recursos de uma marcenaria que produz cadeiras e armários.
2. São definidas as variáveis de decisão x1 (cadeiras) e x2 (armários), a função objetivo de maximizar lucro, e as restrições de disponibilidade de madeira e mão de obra.
3. O problema é resolvido graficamente e pelo método simplex no Excel, chegando à conclusão de que a solução ótima é produzir 2 armários por dia para maximizar lucro.
Este documento descreve três problemas de cálculo diferencial que os estudantes devem resolver e enviar até 19 de setembro de 2016. Os problemas envolvem encontrar soluções para equações diferenciais e aplicar métodos como redução de ordem e variação de parâmetros. As soluções devem ser enviadas em um único arquivo no SIGAA e há pontuação associada à entrega e defesa de cada solução.
The document discusses a new project to build 3 new buildings for a school. It outlines the key steps in the project including hiring an architect, getting necessary permits and approvals, developing blueprints, putting the project out to bid, selecting a contractor, and completing construction in 3 phases with an expected completion date of 18 months. Community feedback will be solicited at key points in the process.
La Unión Europea ha acordado un paquete de sanciones contra Rusia por su invasión de Ucrania. Las sanciones incluyen restricciones a los bancos rusos, la prohibición de la venta de aviones y equipos a Rusia, y sanciones contra funcionarios rusos. Los líderes de la UE esperan que las sanciones aumenten la presión económica sobre Rusia y la disuadan de continuar su agresión contra Ucrania.
Este documento fornece informações sobre o processo seletivo para o mestrado em educação na Pontifícia Universidade Católica do Rio Grande do Sul, incluindo três linhas de pesquisa, professores associados a cada linha e requisitos para a candidatura como currículo, memorial, e prova escrita.
ATENÇÃO ATENÇÃO ATENÇÃO
NÃO PERCA TEMPO...
GANHE ATÉ 1,25 % AO DIA DO VALOR INVESTIDO
GANHO DE INDICAÇÃO ATÉ O 9 NÍVEL
10% 5% 5% 3% 3% 1% 1% 1% 1%
FAÇA SEUS INVESTIMENTOS PELO CARTÃO DE CRÉDITO EM ATÉ 12X , AO FAZER SEU CADASTRO VÁ EM COMPRAR COLOCA O VALOR E VAI NA OPÇÃO PAYPAL ...
http://www.publityy.com/?dinheirorapido
http://www.publityy.com/?dinheirorapido
Dokumen tersebut membahas tentang konfigurasi routing pada tiga buah router untuk membentuk topologi jaringan. Terdapat penjelasan mengenai pengaturan alamat IP, pembuatan tabel routing statis dan dinamis, serta konfigurasi protokol routing RIP versi 1."
O documento apresenta os trabalhos de três alunos da 6a série sobre figuras planas, áreas e perímetros, incluindo os trabalhos de Duarte Pereira, Lara Calado e Miguel Silva.
O documento discute oportunidades de fusões e aquisições no Brasil para consolidação de mercado, momento de ajustes para viabilidade de nova fase de crescimento e saídas criativas para empresas familiares, como planos de desenvolvimento e internacionalização ou captação de investimentos.
O documento descreve a organização dos seres vivos, desde o nível mais alto de organismos até o nível mais baixo de átomos. Ele lista e define cada nível de organização biológica, incluindo organismos, sistemas, órgãos, tecidos, células, organelas, moléculas e átomos. Acima do nível de organismo, ele também lista e define populações, comunidades, ecossistemas e a biosfera.
Dokumen tersebut memberikan panduan cara mengimbas virus pada komputer dengan menggunakan perisian antivirus. Ia menjelaskan proses quick scan untuk menghapuskan virus dalam sistem operasi, removable media scan untuk memastikan tiada virus pada pemacu kilat, dan folder scan untuk memilih folder tertentu yang ingin diimbas. Dokumen ini juga menyediakan pilihan custom scan untuk mengimbas seluruh komputer dan semua pemacu kilat.
1. O documento apresenta um modelo de programação linear para resolver um problema de alocação de recursos de uma marcenaria que produz cadeiras e armários.
2. São definidas as variáveis de decisão x1 (cadeiras) e x2 (armários), a função objetivo de maximizar lucro, e as restrições de disponibilidade de madeira e mão de obra.
3. O problema é resolvido graficamente e pelo método simplex no Excel, chegando à conclusão de que a solução ótima é produzir 2 armários por dia para maximizar lucro.
Este documento descreve três problemas de cálculo diferencial que os estudantes devem resolver e enviar até 19 de setembro de 2016. Os problemas envolvem encontrar soluções para equações diferenciais e aplicar métodos como redução de ordem e variação de parâmetros. As soluções devem ser enviadas em um único arquivo no SIGAA e há pontuação associada à entrega e defesa de cada solução.
O documento apresenta exemplos de resolução de problemas de programação linear utilizando softwares como Lindo, QM for Windows e o Solver do Excel. São resolvidos problemas como o de Giapetto e um problema de orçamento de capital maximizando o valor presente líquido total. Softwares como esses auxiliam na resolução de problemas que envolvem muitas etapas de cálculo manual.
O documento discute problemas de otimização em matemática, especificamente como encontrar a melhor solução para um problema, seja maximizando ou minimizando uma função. Apresenta exemplos de como resolver problemas de otimização envolvendo equações lineares do primeiro grau para determinar o lucro ou custo máximo/mínimo.
O seminário apresentou introdução à otimização convexa e resolução de problemas utilizando CVX. Foi discutido breve histórico da otimização, conceitos de funções e conjuntos convexos, problemas de otimização convexa e métodos de resolução como o método de pontos interiores. O software CVX foi apresentado como ferramenta para modelagem e resolução de problemas de otimização convexa.
A programação linear é uma técnica de otimização que usa expressões lineares para modelar problemas e encontrar soluções ótimas. Ela surgiu em 1947 para resolver problemas logísticos durante a Segunda Guerra Mundial. Problemas de programação linear definem variáveis de decisão, uma função objetivo a ser otimizada e restrições a serem satisfeitas.
Este capítulo apresenta conceitos básicos de matemática, incluindo conjuntos de números, operações com números reais e fracionários, porcentagens, equações e potências. Discute propriedades de adição, subtração, multiplicação e divisão para diferentes conjuntos numéricos.
1) O documento apresenta observações importantes sobre frações, equações e potências para esclarecer questões sobre exercícios de matemática. 2) Aborda tópicos como soma, produto, divisão e simplificação de frações, resolução de equações de 1o e 2o grau e propriedades de potências. 3) Fornece exemplos detalhados para aplicar as propriedades matemáticas discutidas.
Material de apoio das aulas de tutoria de Algoritmos e Estrutura de dados da Universidade Federal de Ouro Preto, Campus João Monlevade. O conteúdo abordado é sobre relações de recorrência em relação com a análise e complexidade de algoritmos.
O documento discute programação linear, apresentando exemplos de modelagem matemática para problemas de minimização de custo e maximização de lucro sob restrições de recursos e demanda. Nos exemplos, variáveis representam quantidades de itens a serem produzidos/comprados e a função objetivo e restrições definem o problema de otimização.
PROBLEMA DA MOCHILA VALIOSA COM VALOR MINIMO DE UTILIDADEJoao Gonçalves
1. O documento discute o problema da mochila valiosa, no qual objetos devem ser selecionados para levar na mochila considerando peso e valor.
2. Algoritmos como força bruta, programação dinâmica e gulosos são implementados para resolver o problema de forma exata ou aproximada.
3. Testes são realizados para comparar o desempenho dos algoritmos em termos de tempo de execução e qualidade da solução.
Este documento apresenta o método gráfico para resolver problemas de programação linear com duas variáveis de decisão. O método envolve representar graficamente as restrições do problema e traçar retas da função objetivo para encontrar o ponto ótimo na região factível. Exemplos ilustram como aplicar os oito passos do método, incluindo formulação do problema, traçar retas, delimitar região factível e resolver sistema de equações para achar a solução.
Este documento lista uma série de "Questões Resolvidas" sobre diversos assuntos como matemática, física e lógica. As questões 1-20 abordam vários tópicos diferentes e as questões 21-26 discutem tópicos específicos como binômio de Newton, razões e problemas lógicos. O documento também fornece resumos detalhados das soluções para cada questão.
Programação dinâmica é um método para construir algoritmos que resolvem problemas de otimização de forma eficiente, evitando recalcular subproblemas repetidos, ao invés de armazenar suas soluções previamente calculadas.
O documento discute programação linear, apresentando suas características, aplicações e o método simplex para resolução de problemas de programação linear. É apresentado um exemplo ilustrativo de um problema de programação linear com duas variáveis e três restrições.
Este documento descreve o problema de transporte (PT) e apresenta um exemplo prototípico para ilustrar sua formulação como um problema de programação linear. O exemplo trata da distribuição otimizada de leite de três fábricas para quatro armazéns, com o objetivo de minimizar os custos de transporte. Os dados do exemplo são usados para formular o PT como um modelo matemático de minimização sujeito a restrições de oferta e procura.
Este documento descreve o problema de transporte (PT) e apresenta um exemplo prototípico para ilustrar sua formulação como um problema de programação linear. O exemplo trata da distribuição otimizada de leite de três fábricas para quatro armazéns, com o objetivo de minimizar os custos de transporte. O documento explica como modelar o PT, incluindo restrições de oferta e demanda, e como lidar com casos equilibrados e desequilibrados.
Modelagem matematica aplicada a engenharia quimicaVinicius Chacon
O documento apresenta três partes: (1) generalização de modelos macroscópicos; (2) métodos numéricos para resolver modelos macroscópicos; (3) métodos numéricos para resolver modelos microscópicos.
17.1 Equações Lineares de Segunda Ordem-15-27.pdfBrandonCarhuas
O documento discute equações diferenciais de segunda ordem. Explica como resolver equações diferenciais usando a equação auxiliar e fornecendo soluções gerais. Também discute como resolver problemas de valor inicial e de contorno para equações diferenciais de segunda ordem.
1. O documento contém 5 exercícios de matemática com operações algébricas e problemas de cálculo.
2. As respostas são fornecidas com explicações detalhadas dos cálculos realizados em cada questão.
3. Regras de operação com sinais e ordem das operações são aplicadas corretamente para chegar às soluções.
1. Cap´ıtulo 4
Programa¸c˜ao
Inteira/Mista
4.1 Restri¸c˜oes de Integralidade
Restri¸c˜oes de integralidade surgem quando a natureza do problema imp˜oe
que todas as suas vari´aveis de decis˜ao assumam apenas valores inteiros (integrais).
Problemas com esta caracter´ıstica s˜ao chamados de problemas de Programa¸c˜ao
Inteira. Problemas nos quais as vari´aveis de decis˜ao s´o podem assumir os valores
inteiros 0 e 1 s˜ao denominados de problemas de Programa¸c˜ao 0-1. Quando ape-
nas parte das vari´aveis est´a restrita a valores inteiros, diz-se que o problema ´e de
Programa¸c˜ao Inteira/Mista.
Os m´etodos tradicionais de Programa¸c˜ao Linear, em especial o m´etodo Sim-
plex, n˜ao levam diretamente em conta restri¸c˜oes de integralidade, o que n˜ao quer
dizer que n˜ao possam produzir solu¸c˜oes ´otimas inteiras. No Cap´ıtulo 3 as solu¸c˜oes
encontradas por m´etodos Simplex especializados para problemas de transporte e de
atribui¸c˜ao s˜ao naturalmente inteiras, porque os dados de entrada destes problemas
s˜ao inteiros e os m´etodos empregados exploram as estruturas especiais destes pro-
blemas para executar apenas opera¸c˜oes de adi¸c˜ao, subtra¸c˜ao e multiplica¸c˜ao, n˜ao
podendo assim gerar resultados n˜ao-inteiros.
Existem, entretanto, problemas importantes de planejamento que requerem
solu¸c˜oes ´otimas inteiras, mas que n˜ao apresentam propriedades que permitam obtˆe-
las por meio de programa¸c˜ao linear. Em geral os m´etodos da programa¸c˜ao linear
precisam ser adaptados para que forne¸cam respostas compat´ıveis com restri¸c˜oes de
integralidade. Embora a presen¸ca de vari´aveis inteiras em problemas de planeja-
mento j´a tenha sido abordada em cap´ıtulos anteriores, ´e neste que se inicia um
estudo mais detalhado de modelos e m´etodos de Programa¸c˜ao Inteira/Mista.
4.2 Exemplo Ilustrativo
Algumas propriedades b´asicas de problemas lineares-inteiros s˜ao discutidas
por meio do exemplo ilustrativo a seguir.
Exemplo 4.1 Um moveleiro fabrica dois tipos de pain´eis de madeira. Disp˜oe de
105
2. 106 Cap´ıtulo 4. Programa¸c˜ao Inteira/Mista
seis unidades de madeira e 28 horas de trabalho. O painel 1 consome duas unidades
de madeira e sete horas de trabalho; o painel 2, uma unidade de madeira e oito horas
de trabalho. Os lucros unit´arios dos pain´eis s˜ao de $120 e $80, respectivamente. O
moveleiro gostaria de maximizar seu lucro com a produ¸c˜ao de pain´eis.
A descri¸c˜ao acima admite a seguinte formula¸c˜ao por programa¸c˜ao linear-
inteira:
(PLI)
maximizar z = 120x1 + 80x2
sujeito a 2x1 + x2 ≤ 6,
7x1 + 8x2 ≤ 28,
com x1 e x2 vari´aveis inteiras n˜ao-negativas. A Figura 4.1 ilustra graficamente o
problema. Apenas os pontos assinalados com o s´ımbolo • s˜ao solu¸c˜oes vi´aveis para
o problema linear-inteiro (PLI).
PSfrag replacements
1
1
2
2
3
3
4
4
5
6
0 x1
x2
2x1 + x2 = 6
7x1 + 8x2 = 28
Solu¸c˜ao de
(PLIR)
Figura 4.1: Representa¸c˜ao gr´afica do problema (PLI).
A solu¸c˜ao ´otima do problema linear-inteiro relaxado, (PLIR), obtido ignorando-
se as restri¸c˜oes de integralidade sobre as vari´aveis de decis˜ao, ´e encontrada na in-
tersec¸c˜ao das restri¸c˜oes lineares: x1 = 20/9 e x2 = 14/9. Se a solu¸c˜ao ´otima obtida
fosse inteira, o problema (PLI) teria sido resolvido. O valor da fun¸c˜ao-objetivo na
solu¸c˜ao do problema linear relaxado ´e
zPLIR = 120(20/9) + 80(14/9) = 3520/9 391.1.
Uma primeira id´eia para for¸car a integralidade da solu¸c˜ao seria arredondar
3. 4.3. Modelos de Programa¸c˜ao Inteira 107
os valores ´otimos do problema (PLIR) para os inteiros mais pr´oximos, obtendo-se
x1 = 2 e x2 = 1. O valor da fun¸c˜ao-objetivo na solu¸c˜ao arredondada ´e zARR = 320.
Uma segunda id´eia, poss´ıvel quando o problema considerado apresenta um
n´umero relativamente pequeno de alternativas vi´aveis inteiras, seria resolver o pro-
blema por enumera¸c˜ao, isto ´e, determinar qual das alternativas vi´aveis inteiras
leva ao maior valor para a fun¸c˜ao-objetivo. A solu¸c˜ao ´otima do problema (PLI),
obtida por enumera¸c˜ao, ´e x1 = 3, x2 = 0 e zPLI = 360. Sua diferen¸ca percentual
em rela¸c˜ao `a solu¸c˜ao obtida por arredondamento ´e
360 − 320
360
11%.
Diferen¸cas percentuais da ordem de 10% de lucro costumam ser significativas
em problemas de planejamento. 2
Dado um problema de programa¸c˜ao linear-inteira (PLI) qualquer e sua vers˜ao
(PLIR) obtida relaxando-se (ignorando-se) restri¸c˜oes de integralidade, ent˜ao, em
termos de valores ´otimos das fun¸c˜oes-objetivos,
zPLI ≤ zPLIR
se o problema original for de maximiza¸c˜ao. No caso de minimiza¸c˜ao,
zPLI ≥ zPLIR.
A raz˜ao para as desigualdades ´e que a regi˜ao vi´avel do problema (PLIR)
cont´em todas as solu¸c˜oes vi´aveis inteiras do problema (PLI). Logo, o valor ´otimo
de (PLIR) ´e no m´ınimo igual ao de (PLI), podendo ser maior ou menor, depen-
dendo do tipo de formula¸c˜ao, maximiza¸c˜ao ou minimiza¸c˜ao. Esta propriedade ´e
freq¨uentemente explorada por m´etodos de programa¸c˜ao inteira.
4.3 Modelos de Programa¸c˜ao Inteira
Muitos problemas de planejamento podem ser formulados a partir de mode-
los de programa¸c˜ao inteira gen´ericos, e que por serem gen´ericos tˆem sido melhor
estudados na literatura da ´area. Alguns destes modelos s˜ao discutidos nesta se¸c˜ao.
Problema da Mochila
O chamado problema da mochila (knapsack problem) descreve a seguinte si-
tua¸c˜ao: certo indiv´ıduo possui uma mochila com capacidade para armazenar b
kilogramas. O indiv´ıduo precisa escolher as quantidades de n diferentes itens a
armazenar na mochila, sabendo que cada unidade do item i pesa ai kilogramas.
O indiv´ıduo atribui o valor pi a cada unidade do item i. O problema consiste em
maximizar o valor total dos itens a armazenar na mochila respeitando o seu limite
de capacidade.
4. 108 Cap´ıtulo 4. Programa¸c˜ao Inteira/Mista
Definindo xi como a quantidade do item i = 1, 2, . . . , n, o problema da mochila
assume a seguinte forma:
(PM)
maximizar z = p1x1 + p2x2 + · · · + pnxn
sujeito a a1x1 + a2x2 + · · · + anxn ≤ b,
com xi, i = 1, 2, . . . , n, vari´aveis inteiras n˜ao-negativas.
O problema da mochila surge com freq¨uˆencia em problemas de planejamento,
como no discutido a seguir.
Exemplo 4.2 Uma empresa est´a considerando investir em quatro novos projetos.
Os projetos gerariam um lucro l´ıquido presente de $16000, $22000, $12000 e $8000.
(O lucro l´ıquido presente, NPV em inglˆes, seria o lucro obtido ao longo dos anos
referido ao momento no qual a decis˜ao de investimento ´e tomada.) Os projetos exi-
giriam investimentos de $5000, $7000, $4000 e $3000, respectivamente. A empresa
disp˜oe de um total de $14000 para investimento nos quatro projetos. O objetivo da
empresa ´e determinar quais projetos devem receber investimentos para que o seu
lucro seja m´aximo.
Este problema se encaixa na formula¸c˜ao geral do problema da mochila definindo-
se as vari´aveis de decis˜ao como xi = 1 se o projeto i ´e selecionado, e xi = 0, caso
contr´ario (i = 1, 2, 3, 4). Expressando valores em $1000, obt´em-se o seguinte pro-
blema de programa¸c˜ao linear-inteira;
(P)
maximizar z = 16x1 + 22x2 + 12x3 + 8x4
sujeito a 5x1 + 7x2 + 4x3 + 3x4 ≤ 14,
com xi = 1 ou xi = 0, i = 1, 2, 3, 4. (O problema (P) poderia ser classificado como
um problema de programa¸c˜ao 0-1.)
A seguir discute-se a introdu¸c˜ao de restri¸c˜oes adicionais como exerc´ıcio de
modelagem de problemas de programa¸c˜ao inteira. Se a empresa resolver investir em
no m´aximo dois projetos (devido a limita¸c˜oes de recursos humanos, por exemplo),
ent˜ao uma restri¸c˜ao do tipo
x1 + x2 + x3 + x4 ≤ 2
deve ser agregada ao problema (P). Se investir no projeto 2 implicar em investir no
projeto 1, a restri¸c˜ao a ser agregada ao problema (P) deve ser
x2 ≤ x1.
Para evitar investimentos simultˆaneos nos projetos 1 e 4, acrescenta-se ao
problema (P) a restri¸c˜ao
x1 + x4 ≤ 1.
2
5. 4.3. Modelos de Programa¸c˜ao Inteira 109
Problema do Caixeiro Viajante
O problema do caixeiro viajante (travelling salesman problem) pode ser re-
sumido da seguinte forma: um vendedor parte para visitar um certo n´umero de
cidades antes de retornar `a sua cidade de origem. Qual a ordem das visitas que
minimiza a distˆancia total percorrida?
O problema do caixeiro viajante possui in´umeras e importantes aplica¸c˜oes em
planejamento. Empresas transportadoras de grande porte, por exemplo, freq¨uente-
mente recorrem a programas computacionais para resolver problemas de rotea-
mento, isto ´e, determinar quais rotas percorrer para atender pedidos de entrega e
coleta de encomendas de forma a minimizar seus custos totais de transporte.
Denomina-se tour qualquer solu¸c˜ao vi´avel para o problema do caixeiro vi-
ajante, isto ´e, qualquer solu¸c˜ao pela qual o caixeiro visita cada cidade uma vez
e retorna `a sua cidade de origem, n˜ao necessariamente percorrendo um caminho
m´ınimo. Num problema envolvendo n cidades existem n! possibilidades de tours,
pois de uma cidade qualquer deve-se passar a uma das n − 1 restantes, e ent˜ao
para as n − 2 restantes, e assim sucessivamente, at´e restar apenas uma cidade a ser
visitada. Se n = 11, ent˜ao o n´umero total de tours seria 10! = 3628800. Observe
que n˜ao ´e necess´ario especificar uma cidade de origem quando se adota o conceito
de tour.
Para obter o modelo matem´atico inicial de um problema com n cidades, define-
se como vari´aveis de decis˜ao, para i, j = 1, 2, . . . , n,
xij =
1, se o tour segue diretamente da cidade i para a cidade j;
0, caso contr´ario
Para que ocorra um tour, exatamente uma cidade deve ser visitada depois da
cidade i, o que se traduz nas n restri¸c˜oes
n
j=1,j=i
xij = 1, i = 1, 2, . . . , n. (4.1)
Um segundo conjunto de n restri¸c˜oes imp˜oe que exatamente uma cidade deve
ser visitada antes da cidade j:
n
i=1,i=j
xij = 1, j = 1, 2, . . . , n. (4.2)
As 2n restri¸c˜oes (4.1) e (4.2) s˜ao similares `as presentes em problemas de atri-
bui¸c˜ao, discutidos no cap´ıtulo anterior.
O objetivo no problema do caixeiro viajante ´e minimizar a distˆancia total
percorrida. Denotando por cij o custo de deslocamento entre as cidades i e j,
obt´em-se a seguinte fun¸c˜ao-objetivo:
z =
n
i=1
n
j=1,j=i
cijxij. (4.3)
6. 110 Cap´ıtulo 4. Programa¸c˜ao Inteira/Mista
O modelo matem´atico inicial do problema consiste em minimizar (4.3) sujeito
`as restri¸c˜oes (4.1) e (4.2). Este modelo possui solu¸c˜oes vi´aveis que n˜ao s˜ao tours.
Exemplo: considere um modelo envolvendo n = 8 cidades e as seguintes vari´aveis
assumindo valor igual a 1: x13, x32, x26, x64, x41, x57, x78 e x85. Todas as 2n = 16
restri¸c˜oes s˜ao satisfeitas, mas a solu¸c˜ao n˜ao corresponde a um tour. Existem, na
verdade, dois subtours: um composto por x13, x32, x26, x64, x41; outro formado
por x57, x78 e x85. Para que qualquer solu¸c˜ao vi´avel corresponda a um tour ´e
necess´ario incorporar novas restri¸c˜oes ao modelo, o que n˜ao ser´a feito nesta discuss˜ao
introdut´oria do problema.
Exemplo 4.3 Problemas envolvendo o seq¨uenciamento de tarefas s˜ao muitas vˆezes
modelados como problemas do tipo caixeiro viajante. Considere a produ¸c˜ao di´aria
de uma ind´ustria qu´ımica, que inclui a produ¸c˜ao de tintas nas cores branco, verme-
lho, amarelo e preto. Como a ind´ustria usa o mesmo equipamento para produzir
todos os tipos de cores, uma limpeza entre bateladas – produ¸c˜oes de cores diferentes
– ´e necess´aria. A tabela a seguir resume os tempos de limpeza entre bateladas, em
minutos. As linhas da tabela representam cores correntes; as colunas, cores a serem
produzidas em seguida. O objetivo da ind´ustria ´e determinar a seq¨uˆencia ´otima de
produ¸c˜ao di´aria das quatro cores que minimiza o tempo total de limpeza (setup).
Branco Amarelo Preto Vermelho
Branco – 10 17 15
Amarelo 20 – 19 18
Preto 50 44 – 25
Vermelho 45 40 20 –
Este problema se enquadra no modelo do problema do caixeiro viajante associando-
se cores a cidades. Denotando as cores por 1, 2, 3 e 4 (branco, amarelo, preto e
vermelho), os tempos de limpeza por cij, as vari´aveis de decis˜ao por xij = 1, se o
tour vai dar cor i para a cor j, e xij = 0, caso contr´ario, obt´em-se diretamente o
modelo matem´atico do problema. Como comentado, a solu¸c˜ao ´otima do problema
pode n˜ao ser um tour. O tour ´otimo obtido por enumera¸c˜ao ´e produzir as cores
na seq¨uˆencia 1,2,4,3 (branco, amarelo, vermelho, preto), com um tempo m´ınimo
total de limpeza igual a 98 minutos. 2
4.4 M´etodo Branch–and–Bound
Nesta se¸c˜ao apresenta-se um m´etodo geral para resolu¸c˜ao de problemas de pro-
grama¸c˜ao inteira, conhecido como m´etodo branch–and–bound. Um exemplo simples
ser´a usado para motivar o desenvolvimento do m´etodo. Considere o problema de
programa¸c˜ao inteira
(P1)
maximizar z = 3x1 + 4x2
sujeito a 2x1 + x2 ≤ 6,
2x1 + 3x2 ≤ 9,
7. 4.4. M´etodo Branch–and–Bound 111
sendo x1 e x2 vari´aveis inteiras n˜ao-negativas. As solu¸c˜oes vi´aveis do problema (P1)
s˜ao representadas pelo s´ımbolo • na Figura 4.11.
PSfrag replacements
1
1
2
2
3
3
4
4
5
5
6
0 x1
x2
2x1 + x2 = 6
2x1 + 3x2 = 9
Figura 4.11: Solu¸c˜oes vi´aveis do problema (P1).
A solu¸c˜ao ´otima do problema (P1), obtida por enumera¸c˜ao expl´ıcita das
alternativas vi´aveis, ´e x1 = 0 e x2 = 3, com z = 12. O m´etodo branch–and–
bound pode ser visto como um m´etodo de enumera¸c˜ao impl´ıcita, porque explora
todo o conjunto vi´avel do problema sem recorrer `a enumera¸c˜ao de todas as suas
alternativas vi´aveis.
Algoritmo Branch–and–bound
O algoritmo branch–and–bound para problemas de maximiza¸c˜ao pode ser des-
crito em trˆes passos principais:
1: Primeira Aproxima¸c˜ao. Ignore as restri¸c˜oes de integralidade e resolva o pro-
blema de programa¸c˜ao linear resultante. Se a solu¸c˜ao ´otima encontrada for
integral, isto ´e, se os valores ´otimos das vari´aveis de decis˜ao forem todos
n´umeros inteiros, ent˜ao o problema de programa¸c˜ao inteira tamb´em sido re-
solvido e o algoritmo termina. Caso contr´ario, o valor ´otimo encontrado para
z se transforma num limitante superior, LS, para o valor ´otimo do pro-
blema com as restri¸c˜oes de integralidade. No exemplo acima, a solu¸c˜ao ´otima
do problema sem as restri¸c˜oes de integralidade ´e x1 = 2.25 e x2 = 1.5, com
z = 12.75. Faz-se LS = 12.75;
2: Ramifica¸c˜ao (branching) Se na primeira aproxima¸c˜ao, uma das vari´aveis,
xj por exemplo, possuir valor n˜ao-inteiro, ent˜ao i1 ≤ xj ≤ i2, com i1 e
8. 112 Cap´ıtulo 4. Programa¸c˜ao Inteira/Mista
i2 representando n´umeros inteiros n˜ao-negativos consecutivos. Dois novos
problemas s˜ao criados acrescentando-se ao problema original as restri¸c˜oes xj ≤
i1 e xj ≥ i2, respectivamente. Este procedimento, chamado de ramifica¸c˜ao,
elimina a solu¸c˜ao corrente com valor de xj n˜ao-inteiro, mas preserva todas as
poss´ıveis solu¸c˜oes vi´aveis inteiras do problema original. Se ap´os a primeira
aproxima¸c˜ao mais de uma vari´avel for n˜ao-inteira, recomenda-se adotar para
ramifica¸c˜ao uma das que apresentarem parte fracion´aria mais pr´oxima de 0.5.
No exemplo, fazendo j = 2, obt´em-se 1 ≤ x2 ≤ 2, e os dois novos problemas
seriam
(P2)
maximizar z = 3x1 + 4x2
sujeito a 2x1 + x2 ≤ 6,
2x1 + 3x2 ≤ 9,
x2 ≤ 1,
e
(P3)
maximizar z = 3x1 + 4x2
sujeito a 2x1 + x2 ≤ 6,
2x1 + 3x2 ≤ 9,
x2 ≥ 2,
com x1 e x2 vari´aveis inteiras n˜ao-negativas. Primeiras aproxima¸c˜oes dos
novos problemas (P2) e (P3) s˜ao obtidas. No exemplo, a solu¸c˜ao de (P2)
´e x1 = 2.5, x2 = 1 e z∗
= 11.5; a solu¸c˜ao de (P3) ´e x1 = 1.5, x2 = 2 e
z = 12.5. Se as solu¸c˜oes de (P2) e (P3) forem ambas n˜ao-integrais, como
no exemplo, selecione para nova ramifica¸c˜ao o problema cuja valor ´otimo da
primeira aproxima¸c˜ao for mais pr´oximo do limitante superior, LS = 12.75. No
exemplo, (P3) ´e selecionado para a ramifica¸c˜ao da vari´avel x1: 1 ≤ x1 ≤ 2.
Os dois novos problema seriam
(P4)
maximizar z = 3x1 + 4x2
sujeito a 2x1 + x2 ≤ 6,
2x1 + 3x2 ≤ 9,
x2 ≥ 2,
x1 ≤ 1,
e
(P5)
maximizar z = 3x1 + 4x2
sujeito a 2x1 + x2 ≤ 6,
2x1 + 3x2 ≤ 9,
x2 ≥ 2,
x1 ≥ 2,
sendo x1 e x2 vari´aveis inteiras n˜ao-negativas. As primeiras aproxima¸c˜oes de
(P4) e (P5) s˜ao as seguintes: para (P4), x1 = 1, x2 = 2.33 e z = 12.33;
o problema (P5) ´e invi´avel. No procedimento de ramifica¸c˜ao pode ocorrer
de algum problema tornar-se invi´avel com a incorpora¸c˜ao da nova restri¸c˜ao.
Ramifica¸c˜oes adicionais a partir deste tipo de problema n˜ao s˜ao poss´ıveis;
3: Limita¸c˜ao (bounding) O procedimento de ramifica¸c˜ao prossegue at´e que uma
primeira aproxima¸c˜ao apresente solu¸c˜ao inteira. O valor da fun¸c˜ao objetivo
9. 4.4. M´etodo Branch–and–Bound 113
correspondente `a solu¸c˜ao inteira torna-se um limitante inferior, LI, para o
valor ´otimo do problema original, (P1). Todos os problemas cujas primeiras
aproxima¸c˜oes, integrais ou n˜ao, apresentarem valores inferiores ao limitante
inferior s˜ao ent˜ao descartados. O limitante inferior ´e atualizado sempre que
uma primeira aproxima¸c˜ao exibir solu¸c˜ao inteira com valor de z maior. O
algoritmo branch–and–bound termina quando n˜ao mais existirem problemas a
serem ramificados. No exemplo, a ramifica¸c˜ao prossegue a partir do problema
(P4):
(P6)
maximizar z = 3x1 + 4x2
sujeito a 2x1 + x2 ≤ 6,
2x1 + 3x2 ≤ 9,
x2 ≥ 2,
x1 ≤ 1,
x2 ≤ 2,
e
(P7)
maximizar z = 3x1 + 4x2
sujeito a 2x1 + x2 ≤ 6,
2x1 + 3x2 ≤ 9,
x2 ≥ 2,
x1 ≥ 2,
x2 ≥ 3,
com x1 e x2 vari´aveis inteiras n˜ao-negativas. A primeira aproxima¸c˜ao de (P6)
´e x1 = 1, x2 = 2 e z = 11. Como a solu¸c˜ao ´e inteira, LI = 11. Ainda n˜ao
´e poss´ıvel descartar problemas. A solu¸c˜ao de (P7), tamb´em inteira, ´e x1 = 0,
x2 = 3 e z = 12; atualiza-se o limitante inferior para LI = 12, e agora ´e
poss´ıvel descartar os problemas (P2) (z = 11.5) e (P4) (z = 11). Como n˜ao
existem mais problemas a serem ramificados, a solu¸c˜ao ´otima do problema
(P1) ´e x1 = 0, x2 = 3 e z = 12.
O algoritmo branch–and–bound gera uma ´arvore. Cada n´o da ´arvore repre-
senta um problema de onde partem dois ramos. Quando um limitante inferior ´e
obtido e ramos s˜ao eliminados, ocorre a poda da ´arvore, na denomina¸c˜ao de alguns
autores. Para o exemplo considerado, a ´arvore se apresentaria como na Figura 4.12.
10. 114 Cap´ıtulo 4. Programa¸c˜ao Inteira/Mista
PSfrag replacements
P1
P2
P3
P4
P5
P6
P7
z∗
= 12.75
z∗
= 11.5
z∗
= 12.5
z∗
= 12.33
z∗
= 11
z∗
= 12
(2.25, 1.5)
(2.5, 1)
(1.5, 2)
(1, 2.33)
(1, 2)
(0, 3)
Infact´ıvel
Figura 4.12: ´Arvore associada ao exemplo.
Ap´os a primeira aproxima¸c˜ao do problema (P1), se poderia pensar em arre-
dondar os valores n˜ao-inteiros da solu¸c˜ao encontrada para os valores inteiros mais
pr´oximos. A solu¸c˜ao inteira sub´otima assim obtida geralmente n˜ao produz bons
resultados, especialmente se os valores das vari´aveis forem pequenos. No exemplo
acima, a solu¸c˜ao inteira vi´avel mais pr´oxima ap´os a primeira aproxima¸c˜ao de (P1)
´e x1 = 2 e x2 = 1, com z = 10. A diferen¸ca percentual do valor ´otimo do problema
(z = 12) em rela¸c˜ao ao produzido pelo arredondamento da sua primeira apro-
xima¸c˜ao ´e de 17%. Em outros casos ´e poss´ıvel que o arredondamento n˜ao introduza
grande varia¸c˜ao no valor ´otimo da fun¸c˜ao-objetivo.
Exemplo 4.4 Um fabricante est´a come¸cando a ´ultima semana de produ¸c˜ao de
quatro diferentes tipos de consoles para televisores, os quais devem ser montados
e ent˜ao decorados. Os modelos requerem 4, 5, 3 e 5 horas para serem montados,
e 2, 1.5, 3 e 3 horas para serem decorados, respectivamente. Os lucros unit´arios
com os modelos s˜ao $7, $7, $6 e $9, respectivamente. O fabricante disp˜oe de 30000
horas para montagem (750 montadores trabalhando 40 horas por semana) e 20000
horas para decora¸c˜ao (500 decoradores trabalhando 40 horas por semana). Quantas
unidades de cada modelo o fabricante deve produzir durante esta ´ultima semana
de forma a maximizar seu lucro? Assuma que todas as unidades produzidas ser˜ao
vendidas.
A formula¸c˜ao matem´atica do problema ´e
(P1)
maximizar z = 7x1 + 7x2 + 6x3 + 9x4
sujeito a 4x1 + 5x2 + 3x3 + 5x4 ≤ 30000,
2x1 + 1.5x2 + 3x3 + 3x4 ≤ 20000,
com x1, x2, x3 e x4 vari´aveis inteiras n˜ao-negativas que representam os n´umeros
de consoles dos tipos 1, 2, 3 e 4. A primeira aproxima¸c˜ao de (P1) ´e x1 = x2 = 0,
11. 4.4. M´etodo Branch–and–Bound 115
x3 = 1666.67 e x4 = 5000, com z = 55000. O limitante superior do problema ´e
LS = 55000. Como x3 n˜ao possui valor inteiro, introduz-se dois novos problemas:
(P2)
maximizar z = 7x1 + 7x2 + 6x3 + 9x4
sujeito a 4x1 + 5x2 + 3x3 + 5x4 ≤ 30000,
2x1 + 1.5x2 + 3x3 + 3x4 ≤ 20000,
x3 ≤ 1666,
e
(P3)
maximizar z = 7x1 + 7x2 + 6x3 + 9x4
sujeito a 4x1 + 5x2 + 3x3 + 5x4 ≤ 30000,
2x1 + 1.5x2 + 3x3 + 3x4 ≤ 20000,
x3 ≥ 1667.
As solu¸c˜oes de (P2) e (P3) s˜ao x1 = x2 = 0, x3 = 1666, x4 = 5000.4 com z =
54999.6, e x1 = 1, x2 = 0, x3 = 1667, x4 = 4999 com z = 55000, respectivamente.
Como a solu¸c˜ao de (P3) ´e inteira, atualiza-se o limitante inferior: LI = 55000.
Elimina-se o problema (P2) (z = 54999.6) e como n˜ao h´a mais problemas a serem
ramificados, a solu¸c˜ao do problema inteiro (P1) ´e x1 = 1, x2 = 0, x3 = 1667,
x4 = 4999 com z = 55000.
Optando-se pelo estrat´egia de arredondamento, a solu¸c˜ao inteira fact´ıvel mais
pr´oxima ap´os a primeira aproxima¸c˜ao de (P1) ´e x1 = x2 = 0, x3 = 1666, x4 = 5000
com z = 54996. Neste caso, o valor ´otimo do problema inteiro, z = 55000, ´e
menos do que 0.008% superior ao produzido pelo arredondamento. 2
O algoritmo branch–and–bound para problemas de programa¸c˜ao inteira que
envolvam minimizar ao inv´es de maximizar ´e essencialmente o mesmo, com pap´eis
inversos dos limitantes: obt´em-se inicialmente um limitante inferior e, em seguida,
um limitante superior, atualizado sempre que um problema apresentar solu¸c˜ao in-
teira com valor ´otimo z menor.