Problemas de Satisfação de Restrições
|
|
|
- João Vítor Sabrosa Caldas
- 10 Há anos
- Visualizações:
Transcrição
1 Computação Inteligente Problemas de Satisfação de Restrições Lucas Augusto Carvalho Mestrado em Ciência da Computação DCOMP - Universidade Federal de Sergipe 1
2 Conteúdo Problemas de Satisfação de Restrições (CSPs) Procura com Retrocesso para CSPs Ordenação de variáveis e de valores Propagação de informação nas restrições Procura Local para CSPs Estrutura dos CSPs 2
3 Problemas de Satisfação de Restrições Problema de Procura Tradicional: CSP: estado é uma caixa preta qualquer estrutura de dados que suporte função sucessores, função heurística, e teste objetivo estado é definido por variáveis Xi com valores do domínio Di Teste objetivo é um conjunto de restrições que especificam combinações possíveis de valores para subconjuntos de variáveis Verificar se restrições C1, C2,..., Cm são satisfeitas 3
4 Problemas de Satisfação de Restrições Possível utilização de algoritmos genéricos mais poderosos do que os tradicionais algoritmos de procura 4
5 Exemplo: Coloração de Mapa Variáveis WA, NT, Q, NSW, V, SA, T Domínios Di = {vermelho, verde, azul} Restrições: regiões adjacentes com cores diferentes e.g., WA NT, ou (WA,NT) = {(vermelho,verde), (vermelho,azul), (verde,vermelho), (verde,azul), (azul,vermelho), (azul,verde)} 5
6 Exemplo: Coloração de Mapa 6
7 Exemplo: Coloração de Mapa Soluções são atribuições completas e consistentes. e.g., WA = vermelho, NT = verde, Q = vermelho, NSW = verde, V = vermelho, SA = azul, T = verde 7
8 Grafo de Restrições CSP binário: cada restrição relaciona duas variáveis Grafo de restrições: nós são variáveis, arcos são restrições 8
9 Tipo de Variáveis Variáveis discretas Domínios finitos: n variáveis e tam(domínio) = d O(d^n) atribuições completas Ex: coloração de mapas [tam(dominio) = 3] Domínios infinitos: valores inteiros, strings, etc. Ex: job scheduling, variáveis são inicio/fim de dias para cada atividade Necessário uma linguagem de restrição, ex: StartJob1 + 5 StartJob3 Não dá para enumerar todas as combinações de valores possíveis 9
10 Tipo de Variáveis Variáveis contínuas e.g., hora de início e fim de observações do Telescópio Hubble 10
11 Tipos de Restrições Restrições Unárias: envolvem uma única variável e.g., SA green Restrições binárias: envolvem pares de variáveis e.g., SA WA Restrições de alta-ordem: envolvem 3 ou mais variáveis e.g., quebra-cabeças criptoaritmético 11
12 Tipo de Restrições Restrições globais: envolvem várias variáveis e.g. AllDiff Restrições absolutas (não podem ser violadas) ex: AO TN Restrições preferenciais (devem ser satisfeitas quando possível) ex: problema de elaboração de horários 12
13 Tipo de Restrições Todas as restrições de ordem superior para domínios finitos podem ser convertidas em restrições binárias usando variáveis auxiliares 13
14 Exemplo: QB Criptoaritmético Variáveis: F T U W R O X1 X2 X3 Domínio: {0,1,2,3,4,5,6,7,8,9} Restrições: (1) Alldiff (F,T,U,W,R,O) (2) O + O = R + 10 X1 (3) X1 + W + W = U + 10 X2 (4) X2 + T + T = O + 10 X3 (5) X3 = F, T 0, F 0 Cada letra do problema representa um dígito diferente; últimos dígitos (F e T) têm de ser diferentes de zero. 14
15 Classes de Problemas Problemas de satisfatibilidade O objetivo é encontrar uma associação de valores para as variáveis que satisfaça algumas restrições Exemplos: Criptoaritmética, n-rainhas, coloração de mapas Problemas de otimização Cada associação de um valor para cada variável tem um custo O objetivo é encontrar uma associação com o menor custo (associação ótima) Exemplo: Elaboração de horário de aula 15
16 Relacionamento com Busca O caminho até o objetivo não é importante, somente a solução Não existe um nó inicial pré-definido Frequentemente estes problemas são grandes, com centenas de variáveis Explorar sistematicamente o espaço de estados pode ser inviável Para problemas de otimização não existem nós objetivos bem definidos 16
17 Formulação como Busca Estados são definidos por valores atribuídos Formulação do problema: Estado inicial: { } --- variáveis sem valores atribuídas Função sucessor: um valor é atribuído à variável sem gerar conflitos Teste de objetivo: conjunto de atribuições está completo 17
18 Formulação como Busca Considerando Busca em Largura (sem heurística):... Fator b na raiz = n*d Fator b seguinte = (n-1)*d Quantas folhas possui a árvore? n!*d^n folhas ainda que existam apenas d^n atribuições completas 18
19 Busca com Backtracking Propriedade ignorada: artibuições à variáveis são comutativas [WA=red e NT=green] <==> [NT=green e WA=red] logo, considerar apenas uma única variável em cada nó b = d ==> d^n folhas Busca com Backtrack = Busca em profundidade para CSPs com única atribuição de variável por nível Algoritmo de busca básico para CSPs Soluciona 8-rainhas com profundidade 25 19
20 Exemplo: busca com Backtracking 20
21 Exemplo: busca com Backtracking 21
22 Exemplo: busca com Backtracking 22
23 Exemplo: busca com Backtracking 23
24 Melhorando a eficiência Uso de heurísticas: Qual a próxima variável a ser considerada? Em que ordem os valores do domínio devem ser atribuídos? Podemos prever uma falha inevitável? 24
25 Heurística 1 Escolher sempre a variável com menor número de valores possíveis (mais restrita): MRV (Minimum Remaining Values) 25
26 Heurística 2 - MRV não ajuda na escolha da primeira variável; - Escolher a variável com maior número de restrições para as outras variáveis: Degree Heuristics; - South Australia é adjacente a todas as outras regiões! 26
27 Heurística 3 - Em que ordem os valores do domínio devem ser atribuídos? - Dada uma variável, escolha o valor menos restritivo para as próximas: Least-constrainingvalue 27
28 Heurística 4 Reduzir o espaço de busca durante a busca ou antes mesmo dela ter início Heurística Forward checking: - Guarda valores possíveis remanescentes para variáveis sem atribuições ainda - Busca finaliza quando não existem mais valores possíveis para qualquer variável Forward checking = verificação posterior/olharem-frente 28
29 Heurística 4 29
30 Heurística 4 30
31 Heurística 4 31
32 Heurística 4 32
33 Heurística 4 Propagação de restrições verifica restrições localmente. 33
34 Heurística 5 - Do Inglês arc consistency - Forma mais simples de propagação assegura consistência de arcos e.g. arco entre X e Y X Y é consistente sse para todos os valores x em X existe algum valor possível y em Y Y X é consistente sse para todos os valores y em Y existe algum valor possível x em X 34
35 Heurística 5 35
36 Heurística 5 Se X perde um valor, vizinhos devem ser checados novamente 36
37 Heurística 5 Detecta falha mais cedo do que Forward Cheking Pode ser executado como um preprocessador da busca 37
38 Retrocesso Inteligente - Retrocesso com salto: Q = vermelho, NSW = verde, V = azul, T = vermelho, SA = conflito! - Retrocesso alterar valor de T T não foi responsável pelo conflito Conjunto de conflito {Q,NSW,V} retroceder inteligentemente para a variável que causou o conflito e foi atribuída mais recentemente, i.e. V - Forward checking faz o mesmo 38
39 Retrocesso Inteligente Retrocesso com salto dirigido ao conflito: WA = vermelho, NSW = vermelho, T = vermelho - Atribuir NT, Q, V, SA não existe nenhuma atribuição consistente - Conjunto de conflito não resolve o problema porque NT não está diretamente relacionada com WA e NSW - Conjunto de conflito tem de ir para além de relações diretas 39
40 Retrocesso Inteligente O retrocesso inteligente não evita que o mesmo conflito venha a aparecer novamente em outro ramo da árvore, e.g. T = vermelho, WA = vermelho, NSW = vermelho T = azul, WA = vermelho, NSW = vermelho Repetição de erros pode ser evitada com aprendizagem! Adicionar uma restrição que não permita que volte a acontecer WA = vermelho NSW = vermelho WA vermelho NSW vermelho 40
41 Procura Local Usar algoritmos que usam estados completos, i.e. todas as variáveis atribuídas Para aplicar procura local a CSPs: Permitir estados em que não são satisfeitas todas as restrições Transições entre estados consiste na re-atribuição de valores a variáveis Ordenação de variáveis: selecionar aleatoriamente qualquer variável para a qual exista um conflito Seleção de valores com a heurística menor número de conflitos (min-conflicts): Escolher valor que viola o menor número de restrições Se existirem vários valores nestas condições escolher um deles aleatoriamente 41
42 Exemplo: 4 rainhas Estado: 4 rainhas em 4 colunas (4^4 = 256 estados) Ações: mover rainhas nas colunas Teste objetivo: não há ataques Função de Avaliação: h(n) = número de ataques 42
43 Procura Local x Backtracking Vantagens Encontra soluções para problemas de grandes dimensões ( rainhas) Tempo de execução da heurística do menor número de conflitos está pouco dependente da dimensão do domínio Desvantagens Não permite provar que não há solução porque não mantém um registo dos estados já visitados 43
44 Estrutura de Problemas - A estrutura de um problema, obtida através da representação em grafo, pode ser usada para facilitar a resolução do problema - É importante detectar sub-problemas: melhorias no desempenho Que decisões afetam outras decisões? E.g. não existe nenhuma relação entre Tasmânia e as outras regiões 44
45 Estrutura em Árvores Teorema: se um CSP não tem ciclos, então pode ser resolvido em tempo O(nd^2) em vez de O(d^n) Tipicamente um CSP que tem uma estrutura em 45 árvore pode ser resolvido em tempo linear no número de variáveis
46 Aproximação para Árvores - Podemos transformar um CSP numa estrutura em árvore adaptando o problema: remoção e colapsagem de nós - Remoção de nós: atribuir valores a algumas variáveis t.q. variáveis não atribuídas formem uma árvore Compensa se o número de variáveis a atribuir é pequeno Identificar estas variáveis é NP-difícil! uso de aproximações E.g. atribuir SA 46
47 Aproximação para Árvores Colapsagem de nós - Problema resultante é uma árvore cujos nós são sub- Problemas - Cada sub-problema é resolvido Separadamente - Soluções resultantes são combinadas 47
48 Conclusões - CSPs são um tipo especial de problemas: - Estados definidos por valores atribuídos a um conjunto específico de variáveis - Teste objectivo definido a partir de restrições nos valores das variáveis - Retrocesso = procura em profundidade primeiro com uma variável atribuída por cada nó - Ordenação de variáveis e seleção de valores é importante 48
49 Conclusões - Forward checking evita atribuições que garantidamente levarão a conflitos no futuro - Propagação de restrições (e.g. consistência de arcos) detecta inconsistências adicionais - Procura local + h. menor número de conflitos é eficiente - Conhecimento da estrutura do problema pode melhorar desempenho 49
Satisfação de Restrições. Capítulo 5 (disponível online)
Satisfação de Restrições Capítulo 5 (disponível online) Sumário Problemas de Satisfação de Restrições (CSPs) Procura com Retrocesso para CSPs Procura Local para CSPs Estrutura dos CSPs Problemas de Satisfação
Problemas de Satisfação de Restrições
Problemas de Satisfação de Restrições Texto base: Stuart Russel e Peter Norving - Inteligência Artificial David Poole, Alan Mackworth e Randy Goebel - Computational Intelligence A logical approach junho/2007
IA: Problemas de Satisfação de Restrições. Prof. Msc. Ricardo Britto DIE-UFPI [email protected]
IA: Problemas de Satisfação de Restrições Prof. Msc. Ricardo Britto DIE-UFPI [email protected] Introdução Um PSR é definido por um conjunto de variáveis X 1, X 2,..., X n, e por um conjunto de restrições,
Projeto e Análise de Algoritmos Projeto de Algoritmos Tentativa e Erro. Prof. Humberto Brandão [email protected]
Projeto e Análise de Algoritmos Projeto de Algoritmos Tentativa e Erro Prof. Humberto Brandão [email protected] Laboratório de Pesquisa e Desenvolvimento Universidade Federal de Alfenas versão
Satisfação de Restrições. Capítulo 5 (disponível online)
Satisfação de Restrições Capítulo 5 (disponível online) Sumário Problemas de Satisfação de Restrições (CSPs, do Inglês Constraint Satisfaction Problems ) Procura com Retrocesso para CSPs Procura Local
Inteligência Artificial Prof. Marcos Quinet Pólo Universitário de Rio das Ostras PURO Universidade Federal Fluminense UFF
Inteligência Artificial Prof. Marcos Quinet Pólo Universitário de Rio das Ostras PURO Universidade Federal Fluminense UFF No capítulo anterior... Estratégias de busca auxiliadas por heurísticas (A*, BRPM)
Inteligência Artificial. Prof. Tiago A. E. Ferreira Aula 11 Problemas com Satisfação de Vínculos
Inteligência Artificial Prof. Tiago A. E. Ferreira Aula 11 Problemas com Satisfação de Vínculos 1 Constraint Satisfaction Problems (CSP) Conceitos básicos Busca cega simples e refinada Busca heurística
Projeto e Análise de Algoritmos Projeto de Algoritmos Tentativa e Erro Parte 2. Prof. Humberto Brandão [email protected].
Projeto e Análise de Algoritmos Projeto de Algoritmos Tentativa e Erro Parte 2 Prof. Humberto Brandão [email protected] versão da aula: 0.3 Última aula teórica Algoritmo de Tentativa e Erro:
Inteligência Artificial (SI 214) Aula 5 Problemas de Satisfação de Restrições
Inteligência Artificial (SI 214) Aula 5 Problemas de Satisfação de Restrições Prof. Josenildo Silva [email protected] 2012 2012 Josenildo Silva ([email protected]) Este material é derivado dos slides
MÉTODOS DE RESOLUÇÃO DE PROBLEMAS EM IA. Busca em espaço de estados. Estados e Operadores. Jogo dos 8. Sumário. Exemplo: jogo dos 8
MÉTODOS DE RESOLUÇÃO DE PROBLEMAS EM IA Sumário busca em espaço de estados redução de problemas Busca em espaço de estados Exemplo: jogo dos 8 2 8 3 1 6 4 7 5 Jogo dos 8 Estados e Operadores Estado: uma
Solução de problemas por meio de busca (com Python) Luis Martí DEE/PUC-Rio http://lmarti.com
Solução de problemas por meio de busca (com Python) Luis Martí DEE/PUC-Rio http://lmarti.com Python e AI (Re)-introdução ao Python. Problemas de busca e principais abordagens. Exemplos em Python Por que
Projeto e Análise de Algoritmos Projeto de Algoritmos Introdução. Prof. Humberto Brandão [email protected]
Projeto e Análise de Algoritmos Projeto de Algoritmos Introdução Prof. Humberto Brandão [email protected] aula disponível no site: http://www.bcc.unifal-mg.edu.br/~humberto/ Universidade Federal de
Jorge Figueiredo, DSC/UFCG. Análise e Técnicas de Algoritmos 2005.1. Jorge Figueiredo, DSC/UFCG. Análise e Técnicas de Algoritmos 2005.
genda nálise e Técnicas de lgoritmos Jorge Figueiredo onceitos ásicos O Problema das Rainhas Template Genérico Mochila inária acktracking and ranch-and-ound Jogo da Troca de olas Jogo da Troca de olas
Respostas dos Exercícios Cap. 2 Russell & Norvig
Respostas dos Exercícios Cap. 2 Russell & Norvig 1. (2.2) Uma medida de desempenho e utilizada por um observador externo para avaliar o sucesso de um agente. Uma função de utilidade e utilizada por um
Sistemas Inteligentes Lista de Exercícios sobre Busca
Sistemas Inteligentes Lista de Exercícios sobre Busca 1) A* - Problema do metrô de Paris Suponha que queremos construir um sistema para auxiliar um usuário do metrô de Paris a saber o trajeto mais rápido
Análise e Complexidade de Algoritmos
Análise e Complexidade de Algoritmos Uma visão de Intratabilidade, Classes P e NP - redução polinomial - NP-completos e NP-difíceis Prof. Rodrigo Rocha [email protected] http://www.bolinhabolinha.com
Faculdade Alagoana de Administração FAA Ciência da Computação. (Resolução de Problemas em) Espaço de Estados
Faculdade Alagoana de Administração FAA Ciência da Computação (Resolução de Problemas em) Espaço de Estados (Adaptado de O.B. Coelho & G. Bittencourt & C. Moraes) Maria Aparecida Amorim Sibaldo [email protected]
Resolução de Problemas Com Procura. Capítulo 3
Resolução de Problemas Com Procura Capítulo 3 Sumário Agentes que resolvem problemas Tipos de problemas Formulação de problemas Exemplos de problemas Algoritmos de procura básicos Eliminação de estados
Diagrama de transição de Estados (DTE)
Diagrama de transição de Estados (DTE) O DTE é uma ferramenta de modelação poderosa para descrever o comportamento do sistema dependente do tempo. A necessidade de uma ferramenta deste tipo surgiu das
a 1 x 1 +... + a n x n = b,
Sistemas Lineares Equações Lineares Vários problemas nas áreas científica, tecnológica e econômica são modelados por sistemas de equações lineares e requerem a solução destes no menor tempo possível Definição
CTC-17 Inteligência Artificial Problemas de Busca. Prof. Paulo André Castro [email protected]
CTC-17 Inteligência Artificial Problemas de Busca Prof. Paulo André Castro [email protected] www.comp.ita.br/~pauloac Sala 110, IEC-ITA Sumário Agentes que buscam soluções para problemas: Exemplo Tipos de
Geração de código intermediário. Novembro 2006
Geração de código intermediário Novembro 2006 Introdução Vamos agora explorar as questões envolvidas na transformação do código fonte em uma possível representação intermediária Como vimos, nas ações semânticas
Análise de complexidade
Introdução Algoritmo: sequência de instruções necessárias para a resolução de um problema bem formulado (passíveis de implementação em computador) Estratégia: especificar (definir propriedades) arquitectura
GESTÃO de PROJECTOS. Gestor de Projectos Informáticos. Luís Manuel Borges Gouveia 1
GESTÃO de PROJECTOS Gestor de Projectos Informáticos Luís Manuel Borges Gouveia 1 Iniciar o projecto estabelecer objectivos definir alvos estabelecer a estratégia conceber a estrutura de base do trabalho
Busca em Espaço de Estados
Busca em Espaço de Estados Jomi Fred Hübner [email protected] FURB / BCC Introdução 2 Agente orientado a meta O projetista não determina um mapeamento entre percepções e ações, mas determina que objetivo
CAP. I ERROS EM CÁLCULO NUMÉRICO
CAP. I ERROS EM CÁLCULO NUMÉRICO 0. Introdução Por método numérico entende-se um método para calcular a solução de um problema realizando apenas uma sequência finita de operações aritméticas. A obtenção
Aula 20. Roteamento em Redes de Dados. Eytan Modiano MIT
Aula 20 Roteamento em Redes de Dados Eytan Modiano MIT 1 Roteamento Deve escolher rotas para vários pares origem, destino (pares O/D) ou para várias sessões. Roteamento datagrama: a rota é escolhida para
PONTIFÍCIA UNIVERSIDADE CATÓLICA DE GOIÁS Curso Superior de Tecnologia em Análise e Desenvolvimento de Sistemas
PONTIFÍCIA UNIVERSIDADE CATÓLICA DE GOIÁS Curso Superior de Tecnologia em Análise e Desenvolvimento de Sistemas CMP1132 Processo e qualidade de software II Prof. Me. Elias Ferreira Sala: 402 E Quarta-Feira:
Lista 2 - Modelos determinísticos
EA044 - Planejamento e Análise de Sistemas de Produção Lista 2 - Modelos determinísticos Exercício 1 A Companhia Ferroviária do Brasil (CFB) está planejando a alocação de vagões a 5 regiões do país para
Resolução de problemas por meio de busca. Capítulo 3 Russell & Norvig Seções 3.1, 3.2 e 3.3
Resolução de problemas por meio de busca Capítulo 3 Russell & Norvig Seções 3.1, 3.2 e 3.3 Agentes de resolução de problemas Agentes reagvos não funcionam em ambientes para quais o número de regras condição-
4 O Workflow e a Máquina de Regras
4 O Workflow e a Máquina de Regras O objetivo do workflow e da máquina de regras é definir um conjunto de passos e regras configuráveis. Ao longo de sua execução, um usuário consegue simplificar o seu
Recursos. Um recurso é ou um dispositivo físico (dedicado) do hardware, ou Solicitar o recurso: esperar pelo recurso, até obtê-lo.
Um recurso é ou um dispositivo físico (dedicado) do hardware, ou um conjunto de informações, que deve ser exclusivamente usado. A impressora é um recurso, pois é um dispositivo dedicado, devido ao fato
Inteligência Artificial
Inteligência Artificial Fabrício Olivetti de França 07 de Junho de 2018 1 Problema de Satisfação de Restrição 2 Limitações das Buscas (Des)Informadas O estado de um problema tem uma estrutura arbitrária
AULA 6 LÓGICA DOS CONJUNTOS
Disciplina: Matemática Computacional Crédito do material: profa. Diana de Barros Teles Prof. Fernando Zaidan AULA 6 LÓGICA DOS CONJUNTOS Intuitivamente, conjunto é a coleção de objetos, que em geral, tem
Inteligência Artificial
Inteligência Artificial CTC15 Aula 3b CTC15 Aula 3b 1 Sumário Exemplos de PSR Busca genérica aplicada à PSRs Backtracking Verificação forward Heurísticas para PSRs CTC15 Aula 3b 2 Problemas de satisfação
PROCESSO DE DESENVOLVIMENTO DE SOFTWARE. Modelos de Processo de Desenvolvimento de Software
PROCESSO DE DESENVOLVIMENTO DE SOFTWARE Introdução Modelos de Processo de Desenvolvimento de Software Os modelos de processos de desenvolvimento de software surgiram pela necessidade de dar resposta às
Computação Paralela. Desenvolvimento de Aplicações Paralelas João Luís Ferreira Sobral Departamento do Informática Universidade do Minho.
Computação Paralela Desenvolvimento de Aplicações Paralelas João Luís Ferreira Sobral Departamento do Informática Universidade do Minho Outubro 2005 Desenvolvimento de Aplicações Paralelas Uma Metodologia
Casos de teste semânticos. Casos de teste valorados. Determinar resultados esperados. Gerar script de teste automatizado.
1 Introdução Testes são importantes técnicas de controle da qualidade do software. Entretanto, testes tendem a ser pouco eficazes devido à inadequação das ferramentas de teste existentes [NIST, 2002].
Banco de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri. Banco de Dados Processamento e Otimização de Consultas
Processamento e Otimização de Consultas Banco de Dados Motivação Consulta pode ter sua resposta computada por uma variedade de métodos (geralmente) Usuário (programador) sugere uma estratégia para achar
01/05/2016. Danillo Tourinho Sancho da Silva, MSc ROTEIRIZAÇÃO TEORIA DOS GRAFOS MOTIVAÇÃO
ROTEIRIZAÇÃO Danillo Tourinho Sancho da Silva, MSc TEORIA DOS GRAFOS MOTIVAÇÃO 1 MOTIVAÇÃO Por que estudar grafos? Importante ferramenta matemática com aplicação em diversas áreas do conhecimento Utilizados
Faculdade de Engenharia Optimização. Prof. Doutor Engº Jorge Nhambiu
1 Programação Não Linear Aula 25: Programação Não-Linear - Funções de Uma única variável Mínimo; Mínimo Global; Mínimo Local; Optimização Irrestrita; Condições Óptimas; Método da Bissecção; Método de Newton.
Feature-Driven Development
FDD Feature-Driven Development Descrição dos Processos Requisitos Concepção e Planejamento Mais forma que conteúdo Desenvolver um Modelo Abrangente Construir a Lista de Features Planejar por
Resolução de Problemas
Resolução de Problemas Aula 2 - Inteligência Artificial Resolução de Problemas (Introdução) A resolução de um problema é composta por três passos: Definir o problema com precisão. (situações inicial e
Linguagem algorítmica: Portugol
Programação de Computadores I Aula 03 Linguagem algorítmica: Portugol José Romildo Malaquias Departamento de Computação Universidade Federal de Ouro Preto 2011-1 1/34 Introdução I Lógica A lógica é usada
Geração de código. Ivan Ricarte INTRODUÇÃO À COMPILAÇÃO
Geração de código Ivan Ricarte 2008 Sumário Geração de código intermediário Código de três endereços Notação pós-fixa Otimização de código Heurísticas de otimização Geração de código em linguagem simbólica
Projeto de Sistemas I
Instituto Federal de Educação, Ciência e Tecnologia de São Paulo Projeto de Sistemas I Professora: Kelly de Paula Cunha E-mail:[email protected] Requisitos: base para todo projeto, definindo o
APLICAÇÕES DA DERIVADA
Notas de Aula: Aplicações das Derivadas APLICAÇÕES DA DERIVADA Vimos, na seção anterior, que a derivada de uma função pode ser interpretada como o coeficiente angular da reta tangente ao seu gráfico. Nesta,
IA: Busca Competitiva. Ricardo Britto DIE-UFPI [email protected]
IA: Busca Competitiva Ricardo Britto DIE-UFPI [email protected] Sumário Introdução Árvores de Jogos Minimax Antecipação Limitada Poda Alfa-beta Introdução Jogos têm sido continuamente uma importante
Aula 9 ESCALA GRÁFICA. Antônio Carlos Campos
Aula 9 ESCALA GRÁFICA META Apresentar as formas de medição da proporcionalidade entre o mundo real e os mapas através das escalas gráficas. OBJETIVOS Ao final desta aula, o aluno deverá: estabelecer formas
Utilização do SOLVER do EXCEL
Utilização do SOLVER do EXCEL 1 Utilização do SOLVER do EXCEL José Fernando Oliveira DEEC FACULDADE DE ENGENHARIA DA UNIVERSIDADE DO PORTO MAIO 1998 Para ilustrar a utilização do Solver na resolução de
O que queremos. Processamento Estatístico da Linguagem Natural. Parsing Morfológico. Regras Simples. Adicionando palavras. Regras Derivacionais
Processamento Estatístico da Linguagem Natural Aula 5 Professora Bianca (Sala 302 Bloco E) [email protected] http://www.ic.uff.br/~bianca/peln/ O que queremos Algo que faça automaticamente um mapeamento
Aula 03 - Modelagem em PPLIM
Thiago A. O. 1 1 Universidade Federal de Ouro Preto 1 Componentos do modelo 2 3 4 5 6 Componentes de uma modelagem matemática Elementos; Conjuntos; Parâmetros; Variáveis; Objetivo; Restições; Elementos
Dificuldades de Modelos de PNL. Onde está a solução ótima? Outro exemplo: Condição ótima Local vs. Global. 15.053 Quinta-feira, 25 de abril
15.053 Quinta-feira, 25 de abril Teoria de Programação Não-Linear Programação Separável Dificuldades de Modelos de PNL Programa Linear: Apostilas: Notas de Aula Programas Não-Lineares 1 2 Análise gráfica
Introdução à Programação
Introdução à Programação UEM Julho - Novembro 2015 Regente: eng a Tatiana D. Kovalenko Assistente: eng a Leila Omar Monitor: Emilson Vontade website: http://ip-uem.weebly.com AULA TEÓRICA 1 Tema 1. Desenho
Pipeline. Todos os estágios devem estar prontos ao mesmo tempo para prosseguir.
O throughput de um pipeline é determinado pela freqüência com que uma instrução sai do pipeline Todos os estágios devem estar prontos ao mesmo tempo para prosseguir O tempo requerido para mover uma instrução
Detecção e Rastreamento de Objetos coloridos em vídeo utilizando o OpenCV
Detecção e Rastreamento de Objetos coloridos em vídeo utilizando o OpenCV Bruno Alberto Soares OLIVEIRA 1,3 ; Servílio Souza de ASSIS 1,3,4 ; Izadora Aparecida RAMOS 1,3,4 ; Marlon MARCON 2,3 1 Estudante
UNIVERSIDADE DO OESTE DE SANTA CATARINA CAMPUS DE SÃO MIGUEL DO OESTE
UNIVERSIDADE DO OESTE DE SANTA CATARINA CAMPUS DE SÃO MIGUEL DO OESTE CURSO: CIÊNCIAS DA COMPUTAÇÃO DISCIPLINA: COMPILADORES PROFESSOR: JOHNI DOUGLAS MARANGON Back-End Compilação 1. Compilação etapa Back-end
PPD: Balanceamento de Carga e Scheduling 2
PPD: Balanceamento de Carga e Scheduling 2 Fernando Silva DCC-FCUP 2 (Alguns dos slides são baseados nos de Kathy Yelick, www.cs.berkeley.edu/ yelick) Fernando Silva (DCC-FCUP) PPD: Balanceamento de Carga
ALGORITMOS. Supervisão: Prof. Dr.º Denivaldo Lopes
Laboratory of Software Engineering and Computer Network Engineering for a better life Universidade Federal do Maranhão Curso de Engenharia Elétrica ALGORITMOS Supervisão: Prof. Dr.º Denivaldo Lopes Adelman
Teste de Software. Profa. Cátia dos Reis Machado [email protected]
Teste de Software Profa. Cátia dos Reis Machado [email protected] Qualidade Garantia de Qualidade Qualidade do processo Qualidade do produto Testes Estáticos Testes Dinâmicos Teste de software
SAD orientado a MODELO
Universidade do Contestado Campus Concórdia Curso de Sistemas de Informação Prof.: Maico Petry SAD orientado a MODELO DISCIPLINA: Sistemas de Apoio a Decisão SAD Orientado a Modelo De acordo com ALTER
5COP096 TeoriadaComputação
Sylvio 1 Barbon Jr [email protected] 5COP096 TeoriadaComputação Aula 14 Prof. Dr. Sylvio Barbon Junior Sumário - Problemas Exponenciais - Algoritmos Exponenciais usando Tentativa e Erro - Heurísticas para
INTRODUÇÃO ÀS LINGUAGENS DE PROGRAMAÇÃO
Capítulo 1 INTRODUÇÃO ÀS LINGUAGENS DE PROGRAMAÇÃO 1.1 Histórico de Linguagens de Programação Para um computador executar uma dada tarefa é necessário que se informe a ele, de uma maneira clara, como ele
O que é a estatística?
Elementos de Estatística Prof. Dr. Clécio da Silva Ferreira Departamento de Estatística - UFJF O que é a estatística? Para muitos, a estatística não passa de conjuntos de tabelas de dados numéricos. Os
Manejo Florestal Sustentável: Dificuldade Computacional e Otimização de Processos
Manejo Florestal Sustentável: Dificuldade Computacional e Otimização de Processos Daniella Rodrigues Bezerra 1, Rosiane de Freitas Rodrigues 12, Ulisses Silva da Cunha 3, Raimundo da Silva Barreto 12 Universidade
Sistema de HelpDesk da SESAU Guia do Usuário
Secretaria de Estado da Saúde de Alagoas SESAU Coordenadoria Setorial de Gestão a Informática - CSGI Sistema de HelpDesk da SESAU Guia do Usuário Maceió 06/02/2012 Técnico Responsável: Bruno Cavalcante
ALGORITMOS E FLUXOGRAMAS
ALGORITMOS E FLUXOGRAMAS Prof. André Backes INTRODUÇÃO Computadores = cérebros eletrônicos? Computadores são máquinas e, por si sós, não podem ser inteligentes. Alguém as projetou e deu a ela todas as
Linguagem Lógica Prolog
Linguagem Lógica Prolog Linguagens de Programação Departamento de Computação Universidade Federal de Sergipe Conteúdo O que é diferente na Programação Lógica Cláusulas, Fatos, Regras e Predicado Objetos
Tabela de Símbolos. Análise Semântica A Tabela de Símbolos. Principais Operações. Estrutura da Tabela de Símbolos. Declarações 11/6/2008
Tabela de Símbolos Análise Semântica A Tabela de Símbolos Fabiano Baldo Após a árvore de derivação, a tabela de símbolos é o principal atributo herdado em um compilador. É possível, mas não necessário,
Processamento de Imagem. Prof. MSc. André Yoshimi Kusumoto [email protected]
Processamento de Imagem Prof. MSc. André Yoshimi Kusumoto [email protected] Visão Computacional Não existe um consenso entre os autores sobre o correto escopo do processamento de imagens, a
CONCURSO PÚBLICO ANALISTA DE SISTEMA ÊNFASE GOVERNANÇA DE TI ANALISTA DE GESTÃO RESPOSTAS ESPERADAS PRELIMINARES
CELG DISTRIBUIÇÃO S.A EDITAL N. 1/2014 CONCURSO PÚBLICO ANALISTA DE GESTÃO ANALISTA DE SISTEMA ÊNFASE GOVERNANÇA DE TI RESPOSTAS ESPERADAS PRELIMINARES O Centro de Seleção da Universidade Federal de Goiás
Sistemas especialistas
Sistemas especialistas Motor de Inferência para Sistemas Especialistas baseados em Regras de Produção Arquitetura geral: Base de conhecimento Mecanismo de raciocínio Interface com o usuário Motor de inferência
1. Introdução 2. Representação de números 2.1. Conversão Numérica 2.2. Aritmética de ponto flutuante 3. Erros 3.1 Erros Absolutos e Relativos
1. Introdução 2. Representação de números 2.1. Conversão Numérica 2.2. Aritmética de ponto flutuante 3. Erros 3.1 Erros Absolutos e Relativos 1. Introdução O que é cálculo numérico? Corresponde a um conjunto
Pesquisa Operacional Programação em Redes
Pesquisa Operacional Programação em Redes Profa. Alessandra Martins Coelho outubro/2013 Modelagem em redes: Facilitar a visualização e a compreensão das características do sistema Problema de programação
Fluxo de trabalho do Capture Pro Software: Indexação de OCR e separação de documentos de código de correção
Este procedimento corresponde ao fluxo de trabalho de Indexação de OCR com separação de código de correção no programa de treinamento do Capture Pro Software. As etapas do procedimento encontram-se na
ESTRUTURAS DE DADOS II
ESTRUTURAS DE DADOS II Msc. Daniele Carvalho Oliveira Doutoranda em Ciência da Computação - UFU Mestre em Ciência da Computação UFU Bacharel em Ciência da Computação - UFJF Conteúdo Programático 1. Introdução
Resolução de problemas e desenvolvimento de algoritmos
SSC0101 - ICC1 Teórica Introdução à Ciência da Computação I Resolução de problemas e desenvolvimento de algoritmos Prof. Vanderlei Bonato Prof. Cláudio Fabiano Motta Toledo Sumário Análise e solução de
Base de dados I. Uma base de dados é um simples repositório de informação relacionado com um determinado assunto ou finalidade
Base de dados I O que é? Uma base de dados é um simples repositório de informação relacionado com um determinado assunto ou finalidade Para que serve? Serve para gerir vastos conjuntos de informação de
Métodos de Desenvolvimento de Software. Aula 1: Introdução
Métodos de Desenvolvimento de Software Aula 1: Introdução Agenda Engenharia de Software Processos de Software Método x Metodologia Uma abordagem de engenharia: construção de uma casa Equipes grandes e
AULA TEÓRICA 10 Tema 9. Introdução à programação. Desenho de Algoritmos
AULA TEÓRICA 10 Tema 9. Introdução à programação. Desenho de Algoritmos Ø Resolução de problemas. Ø Algoritmo. Ø Pseudo-código. Ø Fluxograma. Ø Tipos de fluxogramas. Fluxograma sequencial. 1 Resolução
Projetos. Universidade Federal do Espírito Santo - UFES. Mestrado em Informática 2004/1. O Projeto. 1. Introdução. 2.
Pg. 1 Universidade Federal do Espírito Santo - UFES Mestrado em Informática 2004/1 Projetos O Projeto O projeto tem um peso maior na sua nota final pois exigirá de você a utilização de diversas informações
Especificação Operacional.
Especificação Operacional. Para muitos sistemas, a incerteza acerca dos requisitos leva a mudanças e problemas mais tarde no desenvolvimento de software. Zave (1984) sugere um modelo de processo que permite
Processamento e Otimização de Consultas
Introdução Processamento e Banco de Dados II Prof. Guilherme Tavares de Assis Universidade Federal de Ouro Preto UFOP Instituto de Ciências Exatas e Biológicas ICEB Departamento de Computação DECOM 1 Processamento
Cálculo Numérico. ECA / 4 créditos / 60 h Introdução, Erros e Matlab. Ricardo Antonello. www.antonello.com.br
Cálculo Numérico ECA / 4 créditos / 60 h Introdução, Erros e Matlab Ricardo Antonello www.antonello.com.br Conteúdo Erros na fase de modelagem Erros na fase de resolução Erros de arredondamento Erros de
Técnicas de Teste de Software
Técnicas de Teste de Software Luis Renato dos Santos FAES - UFPR 2011 Luis Renato dos Santos (FAES - UFPR) Técnicas de Teste de Software 2011 1 / 23 Sumário Introdução Fundamentos de Teste de Software
PLANIFICAÇÃO MODULAR
Direção Regional de Educação Centro AGRUPAMENTO DE ESCOLAS DE MIRA ESCOLA SECUNDÁRIA/3º DR.ª M.ª CÂNDIDA ENSINO PROFISSIONAL DE NÍVEL SECUNDÁRIO POR MÓDULOS Curso Profissional em funcionamento no âmbito
Jogos vs. Problemas de Procura
Jogos Capítulo 6 Jogos vs. Problemas de Procura Adversário imprevisível" necessidade de tomar em consideração todas os movimentos que podem ser tomados pelo adversário Pontuação com sinais opostos O que
Complexidade de Algoritmos. Edson Prestes
Edson Prestes Caminhos de custo mínimo em grafo orientado Este problema consiste em determinar um caminho de custo mínimo a partir de um vértice fonte a cada vértice do grafo. Considere um grafo orientado
3 Sistemas de Numeração:
3 Sistemas de Numeração: Os computadores eletrônicos têm como base para seu funcionamento a utilização de eletricidade. Diferente de outras máquinas que a presença ou ausência de eletricidade apenas significam
Engenharia de Software
Engenharia de Software Roteiro Inspeção Defeitos dos Software Classificação dos Erros Técnica de Leitura Ad-hoc Checklist Exercício Inspeção Inspeção de Software Definição É um método de análise estática
Tarefa Orientada 6 Edição de Dados
Tarefa Orientada 6 Edição de Dados Objectivos: Inserção de dados. Alteração de dados. Eliminação de dados. Definição de Listas de Pesquisa (Lookup Lists) O Sistema de Gestão de Bases de Dados MS Access
computador-cálculo numérico perfeita. As fases na resolução de um problema real podem, de modo geral, ser colocadas na seguinte ordem:
1 UNIVERSIDADE FEDERAL DE VIÇOSA Departamento de Matemática - CCE Cálculo Numérico - MAT 271 Prof.: Valéria Mattos da Rosa As notas de aula que se seguem são uma compilação dos textos relacionados na bibliografia
CAP 254 CAP 254. Otimização Combinatória. Professor: Dr. L.A.N. Lorena. Assunto: Metaheurísticas Antonio Augusto Chaves
CAP 254 CAP 254 Otimização Combinatória Professor: Dr. L.A.N. Lorena Assunto: Metaheurísticas Antonio Augusto Chaves Conteúdo C01 Simulated Annealing (20/11/07). C02 Busca Tabu (22/11/07). C03 Colônia
Árvores de Suporte de Custo Mínimo
Árvores de Suporte de Custo Mínimo Pedro Ribeiro DCC/FCUP 2014/2015 Pedro Ribeiro (DCC/FCUP) Árvores de Suporte de Custo Mínimo 2014/2015 1 / 28 Árvore de Suporte Uma árvore de suporte ou árvore de extensão
SUMÁRIO Acesso ao sistema... 2 Atendente... 3
SUMÁRIO Acesso ao sistema... 2 1. Login no sistema... 2 Atendente... 3 1. Abrindo uma nova Solicitação... 3 1. Consultando Solicitações... 5 2. Fazendo uma Consulta Avançada... 6 3. Alterando dados da
