Prof. Adolfo Bauchspiess

Control and Automation
Electrical Engineering

e-Mail:
adolfobs AT ene unb br
 

Address:
ENE/FT/UnB Sala B1-34/18,

70919-970 Brasília-DF,Brazil


alvoradaMar2023
unb




LARA

Lab. de Automação e Robótica
Departamento de Engenharia Elétrica
Universidade de Brasília - UnB





Site: About Lectures Research Papers
Monographs (Grad./M.Sc./Ph.D.)

Disciplinas: Controle de Sistemas Dinâmicos
Inteligência Computacional Automação Predial IoT Introdução à Eng. Mecatrônica
Controle Dinâmico
Lab. Controle Dinâmico
Identificação de Sistemas Dinâmicos
Controle Digital

                                                               

ENE0154 - Inteligência Computacional - 2023.2

Metodologia Plano de Ensino
Ementa
Links de Interesse
Referências
Cronograma

Pré-Requisito: CSD.  Local: (a designar).
                                                               
- Aprender3 IntelComp, Exercícios Computacionais e Teste de Avaliação.
- A presente página ( http://www.ene.unb.br/adolfo/Lectures/IC.html) será utilizada para comunicações da disciplina.


Metodologia de Ensino proposta:

- Aulas expositivas, demos, exercícios computacionais, artigo.



Avaliação:


Atividades Individuais:

- Exercícios Computacionais: Ex1: Ex4

- Teste no aprender3.unb.br: T 23/10

- 1 Prova: P 18/12

Atividades em Dupla (ou individual):

- artigo: Apresentação (pptx/pdf), Texto(pdf), Arguição.: 11/12 e 13/12
Trabalho de pesquisa científica, comparando pelo menos 3 artigos publicados em conteúdo da disciplina
em área de interesse dos alunos (e.g., PIBIC, TG/ TCC, estágio).

 Média =   (notas dos 3 melhores Ex) + 1,5*T1 + 2,5*P + 3*A


Exercícios

Exercício 1: 18/9 -> 16/10   
OCR   Ex1py

Exercício 2: 16/10 -> 30/10
ADALINE   Ex2py  Ex2m  

Exercício 3: 22/11 -> 6/12
Deep Learn

Exercício 4: 6/12 -> 20/12
Reinforcement-Learn.


   Demos   

Classificação Não-Linear
Demo1   Demo1py_m

Classificação Diabetes
Demo2py

MLP x RBF
Demo3m

Camada Comptetitiva
Demo4m

LVQ
Demo5m

  NARMA-L2
Demo6 Ex slx

Adaptive Neuro Fuzzy

Demo7 ANFIS.slx

Template Exercícios/Artigo Overleaf /Word

======================================================================================================

======================================================================================================

Apostila e Slides: Sistemas Inteligentes - Redes Neurais e Lógica Fuzzy.
(In English - Soft Computing: SC1_25 SC26_50 SC51_83 SC84_103 SC104_140 SC141_201 SC_NARMA-L2  SVM)
Algumas provas anteriores:   rP1ICIN218 rP2ICIN218  rP1ICIN 115   rP2ICIN115   rP1ICIN213 rP2ICIN213 rP1ICN212 rP2ICN212 


Links de Interesse

Machine_Learning-AB_ENE2019(80 slides)    Machine_Learning-AB_ENE2019red (51 slides)

LIVROS  
Notas de Neural Networks -A comprehensive foundation - Simon Haykin
http://www.cis.hut.fi/Opinnot/T-61.261/luennot2003/
Reinforcement Learning: An Introduction 2nd ed March 22, 2018, github, Richard S. Sutton and Andrew G. Barto
Numerical Recipes in C em PDF:
http://www.library.cornell.edu/nr/bookcpdf.html

MACHINE LEARNING Env.
https://software.intel.com/pt-br/ai/devcloud
https://colab.research.google.com/notebooks/welcome.ipynb#recent=true
KERAS:
The Python Deep Learning Library
TensorFlow
Anaconda

DEMOS
https://colab.research.google.com/github/tensorflow/docs/blob/master/site/en/r2/tutorials/quickstart/beginner.ipynb#scrollTo=0trJmd6DjqBZ
svm https://scikit-learn.org/stable/auto_examples/classification/plot_digits_classification.html
k-means PCA digits 
https://www.naftaliharris.com/blog/visualizing-k-means-clustering/

http://stanford.edu/class/ee103/visualizations/kmeans/kmeans.html
https://github.com/crsmithdev/notebooks ml-logistic-regression

TUTORIAIS

- https://cs.uwaterloo.ca/~mli/Deep-Learning-2017-Lecture5CNN.ppt

- Introduction to Deep Learning with Keras, by Jonathon Hare, Univ. of Southampton, 2017

- Tutorial: Deep Reinforcement Learning, PDF by David Silver, Google DeepMind, 2016
- Reinforcement Learning Tutorial - Peter Bod'ik, UC Berkeley, 2007

- Deep Learning Tutorial - EE@IITM  PDF by Mitesh M. Khapra, IITM, Madras, 2017

- How Deep Neural Networks Work, Video by Brandon Rohrer, Facebook, 2017

- Efficient Processing of Deep Neural Networks: A Tutorial and Survey. Zse et al., csail.mit.edu, Proc. IEEE 2017
- Recurrent Neural Networks, Nazli I. Cinbis, vision.cs.hacettepe.edu.tr, siu2016-tutorial
- Tutorial on Deep Learning, Bálint Daróczy, www.wire.tu-bs.de, 2017
- Machine Learning - Logistic Regression, Jeff Howbert, courses.washington.edu, 2012





Plano de Ensino


Objetivo do Curso

A disciplina Inteligência Computacional tem como objetivo apresentar técnicas de projeto para a engenharia, Redes Neurais Artificiais, que se originaram de pesquisas na área de inteligência artificial. Aprendizado profundo e Aprendizado por reforço são os tópicos mais relevantes. A disciplina é acompanhada de exercícios em Python.

Motivação

Redes Neurais Artificiais:

Programas de computador podem emular a maneira como o cérebro resolve problemas: uma grande rede altamente interconectada de neurônios relativamente simples trabalhando em paralelo. Convencionou-se assim, chamar de Redes Neurais Artificiais toda estrutura de processamento paralelo que utiliza o conexionismo como paradigma. Talvez a característica mais importante das Redes Neurais Artificiais seja a sua capacidade de aprendizado, i.e., problemas complexos em engenharia podem ser resolvidos treinando-se a rede pela apresentação do padrão de comportamento desejado.
Vivemos atualmente, a assim chamada "3a onda" das RNAs.  1a onda, ~anos 1960 - perpectpron; 2a onda, ~anos 1990 - backpropagation; 3a onda, ~2010 - deep learning.

Lógica Fuzzy:

Seres humanos tomam decisões considerando não valores exatos, mas sim utilizando uma lógica que leva em conta um certo "grau de pertinência" das variáveis envolvidas no processo decisório. Não se liga, por exemplo, o ar condicionado em 27°C, às 957 h, e umidade relativa do ar em 77%, mas sim, quando está "quente", no "começo da manha" e quando o ar está "abafado". Estas variáveis lingüísticas podem ser melhor descritas e manipuladas num conjunto Fuzzy. A Lógica Fuzzy é assim, uma generalização da lógica clássica que permite incluir a imprecisão ("fuzziness") nos processos decisórios. Sistemas neuro-fuzzy combinam a representação especialista do conhecimento com apredizado neural.


Metodologia

Aulas expositivas acompanhadas de atividades computacionais. Exercícios individuais em Python ou MatLab e um trabalho de pesquisa, em dupla, (Artigo) visam fixar o conteúdo.

Ementa

            Introdução, Redes Neurais Artificiais, “Deep Learning”, Lógica Fuzzy, Computação Evolutiva, Aprendizado por Reforço, Experimentos Computacionais.

Programa

Introdução

Inteligência Computacional; Histórico; Problemas de Interesse: Classificação de Padrões, Regressão, Tomada de Decisão; Conceitos de Aprendizado.

Redes Neurais Artificiais

Modelos de neurônios artificiais; Arquitetura; Perceptron Multicamada; Redes de Funções Radiais de Base; Mapas Auto-Organizáveis.

“Deep Learning”

Treinamento em redes profundas: Entropia, “Dropout”, Unidades Softmax e LRU, Redes convolutivas.

Lógica Fuzzy

Conjuntos Fuzzy; Funções de Pertinência; Operações;  Inferência; Sistema Baseado em Regras Fuzzy; Controlador Fuzzy; Redes neuro-fuzzy.

Computação Evolutiva

Conceitos de Evolução e Genética; Algoritmos Genéticos; Definições; Operadores básicos (seleção, mutação, cross-over); Variantes.

Aprendizado por Reforço

Definições; Processos de Decisão de Markov; Programação dinâmica; Métodos Monte Carlo; SARSA; Q-Learning

 

Experimentos Computacionais

(adequar ao perfil da turma/docente)

Reconhecimento de padrões - MLP, CNN, DL

Aproximação de funções

Aprendizado por reforço

Processamento/controle Neural

Modelagem Fuzzy

Controle Fuzzy e Neuro-Fuzzy

Aplicação “Deep Learning”

                      Outros temas atuais.


Relatórios:

Os relatórios e o artigo deve ser o mais objetivo possível, porém conter todas as observações relevantes feitas durante a realização do experimento. Visando padronizar a correção, o seguinte formato de relatório é sugerido:Template Exercícios/Artigo Overleaf /Word.
Os relatórios devem ser enviados para adolfobs [at] ene.unb.br, identificando no "assunto" do e-mail e no nome do arquivo .zip anexado (relatório em pdf + códigos): IC_Exp<#Exp><nome_aluno>

A pontuação leva em conta os seguintes aspectos:
- todos os procedimentos foram seguidos (40%),
- os resultados são apresentados de forma e concisa e clara: gráficos, tabelas etc (30%),
- a intrepretação dos resultados é correta e reflete/abrange os objetivos do exercício (30%),
- pontualidade - o atraso será penalizado com 0,5 pontos por dia útil.

Bibliografia

  1. Haykin, S.: Neural Networks and Learning Machines, 3rd Ed., Prentice Hall, 2009
  2. Silva, I.N.; Spatti, D. H.; Flauzino, R. A.: Redes Neurais Artificiais, Artliber, 2010
  3. Sutton, R.S., Barto, A. G.: Reinforcement Learning: An Introduction, MIT Press, 2017
  4. Goodfelow, I., Bengio, Y., Courville, A. Deep Learning, MIT Press, 2016
  5. Kayacan, E. & Khanesar, M.A.: Fuzzy Neural Networks for Real Time Control Applications, Elsevier, 2015
  6. Bäck,T., Fogel, D., Michalewicz, Z.: Evolutionary Computation 1: Basic Algorithms and Operators, Institute of Physics Publishing, 2000

Referências Complementares


  • Oliveira Jr., H.A. (coord.), Caldeira, A.M. et al.: Inteligência Computacional aplicada à Administração, Economia e Engenharia em Matlab®, Thomson, 2008
  • Artero, A.O.: Inteligência Artificial - Teórica e Prática, Livraria da Física, 2008
  • Nascimento Jr. C.L.: Yoneyama, T.: Inteligência Artificial em Controle e Automação, Edgard Blücher, 2000
  • Shaw, I. S., Simões, M. G.: Controle e Modelagem Fuzzy, Edgard Blücher, São Paulo, 1999
  • Gupta, M.M.; Sinha, N. K.: Intelligent Control Systems - Theory and Applications, IEEE Press, 1996
  • MathWorks® - Neural Network/Fuzzy Locig Toolbox - User Manual


  • Cronograma – ENE 0154 -2023.2 

    ae - Aula Expositiva, Tav – Teste de Avaliação, TD - Tira Dúvidas (síncrono), Ei - Apresentação do Exercício i, EEi - data de Entrega Ei

    Data #

    Conteúdo Programático
    Material Complementar
    4/9 1
    Plano de ensino
    Introdução:
    - Conexionismo
    - Heurísicas
    - IA Simbólico
    - IA Subsimbólico
    IntelComp1.mp4
    IntelCompUnB.pdf p1-14

    Haykin Livro Cap 1 - Introdução
    Ivan Silva Cap 1 - Introdução

    6/9
    2
    Aprender:
    Emular cérebro humano
    - Fisionlogia
    - Psicologia
    Reconhecimento de Padrões x Paradoxos
    Rede de neurônios
    - Sinapses
    - Plasticidade
    IntelComp2.mp4
    IntelCompUnB.pdf p15-25

    Haykin Livro Cap1 - Learning Processes
    Ivan Silva Cap 2 - Arquiteturas de redes neurais artificiais e
    processos de treinamento

    11/9 3
    Engenharia do Conhecimento
    - RNA, Fuzzy, AG, IA
    Conjectura de Gödel
    AG ex. Mastermind
    Aprox. Universais
    IntelComp3.mp4
    IntelComp4.mp4
    IntelCompUnB.pdf p26-32

    Ex1 - Reconhecimento OCR
    Ambiente Python/ML

    13/9 6
    Fundamentos Biológicos
    Fluxo unidirecional da informação
    Neurotransmissores
    Integração espaço/temporal
    Modulção freq. de pulsos
    Aprendizado Supervisionado
    - aproximação de funções (interpolação)
    - classificação de padrões
    Neurônio de McCulloch
    Regra delta de Hebb
    IntelCompUnB.pdf p33-49

    IntelCompUnB.pdf p33-49
    Ivan Nunes da Silva
    3 The Perceptron Network
    3.1 Introduction
    3.2 Operating Principle of the Perceptron
    3.3 Mathematical Analysis of the Perceptron
    3.4 Training Process of the Perceptron
    Haykin


    1 Rosenblatt’s Perceptron
    1.1 Introduction
    1.2. Perceptron
    1.6. The Batch Perceptron Algorithm
    18/9 7
    O Perceptron de Rosenblatt

    Regra delta de Widrow-Hoff (LMS)
    Regra delta genearlizada
    Erro derivativo Quadrático
    Backpropagation - Werbos, 1974
    PDP MIT, Hinton, Williams, Rummelhart, 1986
    4 The ADALINE Network and Delta Rule
    4.1 Introduction
    4.2 Operating Principle of the ADALINE
    4.3 Training Process of the ADALINE
    4.4 Comparison Between the Training Processes of the Perceptron
    and the ADALINE
    3 The Least-Mean-Square Algorithm
    3.1 Introduction
    3.2 Filtering Structure of the LMS Algorithm
    3.5 The Least-Mean-Square Algorithm
    3.12 Virtues and Limitations of the LMS Algorithm
    20/9 8
    EE1 E2
    O projeto de uma RNA:
    - Dados: # amostras, representatividade no domínio
    - Topologia: # camadas, # neurônios por camada, funções de ativação
    - Exploração x Explotação ( x Condições Iniciais)

    A busca pelo mínimo global
    O pragmático "bom" mínimo local
    Gradiente Descente
    Momento
    SGD - Gradiente Descendente Estocástico
    ADAM
    Jacobiano
    5 Multilayer Perceptron Networks
    5.1 Introduction
    5.2 Operating Principle of the Multilayer Perceptron
    5.3 Training Process of the Multilayer Perceptron
    5.3.1 Deriving the Backpropagation Algorithm
    5.3.2 Implementing the Backpropagation Algorithm
    5.3.3 Optimized Versions of the Backpropagation Algorithm
    5.4 Multilayer Perceptron Applications
    5.4.1 Problems of Pattern Classification
    5.4.2 Functional Approximation Problems (Curve Fitting)
    5.5 Aspects of Topological Specifications for MLP Networks
    5.5.1 Aspects of Cross-Validation Methods
    5.5.2 Aspects of the Training and Test Subsets
    5.5.3 Aspects of Overfitting and Underfitting Scenarios
    5.5.4 Aspects of Early Stopping
    5.5.5 Aspects of Convergence to Local Minima
    Multilayer Perceptrons
    4.1 Introduction
    4.2 Some Preliminaries
    4.3 Batch Learning and On-Line Learning
    4.4 The Back-Propagation Algorithm
    4.5 XOR Problem
    4.6 Heuristics for Making the Back-Propagation Algorithm Perform Better
    4.11 Generalization
    4.12 Approximations of Functions
    4.13 Cross-Validation
    4.15 Virtues and Limitations of Back-Propagation Learning
    25/9 9

    Semana Universitária


    27/9 10
    Semana Universitária

    2/10 11
    ADALINE as adpative FIR identification
    Hopfield Network


    Ex2 - ADALINE
    5.4.3 Problems Involving Time-Variant Systems
    15 Dynamically Driven Recurrent Networks
    15.2 Recurrent Network Architectures
    4/10 12
    RBF 6 Radial Basis Function Networks
    7. Recurrent Hopfield Networks
    7.1 Introduction
    7.2 Operating Principle
    7.4 Associative Memory
    7.5 Design Aspects
    5 Kernel Methods and Radial-Basis Function Networks
    5.4 Radial-Basis-Function Networks
    5.5 K-Means Clustering
    15 Dynamically Driven Recurrent Networks
    15.1 Introduction
    15.2 Recurrent Network Architectures
    9/10 13
    Aprendizado não-supervisionado
    K-Means, LVQ, SOM


    (in) 9 Self-Organizing Maps
    9.2 Two basic Feature-Mapping Models
    9.7 Hierarchical Vector Quantization
    11/10 14
    Ns Sra Aparecida


    16/10 15
    Controle não-linear com Redes Neurais – NARMA-L2

    18/10 16 EE2 E3 Aula de exercícios - provas anteriores Lecture 5: Convolutional Neural Networks, Prof. Ming Li, UWaterloo/CA
    NCC_DL_Tutorial.pdf - Prof. Khapra, Madras/In

    23/10 17 T Teste
    NCC_DL_Tutorial.pdf - Prof. Khapra, Madras/In
    Deep_Learning Tutorial, Prof. Daroczy
    Ex3 Deep Learn - CIFAR10

    25/10 18
    Redes Convolucionais -
    Conjuntos de Trainamento – MNIST, CIFAR, ImageNetCNN aplicadas à reconhecimento de padrões em imagens
    - Weight sharing, normalização, feature maps, transfer learning
    - camada de convolução - maxPool - Flattening
    Books with Code :
         Simon J.D. Prince - Understanding Deep Learning
         Zhang, Lipton, Li, Somal - Dive into Deep Learning
    Exemplos IA/ML: SC141_201 SC
    Artificial Intelligence - 65th Jubilee 2021- Ramo Estudantil IEEE UFCG
    30/10 19
    Deep Learning – Arquiteturas: RESNET, GAN, RCNN, LSTM
    Ambientes DL: VSCode, Intel, Colab, Anaconda
    TensorFlow, PyTorch, GPU, TPU, Movidia
    Machine Learning-AB ENE2019
    AI 65th Juliblee Ramo Estudantil IEEE UFCG

    Regressão Logistica
    1/11 20

    Support Vector Machine
    Chap 6 - Support Vector Machines  - Haykin, Neural Networks and Learning Machines

    6/11 21
    Aplicações de RNAs e Sistemas Fuzzy IntelComp CV PCA

    8/11
    22

    Support Vector Machine
    Aplicação em localização in-door
    lecture_10_ruohan RNN cs321n stanford 2022
    RNN yfwang UCSB
    funny video!!: Long Short-Term Memory (LSTM), Clearly Explained

    13/11 23
    EE3 E4

    Validação cruzada, PCA
    Ruohan Gao - cs321n stanford 2022: lecture_11 Atention and Transformers
    Hiroto Honda - Google Colab: Vision Transformer Tutorial.ipynb
    Atul Ranjan - Python in Plain English: image-captioning-with-an-end-to-end-transformer-network

    15/11
    24



    20/11 25


    RNN - Recurrent Neural Networks
    Transformer Deep Learning

    RL_ENE2010

    - Reinforcement Learning Tutorial - Peter Bod'ik, UC Berkeley, 2007

    Silver, DeepMind: deep_rl_tutorial


    22/11 26
    LSTM - Long Short Term Memory

    - Tutorial: Deep Reinforcement Learning, PDF by David Silver, 2016
    Apresentação Guilhem RL para processo Nível Líquidos 4a ordem


    27/11 27
    Programação Dinâmica – Bellman, Recompensa Futura----
    Aprendizado por reforço – Exploration x Exploitation

    Exemplos: swing-up pêndulo, self-driving car



    29/11 28

    Deep Reinforcement Learnig


    4/12 29

    Preparação Artigo


    6/12 30
    Conclusões IC
    Tópicos avançados (SoTA) em IC


    11/12 31 Artigo1
    Apresentação grupos

    13/12
    32
    Artigo2
    Apresentação grupos

    18/12
    33
    P - Prova


    20/12
    34






    Last Updated: Brasília, 14Ago2023