3. O velho problema das rainhas
A solução do problema das N rainhas é uma lista de N Números
cujos valores variam na faixa de 1 a N. Ex.[2,4,1,3].
3/31
4. Permutação
Trata-se de uma permutação de números de 1 a N que sigam
regras adicionais, ou seja, representem uma configuração segura
com relação as regras do jogo. Em LPO seria algo como:
rainhas(N,Q) ← faixa(1,N,R), permutacao(R,P),seguro(P).
4/31
5. Predicado faixa (range)
faixa(A, A, [A]).
faixa(A, B, [A|L]) : −A < B, A1 is A + 1, faixa(A1, B, L).
Saı́da: [1,2,3,4,5,6,7,8]
5/31
10. Sistemas Especialistas
o conjunto de fatos e regras do programa formam uma base de
conhecimento advinda de um especialista em um certo domı́nio de
conhecimento. A possibilidade de criar queries diferenciadas e
muitas vezes nem imaginadas pelo programador tornam o sistema
mais parecido com uma ”inteligência artificial”do que sistemas
escritos em linguagens convencionais.
10/31
11. Sistema Especialista em Análise de Crédito
Ben-David, A. and Sterling, 1., A Prototype Expert System for
Credit Evaluation, in Artificial Intelligence in Economics and
Management, L. F. Pau (ed.), pp. 1 2 1 -1 28, North-Holland,
Amsterdam, 1986.
11/31
12. Sistema Especialista em Análise de Crédito - Entrada
credit(Client,Answer) :- ok profile(Client),
collateral rating(Client,CollateralRating),
financial rating(Client,FinancialRating),
bank yield(Client,Yield),
evaluate(profile(CollateralRating,FinancialRating,Yield),Answer),
!.
12/31
13. Collateral = Garantias
Garantias de Primeira Classe
Depósitos em moeda corrente em bancos locais ou estrangeiros.
Garantias de Segunda Classe
Ações.
illı́quido
Ativos de hipoteca (mortgage) não lı́quido ou ilı́quido (illiquid).
13/31
14. Classificação Financeira = Finantial Rating
Patrimônio lı́quido por ativos do cliente e seu lucro bruto atual das
vendas ou seja, os rendimentos do cliente. Também é considerado
o endividamento do cliente, principalmente a dı́vida de curto prazo.
14/31
15. Ganho do Banco = Bank Yield
Todos esses fatores são analisados em formas qualitativas.
15/31
17. —Regras em palavras
”Se as garantias do cliente são excelentes, sua razão financeira
(ganhos/gastos) são bons e o rendimento previsto para o banco é
pelo menos razoável o empréstimo é garantido.”1
”Se as garantias e razão financeira são boas e o rendimento
esperado é razoável, consultar superior.”
”Se as garantias não são mais que moderadas e o financeiro é
médio, recusar o crédito.”2
1
Nenhum banqueiro fica rico dando dinheiro.
2
O Cliente é enxotado.
17/31
21. Módulo de Classificação Collateral (Garantias)
collateral percent(Type,Client,Total,Value) :-
findall(X,(collateral(Collateral,Type),
amount(Collateral,Client,X)),Xs),
sumlist(Xs,Sum),
Value is Sum ∗ 100/Total.
21/31
26. Fatores de Pesos
financial factors([(net worth per assets,5),
(last year sales growth,1),
(gross profits on sales,5),
(short term debt per annual sales,2) ]).
score([(Factor,Weight)—Factors],Client,Acc,Score) :-
value(Factor,Client,Value),
Acc1 is Acc + Weight*Value,
score(Factors,Client,Acc1,Score).
score([],Client,Score,Score).
26/31