j boss drools

20
Inteligência Artificial I 1

Upload: diego-pacheco

Post on 16-Apr-2017

3.538 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: J Boss Drools

Inteligência Artificial I

1

Page 2: J Boss Drools

BRMS (Business Rule Management System)◦ Requisitos◦ Regras◦ SOA

Implentação de um Rules Engine Implementado com o ReteOO

◦ Tailoring para Java do Rete Programação Declarativa DSL (Domain Specifics Language)

◦ SQL

2

Page 3: J Boss Drools

Maior independência dos setores de negócio Aumento do controle sobre as regras de

negócio de sisitema Expressar regras na linguagem do

usuário(DSL) Representação gráfica de regras

◦ Tabelas de decisão◦ Árvores◦ Fluxos de regras

3

Page 4: J Boss Drools

Expressivas Normalmente Simples Base do BRMS Forward Chaining *

◦ Premissas -> Conclusões BackwardChaining

◦ Conclusões -> Premissas (Pilha)

4

Page 5: J Boss Drools

Composto basicamente de:◦ Máquina de inferências

Responsável pela execução das regras.◦ Memória de trabalho

Armezena as conclusões (fatos) gerados pela execução das regras.

◦ Base de conhecimento É o repositório das regras a serem utilizadas pela

máquina de inferências.

5

Page 6: J Boss Drools

6

Page 7: J Boss Drools

Programação Declarativa◦ Fácil de Expressar soluções

Separação da Lógica e dos Dados◦ Desacoplamento dos Dados e Lógica◦ Lógica toda nas Regras

Velocidade e Escalabilidade◦ ReteOO◦ Datasets que não mudam tudo (Lembraça dos

patterns anteriores) Centralização do Conhecimento

◦ Repositório de Conhecimento Executável

7

Page 8: J Boss Drools

Centralização do Conhecimento◦ Regras são documentação

Explanação◦ Log da decisões e os porques

Regras Legíveis◦ Graças ao DSL

8

Page 9: J Boss Drools

Versão otimizada do algoritmo de Rete para execução de ações em um sistema.

Gera uma máquina de estado de regras. Novos fatos alimentam a máquina de

estados. Máquina de estados tem memória dos

estados anteriores Resolução de conflitos não está no

algoritmo mas está ao redor da solução. (Baseado em saliência-> Prioridade)

9

Page 10: J Boss Drools

Linguagem para propósito específico Domínio restrito Aproveitamento da Expêriencia usuário Não necessita de pessoal técnico Exemplos:

◦ SQL◦ Comandos Unix

Esconder detalhes de implementação Edição controlada das regras

10

Page 11: J Boss Drools

11

Page 12: J Boss Drools

12

Page 13: J Boss Drools

13

Page 14: J Boss Drools

1. Authoring 2. Runtime

14

Page 15: J Boss Drools

15

Page 16: J Boss Drools

16

Page 17: J Boss Drools

17

Page 18: J Boss Drools

18

Page 19: J Boss Drools

Exemplos práticos com o IDE Eclipse...

19

Page 20: J Boss Drools

http://www.jboss.org/drools/ http://blog.athico.com/ http://en.wikipedia.org/wiki/BRMS http://en.wikipedia.org/wiki/Rete_algorithm http://en.wikipedia.org/wiki/Domain-specific

_programming_language

20