matematica aplicada´ m411 - fenix.tecnico.ulisboa.pt · visto que o objectivo da cadeira de...
TRANSCRIPT
Matematica Aplicada
M411
Carlos Augusto Santos Silva
Versao 2.0Novembro 2005
Indice
1 Introducao 1
1.1 Programa da Disciplina . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.1.1 Analise de sistemas . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.1.2 Optimizacao de sistemas . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.2 Avaliacao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.2.1 Resolucao de caso-teste . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.2.2 Apresentacao de caso-teste . . . . . . . . . . . . . . . . . . . . . . . . 5
1.2.3 Avaliacao escrita . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.3 Software de Apoio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.4 Cronograma . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.5 Bibliografia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
I Analise de Sistemas 9
2 Estatıstica Descritiva 13
2.1 Definicoes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
2.2 Representacao dos Dados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.2.1 Tabela de frequencias . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.2.2 Histograma . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2.3 Medidas Estatısticas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
iii
2.3.1 Tendencia central . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
2.3.2 Dispersao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
2.4 Exercıcios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
3 Correlacao e Regressao 23
3.1 Correlacao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
3.1.1 Scatter plots . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
3.1.2 Correlacao de Pearson . . . . . . . . . . . . . . . . . . . . . . . . . . 25
3.2 Regressao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
3.2.1 Mınimos quadrados . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
3.2.2 Regressao polinomial . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
3.3 Exercıcios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
4 Probabilidades 29
4.1 Definicoes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
4.2 Axiomas da Teoria das Probabilidades . . . . . . . . . . . . . . . . . . . . . . 31
4.3 Probabilidades Condicionadas . . . . . . . . . . . . . . . . . . . . . . . . . . 32
4.4 Probabilidades de Eventos Independentes . . . . . . . . . . . . . . . . . . . . 33
4.5 Exercıcios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
5 Modelos Teoricos 35
5.1 Definicoes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
5.2 Distribuicoes Contınuas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
5.2.1 Distribuicao normal . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
5.2.2 Distribuicao χ2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
5.2.3 Distribuicao t-Student . . . . . . . . . . . . . . . . . . . . . . . . . . 40
5.2.4 Distribuicao uniforme . . . . . . . . . . . . . . . . . . . . . . . . . . 40
5.2.5 Distribuicao exponencial . . . . . . . . . . . . . . . . . . . . . . . . . 41
5.3 Distribuicoes Discretas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
5.3.1 Distribuicao de Poisson . . . . . . . . . . . . . . . . . . . . . . . . . . 42
5.3.2 Distribuicao binomial . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
5.4 Exercıcios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
6 Estimacao de parametros 47
6.1 Estimacao por Momentos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
6.2 Estimacao por Maxima Verosimilhanca . . . . . . . . . . . . . . . . . . . . . 48
6.2.1 Maximizacao da funcao de maxima verosimilhanca . . . . . . . . . . . 49
6.2.2 Estimadores de maxima verosimilhanca para as principais distribuicoes 50
6.3 Intervalos de Confianca . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
6.3.1 Calculo do intervalo de confianca para σ conhecido . . . . . . . . . . . 52
6.3.2 Calculo do intervalo de confianca para σ estimado . . . . . . . . . . . 52
6.3.3 Calculo do intervalo para distribuicao binomial . . . . . . . . . . . . . 52
6.4 Exercıcios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
7 Teste de Hipoteses 55
7.1 Definicoes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
7.1.1 Hipotese nula . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
7.1.2 Tipos de erros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
7.1.3 Nıvel de Confianca . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
7.1.4 Testes a uma ou duas direccoes . . . . . . . . . . . . . . . . . . . . . 57
7.2 Testes de Parametros de Distribuicoes Normais . . . . . . . . . . . . . . . . . 58
7.2.1 Testes a media de uma populacao normal com variancia conhecida . . . 58
7.2.2 Testes a media de uma populacao normal com variancia estimada . . . 59
7.2.3 Testes a media de duas populacoes normais . . . . . . . . . . . . . . . 59
7.2.4 Teste a populacoes binomiais . . . . . . . . . . . . . . . . . . . . . . . 60
7.3 Exercıcios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
8 Aplicacoes 61
8.1 Caracterizacao de Tempo de Vida . . . . . . . . . . . . . . . . . . . . . . . . 61
8.2 Determinacao de Causas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
8.3 Determinacao das Caracterısticas . . . . . . . . . . . . . . . . . . . . . . . . . 62
8.4 Verificacao de Caracterısticas . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
II Optimizacao de Sistemas 65
9 Programacao Linear 69
9.1 Definicoes basicas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
9.2 Modelacao do problema de programacao linear . . . . . . . . . . . . . . . . . 72
9.3 Pressupostos da programacao linear . . . . . . . . . . . . . . . . . . . . . . . 73
9.4 Metodo Grafico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
9.5 Algoritmo Simplex . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
9.5.1 Conceitos basicos sobre Pontos Vertice . . . . . . . . . . . . . . . . . 78
9.5.2 Inicializacao do algoritmo . . . . . . . . . . . . . . . . . . . . . . . . 79
9.5.3 Resolucao algebrica do metodo simplex . . . . . . . . . . . . . . . . . 81
9.5.4 Metodo Tabular . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
9.6 Exercıcios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
10 Pos-optimizacao e Analise de Sensibilidade 89
10.1 Analise Pos-Optimizacao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
10.2 Analise de sensibilidade . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
10.3 Exercıcios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
11 Problemas de Transportes e Escalonamento 95
11.1 O problema de transporte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
11.1.1 Modelacao do Problema . . . . . . . . . . . . . . . . . . . . . . . . . 97
11.1.2 Metodo simplex para problemas de transporte . . . . . . . . . . . . . . 99
11.1.3 Escolha da solucao inicial pelo canto Noroeste . . . . . . . . . . . . . 99
11.1.4 Metodo do caminho das pedras . . . . . . . . . . . . . . . . . . . . . . 100
11.2 Problema de Escalonamento . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
11.2.1 Algoritmo Hungaro . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
11.3 Exercıcios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109
12 Problemas de Optimizacao em Grafos 111
12.1 Definicoes Basicas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
12.2 Problema do Caminho Mais Curto . . . . . . . . . . . . . . . . . . . . . . . . 113
12.3 Problema Arvore gerada mınima . . . . . . . . . . . . . . . . . . . . . . . . . 115
12.4 Problema de Minimizacao do Fluxo . . . . . . . . . . . . . . . . . . . . . . . 116
12.4.1 Problema de Transporte . . . . . . . . . . . . . . . . . . . . . . . . . 117
12.4.2 Problema de escalonamento . . . . . . . . . . . . . . . . . . . . . . . 117
12.4.3 Problema do caminho mais curto . . . . . . . . . . . . . . . . . . . . . 118
12.5 Algoritmos de optimizacao em grafos . . . . . . . . . . . . . . . . . . . . . . 118
12.6 Exercıcios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
13 Gestao e Controlo de Projectos 121
13.1 Definicoes basicas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
13.2 PERT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123
13.2.1 Determinacao do tempo das tarefas . . . . . . . . . . . . . . . . . . . 124
13.2.2 Determinacao do caminho crıtico . . . . . . . . . . . . . . . . . . . . 124
13.3 CPM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126
13.4 Exercıcios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
14 Meta-Heurısticas 129
14.1 Algoritmos Geneticos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130
14.1.1 Implementacao dos algoritmos geneticos . . . . . . . . . . . . . . . . 131
14.1.2 Exemplo de aplicacao dos GA . . . . . . . . . . . . . . . . . . . . . . 132
14.2 Colonias de Formigas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133
14.2.1 Implementacao das colonias de formigas . . . . . . . . . . . . . . . . 134
14.2.2 Exemplo de aplicacao dos ACO . . . . . . . . . . . . . . . . . . . . . 135
15 Aplicacoes 137
15.1 Planeamento da alocacao de recursos . . . . . . . . . . . . . . . . . . . . . . . 137
15.2 Distribuicao optima de producao . . . . . . . . . . . . . . . . . . . . . . . . . 137
15.3 Afectacao optima de recursos . . . . . . . . . . . . . . . . . . . . . . . . . . . 138
15.4 Gestao de projectos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138
A Resultados dos exercıcios 141
Bibliografia 145
Indice Remissivo 145
Capıtulo 1
Introducao
A “Engenharia”pode ser definida como a aplicacao de conhecimentos cientıficos a concepcao,
implementacao, manutencao, analise e optimizacao de sistemas praticos que satisfacam as ne-
cessidades do homem [5]. Nos primeiros anos do ensino de engenharia, e dada uma especial
relevancia a concepcao, implementacao e manutencao de sistemas. A fase final da formacao de-
vera incidir sobre as actividades de analise e optimizacao. Apos a concepcao e implementacao
de um certo sistema, e necessario observar o seu comportamento, para detectar quais as carac-
terısticas que nao estao a ser devidamente exploradas e que podem ser optimizadas de forma a
melhorar o desempenho global do sistema.
Sendo a matematica a ciencia fundamental, no sentido em que todas as ciencias recorrem
a matematica para descrever os seus conceitos, qualquer actividade de engenharia so pode ser
desenvolvida a partir da utilizacao de ferramentas matematicas. E este o conceito chave que
define a relacao entre a matematica e a engenharia - a matematica fornece uma serie de utensılios
que o engenheiro pode aplicar no desenvolvimento dos sistemas sobre os quais esta a trabalhar.
O objectivo da disciplina de Matematica Aplicada e entao o de ensinar a utilizacao de fer-
ramentas matematicas que podem ser aplicadas nas actividades de analise e optimizacao de
sistemas de engenharia.
1
2 CAPITULO 1. INTRODUCAO
1.1 Programa da Disciplina
Visto que o objectivo da cadeira de matematica aplicada e a de dotar os alunos com capaci-
dade para analisar e optimizar sistemas de engenharia, o programa leccionado esta dividido em
duas partes distintas: Analise de Sistemas e Optimizacao de Sistemas. Cada uma dessas partes
esta dividida por capıtulos, onde sao introduzidos os conceitos fundamentais de cada area, as
diversas ferramentas matematicas para a execucao dessas tarefas, bem como diversos casos de
estudo. As duas partes da materia podem ser estudadas e avaliadas de forma independente,
embora estejam relacionadas entre si.
1.1.1 Analise de sistemas
A analise de um sistema consiste em compreender o seu funcionamento para que seja possıvel
caracterizar os fenomenos que condicionam o seu funcionamento, determinar as caracterısticas
que podem ser alteradas de forma a melhorar o desempenho, ou ainda prever o seu comporta-
mento sob determinadas condicoes.
Na area de engenharia mecanica, e usual encontrarmos diversos tipos de questoes que so
podem ser respondidas apos a analise do problema. De seguida, sao sugeridos alguns exem-
plos cujas solucoes podem ser obtidas com a utilizacao das ferramentas descritas nos proximos
capıtulos:
Exemplo 1 O tempo de vida de um dado componente de uma instalacao e, deacordo com o catalogo do fabricante, de 100 horas em media, com um desviopadrao de 20 horas. Como se pode verificar se a informacao providenciada pelofabricante e fiavel?
Exemplo 2 Um fabricante em vias de comercializar um novo componente quercaracterizar a sua gama de funcionamento. Como se pode determinar essa gamade forma a garantir que o componente funcionara dentro da mesma em 95% doscasos?
1.1. PROGRAMA DA DISCIPLINA 3
Exemplo 3 Um fornecedor propoe-lhe a compra de um tipo de componente, maisbarato do que o do seu fornecedor habitual, garantindo a mesma fiabilidade. Comopode verificar se a fiabilidade dos componentes de cada fornecedor e de facto se-melhante?
Exemplo 4 De forma a determinar as causas de avaria de um determinado com-ponente, foram medidas 4 diferentes variaveis que se considerou poderem ser res-ponsaveis pelas recorrentes desse componente. Como se pode determinar a partirdas medicoes quais dessas 4 variaveis sao realmente responsaveis pelas avarias equal a influencia relativa de cada uma delas?
A Estatıstica e a area da matematica que descreve as ferramentas necessarias para resolver
o tipo de problemas descritos. Por este motivo, a primeira parte da materia leccionada nesta
disciplina vai-se concentrar nos princıpios da estatıstica, como a amostragem, a regressao, a
estimacao de parametros e teste de hipoteses.
1.1.2 Optimizacao de sistemas
Apos a analise do funcionamento de um determinado sistema, e possıvel determinar quais
as suas propriedades que podem modificadas de forma a melhorar o seu desempenho. A
determinacao dos parametros de funcionamento de um determinado sistema que levam a me-
lhoria do seu desempenho chama-se optimizacao do processo.
A optimizacao de um processo pressupoe em primeiro lugar que existem limites ou cons-
trangimentos em certas variaveis do processo. Por outro lado, e necessario definir com clareza
qual o objectivo que se pretende melhorar. Em seguida sao apresentados alguns exemplos de
problemas que podem ser resolvidos atraves de metodos de optimizacao:
Exemplo 5 Uma empresa fabrica dois tipos de componentes, que representam cus-tos, lucros e tempos de producao diferentes. Se a empresa desejar maximizar o lu-cro, qual deve ser a quantidade diaria produzida de cada um dos tipos de produto?
4 CAPITULO 1. INTRODUCAO
Exemplo 6 Uma empresa fornece diversos tipos de componentes a diversos clien-tes e a lista de trabalhos a produzir depende directamente das encomendas de cadacliente. Considerando que a fabrica tem diferentes tipos de maquinas e que cadatipo de produto tem a sua propria sequencia de fabrico, qual a lista de trabalhos ea respectiva ordem a realizar em cada maquina, de forma a garantir que todos osclientes recebem os seus produtos na data desejada?
Exemplo 7 Uma empresa de distribuicao a operar numa determinada plataformalogıstica transporta cargas de diversos tipos para diversos clientes. A empresadispoe de um determinado numero de camioes e quando necessario sub-contrataoutras empresas de distribuicao. Para cada dia, como devem ser determinadas asrotas e a carga de cada camiao, o numero de camioes sub-contratados e as respec-tivas rotas, de forma a minimizar os custos de distribuicao, medidos em quilometrospercorridos, horas extraordinarias e sub-contratacao?
A Investigacao Operacional e a area da matematica que descreve as ferramentas necessarias
para optimizar o funcionamento dos sistemas. A segunda parte da materia leccionada nesta
disciplina vai abranger os conceitos fundamentais da investigacao operacional, como sejam os
metodos de optimizacao linear ou heurısticas.
1.2 Avaliacao
A avaliacao da disciplina e composta por seis componentes:
1. Resolucao de caso-teste na area de analise de sistemas (10%)
2. Apresentacao de caso-teste na area de analise de sistemas (5%)
3. Avaliacao escrita na area de analise de sistemas (35%)
4. Resolucao de caso-teste na area de optimizacao de sistemas (10%)
5. Apresentacao de caso-teste na area de optimizacao de sistemas (5%)
6. Avaliacao escrita na area de optimizacao de sistemas (35%)
1.2. AVALIACAO 5
As regras de avaliacao sao as seguintes:
1. E obrigatorio realizar todas as componentes de avaliacao;
2. E necessaria ter aproveitamento (classificacao ≥ 9, 5 valores) em todas as componentes
de avaliacao;
3. A avaliacao pode ser feita por modulos, em qualquer das datas de avaliacao, i.e. a aprovacao
de apenas um dos modulos durante a avaliacao intercalar (testes) pode ser completada pela
aprovacao do modulo em falta durante as avaliacoes finais (exames). No entanto, nao ha
transicao de aproveitamento de modulos para o ano lectivo seguinte.
Nas seccoes seguintes, e descrito mais detalhadamente cada uma das componentes de avaliacao.
1.2.1 Resolucao de caso-teste
A resolucao de um caso-teste consiste em resolver presencialmente um problema proposto
pelo professor. E fornecido um ficheiro de texto do tipo MS Word, onde e enunciado um pro-
blema com os respectivos dados. O aluno devera resolver o problema no prazo de duas horas,
utilizando o software que achar adequado (e.g. MS Excel ou Matlab). Durante essas duas horas
e ainda necessario redigir um pequeno relatorio a descrever a resolucao do problema e a solucao
encontrada, com os respectivos graficos fornecidos pelo software. O aluno pode utilizar o seu
proprio computador para realizar o problema.
A classificacao baseia-se no resultado final obtido, bem como pela metodologia seguida
para a resolucao e pela descricao escrita e grafica do relatorio.
A avaliacao sera feita no decorrer das 8a e 15a semana, durante o horario das aulas.
1.2.2 Apresentacao de caso-teste
Depois de entregue a resolucao do caso teste, o aluno tera de realizar uma apresentacao de
10 minutos utilizando o MS Powerpoint (tipicamente 5 a 8 transparencias), com a descricao
6 CAPITULO 1. INTRODUCAO
do problema, a resolucao seguida, a solucao encontrada e consideracoes finais que considere
adequadas. Podem ainda ser efectuadas correccoes a resolucao e aos resultados.
A avaliacao e feita com base na clareza da exposicao e das transparencias, e na seguranca
revelada nas respostas as questoes colocadas. E ainda valorizado a analise crıtica do trabalho
dos colegas, atraves da colocacao de questoes e/ou sugestoes.
1.2.3 Avaliacao escrita
A avaliacao escrita sera sempre dividida nas partes de analise e optimizacao de sistemas. Os
exames podem ser feitos recorrendo a consulta de elementos bibliograficos e a maquina calcu-
ladora cientıfica.
A avaliacao sera feita no decorrer das 8a e 15a semana, durante o horario das aulas.
1.3 Software de Apoio
Para a realizacao das componentes de avaliacao de resolucao e apresentacao do caso teste, e
necessario saber utilizar as ferramentas MS Word, MS Excel e MS Powerpoint, ou ferramentas
equivalentes, e.g. Matlab.
O objectivo e nao so avaliar a capacidade de resolucao dos problemas, atraves da utilizacao
de software como o MS Excel, como ainda a capacidade de apresentar e defender a solucao en-
contrada, atraves de relatorios e apresentacoes atraves do MS Word e MS Powerpoint. A escolha
destas ferramentas e justificada pelo facto de serem as mais utilizadas a nıvel empresarial. No
caso da resolucao dos problemas, o MS Excel pode ser substituıdo pelo Matlab, que pode ser
utilizado noutras disciplinas.
No inicio do semestre serao feitas pequenas seccoes de introducao as diversas ferramentas,
em datas a acordar com os alunos.
1.4. CRONOGRAMA 7
Tabela 1.1: Cronograma da disciplina de Matematica Aplicada
Semana Data Tarefa
1 26.9-30.9 Apresentacao. Introducao ao Software.2 3.10-7.10 Estatıstica descritiva.3 10.10-14.10 Correlacao e Regressao.4 17.10-21.10 Probabilidades.5 24.10-28.10 Modelos Teoricos.6 31.10-4.11 Estimacao de parametros.7 7.11-11.11 Testes de Hipoteses.8 14.11-18.11 Avaliacao de Analise de Sistemas.9 21.11-25.11 Programacao Linear.
10 28.11-2.12 Pos-optimizacao e analise de sensibilidade.11 5.12-9.12 Problemas de Transportes e de Escalonamento.12 12.12-16.12 Problemas de Optimizacao em Grafos.13 2.01-6.01 Tecnicas de Optimizacao Classicas.14 9.01-13.01 Meta-heurısticas.15 16.01-20.01 Avaliacao de Optimizacao de Sistemas.
1.4 Cronograma
A disciplina sera leccionada de acordo com o cronograma apresentado na Tabela 1.1. Durante
o semestre poderao ser feitos alguns ajustamentos, a acordar com os alunos.
1.5 Bibliografia
A bibliografia base desta disciplina consiste no presente texto. Cada capıtulo corresponde a uma
semana de aulas e a sua numeracao e equivalente a numeracao da semana em que e leccionada,
de forma a facilitar o acompanhamento da materia.
No final de cada uma das partes da materia, sera disponibilizada uma uma nova versao do
corrente texto, com a melhoria de eventuais deficiencias que forem sendo detectadas ao longo
das aulas, como por exemplo, explicacoes mais aprofundadas de alguns dos conceitos, inclusao
de mais exemplos ou outros aspectos considerados essenciais.
O estudo destas folhas e condicao suficiente para que o aluno tenha aproveitamento a
8 CAPITULO 1. INTRODUCAO
disciplina, embora seja conveniente consultar os outros elementos bibliograficos sempre que
possıvel.
Parte I
Analise de Sistemas
9
11
A Probabilidade surgiu como ramo da matematica no seculo XVII a partir da correspondencia
trocada entre dois matematicos franceses, Blaise Pascal e Pierre de Fermat, acerca de apostas
em jogos de azar. No caso, um nobre Frances queria saber se poderia apostar em que sairia
pelo menos uma vez um double de seis em 24 lancamentos de dois dados. A estatıstica surgiria
mais tarde, ja nos finais do seculo XIX, associados a estudos medicos acerca da probabilidade
de certos factores contribuırem para determinadas doencas.
12
Capıtulo 2
Estatıstica Descritiva
A Estatıstica e o ramo da matematica que extrai conhecimento a partir da recolha e observacao
de dados. Neste capıtulo, sao introduzidos os conceitos fundamentais de uma forma simplifi-
cada. Para definicoes mais detalhadas, consulte a literatura de referencia [4].
A estatıstica pode seguir duas abordagens diferentes. A estatıstica descritiva consiste em
organizar todos os dados de uma determinada experiencia de forma concisa e clara. Esta
abordagem pode ser feita de uma forma numerica, com o calculo de diversos ındices, ou de
uma forma grafica, com a representacao de dados segundo certas caracterısticas. Em geral, os
metodos graficos permitem retirar mais facilmente conclusoes acerca dos dados, mas os resul-
tados numericos sao em geral mais precisos e objectivos. Muitas vezes nao e possıvel realizar
todas as observacoes acerca de um determinado fenomeno e por isso realizam-se apenas al-
gumas experiencias que se considerem representativas de todo o fenomeno e extrapolam-se os
resultados para todas as situacoes. A esta analise estatıstica chama-se inferencial, que sera
introduzida nos Capıtulos 6 e 7.
Um exemplo claro do que sao os dois tipos de analise estatıstica refere-se aos resultados
eleitorais.
13
14 CAPITULO 2. ESTATISTICA DESCRITIVA
Exemplo 8 Estatıstica Descritiva vs. Estatıstica InferencialAntes das eleicoes, sao feitas sondagens de forma a prever como se vai compor-tar o eleitorado - estamos no domınio da estatıstica inferencial. Apos as eleicoes,e possıvel fazer uma analise descritiva do comportamento do eleitorado, analiseessa que sera utilizada para futuras eleicoes - estamos no domınio da estatısticadescritiva.
2.1 Definicoes
Esta seccao apresenta as definicoes base da estatıstica. Note que muitos destes conceitos fazem
parte do senso comum e sao usualmente utilizados na linguagem corrente. Contudo, a compre-
ensao desses conceitos e muitas das vezes aproximada e diferente do conceito exacto. Torna-se
por isso importante conhecer o significado exacto desses conceitos.
• Variavel (X) – caracterıstica ou atributo mensuravel que varia de objecto para objecto,
como por exemplo a idade de um grupo de pessoas (variavel discreta) ou a temperatura
de uma sala (variavel continua).
• Classe – intervalos que definem subconjuntos de valores que as variaveis podem ter. Por
exemplo, a variavel idade pode ser definida nas classes crianca, jovem, adulto e senior.
• Populacao – conjunto de objectos que sao sujeitos a analise estatıstica, como por exemplo
“grupo de homens dos 15 aos 25 anos”;
• Amostra – medicao da variavel X;
• Medidas estatısticas e parametros – calculos matematicos efectuados com os elementos
da populacao de forma a que esta possa ser caracterizada. Costumam ser representadas
por letras do alfabeto. No caso dessas medidas serem obtidas por inferencia, sao de-
signados por parametros e representados por letras do alfabeto grego. Apesar de nao ser
formalmente correcto, e comum usar apenas as letras gregas, visto que muitas das analises
de sistemas sao feitas com base em estatıstica de inferencia.
2.2. REPRESENTACAO DOS DADOS 15
• Distribuicao – e a representacao relativa do numero de vezes que o valor de uma deter-
minada amostra pode ocorrer, para um certo numero de amostras. A funcao que descreve
a probabilidade de esse valor ocorrer e a chamada funcao de probabilidade.
• Dimensao dos dados – durante a analise estatıstica de um sistema, podem ocorrer situacoes
onde observar apenas uma variavel nao e suficiente. Por exemplo, para fazer uma analise
estatıstica correcta sobre ataques cardıacos, sera preciso observar nao so a variavel “idade”,
como o “peso”. Por isso, a analise estatıstica pode ser feita sobre dados univariaveis, bi-
variaveis ou multivariaveis.
2.2 Representacao dos Dados
O objectivo da analise descritiva e retirar conclusoes acerca de uma grande quantidade de dados
de uma forma simples e expedita. Para isso, vamos basear a explicacao dos diversos conceitos
utilizando um caso teste, que passamos a descrever:
Caso 1 Caracterısticas dos novos modelos de carros vendidos nos EUA em 2004Este exemplo descreve as caracterısticas de 428 novos modelos de carros vendidosnos EUA em 2004, e.g. preco de venda, cilindrada, potencia e consumo (exemploretirado de [2]).
Na Figura 2.1, e feita a representacao dos primeiros 20 dados dessa tabela.
Visto que uma variavel pode assumir um largo espectro de valores, a primeira tarefa consiste
em dividir os dados por classes de valores que revelem aspectos interessantes acerca da variavel.
A divisao dos resultados por classes pode ser representada de duas formas: representacao ta-
bular, denominada por tabela de frequencias; ou representacao grafica, denominada por histo-
grama.
2.2.1 Tabela de frequencias
A tabela de frequencias e a representacao tabular mais comum de dados estatısticos. A tabela e
construıda dividindo os dados em classes e contando o numero de ocorrencias de cada classe em
16 CAPITULO 2. ESTATISTICA DESCRITIVA
Figura 2.1: Dados referentes ao exemplo 1
termos absolutos e percentuais. A tabela pode ainda apresentar as frequencias acumuladas, isto
e, o numero de ocorrencias dentro do intervalo e abaixo do intervalo, que podem ser utilizados
para determinar as distribuicoes acumuladas.
A partir dos dados do exemplo 1, considere que quer analisar a variavel cilindrada. A tabela
de frequencias correspondente e representada na tabela 2.1.
2.2.2 Histograma
O histograma e a representacao grafica da tabela de frequencias. As classes sao representadas
no eixo das abcissas e a frequencia e representada atraves barras no eixo das ordenadas. A
forma do histograma depende muitas vezes da divisao de classes adoptada.
Na Figura 2.2 sao representados dois histogramas referentes a variavel cilindrada. Na
Figura 2.2a e representada a tabela de frequencias com classes de cilindrada de 0.5 litro, tal
qual indicado na Tabela 2.1. Na Figura 2.2b e representado o histograma, com as classes de
cilindrada divididas em intervalos de 1 litro.
A vantagem do histograma e de que nos da uma primeira representacao da distribuicao da
variavel. A primeira vista, poderemos dizer que a distribuicao da variavel cilindrada nao e
simetrica e centra-se em torno dos 3litro.
2.2. REPRESENTACAO DOS DADOS 17
Tabela 2.1: Tabela de frequencias da variavel cilindrada (litros) referente ao exemplo 1. Osvalores do limite inferior sao inclusive (≥) e os do limite superior sao exclusive (<).
Intervalos FrequenciasInferior Superior Absoluto Percentagem %
0 500 0 0500 1000 0 0
1000 1500 3 0.711500 2000 46 10.752000 2500 81 18.922500 3000 48 11.213000 3500 83 19.393500 4000 63 14.724000 4500 41 9.584500 5000 32 7.485000 5500 15 3.505500 6000 8 1.876000 6500 6 1.416500 7000 1 0.237000 7500 0 07500 8000 0 08000 8500 1 0.238500 9000 0 09000 9500 0 09500 10000 0 0
(a) Classes de 0.5 litro (b) Classes de 1 litro
Figura 2.2: Histogramas da variavel cilindrada referente ao exemplo 1.
18 CAPITULO 2. ESTATISTICA DESCRITIVA
2.3 Medidas Estatısticas
As medidas estatısticas quantificam os dados de uma maneira mais precisa. Existem dois tipos
de indicador: os de tendencia central, que representam valor que ocorre com mais frequencia; e
os indicadores de dispersao, que indicam a forma como os dados estao distribuıdos na populacao.
2.3.1 Tendencia central
• Media (X , µ(X)) – medida estatıstica que indica o valor expectavel da variavel X . A
media para n amostras e definida como
X =X1 + . . . + Xn
n(2.1)
E a medida mais eficiente para distribuicoes do tipo normal.
• Mediana – para um dado conjunto de n amostras da variavel X ordenadas de forma
crescente tal que X1 < . . . < Xn, a mediana e o valor da amostra intermedia: se o
numero de amostras for ımpar, ou seja n = 2k − 1, a mediana e o valor de
Xk; (2.2)
se o numero de amostras e par, ou seja n = 2k, entao a mediana e:
1
2· [Xk + Xk+1]. (2.3)
E uma medida mais indicada do que a media para distribuicoes nao simetricas. A mediana
pode ser denominado por percentil 50%. E comum ainda calcular os percentis 25% e 75%.
• Moda – e o valor da amostra que ocorre mais frequentemente.
A Figura 2.3 mostra a diferenca entre a media e a mediana.Para uma distribuicao simetrica
(representada na figura a esquerda), a media indica o valor que ocorre com mais frequencia. No
entanto, se a distribuicao ja nao for simetrica (representada na figura a direita), o indicador que
representa mais correctamente o valor que ocorre com mais frequencia, e a mediana. Em ambos
os casos, a moda seria tambem um bom indicador.
2.3. MEDIDAS ESTATISTICAS 19
Figura 2.3: Distribuicao normal standard
2.3.2 Dispersao
• Intervalo – e a medida mais simples de dispersao, pois descreve a gama de valores que
as amostras podem ter. E definido como a diferenca entre o maior valor e o menor valor
do conjunto de amostras, ou seja, se as amostras estiverem ordenadas por forma crescente
de valor, o intervalo e dado por
Xn −X1 (2.4)
• Variancia (S2, σ(X)2) – medida estatıstica que indica quanto e que as amostras diferem
da media. A variancia para n amostras e definida como a
S2 =1
n− 1·
n∑i=1
(Xi − (X))2 (2.5)
• Desvio padrao (S, σ(X)) – e a raiz quadrada da variancia. E mais utilizado que a
variancia, pois tem a mesma unidade da media.
As medidas em relacao a variavel cilindrada referentes ao exemplo 1, sao indicadas na
Tabela 2.2. Em media, a cilindrada e de 3.2 litro. No entanto, a mediana e o modo sao 3. As
medidas de tendencia central mostram-nos que o valor esperado da cilindrada de um veıculo
20 CAPITULO 2. ESTATISTICA DESCRITIVA
Tabela 2.2: Medidas estatısticas da variavel cilindrada referente aos dados do exemplo 1.
Media Mediana Modo Intervalo Variancia Desvio Padrao
3.2 3 3 [1.3,8.3] 1.2 1.1
a venda nos EUA e 3 litro, mas o facto de a media ser superior mostra-nos que existem mais
modelos com cilindra superior a 3 do que inferior a 3, o que e confirmado pelos histograma
da Fig. 2.2a. Daqui se pode concluir que o maior leque de ofertas se situa em veıculos com
cilindrada superior a 3 litro. O intervalo diz-nos que a gama de ofertas se situa entre os 1.3 litro
e os 8.3 litro, mas o desvio padrao indica-nos que a maior parte das ofertas (caso a distribuicao
fosse normal estarıamos a falar de 68, 26%) se encontram entre os 2 e os 4 litro.
E possıvel sintetizar todas estas medidas de uma forma grafica atraves do boxplot. Este tipo
de grafico relaciona todas as medidas estatısticas de uma forma grafica, ajudando na percepcao
e quantificacao dessas medidas. Na Figura 2.4 e representado o boxplot referente a variavel
cilindrada. Este grafico mostra-nos uma caixa dividida por uma risca. Essa risca que divide a
Figura 2.4: Boxplot dos dados referentes ao exemplo 1
caixa e a mediana ou percentil 50%. O limite inferior da caixa e o percentil 25% (o que significa
que apenas 25% das amostras tem um valor igual ou inferior a este valor) e o limite superior da
caixa e o percentil 75% (o que significa que 75% das amostras tem um valor igual ou inferior a
este valor). A caixa esta ainda delimitada exteriormente pelos limites inferiores e superiores do
2.4. EXERCICIOS 21
intervalo. Existem ainda alguns pontos fora dos limites do intervalo designados por outliers.
A primeira observacao que se pode fazer deste grafico, e a de que o grafico nao reflecte
totalmente os valores indicados na Tabela 2.2. A mediana e 3, os valores dos restantes percentis
estao correctos, mas o limite superior do intervalo e apenas de 6 em vez de 8.3. O grafico repre-
senta no entanto as duas amostras cujos valores se situam acima de 6 (6.8 e 8.3), designando-os
por “outliers”.
Outliers sao valores que se situam a uma distancia anormal dos restantes valores e que por
isso se consideram como nao sendo relevantes para a distribuicao. Estatisticamente, conside-
rando que o percentil 25% e designado por Q1 e o percentil 75% e designado por Q2, qualquer
valor fora do intervalo [Q1− 1.5 ∗ (Q2−Q1), Q2 + 1.5 ∗ (Q2−Q1) e considerado um outlier. O
facto de os outliers poderem ser considerados valores anormais, nao quer dizer que devam ser
eliminados pura e simplesmente dos dados. Podem ser ser apenas medicoes incorrectas, mas
em geral contem informacao que podera ser relevante para a analise estatıstica em curso. No
caso em analise (exemplo 1), significa apenas que existem dois modelos com uma cilindrada
muito maior do que o normal.
2.4 Exercıcios
Exercıcio 1 No ano 2000, a venda de automoveis ligeiros de passageiros por cilindrada e a
representada na Tabela 2.3. Represente os dados graficamente. Compare os resultados com o
Exemplo 1 e indique 3 factores que justificam porque e que os exemplos nao sao comparaveis.
Exercıcio 2 Considere um conjunto de amostras da variavel X = {5, 10, 3, 10, 7}. Calcule a
media, a mediana, o modo, a variancia e o desvio padrao.
22 CAPITULO 2. ESTATISTICA DESCRITIVA
Tabela 2.3: Tabela de frequencias da variavel cilindrada (litros) referentes aos veıculos ligeirosde passageiros vendidos em Portugal no ano 2000.
Intervalos FrequenciasInferior Superior Absoluto
0 750 34751 950 3928951 1050 28352
1051 1150 340671151 1250 355591251 1350 112191351 1400 523091401 1550 140431551 1750 218481751 2000 495472001 2500 46142501 10000 2 316
Capıtulo 3
Correlacao e Regressao
A analise de uma unica variavel por si so pode nao ser muito relevante. Considere o Caso 1
apresentado no Capıtulo 2. A analise de uma variavel como o preco de venda poder-nos-ia
dar uma indicacao indirecta do poder de compra dos americanos; a analise de uma variavel
como o consumo poder-nos-ia dar tambem uma indicacao indirecta nao so do poder de compra,
como tambem das preocupacoes ambientais. Mas sera a variavel cilindrada indicador de alguma
caracterıstica especial?
As conclusoes do estudo sobre a variavel cilindrada apenas nos indicaram que os modelos
a disposicao do consumidor norte-americano sao em media bem superiores aos modelos dis-
ponıveis em Portugal (apesar de nao ser directamente comparavel, veja o exercıcio 1). Pode-se
argumentar que indirectamente, a cilindrada e um indicador do poder de compra do consumi-
dor. Em Portugal, o preco dos veıculos esta indexado a cilindrada, devido ao facto de o imposto
automovel incidir sobre a cilindrada. No entanto, para confirmar esta analise e necessario re-
lacionar a variavel cilindrada com o preco do veıculo. E este o objectivo da analise de dados
multivariavel.
3.1 Correlacao
A correlacao indica-nos o grau de relacao entre duas variaveis. Em geral, a correlacao entre
variaveis e feita recorrendo a graficos do tipo scatter plots, embora possam ser tambem obtidas
algumas medidas importantes, como a correlacao de Pearson.
23
24 CAPITULO 3. CORRELACAO E REGRESSAO
3.1.1 Scatter plots
O grafico Scatter plot representa para cada amostra o valor de ambas as variaveis. Para as
variaveis cilindrada e preco, o grafico scatter plot e representado na Figura 3.1a. E possıvel
(a) Cilindrada-Preco (b) Potencia-Preco
Figura 3.1: Scatter plot de diferentes variaveis referentes aos dados do exemplo 1
observar que embora se possa dizer que existe uma relacao directa entre o preco de venda e
a cilindrada, essa relacao nao e muito significativa. De facto, existem muitos modelos para a
mesma cilindrada com precos bastante diferentes e os veıculos mais caros nem sao aqueles que
tem maior cilindrada.
Existem muitos paıses em que o imposto automovel incide nao sobre a cilindrada, mas sim
sobre a potencia do veıculo. O grafico da Figura 3.1b representa o scatter plot dessas duas
variaveis. E possıvel verificar que de facto, parece haver uma relacao mais visıvel entre o preco
dos veıculos e sua potencia – nao so a variabilidade de precos entre veıculos com a mesma
potencia e menor, como os veıculos mais caros sao de facto aqueles com maior potencia. E
possıvel ver ainda que esta relacao e mais directa para potencias abaixo dos 300 HP . A partir
daı a variabilidade de precos e muito maior, o que mostra que existirao outros factores que
determinam com igual importancia o preco do veıculo.
3.2. REGRESSAO 25
3.1.2 Correlacao de Pearson
A correlacao de Pearson e uma medida entre duas variaveis que reflecte o grau de relacao entre
elas e e em geral representada por r ou ρ. A relacao de Pearson varia entre −1 e 1, onde 1
indica que existe linearidade de proporcao 1 entre as duas variaveis e −1 indica que existe uma
linearidade inversa entre as duas variaveis. Uma correlacao 0 indica que nao existe uma relacao
linear entre as duas variaveis.
A formula para calcular a relacao de Pearson entre as variaveis X e Y para n amostras e
dada por
r =
∑XY −
PXP
Yn√
(∑
X2 − (P
X)2
n)(
∑Y 2 − (
PY )2
n)
(3.1)
A Tabela 3.1 indica o valor da correlacao de Pearson para as variaveis cilindrada-preco e
potencia-preco. Da analise da tabela verifica-se o que ja tinha sido observado graficamente: a
evolucao do preco depende mais da potencia do que da cilindrada. Daqui se pode concluir que
em geral, o preco de um veıculo nos Estados Unidos esta relacionado com a potencia.
Tabela 3.1: Correlacao de Pearson para diferentes variaveis referente aos dados do exemplo 1.
Cilindrada-Peco Potencia-Preco
r 0.56 0.83
3.2 Regressao
A analise da correlacao e apenas um indicador do grau de dependencia entre variaveis. Para
determinar em concreto de que forma e que essas variaveis se relacionam, e necessario fazer
uma analise de regressao.
26 CAPITULO 3. CORRELACAO E REGRESSAO
3.2.1 Mınimos quadrados
A observacao da Figura 3.1b, bem como o valor da correlacao de Pearson (r = 0.83), indicam
que existe uma dependencia linear entre a potencia (X) e o preco do automovel (Y) do tipo
y = a + bx.
Um dos metodos que pode ser utilizado para a determinacao dos coeficientes a e b consiste
em ajustar a recta de forma a minimizar os desvios entre os valores previstos pela recta e os
valores observados. Mais concretamente, o metodo dos mınimos quadrados minimiza a soma do
quadrado dos desvios. A razao pela escolha da minimizacao do quadrado dos desvios prende-se
com o facto de a minimizacao de uma funcao quadratica so ter um mınimo global.
Sendo n o numero de amostras, a recta que satisfaz esta este criterio tem um declive b dado
por:
b =
∑xiyi − nxy∑x2
i − nx2(3.2)
e a ordenada na origem e dada por
a = y − bx. (3.3)
A regressao utilizando os mınimos quadrados revela que a relacao entre a potencia do
veıculo e o preco e dada pela relacao linear
$US = 202.3HP − 13660. (3.4)
A figura 3.2 representa o scatter-plot bem como a recta obtida atraves da regressao linear.
Observe que o valor R2 representado no grafico e o quadrado do coeficiente de correlacao
de Pearson r.
3.2.2 Regressao polinomial
Existem situacoes em que a relacao entre as variaveis nao pode ser aproximada atraves de uma
relacao linear. Nesses casos, e aconselhavel tentar ajustar os dados atraves de uma regressao
polinomial do tipo
y = a0 + a1x + a2x2 + . . . + arx
r.
3.3. EXERCICIOS 27
Figura 3.2: Regressao linear
O grau r do polinomio necessario para ajustar os dados deve ser o menor possıvel e pode ser
estimado pela analise do scatter-plot.
Para determinar os coeficientes a0, a1, a2, . . . , ar, e necessario resolver o sistema de r + 1
equacoes:
n∑i=1
= a0n + a1
n∑i=1
xi + a2
n∑i=1
x2i + . . . + ar
n∑i=1
xri (3.5)
n∑i=1
xiYi = a0
n∑i=1
xi + a1
n∑i=1
x2i + a2
n∑i=1
x3i + . . . + ar
n∑i=1
xr+1i (3.6)
......
n∑i=1
xri Yi = a0
n∑i=1
xri + a1
n∑i=1
xr+1i + a2
n∑i=1
xr+2i + . . . + ar
n∑i=1
x2ri
3.3 Exercıcios
Exercıcio 3 Considere os resultados de um estudo sobre o numero de divorcios e de suicıdios
por 100.000 habitantes, em funcao da populacao da cidade, para diferentes cidades america-
28 CAPITULO 3. CORRELACAO E REGRESSAO
Tabela 3.2: Resultados de um estudo acerca da influencia da populacao de uma cidade emnumero de divorcios e suicıdios.
[h]Populacao (milhares) 679 1420 1349 296 6975 323 4200 633
Divorcios 30 34 17 26 29 18 32 32Suicıdios 11 16 9 9 8 8 11 8.4
nas, apresentado na Tabela 3.2. Analise a correlacao entre os dados e comente.
Exercıcio 4 Considere os resultados de um estudo sobre o numero de cigarros fumadas em
media por dia nos ultimos 10 anos e numero de pessoas em cada 100 que contraıram cancro do
pulmao nos 20 anos seguintes:
Tabela 3.3: Resultados de um estudo acerca de fumadores.
No cigarros por dia 5 10 20 30 40 50 60 80Fumadores com cancro 6 11 19 26 34 40 46 55
Existira uma relacao linear? Em caso afirmativo, determine a relacao.
Capıtulo 4
Probabilidades
A analise estatıstica descritiva introduzida nos capıtulos anteriores permite-nos explicar os
acontecimentos que ocorreram no passado e determinar as suas causas. No entanto, um dos
objectivos da analise dos sistemas e prever como estes se vao comportar no futuro. A Pro-
bablidade e o ramo da matematica ligada a previsao da ocorrencia de acontecimentos cujos
resultados nao e possıvel de saber de antemao com exactidao. Os conceitos associados a pro-
babilidade sao essenciais para definir as ferramentas essenciais para a estatıstica de inferencia,
que nos vai permitir extrapolar resultados futuros sobre determinadas observacoes.
Um dos exemplos mais paradigmaticos da definicao de probabilidade e a previsao do tempo.
Quando ouvimos um meteorologista dizer que ha 75% de hipoteses de chover amanha, todos
nos temos uma vaga ideia do que esta a ser dito: que o meteorologista acredita que amanha ha
muito mais hipoteses de chover do que nao chover. Esta e a chamada interpretacao classica
de probabilidade (que pode ser tambem chamada de pessoal ou subjectiva). A probabilidade
descreve as conviccoes da pessoa que enuncia a condicao e no fundo, corresponde a nocao
de probabilidade do senso comum. Ja o meteorologista, ao enunciar esta frase, descreve que
em 75% das vezes em que foram observadas as condicoes atmosfericas actuais, choveu no dia
seguinte. Esta e a interpretacao frequencista de probabilidade.
Em termos matematicos, ambas as interpretacoes estao correctas, embora os cientistas e
engenheiros prefiram utilizar a interpretacao frequencista. Em qualquer dos casos, a questao
que se coloca e a previsao de um acontecimento.
29
30 CAPITULO 4. PROBABILIDADES
Considere agora o caso que nos vai acompanhar na compreensao dos conceitos de probabi-
lidade:
Caso 2 Lancamento de moeda ao arApos o lancamento de uma moeda ao ar, a moeda pode cair com uma de duas facesvoltada para cima, onde a face com que indica o valor e chamada de “coroa”e aface com o sımbolo associado a moda e chamada de “cara”.
Um acontecimento diz-se determinıstico se e possıvel de prever com exactidao, como por
exemplo, uma moeda cai sempre que e lancada ao ar. Por outro lado, ja nao e possıvel de
determinar qual a face da moeda que ficara voltada para cima. Este e um acontecimento dito
aleatorio, ou seja, um acontecimento onde apenas e possıvel enumerar quais os diferentes re-
sultados que podem ocorrer e atribuir hipoteses de acontecimento a cada um deles. No caso da
moeda so existem dois resultados possıveis, cara ou coroa, e os dois resultados tem em princıpio
as mesmas hipoteses de ocorrerem. A interpretacao classica de probabilidade e a de que a pro-
babilidade de a moeda cair com a cara voltada para cima e de 50% ou 0.5, e a probabilidade
de a moeda cair com a coroa voltada para cima, e tambem de 50% ou 0.5. A interpretacao
frequecista de probabilidade diz-nos que se a moeda for atirada ao ar uma serie de vezes, em
metade das vezes saira cara e em metade das vezes saira coroa.
4.1 Definicoes
Considere uma experiencia cujo resultado nao e previsıvel. O espaco de resultados E e o
conjunto de resultados possıveis para esse acontecimento. Se o acontecimento for atirar a moeda
ao ar, o espaco de resultados e
E = {cara, coroa}.
Um evento ou acontecimento Ei e um subconjunto do espaco de resultados, ou seja, sair
cara e um evento E1 e sair coroa e outro evento E2. Podem ainda ser definidos os eventos
E1 ∪E2 e E1 ∩E2, respectivamente a uniao e a interseccao de eventos. No caso da experiencia
de atirar a moeda ao ar, obtem-se que E1 ∩ E2 = ∅, ou seja o resultado de atirar a moeda
4.2. AXIOMAS DA TEORIA DAS PROBABILIDADES 31
ao ar nunca pode ser uma interseccao de sair cara e coroa, visto que estes eventos nunca sao
independentes um do outro. Neste caso, diz-se que E1 e E2 sao eventos mutuamente exclusivos.
Pode ainda ser definido um evento Ec1, chamado de complemento do evento de E1, que
descreve todos os eventos que pertencem a S e que nao sao descritos por E1. No caso da moeda
ao ar, Ec1 = E2 e vice-versa.
Finalmente, o calculo da probabilidade de um determinado evento Ei considerando a interpretacao
classica, e dado pelo numero de vezes que esse evento ocorreu nEi, para um determinado
numero de experiencias n, ou seja:
P (Ei) =nEi
n(4.1)
Considerando a interpretacao frequencista de probabilidade, a medida que o numero n de ex-
periencias aumenta, a razao nEi/n tende para a probabilidade de ocorrencia de Ei, ou seja
P (Ei) = limn→∞
nEi
n(4.2)
4.2 Axiomas da Teoria das Probabilidades
A teoria das probabilidades e baseada em tres axiomas:
1. A probabilidade e definida como um numero entre 0 e 1, ou seja
0 ≤ P (Ei) ≤ 1; (4.3)
2. A probabilidade de um acontecimento determinıstico e 1, ou seja
P (E) = 1; (4.4)
3. A probabilidade da uniao de acontecimentos mutuamente exclusivos e igual a soma das
probabilidades de cada um dos acontecimentos, i.e.
P (n⋃
i=1
Ei) =n∑
i=1
P (Ei); (4.5)
32 CAPITULO 4. PROBABILIDADES
O primeiro axioma indica apenas uma normalizacao de valores. O segundo axioma define
que a probabilidade de um acontecimento que cubra todos os resultados e igual a 1 - no caso da
moeda ser atirada, a probabilidade de a moeda cair, independentemente da face que fica voltada
para cima, e sempre 1. O terceiro axioma diz-nos que a probabilidade de ocorrerem dois ou
mais eventos mutuamente exclusivos e igual a soma das probabilidades dos eventos ocorrem
individualmente.
Exemplo 9 Sair cara e coroa sao acontecimentos mutuamente exclusivos, pois aocorrencia de um dos eventos depende da ocorrencia do outro. Assim como selancarmos um dado, sair 1 ou 6 sao mutuamente exclusivos.
A partir destes tres axiomas, podem ser derivadas mais duas proposicoes:
• P cE = 1− PE , ou seja a probabilidade de um evento ocorrer e igual 1 menos a probabili-
dade de ele nao ocorrer;
• P (E1 ∪ E2) = P (E1) + P (E2) − P (E1 ∩ E2), ou seja a probabilidade de dois eventos
nao mutuamente exclusivos e dada pela soma da probabilidade de cada um deles ocorrer
menos a probabilidade da ocorrencia da interseccao dos acontecimentos.
Note-se que esta expressao nao viola o terceiro axioma, visto que no caso de os aconteci-
mentos serem mutuamente exclusivos E1 ∩ E2 = ∅.
Exemplo 10 Considere o evento E1 retirar um as e o evento E2 retirar uma copa.A probabilidade de tirar um as e 4/52 e a probabilidade de tirar uma copa e 13/52.A probabilidade de tirar um as de copas e 1/52. A probabilidade de tirar um as euma copa e de P (E1 ∪ E2) = 4/52 + 13/52− 1/52
4.3 Probabilidades Condicionadas
Em muitas das situacoes, e necessario calcular as probabilidades de um evento partir da informacao
existente acerca de outro evento. Chama-se a este tipo de eventos eventos condicionados. Con-
4.4. PROBABILIDADES DE EVENTOS INDEPENDENTES 33
sidere como exemplo o lancamento de dois dados. Existem 36 possibilidades de resultados, cada
um com uma probabilidade de 1/36. No entanto, imagine que necessita de tirar uma soma de 8.
A probabilidade de sair uma soma de 8 e de 6/36 = 1/6, isto e, existem 6 em 36 combinacoes
possıveis em que a soma dos dois dados e 8 ((2, 6), (3, 5), (4, 4), (4, 4), (5, 3), (6, 2)). Considere
agora que lanca o primeiro dado e que o resultado e 3. A probabilidade de sair uma soma de 8 e
tambem apenas 1/6, pois so existem um resultado em 6 onde sera possıvel obter 8 no final (sair
um 5).
A formula generica da probabilidade do evento condicional e dada por
P (E1|E2) =P (E1 ∩ E2)
PE2(4.6)
Observe que para este calculo de probabilidades e necessario que a probabilidade do evento E2
ser diferente de 0, isto e P (E2) > 0. Observe tambem no caso de acontecimentos mutuamente
exclusivos, a probabilidade condicional e nula.
4.4 Probabilidades de Eventos Independentes
Existem casos em que a ocorrencia de um determinado acontecimento nao e condicionado pela
ocorrencia de um outro anteriormente, isto e P (E1|E2) = P (E1). Isso significa que os aconte-
cimentos sao independentes. Formalmente, dois acontecimentos dizem-se independentes se
P (E1 ∩ E2) = P (E1)P (E2) (4.7)
Exemplo 11 Considere o evento E1 retirar um as e o evento E2 retirar uma copa.A probabilidade de tirar um as e 4/52 e a probabilidade de tirar uma copa e 13/52.Os eventos E1 e E2 sao independentes, visto que a probabilidade de tirar um as decopas e 1/52, que e igual ao produto das probabilidades de tirar um as e de tiraruma copa, ou seja P (E1 ∩ E2) = 4/52× 13/52 = 1/52
34 CAPITULO 4. PROBABILIDADES
4.5 Exercıcios
Exercıcio 5 Uma caixa contem 6 bolas brancas e 5 bolas pretas. Qual a probabilidade de, ao
tirar duas bolas, uma ser branca e outra ser preta?
Exercıcio 6 Uma caixa contem 5 transıstores queimados, 10 com defeito (funcionam durante
algum tempo) e 25 a funcionar bem. Qual e a probabilidade de um transıstor que comeca a
funcionar ser aceitavel?
Capıtulo 5
Modelos Teoricos
A nocao de probabilidades introduzida no Capıtulo 4 permite quantificar quais as expectativas
em relacao aos resultados de uma experiencia aleatoria. Os resultados possıveis de experiencias
aleatorias sao denominados de variaveis aleatorias. Para cada resultado, a variavel assume
um determinado valor, valor esse que tem uma certa probabilidade de ocorrer. Neste capıtulo,
vamos introduzir varios modelos teoricos que podem descrever a probabilidade de determinado
resultado de uma variavel aleatoria.
5.1 Definicoes
A frequencia com que as amostras de uma determinada variavel assumem um determinado
valor e descrita pela distribuicao da variavel aleatoria. A funcao que descreve a distribuicao
da variavel X para um dado valor de x e denominada por funcao densidade de probabilidade
f(x):
f(x) = P [X = x]; (5.1)
Observe a equivalencia entre a funcao de probabilidade e as frequencias relativas definidas no
Capıtulo 2. De facto, se a frequencia for considerada como uma medida efectiva de probabili-
dade (ver expressao (4.1), no Capıtulo 4), entao as duas entidades coincidem.
A funcao de distribuicao acumulada φ(x) e definida como a probabilidade da variavel
35
36 CAPITULO 5. MODELOS TEORICOS
aleatoria ser menor ou igual a um determinado valor x, ou seja:
φ(x) = P [X ≤ x]. (5.2)
No caso de as variaveis aleatorias serem discretas, temos que:
φ(x) =∑xi≤x
f(xi). (5.3)
No caso de as variaveis serem contınuas, temos que:
φ(x) =
∫ x
−∞f(x)dx. (5.4)
Para as variaveis contınuas, temos ainda que a densidade de probabilidade pode ser obtida por
derivacao da funcao acumulada, ou seja:
f(x) = φ′(x). (5.5)
Existem varios tipos de distribuicao que representam diferentes fenomenos. Consoante a
natureza das variaveis e discreta ou contınua, existem distribuicoes mais apropriadas para des-
crever essas mesmas variaveis.
Assim como foram definidas medidas para a caracterizacao as distribuicoes de frequencias,
tambem podem ser determinados parametros equivalentes para as distribuicoes teoricas:
• Media ou valor esperado – µ(X) = E(X) =∑
xif(xi)
• Variancia – σ2(X) = S2(X) =∑
(xi − E(xi)]2f(xi)
• Desvio padrao – σ(X) =√∑
(xi − E(xi)]2f(xi)
5.2 Distribuicoes Contınuas
A distribuicao de variaveis contınuas descreve a probabilidade de um dado resultado ocorrer
num intervalo especıfico.
5.2. DISTRIBUICOES CONTINUAS 37
5.2.1 Distribuicao normal
A distribuicao normal e uma distribuicao simetrica em relacao ao valor medio, com uma maior
concentracao de valores no centro do que na cauda. A formula da distribuicao normal e
f(x) =1√
2πσ2e−(x−µ)/2σ2
. (5.6)
Consoante o valor da media e da variancia, a distribuicao pode assumir formas diferentes,
como e representado na Fig. 5.1.
Figura 5.1: Distribuicoes normais para diferentes valores de media µ e desvio padrao σ
Distribuicao normal standard
A distribuicao normal com µ = 0 e σ = 1 e normalmente designada por distribuicao normal
standard e representada por Z. Esta distribuicao e representada na Fig. 5.2. A expressao que
Figura 5.2: Distribuicao normal standard
38 CAPITULO 5. MODELOS TEORICOS
descreve a sua funcao de distribuicao φ acumulada e :
φ =1√2π
∫ x
−∞e−y2
2 dy, −∞ < x <∞. (5.7)
De uma forma generica, para uma distribuicao normal standard Z,
P (Z < zα) = φ(zα) = 1− α, α ∈ [0, 1], (5.8)
ou de forma simetrica, podemos dizer que
P (Z > zα) = 1− φ(zα) = α, α ∈ [0, 1], (5.9)
ou ainda que
P (−zα/2 < Z < zα/2) = 1− α, α ∈ [0, 1]. (5.10)
Estas expressoes dizem-nos que a probabilidade de uma amostra ter o valor no intervalo
[−1, 0] e de 34, 13% (ou seja P (−1 < Z < 0) = 0.3413 e que a probabilidade de uma amostra
ter um valor superior a 2 e de apenas 2, 15%, ou seja P (Z > 2) = 0.0215. Os valores de φ(zα)
podem ser determinados analiticamente ou recorrendo a Tabela da distribuicao normal standard.
Existem duas razoes para esta ser considerada a distribuicao mais importante. Em pri-
meiro lugar, foi observado que esta distribuicao representa uma serie de fenomenos fısicos,
sociologicos e psicologicos. Em segundo lugar, esta distribuicao tem propriedades matematicas
que a tornam muito atractiva para a sua utilizacao na analise de sistemas.
Uma dessas propriedades e que qualquer distribuicao normal X ∼ N (µ, σ∈) pode ser redu-
zida a distribuicao normal standard atraves de
Z =X − µ
σ. (5.11)
Esta normalizacao permite-nos tecer varias consideracoes sobre a distribuicao X a partir da
distribuicao Z. Por exemplo, para calcular a probabilidade de X ser menor do que um valor b,
podemos simplesmente calcular
P (X < b) = P (X − µ
σ<
b− µ
σ) = φ(
b− µ
σ). (5.12)
5.2. DISTRIBUICOES CONTINUAS 39
Outra propriedade e de que qualquer que seja o tipo de distribuicao, a distribuicao da
media das amostragens aproxima-se da distribuicao normal com media µ e desvio padrao σ2/n,
quando a dimensao n da amostra aumenta. Este resultado e conhecido pelo Teorema do Limite
Central [4]:
Teorema 1 Teorema do Limite central
Seja X1, X2, . . . , Xn uma sequencia de variaveis aleatorias independentes e identicamente dis-tribuıdas, com media µ e variancia σ. Considere a variavel aleatoria Y = X1 + X2 + . . . + Xn,que tem media n · µ e variancia igual σ ·
√n. Entao para n suficientemente grande, a distribuicao
Yn =X1 + X2 + . . . + Xn − n · µ
σ ·√
n
que corresponde a uma normalizacao da variavel Y , e aproximadamente igual a distribuicao normalstandard Z, com µ = 0 e σ = 1, ou seja
P (Yn < x) = P (Z < x)
.
Um dos corolarios mais importantes deste teorema e o facto de a distribuicao da media
de uma variavel aleatoria qualquer, ainda que nao normal, tende sempre para uma distribuicao
normal, com media igual a distribuicao original e variancia igual a original dividida pelo numero
de amostras n.
O exemplo seguinte mostra de uma forma simples este teorema.
Exemplo 12 Considere uma distribuicao uniforme num intervalo [α, β]. Foramfeitas 4 experiencias aleatorias sobre essa distribuicao. As experiencias consis-tiam em fazer 500 amostras de dimensao N = {1, 4, 7, 10} e calcular a mediade cada amostra. Os resultados das distribuicoes para as diferentes experienciasestao representados na Figura 5.3. Como se pode observar, quando N aumenta, adistribuicao tende para uma distribuicao normal.
Para uma demonstracao interactiva deste Teorema, ver [3].
40 CAPITULO 5. MODELOS TEORICOS
Figura 5.3: Demonstracao do teorema do limite central
5.2.2 Distribuicao χ2
A distribuicao χ2 quadrado e uma distribuicao que deriva da distribuicao normal. Esta distribuicao
descreve uma variavel aleatoria X = Z21 +Z2
2 + . . .+Z2n, onde Z2
1 +Z22 + . . .+Z2
n sao variaveis
aleatorias normais standard. E chamada de χ2 com n graus de liberdade, ou seja X ∼ χ2n.
A media e dada por µ[X] = n e a variancia por σ2(X) = 2n.
5.2.3 Distribuicao t-Student
A distribuicao t-Student deriva tambem da distribuicao normal e descreve uma variavel Tn =
Z√X/n
, onde Z e uma variavel aleatoria normal standard e X e uma variavel χ2 com n graus de
liberdade. A variavel Tn tem tambem n graus de liberdade.
A media e dada por µ[Tn] = 0, n > 1 e a variancia por σ2(Tn) = nn−2
, n > 2.
5.2.4 Distribuicao uniforme
A distribuicao uniforme e uma distribuicao onde todos os valores tem igual probabilidade de
ocorrer. E por vezes chamada distribuicao rectangular. Um exemplo tıpico de um acontecimento
cuja distribuicao estatıstica e uniforme e o lancamento de um dado.
5.2. DISTRIBUICOES CONTINUAS 41
A distribuicao da variavel X e uniforme no intervalo [α, β] quando
f(x) =
{1
β−αif α ≤ x ≤ β
0 caso contrario(5.13)
Dependendo do intervalo α e β, a distribuicao pode assumir diferentes valores, como e
representado na Fig. 5.4:
Figura 5.4: Distribuicoes uniformes para diferentes intervalos [α, β]
5.2.5 Distribuicao exponencial
A distribuicao exponencial e utilizada para modelar acontecimentos que ocorrem aleatoriamente
no tempo. A distribuicao descreve o intervalo de tempo que ocorre entre cada evento, como por
exemplo daqui a quanto tempo e que o nosso telemovel vai comecar a tocar.
A distribuicao da variavel X e exponencial quando:
f(x) =
{λ · e−λx if x ≥ 00 if x < 0
(5.14)
onde o parametro λ e o inverso da media, isto e µ = 1/λ.
A propriedade mais importante da distribuicao exponencial e o facto de a variavel X nao ter
memoria. Para perceber o que significa esta propriedade, observe seguinte exemplo:
42 CAPITULO 5. MODELOS TEORICOS
Exemplo 13 Considere que o numero de quilometros que voce pode conduzir semter um acidente e exponencialmente distribuıdo no tempo com uma media de 10.000km. Se uma pessoa for fazer uma viagem de 5000 km, a probabilidade de se conse-guir fazer a viagem sem ter um acidente e de 60, 4%, independentemente do numerode km que o carro ja fez anteriormente.
Dependendo do valor de λ, a distribuicao pode assumir diferentes formas, como e represen-
tado na Fig. 5.5:
Figura 5.5: Distribuicoes exponenciais para diferentes [λ]
5.3 Distribuicoes Discretas
A distribuicao de variaveis discretas descreve a probabilidade de observar um resultado es-
pecıfico. Note que para distribuicoes de variaveis contınuas, a probabilidade de observar um
resultado especıfico e nula.
5.3.1 Distribuicao de Poisson
A distribuicao de Poisson e utilizada em aplicacoes que envolvem a contagem do numero de
vezes que o dado evento ocorreu num determinado perıodo de tempo, distancia, area, etc, como
por exemplo, o numero de pessoas que visita uma loja por dia.
5.3. DISTRIBUICOES DISCRETAS 43
A distribuicao de Poisson e caracterizada apenas por um parametro que assume valores nao
negativos, o parametro λ, que e ao mesmo tempo a media e a variancia da distribuicao.
A distribuicao de Poisson e a distribuicao exponencial estao relacionadas da seguinte forma:
se o numero de ocorrencias num determinado perıodo de tempo seguir uma distribuicao de
Poisson, entao o intervalo de tempo entre ocorrencias segue uma distribuicao exponencial.
A distribuicao de Poisson pode ser definida da seguinte forma:
f(X = x) =λx
x!e−λ (5.15)
Consoante o valor de λ, a distribuicao pode assumir formas diferentes, como e representado
na Fig. 5.6. A figura da esquerda descreve uma variavel com λ = 3 e a da direita descreve uma
Figura 5.6: Distribuicoes de Poisson para diferentes valores de λ
variavel com λ = 5.
Existem varias aplicacoes onde as variaveis obedecem em geral a distribuicao de Poisson:
Exemplo 14 Suponha que a media de acidentes que ocorrem semanalmente numadada estrada e igual a 3. A probabilidade de nao haver acidentes esta semana ef(X = 0) = 30
0!e−3 = 0.0498, ou seja, e menor do que 5%.
44 CAPITULO 5. MODELOS TEORICOS
5.3.2 Distribuicao binomial
A distribuicao binomial descreve a distribuicao de uma determinada variavel que so pode ser
ter dois resultados possıveis em n amostras e em que a probabilidade de ambos os resultados
ocorrerem para cada amostra e igual. Um exemplo tıpico e o lancamento de uma moeda, ou a
probabilidade de um equipamento falhar.
Suponha que para n amostras cujo resultado pode ser a ou b, a probabilidade de o resultado
ser igual a a e p. Se X representar o numero de vezes que o resultado a ocorre em n amostras, a
variavel X e binomial com parametros (n, p). A distribuicao binomial pode entao ser definida
da seguinte forma:
f(X = x) = px(1− p)n−x n!
(n− x)!x!. (5.16)
Consoante os valores de (n, p), a distribuicao pode assumir formas diferentes, como e re-
presentado na Fig. 5.7. Na figura da esquerda, e representada a distribuicao da variavel “sair
Figura 5.7: Distribuicoes binomiais para diferentes valores de (n, p)
caras”quando se lanca a moeda 10 vezes. Neste caso, a probabilidade de sair caras e p = 50%
e o numero de amostras e n = 10. Na figura da direita, e representada a distribuicao da variavel
“componente com defeito”quando se fazem n = 10 testes de controlo de qualidade a um com-
ponente com uma probabilidade de ter defeito igual a p = 10%.
A distribuicao binomial pode ser aproximada pela distribuicao de Poisson quando n e ele-
vado e p e pequeno, com λ = n · p
5.4. EXERCICIOS 45
A distribuicao binomial pode ser tambem aproximada pela distribuicao normal standard
quando n e elevado, considerando µ = np e variancia σ2 = np(1− p).
5.4 Exercıcios
Exercıcio 7 Estao inscritos 30 alunos a uma dada disciplina. As aulas de laboratorio so podem
ter 10 alunos no maximo. Como em geral, apenas um terco dos alunos vem ao laboratorio, o
horario so contempla um turno. Qual a probabilidade de mais do que 10 alunos quererem
assistir aos laboratorios?
Exercıcio 8 Considere que o numero de km que um carro faz antes que a bateria necessite
de ser mudada e 20.000 km. Se uma pessoa for fazer uma viagem de 10.000 km, qual e a
probabilidade de completar a viagem sem ter que mudar a bateria?
46 CAPITULO 5. MODELOS TEORICOS
Capıtulo 6
Estimacao de parametros
Em certos sistemas, nao e fisicamente ou economicamente possıvel estudar todo o conjunto de
elementos de uma populacao de forma a fazer uma analise estatıstica descritiva. Nestes casos e
entao necessario recorrer a Inferencia estatıstica, que permite retirar conclusoes acerca de uma
determinada populacao atraves da observacao de apenas uma parte dessa populacao. E o caso
das sondagens.
A inferencia estatıstica pode ser feita recorrendo a duas metodologias diferentes: a estimacao
de parametros, que vai ser abordado nas proximas seccoes; e o teste de hipoteses, assunto que
sera abordado no Capıtulo 7.
6.1 Estimacao por Momentos
O metodo dos momentos foi o primeiro metodo de estimacao. Este metodo baseia-se no
princıpio de que e possıvel estimar qualquer parametro θ que caracteriza a distribuicao f(x)
que descreve as amostras xi, desde que o parametro θ possa ser descrito em funcao da media da
distribuicao µ.
Por exemplo, se quisermos estimar a media, ou seja θ = µ, entao basta calcular a media
para estimar essa media. Aparentemente, este metodo e obvio, e no entanto, nao diferencia
entre amostras recolhidas de uma distribuicao normal ou de uma exponencial. Para alem disso,
se o parametro θ a ser estimado for a variancia, nao e possıvel escrever directamente a variancia
47
48 CAPITULO 6. ESTIMACAO DE PARAMETROS
como uma funcao qualquer da media. Nestes casos, descreve-se o parametro θ em funcao de r
momentos, onde cada momento e definido como
Mk =
∑ni=1 Xk
i
n, k = 1, . . . , r (6.1)
Observe que o primeiro momento e a definicao de media, ou seja M1 = µ =∑n
i=1xi
n. Desta
formula resulta por exemplo que o estimador da variancia de uma distribuicao normal e σ2 =∑ni=1
(xi−µ)2
n, que como se pode verificar e semelhante a expressao (2.5) para n elevados (o
denominador e n em vez de n− 1).
6.2 Estimacao por Maxima Verosimilhanca
Considere um conjunto de dados. A verosimilhanca desses dados pode ser definida como a
probabilidade desse conjunto de dados seguir uma determinada distribuicao definida a priori.
O metodo de estimacao por maxima verosimilhanca consiste entao em determinar os parametros
da distribuicao que maximizam a verosimilhanca dos dados.
Considere agora uma extensao ao caso introduzido no Capıtulo 4.
Caso 3 100 lancamentos de moeda ao arDepois de atirar a moeda ao ar 100 vezes, obtiveram-se 56 caras e 44 coroas.Determine qual a maxima verosimilhanca para p, onde p e a probabilidade de saircaras.
Como ja observamos anteriormente, a probabilidade de sair caras e p = 0.5. Relembrando o
conceito de probabilidade condicional, a probabilidade de sair caras e condicional ao parametro
p = 0.5, e pode ser representado da seguinte forma:
P (caras|p = 0.5)
A verosimilhanca de a probabilidade de sair caras quando se atira uma moeda ao ar ser 0.5,
sabendo que o resultado foi caras e descrito como
L(p = 0.5|caras)
6.2. ESTIMACAO POR MAXIMA VEROSIMILHANCA 49
Considere agora que pretende determinar qual a probabilidade de sair caras quando se atira
uma moeda ao ar. Como foi descrito no Capıtulo 5, a experiencia de sair moeda ao ar pode
ser modelada pela distribuicao binomial (ver expressao 5.16). Sendo n o numero de amostras
e x o numero de vezes que saiu caras, vamos testar varios valores de verosimilhanca para a
probabilidade de sair caras:
L(p = 0.5|dados) =100!
56!44!· 0.556 · 0.544 = 0.0389
Se por outro lado considerarmos que p = 0.52, a verosimilhanca sobe para L(p = 0.52|dados) =
0.0581. Isto significa que segundo as experiencias realizadas, a probabilidade de atirar a mo-
eda ao ar e sair caras aproxima-se mais de 0.52 do que de 0.50. De facto, se calcularmos a
verosimilhanca para p = 0.56 e p = 0.6, verificamos que o maximo ocorre para P = 0.56,
o que faz todo o sentido, pois numa analise frequencista de probabilidade, essa e de facto a
probabilidade de sair caras quando se atira uma moeda ao ar com base na experiencia realizada.
O que foi feito de uma forma iterativa, experimentando varios valores de probabilidade ate
encontrar um valor maximo, pode ser feito de uma forma analıtica, atraves da maximizacao da
funcao de verosimilhanca.
6.2.1 Maximizacao da funcao de maxima verosimilhanca
De uma maneira geral, seja a probabilidade de um acontecimento xi dado um determinado
parametro conhecido θ dada por
f(xi|θ). (6.2)
A verosimilhanca e entao dada por
L(θ|x1, . . . , xn) =n∏
i=1
f(xi|θ), (6.3)
assumindo que as experiencias sao independentes, como no caso de atirar a moeda ao ar.
Dada a funcao verosimilhanca, e necessario agora optimizar essa funcao. Uma das tecnicas
mais usadas neste caso e minimizar a funcao
L′(θ|x1, . . . , xn) = ln(L(θ|x1, . . . , xn)) =n∑
i=1
f(xi|θ) (6.4)
50 CAPITULO 6. ESTIMACAO DE PARAMETROS
A minimizacao da funcao L′ e computacionalmente mais facil de realizar do que a maximizacao
de funcao L, pois nesta ultima, utilizam-se valores numericos muito baixos e o produto en-
tre eles levaria a numeros ainda menores, o que causaria muitos erros numericos. Dado que
ln(ab) = ln a + ln b, quando se trabalha com a funcao L′, estaremos a somar numeros e nao
a multiplicar e os erros serao muito menores. A minimizacao e feita atraves da derivacao da
funcao e igualando-a a 0.
6.2.2 Estimadores de maxima verosimilhanca para as principais distribuicoes
A aplicacao da metodologia anterior para as diferentes distribuicoes de probabilidades permite
determinar os estimadores dos diferentes parametros. Nesta seccao sao apresentados os estima-
dores das distribuicoes de probabilidades mais relevantes.
Maxima verosimilhanca para distribuicao binomial
O estimador de maxima verosimilhanca para a distribuicao Binomial e dado por
µ =
∑ni=1 Xi
n(6.5)
que, como se pode verificar corresponde ao estimador obtido pelo metodo dos momentos, e e
no fundo a media aritmetica.
Maxima verosimilhanca para distribuicao de Poisson
O estimador de maxima verosimilhanca para a distribuicao de Poisson e dado por
λ =
∑ni=1 Xi
n(6.6)
que, mais uma vez, corresponde a media.
Maxima verosimilhanca para distribuicao exponencial
O estimador de maxima verosimilhanca para a distribuicao Exponencial e dado por
λ =n∑n
i=1 Xi
= 1/x (6.7)
6.3. INTERVALOS DE CONFIANCA 51
que, corresponde ao inverso da media.
Maxima verosimilhanca para distribuicao normal
A distribuicao normal e caracterizada por dois parametros, a media µ e a variancia σ. Os
estimadores para a distribuicao Normal de cada um destes parametros sao, respectivamente
µ =
∑ni=1 Xi
n(6.8)
e
σ2 =
∑ni=1(Xi − µ)2
n(6.9)
Observe que o estimador da variancia difere da formula da variancia (ver expressao (2.5)) no
facto de o denominador depender de n e nao de n− 1. Contudo, para n suficientemente grande,
a diferenca e desprezavel.
6.3 Intervalos de Confianca
Sempre que se fazem inferencias a partir de amostras, existe sempre uma determinada margem
de incerteza associada ao valor estimado. Relembre o Caso 3, onde a estimacao resultou numa
estimacao de que a probabilidade de sair caras seria de p = 0.56. Esta e uma estimacao pontual,
que nos da apenas um valor para a medida desconhecida.
Existe outro metodo de estimacao que nos permite indicar um intervalo de valores que com
uma dada probabilidade, devera conter o parametro desconhecido. Esse intervalo sera maior ou
menor consoante o grau de incerteza associado ao processo de estimacao.
Exemplo 15 Intervalo de confiancaE um intervalo de valores com uma elevada probabilidade de conter o parametroestimado. Em geral, usam-se intervalos de confianca de 95% ou 99%. Por exemplo,se o intervalo de confianca de 95% da estimacao da media µ da variavel “idade doaluno da escola nautica”for 20 < µ < 30, significa que a se a media dos alunosda escola fosse estimada recorrendo a 100 grupos de alunos diferentes, 95 dessesresultados estimariam a media dentro daquele intervalo.
52 CAPITULO 6. ESTIMACAO DE PARAMETROS
Para a determinacao do intervalo de confianca, vamos recorrer ao conceito da distribuicao
normal standard, introduzido na Seccao 5.2.1.
6.3.1 Calculo do intervalo de confianca para σ conhecido
Considere o caso em que se pretende estimar a media de uma populacao cuja variancia σ2 e
conhecida (o que e extremamente raro). Seja 1 − α o nıvel de confianca pretendido. Entao, a
media estimada tera 1− α de hipoteses de se encontrar dentro do intervalo
(x− zα/2σ√n
, x + zα/2σ√n
) (6.10)
onde x e a media observada.
6.3.2 Calculo do intervalo de confianca para σ estimado
O caso mais geral ocorre quando o valor da variancia e ele proprio desconhecido. Neste caso, ja
nao e possıvel determinar o nosso intervalo com base no facto de a variavel poder ser reduzida
a distribuicao normal standard. Nestes casos, e necessario recorrer a distribuicao t-Student (ver
seccao 5.2.3)
A media estimada neste caso tera 1− α de hipoteses de estar contido no intervalo
(x− tα/2,n−1s√n
, x + tα/2,n−1s√n
) (6.11)
onde x e a media observada, s e a estimativa da variancia, n−1 e o numero de graus de liberdade
da distribuicao t-Student
6.3.3 Calculo do intervalo para distribuicao binomial
Relembrando que a distribuicao binomial pode ser aproximada pela distribuicao normal stan-
dard quando n e elevado, considerando µ = np e variancia σ2 = np(1− p), podemos estimar o
intervalo de confianca para uma distribuicao normal a partir da expressao (6.10)
6.4. EXERCICIOS 53
6.4 Exercıcios
Exercıcio 9 Mediu-se o nıvel de nicotina de um maco de 20 cigarros e obteve-se o valor medio
de 1.2 mg. Calcule o intervalo de 99% de confianca para a media de nicotina, assumindo um
desvio padrao de 0.2 mg.
Exercıcio 10 Para o Caso 3, calcule o intervalo de confianca a 95% para a media.
54 CAPITULO 6. ESTIMACAO DE PARAMETROS
Capıtulo 7
Teste de Hipoteses
No Capıtulo 6 foram introduzidas metodologias que permitiam estimar os parametros que ca-
racterizam a distribuicao de uma populacao a partir de amostras dessa populacao. Alterna-
tivamente a estimacao de parametros, e possıvel inferir tambem caracterısticas acerca dessa
populacao com base na verificacao ou nao de certas hipoteses feitas sobre o comportamento da
populacao - este tipo de inferencia estatıstica e denominada por teste de hipoteses.
Voltando ao Caso 3 (onde se descreve que em 100 lancamentos da moeda ao ar, 56 das
vezes saiu cara e 44 saiu coroa) em vez de estimarmos a media da variavel “X = sair cara”,
podemos testar a veracidade da hipotese ”H0 = 50% das vezes sai cara”. O objectivo e verificar
se a hipotese proposta e consistente ou nao com os dados recolhidos. Note-se que o facto de se
aceitar uma hipotese como verdadeira nao significa que a mesma e de facto verdadeira, significa
apenas que a os dados recolhidos parecem confirmar essa hipotese.
O teste de hipoteses e muito utilizado na comunidade medica para testar se um farmaco e
ou nao eficaz contra certos sintomas ou se um dado fenomeno esta ou nao relacionado com
determinada patologia.
55
56 CAPITULO 7. TESTE DE HIPOTESES
7.1 Definicoes
7.1.1 Hipotese nula
Uma hipotese nula permite testar a igualdade entre dois factores e e em geral utilizada para
testar o valor de um determinado parametro. No Caso 3, testar se a probabilidade de sair caras
e de 50% pode ser expresso em termos de uma hipotese nula do tipo H0 : p− 0.5 = 0, onde p e
a probabilidade de sair caras.
Seguindo a mesma logica, este tipo de hipoteses pode ser utilizado para comparar os parametros
de duas populacoes. Por exemplo, para testar se um determinado remedio e melhor do que nao
tomar esse remedio no tratamento de uma determinada doenca, podemos testar a hipotese de os
resultados serem iguais, ou seja, a sua diferenca ser nula.
Uma hipotese nula, quando verdadeira, caracteriza totalmente uma determinada distribuicao.
No entanto, podem tambem ser colocadas hipoteses menos restritivas, denominadas por hipoteses
compostas, onde em vez de ser testada uma igualdade e testada uma desigualdade. Um exemplo
seria por exemplo a hipotese H0p − 0.5 ≥ 0, ou seja, a probabilidade de sair caras e maior ou
igual a 50%.
A hipotese alternativa e a hipotese que podera ser colocada no caso de a hipotese nula ser
rejeitada.
7.1.2 Tipos de erros
Existem dois tipos de erros que podem ser feitos aquando do teste de hipoteses
Tipo I A hipotese H0 e rejeitada, mas e verdadeira;
Tipo II A hipotese H0 e aceite, mas e falsa.
O erro do tipo II nao e um erro de estimacao, pois o facto de nao rejeitar uma hipotese nao
significa que a mesma e verdadeira. Este erro e um erro so no aspecto em que se perde uma
oportunidade de rejeitar uma hipotese que e falsa.
7.1. DEFINICOES 57
Ja o erro do tipo I e muito grave, pois significa que de facto foram tomadas conclusoes
erradas sobre um determinado fenomeno. A probabilidade de um erro do tipo I ocorrer chama-
se de nıvel de significancia α e e determinado a priori. Note-se que quanto menor for o nıvel de
significancia α, maior sera a possibilidade de ocorrer um erro do tipo II.
7.1.3 Nıvel de Confianca
O conceito de intervalo de confianca definido no Capıtulo 6 e tambem muito utilizado no teste
de hipoteses. Quando e construıdo um intervalo de confianca 1 − α na estimacao de um de-
terminado parametro, considera-se que todos os valores desse intervalo sao plausıveis como
estimativa do parametro em questao, com uma probabilidade de 1− α.
7.1.4 Testes a uma ou duas direccoes
Considere que a hipotese a ser testada e a igualdade entre a media de duas populacoes H0 :
µ1 − µ2 = 0. Se de facto a hipotese for rejeitada e as medias das duas populacoes forem
diferentes, isso pode dever-se ao facto de µ1 > µ2 ou vice-versa, ou seja pode ocorrer em duas
direccoes distintas.
Existem casos em que se valera a pena testar apenas uma das direccoes. Por exemplo,
quando testamos se um remedio e melhor do que um placebo, so estamos interessados em saber
se e melhor ou nao, e nao queremos saber se e igual ou pior. Neste caso, o teste pode ser feito
apenas numa direccao e a hipotese nula e mais facil de rejeitar. Os erros do tipo II sao menores,
ou seja a probabilidade de rejeitar uma hipotese falsa e maior, caso a direccao do efeito seja de
facto a correcta. No entanto, a probabilidade de ocorrer um erro do tipo I e a mesma, quer o teste
seja feito numa ou em ambas as direccoes. E caso haja um erro de avaliacao da direccao em que
e importante testar uma hipotese, pode acontecer que uma hipotese possa nunca ser rejeitada,
caso o efeito ocorra na direccao oposta a que se pensava. Em geral, sao utilizados testes nas
duas direccoes, a nao ser nos casos em que seja claro qual a direccao do efeito a estudar.
58 CAPITULO 7. TESTE DE HIPOTESES
7.2 Testes de Parametros de Distribuicoes Normais
Nesta seccao sao apresentados os diferentes testes que podem ser feitos aos parametros da
distribuicao de uma determinada populacao. A metodologia para testar uma determinada hipotese
e a seguinte:
1. Especificar a hipotese nula a testar;
2. Escolher um nıvel de significancia;
3. Calcular o parametro a testar;
4. Calcular a probabilidade p de obter uma diferenca entre o parametro e a hipotese
5. Comparar a probabilidade com o nıvel de significancia escolhido; se p < (1 − α), entao
a hipotese nula e rejeitada
A variavel que descreve a hipotese nula pode ser descrita de uma maneira geral como
z =Estatistica−Hipotese
Erro standard Estatistica(7.1)
A variavel z seguira a distribuicao de uma normal standard quando a variancia da populacao
e conhecida e seguira a distribuicao t-Student no caso de a variancia ser tambem ela estimada.
7.2.1 Testes a media de uma populacao normal com variancia conhecida
Seja X1, . . . , Xn uma amostra de dimensao n de uma determinada populacao normal com media
desconhecida e variancia conhecida σ2. Considere que estamos interessados em testar a hipotese
H0 : µ = µ0,
onde µ0 e uma determinada constante. Consideremos um nıvel de significancia 1−α. Para cal-
cular a media usamos o estimador x =∑n
i=1 Xi/n e determinamos a probabilidade da variavel
z =x− µ0
σ/n
e obtemos o valor da probabilidade desta variavel. Se p(z) < α, entao a hipotese e rejeitada,
caso contrario, a hipotese e aceite.
7.2. TESTES DE PARAMETROS DE DISTRIBUICOES NORMAIS 59
7.2.2 Testes a media de uma populacao normal com variancia estimada
Seja X1, . . . , Xn uma amostra de dimensao n de uma determinada populacao normal com media
e variancia desconhecida. Neste caso, tal como foi explicado no Capıtulo 6, e necessario recor-
rer a distribuicao t-Student, ou seja, e necessario calcular a probabilidade da variavel
t =x− µ0
s/√
n,
onde s e uma estimativa do desvio padrao. O numero de graus de liberdade da distribuicao de
t-Student e de n− 1.
Este teste e usualmente conhecido por t− test.
7.2.3 Testes a media de duas populacoes normais
Este teste e muito utilizado para verificar se dois solucoes diferentes conduzem ao mesmo re-
sultado. A hipotese nula a verificar e o facto de as medias de ambas as amostras serem iguais,
ou seja H0 : µ1 = µ2, o que e equivalente a testar a hipotese de que H0 : µ1 − µ2 = 0 onde a
estimativa de µ1 − µ2 pode ser dada por x1 − x2.
A variavel a ser definida, no caso de as variancias serem conhecidas e dada por
z =x1 − x2 − (µ1 − µ2)√
σ21/n1 + σ2
2/n2
,
onde n1 e n2 e o numero de amostras de cada uma das populacoes. Mais uma vez, se a proba-
bilidade p(z) < α a hipotese e aceite. Caso contrario, a hipotese e rejeitada.
No caso de as variancias serem desconhecidas mas iguais, a variavel segue a distribuicao
t-student e e dada por
t =x1 − x2√
((n1 − 1)s21 + (n2 − 1)s2
2)/(n1 + n2 − 2)×√
(1/n1 + 1/n2),
onde n1 + n2 − 2 graus de liberdade da distribuicao.
60 CAPITULO 7. TESTE DE HIPOTESES
No caso de as variancias serem desconhecidas e diferentes, a variavel segue a distribuicao
t-student e e dada por
z =x1 − x2√
(s21/n1 + s2
2/n2
,
considerando novamente que a variavel segue uma distribuicao normal standard para n1 e n2
suficientemente grandes.
7.2.4 Teste a populacoes binomiais
No caso de uma populacao binomial, a hipotese
H0 : p ≤ p0
a hipotese e verdadeira se
P (X ≥ k) ≤n∑
i=k
n!
(n− i)!i!pi
0(1− p0)n−i
7.3 Exercıcios
Exercıcio 11 Um fabricante de pneus indica que a vida media de um pneu e de 40.000 km.
Para verificar este valor, foram feitos testes a 12 pneus e a vida util foi a seguinte:
Tabela 7.1: Resultados de um estudo acerca de pneus.
Pneu 1 2 3 4 5 6 7 8 9 10 11 12no milhares de km 36.1 40.2 33.8 38.5 42 35.8 37 41 36.8 37.2 33 36
Verifique a veracidade da afirmacao do fabricante.
Exercıcio 12 Para o Caso 3, teste a hipotese de que a probabilidade de sair cara e maior do
que 50%.
Capıtulo 8
Aplicacoes
Neste capıtulo, sao apresentados alguns exemplos de aplicacao da teoria de probabilidades e
estatıstica apresentadas nos capıtulos anteriores a problemas tıpicos de engenharia.
8.1 Caracterizacao de Tempo de Vida
Os 40 equipamentos de um novo modelo que vai sair para o mercado foram previamente testa-
dos. A vida util medida destes equipamentos e a seguinte:
Tabela 8.1: Vida util em horas
112 121 126 108 141104 136 134 121 118142 116 108 122 127140 113 117 126 130134 120 131 133 118125 151 147 137 140132 119 110 124 132152 135 130 136 128
Caracterize o equipamento em termos de vida util.
61
62 CAPITULO 8. APLICACOES
8.2 Determinacao de Causas
Um engenheiro responsavel pela manutencao de uma fabrica, resolveu fazer um estudo acerca
das avarias de uma determinada maquina, medindo o tempo entre avarias (m), a tensao (V), a
velocidade de rotacao do motor (RPM) e a temperatura (T).
Tabela 8.2: Tempo entre avarias
Tempo [m] Tensao [V] Velocidade [RPM] Temperatura [T]
2145 110 750 1402155 110 850 1802220 110 1000 1402225 110 1100 1802260 120 750 1402266 120 850 1802234 120 1000 1402340 130 1000 1802212 115 840 1502180 115 880 150
Construa um modelo para a avaria do equipamento, determinando quais os factores que
influenciam ou nao o funcionamento do equipamento.
8.3 Determinacao das Caracterısticas
As capacidades de 10 baterias (ampere-hora) foram testadas com os resultados indicados na
Tabela 8.3. Considerando que a capacidade de uma bateria e uma variavel normal, estime a
capacidade media e a variancia, com um intervalo de confianca de 95%. Compare os valores
obtidos com os que teria obtido fazendo uma analise estatıstica descritiva.
Tabela 8.3: Capacidade util
140 136 150 144 148152 138 141 143 151
8.4. VERIFICACAO DE CARACTERISTICAS 63
8.4 Verificacao de Caracterısticas
Um novo oleo surgiu no mercado, com a mesma viscosidade do oleo que usa actualmente, mas
a metade do preco. Foram feitos testes de viscosidade aos dois tipos de oleo, com os resultados
indicados na Tabela 8.4. Verifique se a viscosidade dos dois oleos e realmente igual e se pode
comecar a utilizar o oleo mais barato.
Tabela 8.4: Resultados de um estudo acerca de fumadores.
Oleo 1 10.62 10.58 10.33 10.72 10.44 10.74Oleo 2 10.50 10.52 10.58 10.62 10.55 10.51 10.53
64 CAPITULO 8. APLICACOES
Parte II
Optimizacao de Sistemas
65
67
A Investigacao Operacional surgiu como ciencia durante a segunda guerra mundial. O su-
cesso das operacoes militares dependia de uma alocacao eficiente de recursos humanos e ma-
teriais a diversos cenarios militares. Os exercitos britanicos e norte-americanos recorreram aos
servicos de cientistas para desenvolverem algoritmos para resolver problemas de logıstica, es-
trategia e tactica. A designacao anglo-saxonica (Operational Research) provem da descricao da
sua actividade: research on military operations.
Depois de terminar a guerra, os conhecimentos foram aplicados na revitalizacao do tecido
industrial. Apesar de actualmente o campo de aplicacoes da investigacao operacional cobrir
diversas areas, e ainda na area dos sistemas industriais (producao, gestao e logıstica) que se
concentram a maior parte da pesquisa e aplicacoes.
68
Capıtulo 9
Programacao Linear
A programacao linear e uma ferramenta de optimizacao para problemas que podem ser mo-
delados atraves de equacoes lineares. O termo programacao significa aqui planeamento. O
tipo mais comum de problemas de programacao linear consiste nos chamados problemas de
escalonamento, que tratam da alocacao de recursos a determinadas actividades. Quanto mais
actividades houver para realizar e mais escassos sao os recursos, mais complexo e o problema
de escalonamento. No entanto, qualquer problema que possa ser modelado por uma equacao
linear pode ser resolvido recorrendo a programacao linear.
Muito do sucesso da Investigacao Operacional se deveu ao desenvolvimento em 1947 por
George Dantzig do metodo simplex para resolver os problemas de programacao linear e ainda
hoje e muito utilizado para resolver problemas de grande dimensao [1]. Este metodo, baseado
em conceitos geometricos, e muito intuitivo e facilmente implementavel em qualquer linguagem
de programacao, o que contribuiu para a sua generalizacao.
Este capıtulo introduz em primeiro lugar, os conceitos da programacao linear, atraves da
apresentacao do modelo geral e dos pressupostos que tem de ser verificados para a sua implementacao.
Em seguida, e apresentado o metodo simplex, em termos graficos e tabulares. Todos estes con-
ceitos sao introduzidos a partir do estudo do seguinte caso:
69
70 CAPITULO 9. PROGRAMACAO LINEAR
Caso 4 Planeamento de producao de novos produtosUma empresa decidiu descontinuar os produtos antigos e introduzir dois novosprodutos com grandes potencialidades de comercializacao. A linha de producaoesta dividida em tres zonas e o roteiro de producao dos novos produtos e o seguinte:
• Cada lote de produto A e produzido nas zonas 1 (1 hora) e 3 (3 horas). Olucro proveniente de cada lote e de 3 mil Euros;
• Cada lote de produto B e produzido nas zonas 2 (2 horas) e 3 (2 horas). Olucro proveniente de cada lote e de 5 mil Euros;
o tempo de producao disponıvel para produzir estes produtos:
• Zona 1: 4 horas;
• Zona 2: 12 horas;
• Zona 3: 18 horas;
O departamento de marketing concluiu que a melhor estrategia e produzir omaximo de cada produto. Contudo os produtos tem de competir pelo tempo deproducao na zona 3 e nao e claro qual e a combinacao de producao que permitemaximizar os lucros da empresa.
9.1 Definicoes basicas
Nesta seccao sao introduzidos os conceitos basicos de optimizacao de funcoes. Estes conceitos
sao genericos para qualquer problema de optimizacao ou metodos de resolucao. As definicoes
mais importantes sao:
• Optimizacao – formalmente, optimizar significa encontrar os extremos de uma funcao:
caso se pretenda saber o valor mınimo dessa funcao, o processo e designado por minimizacao;
caso se pretenda saber o valor maximo, o processo e designado por maximizacao. Observe
que a maximizacao de uma funcao corresponde a minimizacao da sua funcao simetrica,
pelo que e possıvel converter problemas de minimizacao em maximizacao e vice-versa;
• Funcao objectivo – e a funcao que se pretende optimizar, pois descreve o objectivo que
se pretende minimizar ou maximizar: no caso 4, o objectivo e maximizar os lucros da
9.1. DEFINICOES BASICAS 71
empresa. Visto que em muitos problemas, o objectivo pretendido e a minimizacao de um
custo, esta funcao e tambem designada por funcao de custo;
• Espaco de solucoes – o universo de valores que a funcao de custo pode assumir;
• Solucoes possıvel – sao as solucoes dentro do espaco de solucoes que respeitam os cons-
trangimentos; caso contrario a solucao nao e possıvel;
• Variaveis de decisao – as variaveis das funcoes objectivo sao denominadas por variaveis
de decisao, pois e ao processo de optimizacao que cabe decidir quais os valores que essas
variaveis vao assumir de forma a que o objectivo seja atingido;
• Constrangimentos – muitos dos problemas de optimizacao estao sujeitos a restricoes,
isto e so podem ser resolvidos assumindo determinadas limitacoes. Essas limitacoes sao
designadas por constrangimentos. De uma maneira geral, os constrangimentos delimitam
regioes do espaco de solucoes onde as solucoes nao sao possıveis;
• Optimo – O valor da funcao objectivo no ponto mınimo ou maximo e chamado de valor
optimo. Note que este valor pode ser global, no caso de ser o valor optimo absoluto
ou local, no caso de ser o valor optimo apenas em determinada vizinhanca. Um dos
grandes desafios da optimizacao e saber se o optimo atingido e de facto o optimo global
ou e apenas um optimo local. Para certos tipos de funcoes, e facil de saber se o optimo
e global ou nao - recorde por exemplo que uma funcao parabolica so tem um extremo,
pelo que este extremo e necessariamente optimo. Ja outro tipo de funcoes podem ter
varios pontos extremos, alguns locais, outros globais. E por isso comum falar em melhor
solucao conhecida, no caso de problemas de optimizacao dos quais nao e possıvel provar
se o optimo e de facto global ou nao.
• Algoritmo - e um procedimento iterativo para determinar as solucoes optimas de um
problema;
• Heurıstica - e um algoritmo que se baseia numa regra empırica para determinar a solucao
de um problema. Em geral estas regras nao dao solucoes optimas, mas podem fornecer
solucoes relativamente boas num curto espaco de tempo;
72 CAPITULO 9. PROGRAMACAO LINEAR
9.2 Modelacao do problema de programacao linear
O modelo de um problema de programacao linear representa um problema de optimizacao de
alocacao de n actividades ai, i = 1, . . . , n a m recursos bj, j = 1, . . . ,m. Cada actividade i
e caracterizada pelo quantidade de recurso que necessita ai para ser executada. Cada recurso
j e caracterizado pela quantidade total bj disponıvel para executar as actividades. A funcao de
custo e definida pela contribuicao ci de cada actividade para o custo total. A cada actividade i
esta associada a respectiva variavel de decisao xi.
Em termos matematicos, o modelo pode assumir a seguinte forma:
Maximizar Z = c1x1 + c2x2 + . . . + cnxn (9.1)
com constrangimentos a11x1 + a12x2 + . . . a1nxn < b1
a21x1 + a22x2 + . . . a2nxn = b2
...
am1x1 + am2x2 + . . . amnxn > bm
Note que existem outras formas de problemas de programacao linear, como por exemplo com
a minimizacao da funcao de custo. Os constrangimentos podem assumir qualquer uma das
formas apresentadas (≤, =,≥).
Em relacao ao caso 4, o problema pode ser definido da seguinte forma:
9.3. PRESSUPOSTOS DA PROGRAMACAO LINEAR 73
Exemplo 16 No caso de planeamento de producao, existem n = 2 actividades:produzir o produto 1 e o produto 2. Os m = 3 recursos utilizados sao: a zona 1,zona 2 e zona 3. Considerando as quantidades de recursos necessarias para cadaactividade e as quantidades de recursos disponıveis, a formulacao do problema emtermos de programacao linear e:
Maximizar Z = 3x1 + 5x2 (9.2)
com constrangimentos x1 ≤ 4 (9.3)
2x2 ≤ 12 (9.4)
3x1 + 2x2 ≤ 18 (9.5)
x1 ≥ 0 (9.6)
x2 ≥ 0 (9.7)
Os 3 primeiros constrangimentos sao denominados por constrangimentos funcionais, pois
fazem parte da definicao do problema. Os dois ultimos constrangimentos indicam apenas que
os tempos de producao de cada produto tem de ser necessariamente positivos, logo sao cons-
trangimentos de nao-negatividade.
9.3 Pressupostos da programacao linear
Em termos matematicos, o unico pressuposto para a modelacao atraves da programacao li-
near e que a funcao de custo e os constrangimentos sejam lineares. No entanto,em termos de
modelacao, existem outros pressupostos que tem de ser verificados em relacao aos dados de
forma a concluir se a programacao linear e de facto o metodo adequado para resolver o pro-
blema em questao.
• Proporcionalidade – a contribuicao de cada variavel para a funcao de custo ci ou a quan-
tidade requerida por recurso dessa mesma actividade ai tem de ser proporcionais ao nıvel
de cada actividade xi. Na pratica isto significa que a evolucao do nıvel xi de cada activi-
dade tem de ser linear proporcional ao nıvel requerido por cada actividade;
74 CAPITULO 9. PROGRAMACAO LINEAR
• Aditividade – qualquer das funcoes do modelo de programacao linear e a soma das
contribuicoes individuais de cada actividade. Na pratica isto significa que nao pode haver
termos cruzados, do tipo xixk;
• Divisibilidade – as variaveis de decisao podem assumir qualquer valor, ainda que nao in-
teiro, desde que respeitem os constrangimentos. No caso de haver a obrigatoriedade de os
valores serem inteiros, e necessario recorrer a outros metodos, como sejam a programacao
de inteiros.
• Parametros constantes – os diversos parametros do modelo, desde as quantidades por
actividade ai, passando pelas as quantidades totais bj por recurso ate ao contributo para o
custo de cada actividade ci sao constantes ao longo do problema.
Ao modelar um problema pode ser necessario fazer algumas simplificacoes por forma a que
o problema possa ser soluvel pelos metodos de optimizacao a nossa disposicao. Um modelo
demasiado detalhado pode conduzir a um problema de optimizacao que seja de difıcil resolucao.
E por isso normal que ao modelarmos um problema, nenhum dos 4 pressupostos seja respeitado.
Se pequenos ajustes de parametros poderem conduzir a um modelo que respeite os pressupostos
da programacao linear e deste modo resolvido atraves das ferramentas descritas neste capıtulo,
entao pode ser vantajoso fazer esses pequenos ajustes, pois o erro do modelo para o caso real
sera desprezavel. Caso os ajustes a fazer distorcam a realidade, e necessario recorrer a outros
metodos de optimizacao.
9.4 Metodo Grafico
Quando o problema tem poucas variaveis de decisao (2 ou 3), e possıvel representar o problema
graficamente e a partir daı obter a sua solucao. Para problemas de maior dimensao, ja nao e
possıvel representa-los graficamente e e necessario utilizar o metodo de resolucao algebrica ou
tabular descrito na seccao 9.5.4. Como o caso 4 so tem duas variaveis de decisao, pode ser
resolvido graficamente, como e descrito em seguida.
Consideremos o espaco de procura de solucoes, que e o espaco cartesiano <2, visto que
temos duas variaveis reais, x1 e x2. Este espaco e representado na Fig. 9.1.
9.4. METODO GRAFICO 75
Figura 9.1: Representacao do espaco de procura de solucoes do caso 4
Figura 9.2: Representacao dos constrangimentos do caso 4
Existem restricoes aos valores que x1 e x2 podem assumir, indicados nos constrangimentos
(9.3) to (9.7). A representacao destes constrangimentos e feita na Fig. 9.2: a traco contınuo
sao indicados os constrangimentos (9.6) e (9.7); a tracejado sao indicados os constrangimentos
(9.3) e (9.4); e finalmente a ponteado, e indicado o constrangimento (9.6).
Observe que a representacao feita diz respeito apenas as igualdades (rectas), mas os cons-
trangimentos sao neste caso inequacoes, o que quer dizer que as rectas desenhadas indicam
apenas os limites. Por exemplo, no caso do constrangimento (9.3), sao possıveis tambem os va-
lores x1 > 0, pelo que todo a regiao a esquerda do eixo de x2 e uma regiao de solucoes possıveis.
Assim como a recta que indica o constrangimento (9.5) define apenas o limite maximo,pelo que
todos os valores de x1 e x2 abaixo dessa recta sao possıveis. Da interseccao de todas as regioes
possıveis definidas pelos constrangimentos, resulta o espaco de solucoes possıveis, representado
na Fig. 9.3 a sombreado.
Esta regiao de solucoes possıveis e convexa e e delimitada por uma serie de vertices. Estes
76 CAPITULO 9. PROGRAMACAO LINEAR
Figura 9.3: Representacao do espaco de solucoes possıveis do caso 4
vertices vao assumir um papel fundamental no metodo simplex a introduzir na seccao seguinte,
visto que a solucao optima esta relacionada com estes pontos.
Falta agora encontrar qual o ponto (x1, x2) de toda a regiao de solucoes possıveis que maxi-
miza a funcao de custo (9.2). Observe que a funcao de custo tem uma terceira variavel, o valor
do custo Z, pelo que nao pode ser totalmente representado num grafico bidimensional, visto que
geometricamente e um plano. O que e possıvel fazer e desenhar o valor da funcao de custo para
diversos valores de Z, ou seja desenhar curvas de nıvel do plano definido pela funcao de custo.
A representacao dessas curvas de nıvel e feita na Fig. 9.4a. Na Fig. 9.4b e feita a representacao
tridimensional dos constrangimentos e da funcao de custo.
(a) Curvas de nıvel da funcao de custo docaso 4
(b) Representacao tridimensional do caso 4
Para determinar qual o ponto optimo do problema, ou seja aquele que maximiza a funcao
de custo Z, e necessario achar o ponto (x1, x2) dentro da regiao de solucoes possıveis em que
o valor de Z seja maximo. Ora esse ponto e claramente o ponto (2, 6), cujo valor da funcao de
9.5. ALGORITMO SIMPLEX 77
custo e Z = 36. Note que este ponto e um dos vertices do espaco de solucoes possıveis.
Desta resolucao se conclui que de forma a maximizar os lucros da empresa, e tendo em
conta os constrangimentos de producao, e necessario produzir 2 lotes do Produto A e 6 lotes do
Produto B, de forma a que o lucro da empresa seja maximo e igual a 36 mil Euros.
9.5 Algoritmo Simplex
Nesta seccao introduzimos o algoritmo de optimizacao Simplex para optimizacao de problemas
modelados como problemas de programacao linear.
O algoritmo simplex e um metodo de optimizacao algebrico. Se recordamos a formulacao
generica de um problema de programacao linear descrita em 9.1, o problema e representado
atraves de uma serie de equacoes lineares que podem ser representadas de uma forma matricial
e dessa forma resolvidas recorrendo a metodos de algebra linear. O metodo simplex e entao
uma metodologia algebrica no sentido em que recorre a representacao algebrica do problema
para atingir a solucao optima.
O metodo utiliza tambem alguns resultados teoricos da formulacao em programacao linear
que possibilitam que a resolucao do problema seja feita de uma forma mais expedita, pois utiliza
algumas regras que permitem simplificar a resolucao algebrica. A maneira como essas regras
sao utilizadas leva a que a resolucao consista na aplicacao de um algoritmo, que consiste num
procedimento iterativo em que se calcula um resultado a partir de uma determinada expressao
sucessivas vezes ate que seja atingido um criterio de paragem. De uma forma simplista, em cada
passo ou iteracao do algoritmo, e calculada uma solucao: se a solucao e optima, o algoritmo
para; se nao, o algoritmo efectua um novo passo. Num metodo iterativo nao e possıvel saber
a priori quantos passos serao necessarios para resolver o problema, a nao ser que o criterio de
paragem do algoritmo seja um numero maximo de iteracoes.
Apesar de o algoritmo simplex ser algebrico, e possıvel interpreta-lo de uma forma geometrica.
Neste sentido, a analise feita graficamente para o caso 4 permite-nos compreender melhor a
resolucao atraves do metodo simplex. A vantagem deste metodo face a resolucao grafica, para
alem do facto de o numero de variaveis poder ser qualquer e nao apenas 2 ou 3, e que um
78 CAPITULO 9. PROGRAMACAO LINEAR
metodo algebrico e facilmente implementavel computacionalmente, o que permite automatizar
a resolucao de qualquer problema.
Nesta seccao e descrita a forma tabular de resolver o metodo simplex. Este tipo de representacao
do problema permite-nos nao so resolver manualmente qualquer problema de programacao li-
near, mas tambem utilizar a ferramenta SOLVER do MS Excel para optimizacao de problemas
e que inclui como metodo o algoritmo simplex.
9.5.1 Conceitos basicos sobre Pontos Vertice
Como foi descrito na Seccao 9.4, a regiao de solucoes possıveis pode ser definida com um
polıgono com diversos pontos vertice. No caso 4, havia 5 pontos vertices ((0, 0), (0, 6), (2, 6), (4, 3), (0, 4))
e a solucao optima correspondia a um desses pontos vertice.
Observe que neste exemplo, com 2 variaveis de decisao, cada vertice corresponde a interseccao
de 2 constrangimentos. Alguns desses vertices partilham 1 constrangimento, outros nao. Por
exemplo, os vertices (0, 6) e (2, 6) partilham o constrangimento 2x2 ≤ 12, enquanto que os
vertices (0, 6) e (4, 3) nao partilham nenhum constrangimento. Neste caso diz-se que os vertices
(0, 6) e (2, 6) sao adjacentes, enquanto que os vertices (0, 6) e (4, 3) nao sao adjacentes.
Contudo, existem pontos de interseccao de constrangimentos que nao pertencem ao espaco
de solucoes possıveis, como seja o ponto (4, 6). Estes pontos sao tambem pontos vertices e
por este motivo, vamos denominar os vertices definidos na regiao de solucoes possıveis como
vertices possıveis.
Este conceito pode ser formalizado da seguinte forma:
Definicao 1 Adjacencia de vertices
Para qualquer problema de programacao linear com n variaveis de decisao, dois pontos vertice
dizem-se adjacentes se partilharem n − 1 constrangimentos. Esses dois pontos estao ligados
por um segmento que define a fronteira do constrangimento partilhado. Esse segmento e deno-
minado por aresta da regiao de solucoes possıveis.
9.5. ALGORITMO SIMPLEX 79
A razao pela qual estes pontos vertices sao tao importantes em programacao linear e a
seguinte:
Teorema 2 Verificacao da Localizacao do optimo em problemas de programacao linear
Considere um problema de programacao linear com pelo menos um ponto optimo. Se o custo
de um ponto vertice possıvel for melhor do que em qualquer ponto adjacente, entao esse vertice
possıvel e um optimo da solucao.
Verifique este teorema no caso 4: o custo da funcao objectivo nos vertices possıveis (0, 6)
e (4, 3) e inferior. Este e o princıpio basico utilizado pelo algoritmo simplex para determinar o
optimo de funcao objectivo. No fundo, o metodo consiste em calcular a funcao de custo para os
diversos vertices possıveis do problema e verificar se os vertices adjacentes tem melhor custo
ou nao: se sim, o metodo passa para o vertice possıvel adjacente com melhor custo; se nao, esse
vertice possıvel e o optimo do problema.
9.5.2 Inicializacao do algoritmo
O algoritmo simplex e um metodo algebrico, ou seja um metodo que resolve equacoes algebricas.
No entanto, os constrangimentos podem ser definidos por inequacoes, que nao pode sem directa-
mente representadas em forma matricial. Antes de implementar o algoritmo, e entao necessario
representar as inequacoes em forma de equacao. Esta transformacao e conseguida atraves da
introducao de novas variaveis no problema, denominadas por variaveis auxiliares. Recorde que
as variaveis fundamentais do problema sao as variaveis de decisao.
Considere o constrangimento (9.3) do caso 4
x1 ≤ 4.
Este constrangimento pode ser representado alternativamente como
x1 − 4 ≤ 0⇔ x1 − 4 = −x3 ∩ −x3 ≤ 0
onde x3 representa a diferenca entre o valor de x1 e o valor maximo que x1 pode atingir, que e
neste caso 4.
80 CAPITULO 9. PROGRAMACAO LINEAR
De uma forma mais simples, podemos entao dizer que o constrangimento x1 ≤ 4 pode ser
representado algebricamente como
x1 ≤ 4⇔ x1 + x3 = 4 ∩ x3 ≥ 0. (9.8)
Observe-se que ao eliminarmos a inequacao, surgiu outra inequacao x3 ≥ 0. Esta inequacao
e do mesmo tipo dos constrangimentos (9.6) e (9.6), que serao abordados mais a frente.
Desta forma, podemos representar o problema de optimizacao descrito no caso 4, utilizando
uma nova formulacao, que designamos por forma aumentada, e que e absolutamente equiva-
lente a representacao inicial:
Exemplo 17 A forma aumentada em programacao linear do problema deoptimizacao do caso 4 e a seguinte:
Maximizar Z (9.9)
com constrangimentos Z − 3x1 − 5x2 = 0 (9.10)
x1 + x3 = 4 (9.11)
2x2 + x4 = 12 (9.12)
3x1 + 2x2 + x5 = 18 (9.13)
xi ≥ 0, i = 1, 2, 3, 4, 5 (9.14)
O ultimo constrangimento indica que todas as variaveis tem de ser positivas ou nulas. Note
que a funcao de custo foi reescrita como uma funcao generica Z e a sua relacao com as variaveis
de decisao e apenas mais um constrangimento.
Esta forma de representacao aumentada e muito mais conveniente para manipulacao algebrica
e para identificacao de pontos vertices. Nesta nova configuracao, qualquer ponto vertice e de-
nominado de solucao basica.
Uma solucao basica tem as seguintes caracterısticas:
1. Cada variavel na solucao basica e uma variavel basica ou nao basica;
9.5. ALGORITMO SIMPLEX 81
2. O numero de variaveis basicas numa solucao basica e igual ao numero de constrangimen-
tos funcionais, ou igual ao numero variaveis menos o numero de variaveis de decisao;
3. As variaveis nao-basicas sao iguais a 0
4. O valor das variaveis basicas e obtido a partir da resolucao em simultaneo do sistema de
equacoes
5. Se a solucao basica satisfaz os constrangimentos de nao-negatividade, entao a solucao
basica e uma solucao basica possıvel.
A solucao basica possıvel corresponde aos vertices possıveis na forma original do problema.
A definicao 1 pode agora ser generalizada da seguinte forma:
Definicao 2 Duas solucoes basicas dizem-se adjacentes se todas menos uma das variaveis nao-
basicas forem comuns.
Desta forma, o metodo simplex consiste agora em movimentar-se entre as diversas solucoes
basicas possıveis, testando o teorema de localizacao do optimo global.
9.5.3 Resolucao algebrica do metodo simplex
A resolucao algebrica do metodo simplex consiste na aplicacao do seguinte algoritmo:
Algorithm 1 Metodo simplexDeterminar solucao InicialVerificacao do Optimowhile Solucao6= Optimo do
Determinar direccaoDeterminar passoVerificacao Optimo
end while
De uma forma mais detalhada, observemos a aplicacao do Algoritmo 11.1.4 ao caso 4:
82 CAPITULO 9. PROGRAMACAO LINEAR
1. Inicializacao – inicialmente, escolhemos como variaveis nao basicas x1 e x2. Como sao
variaveis nao basicas, assumem o valor 0. Repare que isto consiste no fundo a escolher a
origem como ponto de inicializacao do algoritmo. Em geral a origem e o ponto escolhido,
pois e sempre um ponto vertice possıvel desde que existam constrangimentos de nao-
negatividade. Para alem disso, esta escolha permite determinar o valor da solucao basica
a partir da resolucao do sistema de equacoes definidos pelos constrangimentos funcionais
(9.11),(9.11) e (9.11). O valor da variavel basica inicial e entao (0, 0, 4, 12, 18);
2. Verificacao do Optimo – a funcao de custo Z = 3x1 + 5x2 tem o valor 0 para a
solucao basica inicial. Como nenhuma das variaveis basicas tem um valor nao nega-
tiva nesta funcao de custo, o coeficiente de cada variavel x1 e x2 mostra que ha potencial
de maximizacao da funcao de custo, logo a solucao nao e optima.
3. Determinacao da direccao de movimento – e necessario agora mover para outra solucao
basica e a escolha recai sobre a direccao que mostra mais potencial de maximizacao.
Como o coeficiente de maximizacao em x1 e 3 e o coeficiente de maximizacao em x2 e 5,
e visto que 5 > 3, entao escolhemos a direccao de x2 para mover a solucao basica. Entao,
a variavel x2 vai passar de variavel nao basica para variavel basica
4. Determinacao do incremento de movimento – e necessario agora decidir o passo do
movimento na direccao escolhida, o que no fundo corresponde a determinar qual a variavel
basica anterior x3, x4, x5 que sai para dar lugar a nova variavel basica x2. E necessario
verificar quanto e que se pode aumentar x2 sem deixar a regiao de solucoes possıveis. Re-
escrevemos o sistema de equacoes considerado anteriormente, como x1 = 0 em funcao
da variavel x2:
x2 ≥ 0
x1 = 0
x1 + x3 = 4 x3 = 4 4 ≥ 0
2x2 + 2x4 = 12 x4 = 12− 2x2 x2 ≤ 12/2 = 6
3x1 + 2x2 + x5 = 18 x5 = 18− x2 x2 ≤ 18/2 = 9
9.5. ALGORITMO SIMPLEX 83
Isto significa que a variavel x2 = 6 e o valor maximo de forma a que a solucao basica seja
possıvel. Este valor constitui um limite imposto pela variavel x4, pelo que e esta variavel
que da lugar a entrada de x2 e por isso x4 passa a ser a variavel nao basica.
5. Determinacao da nova solucao basica – sabendo que as variaveis nao basicas sao x1
e x4, e que por isso x1 = 0 e x2 = 0, atraves da resolucao do sistema de equacoes
formado pelos constrangimentos (9.11),(9.12) e (9.13). O facto de termos mudado a
variavel basica, obriga-nos a reescrever este sistema de equacoes onde x2 e substituıdo or
x4. O sistema e agora:
x2 +1
4x4 = 6
x1 = 0
Z − 3x1 +5
2x4 = 30
x1 + x3 = 4
3x1 − x4 + x5 = 6
A nova solucao basica e (0, 6, 4, 0, 6).
6. Verificacao do optimo – este passo e novamente repetido. Verifica-se que na funcao de
custo escrita na forma Z = 30 + 3x1 − 52x4, a direccao que potencia a maximizacao e
a direccao x1, pois tem um coeficiente positivo, enquanto que a direccao de x4 tem uma
direccao negativa, e por isso a minimizar o valor de Z. A direccao escolhida e a direccao
x1. Retorna ao passo 3 do algoritmo, iniciando uma nova iteracao.
A nova iteracao conduzir-nos-a a substituicao de x1 pela variavel x5 como variavel basica.
Isto porque, assumindo x4 = 0, obtemos o sistema de equacoes
x3 = 4− x1 ≥ 0 ⇔⇔ x1 ≤ 4
x2 = 6
x5 = 6− 3x1 ≥ 0 ⇔ x1 ≤ 6/3 = 2
o valor mınimo que x1 pode aumentar e devido a x5.
84 CAPITULO 9. PROGRAMACAO LINEAR
Figura 9.4: Representacao da solucao algebrica em termos geometricos do caso 4
A nova solucao basica vem do sistema de equacoes reescrito em funcao de x5:
Z + x5 +5
2x4 = 36
x3 +1
3x4 −
1
3x5 = 2
x2 +1
2x4 = 6
x1 −1
3x4 +
1
3x5 = 2
A solucao basica e agora (2, 6, 2, 0, 0)
Finalmente, ao verificarmos o optimo, observamos que a funcao de custo escrita na nova
forma Z = 36− 32x4−x5 nao tem potencial de maximizacao, pois a movimentacao em qualquer
de uma das direccoes iria diminuir o valor do custo. Desta forma, esta encontrada a solucao
optima que corresponde a (2, 6), como ja sabıamos atraves da resolucao do metodo grafico.
Observe na Fig. 9.4 que o metodo algebrico consistiu na deslocacao entre os vertices
possıveis percorrendo o caminho mais curto entre o valor inicial escolhido (0, 0) e o ponto
optimo - a deslocacao seguindo outra direccao teria levado a mais uma iteracao.
9.5. ALGORITMO SIMPLEX 85
9.5.4 Metodo Tabular
E possıvel sistematizar a resolucao algebrica do metodo simplex numa forma tabular ou matri-
cial, de forma a simplificar a resolucao do metodo, nomeadamente em termos de rearranjos das
equacoes aquando da substituicao das variaveis basicas.
A representacao tabular representa apenas a informacao essencial, como sejam: os coefici-
entes das variaveis, a solucao em termos dos valores dos constrangimentos; quais as variaveis
basicas utilizadas. Desta forma, a resolucao e simplificada pela forma como a informacao e
compactada e sistematizada. A logica de resolucao e a mesma da resolucao algebrica apresen-
tada na seccao anterior. A resolucao tabular vai ser apresentada atraves da resolucao do caso
4:
Tabela 9.1: Tabela inicial para o metodo simplex
Equacoes Variaveis Basicas Coeficientes Solucaox1 x2 x3 x4 x5
(9.10) x3 1 0 1 0 0 4(9.11) x4 0 2 0 1 0 12(9.12) x5 3 2 0 0 1 18(9.9) Z -3 -5 0 0 0 0
1. Escolha da solucao basica inicial – a escolha das variaveis x1 e x2 como variaveis nao
basicas, pelas razoes indicadas na seccao 9.5.3. Em seguida, preencher a forma tabular
inicial, tal como e apresentada na Tabela 9.1. verifique que a coluna valor indica o valor
da solucao basica (0, 0, 4, 12, 18);
2. Verificacao da localizacao do optimo – a corrente solucao basica e optima se e so se
todos os coeficientes da equacao referente a funcao de custo (equacao (9.9)) forem nao
negativos. Caso contrario, e necessario fazer uma nova iteracao;
3. Escolha da nova variavel basica – escolher a variavel com o maior valor absoluto na
equacao referente a funcao de custo. Esta e a coluna pivot. A variavel que entra e a
variavel x2;
86 CAPITULO 9. PROGRAMACAO LINEAR
Tabela 9.2: Escolha da nova variavel basica
Variaveis Basicas Coeficientes Solucaox1 x2 x3 x4 x5
x3 1 0 1 0 0 4x4 0 2 0 1 0 12/2=6x5 3 2 0 0 1 18/2=9Z -3 -5 0 0 0 0
4. Escolha da variavel que sai – pegue nos coeficientes da coluna pivot que sao estritamente
positivos. Divida cada um dos elementos da coluna ”Solucao” pelo coeficiente da coluna
pivot da mesma linha. Apos esta divisao, verifique qual o elemento da coluna ”Solucao”
que ficou com o menor valor. A linha desse elemento corresponde a variavel que vai
sair, neste caso a linha x4. Esta e a linha pivot. Verifique a Tabela 9.2. O numero
na interseccao da coluna com a linha pivot e o numero pivot. Visto que a linha pivot
corresponde a variavel x4, e esta a variavel basica que cede o lugar a variavel x2.
5. Calculo da nova solucao basica – O passo seguinte consiste em introduzir a nova variavel
basica x2, com a respectiva alteracao das equacoes. Isso e feito da seguinte forma:
(a) Substituir a variavel x4 pela variavel x1 na coluna das variaveis basicas;
(b) Dividir a linha pivot pelo numero pivot; Esta e a nova linha pivot (0, 1, 0, 1/2, 6).
(c) Para cada das outras linhas que tenha um coeficiente negativo na coluna pivot, somar
a esta linha o produto do valor absoluto desse coeficiente e da nova linha pivot.
Como a primeira linha e a unica que tinha um coeficiente negativo, −5, entao essa
linha e substituıda por: (somar a linha (−3,−5, 0, 0, 0, 0) + 5 ∗ (0, 1, 0, 1/2, 6) =
(−3, 0, 0, 5/2, 0, 30);
(d) Para cada uma das linha com coeficiente positivo, subtrair a esta linha o produto do
coeficiente com a nova linha pivot. Como existiam duas linhas com pivot positivo,
2 e 2, subtrair pela linha 2 ∗ (0, 1, 0, 1/2, 0, 6). Estas operacoes estao representadas
na Tabela 9.3, que conduzem a Tabela 9.4
A nova matriz e representada na Tabela 9.4.
9.5. ALGORITMO SIMPLEX 87
Tabela 9.3: Tabela intermedia da iteracao 1
Variaveis Basicas Coeficientes Solucaox1 x2 x3 x4 x5
x3 1 0 1 0 0 4x2 0 1 0 1/2 0 12/2=6x5 3− 2× 0 2− 2× 1 0− 2× 0 0− 2× 1/2 1− 2× 1 18− 2× 6 = 6Z −3 + 5× 0 −5 + 5× 1 0 + 5× 0 0 + 5× 1 0 + 5× 0 0 + 5× 6 = 30
Tabela 9.4: Tabela final da iteracao 1
Variaveis Basicas Coeficientes Solucaox1 x2 x3 x4 x5
x3 1 0 1 0 0 4x2 0 1 0 1/2 0 6x5 3 0 0 -1 1 6Z -3 0 0 5/2 0 30
6. Nova iteracao – como a equacao referente a funcao de custo ainda tem um coeficiente
negativo, esta ainda nao e a solucao optima. E necessario fazer uma nova iteracao, onde
a coluna pivot e a coluna correspondente a variavel x1, e a linha pivot e a referente a
linha de x5, com numero pivot igual a 3. O resultado da segunda iteracao e representada
nas tabelas 9.5 e 9.6. Apos esta iteracao, esta encontrado o optimo, pois ja nao ha ne-
nhuma direccao na funcao de custo que possa ser melhorado (todos os coeficientes sao
nao negativos).
Tabela 9.5: Tabela inicial da iteracao numero 2
Variaveis Basicas Coeficientes Solucaox1 x2 x3 x4 x5
x3 1 0 1 0 0 4x2 0 1 0 1/2 0 6x5 3 0 0 -1 1 6/3=2Z 3 0 0 5/2 0 30
88 CAPITULO 9. PROGRAMACAO LINEAR
Tabela 9.6: Tabela final da iteracao 2
Variaveis Basicas Coeficientes Solucaox1 x2 x3 x4 x5
x3 0 0 1 1/3 -1/3 2x2 0 1 0 1/2 0 6x1 1 0 0 -1/3 1/3 2Z 0 0 0 3/2 1 36
9.6 Exercıcios
Exercıcio 13 Para o Caso 4, verifique que o modelo de programacao linear verifica todos os
pressupostos.
Exercıcio 14 Uma empresa produz jogos de Xadrez, que contribuem com lucro 4 e de Damas,
que contribui com lucro 2 para a funcao de custo. Existem tres centros necessarios para a
producao: o Xadrez requer 6 horas no centro A e no centro B e 1 no centro C, enquanto que
as damas necessitam de 4 horas no centro A e 2 no centro B. A disponibilidade dos centros de
producao sao 120 no A, 72 no B e 10 no C. Determine qual a quantidade optima de cada jogo
de forma a maximizar o lucro da empresa.
Capıtulo 10
Pos-optimizacao e Analise de Sensibilidade
Apos a determinacao de uma solucao optima de um problema de programacao linear e possıvel
olhar para os resultados e extrair uma serie de conclusoes para alem do valor que as variaveis
de decisao devem tomar.
Em primeiro lugar, a modelacao como um problema de programacao linear pressupoe que
os diversos parametros sao constantes, como a contribuicao de cada produto para o lucro ou
a disponibilidade dos diversos recursos. O que acontecera entao se por acaso o departamento
de marketing descobrir que um dos produtos tera de ser vendido a um preco inferior? E se
por acaso se aumentar a disponibilidade de um determinado recursos, sera que o lucro final
aumentar? Quanto valera a pena pagar por esse aumento de recursos sem penalizar o lucro?
De forma a responder a estas respostas, nao e necessario re-optimizar todo o problema com
os novos valores dos parametros. A programacao linear permite que algumas destas questoes
sejam directamente respondidas so pela analise do resultado final do problema. Essas analises,
denominadas por analise de Pos-Optimizacao e de Sensibilidade, sao o assunto focado neste
capıtulo.
10.1 Analise Pos-Optimizacao
Os problemas de programacao linear podem ser interpretados como um problema de alocacao
de recursos a determinadas actividades. Em particular, quando os constrangimentos sao do
89
90 CAPITULO 10. POS-OPTIMIZACAO E ANALISE DE SENSIBILIDADE
tipo ≤, os coeficientes bi sao as quantidades disponıveis de cada recurso para realizar todas as
actividades. Estes coeficientes podem representar apenas uma estimativa inicial e podem ser
aumentados em detrimento da realizacao de outras actividades, caso haja indicadores fortes de
que a revisao destes valores trariam uma enorme vantagem em termos de lucros.
A analise da contribuicao economica dos recursos como medida de desempenho da funcao
de custo e entao extremamente util. Essa analise pode ser facilmente realizada atraves da analise
dos precos sombras.
Definicao 3 Preco Sombra
O preco sombra de um recurso i, e designado por y∗i mede a taxa a qe Z poderia ser aumen-
tada, atraves de um pequeno aumento da disponibilidade deste recurso bi.
O metodo simplex identifica estes precos sombras atraves dos coeficientes das variaveis
auxiliares na funcao de custo na tabela final. Para o caso 4 introduzido no Capıtulo 9, a tabela
final 9.6 indica como coeficientes das variaveis auxiliares x3, x4, x5 os valores y∗1 = 0, y∗2 =
32, y∗3 = 1. Recordando que as condicoes iniciais de disponibilidade de recursos eram b1 =
4, b2 = 12, b3 = 18, vamos observar o efeito na funcao de custo Z, caso houvessem pequenos
aumentos das disponibilidades bi. Na pratica estes precos indicam que:
• se a disponibilidade b1 fosse aumentada numa unidade, i.e. de 4 para 5, a funcao de custo
iria ficar na mesma (y∗1 = 0);
• se a disponibilidade b2 fosse aumentada numa unidade, i.e. de 12 para 13, a funcao de
custo Z iria aumentar y∗2 = 32, ou seja no final Z = 37, 5;
• se a disponibilidade b3 fosse aumentada numa unidade, i.e. de 18 para 19, a funcao de
custo Z iria aumentar y3∗ = 1, ou seja no final Z = 37;
Na Figura 10.1, e possıvel verificar graficamente as solucoes considerando o aumento de
disponibilidade dos recursos 2 e 3, de uma unidade.
Utilizando a representacao tabular, e possıvel verificar tambem estes valores de incremento
da funcao de custo. Se por exemplo, estivermos a analisar o recurso i = 2, cuja variavel auxiliar
10.1. ANALISE POS-OPTIMIZACAO 91
Figura 10.1: Solucao grafica considerando novas disponibilidades de recursos 4
e x4, basta considerar o aumento de uma unidade na disponibilidade para ver o aumento que
isso promove em Z. Isso pode ser feito da seguinte forma: pegamos na coluna final das solucoes
([2 6 2 3 6]T ) e adicionamos o incremento δ do recurso multiplicado pela coluna referente a esse
recurso. No caso, com δ = 1 e coluna de x4 = [1/3 1/2 − 1/3 1]T , obtemos
[2 6 2 36]T + 1× [1/3 1/2 − 1/3 3/2]T = [2.33 6.5 1.66 37.5]T (10.1)
Observe contudo que o aumento da disponibilidade dos recursos i = 2 ou i = 3 implica
que deixem de ser produzidos outros produtos. A questao que interessa agora analisar e se o
aumento de lucro de 1, 5 ou 1 unidades compensam a perda de lucro de produzir durante menos
uma hora os outros produtos que requerem as recursos i = 2 ou i = 3. Para essa analise, seria
necessario ter mais dados acerca do contributo dos outros produtos para o lucro da fabrica.
E possıvel ainda verificar que o recurso i = 1 nao esta a limitar em nada a producao de mais
produtos novos, pelo que se pode concluir de que ha um excesso de disponibilidade do recurso
1 - e o chamado recurso livre. Isto pode ser verificado na Tabela 9.6, pelo facto de o preco
sombra do recurso i = 1 ser nulo (y∗1 = 0). Ja os recursos 2 e 3 sao recursos escassos, pois
estao a ser explorados na sua maxima capacidade.
O preco sombra pode ser interpretado de outra forma. Se aumentado o recurso i = 2 numa
92 CAPITULO 10. POS-OPTIMIZACAO E ANALISE DE SENSIBILIDADE
unidade vai aumentar o lucro em 1.5, nao vale a pena aumentar a disponibilidade desse recurso
se custar mais do que 1.5 por unidade
10.2 Analise de sensibilidade
Como foi referido no Capıtulo 9, um dos pressupostos da programacao linear e a de que os
parametros sao constantes. No entanto, esse pressuposto e demasiado restritivo, visto que mui-
tas vezes os parametros se baseiam em estimativas que podem ter de ser revistas. Por exemplo,
quando se considera que o tempo de execucao de uma determinada actividade num determi-
nado recurso e aij , pode-se chegar a conclusao de que afinal a actividade demora mais tempo a
ser executada. Nestes casos, a solucao obtida pelo metodo simplex ja nao seria valida para os
recursos escassos.
E entao necessario entao, apos a obtencao da solucao optima, fazer uma analise de sensibili-
dade dos parametros. Uma analise de sensibilidade consiste em determinar quais os parametros
que nao podem ser alterados sem alterar a solucao optima, isto e, os parametros sensıveis. Es-
tes parametros tem de ser determinados com especial cuidado e durante a implementacao da
solucao, terao de ser monitorizados para garantir a implementacao da solucao correcta.
Os parametros sensıveis podem identificados atraves da resolucao do metodo simplex. Como
e evidente, os precos sombras positivos indicam que os parametros bi sao parametros sensıveis,em
especial aqueles cujos precos sombras sao bastante elevados.
Observe agora a Figura 10.2. Atraves da solucao do metodo grafico, e possıvel observar
tambem que o parametro c1 da funcao de custo Z, isto e a contribuicao para o lucro do pro-
duto A. Fazendo variar c1 no intervalo [0, 7.5], corresponde a variar a funcao de custo dentro
da regiao de solucoes possıveis definidas pelos constrangimentos funcionais. Observe que a
varicao deste parametro nao altera o valor da solucao optima (embora faca variar o custo final
obtido). Desta forma, c1 nao e um parametro sensıvel.
Da mesma forma, e facil verificar que a contribuicao para o custo do produto B, o coeficiente
c2, pode assumir qualquer valor acima de 2, como se pode verificar na Figura 10.3. Para c2 =∞,
a funcao de custo tenderia para a recta x2 = 6. Pelo que o este coeficiente nao e sensıvel.
10.2. ANALISE DE SENSIBILIDADE 93
Figura 10.2: Solucao grafica considerando diferentes contribuicoes para o lucro do produto A 4
Figura 10.3: Solucao grafica considerando diferentes contribuicoes para o lucro do produto B 4
94 CAPITULO 10. POS-OPTIMIZACAO E ANALISE DE SENSIBILIDADE
Falta entao analisar os coeficientes aij . Para estes, a forma mais facil de verificar a sua
sensibilidade, e a de verificar se pertencem a um constrangimento que passa pelo ponto optimo.
Desta forma, se houver uma pequena variacao do parametro a11 = 4 e a12 = 0, a solucao
optima nao se vai alterar. No entanto, para os coeficientes a21 = 0, a22 = 2, a31 = 3, a32 = 2,
qualquer pequena mudanca pode reflectir uma variacao no ponto optimo, visto que definem os
constrangimentos cuja interseccao define o ponto optimo.
De uma forma geral, as variacoes dos parametros do tipo bi e cj sao mais importantes do
que as variacoes dos parametros aij , visto que estes sao parametros tecnologicos e por isso mais
faceis de estimar do que os os outros parametros, que definem parametros do tipo comercial.
Tambem e possıvel fazer esta analise de sensibilidade atraves da tabela. Para observar o
quanto pode variar o recurso i = 2 (referente a x4) sem alterar o problema, podemos aplicar o
mesmo raciocınio que o aplicado na expressao 10.1, mas onde a variacao da disponibilidade e
a incognita:
[2 6 2]T + θ2 × [1/3 1/2 − 1/3]T = [2 + θ2/3 6 + θ2/2 2− θ2/3]T (10.2)
Daqui se conclui que−6 < θ2 < 6. Ao aplicarmos esta variacao ao constrangimento do recurso
i = 2, cuja a equacao era 2x2 + x4 = 12, obtemos que 3 < x2 < 9. Se observar o grafico 9.3,
esses sao os limites para que a solucao se encontre dentro do domınio valido de solucoes.
10.3 Exercıcios
Exercıcio 15 Faca a analise pos-optimizacao do Exercıcio 14.
Exercıcio 16 Faca a analise de sensibilidade do Exercıcio 14.
Capıtulo 11
Problemas de Transportes eEscalonamento
Alguns dos problemas tıpicos de optimizacao que podem ser modelados como problemas de
programacao linear tem algumas caracterısticas especiais que levam a que a sua resolucao possa
utilizar outro tipo de algoritmos. Isto nao significa que os problemas nao possam ser resolvidos
aplicando as metodologias introduzidas nos capıtulos anteriores. No entanto, devido as tais
caracterısticas, e possıvel definir algoritmos mais especıficos que conduzem a uma solucao
desses problemas de uma forma mais expedita do que o metodo simplex.
Neste capıtulo, sao introduzidos dois desses tipos de problemas de programacao linear
atraves da resolucao de dois casos: o problema de transporte e o problema de escalonamento,
tambem chamado de afectacao. Sao ainda introduzidos alguns dos algoritmos que podem ser
aplicados a sua resolucao.
11.1 O problema de transporte
Considere o seguinte problema de optimizacao:
95
96 CAPITULO 11. PROBLEMAS DE TRANSPORTES E ESCALONAMENTO
Caso 5 Problema de TransporteConsidere uma empresa que produz ervilhas em lata em tres fabricas diferentes eque depois as envia para quatro armazens de distribuicao espalhados pelo paıs.A producao do proximo ano de cada fabrica, bem como as quantidades que vaoser alocadas a cada armazem, foram ja determinadas. Estes dados encontram-serepresentados na Tabela 11.1.Os custos de transporte sao muito elevados e por isso foi inicializado um estudo deforma a optimizar os custos de distribuicao.
Tabela 11.1: Dados iniciais do caso 5
Fabricas Custos Transporte OfertaArmazens
1 2 3 4
1 464 513 654 867 752 352 416 690 791 1253 995 682 388 685 100
Procura 80 65 70 85 300
O problema descrito no caso 5 e um problema que pode ser modelado atraves da programacao
linear:
Minimizar Z = 466x11 + 513x12 + 654x13 + 867x14 (11.1)
+352x21 + 416x22 + 690x23 + 791x24 (11.2)
+995x31 + 682x32 + 388x33 + 685x34
com constrangimentos x11 + x12 + x13 + x14 = 75
x21 + x22 + x23 + x24 = 125
x31 + x32 + x33 + x34 = 100
x11 + x21 + x31 = 80
x12 + x22 + x32 = 65
x13 + x23 + x33 = 70
x14 + x24 + x34 = 80
11.1. O PROBLEMA DE TRANSPORTE 97
xij ≥ 0, (i = 1, 2, 3; j = 1, 2, 3, 4)
Este problema apresenta uma estrutura muito especial de problemas de programacao linear,
porque todos os seus constrangimentos funcionais sao de igualdade. Este tipo de problemas
designa-se por problemas de transporte, nao pelo contexto em si, mas pela estrutura especial que
ele apresenta, o que leva a que possam ser aplicados metodologias de optimizacao directamente
vocacionadas para este problema, para alem do metodo simplex. A proxima seccao descreve a
estrutura deste tipo de problemas, denominados por problemas de transporte.
11.1.1 Modelacao do Problema
Um problema de transporte consiste em determinar a distribuicao de comodidades de um grupo
de m centros de distribuicao i, chamados de fontes, para um grupo de n centros de recepcao j,
chamados de destinos, de forma a minimizar os custos de transporte.
Cada fonte i tem uma determinada quantidade si de comodidades disponıveis e cada destino
j requer uma certa dj quantidade de comodidades. Estas quantidades sao consideradas constan-
tes, por isso, para haver solucao ao problema, a quantidade de comodidades produzidas tem de
ser igual a quantidade de comodidades desejadas, ou seja a oferta tem de ser igual a procura:
n∑i=1
si =n∑
j=1
dj (11.3)
Em casos reais, as quantidades disponıveis podem ser quantidades maximas e as quantidades
desejadas podem ser quantidades mınimas. Nesses casos podem ser introduzidos fontes ou
destinos virtuais, de forma a absorver as quantidades excedentes.
Em relacao aos custos de transporte de uma fonte para um destino, e necessario que sejam
proporcionais ao numero de unidades distribuıdas.
Desta forma, qualquer problema que possa ser descrito atraves de quantidades produzidas
na fonte, quantidades desejadas nos destinos, custos de transporte entre fontes e destinos e que
98 CAPITULO 11. PROBLEMAS DE TRANSPORTES E ESCALONAMENTO
respeite a expressao (11.3), pode ser modelado como um problema de transporte, ainda que o
contexto nao seja esse.
Para resolver um problema de transporte basta entao construir uma tabela do tipo da repre-
sentada na Tabela 11.1, cuja representacao generica e indicada na Tabela 11.2.
Tabela 11.2: Problema de Transporte
Fontes Custos Transporte OfertaArmazens
1 2 . . . n
1 c11 c12 . . . c14 s1
2 c21 c22 . . . c24 s2
. . . . . . . . . . . . . . ....
m cm1 cm2 . . . cmn sm
Procura d1 d2 . . . dn
Em termos matematicos, este tipo de problemas pode ser representado na forma
Minimizar Z =∑m
i=1
∑nj=1 cijxij (11.4)
com constrangimentos∑n
j=1 xij = si, for i = 1, 2, . . . ,m∑mi=1 xij = dj, for j = 1, 2, . . . , n
xij ≥ 0, (i = 1, 2, . . . ,m; j = 1, 2, . . . , n)
No caso de as quantidades serem definidas como inteiros, as quantidades distribuıdas xij
necessitam tambem de ser inteiros. No entanto, para este tipo de problemas e possıvel provar
de que as solucoes basicas sao inteiras quando as quantidades sao tambem inteiras.
Como este tipo de problemas pode ser modelado como um problema de programacao linear,
e possıvel resolve-los utilizando o metodo simplex. Contudo, o facto de os problemas de trans-
porte terem uma estrutura especial permite-nos simplificar a utilizacao do metodo simplex. Este
metodo simplificado e denominado aqui por metodo simplex para problemas de transporte.
11.1. O PROBLEMA DE TRANSPORTE 99
11.1.2 Metodo simplex para problemas de transporte
O metodo de simplex para transportes segue a mesma estrutura basica do metodo simplex, ou
seja:
1. Escolha da solucao basica inicial – esta escolha pode ser feita atraves de diversos
metodos, como o canto noroeste ou o metodo do custo mınimo;
2. Verificacao do optimo – consiste em verificar se a solucao encontrada e optima
3. Determinacao de uma nova solucao – a nova solucao basica e escolhida atraves do
metodo caminho das pedras. Embora a explicacao dada aqui nao incida sobre estes de-
talhes, este algoritmo procede a escolha da variavel nao basica que entra, a escolha da
variavel basica que sai, a determinacao do passo de optimizacao, etc.
De uma forma mais pratica, observemos entao como podemos resolver o problema da Caso
5, cujos dados sao representados atraves da tabela 11.1.
11.1.3 Escolha da solucao inicial pelo canto Noroeste
Este passo consiste em calcular uma nova tabela com uma solucao basica. Para isso, pegamos
numa tabela vazia e na celula do canto superior esquerdo (canto noroeste) aplicamos o valor
mınimo entre o valor de oferta e da procura (que neste caso sao 80 e 75). O valor escolhido para
essa celula e nesse caso 75. Em seguida existem duas possibilidades:
1. Como a oferta e menor do que a procura, temos de atribuir o que falta da procura, a partir
da fonte seguinte, ou seja, a celula xi+1,j = x21 e preenchida com o valor que falta para
atingir a procura desse centro (coluna), que e 5;
2. Caso a oferta fosse maior que a procura, o excesso da oferta seria cedido ao proximo
destino seguinte, ou seja, a celula xi,j+1 = x12 e que iria receber o excesso da oferta;
Agora e seguir sempre este raciocınio. A celula x21 foi preenchida com o valor 5 a partir
dos 125 items disponıveis da fabrica i = 2. E necessario agora atribuir o resto da oferta, pelo
100 CAPITULO 11. PROBLEMAS DE TRANSPORTES E ESCALONAMENTO
que estamos na condicao 2. Entao, atribuımos o resto da oferta a celula x22, que so pode receber
65, a procura do armazem j = 2. Sobram entao 55 unidades, que mais uma vez sao atribuıdas
a celula xi,j+1 = x23. Faltam agora 15 unidades para satisfazer a procura do centro j = 3, pelo
que vamos atribuir a celula xi+1,j = x33 a quantidade 15 da fabrica i = 3. A restante oferta da
fabrica i = 3 e oferecida ao centro j = 4, ou seja, 85 items. Este passo inicial esta indicado na
Tabela 11.3.
Tabela 11.3: Inicializacao do Caso 5
Fabricas Custos Transporte OfertaArmazens
1 2 3 4
1 75 752 5 65 55 1253 15 85 100
Procura 80 65 70 85 300
O proximo passo consiste em verificar se a solucao encontrada e optima. A solucao atraves
da heurıstica do canto noroeste nao e em geral optima. Este metodo nao leva em conta os custos
de cada atribuicao, apesar de ser muito facil de implementar computacionalmente.
11.1.4 Metodo do caminho das pedras
Este metodo permite nao so verificar se a solucao basica e optima como ainda determinar uma
nova solucao basica. O seu nome deriva do facto de o metodo percorrer ciclos na tabela, efectu-
ando saltos sobre as celulas ocupadas (designadas por agua), como se faz ao atravessar um lago
atraves de um caminho de pedras.
O algoritmo e entao o seguinte:
1. Escolher celula vazia – a escolha e arbitraria, podemos comecar por escolher a celula
x21
2. Identificar caminho fechado que conduz a celula – Um caminho fechado consiste em
linhas horizontais e verticais que partem da celula vazia e regressam a mesma. So existe
11.1. O PROBLEMA DE TRANSPORTE 101
um caminho fechado para cada celula vazia. No caminho fechado so pode existir a celula
vazia que estamos a examinar. Neste caso o caminho fechado e x21 → x11 → x12 →x22 → x12. Note que cada passo do ciclo consiste em mover unidades de uma celula para
outra. Desta forma a cada passo corresponde alternadamente o valor de + e de −. A
Tabela 11.4 representa o caminho determinado, com os respectivos custos associados.
Tabela 11.4: Identificacao do caminho fechado 5
Fabricas Custos Transporte OfertaArmazens
1 2 3 4
1 ↓ (−464) ← (+513) 752 → (+352) ↑ (−416) 1253 100
Procura 80 65 70 85 300
3. Verificacao do optimo Determinar o custo δij de mover uma unidade proveniente de uma
celula de canto para a celula vazia. Neste caso, e por observacao da Tabela 11.4, o custo
δ12 de carregar a celula x12 e dado por δ12 = 513 − 464 + 352 − 416 = −15. O facto
de δij < 0 indica que pode haver uma diminuicao do custo por ocorrer a rotacao de carga
definida pelo ciclo; caso contrario, o custo aumenta. Por este motivo, so estamos perante
uma solucao optima caso qualquer rotacao de carga leve ao aumento de custos, isto e
todos os δij > 0. Como existem 6 celulas vazias, e necessario verificar o caminho para
cada uma delas:
δ12 = 513− 464 + 352− 416 = −15 (11.5)
δ13 = 654− 464 + 352− 690 = −148
δ14 = 867− 464 + 352− 690 + 388− 685 = −232
δ24 = 791− 685 + 388− 690 = −196
δ31 = 995− 352 + 690− 388 = 945
δ32 = 682− 416 + 690− 388 = 568
102 CAPITULO 11. PROBLEMAS DE TRANSPORTES E ESCALONAMENTO
4. Escolha da nova solucao basica – A melhor solucao basica consiste na rotacao que
introduzir a maior reducao de custo, ou seja, o caminho a que corresponder o menor δij .
Entao, a nova solucao consiste em efectuar a rotacao como maior numero possıveis de
unidades. Neste caso, estamos a falar da celula x14. O caminho desta celula e indicado
na Tabela 5.5 As celulas com valor positivo recebem carga, as celulas com valor negativo
Tabela 11.5: Identificacao do caminho fechado com maior reducao de custo 5
Fabricas Custos Transporte OfertaArmazens
1 2 3 4
1 ↓ (−464) ← ← ← (+867) 752 → (+352) → ↓ (−690) ↑ 1253 → (+388) ↑ (−685) 100
Procura 80 65 70 85 300
perdem carga. O maximo possıvel de carga a rodar e o valor mınimo das celulas que vao
ceder carga (ou seja as que tem valor -). As celulas com valores negativos sao x11 =
75, x23 = 55, x34 = 85, pelo que a carga que vai rodar e 55. A nova solucao basica e
entao representada na Tabela 11.6 Esta nao e ainda a solucao final. Era por isso necessario
Tabela 11.6: Rotacao de carga 5
Fabricas Custos Transporte OfertaArmazens
1 2 3 4
1 20 55 752 60 65 0 1253 70 30 100
Procura 80 65 70 85 300
continuar a aplicar o metodo ate se atingir a solucao representada na Tabela 11.7
Em conclusao, a aplicacao do metodo simplex aos problemas de transporte pode ser repre-
sentado pelo seguinte algoritmo:
11.2. PROBLEMA DE ESCALONAMENTO 103
Tabela 11.7: Identificacao do caminho fechado 5
Fabricas Custos Transporte OfertaArmazens
1 2 3 4
1 0 20 55 752 80 45 0 1253 70 30 100
Procura 80 65 70 85 300
Algorithm 2 Metodo simplex para problemas de transporteDeterminacao da solucao inicial (metodo canto noroeste ou outro)Determinar cicloswhile Solucao6= Optimo do {Metodo das pedras}
Escolher ciclo que minimiza o custoRodar cargaDeterminar ciclos
end while
11.2 Problema de Escalonamento
Considere agora um outro problema de optimizacao:
Caso 6 Problema de EscalonamentoUma fabrica comprou tres maquinas de tipos diferentes. Existem quatrolocalizacoes possıveis para instalar as maquinas. Algumas destas localizacoes saomais desejaveis do que outras para algumas das maquinas, dependendo do roteirode producao. Assim, se uma das novas maquinas vai receber muito material de umadeterminada maquina e pouco de outra, e melhor localizar a nova maquina pertoda primeira, de forma a poupar nos tempos de transporte entre maquinas. O ob-jectivo e determinar qual das combinacoes possıveis de localizacao das maquinas(12), minimiza os tempos (ou custos) de transporte de material entre as diversasmaquinas. Os custos de transporte entre maquinas sao indicados na Tabela 11.8.
O problema de escalonamento e um tipo especial de problema de optimizacao onde recursos
sao afectados para realizar tarefas. Os recursos podem ser trabalhadores, maquinas, veıculos,
ou ainda intervalos de tempo. Estes problemas podem tambem ser chamados de problemas de
afectacao.
104 CAPITULO 11. PROBLEMAS DE TRANSPORTES E ESCALONAMENTO
Tabela 11.8: Problema de optimizacao do Caso 6.
LocalizacaoMaquina 1 2 3 4
1 13 16 12 112 15 - 13 203 5 7 10 6
Num problema de escalonamento, o numero de recursos e tarefas e o mesmo e designa-
se por n. Cada recurso so pode realizar uma so tarefa e cada tarefa so pode ser realizada
por um recurso. A atribuicao de uma tarefa a determinado recurso tem um custo cij, i =
1, 2, . . . , n; j = 1, 2, . . . , n. O objectivo e determinar como devem ser escalonados as n tarefas
de forma a minimizar os custos.
Para que o problema descrito no caso 6 seja descrito como um problema de escalonamento, e
necessario introduzir uma maquina virtual, de forma a que o numero de maquinas e localizacoes
seja igual. Mais ainda, visto que o custo de localizar a maquina 2 na localizacao 2 nao e
definido, pois a maquina 2 nao pode ser la colocada, e necessario considerar um custo fictıcio
M de tal forma elevado que nenhuma solucao levara em conta esta possibilidade. A Tabela 11.9
representa entao o caso 6 numa forma de problema de escalonamento.
Tabela 11.9: Problema de Escalonamento
LocalizacaoMaquina 1 2 3 4
1 13 16 12 112 15 M 13 203 5 7 10 6
”4” 0 0 0 0
A formulacao matematica deste problema e feita da seguinte forma. Seja xij uma variavel
binaria que indica se a tarefa i foi alocada ao recurso j (xij = 1) ou nao (xij = 0). Entao, o
problema pode ser descrito por:
Minimizar Z =∑m
i=1
∑nj=1 cijxij (11.6)
com constrangimentos∑n
j=1 xij = 1, for i = 1, 2, . . . , n
11.2. PROBLEMA DE ESCALONAMENTO 105
∑mi=1 xij = 1, for j = 1, 2, . . . , n
xij ≥ 0, (i = 1, 2, . . . , n; j = 1, 2, . . . , n)
xij ∈ 0, 1
Compare esta formulacao com o problema de transporte generico, a parte do facto de a
variavel xij ser binaria para o problema de escalonamento. As estruturas de ambos os tipos
de problema sao bastante semelhantes, pois tambem aqui os constrangimentos funcionais sao
apenas de igualdade. De facto, se considerarmos m = n e dj = sj = 1, entao o problema de
escalonamento e um problema de transporte. Como dj e sj sao inteiros, entao xij sao inteiros,
por isso podemos eliminar a restricao de que xij e uma variavel binaria. Entao o problema de
escalonamento pode ser resolvido como um problema de transporte e por isso resolvido pelo
metodo do simplex para transporte.
No entanto, o facto de a cada no fonte estar directamente associado um no destino, torna o
problema ainda mais simples e e possıvel aplicar um outro algoritmo de optimizacao especıfico
para problemas de escalonamento, designado por metodo hungaro.
11.2.1 Algoritmo Hungaro
Este algoritmo opera directamente sobre a tabela de custos do problemas, representada pela
Tabela 11.9. Esta tabela vai ser transformada iterativamente numa tabela final so com zeros e
elementos positivos, onde a localizacao do zero indica qual o recurso que foi afectado para de-
terminada actividade. Desta forma, a solucao final e atingida quando for obtida uma tabela com
um zero por cada coluna e por cada linha. Este algoritmo baseia-se na propriedade algebrica de
que a cada linha e coluna da matriz poderem ser adicionados numeros sem realmente os alterar.
O metodo processa-se entao da seguinte forma:
1. Reducao de linha – a cada linha subtrai-se o seu valor mınimo, de forma a obter pelo
menos um zero em cada linha;
106 CAPITULO 11. PROBLEMAS DE TRANSPORTES E ESCALONAMENTO
2. Reducao de coluna – a cada coluna da nova matriz subtrai-se o seu valor mınimo, de
forma a obter pelo menos um zero em cada coluna;
3. Verificacao do optimo – se so existir um zero por linha e um zero por coluna, entao esta
encontrada a solucao optima. Caso contrario, e necessario proceder para o caso seguinte;
4. Criacao de zeros adicionais – a ideia e adicionar zeros sem criar elementos negativos na
matriz de custos. Para isso, em vez de subtrairmos uma constante de uma so linha e/ou
coluna, somamos ou subtraımos uma constante a uma combinacao de linhas e colunas.
Essa combinacao resulta do seguinte algoritmo:
(a) marcar as linhas e colunas de uma forma que abranja todos os zeros;
(b) Escolher o elemento mınimo da tabela que nao foi marcado no passo anterior e
subtrair a toda a tabela;
(c) De forma a restaurar todos os elementos nao modificados, somamos o numero sub-
traıdo anteriormente a cada interseccao de linhas e colunas que estavam marcadas.
Daqui voltamos ao passo de verificacao do optimo.
A forma generica do algoritmo e entao a seguinte:
Algorithm 3 Metodo hungaroReducao LinhaReducao Colunawhile Solucao 6= Optimo do {Criacao zeros}
Marcar linhas e colunasSubtrair elemento mınimo da tabelaRestaurar elementos nao modificados
end while
Observe agora a aplicacao do algoritmo ao Caso 6. Para este caso, a aplicacao da reducao
de linha resolve logo o problema, como se pode verificar na Tabela 11.10. Note que o elemento
M , pelo facto de ser um valor muito elevado nao se altera.
Em geral, os problemas sao bem mais complexos. Considere entao um qualquer problema
de escalonamento com a Tabela de Custos indicada na Tabela 11.11, onde existem 4 tarefas e 5
11.2. PROBLEMA DE ESCALONAMENTO 107
Tabela 11.10: Passo 1 do metodo hungaro
1 2 3 4 Operacao
1 2 5 1 0 -112 2 M 0 7 -133 0 2 5 1 -5
”4” 0 0 0 0 -0
Tabela 11.11: Tabela de Custos do Problema de Escalonamento 2
LocalizacaoMaquina 1 2 3 4 ”5”
1 820 810 840 960 02 820 810 840 960 03 800 870 M 920 04 800 870 M 920 05 740 900 810 840 M
recursos, sendo por isso necessario criar um recurso fictıcio, por forma a manter a estrutura de
um problema de escalonamento.
Apos a aplicacao da reducao de linhas e colunas, obtemos a matriz representada na Tabela
11.12.
Tabela 11.12: Problema de Escalonamento 2, apos a reducao de linhas e colunas
LocalizacaoMaquina 1 2 3 4 ”5”
1 80 0 30 120 02 80 0 30 120 03 60 60 M 80 04 60 60 M 80 05 0 90 0 0 M
Esta matriz nao e ainda a matriz da solucao final, pois existem linhas e/ou colunas com
mais do que um zero. E entao necessario aplicar o passo de criacao de zeros. O primeiro passo
consiste na marcacao de linhas, representado na Tabela 11.13.
Apos a marcacao das linhas e colunas, e entao efectuada a subtraccao do elemento mınimo
108 CAPITULO 11. PROBLEMAS DE TRANSPORTES E ESCALONAMENTO
Tabela 11.13: Problema de Escalonamento 2, apos a marcacao de linhas
LocalizacaoMaquina 1 2 3 4 ”5”
1 80 0 30 120 02 80 0 30 120 03 60 60 M 80 04 60 60 M 80 05 0 90 0 0 M
da tabela (30) aos elementos nao marcados e soma-se esse valor aos elementos no cruzamento
de linhas e colunas marcadas. A tabela obtida e a representada na Tabela 11.14.
Tabela 11.14: Problema de Escalonamento 2, apos o reajustamento dos coeficientes
LocalizacaoMaquina 1 2 3 4 ”5”
1 50 0 0 90 02 50 0 0 90 03 30 60 M 50 04 30 60 M 50 05 0 120 0 0 M
Esta matriz nao e ainda uma solucao final, pelo que e necessario realizar mais uma iteracao.
A tabela que contem a solucao final e a tabela 11.15:
Tabela 11.15: Solucao final do Problema de Escalonamento 2
LocalizacaoMaquina 1 2 3 4 ”5”
1 50 0 0 90 02 50 0 0 90 03 0 30 M 20 04 0 30 M 20 05 0 120 0 0 M
11.3. EXERCICIOS 109
11.3 Exercıcios
Exercıcio 17 Considere a fabrica de xadrez do Problema 14. Esta fabrica esta incluıda numa
rede de 4 fabricas para as quais ja foi determinada a producao referente ao proximo ano. A
producao e escoada para 4 fornecedores. Os custos de transporte associado a este problema
sao os representados na Tabela 17. Determine a solucao que minimiza os custos de distribuicao.
Tabela 11.16: Custos do Exercıcio 17
Fabricas Custos Transporte OfertaArmazens
1 2 3 4
1 25 35 36 60 152 55 30 45 38 163 40 50 26 65 144 60 40 66 27 11
Procura 10 12 15 9 300
Exercıcio 18 Considere o problema de desenho das instalacoes hospitalares. Existem 5 servicos
nas urgencias (Analises, Raio-X, Ortopedia, Espera, Atendimento) e 5 localizacoes possıveis
para eles. A Tabela 18 indica os fluxos por hora entre os diversos servicos. Determine a
localizacao de cada servico de forma a minimizar o fluxo dos doentes dentro das urgencias.
Tabela 11.17: Localizacao dos servicos nas urgencias de umvhospital
LocalizacaoServico 1 2 3 4 ”5”
1 5 6 4 8 32 6 4 9 8 53 4 3 2 5 44 7 2 4 5 35 3 6 4 5 5
110 CAPITULO 11. PROBLEMAS DE TRANSPORTES E ESCALONAMENTO
Capıtulo 12
Problemas de Optimizacao em Grafos
No Seculo XVIII, o matematico Euler desenvolveu um novo paradigma de representacao de
problemas de optimizacao, ao tentar solucionar um enigma muito em voga na altura: seria
possıvel visitar todos os bairros de uma cidade alema dividida por diversos canais, atravessando
apenas uma vez cada uma das 7 pontes existentes na cidade.
A solucao deste problema foi descoberta recorrendo a um grafo para representar o problema.
Isto porque os grafos permitem nao so visualizar e conceptualizar diversos tipos de problema
de uma forma simples e intuitiva. Esta ferramenta e tao poderosa que e hoje utilizada para
representar problemas de engenharia, economia, sociologia, etc.
Em termos de optimizacao, a representacao dos problemas em grafos permitiu modelar
problemas muito mais complexos do que aqueles possıveis de representar com a programacao
linear e que melhor representam a complexidade dos problemas de optimizacao actuais.
Neste capıtulo sao introduzidos os conceitos basicos da teoria de grafos e os tipos mais
comuns de problemas de optimizacao em grafos. Para isso, e introduzido um novo caso, descrito
seguidamente.
111
112 CAPITULO 12. PROBLEMAS DE OPTIMIZACAO EM GRAFOS
Figura 12.1: Representacao do espaco de solucoes possıveis do caso 7
Caso 7 Problema do ParqueConsidere um parque florestal de observacao de fauna e flora. As visitas ao parquesao organizadas pelo parque em pequenos jeeps, que visitam 6 pontos de interesse.Na Figura 12.1 e representada nao so a localizacao entre esses pontos, bem comoas distancias entre eles. As distancias sao indicadas tambem na Tabela 12.1. O no0 corresponde a recepcao do parque.A direccao do parque tem tres problemas de planeamento entre maos, que consistemem determinar:
1. caminho mais curto entre os diversos pontos de observacao, de forma a mi-nimizar o tempo de cada visita (e consequentemente maximizar o numero devisitas)
2. ligar todos os nos entre si telefonicamente utilizando a menor distanciapossıvel, visto que instalacao e cara e ambientalmente agressiva;
Tabela 12.1: Dados iniciais do caso 7
Nos 0 1 2 3 4 5 6
0 0 2 5 4 - - -1 2 0 2 - 7 - -2 5 2 0 1 4 3 -3 4 - 1 0 - 4 -4 - 7 4 - 0 1 55 - - 3 4 1 0 76 - - - - 5 7 0
12.1. DEFINICOES BASICAS 113
12.1 Definicoes Basicas
As definicoes basicas de grafo sao:
• Grafo – e um conjunto de pontos e de elos de ligacao entre cada par de pontos;
• Nos – e um ponto do grafo. Pode tambem ser designado por vertice;
• Arcos – e o elo de ligacao entre cada dois nos do grafo. Pode tambem ser designado por
aresta;
• Arco Directo – quando um arco indica uma direccao definida entre dois pontos. Um arco
directo entre os nos i e j indica que o arco (i, j) so pode ser atravessado no sentido de i
para j;
• Arco Indirecto – quando o arco (i, j) pode ser atravessado em qualquer dos sentidos, o
arco diz-se indirecto.
• Caminho – e uma sequencia de arcos a ligar os nos i e k. No caso de k = i, diz-se que o
caminho e fechado ou e um ciclo. O caminho pode ser directo ou indirecto;
• Conexo – um grafo diz-se conexo se todos os nos estao ligados entre si;
• Arvore – e uma grafo directo que nao contem ciclos indirectos. Se a arvore contiver todos
os nos, a arvore diz-se geradora;
12.2 Problema do Caminho Mais Curto
Considere um problema que pode ser modelado por um grafo indirecto e conexo. Cada no
corresponde a uma localizacao que e necessario visitar, sendo possıvel definir um no inicial e
um no final (que podem ate ser o mesmo, caso em que o caminho e um ciclo). O custo de
viajar entre cada par de nos esta associado ao arco respectivo. O problema de determinar a
distancia mınima a percorrer de forma a visitar todos os nos sem repetir nenhum, e denominado
genericamente como problema de optimizacao do caminho mais curto num grafo.
114 CAPITULO 12. PROBLEMAS DE OPTIMIZACAO EM GRAFOS
Este e o problema 1 referido no caso 7 e representado na Figura 12.1, para n = 7 nos. Caso
o grafo fosse conexo, existiriam 360 possibilidades diferentes caso existissem todos os arcos. O
facto de o grafo nao ser conexo torna-o mais simples, ou seja, existem menos possibilidades.
Genericamente, para um grafo conexo e indirecto de n nos, existem (n − 1)!/2 caminhos
possıveis, que correspondem a todas as combinacoes possıveis de sequencias de visitas. Caso
os arcos nao sejam indirectos ou que a cada direccao correspondam a custos diferentes, entao
existem (n − 1)! combinacoes possıveis. Para problemas com n = 50, terıamos mais de 1062
possibilidades. Para compreender a dimensao deste valor, saiba que o numero de litros de
agua no planeta terra esta estimado em 1021, ou que o Big-Bang ocorreu a 1020 segundos atras
- mesmo que tivesse um computador que testasse 1000 combinacoes por segundo, imagine
quando tempo iria passar ate testar todas as possibilidades.
Exemplo 18 Problema do Caixeiro ViajanteConsidere que um caixeiro viajante na cidade I precisa de visitar n cidades eregressar a cidade original. A determinacao do caminho mais curto e conhe-cido como o problema do caixeiro viajante. Este problema modela problemastao diferentes como a determinacao do caminho a percorrer por uma empresa dedistribuicao (correio ou outras), ou ainda o layout dos componentes de uma placade circuito impresso, de forma a minimizar o circuito de ligacao entre os compo-nentes (para minimizar resistencia). E normal um problema de caixeiro viajante ter1000 ou mais nos.
Visto que nao e possıvel testar todas as possibilidades de forma a determinar a melhor
solucao, ha que utilizar metodos de optimizacao que determinem a solucao em tempo util.
Qualquer algoritmo que consista na utilizacao de regras empıricas para determinar a solucao
pode ser chamado de Heurıstica. Estes metodos nao garantem que a solucao seja optima.
Para este tipo de problemas, a heurıstica mais simples e a heurıstica do no mais proximo.
Esta heurıstica pode ser sistematizada da seguinte forma:
No caso de problemas onde o no inicial pode ser qualquer ponto, a solucao final desta
heurıstica vai depender do no original.
Este tipo de heurısticas e denominada de ”gananciosas” (por traducao do ingles greedy),
pois procuram o no ”mais” perto (ou seja, com menor custo).
12.3. PROBLEMA ARVORE GERADA MINIMA 115
Algorithm 4 Heurıstica do no mais proximoEscolher no inicialActualizar lista dos nos ja escolhidosfor i=2:n do
Escolher no que fica a menor distancia do no actual, entre os nos que nao foram visitadosSeguir para o proximo noActualizar lista de nos visitados
end for
Exemplo 19 Para o problema 1 do caso 7, a solucao obtida pela heurıstica do nomais proximo e {0, 1, 2, 3, 5, 4, 6, } e volta pelo mesmo caminho.
12.3 Problema Arvore gerada mınima
Este tipo de problemas e semelhante aos problemas de caminho mais curto. Tambem aqui,
existe um grafo indirecto e o objectivo e determinar um caminho mais curto. A unica diferenca,
e que nos problemas de arvore gerada mınima e apenas necessario garantir que existe um arco
entre cada dois nos, isto e escolher os (n− 1) arcos que minimizam o problema.
De forma a melhor compreender a diferenca para o problema de caminho mais curto, ob-
serve a Figura 12.2. Note que na solucao do problema 1, e possıvel ir da recepcao do parque
(no 0) a todos os nos e voltar. Na solucao do problema 2, todos os nos estao ligados entre si.
No entanto, esta nao poderia ser a solucao do problema 1, visto que ha repeticao.
Este e o problema que modela o desenho de redes de telecomunicacoes (fibra-optica, tv-
cabo, etc), redes de transportes, redes electricas, redes de gas, etc.
Este e um dos poucos problemas de optimizacao em grafos onde uma heurıstica do tipo
greedy leva a obtencao de uma solucao optima. O algoritmo para este tipo de problemas e:
Neste tipo de problemas, a escolha do no inicial nao e relevante.
116 CAPITULO 12. PROBLEMAS DE OPTIMIZACAO EM GRAFOS
(a) Solucao do Problema 1 (b) Solucao do Problema 2
Figura 12.2: Solucoes para os problemas do Caso 7
Algorithm 5 Heurıstica do no mais proximoEscolher no inicialActualizar lista dos nos ja escolhidosfor i=2:n do
Escolher no que fica a menor distancia de qualquer no escolhido, entre os nos que naoforam visitadosActualizar lista de nos visitados
end for
12.4 Problema de Minimizacao do Fluxo
Todos os outros tipos de problema introduzidos anteriormente, como o caminho mais curto,
ou a minimizacao da arvore gerada, ou ainda os problemas de transporte e escalonamento in-
troduzidos no capıtulo 11 sao casos particulares do problema de minimizacao de fluxo. Este
problema pode ser modelado tambem como um problema de programacao linear e resolvido
pelo metodo simplex aplicado em grafos.
O problema de minimizacao de fluxo e um problema onde o grafo e directo e conexo em
que pelo menos um dos nos e o no fonte e outro no e o no de destino. Se a ligacao entre
arcos e indirecta, entao tem de ser representada por dois arcos directos em direccoes opostas.
Cada arco e caracterizado por uma capacidade maxima de fluxo e o custo do fluxo nesse arco
e proporcional ao fluxo. O objectivo e minimizar o custo de enviar todo o fluxo desde o no
fonte ate ao no destino. Uma das aplicacoes mais usuais deste tipo de problema e a optimizacao
do planeamento de entregas de companhias de distribuicao, conhecido como Vehicle Routing
12.4. PROBLEMA DE MINIMIZACAO DO FLUXO 117
Figura 12.3: Representacao em grafo do problema de transporte do caso 7
Problem.
Vejamos agora como os problemas vistos anteriormente podem ser modelados atraves deste
problema.
12.4.1 Problema de Transporte
Neste caso, para cada fonte e atribuıdo um no fonte e para cada destino e atribuıdo um no
destino. Todos os arcos sao directos dos nos fontes para os nos destinos. O custo do fluxo do
arco entre o no fonte e o no destino e o custo de transporte. Para os nos fonte, bi e a capacidade
de producao e para os nos destino, −bi e a procura pretendida.
A Figura 12.3 mostra a representacao em grafo do problema 1 do caso 7.
12.4.2 Problema de escalonamento
Neste caso, o numero de nos fontes e igual ao numero de nos destino, com bi = 1 para os nos
fonte e bi = −1 para os nos destino.
A Figura 12.4 mostra a representacao em grafo do problema 2 do caso 7.
118 CAPITULO 12. PROBLEMAS DE OPTIMIZACAO EM GRAFOS
Figura 12.4: Representacao em grafo do problema de escalonamento do caso 7
12.4.3 Problema do caminho mais curto
Para modelar o problema do caminho mais curto como um problema de fluxo mınimo, e ne-
cessario que o no de origem seja ao mesmo tempo o no fonte e o no destino, de forma a que
seja criado um caminho fechado no grafo. Para isso, podemos criar um no fictıcio destino com
b∗0 = −1 com a mesma localizacao do no fonte, com b0 = 1. Todos os outros nos sao nos de
passagem com bi = 0.
12.5 Algoritmos de optimizacao em grafos
Para resolver os problemas de fluxo mınimo num grafo, existe uma versao especial do metodo
simplex. Desta forma, o metodo simplex pode ser tambem aplicado aos problemas de trans-
porte, de escalonamento, de caminho mınimo, etc. A aplicacao deste metodo em grafos esta
contudo fora do ambito do programa desta disciplina. Este algoritmo nao e contudo muito efi-
ciente neste ambiente. O princıpio basico do metodo, procurar uma direccao de optimizacao,
pode levar a que o algoritmo caia em mınimos locais.
Ao longo do tempo foram entao desenvolvidas outro tipo de tecnicas cujo desempenho em
grafos e bastante superior, como por exemplo a programacao dinamica ou o branch-and-bound.
Tambem estes algoritmos estao fora do ambito do programa. No Capıtulo 14 introduziremos o
tipo de metodologias que e hoje mais utilizado para resolver este tipo de problemas.
12.6. EXERCICIOS 119
12.6 Exercıcios
Exercıcio 19 Faca a representacao em grafo do Exercıcio 17.
Exercıcio 20 Faca a representacao em grafo do Exercıcio 18.
120 CAPITULO 12. PROBLEMAS DE OPTIMIZACAO EM GRAFOS
Capıtulo 13
Gestao e Controlo de Projectos
A gestao de projectos consiste em planear, dirigir e controlar recursos (pessoas, equipamento ou
material) de forma a desempenhar as actividades planeadas dentro de determinadas restricoes
tecnicas, de custo e tempo.
Um projecto pode ser modelado atraves de um grafo, onde cada no corresponde ao inıcio
e ao fim de cada tarefa, e os arcos caracterizam a concretizacao dessas tarefas. A gestao de
projectos consiste entao em determinar qual o caminho que permite realizar todas as actividades
dentro do horizonte temporal previsto (fase de planeamento) e em seguida, usar essa solucao
para controlo da implementacao do projecto.
Neste capıtulo, vamos introduzir duas tecnicas basicas para a gestao de projectos: Program
Evaluation and Review Technique (PERT), ou seja tecnica de avaliacao e revisao de programas;
Critical Path Method (CPM), ou seja metodo do caminho crıtico. Estas duas tecnicas foram
desenvolvidas em quase simultaneo, mas em circunstancias diferentes. Por isso, a sua utilizacao
e em geral diversificada, embora possam ser utilizadas para o mesmo problema.
A introducao destas duas tecnicas e feita entao com base no caso introduzido em seguida:
121
122 CAPITULO 13. GESTAO E CONTROLO DE PROJECTOS
Caso 8 Projecto de desenvolvimento de um novo produtoUma empresa quer desenvolver um novo produto. A equipa de projecto tem sen-sivelmente 8 meses (35 semanas) para produzir o prototipo. Em primeiro lugar,a equipa de projecto estabeleceu as tarefas basicas a realizar. Em segundo lu-gar determinou a sequencia com que devem ser realizadas as diversas tarefas. Oresultado deste planeamento e indicado na Tabela 13.1. Observe que algumas ac-tividades so podem ser realizadas quando outras estao terminadas. O objectivo eentao determinar o planeamento em concreto das diversas actividades.
Tabela 13.1: Dados iniciais do caso 8
Actividade Designacao da Actividade Precedentes
Concepcao 0-1 -Construcao Prototipo 1-2 0-1
Avaliacao do Equipamento 1-3 0-1Teste do Prototipo 2-3 1-2
Fictıcio 3-4 1-3,2-3Relatorio de equipamento 4-5 3-4,2-3
Relatorio de procedimentos 3-5 1-3,2-3Relatorio Final 5-6 3-5,4-5
13.1 Definicoes basicas
Esta seccao apresenta os conceitos e terminologia basica associada a gestao de projectos.
• Projecto (Project) – serie de actividades que geram um resultado final apos um espaco
de tempo. Pode haver um nıvel hierarquico superior, denominado por Programa, que e
um conjunto de projectos.
• Tarefa (Task) – realizacao de uma actividade especıfica de um projecto. E uma subdi-
visao do projecto. Sao os arcos do grafo que modela o projecto.
• Marco (Milestone) – Acontecimentos especıficos, com duracao muito limitada no tempo,
que indicam em geral o fim de uma actividade e inıcio de outra. Sao os nos do grafo que
modelam o projecto.
13.2. PERT 123
Figura 13.1: Grafico de Gant, com o caminho crıtico do projecto do caso 8
• Caminho crıtico (Critical Path) – de entre as diversas tarefas e sequencia pela qual sao
realizados os projectos, existe um caminho de ligacao entre o inıcio do projecto e final que
condiciona a realizacao de todo o projecto. Engloba as actividades que caso nao sejam
terminadas, nao permitem que o projecto continue.
O problema de optimizacao associado a gestao dos projectos consiste na determinacao do
caminho crıtico. Os metodos de resolucao deste problema, o PERT e o CPM sao introduzi-
dos nas seccoes seguintes. Estas duas tecnicas permitem representar o projecto de uma forma
grafica e relacionar as diversas tarefas de forma a determinar quais sao as tarefas cruciais para
o desenvolvimento do projecto.
Ambas as tecnicas derivaram do metodo anteriormente utilizado, o Grafico de Gant . Este
grafico, representado na Figura 13.1, permitia determinar o caminho crıtico de pequenos projec-
tos (tipicamente menos de 30 tarefas) de uma forma empırica. No entanto, este grafico continua
a ser utilizado para a representacao grafica dos projectos, sendo as tecnicas PERT e CPM utili-
zadas como ferramentas de determinacao do caminho crıtico. Nessa figura, e possıvel observar
em cinzento claro o caminho crıtico; a cinzento mais escuro estao indicadas as tarefas que nao
sao crıticas e que de certa forma podem demorar mais do que o previsto sem porem em causa a
execucao do projecto.
13.2 PERT
O PERT foi desenvolvido em 1958 pelo Gabinete de Projectos Especiais da Marinha dos EUA,
como ferramenta de gestao do projecto do mıssil Polaris. Este metodo baseia-se em estimati-
vas probabilısticas dos tempos de cada tarefa, o que leva a que esta tecnica seja aplicada em
projectos onde o grau de incerteza da duracao das tarefas e significativo.
124 CAPITULO 13. GESTAO E CONTROLO DE PROJECTOS
13.2.1 Determinacao do tempo das tarefas
A aplicacao do PERT comeca entao com o calculo das estimativas de tempo para cada activi-
dade. O algoritmo requer que sejam obtidas 3 estimativas:
1. Tempo optimista T0 – o perıodo mınimo razoavel para realizar a tarefa, considerando que
existe uma probabilidade pequena (em geral 1%) de a actividade ser realizada em menos
tempo;
2. Tempo provavel T1 – a melhor estimativa do tempo necessario para a realizacao da tarefa,
que tem em conta os atrasos mais provaveis. Pode ser determinado estatisticamente re-
correndo a distribuicao beta [4], que e uma distribuicao que pode assumir variadıssimas
formas dependendo dos seus parametros.
3. Tempo pessimista T2 – o perıodo maximo razoavel para que a tarefa seja completada,
considerando que existe uma probabilidade pequena (em geral 1%) de a actividade ser
realizada em mais tempo.
Em seguida, e determinado o tempo previsto expectavel para a actividade e entao calculado
atraves da formula:
T =T0 + 4× T1 + T2
6(13.1)
bem como a sua variancia a partir da formula
σ2 = (T2 − T1
6)2 (13.2)
Na tabela ?? sao indicados as estimativas, bem como o tempo previsto e variancia de cada
tarefa.
13.2.2 Determinacao do caminho crıtico
A determinacao do caminho crıtico consiste em localizar a sequencia mais longa de actividades
interligadas no grafo e e definido como o caminho de folga nula, onde folga e a diferenca entre
o tempo mınimo de fim e o tempo maximo de fim. Isso e feito atraves do grafico de PERT
13.2. PERT 125
Tabela 13.2: Dados iniciais do caso 8
Actividade Designacao da Actividade Estimativas Tempo Previsto VarianciaT0 T1 T2
Concepcao 0-1 10 22 28 21 9Construcao Prototipo 1-2 4 4 10 5 1
Avaliacao do Equipamento 1-3 4 6 14 7 2,77Teste do Prototipo 2-3 1 2 3 2 0,11
Fictıcio 3-4Relatorio de equipamento 4-5 1 5 9 5 1,77
Relatorio de procedimentos 3-5 7 8 9 8 0,11Relatorio Final 5-6 2 2 2 2 0
Figura 13.2: Grafico de PERT para determinacao do caminho crıtico do projecto do caso 8
representado na Figura 13.2. Para cada no, e definido um tempo de fim mais cedo (TC) e
o tempo de fim mais tarde (TT ). Repare que apenas a tarefa relatorio de equipamento pode
comecar mais tarde do que o previsto. A sua tarefa sucessora tem de esperar que a tarefa
relatorio de procedimentos esteja completa para se iniciar. Como ha uma diferenca de tres
semanas entre a duracao dessas tarefas, existe uma folga para a tarefa que dura menos tempo.
Observe novamente a figura 13.1. A tarefa 6 e a unica que nao esta no caminho crıtica e tem
folga de 3 semanas. Pode-se atrasar sem por em risco a execucao do projecto. Nessa figura,
pode-se ainda considerar que a tarefa 4 tambem faz parte do caminho crıtico, pois nao pode
durar mais do que o esperado.
126 CAPITULO 13. GESTAO E CONTROLO DE PROJECTOS
Segundo o grafico de PERT, o tempo de duracao do projecto esta estimado em 38 semanas,
sendo que o tempo pretendido para o projecto e de D = 35 semanas. E possıvel estimar qual a
probabilidade desse objectivo ser atingido, atraves da conversao da exponencial beta para uma
distribuicao normal standard:
Z =D − Tc√∑
σ2CP
(13.3)
onde∑
σ2CP e a soma das variancias de todas as tarefas no caminho crıtico.
A probabilidade e determinada entao pela consulta da tabela de distribuicao da normal stan-
dard de φ(Z) (veja no Capıtulo 6). Para este caso, temos Z = −0, 87, o que da uma probabili-
dade de 19% de completar o projecto em 35 semanas.
13.3 CPM
Este metodo foi desenvolvido em 1957 por J.E. Kelly da Remington-Rand (actualmente Unisys,
foi o fabricante primeiro computador nos EUA, o UNIVAC I, o predecessor do ENIAC), e
por M.R. Walker da Du Pont (empresa quımica). Esta metodologia foi concebida para ajudar
na programacao de interrupcoes para actividades de manutencao. A principal diferenca do
metodo consiste no facto de o CPM considerar que os tempos da tarefa sao fixos e podem ou
nao corresponder aos tempos previstos pelo metodo PERT. Esta diferenca advem do facto do
metodo ter sido desenvolvido num ambiente fabril, onde os tempos de realizacao de cada tarefa
sao bem determinados. Por isso, em situacoes onde a duracao das tarefas esteja bem definida, e
possıvel utilizar este metodo em vez do PERT.
Considere entao a Tabela 13.3 para a aplicacao do metodo CPM.
A determinacao do caminho crıtico e igualmente feita recorrendo as folgas. Para isso, e
necessario calcular quatro tempos associados a cada tarefa:
1. Tempo de Inıcio mais Cedo IC – tempo mais cedo em que a tarefa pode ser iniciada;
2. Tempo de Fim mais Cedo FC – tempo mais cedo em que a tarefa pode ser terminada;
3. Tempo de Inıcio mais Tarde IT – tempo mais tarde em que a tarefa pode ser iniciada;
13.4. EXERCICIOS 127
Tabela 13.3: Dados iniciais do caso 8
Actividade Designacao Precedentes Tempo Previsto
Concepcao A - 21Construcao Prototipo B A 5
Avaliacao do Equipamento C A 7Teste do Prototipo D B 2
Relatorio de equipamento E C,D 5Relatorio de procedimentos F C,D 8
Relatorio Final G E,F 2
4. Tempo de Fim mais tarde FT – tempo mais tarde em que a tarefa pode ser terminada;
O procedimento para determinar estes valores e facilmente explicavel recorrendo a Figura
13.3. Na primeira actividade, considerar IC = 0 e daı para a frente ir adicionando o tempo de
cada tarefa de forma a determinar o IC das tarefas seguintes. Da mesma forma, calcular o FC
da primeira tarefa (que e igual ao IC + T ) e propagar esse tempo pelas tarefas.
Para a determinacao dos IT e FT , que podem ser calculados de uma forma algebrica, a
abordagem mais facil, e comecar no final do projecto , com um tempo qualquer assumido,
como por exemplo FT = FC , e a partir daı propagar o tempo das actividades inversamente, de
forma a calcular quanto tempo se pode atrasar o inıcio da actividade sem atrasar o inıcio da
actividade que se segue. So na actividade F , e que verificamos que se retirarmos 5 ao IT da
actividade G, obtemos um FT = 36 e consequentemente um IT = 31.
Finalmente, calculam-se as folgas que correspondem as diferencas IT − IC ou FT − FC .
O caminho crıtico e determinado pelas actividades sem folga, logo o resultado e o mesmo do
obtido com o metodo PERT.
13.4 Exercıcios
Exercıcio 21 Considere que uma empresa vai realizar um novo software de optimizacao para
outra empresa. O projecto esta dividido em 6 fases: analise de dados (4 semanas), concepcao
do interface com o utilizador (4 semanas), implementacao do algoritmo de optimizacao (6
128 CAPITULO 13. GESTAO E CONTROLO DE PROJECTOS
Figura 13.3: Grafico de CPM para determinacao do caminho crıtico do projecto do caso 8
semanas), teste do software (2 semanas), entrada em funcionamento do programa (1 semana)
e elaboracao da documentacao (2 semanas). Calcule o caminho crıtico deste projecto e a sua
duracao prevista. Considere que ha tarefas cujo inıcio nao dependem de outras.
Exercıcio 22 Considere no exercıcio anterior que a variancia de cada tarefa e de uma semana.
Calcule o tempo previsto para o projecto e a probabilidade de ele poder ser executado em 8
semanas.
Capıtulo 14
Meta-Heurısticas
A dimensao do espaco de solucoes dos problemas de optimizacao que podem ser modelados
atraves de grafos e em geral muito grande e por este motivo nao e possıvel utilizar metodos que
procuram a solucao optima atraves da analise de todas as solucoes (metodos exaustivos). Por
outro lado, a formulacao de muitos dos problemas nao obedece aos pressupostos que levam a
que possam ser aplicados os algoritmos introduzidos ate aqui, como o metodo simplex.
Ao longo das ultimas decadas tem vindo a ser desenvolvidos diversas metodologias de
optimizacao, algumas especıficas para certos problema, outras mais generalistas, que tem mos-
trado que e possıvel optimizar sistemas muito complexos de uma forma rapida. Entre esses
inumeros tipos de metodos, encontram-se as meta-heurısticas. meta-heurıstica e um algoritmo
que procura a solucao optima a partir de uma heurıstica mais simples, guiando essa heurıstica
de uma forma mais ou menos inteligente ao longo do espaco de solucoes, evitando que essa
heurıstica fique presas em optimos locais e possibilitando assim que seja encontrado o optimo
global. Embora nao haja garantia que o optimo encontrado seja de facto global, na ultima
decada tem-se provado que estas metodologias sao das ferramentas mais poderosas para opti-
mizar sistemas.
Outra vantagem destas meta-heurısticas e o facto de se poderem aplicar a diversos tipos de
problemas, sem que seja necessario que exista alguma estrutura especial dos dados, da funcao
de custo ou dos constrangimentos. Essa diversidade de aplicabilidade advem do facto de o
algoritmo por detras da heurıstica seguir em geral uma tentativa de imitacao de mecanismos
naturais e nao mecanismos ligados ao tipo de problema em questao.
129
130 CAPITULO 14. META-HEURISTICAS
Neste capıtulo sao introduzidos a tıtulo de exemplo duas das meta-heurıticas mais utilizadas
em optimizacao: os algoritmos geneticos e as colonias de formigas. A primeira e talvez a me-
todologia actualmente mais utilizada em optimizacao. Sem ser a melhor metodologia possıvel
para diversos tipos de problema, e aquela que garante um bom desempenho para qualquer tipo
de problema. Ja as colonias de formigas sao uma metodologia mais recente e o campo de
aplicacao e ainda restrito. Apesar de computacionalmente serem mais exigentes do que os al-
goritmos geneticos, tem demonstrado nos ultimos anos uma capacidade superior aos algoritmos
geneticos em termos de reoptimizacao de problemas onde os parametros apresentam variacoes.
14.1 Algoritmos Geneticos
Os algoritmos geneticos baseiam-se nos mecanismos geneticos que permitiram as especies so-
breviverem e adaptarem-se as diferentes condicoes ambientais: a seleccao, recombinacao e
mutacao.
A seleccao descreve o facto de os indivıduos mais bem adaptados ao ambiente terem maior
probabilidade de sobreviver e por isso de deixarem descendencia. A recombinacao ou cruza-
mento descreve o mecanismo de mistura do material genetico entre dois indivıduos que assegura
a diversidade das especies - o material genetico de cada indivıduo resulta de uma combinacao
do material genetico dos progenitores. Finalmente, a mutacao permite que ocorram alteracoes
aleatorias ao material genetico, de forma a que caracterısticas inesperadas aparecam e que me-
lhorem a sobrevivencia dos indivıduos. O pescoco comprido das girafas advem de uma mutacao
genetica de um dos antecessores dessa especie, alteracao essa que se revelou muito positiva
numa epoca de escassez de alimentacao.
Os algoritmos geneticos reproduzem este jogo evolucionario num ambiente de optimizacao.
As solucoes de um problema de optimizacao sao os indivıduos de uma especie. Os algoritmos
geneticos aplicam entao as tres operacoes geneticas a sucessivas geracoes de solucoes ate des-
cobrir o indivıduo que melhor se adapta ao ambiente, ou seja a solucao optima.
A seleccao consiste em atribuir uma probabilidade de um indivıduo sobreviver na proxima
geracao. Em geral os melhores indivıduos, os que tem maior probabilidade, vao ser os selec-
14.1. ALGORITMOS GENETICOS 131
cionados. No entanto, como e um processo probabilıstico, pode acontecer que um indivıduo
teoricamente mais fraco consiga sobreviver, e isto mantem alguma diversidade na especie.
O cruzamento consiste em pegar nos indivıduos que vao sobreviver e promover o acasala-
mento de forma a gerar novos indivıduos que vao substituir aqueles que nao vao sobreviver.
Existem diferentes maneiras de fazer o acasalamento, mas o mais comum e dois indivıduos
geram dois novos indivıduos atraves da divisao do material genetico de cada um deles.
Finalmente, a mutacao consiste em modificar aleatoriamente o material genetico de uma
pequena percentagem da populacao.
Apos estas operacoes, esta criada uma nova populacao. E necessario aferir se os novos
indivıduos se adaptam melhor ao meio ambiente do que a populacao antecessora - se sim, a
proxima populacao vai consistir numa variacao destes novos elementos; se nao, a proxima
populacao vai-se continuar a basear nos indivıduos mais antigos, pois estes estao mais adapta-
dos ao meio ambiente. Este processo e replicado durante centenas de geracoes e o criterio de
paragem e o numero de iteracoes totais ou quando a maior parte da populacao (e.g. 95% da
populacao e iguala um determinado indivıduo).
O algoritmo pode ser expresso da seguinte forma:
Algorithm 6 Algoritmos GeneticosGerar populacao inicialfor i1 : N do {Aplicar as operacoes geneticas}
Seleccionar indivıduos mais adaptadosCruzar pares de indivıduos em pares de descendentesMutar os descendentes
end for
14.1.1 Implementacao dos algoritmos geneticos
Na implementacao de algoritmos geneticos e necessario ter diversos factores a ter em conta.
O problema de optimizacao e definido por uma funcao de custo e cada cromossoma vai ter
de representar um determinada solucao com o respectivo valor nessa funcao de custo. Para alem
132 CAPITULO 14. META-HEURISTICAS
disso, a representacao tem de ter em conta os constrangimentos: e necessario criar mecanismos
que evitem que determinado cromossoma represente uma solucao impossıvel. Por isso e impor-
tante escolher uma boa representacao das solucoes em termos de cromossomas, o que por vezes
nao e facil. Uma ma representacao pode influenciar a eficiencia do algoritmo.
O cromossoma representa em termos gerais o material genetico da solucao. Cada gene pode
assumir diversos valores, dependendo do tipo de cromossoma escolhido. Os cromossomas
do homem consistem numa sequencia de letras. Nos algoritmos geneticos e mais usual os
cromossomas serem do tipo binario (cada gene pode assumir o valor ”0”ou ”1”), ou numeros
inteiros.
Finalmente, cada uma das operacoes geneticas pode ser implementada de diversas maneiras,
dependendo tambem do tipo de representacao escolhida. Para alem disso, existem parametros
associados a cada operacao que tem de ser escolhidos a priori, como por exemplo a taxa de
indivıduos que sobrevivem,a taxa de indivıduos que se reproduzem e a taxa de mutacao na
populacao. os algoritmos sao sensıveis a escolha de parametros.
14.1.2 Exemplo de aplicacao dos GA
Nesta seccao vamos ver como poderiam os algoritmos geneticos ser aplicados ao problema 1
do Caso 7.
Para este problema, o cromossoma pode ser uma cadeia de numeros inteiros de 1 ate 7, re-
presentado os nos do grafo que modela o problema. A sequencia desses dıgitos da esquerda para
a direita representa a sequencia que a visita ao parque deve seguir. Apesar de a visita comecar
sempre no no 1 (a recepcao), mesmo que a melhor solucao seja do tipo (2, 3, 4, 5, 6, 1, 7) pode-
mos assumir que comeca no 1, segue para o no 7 e depois recomeca a sequencia no 2, seguido
do 3, etc.
Vejamos entao como aplicar cada uma das operacoes geneticas em particular, seguindo a
Figura 14.1
14.2. COLONIAS DE FORMIGAS 133
(a) Representacao dassolucoes
(b) Cruzamento (c) Mutacao
Figura 14.1: Aplicacao dos algoritmos geneticos ao Problema 1 do caso 7.
Figura 14.2: Colonia de formigas a descobrir o caminho mais curto entre dois pontos.
14.2 Colonias de Formigas
As formigas vivem em colonias e todas as suas accoes sao em prol da sobrevivencia da colonia
como um todo, em vez da satisfacao das necessidades de um so indivıduo. As formigas sao
capazes de realizar tarefas muito complexas que excedem as capacidades de uma so formiga.
Elas comunicam entre si atraves da deposicao de feromonas e atraves da comunicacao entre elas,
conseguem realizar tarefas como descobrir sempre o caminho mais curto entre o formigueiro
e as fontes de comida. E esta caracterıstica que o algoritmo de colonias de formigas tenta
reproduzir para optimizar problemas que podem ser modelados por grafos.
Observe a Figura 14.2 para melhor compreender o mecanismo de cooperacao entre as for-
migas. Considere que as formigas estao a seguir uma linha recta entre a comida e o formigueiro
e que coloca um obstaculo no caminho, de forma a que o caminho de contorno do obstaculo por
cima seja mais curto do que o caminho de contorno do obstaculo por baixo. Quando duas for-
migas que se aproximam do obstaculo, elas nao sabem que caminho hao de escolher, porque as
formigas seguem trilhos onde haja feromonas depositadas e nao existe informacao disponıvel.
134 CAPITULO 14. META-HEURISTICAS
As formigas, que sao cegas e nao dispoe de inteligencia, escolhem o caminho a seguir aleatoria-
mente. Imagine entao que uma escolhe o caminho mais curto e outra o caminho mais comprido.
As formigas depositam feromonas no caminho que escolheram e voltam sempre pelo mesmo
caminho, depositando mais feromonas na volta.
As feromonas como substancias quımicas que sao, evaporam como tempo. Entao, quando
novas formigas chegam ao obstaculo, as feromonas depositadas no caminho mais curto vao
ter maior intensidade, porque foram depositadas mais feromonas em menos tempo. Logo, a
probabilidade dessas formigas seguirem o caminho mais curto e maior. Pode acontecer que
nem todas as formigas escolham ainda o caminho mais curto, mas com o passar do tempo,
mais e mais formigas vao escolher esse caminho e a intensidade das feromonas nesse trilho em
relacao ao outro vai crescer exponencialmente. Passado pouco tempo, todas as formigas vao
acabar por escolher sempre o caminho mais curto.
O algoritmo de formigas pode ser melhorado, considerando que as formigas nao sao cegas,
isto e conseguem observar o ambiente (por exemplo, ver qual e o ponto mais proximo) e que
tem memoria, isto e, lembram-se do caminho percorrido.
14.2.1 Implementacao das colonias de formigas
Em primeiro lugar, os arcos do grafo que modela o problema vao conter em simultaneo a
informacao relativa ao problema, designada por η e a deposicao de feromonas τ . O objectivo
da formiga e entao descobrir o caminho mais curto entre os diversos nos de um grafo.
Quando a formiga esta colocada num no i e quer decidir qual o proximo no j para o qual
se vai deslocar, a decisao dela e probabilıstica, isto e, vai ter tendencia a escolher o no que
apresenta o melhor balanco entre proximidade e feromonas depositadas.
A probabilidade desta formiga escolher o no j e dada por:
Pkij(t) =
τij
α·ηijβ
P
il/∈Γkτil
α·ηilβ if j /∈ Γk
0 otherwise(14.1)
onde τij a concentracao de feromona no trilho (i, j), ηij e a funcao heurıstica. Γk e a lista tabu
da formiga k, ou seja a lista dos nos que a formiga ja visitou e nao pode visitar. Os parametros
14.2. COLONIAS DE FORMIGAS 135
α and β medem a importancia relativa da heurıstica e da intensidade de feromonas.
Depois de todas as formigas terem achado um caminho, e feita a actualizacao das feromonas:
τij(t + 1) = τij(t)× (1− ρ) +
g∑k=1
∆τ kij (14.2)
onde ρ ∈ [0, 1] e o coeficiente de evaporacao das feromonas e∑g
k=1 ∆τ kuv e a quantidade de
feromonas depositadas pelas formigas nos trilhos (i, j) seguidos pelas formigas:
∆τ kij =
{1/fk, if arc (u, v) was used by ant k0, otherwise (14.3)
A funcao fk e a funcao de custo a ser optimizada.
14.2.2 Exemplo de aplicacao dos ACO
Nesta seccao vamos ver como poderiam as colonias de formigas poderiam ser aplicadas ao
problema 1 do Caso 7.
Neste caso, cada localizacao a visitar e um no do grafo, e a distancia entre nos pode ser
utilizada como informacao heurıstica η de forma que ηij = 1/dij . Desta forma, as formigas
terao tendencia a escolher o no que esta mais proximo. No entanto, a escolha sera pesada com
a intensidade das ligacoes entre nos. Como valor de evaporacao podemos usar ρ = 0.2. Para
aplicar o algoritmo das formigas e necessario aplicar pelo menos 2 formigas, embora nao seja
necessario aplicar mais do que o numero de nos existente.
Finalmente, as formigas colocadas aleatoriamente sobre os nos dos grafos iniciam a sua
busca do caminho mais curto. A melhor solucao encontrada por elas e a solucao (0, 1, 2, 4, 6, 5, 3)
com um custo total de d = 28. Observe como na Figura 14.3 e possıvel observar a intensidade
dos trilhos, onde os mais carregados sao os pertencentes a solucao optima.
136 CAPITULO 14. META-HEURISTICAS
Figura 14.3: Colonia de formigas aplicada ao Problema 1 do caso 7.
Capıtulo 15
Aplicacoes
Neste capıtulo, sao apresentados alguns exemplos de aplicacao das tecnicas de optimizacao
desenvolvidas anteriormente.
15.1 Planeamento da alocacao de recursos
Uma empresa produz dois tipos de pneus: 145/65 e 155/45. Pretende-se determinar qual deve
ser a producao semanal para maximizar as receitas, sabendo que:
• Os 155/45 sao vendidos a 100 Euros o par, cada conjunto de pneus demora meio dia a ser
produzido e requer 20 kg de materia prima.
• Os 145/65 sao vendidos a 150 Euros o par, cada par demora 1 dia a ser produzido e requer
apenas 10kg de materia prima.
• Estao disponıveis semanalmente 150 kg de materia prima
• A mao de obra disponıvel corresponde a 7,5 dias por semana (a custa de turnos)
15.2 Distribuicao optima de producao
Uma fabrica tem uma linha de producao com duas etapas sequenciais. Na primeira etapa tem
duas maquinas a trabalhar em paralelo: a maquina A produz 200 pecas por hora e a maquina
137
138 CAPITULO 15. APLICACOES
B produz 300 pecas. Na etapa seguinte, existem 3 maquinas, a maquina C que processa 100
unidades, a maquina D que processa 150 e a maquina E que processa 250 unidades. Os tem-
pos de transposicao de produtos entre maquinas sao os seguintes: Determine qual deve ser a
Tabela 15.1: Planeamento de producao
C D E
A 2 1 0.5 200B 1 0.5 2 300
100 150 250 500
distribuicao de produtos entre maquinas de forma a minimizar o tempo de transporte por hora?
15.3 Afectacao optima de recursos
Numa fabrica onde e usual haver rotacao de tarefas entre funcionarios, foram medidos os se-
guintes tempos de producao de cada empregado nas diversas tarefas: Em alturas de pico, qual
Tabela 15.2: Escalonamento home/tarefas
TarefaEmpregado 1 2 3
1 8 9 72 4 5 43 7 9 8
deve ser o escalonamento de tarefas de forma a minimizar o tempo de producao?
15.4 Gestao de projectos
Considere o seguinte planeamento para uma obra de uma casa:
Determine a duracao da construcao da casa e quais as tarefas crıticas.
15.4. GESTAO DE PROJECTOS 139
Tabela 15.3: Projecto de uma casa
Designacao da Actividade Actividade Precedentes Duracao (dias)
A Escavacao - 5B Fundacoes A 2C Sondagens Exteriores A 6D Construcao da Estrutura B 12E Sondagens Internas D 10F Armacoes ferro (empenas) D 9G Tectos (enchimento) D 5H Colocacao Tijolos B 9I Inspeccao C,E 1J Acabamento Tecto G 2
K Paredes exteriores F,I,J 3L Acabamentos Interiores K 9
M Acabamentos Exteriores H,G 7N Embelezamento M 8
140 CAPITULO 15. APLICACOES
Apendice A
Resultados dos exercıcios
1. A variavel cilindrada dos veıculos vendidos em Portugaltem o seguinte histograma:
Figura A.1: Cilindrada dos automoveis vendidos em Portugal
Esta variavel nao e comparavel com a variavel analisada no Caso 1, porque: o ano e
diferente (2000 vs. 2004); a populacao e diferente (carros vendidos vs. modelos de
carros novos); universo e diferente (veıculos ligeiros vs. ligeiros, todo-o-terreno, etc.)
2. A media e X = 35/5 = 7, a mediana e 7, a moda e 10, a variancia e S2 = 9, 5 e o desvio
padrao e S = 3, 08.
3. O coeficiente de Pearson entre a populacao absoluta e a taxa de divorcios e R = 0.27 entre
a populacao absoluta e a taxa de suıcidos e de R = −0.10. Pelos resultados, nenhuma
das variaveis esta linearmente relacionada com o populacao absoluta de uma cidade.
4. O grafico de dispersao entre o no de cigarros fumados por dia e os fumadores com cancro
e o seguinte: Atraves do grafico e do coeficiente de Pearson (R = 0.9933), e evidente que
141
142 APENDICE A. RESULTADOS DOS EXERCICIOS
Figura A.2: Cigarros por dia vs. fumadores com cancro
os dados tem uma relacao linear. O modelo e FC = 0.6629 ∗ CD + 5.1789.
5. Existem 11 possibilidades diferentes de retirar a primeira bola e 10 possibilidades dife-
rentes de retirar a segund abola, pelo que temos 11 × 10 = 110 resultados possıveis
diferentes. Da mesma forma, existem 5× 6 possibilidades de a primeira bola a sair preta
e a segunda bola branca, e tambem 6× 5 possibilidades de sair uma bola branca seguida
de uma bola preta. Sabendo que todos os resultados sao igualmente possıveis, entao, a
possibilidade de tirar uma bola branca e uma bola preta, independentemente da ordem e30+30110
.
6. A probabilidade de um transıstor ser bom quando comeca a funcionar e dada por:
P (bom|funciona) =P (bom) ∩ P (funcionar)
P (funcionar)=
25/40
35/40
7. A variavel neste caso e binomial (assistir a aula, nao assistir), com n = 30 e p = 0.33.
A probabilidade de ter mais do que 10 alunos a irem aos laboratorios e P (X > 10) =
1− P (X ≤ 10). A probabilidade e 0, 4. (Caso use a aproximacao a distribuicao normal,
a probabilidade e 0, 41.
8. A variavel e neste caso exponencial, com λ = 1/20.000 que e uma variavel dita sem
memoria, pelo que nao interessa quantos Kms foram ja percorridos. A probabilidade de
acabar a viagem sem mudar de bateria e
P (bateria > 10.000km) = 1− P (bateria ≤ −10.000) = e10000∗λ = e−0,5 = 0, 604.
9. O intervalo de confianca a 95% e [1.085, 1.315].
143
10. Aproximando a distribuicao binomial a normal standard, temos que o intervalo de confianca
e [0.463, 0.657]. Este resultado vem da expressao
[X
n− sqrtX(1−X/n)
n× zα/2,
X
n+
sqrtX(1−X/n)
n× zα/2],
onde X e o numero de ocorrencias e n o numero de tentativas.
11. Testando a hipotese H0 : µ − 40 = 0, onde µ = 37, 28 e σ = 2, 62, temos que
P ( sqrt12(37.28−40)2.62
) = P (−3.59) = 0.0001. Como p < α, a hipotese e rejeitada.
144 APENDICE A. RESULTADOS DOS EXERCICIOS
Bibliografia
[1] Hillier and Lieberman. Introduction to Operations Research. McGrawHill, eigth edition,2005.
[2] R. W. Johnson. 2004 new car and truck data. Journal of Statistics Education, 2005.
[3] D. M. Lane. Rice virtual lab in statistics - simulations and demonstrations - samplingdistributions. http://www.ruf.rice.edu/ lane/rvls.html, 2000.
[4] S. M. Ross. Introduction to Probability and Statistics for Engineers and Scientists. JohnWiley & Sons, 1987.
[5] The Free Encyclopedia Wikipedia. Engineering. http://en.wikipedia.org/wiki/Engineering,2005.
145
Indice Remissivo
arvore, 113
optimo, 71
acontecimento aleatorio, 30
algoritmo, 71, 77
algoritmo simplex, 77, 99
algoritmo simplex transporte, 103
algoritmos geneticos, 130
amostra, 14
analise sensibilidade, 92
arco, 113
boxplot, 20
caminho, 113
caminho crıtico, 123, 124
caminho das pedras, 100
canto noroeste, 99
classe, 14
colonias formigas, 133
constrangimentos, 71
correlacao, 23
correlacao de Pearson, 25
CPM, 121, 126
desvio padrao, 19
distribuicao, 15, 35
distribuicao χ2, 40
distribuicao t-Student, 40
distribuicao binomial, 44
distribuicao de Poisson, 42
distribuicao exponencial, 41
distribuicao normal, 37
distribuicao normal standard, 37
distribuicao uniforme, 40
espaco de resultados, 30
espaco de solucoes, 71
eventos mutuamente exclusivos, 31
funcao de distribuicao acumulada, 35
funcao de probabilidade, 35
funcao objectivo, 70
grafico gant, 123
grafo, 113
heurıstica, 71, 114
hipotese, 56
histograma, 16
intervalo, 19
intervalo de confianca, 51
maxima verosimilhanca, 48
media, 18
metodo caminho crıtico, 121, 126
146
INDICE REMISSIVO 147
metodo grafico, 74
metodo hungaro, 105, 106
metodo tabular, 85
mınimos quadrados, 26
marco, 122
mediana, 18
meta-heurısticas, 129
moda, 18
momentos, 47
no, 113
nıvel de confianca, 57
optimizacao, 70
outliers, 21
percentil, 18
PERT, 121, 123
populacao, 14
preco sombra, 90
probabilidade, 29
problema arvore gerada mınima, 115
problema caminho mais curto, 113, 118
problema escalonamento, 103, 117
problema minimizacao fluxo, 116
problema transporte, 95, 117
programacao linear, 69
projecto, 122
regressao, 25
scatter plot, 24
simplex, 77
solucao basica, 80
tabela de frequencias, 15
tarefa, 122
teorema do limite central, 39
vertice, 75, 78
variavel, 14
variavel auxiliar, 79
variavel de decisao, 71
variancia, 19