Uso de não determinismo. Exemplo



Documentos relacionados
Alocação de casas. para cada i, permutação i de todas as casas. n agentes, cada um com uma única casa. Teoria dos Jogos p. 1

Salário-de-benefício

Compras pela internet no mundo do imediato. Elena Dias Priscila Souza

PESQUISA DIA DAS CRIANÇAS - MOSSORÓ

Recuperação Final 6º ao 9º ano

E Entrevistador E18 Entrevistado 18 Sexo Masculino Idade 29anos Área de Formação Técnico Superior de Serviço Social

Áudio. GUIA DO PROFESSOR Síndrome de Down - Parte I

The Stable Matching Problem

o hemofílico. Meu filho também será?

O Registrador Ideal e o Real

Mídia Kit Você é nosso convidado a mudar a forma como se relaciona com os seus clientes

Processo Seletivo Salesiano



ESTUDO DE EFICÁCIA DA TERAPIA BOWEN ISBT

SINTESE EXPLORATÓRIA DOS DADOS DA BÚSSOLA ELEITORAL. Marina Costa Lobo, José Santana Pereira e Edalina Sanches

PAPO DE HOMENS 24/08/2013 PALESTRA HOMENS - PORNOGRAFIA

PARTICIPAÇÃO DA AGRICULTURA FAMILIAR PARTICIPAÇÃO DA AGRICULTURA FAMILIAR. R$ 54 bilhões VALOR BRUTO DA PRODUÇÃO TOTAL DE ESTABELECIMENTOS

Concurso Público Psicologia Clínica Caderno de Questões Prova Discursiva 2015

ADMINISTRAÇÃO GERAL MOTIVAÇÃO

3º Bimestre Preciosidades da vida AULA: 113 Conteúdos:

O bairro. A urbanização

ANÁLISE DO EMPREGO E DESEMPREGO A PARTIR DO CADASTRO DA CAT Andréia Arpon* Adriana Fontes *

Prof. José Joaquim Fundador da Sociedade das Comunidades Catequéticas. Aprendendo com Jesus

Pesquisa sobre o Nível de Percepção da População Brasileira sobre os Fatores de Risco das Doenças Cardiovasculares

ATUALIZAÇÃO DO CONTEÚDO DE DIREITO PREVIDENCIÁRIO CONFORME LEI DE 31/08/2011

2 Teoria de desastres

RESOLUÇÃO DAS QUESTÕES DE MATEMÁTICA

Cerne Tecnologia e Treinamento

"Ide por todo o mundo e pregai o Evangelho"

18/11/2005. Discurso do Presidente da República

O PROGRAMA. Novo formato. Nova equipe. Mesma essência. A TEMPORADA 2013 é a mais ambiciosa de todas!

Oportunidades para o Jovem Administrador em Novos Negócios

Jörg Garbers Ms. de Teologia

Festas, compras, encontros e desencontros Leitura: atividades

Aspectos Sócio-Profissionais da Informática

Probabilidade Condicional

Agenda de Reunião de Objetivos 11/3/2012

(Inquérito Nacional Sobre Saúde Reprodutiva e Comportamento Sexual dos Jovens e ADolescentes)

Inovação e mídias Sociais para a Cidadania. segunda-feira, 7 de novembro de 11

O princípio multiplicativo

1) Todos os dados devem ser digitados em MAIÚSCULA;

Pesquisa. A participação dos pais na Educação de seus filhos

Este trabalho é o relatório de uma visita de estudo das turmas do 6º A e 6º B da disciplina de Educação

Veja dicas de estudo para a reta final do concurso do Banco do Brasil

Energia e suas fontes

Catecismos tupi e dispensas: a construção missionária da idéia de casamento para os. gentios

Todos os dias Leitura: atividades

MINUTA DE ANTEPROJETO DE LEI COMPLEMENTAR

Exposição A obesidade pelo olhar da infografia da Abril REALIZAÇÃO PATROCÍNIO

RQ Edição Fevereiro 2014

Fábio e Valéria Stetner. Alcançando Nações através da restauração da família

ANSIEDADE E ASSISTÊNCIA DE ENFERMAGEM: UMA REVISÃO BIBLIOGRÁFICA. Introdução: A ansiedade configura um sentimento que participa da vivência do ser

Carta de Paulo aos romanos:

A PRIMEIRA LEI DE MENDEL E A ESPÉCIE HUMANA TESTES

SISPES. Passo a Passo: cadastro de usuários e cadastro de entidades ( árvore ) Brasília, janeiro de 20131

Informações e instruções para os candidatos

Pesquisa Estatística. Estatística Descritiva. Gestão Ambiental Prof. Luiz Rogério Mantelli

ATIVIDADE DE EDUCAÇÃO FÍSICA 3º E.M.

UNIVERSIDADE FEDERAL DO RIO DE JANEIRO FACULDADE DE LETRAS DIRETORIA ADJUNTA DOS CURSOS DE LÍNGUAS ABERTOS À COMUNIDADE EDITAL 2010.

MER Modelo de entidade e Relacionamento. Prof. Me. Hélio Esperidião

Processo: Vendas Lista de casamento

3º Processo Seletivo para o 1º semestre de 2015 EDITAL. Eventos Data Horário. 22, 26 e 29/01/15. 23, 27 e 30/01/15

TD de revisão 8º Ano- 4ª etapa- 2015

Aulas de Recuperação 1º Bimestre/2015. Horário das Provas de Recuperação

Casamento. Curiosidades, Tradições e Superstições

Vendendo-se - Como lidar com dinheiro na família?

Edital Externo nº 183/2011

Tamanho do pênis mitos e verdades Ter, 28 de Fevereiro de :32

ENTREVISTA. Clara Araújo

RELATÓRIO DE ACOMPANHAMENTO DA CULTURA DO CAFÉ


"Brasil é um tipo de país menos centrado nos EUA"

Pesquisa Nacional de Franquias

ABNT NBR ISO. ABNT NBR ISO 9001:2015 Como usar

POLÍTICA NACIONAL DE ATENÇÃO INTEGRAL À SAÚDE DO

INSTITUTO DE PREVIDÊNCIA DOS SERVIDORES PÚBLICOS DO MUNICÍPIO DE VARGINHA

3 PASSOS DE MILIONÁRIOS PARA SEUS FILHOS

C L I P P I N G DATA:

ACTIVIDADES TRANSFRONTEIRIÇAS DE GESTÃO DE PLANOS DE PENSÕES PROFISSIONAIS NACIONAIS EM PORTUGAL

As tendências sociais na América Latina e sua importância para o Desenvolvimento de Produtos Marcus Daniel Diretor de Vendas CDMA NOKIA Brasil

A satisfação em contribuir para trazer este manual até você é sem dúvida o nosso compromisso de orientá-lo sobre a importância de contar com a sua

MATEMÁTICA PROVA 1º BIMESTRE 8º ANO

Versão Notas de lançamento

Estatística e probabilidade em situações do cotidiano. Aplicar corretamente em suas pesquisas os conceitos estudados previamente.

02 O que eu preciso fazer

Japão uma nova tendência de mercado

REGULAMENTO N.º ---/SRIJ/2015 REGRAS DO JOGO EM MÁQUINAS ONLINE

CARTILHA DO PLANO DE BENEFÍCIO DEFINIDO

DENGUE e DENGUE HEMORRÁGICO

PELA PRIMEIRA VEZ, DESDE QUE HÁ REGISTOS, HOUVE MENOS DE 90 MIL NADOS VIVOS

Orientações Parceiros Voitto. Apresentação Voitto 1

APLICAÇÃO EM EDUCAÇÃO ALGUMAS INCONSISTÊNCIAS GERADORAS DE PERCENTUAIS ABAIXO DOS 25%.

Motivos de transferência do negócio por parte dos franqueados

INSCRIÇÃO PARA PORTADOR DE DIPLOMA DE CURSO SUPERIOR - PDCS (Isento de Taxa) 1º SEMESTRE DE SOLICITAÇÕES DE 20/08/13 a 14/03/14

SOLICITAÇÕES DE 24/06/2015 a 24/08/2015

Transcrição:

Uso de não determinismo Exemplo

Problema dos casamentos estáveis Existe um conjunto de N homens e um conjunto de N mulheres que querem casar. Cada homem tem associada uma lista com todas as mulheres por ordem decrescente das suas preferências para casamento. Idem para cada mulher (que tem uma lista de todos os homens por ordem decrescente das suas preferências). O problema é encontrar um conjunto de casamentos que sejam todos estáveis. Os casamentos são instáveis se existe um homem e uma mulher que se preferem mais entre eles que aos seus esposos.

Instabilidade Existe um conjunto de N homens e um conjunto de N mulheres que querem casar. Cada homem tem associada uma lista com todas as mulheres por ordem decrescente das suas preferências para casamento. Idem para cada mulher (que tem uma lista de todos os homens por ordem decrescente das suas preferências). O problema é encontrar um conjunto de casamentos que sejam todos estáveis. Os casamentos são instáveis se existe um homem e uma mulher que se preferem mais entre eles que aos seus esposos. Exemplo de par de casamentos instáveis: Manuel : Paula (Manuel preferia a Maria) Pedro : Maria (Maria preferia o Manuel)

N=3 Homens Preferências Mulheres Preferências Zé Ana, Rita, Inês Ana Rui, Zé, Ivo Rui Inês, Ana, Rita Rita Zé, Rui, Ivo Ivo Ana, Inês, Rita Inês Zé, Ivo, Rui Zé : Ana Rui : Inês Ivo : Rita Conjuntos estáveis? Zé : Ana Ivo : Inês Rui : Rita Rui : Ana Ivo : Inês Zé : Rita X X

Prolog O predicado deverá receber uma lista de homens com as suas preferências e uma lista de mulheres com as suas preferências e devolver uma lista de pares homem/mulher com os casamentos. Um exemplo duma chamada deste predicado poderá ser:?- casamentos( [h(pedro,[maria,paula]), h(manuel,[paula,maria])], [m(maria,[pedro,manuel]), m(paula,[pedro,manuel])], C). C = [c(pedro,maria), c(manuel,paula)] ; no

Aproveitar o não determinismo Ir (não deterministicamente) gerando casais Testando estabilidade com os já gerados Gerar casais: Para cada homem, escolher uma mulher solteira casamentos(homens,mulheres, Casais) :- acasala(homens,mulheres, [], Casais). acasala([],[],_,[]). acasala([h(homem,prefsh) HRest],Ms, Casados,[c(Homem,Mulher) Cs]) :- % escolher Mulher % testar estabilidade acasala(hrest,mrest, [c(homem:prefsh,mulher:prefsm) Casados],Cs).

Escolher uma mulher member/2? É preciso memorizar as que ainda ficam solteiras Solução: select/3 my_select(x, [X R], R). my_select(x, [H T], [H R]):- my_select(x, T, R). Ficaria: my_select(m(mulher,_), Ms, MRest) Com heurística (tentar 1º as mais preferidas): member(mulher, PrefsH), my_select(m(mulher,prefsm), Ms, MRest)

Acasalar acasala([],[],_,[]). acasala([h(homem,prefsh) HRest],Ms, Casados,[c(Homem,Mulher) Cs]) :- member(mulher,prefsh), %Heurística: tenta 1º as + preferidas my_select(m(mulher,prefsm), Ms, MRest), % testar estabilidade acasala(hrest,mrest, [c(homem:prefsh,mulher:prefsm) Casados],Cs). Teste de estabilidade \+ instavel(c(homem:prefsh,mulher:prefsm), Casados)

Instabilidade instáveis Cs, Prefs <h1,m1>,<h2,m2> Cs (preftrocar(h1, m2, Prefs) preftrocar(h2, m1, Prefs)) preftrocar h, m, Prefs (prefere(h, m, conjuge h, Prefs) prefere(m, h, conjuge(m), Prefs)) instavel(c(h1:prefsh1,m1:prefsm1), [c(h2:prefsh2,m2:prefsm2) _]):- preferem_trocar(h1,m1, H2,M2, PrefsH1,PrefsM2) ; preferem_trocar(h2,m2, H1,M1, PrefsH2,PrefsM1). instavel(casal, [_ Cs]):- instavel(casal, Cs).

Preferir trocar preftrocar h, m, Prefs (prefere(h, m, conjuge h, Prefs) prefere(m, h, conjuge(m), Prefs)) %H1 (casado com M1) e M2 (casada com H2) %preferem trocar entre eles preferem_trocar(h1,m1, H2,M2, PrefsH1,PrefsM2):- antes(prefsh1, M2,M1), antes(prefsm2, H1,H2). %antes(prefs, X,Y) :- X está antes de Y em Prefs. antes([x _], X,_):-!. antes([y _], _,Y):-!, fail. antes([_ L], X,Y):- antes(l, X,Y).

casamentos(homens,mulheres, Casais) :- acasala(homens,mulheres, [], Casais). acasala([],[],_,[]). acasala([h(homem,prefsh) HRest],Ms, Casados,[c(Homem,Mulher) Cs]) :- member(mulher,prefsh), %Heurística: tenta 1º as + preferidas my_select(m(mulher,prefsm), Ms, MRest), \+ instavel(c(homem:prefsh,mulher:prefsm), Casados), acasala(hrest,mrest, [c(homem:prefsh,mulher:prefsm) Casados],Cs). instavel(c(h1:prefsh1,m1:prefsm1), [c(h2:prefsh2,m2:prefsm2) _]):- preferem_trocar(h1,m1, H2,M2, PrefsH1,PrefsM2) ; preferem_trocar(h2,m2, H1,M1, PrefsH2,PrefsM1). instavel(casal, [_ Cs]):- instavel(casal, Cs). %H1 (casado com M1) e M2 (casada com H2) preferem trocar entre eles preferem_trocar(h1,m1, H2,M2, PrefsH1,PrefsM2):- antes(prefsh1, M2,M1), antes(prefsm2, H1,H2). %antes(prefs, X,Y) :- X está antes de Y em Prefs. antes([x _], X,_):-!. antes([y _], _,Y):-!, fail. antes([_ L], X,Y):- antes(l, X,Y). my_select(x, [X R], R). my_select(x, [H T], [H R]):- my_select(x, T, R).