Search This Blog

Saturday, December 3, 2016

Aula 24: Alocações em Equilíbrio e Otimalidade de Pareto

Na nossa vigésima quarta aula de finanças apresentamos a relação entre alocações em equilíbrio e otimalidade de pareto. Esses são os slides usados em sala.

Referências

Principles of Financial Economics - Stephen F. LeRoy and Jan Werner

Microeconomic Theory - Andreu Mas-Colell and Michael D. Whinston

Aula 23: CCAPM

Na nossa vigésima terceira aula de finanças apresentamos o CCAPM. Esses são os slides usados em sala.

Referências

Principles of Financial Economics - Stephen F. LeRoy and Jan Werner

John Cochrane - Asset Pricing

Quantitative Financial Economics: Stocks, Bonds and Foreign Exchange - Keith Cuthbertson and Dirk Nitzsche

Recursive Macroeconomic Theory - Lars Ljungqvist and Thomas J. Sargent

Aula 22: Carteira Ótima com vários ativos

Na nossa vigésima segunda aula de finanças apresentamos o problema de escolha de carteira com vários ativos. Esses são os slides usados em sala.

Referências

Principles of Financial Economics - Stephen F. LeRoy and Jan Werner

Foundations for Financial Economics - Chi-Fu Huang and Robert H. Litzenberger

Modern Portfolio Theory and Investment Analysis - Edwin J. Elton and Martin J. Gruber

Optimization Methods in Finance - Gerard Cornuejols and Reha Tutuncu

Portfolio Optimization: Beyond Markovitz - Marnix Engels"

Quantitative Financial Economics: Stocks, Bonds and Foreign Exchange - Keith Cuthbertson and Dirk Nitzsche

Aula 21: Carteira Ótima com um ativo livre de risco e um arriscado

Na nossa vigésima primeira aula de finanças apresentamos o problema de escolha de carteira com dois ativos: um livre de risco e um arriscado. Esses são os slides usados em sala.

Referências

Principles of Financial Economics - Stephen F. LeRoy and Jan Werner

Foundations for Financial Economics - Chi-Fu Huang and Robert H. Litzenberger

Modern Portfolio Theory and Investment Analysis - Edwin J. Elton and Martin J. Gruber

Optimization Methods in Finance - Gerard Cornuejols and Reha Tutuncu

Portfolio Optimization: Beyond Markovitz - Marnix Engels"

Quantitative Financial Economics: Stocks, Bonds and Foreign Exchange - Keith Cuthbertson and Dirk Nitzsche

Wednesday, November 23, 2016

Aula 20: Apreçamento Fatorial

Na nossa vigésima aula de finanças apresentamos Apreçamento Fatorial. Esses são os slides usados em sala.

Referências

Principles of Financial Economics - Stephen F. LeRoy and Jan Werner

Monday, November 7, 2016

Aula 19: CAPM

Na nossa décima nona aula de finanças apresentamos o CAPM. Esses são os slides usados em sala.

Referências

Principles of Financial Economics - Stephen F. LeRoy and Jan Werner

Aula 18: Teoria Média-Variância

Na nossa décima oitava aula de finanças apresentamos Teoria Média Variância. Esses são os slides usados em sala.

Referências

Principles of Financial Economics - Stephen F. LeRoy and Jan Werner

Soluções

Kernels de valor esperado e apreçamento e a definição da fronteira média-variância

Fronteira média variância definida a partir de um retorno relacionado com os retornos em excesso e o kernel de apreçamento

Diversificação de carteiras e redução da variância

Teorema de diversificação de Samuelson

Desvio padrão e variância são funções convexas

Carteira de Markowitz




Contradições da esquerda autoritária

Eles invadem a UnB e impedem autoritariamente estudantes de terem aulas.

Eles são contra Temer, mas são contra uma lei que limita os seus gastos.

Eles dizem defender a educação, mas picham patrimônios de instituições de ensino.


Esse é o prédio da FACE e o que prédio localizado ao lado da FACE.

Saturday, November 5, 2016

Um reitor de uma universidade pública tem a opção de NÃO pedir a reintegração de sua universidade?

NÃO!

Não é novidade que direitos de professores, estudantes e pais foram autoritariamente excluídos por invasores da esquerda fascista que invadiram escolas públicas.

Alguns reitores deliberadamente não estão pedindo reintegração da universidade. Não é relevante discutir os motivos, mas acredito que alguns deles se identifiquem com a bandeira dos invasores (invasores! A grande maioria não é composta por estudantes). Não é relevante aqui discutir essas bandeiras, embora eu mesmo tenha a minha opinião sobre o assunto.

Reitores são as figuras responsáveis pelo zelo e eficiência das atividades universitárias. Durante invasões, estudantes e professores são excluídos de dar/assistir aulas e a reitoria fica impedida de realizar atividades fundamentais para o andamento da universidade (existem várias manifestações de estudantes que estão perdendo oportunidade de estágios e professores que não estão sendo autorizados para a realização de atividades como participação em eventos).

Essa atitude de não pedir reintegração da universidade pública é uma clara evidência da Desídia do Servidor Público. O elemento fundamental aqui é o reitor ter deixado de "cumprir injustificadamente as obrigações inerentes ao exercício da função pública". Um outro elemento é o reitor "reduzido a quantidade ou a qualidade do produto de sua atividade, afetando negativamente a eficiência do serviço público". [Fonte Desídia do servidor público - Neudson Cavalcante Albuquerque (jus.com.br)

Essa mesma idéia é válida para diretores que tiveram suas faculdades invadidas e não estão tomando nenhuma providência cabível!

PS: Gostaria de agradecer o professor Adolfo Sachsida por mencionar o conceito Desídia do servidor público.

Friday, November 4, 2016

Jogos repetidos, invasores fascistas e o mimimi da sociedade

Não é novidade que direitos de professores, estudantes e pais foram autoritariamente excluídos por invasores da esquerda fascista que invadiram escolas públicas.

O mais triste é que quando algum bom juiz autoriza a reintegração de posse, já começa o mimimi da sociedade sobre ser duro com os bandidos.

NÃO!

Em economia, chamamos isso de jogos repetidos. Se um bandido hoje comete um crime e nada acontece com ele, ele sabe que amanhã provavelmente nada acontecerá com ele se ele cometer o mesmo crime. Por isso, precisamos sinalizar hoje com punições severas! No futuro esse bandido pensará duas vezes se deve cometer o mesmo crime!

Argumentos sugerindo que esses bandidos não agiram com violência não são válidos, pois se isso não aconteceu até agora é porque nenhum professor ou aluno tentou recuperar o seu direito de dar ou ter aula. É como um bandido que entra em sua casa a noite e a rouba com você dormindo. Sorte sua se você não acordar! De qualquer forma, nas redes sociais foram expostos casos de violência em invasões na USP e outras escolas públicas do ensino médio. Logo, de uma forma ou de outra esse argumento não deve ser aceito!

Rogo por punições severas que no mínimo devem incluir expulsão de todos os alunos envolvidos e fichamento de todos envolvidos (alunos ou não). Deveria também ter reclusão dos envolvidos, mas não sei como é a legislação sobre o assunto. Talvez a legislação deva ser mudada já que esse comportamento autoritário se tornou tão comum!

As reintegrações de posse devem ser rápidas. Essa é a prioridade! Não podemos aceitar que professores, pais e estudantes que tiveram seus direitos removidos fiquem esperando indefinidamente pela boa vontade dos bandidos liberarem o local invadido. Parabéns para todos os policiais que consigam a reintegração rápida.

Bandido deve ser tratado como bandido!

#respeitaMinhaAula

Wednesday, November 2, 2016

Não podemos deixar a UnB voltar às trevas! Respeita Minha Aula!

Essa foto foi publicada pelo movimento da UnB "#respeitaMinhaAula".


A UnB nesses últimos 4 anos amadureceu.

Nós pudemos ver uma gestão consciente de três grupos importantes ligados a UnB: (1) o DCE gerido pela Aliança pela Liberdade; (2) o sindicato dos professores; (3) a reitoria gerida pelo Magnífico Professor Ivan Camargo. A UnB melhorou e muito! Melhorias podem ser vistas em todas as esferas! Não vou citar uma a uma, pois gastaria o texto inteiro com isso, mas apenas 4 que considero mais relevantes: (1) Não houve greves, mas assembléias de Professores muito cheias, onde podemos concluir que a decisão representava um Professor Médio e Representativo. (2) O Restaurante Universitário não fechou em nenhum dia (na gestão anterior quase toda semana fechava) – esse dado é apenas para representar a melhoria de vários serviços importantes para estudantes. (3) Muitos indicadores de qualidade acadêmica melhoraram. (4) Com exceção de alguns eventos isolados de esquerda ou direita (ambas fascistas e que não representam as liberdades alheias), podemos afirmar que as decisões seguiram meios democráticos.

Sou Liberal e obviamente não concordei com a grande maioria das decisões que foram tomadas na UnB, mas acredito fortemente que elas representam o Professor e o Estudante Representativos médios: alguns comunistas, alguns liberais como eu e possivelmente alguns fascistas. Numa democracia precisamos saber viver e aceitar resultados que não nos satisfazem!

Infelizmente, grupos de esquerda tentam evitar que a UnB funcione adequadamente. A reitoria da UnB e alguns pavilhões de aulas foram invadidos. Não posso nem afirmar que esses grupos de esquerda estão ligados a UnB! Existem figuras ligadas a partidos políticos de extrema esquerda, que não são ligados a UnB (nem à Brasília) que estão por detrás desses movimentos, normalmente tentando apoio de estudantes. O pior é que alguns professores acham isso bonito! Ontem ouvi o típico professor insentão da UnB dizendo que é “Melhor a invasão da UnB do que TEMER GOLPISTA ou PEC 241. Embora minha opinião sobre ambos os temas seja irrelevante aqui, acredito que a maioria desses senhores nem leu a dita PEC ou tem conhecimento econômico suficiente para avalia-la.

NÃO!! Invasão de prédio público é caso de polícia!

Espero fortemente que a Aliança pela Liberdade se organize e lidere essa discussão junto aos estudantes. Espero que a reitoria tome a medidas legais e duras para lidar com aqueles que querem usar a UnB para vender sua cartilha política e, especialmente, estão invadindo os prédios públicos e gerando baderna. Espero que os professores tenham mais bom senso e sejam capazes de deixar de usar a UnB para vender sua cartilha política incentivando alunos a deixarem de ter aula e invadirem prédios públicos!

Todos queremos aulas!

#RespeitaMinhaAula

Friday, October 21, 2016

Aula 17 de Finanças: Kernels

Na nossa décima sétima aula de finanças apresentamos alguns kernels que serão úteis para representar a fronteira média variância. Esses são os slides usados em sala.

Referências

Principles of Financial Economics - Stephen F. LeRoy and Jan Werner

Soluções

Kernels de valor esperado e apreçamento em mercados incompletos

Aula 16 de Finanças: Espaços de Hilbert

Na nossa décima sexta aula de finanças apresentamos noções de Espaços de Hilbert. Esses são os slides usados em sala.

Referências

Principles of Financial Economics - Stephen F. LeRoy and Jan Werner

Introductory Functional Analysis with Applications - Erwin Kreyszig

Applied Functional Analysis - D.H. Griffel


Wednesday, October 19, 2016

Aula 15 de Finanças: Aversão ao Risco

Na nossa décima quinta aula de finanças discutimos aversão ao risco. Esses são os slides usados em sala.

Referências

Principles of Financial Economics - Stephen F. LeRoy and Jan Werner

St. Petersburg paradox

Referências do St. Petersburg paradox

Aula 14 de Finanças: Noções de Finanças em tempo contínuo e a Fórmula de Black-Scholes

Na nossa décima quarta aula de finanças introduzimos noções de Finanças em tempo contínuo e discutimos a Fórmula de Black-Scholes. Esses são os slides usados em sala.

Referências

Paul Wilmott - Mathematics of Financial Derivatives

Paul Glasserman - Monte Carlo Methods in Financial Engineering

Stochastic Differential Equations: An Introduction with Applications - Bernt Øksendal

Methods of Mathematical Finance - Ioannis Karatzas and Steven Shreve

Soluções de Exercícios

Como usar simulações do Modelo Browniano Geométrico para apreçar um contrato de opção Europeia?

Monday, October 10, 2016

Aula 13 de Finanças: Avaliação de investimentos sob incerteza

Na nossa décima terceira aula de finanças discutimos a avaliação de investimentos sob incerteza e opções reais. Esses são os slides usados em sala.

Referências

Real Options, Revised Edition: A Practitioner’s Guide - Tom Copeland and Vladimir Antikarov

Investment under Uncertainty - Avinash K. Dixit and Robert S. Pindyck

Real Options and Investment under Uncertainty: Classical Readings and Recent Contributions - Eduardo S. Schwartz e Lenos Trigeorgis (Editores)

Soluções de exercícios

Opção de contração

Opção de expansão

Opção de abandono

Aula 12 de Finanças: Modelo Binomial

Na nossa décima segunda aula de finanças discutimos o modelo binomial. Esses são os slides usados em sala.

Referências

Stochastic Calculus for Finance I: The Binomial Asset Pricing Model - Steven Shreve

Introduction to Mathematical Finance: Discrete Time Models - Stanley R. Pliska

Options, Futures, and Other Derivatives - John C. Hull

Cox, J. C.; Ross, S. A.; Rubinstein, M. (1979). "Option pricing: A simplified approach". Journal of Financial Economics. 7 (3): 229.

Option pricing:simplified approach

Binomial option pricing and Black-Scholes

Sunday, October 9, 2016

Aula 11 de Finanças: Efeitos das restrições nas carteiras

Na nossa décima primeira aula de finanças discutimos os efeitos das restrições nas carteiras no problema de escolha dos agentes e na avaliação de direitos contigentes. Esses são os slides usados em sala.

Referências

Principles of Financial Economics - Stephen F. LeRoy and Jan Werner

Soluções de exercícios

Escolha com restrições de venda à descoberto

Wednesday, October 5, 2016

Aula 10 de Finanças: Probabilidades neutras ao risco

Na nossa décima aula de finanças discutimos probabilidades neutras ao risco. Esses são os slides usados em sala.

Referências

Principles of Financial Economics - Stephen F. LeRoy and Jan Werner

Asset Pricing - John H. Cochrane

Theory of Financial Decision Making - Jonathan E. Ingersoll

Soluções de Exercícios

O cone convexo gerado pelas colunas de uma matriz é um conjunto fechado?

Equilíbrio e probabilidades neutras ao risco

Tuesday, September 27, 2016

Aula 9 de Finanças: Apreçamento em Mercados Incompletos

Na nossa nona aula de finanças discutimos apreçamento em mercados incompletos. Esses são os slides usados em sala.

Referências

Principles of Financial Economics - Stephen F. LeRoy and Jan Werner

Asset Pricing - John H. Cochrane

Theory of Financial Decision Making - Jonathan E. Ingersoll

Soluções

Apreçamento em mercados incompletos

Sunday, September 18, 2016

Aula 8 de Finanças: Interlúdio - Programação Linear

Na nossa oitava aula de finanças introduzimos o tema de programação linear. Esses são os slides usados em sala.

Referências

Linear Programming 1: Introduction - George B. Dantzig and Mukund N. Thapa

Linear Programming 2: Theory and Extensions - George B. Dantzig and Mukund N. Thapa

Understanding and Using Linear Programming - Jiri Matousek and Bernd Gärtner

Introduction to Linear Optimization - Dimitris Bertsimas and John N. Tsitsiklis

Material Suplementar

Row rank equals column rank

Soluções de exercícios

Simplex no Python

Convexidade e programação linear

Regressão quantílica

Wednesday, August 31, 2016

Aula 7 de Finanças: Interlúdio - Noções de Programação Computacional em Python (Monte Carlo)

Na nossa sétima aula de métodos computacionais introduzimos técnicas de Monte Carlo. Esses são os slides usados em sala.


Abaixo temos os exemplos apresentados em sala de aula:

Relação entre as áreas do círculo e quadrado

Consistência do OLS

Album de figurinhas

Referências

Numerical methods in economics - Kenneth Judd [Capítulo 8]

Introdução aos métodos estatísticos para economia e finanças - Alexandre Carvalho, Daniel Cajueiro e Reinaldo Camargo.

Referências adicionais

Estatística sem Mistério

Aula 6 de Finanças: Interlúdio - Noções de Programação Computacional em Python (Recursões)

Na nossa sexta aula de finanças discutimos o uso de recursões em computação. Esses são os slides usados em sala.


Abaixo temos os exemplos apresentados em sala de aula:

Implementações da sequencia de Fibonacci

Implementações do fatorial de um número

Solução da Torre de Hanoi

Referências:

Think recursively - Eric S. Roberts

Soluções da série de exercícios


Algoritmo de Euclides

Pinturas de Mondrian usando recursão


Árvores usando recursão

Aula 5 de Finanças: Interlúdio - Noções de Programação Computacional em Python (Coleções)

Essa é uma introdução a programação computacional em Python para o curso de finanças que lida com coleções de dados. Esses são os
slides usados em sala de aula.

Abaixo temos os exemplos apresentados em sala de aula:

Como usar sequências de dados ou arrays em programação estruturada?

Como usar conjuntos ou sets em programação computacional?

Como usar mapas (maps) ou dicionários em programação computacional?

Uma boa referência para python é:

Think Python - Allen Downey

Outras referências estão aqui:

Melhores livros de Python

Soluções das séries de exercício:

Produto de matrizes

Permutações

Qual é o menor número positivo que é divisível por todos os números de 1 a 20?

Aula 4 de Finanças: Interlúdio - Noções de Programação Computacional em Python

Essa é uma introdução a programação computacional em Python para o curso de finanças. Esses são os
slides usados em sala de aula.

Abaixo temos os exemplos apresentados em sala de aula:

Exemplo de Controle de Fluxo usando Condicionais

Exemplo do uso do Loop For em um programa computacional

Exemplo do uso do Loop While em um programa computacional

Uma boa referência para python é:

Think Python - Allen Downey

Outras referências estão aqui:

Melhores livros de Python

Soluções das séries de exercício:

Questão 1

Questão 2

Questão 3

Questão 4

Questão 5

Aula 3 de Finanças - Ausência de oportunidades de arbitragem

Essa é a terceira aula do Curso de Finanças do Programa de Doutorado em Economia da UnB. Esses são os slides usados em sala.

Referências

Principles of Financial Economics - Stephen F. LeRoy and Jan Werner

Asset Pricing - John H. Cochrane

Theory of Financial Decision Making - Jonathan E. Ingersoll


Soluções de Exercícios

Conjunto de preços livres de arbitragem em um mercado incompleto

Sunday, August 21, 2016

Aula 2 de Finanças - Lei do Preço Único

Essa é a segunda aula do Curso de Finanças do Programa de Doutorado em Economia da UnB. Esses são os slides usados em sala.

Referências

Principles of Financial Economics - Stephen F. LeRoy and Jan Werner

Asset Pricing - John H. Cochrane

Theory of Financial Decision Making - Jonathan E. Ingersoll


Soluções de Exercícios

Thursday, August 18, 2016

Aula 1 de Finanças - Mercado de Ativos, Escolha do Agentes e Equilíbrio

Essa é a primeira aula do Curso de Finanças do Programa de Doutorado em Economia da UnB. Esses são os slides usados em sala.

Referências

Principles of Financial Economics - Stephen F. LeRoy and Jan Werner

Asset Pricing - John H. Cochrane

Theory of Financial Decision Making - Jonathan E. Ingersoll

Referências Complementares de Otimização

Dê uma olhada aqui.


Referências Complementares de Álgebra Linear

Dê uma olhada aqui.

Você particularmente poderá querer responder essa pergunta:

O que você gostaria que tivesse no seu livro de álgebra linear e não tinha?.

Soluções de Exercícios

Qual é a solução do problema de escolha dos agentes supondo que não existe consumo na data 0?

Equilíbrio em um mercado com dois ativos com dois estados e dois agentes

Quando um estado é segurável?



Wednesday, July 6, 2016

Como foi o curso de finanças do Programa de Pós-Graduação em Economia da UnB em 2016?

O curso de Finanças do Programa de Pós-Graduação em Economia da UnB é um curso de Economia Financeira [Financial Economics] com os tópicos usuais de (1) Apreçamento de Ativos em Mercados Completos e Incompletos; (2) Carteiras ótimas; (3) Equilíbrio em Mercados Completos e Incompletos; (4) Modelos Baseados em Consumo; (5) Análise Média-Variância.


Também discutimos em sala de aula ou por meio de séries de exercícios vários dos tópicos mencionados aqui que podem ser classificados nas seguintes áreas:

(A) Econometria Financeira

(B) Noções de Finanças em Tempo Contínuo

(C) Finanças Quantitativas: Implementação de Modelos

(D) Modelos de Risco



From the botton of my heart

Sim! Esse curso possivelmente abordará questões práticas de finanças... Por que? Porque é divertido (:-)! Entretanto, esse curso é um curso microfundamentado de finanças que a grande maioria das aulas é baseada na estrutura Definição, Teorema, Demonstração, Corolário... Logo, não se engane. Vale a pena dar uma olhada também na lista de pré-requisitos.



Uma programação preliminar do curso pode ser a seguinte:


PARTE I - Mercado de Ativos, Escolha dos Agentes e Equilíbrio

1) Mercado de Ativos, Escolha do Agentes e Equilíbrio

Aula 1

PARTE II - Apreçamento em Mercados Completos

2) Lei do preço único e apreçamento Linear

Aula 2

3) Apreçamento Positivo e Não-Arbitragem

Aula 3

INTERLÚDIO I - Noções de Implementação Computacional em Python

4) Noções de Programação Computacional

Aula 4

5) Noções de Programação Computacional - Coleções de dados

Aula 5

6) Noções de Programação Computacional - Recursões

Aula 6

7) Noções de Programação Computacional - Monte Carlo

Aula 7

INTERLÚDIO II - Programação Linear

8) Noções do problema de programação linear

Aula 8

PARTE II - Apreçamento em Mercados Financeiros

9) Apreçamento em Mercados Incompletos

Aula 9

10) Probabilidades Neutras ao Risco

Aula 10

11) Restrições na comercialização dos Ativos

Aula 11

PARTE III - Alguns modelos e aplicações práticas

12) Modelo Binomial e Métodos Numéricos para o Apreçamento de Opções

Aula 12

13) Avaliação de Investimentos sob Incerteza e Opções Reais

Aula 13

14) Noções de Finanças em Tempo Contínuo

Aula 14

PARTE IV - Aversão ao Risco

15) Aversão ao Risco

Aula 15

INTERLÚDIO III - Noções de Análise Funcional em Espaços de Hilbert

16) Espaços de Hilbert

Aula 16

PARTE V - Análise Média Variância

17) Kernels de valor esperado e apreçamento

Aula 17

18) Payoffs na Fronteira Média Variância

Aula 18

19) CAPM

Aula 19

20) Apreçamento Fatorial

Aula 20


PARTE VI - Carteiras Ótimas

21) Carteira Ótima com um ativo livre de risco e um ativo arriscado

Aula 21

22) Carteira Ótima com vários ativos

Aula 22

PARTE VII - Modelos de Equilíbrio baseados em Consumo

23) CCAPM

Aula 23

24) Equilíbrios de Pareto em Mercados Completos e Incompletos

Aula 24

AVALIAÇÂO

A avaliação do curso foi feita por uma prova e vários exercícios individuais (os detalhes dependem do tamanho da turma). Foram explorados exercícios de vários tipos. Exercícios que lidam diretamente com a teoria apresentada em sala de aula e exercícios que estendem a teoria discutida em sala de aula. Exercícios numéricos simples (que exploram conceitos básicos de sala de aula ou do livro texto principal), exercícios computacionais (que normalmente estendem o discutido em sala de aula) e exercícios teóricos (normalmente provas de resultados auxiliares ao curso). Dentro do conjunto de exercícios alguns exercícios são muito fáceis, outros exercícios são mais difíceis e outros são bem trabalhosos, que dependem de material extra àquele apresentado em sala de aula e implementação computacional.

PRE-REQUISITOS

Não temos pre-requisitos específicos, mas vários tópicos dependem de conhecimentos de Álgebra-Linear, Otimização e maturidade em matemática, estatística ou econometria equivalente a de um aluno de mestrado em economia de um bom programa.

Um pre-requisito fundamental em qualquer curso que leciono é muita disposição para aprender e lidar com coisas novas para resolver novos problemas. Os estudantes devem ter ou desenvolver a capacidade de lidar com um problema novo que estende o material em sala de aula sem a ajuda do professor, tendo em mãos apenas as referências básicas. Essa habilidade muito comum em estudantes da engenharia infelizmente não é muito explorada em estudantes de economia.

Deixar a arrogância em casa para ser capaz de perceber que não sabemos tudo e que existem sempre pessoas com mais conhecimento em um determinado tópico que nós mesmos. Aproveitar desse fato para aprender com os colegas e com o professor àquelas dimensões mais restritas.

HORÁRIO: TERÇAS E QUINTAS 16 AS 18

Sunday, June 26, 2016

Aula 26 de Métodos Computacionais em Economia - Processamento de Linguagem Natural

Essa é a sexta aula de Aprendizagem de Máquinas do nosso curso. Esses são os slides usados em sala.

Códigos usados em sala de aula

Todos os exemplos dessa aula foram do livro

Natural Language Processing in Python

Referências

Foundations of Statistical Natural Language Processing - Christopher D. Manning and Hinrich Schütze

Natural Language Processing in Python

Friday, June 17, 2016

Aula 25 de Métodos Computacionais em Economia - Aprendizagem de Máquinas: Aprendizagem por Reforço

Essa é a quinta aula de Aprendizagem de Máquinas do nosso curso. Esses são os slides usados em sala.



Códigos usados em sala de aula

Implementação do problema da locadora usando programação dinâmica

Referências

Numerical Methods in Economics - Keneth Judd

Reinforcement Learning [Capítulos 1 a 4]

Markov Decision Processes - Martin Puterman [Capítulo 6]

Referências Complementares

O site Quantitative Economics tem muito material legal.

Soluções de Exercícios

...


Tuesday, June 14, 2016

Aula 24 de Métodos Computacionais em Economia - Aprendizagem de Máquinas: Redes Neurais e Deep Learning

Essa é a quarta aula de Aprendizagem de Máquinas do nosso curso. Esses são os slides usados em sala.



Códigos usados em sala de aula

Implementação de redes neurais artificias usando o pyBrain



Soluções de Exercícios


Exemplo de redes neurais recorrentes

Exemplo de redes neurais recorrentes

Implementação de dropout

Autoencoder

Perceptron Multicamada

MNIST



Referências

Pattern Recognition and Machine Learning - Christopher Bishop [Seções 5.1 a 5.5]

Neural networks - Haykin [Capítulo 4]

Deep learning - Ian Goodfellow, Yoshua Bengio and Aaron Courville [Capítulo 6, 7, 8, 9, 10, 11, 12, 14]

LeCun, Y., Bengio, Y. and Hinton, G. E. (2015) Deep Learning Nature, Vol. 521, pp 436-444.

Hinton, G. E. (2007) Learning Multiple Layers of Representation. Trends in Cognitive Sciences, Vol. 11, pp 428-434.

Quoc V. Le A Tutorial on Deep Learning Part 1: Nonlinear Classifiers and The Backpropagation Algorithm

Quoc V. Le A Tutorial on Deep Learning Part 2: Autoencoders, Convolutional Neural Networks and Recurrent Neural Networks


Referências Complementares

Razvan Pascanu, Çağlar Gülçehre, Kyunghyun Cho and Yoshua Bengio, How to Construct Deep Recurrent Neural Networks, in: International Conference on Learning Representations 2014(Conference Track), 2014

Guillaume Alain and Yoshua Bengio, What Regularized Auto-Encoders Learn from the Data-Generating Distribution (2014), in: Journal of Machine Learning Research, 15(3563-3593)

Hinton, G. E. Where do features come from?. Cognitive Science, Vol. 38(6), pp 1078-1101.

Srivastava, N., Hinton, G., Krizhevsky, A., Sutskever, I. and Salakhutdinov, R. Dropout: A simple way to prevent neural networks from overfitting The Journal of Machine Learning Research, 15(1), pp 1929-1958.

Sutskever, I., Martens, J., Dahl, G. and Hinton, G. E. On the importance of momentum and initialization in deep learning In 30th International Conference on Machine Learning, Atlanta, USA, 2013.

Yoshua Bengio and Aaron Courville, Deep Learning of Representations, in: Handbook on Neural Information Processing, Springer: Berlin Heidelberg, 2013

Çağlar Gülçehre and Yoshua Bengio, Knowledge Matters: Importance of Prior Information for Optimization, in: International Conference on Learning Representations (ICLR'2013), 2013

Yoshua Bengio, Aaron Courville and Pascal Vincent, Representation Learning: A Review and New Perspectives (2013), in: Pattern Analysis and Machine Intelligence, IEEE Transactions on, 35:8(1798-1828)

Hinton, G. E., Srivastava, N., Krizhevsky, A., Sutskever, I. and Salakhutdinov, R. R. Improving neural networks by preventing co-adaptation of feature detectors http://arxiv.org/abs/1207.0580, 2012

Suskever, I., Martens, J. and Hinton, G. E. Generating Text with Recurrent Neural Networks. Proc. 28th International Conference on Machine Learning, Seattle, 2011.

Nicolas Le Roux and Yoshua Bengio, Deep Belief Networks are Compact Universal Approximators (2010), in: Neural Computation, 22:8(2192-2207)

Dumitru Erhan, Yoshua Bengio, Aaron Courville, Pierre-Antoine Manzagol, Pascal Vincent, Samy Bengio; Why Does Unsupervised Pre-training Help Deep Learning? Journal of Machine Learning Research, 11(Feb):625−660, 2010.

Hugo Larochelle, Yoshua Bengio, Jerome Louradour and Pascal Lamblin, Exploring Strategies for Training Deep Neural Networks (2009), in: Journal of Machine Learning Research, 10(1--40)

Yoshua Bengio, Learning deep architectures for AI (2009), in: Foundations and Trends in Machine Learning, 2:1(1--127)

van der Maaten, L. J. P. and Hinton, G. E. Visualizing Data using t-SNE. Journal of Machine Learning Research, Vol 9, (Nov) pp 2579-2605, 2008.

Hinton. G. E. What kind of a graphical model is the brain? International Joint Conference on Artificial Intelligence 2005, Edinburgh.

Yoshua Bengio, Gradient-Based Optimization of Hyperparameters (2000), in: Neural Computation, 12:8(1889--1900)

Hinton, G.E. Supervised learning in multilayer neural networks in The MIT Encyclopedia of the Cognitive Sciences Editors: Robert A. Wilson and Frank C. Keil The MIT Press, 1999.

Hinton, G. E., Plaut, D. C. and Shallice, T. Simulating brain damage Scientific American, 1993.

Nowlan. S. J. and Hinton, G. E. Simplifying neural networks by soft weight sharing.
Neural Computation, 4, 173-193.

Hinton, G.E. How neural networks learn from experience. Scientific American, September 1992.

Rumelhart, D. E., Hinton, G. E., and Williams, R. J. Learning representations by back-propagating errors.
Nature, 323, 533--536, 1986.

Hinton, G. E. Learning distributed representations of concepts. Proceedings of the Eighth Annual Conference of the Cognitive Science Society, Amherst, Mass, 1986.

Hinton, G. E., McClelland, J. L., and Rumelhart, D. E. Distributed representations. In Rumelhart, D. E. and McClelland, J. L., editors, Parallel Distributed Processing: Explorations in the Microstructure of Cognition. Volume 1: Foundations, MIT Press, Cambridge, MA. pp 77-109, 1986.

Rumelhart, D. E., Hinton, G. E., and Williams, R. J.
Learning internal representations by error propagation.
In Rumelhart, D. E. and McClelland, J. L., editors, Parallel Distributed Processing: Explorations in the Microstructure of Cognition. Volume 1: Foundations, MIT Press, Cambridge, MA. pp 318-362, 1986.





Friday, June 10, 2016

Aula 23 de Métodos Computacionais em Economia - Aprendizagem de Máquinas: Classificação Linear

Essa é a terceira aula de Aprendizagem de Máquinas do nosso curso. Esses são os slides usados em sala.



Códigos usados em sala de aula

OLS para classificação

Implementação do Perceptron

Implementação de um modelo de resposta binária

Referências

Pattern Recognition and Machine Learning - Christopher Bishop [Seções 4.1, 4.2 e 4.3]

A. Carvalho, D. Cajueiro e R. Camargo - Introdução aos Métodos Estatísticos para Economia e Finanças [Capítulo 9]

Modern multivariate statistical techniques - Alan Julian Izenman [Seções 8.1 a 8.4]

The elements of statistical learning - Hastie, Tibshirani e Friedman [Capítulo 4]

Neural networks - Haykin [Capítulos 3 e 5]

Bases de dados usadas para responder os exercícios

PRorum: Sites com bases de dados interessantes

Soluções de Exercícios

Linear Discriminant Analysis

Probabilistic Generative Models

Saturday, May 21, 2016

Aula 22 de Métodos Computacionais em Economia - Aprendizagem de Máquinas: Modelos Lineares

Essa é a segunda aula de Aprendizagem de Máquinas do nosso curso. Esses são os slides usados em sala.



Códigos usados em sala de aula


Decomposição Viés-Variância

Referências

Pattern Recognition and Machine Learning - Christopher Bishop [Seções 3.1, 3.2 e 3.6]

Modern multivariate statistical techniques - Alan Julian Izenman [Capítulo 5]

The elements of statistical learning - Hastie, Tibshirani e Friedman [Capítulo 3]

Neural networks - Haykin [Capítulo 7]



Referências Complementares para otimização numérica

Numerical methods in economics - Kenneth Rudd

Numerical methods in engineering with python - Jaan Kiusalaas

Bases de dados usadas para responder os exercícios

PRorum: Sites com bases de dados interessantes

Soluções de Exercícios

Implementação do Lasso

PLS - Implementação do Partial Least Squares

PCR - Principal Components Regression

Forwards Stepwise em python

Forwards Stagewise em python

Rede Neural de Bases radiais




Wednesday, May 18, 2016

Aula 21 de Métodos Computacionais em Economia - Introdução a Aprendizagem de Máquinas

Essa aula será apresentada no dia 16/06 na sequência de Seminários do Economics and Politics Research Group da UnB. Esses são os slides.

Referências

The discipline of machine learning - T. M. Mitchel

A few useful things to know about machine learning - P. Domingos

In defence of forensic social science - Amir Goldberg [Big data and Society, 2015]

Learning deep architectures for AI - Y. Bengio

Sociology in the era of big data: the ascent of forensic social science - D. A. McFarland e K. Lewis [American Sociology, 2015]

Economic reason and artificial intelligence - D. C. Parkes and M. P. Wellman [Sience 349, p.267, 2015]

Deep learning - Ian Goodfellow, Yoshua Bengio and Aaron Courville [Capítulo 5]

Aula 20 de Métodos Computacionais em Economia - Interlúdio 2: Análise Numérica e Otimização

Essa aula não será formalmente discutida em sala de aula. De fato, precisaríamos de muitas aulas para fazer um apanhado das principais idéias. Usaremos esse espaço apenas para fazer alguns comentários e indicar possíveis referências que podem ser consultadas em tópicos específicos.

Na segunda parte do nosso curso sobre Machine Learning, alguns tópicos de Análise Numérica e Otimização Numérica serão mencionados e explicados informalmente quando aparecerem. Sem tentar ser exaustivo, entre eles estão:

1) Métodos que lidam com a solução de sistemas lineares. Particularmente a decomposição LU.
2) Métodos que lidam com a solução de sistemas não lineares. Particularmente o método de Newton.
3) Métodos que lidam com otimização numérica. Particularmente o método do gradiente e formas de restringir problemas de otimização.

Referências

Analysis of Numerical Methods - Eugene Isaacson and Herbert Bishop Keller

A First Look at Numerical Functional Analysis - W. W. Sawyer

Numerical methods in economics - Kenneth Rudd

Numerical methods in engineering with python - Jaan Kiusalaas


Aula 19 de Métodos Computacionais em Economia - Interlúdio 1: Métodos de Monte Carlo

Na nossa décima nona aula de métodos computacionais introduzimos técnicas de Monte Carlo. Esses são os slides usados em sala.


Abaixo temos os exemplos apresentados em sala de aula:

Relação entre as áreas do círculo e quadrado

Consistência do OLS

Album de figurinhas

Referências

Numerical methods in economics - Kenneth Judd [Capítulo 8]

Introdução aos métodos estatísticos para economia e finanças - Alexandre Carvalho, Daniel Cajueiro e Reinaldo Camargo.

Referências adicionais

Estatística sem Mistério

Aula 18 de Métodos Computacionais em Economia - Compromisso entre eficiência temporal e espacial

Na nossa décima oitava aula de métodos computacionais discutimos o compromisso entre eficiência temporal e espacial. Esses são os slides usados em sala.

Códigos usados em sala de aula

Ordenação por contagem

Referências para essa aula:

Introduction to the Design and Analysis of Algorithms - Anany Levitin [Seções 7.1 e 11.2]

Introduction to Algorithms - Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest e Clifford Stein [Capítulo 8]

Aula 17 de Métodos Computacionais em Economia - Melhoria Iterativa

Na nossa décima sétima aula de métodos computacionais discutimos a estratégia conhecida como Melhoria Iterativa. Esses são os slides usados em sala.


Códigos usados em sala de aula

Marriage Stable Problem

Referências para essa aula:

Introduction to the Design and Analysis of Algorithms - Anany Levitin [Capítulo 10]

Combinatorial optimization: Algorithms and Complexity - Christos H Papadimitriou e Kenneth Steiglitz [Capítulo 19]


Referências complementares

Two-Sided Matching: A Study in Game-Theoretic Modeling and Analysis - Alvin E. Roth e Marilda A. Oliveira Sotomayor

Stable Marriage and Its Relation to Other Combinatorial Problems: An Introduction to the Mathematical Analysis of Algorithms - Donald Ervin Knuth

Soluções

College Problem Admission

Aula 16 de Métodos Computacionais em Economia - Estratégias Gananciosas

Na nossa décima sexta aula de métodos computacionais discutimos a estratégia conhecida como Gananciosa (ou Gulosa). Esses são os slides usados em sala.

Referências para essa aula:

Introduction to the Design and Analysis of Algorithms - Anany Levitin [Capítulo 9]

Combinatorial optimization: Algorithms and Complexity - Christos H Papadimitriou e Kenneth Steiglitz [Capítulo 12]

Introduction to Algorithms - Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest e Clifford Stein [Capítulo 16]

Soluções da série de exercícios

Algoritmo de Prim para encontrar a MST de um grafo


Algoritmo de Kruskal para encontrar a MST de um grafo


Aula 15 de Métodos Computacionais em Economia - Programação Dinâmica

Na nossa décima quinta aula de métodos computacionais discutimos a estratégia conhecida como Programação Dinâmica. Esses são os slides usados em sala.



Códigos usados em sala de aula

Fibonacci com Memoization ou Bottom-Up

Programação dinâmica para resolver o problema da mochila

Programação dinâmica para encontrar os menores caminhos

Referências para essa aula:

Introduction to the Design and Analysis of Algorithms - Anany Levitin [Capítulo 8]

Combinatorial optimization: Algorithms and Complexity - Christos H Papadimitriou e Kenneth Steiglitz [Capítulo 18]

Introduction to Algorithms - Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest e Clifford Stein [Capítulo 15]

Soluções da série de exercícios

Regressão linear segmentada

Multiplicação de cadeias de matrizes

Justificação de textos usando Programação Dinâmica

Maximizar a soma do produto dos elementos de uma pilha


Wednesday, May 11, 2016

Aula 14 de Métodos Computacionais em Economia - Branch and Bound

Na nossa décima quarta aula de métodos computacionais discutimos a estratégia conhecida como Branch e Bound. Esses são os slides usados em sala.


Códigos usados em sala de aula

Branch and bound para resolver o problema da mochila


Referências para essa aula:

Introduction to the Design and Analysis of Algorithms - Anany Levitin [Seção 12.2]

Combinatorial optimization: Algorithms and Complexity - Christos H Papadimitriou e Kenneth Steiglitz [Capítulo 18]

Referência complementar para estudar filas com prioridades

Data Structures and Algorithms in Python - Michael T. Goodrich, Roberto Tamassia, Michael H. Goldwasser [Capítulo 9]

Soluçoes dos exercícios

Branch and bound para resolver o problema de alocação

Branch and bound para resolver encontrar os caminhos mais curtos de um grafo (Djkstra)

Branch and bound para resolver o problema do caixeiro viajante


Tuesday, May 10, 2016

Aula 13 de Métodos Computacionais em Economia - Backtracking

Na nossa décima terceira aula de métodos computacionais discutimos a estratégia conhecida como Backtracking. Esses são os slides usados em sala.


Códigos usados em sala de aula

Backtracking para gerar e resolver labirintos

Problema das N rainhas usando Backtracking

Subset sum usando backtracking

Longest integer subsequence usando backtracking




Referências para essa aula:

Introduction to the Design and Analysis of Algorithms - Anany Levitin [Seção 12.1]

Lecture 3 do E-book Algorithms de Jeff Erickson.

Think recursively - Eric S. Roberts [Capítulo 8]

Referências complementares para essa aula:

Artificial intelligence: A modern approach - S. J. Russell and Peter Norvig [Capítulo 5]

Soluções de exercícios

Resta 1 usando backtracking

Slide Puzzle 15

Instant Insanity

Thursday, April 28, 2016

Workshop de Python para Economia no Departamento de Economia da UFBA

Nós fizemos um workshop bem legal de Python para Economia do Departamento de Economia da UFBA. Esse foi o material do curso.


Aula 1 de Métodos Computacionais em Economia: Noções de Programação Estruturada

Esses são os
slides usados em sala de aula.

Abaixo temos os exemplos apresentados em sala de aula:

Exemplo de Controle de Fluxo usando Condicionais

Exemplo do uso do Loop For em um programa computacional

Exemplo do uso do Loop While em um programa computacional

Referências Adicionais para essa aula:

Algoritmos em Ciência Popular:

Nine Algorithms That Changed the Future: The Ingenious Ideas That Drive Today's Computers Hardcover - John MacCormick

In Pursuit of the Traveling Salesman: Mathematics at the Limits of Computation - William J. Cook

Everything Is Obvious: How Common Sense Fails Us Paperback -
Duncan J. Watts

Referências de Python:

Think Python - Allen Downey

Alguns links externos relacionados com essa aula:

Computação Humana

Page Rank

Melhores livros de Python

Soluções das séries de exercício:

Questão 1

Questão 2

Questão 3

Questão 4

Questão 5

Aula 2 de Métodos Computacionais em Economia - Coleções Básicas de Dados

Na nossa segunda aula de métodos computacionais discutimos coleções básicas de dados. Esses são os slides usados em sala.

Abaixo temos os exemplos apresentados em sala de aula:

Como usar sequências de dados ou arrays em programação estruturada?

Como usar conjuntos ou sets em programação computacional?

Como usar mapas (maps) ou dicionários em programação computacional?

Aula 3 de Métodos Computacionais em Economia - Recursão

Na nossa terceira aula de métodos computacionais discutimos recursões. Esses são os slides usados em sala.


Abaixo temos os exemplos apresentados em sala de aula:

Implementações da sequencia de Fibonacci

Implementações do fatorial de um número

Solução da Torre de Hanoi


Soluções da série de exercícios

Pinturas de Mondrian usando recursão


Árvores usando recursão



Aula 4 Marriage Matching problem

Na nossa quarta aula de métodos computacionais discutimos o problema clássico conhecido como Marriage-Matching problem. Esses são os slides usados em sala.

Abaixo temos os exemplos apresentados em sala de aula:

Marriage Matching problem

Aula 5 Monte Carlo

Na nossa quinta aula de métodos computacionais introduzimos técnicas de Monte Carlo. Esses são os slides usados em sala.

Abaixo temos os exemplos apresentados em sala de aula:

Relação entre as áreas do círculo e quadrado

Consistência do OLS

Album de figurinhas

Aula 6 Biliotecas de Python

Na nossa sexta aula de métodos computacionais apresentamos algumas bibliotecas de Python. Esses são os slides usados em sala.

Abaixo temos os exemplos apresentados em sala de aula:

Python para Introductory Econometrics - Wooldridge

Tuesday, April 19, 2016

Aula 12 de Métodos Computacionais em Economia - Transformação e Conquista

Na nossa décima segunda aula de métodos computacionais discutimos a estratégia conhecida como Transformação e Conquista. Esses são os slides usados em sala.



Referências Adicionais para essa aula:

Introduction to the Design and Analysis of Algorithms - Anany Levitin [Seções 6.1 e 6.2]

Aula 11 de Métodos Computacionais em Economia - Divisão e Conquista

Na nossa décima primeira aula de métodos computacionais discutimos a estratégia conhecida como Divisão e Conquista. Esses são os slides usados em sala.



Abaixo temos os exemplos apresentados em sala de aula:

Merge sort

Referências Adicionais para essa aula:

Introduction to the Design and Analysis of Algorithms - Anany Levitin [Capítulo 5]

Solução de exercícios:

Produto de matrizes

Inversões

Quick sort

Aula 10 de Métodos Computacionais em Economia - Redução e Conquista

Na nossa décima aula de métodos computacionais discutimos a estratégia conhecida como Redução e Conquista. Esses são os slides usados em sala.


Abaixo temos os exemplos apresentados em sala de aula:

Torre de Hanoi

Busca binária

Insertion sort

Ordenação topológica

Permutações

Geração de todos os subconjuntos

Referências Adicionais para essa aula:

Introduction to the Design and Analysis of Algorithms - Anany Levitin [Capítulo 4]

Friday, April 15, 2016

Por que dia 17 de abril devemos ir para a rua pelo impedimento da Presidente Dilma?


Depois de ouvir muita bobagem, eu senti a obrigação de escrever esse post.

Por que você deve ser a favor do impedimento da Presidente Dilma e deve defender isso na rua?

1) Porque ela cometeu um crime de responsabilidade e NÃO é golpe. Gente, o SUPREMO já disse que não é golpe!

2) Porque ela acabou com o nosso sonho do Brasil ser um país desenvolvido. Minha geração provavelmente não verá mais isso, embora isso fosse provável quando Fernando Henrique entregou o país ao Lula.

3) Porque pais de família estão perdendo empregos e estabelecimentos comerciais estão fechando em consequência da política fiscal e econômica que ela promoveu em seu mandato.

4) Porque o Brasil quer menos inflação e uma nova agenda de crescimento econômico que ela não é capaz de fornecer.

5) Porque hoje temos a corrupção institucionalizada no país e queremos menos corrupção.

6) Porque ela e seus convidados tem feito manifestações constantes contra a Lava-Jato e contra as instituições desse país. A Lava-Jato é a ação mais bem sucedida contra a corrupção já implementada no Brasil.

7) Porque o palácio do planalto tem acolhido supostos criminosos.

8) Porque o Brasil não deve existir para servir a agenda do PT.

9) Porque precisamos de mais meritocracia e menos mediocracia.

10) Porque queremos mais liberdade!!

Sim, eu sei que tirar a Dilma não resolve todos os problemas do país! Mas é um bom começo!

Aula 9 de Métodos Computacionais em Economia - Força Bruta III - Busca Exaustiva em Grafos

Na nossa nona aula de métodos computacionais discutimos os algoritmos BFS e DFS que promovem busca exaustiva em grafos e várias de suas aplicações. Esses são os slides usados em sala.


Abaixo temos os exemplos apresentados em sala de aula:

Análise empírica de redes

Como implementar o algoritmo de busca exaustiva em grafos conhecido como breadth first search - BFS (busca em largura)?

Como implementar o algoritmo de busca exaustiva em grafos conhecido como depth first search - DFS (Busca em profundidade)?

Referências Adicionais para essa aula:

Introduction to the Design and Analysis of Algorithms - Anany Levitin [Seção 3.5]

Introduction to Algorithms - Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest e Clifford Stein [Capítulo 22]

Referências complementares para essa aula:

Networks: An Introduction - Mark Newman

Soluções de exercícios:

Como implementar BFS e DFS em Python e extrair informações úteis de um grafo, como conectividade, aciclicidade, etc?

Friday, April 8, 2016

Aula 8 de Métodos Computacionais em Economia - Força Bruta II - Busca Exaustiva

Na nossa oitava aula de métodos computacionais discutimos vários problemas clássicos usando o método de busca exaustiva. Nessa aula, vimos nosso primeiro problema com sabor de teoria econômico - o chamado problema Marriage-Matching. A solução apresentada foi uma baseada em busca exaustiva. Obviamente, nas próximas aulas iremos aprender estratégias que produzam algoritmos menos custosos. Esses são os slides usados em sala.


Abaixo temos os exemplos apresentados em sala de aula:

Existem bibliotecas prontas em python para gerar permutações e combinações?

Como implementar uma solução computacional para o problema do caixeiro viajante?

Como implementar uma solução computacional para o problema da mochila?

Como implementar uma solução computacional para o problema do casamento (marriage-matching)?

Referências Adicionais para essa aula:

Introduction to the Design and Analysis of Algorithms - Anany Levitin [Seção 3.4]

Referências Complementares:

In Pursuit of the Traveling Salesman: Mathematics at the Limits of Computation -
William J. Cook

Wednesday, April 6, 2016

Aula 7 de Métodos Computacionais em Economia - Força Bruta

Na nossa sétima aula de métodos computacionais discutimos vários problemas clássicos usando o método de força bruta (usando a definição do problema). Obviamente, nas próximas aulas iremos aprender estratégias que produzam algoritmos menos custosos. Esses são os slides usados em sala.


Abaixo temos os exemplos apresentados em sala de aula:

Algoritmos de ordenação com complexidade quadrática

Cálculo de máximo e mínimo de uma sequência

Busca linear em uma lista

Cálculo de determinantes usando cofatores

Produto de matrizes em Python

Par mais próximo em python

Substring matching

Fecho convexo

Referências Adicionais para essa aula:

Introduction to the Design and Analysis of Algorithms - Anany Levitin [Seções 3.1, 3.2 e 3.3]

Referências Complementares:

Computational Geometry: Algorithms and Applications - Mark de Berg and Otfried Cheong

Monday, April 4, 2016

Aula 6 de Métodos Computacionais em Economia - Filas e Pilhas

Na nossa sexta aula de métodos computacionais discutimos duas coleções importantes de dados: pilhas e filas. Esses são os slides usados em sala.

Abaixo temos os exemplos apresentados em sala de aula:

Como implementar uma pilha em python?

Como implementar uma fila em python?

Como python aloca memória dinamicamente para uma lista?


Referências Adicionais para essa aula:

Introduction to Algorithms - Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest e Clifford Stein [Seções 10.1, 17.2 and 17.4]

Data Structures and Algorithms in Python - Michael T. Goodrich, Roberto Tamassia, Michael H. Goldwasser [Seções 5.3, 6.1, 6.2]

Fundamentals of Python: Data Structures - Kenneth Lambert [Capítulos 7 e 8]

Data Structures and Algorithms Using Python - Rance D. Necaise [Capítulos 7 e 8]

Solução da série de exercícios

Você pode dar um exemplo de um algoritmo que verifica se um número é um palíndromo usando pilha?

Como usar uma pilha para gerar todas as permutações de um conjunto?

Algoritmo não recursivo para gerar todos os subconjuntos de um dado conjunto

Friday, April 1, 2016

Aula 5 de Métodos Computacionais em Economia - Complexidade computacional



Na nossa quinta aula de métodos computacionais discutimos Complexidade Computacional. Esses são os slides usados em sala.

Abaixo temos os exemplos apresentados em sala de aula:

Medição empírica da complexidade computacional

Referências Adicionais para essa aula:

Introduction to Algorithms - Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest e Clifford Stein [Capítulo 3]

Introduction to the Design and Analysis of Algorithms - Anany Levitin [Capítulo 2]

Soluções da série de exercícios:

Como calcular a complexidade computacional das implementações recursivas da série de fibonacci?

Qual a complexidade computacional de um algoritmo recursivo que satisfaz a relação de recorrência?

Qual a complexidade computacional dessas relações de recorrência de acordo com o Teorema Mestre (master theorem)?