Mecânica Estatística de Sistemas de Reputação em Redes ...

69
Antonio Andre Monteiro Manoel Mecânica Estatística de Sistemas de Reputação em Redes Autônomas Dissertação de mestrado apresentada ao Insti- tuto de Física para a obtenção do título de Mes- tre em Ciências Orientador: Prof. Dr. Renato Vicente Comissão Examinadora: Prof. Dr. Renato Vicente (IME/USP) Prof. Dr. Silvio Roberto de Azevedo Salinas (IF/USP) Prof. Dr. Fernando Fagundes Ferreira (EACH/USP) UNIVERSIDADE DE S ÃO PAULO I NSTITUTO DE F ÍSICA São Paulo 2012

Transcript of Mecânica Estatística de Sistemas de Reputação em Redes ...

  • Antonio Andre Monteiro Manoel

    Mecnica Estatstica de Sistemas de Reputaoem Redes Autnomas

    Dissertao de mestrado apresentada ao Insti-tuto de Fsica para a obteno do ttulo de Mes-tre em Cincias

    Orientador:

    Prof. Dr. Renato Vicente

    Comisso Examinadora:

    Prof. Dr. Renato Vicente (IME/USP)Prof. Dr. Silvio Roberto de Azevedo Salinas (IF/USP)

    Prof. Dr. Fernando Fagundes Ferreira (EACH/USP)

    UNIVERSIDADE DE SO PAULOINSTITUTO DE FSICA

    So Paulo

    2012

  • Agradecimentos

    Gostaria de agradecer aqueles que me apoiaram ao longo dos dois ltimos anos, tempo em

    que estive preparando este trabalho, e em especial: aos professores Renato Vicente e Nestor

    Caticha, pela orientao e motivao dada; minha famlia, Cristine e a meus pais, Edson e

    Elizabeth; aos amigos que me acompanham desde a graduao Bruno, Gabriel, Henrique,

    Joo Pedro, Lucas, Michel, Paulo e Petre; e aos amigos com quem convivi durante o mestrado

    Alex, Diogo, Jonatas, Leonardo e Rafael.

    Devo a estes sincero reconhecimento por todos os estmulos e incentivos, tanto intelectuais

    como emocionais, cada um deles de extrema importncia na concluso deste trabalho. Agradeo

    ainda aos demais com quem cruzei pelo Instituto de Fsica da Universidade de So Paulo desde

    2006, proporcionando um ambiente de grande estmulo intelectual.

    Por fim, agradeo ao Conselho Nacional de Pesquisa (CNPq) pelo apoio e financiamento

    que viabilizaram a realizao desta tese.

    A todos, muito obrigado!

  • Resumo

    D-se o nome de sistemas de reputao a mecanismos em que membros de uma comunidadeemitem avaliaes sobre os demais e a partir destas se inferem quais dos membros podemou no ser considerados confiveis. Apresentamos, nesta dissertao de mestrado, um estudosobre estes sistemas. Seguindo idias recentes na literatura, modela-se o problema de calcularreputaes a partir de avaliaes no-confiveis como um problema de inferncia estatstica, que ento analisado com o uso de uma tcnica conhecida como propagao de crenas, permitindoque obtenhamos estimativas. Em seguida, utilizamo-nos da relao existente entre problemas deinferncia e mecnica estatstica para realizar um estudo analtico mais profundo, indito, pormeio de uma generalizao do mtodo de cavidade. So traados diagramas de fase, em que seobservam regies de parmetros para as quais o problema torna-se mais difcil de resolver; estaanlise nos d alguma intuio sobre o problema, possibilitando que sejam propostas melhoriasaos mtodos existentes para trat-lo.

  • Abstract

    Its given the name of reputation system to mechanisms in which members of a communityissue each other ratings and from these it is inferred which can be trusted and which cant. Wepresent, in this masters dissertation, a study on these systems. Following ideas from recentworks on the engineering literature, the problem of calculating reputations from unreliable ra-tings is modeled as one of statistical inference, and then analyzed with the use of a techniqueknown as belief propagation, allowing us to obtain estimatives. Next, we use the existing re-lation between inference problems and statistical mechanics to motivate a novel deeper study,by means of a generalization of the cavity method. Phase diagrams are drawn, making possibleto identify regions of parameters for which the problem is harder to solve; this analysis bringsinsight to the problem, allowing one to propose improvements to the methods available for itstreatment.

  • Sumrio

    1 Introduo p. 9

    1.1 Inferncia e mecnica estatstica . . . . . . . . . . . . . . . . . . . . . . . . p. 10

    1.2 Organizando a dissertao . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 11

    2 Estimando Reputaes p. 13

    2.1 Sistemas de reputao definio e exemplos . . . . . . . . . . . . . . . . p. 15

    2.2 Modelo para inferncia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 18

    2.3 Tcnica de propagao de crenas . . . . . . . . . . . . . . . . . . . . . . . p. 22

    2.4 Formulao do algoritmo . . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 28

    3 Anlise Terica p. 36

    3.1 Mtodo de cavidade . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 37

    3.2 Vidro de spin de campo aleatrio . . . . . . . . . . . . . . . . . . . . . . . . p. 47

    3.3 Estudo do algoritmo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 51

    4 Testes de Robustez p. 55

    4.1 Diferentes topologias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 55

    4.2 Ataques ao sistema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 60

    5 Concluso p. 63

    Referncias Bibliogrficas p. 65

    ndice Remissivo p. 69

  • 9

    1 Introduo

    Where is the knowledge we have lost in information?

    T.S. Eliot

    Nas mais diversas reas do conhecimento, bastante comum e por vezes at necessrio

    tirar concluses sobre algo a partir de observaes incertas; a tal processo, d-se o nome de

    inferncia.

    Raciocnios lgicos indutivos, que efetuamos a todo instante, so um exemplo de inferncia;

    ocorrem ainda nas cincias, em que se deseja estudar a partir de medies como diferentes

    quantidades se relacionam entre si ou como variam no tempo.

    Neste contexto, costuma-se descrever a tarefa em termos de modelos estatsticos; a relao

    entre duas quantidades a e b pode assim ser estudada a partir da distribuio de probabilidade

    conjunta P(a,b); das distribuies condicionais P(a|b) e P(b|a); e das distribuies marginaisP(a) e P(b). Analogamente, uma quantidade x(t) pode ser estudada a partir de distribuies do

    tipo P(x(t)|x(t1),x(t2), . . .).

    de fundamental importncia, nestes estudos, a utilizao do chamado teorema de Bayes,

    que permite que calculemos distribuies de probabilidade a posteriori incorporando novas

    informaes. Dada uma hiptese H e um novo conjunto de dados D, o teorema de Bayes toma

    a forma P(H|D) P(D|H)P(H).

    Na mecnica estatstica, o problema central de calcular a termodinmica de um sistema a

    partir de sua descrio microscpica pode ser tambm visto como um problema de inferncia.

    Desenvolveu-se na rea, ao longo dos dois ltimos sculos, um extenso ferramental matemtico

    capaz de modelar com sucesso uma grande variedade de sistemas fsicos.

    Em trabalhos desenvolvidos na dcada de 1950, sobretudo por Edwin Jaynes (1), percebeu-

    se que este ferramental pode ser utilizado em problemas de inferncia anlogos que se re-

    ferem no s a sistemas fsicos, mas tambm outros sistemas complexos diversos. Modelos

    clssicos para sistemas magnticos, assim, podem ser vistos mais geralmente como modelos

    para problemas de inferncia em alta dimensionalidade, em que as variveis assumem valores

    binrios; e vice-versa.

  • 10

    1.1 Inferncia e mecnica estatstica

    Outra rea cujos problemas tpicos so de inferncia a teoria de informao. Em 1948,

    Claude Shannon introduziu um framework (2) que permite analisar em termos estatsticos o

    problema de transmisso de dados; um modelo consiste, basicamente, em uma fonte que co-

    difica a mensagem inicial, um canal (rudoso) que a transmite, e um receptor que a decodifica

    (ver figura).

    Utilizaremos a teoria da informao nesta seo para exemplificar como problemas de in-

    ferncia pertencentes a outras reas podem ser analisados por meio de tcnicas da mecnica

    estatstica.

    codificador decodificadorcanal

    mensagem original

    M bits

    mensagem estimada

    M bits

    mensagem codificada

    N bitsmensagem recebida

    N bits

    Figura 1.1: Modelo tpico para transmisso de dados; figura baseada em (3)

    Deseja-se que a mensagem recebida, aps decodificada, seja idntica ou ao menos bastante

    semelhante a mensagem enviada. Para este fim, so utilizados os chamados cdigos de correo

    de erros, que se aproveitam de alguma redundncia na mensagem transmitida para inferir a

    mensagem original. Matematicamente (4, 5), uma mensagem s de M bits codificada em

    uma mensagem x de N bits, que transmitida; recebe-se uma mensagem y de N bits, que

    decodificada em uma mensagem r de, novamente, M bits. Um cdigo de correo de erros

    consiste em uma forma para a codificao x = x(s), e uma para a decodificao r = d(y).

    Trabalha-se tipicamente com a distribuio de probabilidades Q(y|x), relacionada ao rudono canal. So objetos de estudo quantidades como a probabilidade de erro em blocos, pB =

    P(r 6= s), e a probabilidade de erro em bits, pb = 1M Mi=1 P(ri 6= si); procura-se, usualmente,

    minimizar uma destas duas quantidades.

    Uma anlise detalhada vem da distribuio a posteriori P(s|r), que pelo teorema de Bayespode ser escrita como

    P(s|r) = 1Z

    exp [logP(r|s)+ logP(s)] , (1.1)

    cuja forma denominada medida de Gibbs, P(s) = 1Z exp [H(s)], com

  • 11

    H(s) = logP(s|r) logP(s). (1.2)

    util, ainda, trabalhar com si {1,1}; somas binrias entre variveis pertencentes a{0,1}, assim, passam a ser representadas por produtos.

    Dada a analogia, as tarefas de minimizar pB e pb relacionam-se agora a outros clculos,

    tpicos da mecnica estatstica (6, 7). A primeira est associada a determinar as mensagens que

    maximizam P(s|r) ou os estados fundamentais, que minimizam H(s); j minimizar pb estrelacionado a determinar as mensagens que maximizam as distribuies marginais {P(si)}ou os estados que, para = 1, respeitam o sinal das magnetizaes locais ( = 1 dito o valor

    do parmetro na linha de Nishimori).

    Trata-se, mais geralmente, de dois problemas de inferncia distintos: aquele que visa ma-

    ximizar a distribuio a posteriori comumente denominado MAP (do ingls, maximum a pos-

    teriori); o que vem das magnetizaes locais, MPM (maximum posterior marginal). Tcnicas

    usuais para determinao dos estados fundamentais e das magnetizaes locais podem assim

    ser teis na execuo destas tarefas, no estudo de problemas quaisquer.

    Outras tcnicas permitem ainda que estudemos o problema mais a fundo, de forma analtica;

    possvel traar diagramas de fase que so, por exemplo, capazes de explicar a dificuldade de

    se alcanar os estados fundamentais em alguns casos. Estas tcnicas provm intuio sobre o

    problema, permitindo que proponhamos novas maneiras de resolv-lo.

    1.2 Organizando a dissertao

    Introduzimos, em seguida, um problema especfico de inferncia. Agentes, desempenhando

    alguma atividade qualquer, interagem entre si e avaliam uns aos outros; a partir destas avalia-

    es, queremos determinar quais destes agentes podem ser considerados, de alguma forma,

    confiveis. Mecanismos responsveis por esta tarefa recebem o nome de sistemas de reputa-

    o.

    No captulo 2, so dados uma definio e exemplos de tais sistemas; discutem-se modelos

    gerais para os mesmos, para ento formularmos um modelo especfico baseados na literatura.

    Mtodos para inferncia so ento introduzidos e analisados com o uso de simulaes compu-

    tacionais.

    Uma anlise terica do processo de inferncia a partir de tcnicas de mecnica estatstica

    nossa principal contribuio ocupa o captulo 3. So, primeiramente, apresentadas tais

  • 12

    tcnicas; nos utilizamos sobretudo do mtodo de cavidade, um mtodo de campo mdio para

    sistemas desordenados.

    No captulo 4, finalmente, aproveitamo-nos do discernimento fornecido pela anlise para

    estudar outros aspectos do problema, tal como a robustez do mtodo proposto para inferncia.

  • 13

    2 Estimando Reputaes

    Uncertainty is the only certainty there is, and

    knowing how to live with insecurity is the only security.

    John Allen Paulos

    Avanos tecnolgicos das ltimas dcadas deram origem a uma srie de situaes em que

    pessoas ou mquinas interagem entre si sem saber ao certo o quo confivel so as entidades

    com que esto lidando. Com o advento da internet, por exemplo, passamos a trocar informaes,

    compartilhar arquivos e fazer negociaes com pessoas que no conhecemos a fundo. Em

    realizaes presenciais destas tarefas, uma certa empatia permite que avaliemos melhor o risco

    a que estamos nos expondo; o contato virtual, no entanto, no permite tal tipo de avaliao, de

    forma que se faz necessria a introduo de ferramentas capazes de faz-la em nosso lugar.

    Nas engenharias tambm, avanos em reas como inteligncia artificial e robtica tornaram

    possvel a troca de informaes entre dispositivos eletrnicos que so, por vezes, autnomos

    no necessitam ser explicitamente controlados por algum, sendo capazes de lidar com novas

    situaes por si prprios atravs de, por exemplo, mtodos de aprendizado estatstico. Estes

    dispositivos so, no entanto, susceptveis ataques maliciosos e mal-funcionamento; impor-

    tante assim que disponhamos de tcnicas que permitam a um dispositivo avaliar se outro com o

    qual interage est em pleno funcionamento.

    Pode-se tentar resolver o problema a partir do estabelecimento de algum tipo de confiana

    entre as entidades sejam humanas ou no. No h consenso na literatura sobre a definio

    deste conceito; duas definies comumente utilizadas (8) so a de confiana para segurana

    (reliability trust) que dita a probabilidade subjetiva que um agente atribui execuo por

    outro agente de uma certa ao de que seu bem-estar depende; e de confiana para deciso

    (decision trust), que mede a disposio de uma entidade em depender de outra em uma dada

    situao com relativa segurana. So ambas definies vagas, mas tambm gerais.

    Distinguem-se, usualmente (9), alguns tipos ou classes de confiana:

    confiana de proviso (provision trust): descreve a confiana de uma entidade em umservio ou provedor de recursos.

  • 14

    confiana de acesso (access trust): descreve a confiana do agente em outros que acessa-ro recursos seus ou sob sua superviso; se faz importante em esquemas de controle de

    acesso, bastante utilizados em computao.

    confiana de delegao (delegation trust): descreve a confiana de uma entidade em ou-tras que agiro e tomaro decises em seu lugar.

    confiana de identidade (identity trust): a confiana em um agente ser de fato quem afirmaser; para este fim so geralmente utilizados esquemas de autenticao

    confiana de contexto (context trust): d uma medida de quanto uma entidade acredita es-tarem em ordem os sistemas e instituies necessrios para que a transao seja realizada

    com sucesso.

    Em um dado cenrio, vrios dos tipos de confiana so por vezes utilizados. Por exemplo,

    em processos em que se faz necessria a confiana de proviso, tambm se costuma utilizar

    a confiana de identidade. A esta combinao, d se o nome de propsito de confiana (trust

    purpose).

    confiana de proviso

    confiana de acesso

    confiana de delegao

    confiana de identidade

    confiana de contexto

    propsito de confiana

    Figura 2.1: Classes de confiana de acordo com (9); a reputao, objeto de nosso estudo, estligada confiana de proviso. Figura baseada em (8).

    Um conceito que por vezes se confunde ao de confiana o de reputao. De acordo

    com o dicionrio Houaiss, reputao o conceito de que algum ou algo goza num grupo.

    Reputao e confiana esto de certo associados, mas um no implica em outro: um indivduo

    pode confiar em outro devido sua boa reputao, ou apesar de sua m reputao.

    A reputao , no entanto, um conceito menos vago e mais mensurvel do que a confiana.

    Uma boa maneira de inferir que entidades num certo grupo so confiveis sobretudo em

    relao confiana de proviso parece ser, assim, identificar aquelas que possuem uma boa

    reputao. Mecanismos responsveis por tal tarefa so comumente denominados sistemas de

    reputao.

  • 15

    2.1 Sistemas de reputao definio e exemplos

    Identifica-se em geral um sistema de reputao como composto por cinco diferentes com-

    ponentes (10): uma para a captao de informaes, uma para a emisso de pontuaes e classi-

    ficaes, uma para a seleo de com que entidades interagir, uma para que se efetuem de fato as

    transaes e outra ainda para recompensar e punir os agentes dependendo de sua classificao.

    captao de

    informao

    pontuao e

    classificao

    seleo de

    entidades

    transao

    recompensa e

    punio

    Figura 2.2: Componentes de um sistema de reputao, de acordo com (10); o foco de nossoestudo a 2a componente, responsvel pela emisso de pontuaes e classificaes.

    importante diferenciar entre dois tipos de sistemas (8): os centralizados e os distribudos.

    Nos centralizados, h uma autoridade central que recebe as avaliaes emitidas pelos agentes,

    computa as pontuaes e classificaes e as transmite para os agentes; nos distribudos, por

    outro lado, tal autoridade no esta presente, e so os prprios agentes que, trocando informaes

    entre si, obtm amostras de avaliaes emitidas e a partir destas calculam os ndices. Sistemas

    distribudos so importantes em contextos como o de redes de sensores sem fio (11, 12, 13).

    Pode-se perceber que para ambos, no entanto, de extrema importncia a 2a componente

    mencionada responsvel pelo clculo de pontuaes e classificaes. O estudo desta compo-

    nente o foco de nossa dissertao; gostaramos de, a partir das informaes obtidas, calcular

    ndices que apontem quais dos agentes so de fato bem ou mal-intencionados um problema

    que , basicamente, de inferncia.

    Desde o incio da decada de 90, quando os primeiros sistemas de reputaes foram propos-

    tos (14), muitos outros surgiram em diferentes contextos. Na academia, passou a haver uma

    grande quantidade de propostas a partir dos anos 2000 que procuram em geral aplicar o mtodo

    a problemas especficos, delineando o processo a ser executado de maneira ad-hoc. S mais re-

  • 16

    centemente, no entanto, passou a haver tentativas de impor alguma padronizao s propostas.

    (10).

    Na prtica, estes esquemas passaram a ser aplicados a uma grande gama de situaes. Na

    internet, so utilizados por websites de e-commerce e mdia social; em foruns de discusso; na

    melhoria da segurana de redes peer-to-peer, como aquelas de compartilhamento de arquivos; e

    at mesmo por mecanismos de busca. So tambm muito aplicados redes de computadores e

    dispositivos eletrnicos como sensores sem fio (12, 11). Os esquemas utilizados costumam ser,

    no entanto, mais simples do que aqueles propostos na literatura, talvez para que se mantenham

    compreensveis ao usurio comum.

    De acordo com as diferentes caractersticas que os sistemas propostos e utilizados apresen-

    tam, possvel classific-los (15) em termos de

    modelo conceitual: cognitivo (relacionados confiana para deciso) ou ligado teoriade jogos (relacionados confiana para segurana).

    fontes de informao: proveniente de contato direto, de terceiros, deduzidas ou precon-cebidas.

    visibilidade: os ndices de reputao so globais, isto , cada agente tem acesso aos mes-mos ndices; ou subjetivos, e cada agente atribui ndices diferentes para uma mesma enti-

    dade

    granularidade: os ndices so atribuidos pensando em um contexto especfico, ou emvrios contextos diferentes

    hipteses de comportamento: considera ou no que os agentes podem ser tendenciosose/ou trapacear

    tipo de informao trocada: valores binrios ou contnuos

    H ainda algumas tcnicas tpicas para o clculo dos ndices de reputao (8), tal como:

    de soma ou mdia simples; bayesianos, que empregam modelagem estatstica; baseados em

    crenas, mtodos similares aos probabilsticos mas em que no h normalizao; fuzzy, que

    emprega a lgica de mesmo nome; e modelos de fluxo, em que ndices so computados atravs

    de iteraes transitivas em grafos.

    Um dos primeiros modelos para sistema de reputao foi introduzido por Marsh em 1994

    (14). O modelo diferencia entre uma confiana geral, T tx (y), e outra situacional, Ttx (y,), que

  • 17

    o agente x possui no agente y num dado tempo t (e para um dada situao ). Para o clculo da

    confiana situacional, utiliza-se a relao

    T tx (y,) =Utx()I

    tx()T tx (y), (2.1)

    na qual U tx() a utilidade de x com relao a , Itx() a importncia de para x, e T tx (y)

    uma estimativa para a confiana geral, calculada levando-se em conta T x (y,) para situaes

    semelhantes e tempos passados < t; proposto tomar-se a mdia, o mximo ou o mnimo

    de tais valores.

    Utiliza-se posteriormente o valor de T tx (y,) para que x decida, de acordo com um dado

    critrio, se deve ou no cooperar com y. De acordo com a classificao mencionada, este

    modelo conceitualmente ligado teoria de jogos; leva em conta informaes provenientes de

    contato direto, apenas; e fornece ndices de reputao subjetivos, atribuidos pensando-se em um

    contexto especfico.

    Das propostas mais recentes, vale mencionar aquela por Schillo et al. (2000) (16), que

    abordam o problema como um de inferncia de maneira semelhante a que faremos em se-

    guida; e tambm o sistema de reputao Regret, introduzido por Sabater e Sierra em 2001 (17)

    e bastante representativo do nicho de sistemas multi-agentes.

    Um sistema que obteve grande sucesso em aplicaes o PageRank (18). O modelo

    formulado pensando-se em pginas da web como entidades: sejam u e v pginas contidas num

    conjunto de pginas P, e N(u) o nmero de pginas que apontam para u e N+(v) o nmero de

    pginas para que v aponta; calcula-se o ndice de reputao para u (seu PageRank) a partir de

    R(u)= E(u)+ vN(u)

    R(v)|N+(v)|

    , (2.2)

    onde E um vetor sobre P que fornece um valor de reputao intrinseco s pginas (o smbolo= indica aqui igualdade a menos de um fator de normalizao). Neste contexto, o esquema foie continua sendo muito utilizado pela Google em seu mecanismo de buscas; pode-se considerar

    ainda outras entidades o mtodo j foi utilizado por exemplo em estudos cientomtricos,

    para avaliar a reputao de artigos cientficos (19).

    So apontados alguns problemas de que costumam sofrer as propostas usuais para sistemas

    de reputao, tais como a importncia indevida dada a avaliaes emitidas de maneira injusta

    e, sobretudo, a possibilidade de que ocorram fraudes no esquema de votao por exemplo,

    atravs de trocas de identidade, permitindo que uma mesma entidade se passe por outras e emita

  • 18

    avaliaes em seu lugar (comumente denominados de ataques Sybil na literatura); ou por meio

    de conluio, havendo um grupo de agentes que emitem opinies de forma a propositalmente

    impedir o clculo correto de reputaes.

    2.2 Modelo para inferncia

    A fim de calcular reputaes de maneira tima, baseados em (20, 21), formularemos agora

    um modelo que procura reproduzir a relao existente entre as opinies formadas pelos diversos

    agentes e suas reputaes.

    Na discusso que segue, consideraremos que um conjunto de opinies {Ji j} foi amostrado,seja por uma autoridade central ou por um agente qualquer; aqui Ji j representa a avaliao

    emitida por i sobre j tal como recebida, constituindo a matriz J de dimenses nn. Um vetorr = (r1,r2, . . . ,rn) d as reputaes de fato dos agentes, de acordo com alguma medida a ser

    definida.

    Podemos afirmar sem perda de generalidade que

    J = f (r,{}), (2.3)

    onde {} um conjunto de variveis aleatrias que representam externalidades diversas. Ummodelo especfico depender de uma forma para f , da especificao dos domnios de Ji j e ri, e

    das probabilidades de assumirem diferentes valores. Queremos que estes parmetros sejam

    determinados de forma a modelar situaes reais da maneira mais geral possvel, mas tambm

    que sejam simples o bastante a ponto de permitir que estudemos a distribuio posterior P(r|J)analiticamente em detalhes. Levando isto em conta, uma boa escolha parece ser

    Ji j =

    i jrir j se (i, j) ,0 do contrrio, (2.4)com ri = 1 representando reputaes boas (+1) ou ruins (1), Ji j = 1 avaliaes positivasou negativas e i j Bimod1(p) um rudo na formao ou transmisso de opinies, onde

    Bimod1(p) =

    +1 com prob. p,1 com prob. 1 p, (2.5)e o conjunto dado pelos pares de agentes cujas opinies foram amostradas.

  • 19

    -

    -

    -

    +

    +

    +

    +

    +

    -

    +

    ++

    +

    +

    +

    --

    -

    -

    Figura 2.3: Um dos cenrios possveis queprocurou-se modelar; agentes de m repu-tao emitem avaliaes positivas uns aosoutros, de forma a tentar enganar o meca-nismo. Agentes de boa reputao so aquiindicados por crculos brancos, e os de mreputao por crculos pretos; as setas indi-cam avaliaes emitidas acompanhadasde um crculo vermelho, caso negativas, ede um crculo verde, caso positivas.

    Em princpio, um agente i a julgar um outro

    agente j de reputao boa (r j = +1) deve se sen-

    tir inclinado a formar uma opinio boa do mesmo

    (Ji j = +1). Em situaes reais, no entanto, isto

    no o que acontece; como descrito na seo 2.1,

    por vezes h conluio: um grupo de agentes de re-

    putao ruim se infiltra no sistema emitindo avali-

    aes positivas uns sobre os outros, de forma a ten-

    tar alavancar suas reputaes. A forma proposta

    para f busca evitar este tipo de ataque, admitindo

    que isto ocorra; o produto rir j leva a uma avaliao

    boa mesmo no caso em que ri = r j =1. Admite-se ainda que, com uma probabilidade 1 p, agen-tes podem se enganar ao emitir opinies ou falhas

    podem ocorrer no mecanismo de transmisso.

    Para estudar o modelo proposto, determine-

    mos P(r|J). Admitiremos que as opinies Ji j soemitidas de maneira independente umas em rela-

    o s outras o que pode no ocorrer em muitos

    dos casos de interesse prtico, mas parece funci-

    onar bem em primeira aproximao e que as

    reputaes ri so tambm independentes entre si. Temos ento do teorema de Bayes que

    P(r|J) P(J|r)P 0 (r) (2.6)

    (i, j)

    P(i j)i

    P 0 (ri).

    Vamos supor uma distribuio a priori para r de forma a ter P 0 (ri = +1) = q, ou seja,

    ri Bimod1(q). Levemos em conta ainda que se P(x) = Bimod1(p), pode-se reescreverP(x) como

    P(x) = p1+x

    2 (1 p)1x

    2 = cp exp(px), (2.7)

    com cp =

    p(1 p) e p = 12 logp

    1p . Prosseguindo com o clculo, obtemos

  • 20

    P(r|J) (i, j)

    exp(pi j)i

    exp(qri)

    exp

    (p

    (i, j)i j +q

    iri

    )(2.8)

    exp

    [p

    (

    (i, j)Ji jrir j +

    qp i

    ri

    )]. (2.9)

    Trabalharemos sobretudo com valores de p > 0.5, situao em que o rudo no prevale-

    cente; e de q > 0.5, assumindo que a maioria das entidades confivel (pode-se mostrar, no

    entanto, que o caso de q < 0.5 simtrico a este).

    Queremos fazer uma estimativa r para r sendo consistentes com a amostra de opinies

    obtida e de maneira a minimizar o erro cometido1 = h(r, r) = 12(

    1 rrn)

    ; delineado um

    algoritmo para este clculo, pode-se utiliz-lo como base para a formulao de sistemas de

    reputao.

    A fim de exemplificar o tipo de anlise a ser feita, utilizemo-nos primeiro de um mtodo

    simples para a obteno de estimativas; mais precisamente, calculemos as componentes de r a

    partir de

    ri = sgn

    (

    k iJki

    ), (2.10)

    onde i indica o conjunto de vizinhos de i no grafo mais precisamente, neste caso, os agentes

    que avaliaram ou foram avaliados por i. Podemos simular computacionalmente um cenrio em

    que n agentes dispostos sobre um grafo da topologia desejada emitem opinies uns sobre os

    outros de acordo com o modelo formulado (eq. 2.4); calculamos, em seguida, as estimativas da

    maneira proposta e comparamos os valores reais e estimados das reputaes, dado que na simu-

    lao dispomos de ambos. Geramos em seguida um grande nmero de cenrios variando em

    cada um deles as reputaes, conexes formadas e avaliaes emitidas e calculamos mdias

    das grandezas de interesse.

    Por outro lado, possvel estudar mais a fundo, de forma analtica, as implicaes de uti-

    lizar tal mtodo. Uma vez que, pelo modelo, Jki = kirkri, temos que ri = sgn [(k i kirk)ri];

    como se admitem conhecidas as distribuies de e (a priori) de r, e que tais variveis so1h(r, r) aqui a distncia de Hamming entre r e r.

  • 21

    0

    0.1

    0.2

    0.3

    0.4

    0.5

    0.6

    0.7

    0.5 0.6 0.7 0.8 0.9 1

    erro

    md

    io

    P (i = 1)

    c = 3, q = 0.7

    c = 15, q = 0.7 c = 3, q = 0.8

    simulaoteoria

    Figura 2.4: Erro mdio na obteno de estimativas com o uso do mtodo simples delineado,para q P 0 (ri = 1) = 0.7 e c = 3 (as curvas pontilhadas do o erro para outros valores dosparmetros); o resultado da simulao com n = 100 indicado por pontos, e aquele fornecidopela teoria por uma linha contnua. Pode-se observar que o erro , de um modo geral, grande.Para a simulao, foram gerados cerca de 3000 cenrios para cada valor de p, sobre os quaiscalculou-se o erro mdio; o tamanho das barras de incerteza desprezvel.

    independentes e identicamente distribudas, obtemos2

    ri = sgn

    [(ci

    k=1

    krk

    )ri

    ], (2.11)

    onde ci amostrado da distribuio de graus do grafo em questo; assumimos, na anlise que

    segue, ci = 3i mais precisamente, que os agentes esto dispostos numa rede aleatria regu-lar3 de grau 3. A probabilidade de que ri seja igual a ri , portanto, P (ck=1 krk > 0). Como

    P(i = 1) = p e P 0 (ri = 1) = q, temos que P(iri = 1) = pq+(1 p)(1q) , e assim

    P(ri = ri) = P

    (c

    k=1

    krk > 0

    )=b c2c

    n=0

    (cn

    ) (cn)(1)n. (2.12)

    Pode-se ver na figura 2.4 o erro mdio = 1 P(ri = ri) em funo de p para q = 0.7,que de um modo geral grande. Para p = 1, no h rudo algum na transmisso ou formao

    de opinies, e h no entanto uma probabilidade de aproximadamente 20% de se obter uma

    2Tratamos aqui k e rk como cpias de variveis aleatrias e r, amostradas respectivamente de P( ) e P 0(r).3Sobre grafos aleatrios regulares, ver por exemplo (22, 23).

  • 22

    estimativa incorreta; vale notar ainda que, para q = 0.7, estimativas atribuida com probabilidade

    uniforme trariam uma probabilidade de erro de 30%. Isto mostra que tal mtodo um tanto

    quanto inadequado para a obteno de estimativas, ao menos no caso em que avaliaes so

    emitidas de forma semelhante a que admitimos em nosso modelo.

    Talvez por sua simplicidade, este um mtodo adotado com alguma frequncia, por exem-

    plo por sistemas de e-commerce; um dos websites mais influentes do meio, o eBay (24) utiliza

    sistema bastante semelhante calcula no um ndice binrio de reputao, mas apenas a soma

    de todas as opinies emitidas sobre um certo usurio.

    Um dos motivos pelos quais se obteve um erro grande que, apesar de possurmos um

    modelo de como as avaliaes so formadas, no o levamos em conta. Introduziremos, na

    prxima seo, a tcnica de propagao de crenas, que nos auxiliar a obter estimativas de

    modo mais compatvel com o desejado. Por ser um mtodo mais elaborado, uma anlise terica

    no se d de maneira trivial como a feita acima; seremos capazes de faz-lo com o uso de

    ferramentas da mecnica estatstica (cap. 3).

    2.3 Tcnica de propagao de crenas

    Seja P(x) uma distribuio de probabilidades definida sobre um conjunto de variveis ale-

    atrias discretas x = {x1,x2, . . . ,xN}. Em problemas de inferncia estatstica, por vezes deinteresse, dado um subconjunto xS x, calcular somas do tipo4

    (xS) = xix/xS

    P(x), (2.13)

    levando a distribuies marginais ou fatores de normalizao (no caso em que xS = {}). Estatarefa especialmente demorada para valores grandes de M = N|xS|, dado que se executa emO(||M) aqui o alfabeto de x, isto , o conjunto de possveis valores que as variveis xiassumem.

    Em alguns casos possvel, no entanto, fatorar esta soma, facilitando o seu clculo. Se, por

    exemplo, uma distribuio P(x1,x2,x3) puder ser escrita como P(x1,x2,x3) = f (x1,x3)g(x2,x3),

    pode-se fazer o clculo a partir de

    (x3) = x1,x2

    P(x1,x2,x3) =

    (x1

    f (x1,x3)

    )

    (x2

    g(x2,x3)

    ), (2.14)

    4Aqui, x/xS denota o complemento de xS em x.

  • 23

    ou seja, a partir de 2||+1 operaes, em vez de ||2 de um modo geral, a partir de O(M)operaes em vez de O(||M), caso a soma possa ser fatorada em somas sobre apenas umavarivel.

    Esta fatorao de certa forma trivial; a percepo de que utilizada por uma srie de

    clculos todavia recente e fornece um maior entendimento (25). Formalizaremos, a seguir,

    esta tcnica sob o nome de propagao de crenas.

    2.3.1 Campos de Markov e grafos de fatores

    Para que seja possvel fatorar as somas, as expresses para as distribuies devem ser da

    forma

    P(x) =1Z

    M

    a=1

    a(xa), (2.15)

    dizendo-se, neste caso, que as variveis pertencentes a x formam um campo de Markov. Neste

    contexto, a so denominadas funes de compatibilidade.

    Uma boa representao para tal estrutura fornecida por grafos de fatores; trata-se de um

    multigrafo composto por dois tipos de ns: ns-varivel () i V, |V |= N, relacionados as xi, ens-funo () a F, |F |= M, relacionados as a. Ns-funo se ligam apenas a ns-varivele vice-versa, de forma que o n-funo referente a a se liga aos ns-varivel referentes seus

    argumentos, xa. Um grafo de fatores G completamente definido pelos conjuntos de ns, V e

    F , e pelo conjunto de arestas, E.

    Uma distribuio do tipo P(x1,x2,x3,x4) = 1(x1,x2)2(x1,x3)3(x2,x4)4(x3,x4), por

    exemplo, representada pelo grafo de fatores da fig. 2.5.

    x1

    x2

    x3

    x4

    1

    2

    3

    4

    Figura 2.5: Grafo de fatores para uma distribuio fatorvel em pares, P(x1,x2,x3,x4) =1(x1,x2)2(x1,x3)3(x2,x4)4(x3,x4)

  • 24

    2.3.2 Equaes de propagao de crenas

    Definiremos, sobre o grafo de fatores de um campo de Markov qualquer, um esquema de

    transmisso de mensagens: um n-varivel i envia, no tempo t, mensagens (t)ia(xi) para os ns-

    funo em sua vizinhana, a i; e, analogamente, um n-funo envia mensagens (t)ai(xi)para i a.

    Queremos utilizar uma regra para a transmisso que faa com que as mensagens convirjam

    aps um dado nmero de iteraes para {ia}, {ai}, e que permita o clculo das distribui-es marginais aps a convergncia, por exemplo a partir de 5

    i(xi)= a i

    ai(xi), (2.16)

    ou seja, o produto de todas as mensagens enviadas ao n-varivel pelos ns-funo vizi-

    nhos. Se considerarmos que o grafo de fatores com que estamos trabalhando uma rvore, isto

    , no possui ciclos, isto pode ser feito atravs do seguinte conjunto de equaes

    (t+1)ia (xi)= b i/a

    (t)bi(xi) (2.17)

    (t)ai(xi)= xa/i

    a(xa) ja/i

    (t)ja(x j),

    o qual denominaremos de equaes de propagao de crenas. Percebe-se que as mensagens

    enviadas combinam as mensagens recebidas de todos os vizinhos exceto o destinatrio; os ns-

    funo fazem um tipo de processamento, combinando as mensagens ao valor da funo de

    compatibilidade naquele ponto.

    possvel obter boas aproximaes para as marginais mesmo no caso em que o grafo no

    uma rvore, mas possui ciclos de longo comprimento mdio.

    Este esquema permite ainda que computemos as marginais locais distribuies conjuntas

    de duas ou mais variveis, que representaremos por ns-varivel VR ligados entre si por ns-fator

    FR atravs de

    (xR)= aFR

    a(xa) aR

    ai(a)(xi(a)), (2.18)

    5O termo = utilizado ao longo desta dissertao para indicar a igualdade a menos de uma constante denormalizao.

  • 25

    Figura 2.6: Indicao das variveis de que depende o clculo das marginais locais (eq. 2.18).Aqui, R o conjunto de ns-fator que se conectam VR mas no esto em FR, e i(a) o n-varivel que liga o n-fator a a um n-fator em FR (h apenas um destes, dado que se houvessemdois ou mais, a estaria em FR)

    onde R o conjunto de ns-fator que se conectam VR mas no esto em FR, e i(a) o n-

    varivel que liga o n-fator a a um n-fator em FR (h apenas um destes, dado que se houvessem

    dois ou mais, a estaria em FR).

    2.3.3 Aplicaes em mecnica estatstica

    Um bom exemplo de aplicao do esquema citado acima vem da fsica estatstica. Consi-

    deremos uma hamiltoniana para um sistema magntico do tipo

    H(s) = (i, j)E

    Ji jsis ji

    Bisi, (2.19)

    com si =1 e E,{Ji j},{Bi} quaisquer6 uma generalizao do modelo de Ising. Os estadosde equilbrio, a uma dada temperatura 1, so distribudos de acordo com

    P(s) =1Z

    exp(H(s)) = exp

    [

    (

    (i, j)EJi jsis j +

    iBisi

    )], (2.20)

    que pode ser fatorada da seguinte maneira,

    P(s) =1Z

    (i, j)Eexp(Ji jsis j)

    iexp(Bisi), (2.21)

    6Em princpio supe-se, contudo, que a matriz J simtrica.

  • 26

    com estrutura semelhante mencionada anteriormente. De fato, pode-se neste caso construir

    um grafo de fatores com apenas dois tipos de ns-funo: um referente s funes i j(si,s j) =

    exp(Ji jsis j) (), e outro s i(si) = exp(Bisi) (). Exemplos de construes para uma rede

    quadrada e uma rede totalmente conexa esto na figura 2.7

    (a) para uma rede totalmente conexa (b) para uma rede quadrada

    Figura 2.7: Grafos de fatores para a distribuio em questo, sobre diferentes redes; os ns-varivel so indicados por , e os dois tipos de ns funo por e .

    Indexemos o n-fator que liga os ns-varivel i e j por (i j), e a mensagem enviada pelo

    mesmo para i por (i j)i; analogamente, o n-fator que se conecta apenas ao n-varivel

    i indexado por i, e a mensagem enviada pelo mesmo por i. O esquema de transmisso de

    mensagens para esta distribuio fica assim

    (t+1)i(i j)(si)= i(si)

    k i/ j(t)(ki)i(si)

    (t)( ji)i(si)

    = s j

    exp(Ji jsis j)(t)j( ji)(s j) (2.22)

    i(si)= exp(Bisi),

    ou, substituindo os termos devidamente e abreviando a notao de i (i j) para i j

    (t+1)i j (si)= exp(Bisi) k i/ j

    sk

    exp(Jiksisk)(t)ki(sk), (2.23)

    que a regra para a atualizao de mensagens neste caso. Num perodo de tempo, propagar-

    se-o ||= 2 mensagens sobre cada aresta (i, j) E e em cada sentido, contendo informaessobre a probabilidade dos ns assumirem cada um dos valores do alfabeto. Caso as mensagens

    convirjam aps um nmero de iteraes da regra, uma aproximao para a distribuio marginal

    da varivel si pode ser obtida atravs da eq. 2.16, e ficamos com

  • 27

    i(si)= exp(Bisi)j

    s j

    exp(Ji jsis j)ji(s j), (2.24)

    onde {i j} o conjunto de mensagens obtidas aps a convergncia. Vale notar que a con-vergncia do mapa no garantida para uma rede de topologia qualquer, e sim to somente

    para rvores caso tambm em que as aproximaes obtidas so exatas. A partir da distribui-

    o marginal, grandezas termodinmicas podem ser calculadas com facilidade, como veremos

    adiante; a magnetizao local, por exemplo, dada por mi = i(1)i(1).

    i

    j

    (ij)

    (ki)

    (ki)

    i i(

    i j)

    (ij)

    j

    i

    Figura 2.8: Esquema de transmisso de mensagens: o n-varivel i envia ao n-fator (i j) men-sagem gerada a partir do processamento de mensagens recebidas dos demais ns-fatores que ocercam; em seguida, o n-fator (i j) processa esta mensagem e transmite a mensagem resultanteao n-varivel j. Posteriormente, todo o processo se repete no sentido inverso.

    Sendo si uma varivel binria e i j(si) definida a menos de uma constante de normaliza-

    o, pode-se fazer uma parametrizao de forma a haver apenas 1 mensagem se propagando em

    cada sentido de aresta. Introduzamos a razo de log-verossimilhana,

    hi j 1

    2log

    i j(1)i j(1)

    , (2.25)

    definindo inversamente i j(si) = exp(hi jsi) = 12[1+ si tanh(hi j)

    ]; substituindo na eq.

    2.23

    (t+1)i j (si)= exp(Bisi) k i/ j

    cosh(Jiksi)[1+ tanh(Jiksi) tanh(h

    (t)ki)

    ], (2.26)

    e, usando a definio de hi j

    h(t+1)i j = Bi +1

    2 k i/ jlog

    [1+ tanh(Jik) tanh(h

    (t)ki)

    1 tanh(Jik) tanh(h(t)ki)

    ], (2.27)

  • 28

    onde levou-se em conta que que a funo cosh(x) par em x e tanh(x), mpar. Utilizando a

    identidade tanh1(x) = 12 log1+x1x , para |x|< 1, temos finalmente

    h(t+1)i j = Bi +1 k i/ j

    tanh1[tanh(Jik) tanh(h

    (t)ki)

    ], (2.28)

    A equao 2.28 fornece uma regra para a transmisso do novo conjunto de mensagens,

    {h(t)i j}. Iterando-a at a convergncia, possvel obter as marginais a partir de i(si) =exp( hisi), onde hi dado por expresso semelhante a anterior, mas com soma efetuada so-

    bre todos os vizinhos

    hi = Bi +1 k i

    tanh1 [tanh(Jik) tanh(hki)] , (2.29)

    e a magnetizao local vem de mi = i(1)i(1) = tanh( hi).

    Iterando este mapa, obtemos {hi j} e {hi} e, a partir destes, grandezas termodinmicas po-dem ser calculadas, como descreveremos no captulo 3. De fato, esta uma forma alternativa e

    mais geral para a formulao de tcnicas clssicas da mecnica estatstica mais precisamente,

    a aproximao de Bethe-Peierls e o mtodo de cavidade; um estudo analtico mais aprofundado

    da equao 2.28 leva a uma prescrio moderna do ltimo (seo 3.1).

    2.4 Formulao do algoritmo

    Queremos estudar a distribuio a posteriori encontrada (eq. 2.9) utilizando-nos do m-

    todo descrito na seo anterior. A distribuio conjunta em questo possui formato bastante

    semelhante do exemplo dado (eq. 2.20); fazendo N = p = 12 logp

    1p e BN =qp =

    log q1qlog p1p

    ,

    podemos escrev-la como

    P(s|J) = 1Z

    exp

    [N

    (

    (i, j)Ji jsis j +BN

    isi

    )], (2.30)

    em que passou-se a rotular o argumento como s, a fim de explicitar que trabalhamos agora com

    um conjunto de variveis dinmicas que assumem valores quaisquer. Temos ento na prtica

    a mesma distribuio nos dois casos, com Bi = BN para todo i; isto permite que utilizemos as

    equaes derivadas no exemplo (2.28) para o clculo das distribuies marginais.

    Obtidas aproximaes para as distribuies marginais, { (ri)}, adotaremos as estimativasseguindo

  • 29

    ri = argmaxri

    (ri). (2.31)

    Como mencionado anteriormente, a tal tarefa d-se o nome de inferncia MPM (do ingls,

    maximum posterior marginal). Pode-se resumir o esquema proposto da seguinte forma:

    1. Numa rede com n agentes, amostrado um conjunto de avaliaes {Ji j}, com Ji j = 1representando uma opinio positiva ou negativa do agente i em relao ao agente j.

    2. Inicializa-se um conjunto {hi j} amostrando valores de uma determinada distribuioP (0) (h); itera-se o conjunto de equaes

    h(t+1)i j = BN +1

    N k i/ jtanh1

    [tanh(NJik) tanh(Nh

    (t)ki)

    ] i, j, (2.32)

    em um determinado nmero de passos tmax ou at que se atinja a convergncia, com

    max |h(t+1)i j h(t)i j| < . N e BN so calculados a partir de estimativas obtidas para os

    parmetros p e q { p, q} atravs das expresses N = 12 logp

    1p e BN =log q1qlog p1p

    .

    3. Atingida a convergncia, calcula-se os valores de {hi} a partir de

    hi = BN +1

    N k itanh1 [tanh(NJik) tanh(Nhki)] i. (2.33)

    4. Como (ri)= exp(N hiri), seguindo 2.31 as estimativas vem de

    ri = sgn(hi) i. (2.34)

    Faz-se necessrio, assim, especificar uma distribuio P (0) (h) e valores para tmax e , alm

    de obter estimativas para os parmetros p e q.

    Dado que trabalhamos com valores de q > 0.5, razovel tomar P (0) (h) sobre valores de

    h 0; a parte deste requisito, no h grande diferena em adotar uma ou outra distribuio exceto em alguns casos atpicos, que sero melhor analisados no cap. 3. Valores para tmax e

    dependem da situao especfica e podem ser tomados com base no bom senso; valores de

    tmax 100 e 107 geram tipicamente bons resultados.

    J os parmetros p e q esto relacionados, respectivamente, ao grau de rudo na formao

    e transmisso de opinies, e na esperana depositada a priori sobre os agentes estarem em seu

  • 30

    pleno funcionamento; com base nesta descrio, tcnicas para estim-los podem ser utilizadas.

    Estudaremos, mais a frente, o comportamento do algoritmo para valores estimados, { p, q}, tantoiguais como diferentes dos reais, {p,q}.

    Algoritmo 1 Iterao numrica de mensagens (distribuio P (0)(h), nmero mximo de itera-es tmax, preciso mnima , parmetros estimados p e q)

    inicializa H a partir de amostragens de P (0)(h) N(p),B BN(p, q)while and t < tmax do

    for i = 1 n dofor j i do

    H i j f (H)end for

    end formax(|H H|)t t +1, H H

    end whileif convergiu then

    calcula hiri sgn(hi)

    end if

    Podemos delinear o mtodo, ainda, de forma algortmica, como se pode ver sob o rtulo de

    algoritmo 1. Admite-se, na listagem, que H uma matriz nn cujo elemento Hi j d o valor dehi j e que f a forma para a iterao, dada pela equao 2.32.

    Como mencionado, o algoritmo pode ser utilizado tanto por sistemas centralizados quanto

    distribudos; podemos considerar que as amostras foram obtidas por uma autoridade central,

    ou por um agente qualquer. Caso venha a ser utilizado de forma distribuda, torna-se prova-

    velmente necessrio o uso de informaes de terceiros; admitimos tambm esta possibilidade

    na formulao do algoritmo, de forma que nesta situao pode vir a representar rudos na

    transmisso de avaliaes.

    Um sistema de reputao que se utilize deste algoritmo pode ser classificado de acordo

    com as denominaes sugeridas na seo 2.1; o mesmo seria de visibilidade global, levando

    em conta que agentes so tendenciosos e podem trapacear, e processando informaes binrias.

    Alm disso, podemos considerar o mtodo um modelo de fluxo.

    importante observar que, ao longo da derivao da tcnica de propagao de crenas,

    assume-se que a matriz J simtrica, isto , que Ji j = J ji. No h razo a priori para que isto

    ocorra nas amostras de opinies obtidas; podemos no entanto, dada uma amostra {Ji j}, tomarJi j =

    Ji j+J ji2 , de modo a obter uma matriz J simtrica. Isto equivale em nosso caso a ignorar

  • 31

    opinies dissonantes, o que pode levar a maus resultados caso estas sejam muitas; sabido

    todavia que so poucas em vrios dos casos de interesse, como por exemplo em sistemas de

    e-commerce (8).

    2.4.1 Anlise emprica

    Analisemos o mtodo proposto, primeiramente, de maneira emprica: atravs de simula-

    es, de forma anloga feita com o mtodo mais simples delineado anteriormente.

    Novamente, geramos um grande nmero de cenrios ( 5000), instanciando para cada umdeles um novo grafo de interaes e diferentes amostras de reputaes; as avaliaes eram em

    seguida geradas de acordo com o modelo proposto. Simulou-se a execuo do algoritmo nos

    diferentes cenrios, possibilitando que calculssemos mdias sobre as quantidades de interesse.

    0

    0.1

    0.2

    0.3

    0.4

    0.5

    0.5 0.6 0.7 0.8 0.9 1

    erro

    md

    io

    P (i = 1)

    P0 (ri = 1) = 0.7

    mtodo anteriormtodo proposto

    Figura 2.9: Erro mdio obtido para estimativas usando o mtodo mais simples delineado ante-riormente (via simulao e clculos analticos), e o mtodo proposto (via simulao, apenas),para c = 3 e q = 0.7; o segundo alcana erros menores.

    Para uma primeira anlise, tomemos como no caso anterior n = 100 agentes dispostos sob

    uma rede aleatria regular com c = 3. Como dito, o mtodo de propagao de crenas fornece

    marginais exatas no caso em que o grafo de fatores em questo uma rvore7; as aproximaes

    para as marginais so tambm, no entanto, bastante boas para grafos de fatores com ciclos de

    longo comprimento mdio, tal como grafos aleatrios regulares.

    7Por s haverem ns-funo de grau 1 e 2 no grafo de fatores, pode-se pensar no esquema de transmisso demensagens como atuando no grafo de interaes; a topologia deste e do grafo de fatores sero portanto a mesma.

  • 32

    Pode-se ver na figura 2.9 os resultados desta simulao, comparados queles obtidos com o

    mtodo mencionado anteriormente, para valores diversos de p P(i j = 1) e q P 0 (ri = 1) =0.7. O erro mdio obtido pelo novo mtodo , de um modo geral, menor; se mantm sempre

    abaixo de 30%, e para p = 1 basicamente nulo.

    0.5 0.55 0.6 0.65 0.7 0.75 0.8 0.85 0.9 0.95 1

    P (i = 1)

    0.5

    0.55

    0.6

    0.65

    0.7

    0.75

    0.8

    0.85

    0.9

    0.95

    1

    P0 (

    r i =

    1)

    0

    0.1

    0.2

    0.3

    0.4

    0.5

    Figura 2.10: Erro mdio = 1n |ri 6= ri| no clculo de estimativas pelo mtodo proposto, obtidovia simulao para vrios valores de p P(i = 1) e q P 0(ri = 1). As mdias so calcula-das a partir de cenrios simulados diversos, cada qual contendo amostra de reputaes e grafodistintos

    Estudou-se o comportamento do erro mdio, nesta situao, para valores diversos de p e q,

    tal como visualizado na fig. 2.10. Com a finalidade de analisar o algoritmo, podemos avaliar

    ainda outras quantidades, como a frao de vezes em que o esquema converge ou o nmero

    mdio de iteraes necessrio para que isto ocorra (ver figura 2.11).

    O erro , como seria de se esperar, baixo para valores de p e q prximos de 1 situao em

    que a maioria das entidades confivel e as avaliaes emitidas so fidedignas aumentando

    a medida que os parmetros se aproximam de 0.5. J o estudo da convergncia do algoritmo

    mostra que h uma regio de parmetros em que esta se d de maneira lenta, por vezes no

    ocorrendo.

    interessante ainda que analisemos a sensibilidade s condies iniciais por parte do algo-

    ritmo; seriam, para diferentes distribuies P (0)(h), alcanados diferentes resultados? Utilizou-

    se, para este teste8, h(0) 1N(Beta(a,b) 12

    )com b = {1,2, . . . ,7} e a = 2b, de modo a manter

    a distribuio inclinada para a direita. Em cada cenrio gerado, o esquema foi executado para os

    diferentes valores de b, gerando diferentes estimativas {s(b)i }; calculava-se ento o overlap entreas estimativas, dado por ({s(b)i }) =

    bmaxm,n=1

    ni=1 s

    (m)i s

    (n)i . Na figura 2.12, pode-se observar a

    8A famlia de distribuies beta dada por Beta(a,b)= xa1(1 x)b1.

  • 33

    0.5 0.55 0.6 0.65 0.7 0.75 0.8 0.85 0.9 0.95 1

    P (i = 1)

    0.5

    0.55

    0.6

    0.65

    0.7

    0.75

    0.8

    0.85

    0.9

    0.95

    1

    P0 (

    r i =

    1)

    0

    0.1

    0.2

    0.3

    0.4

    0.5

    0.6

    0.7

    0.8

    0.9

    1

    (a) probabilidade de que haja convergncia

    0.5 0.55 0.6 0.65 0.7 0.75 0.8 0.85 0.9 0.95 1

    P (i = 1)

    0.5

    0.55

    0.6

    0.65

    0.7

    0.75

    0.8

    0.85

    0.9

    0.95

    1

    P0 (

    r i =

    1)

    0

    50

    100

    150

    200

    250

    (b) taxa mdia de convergncia

    Figura 2.11: Anlise de outras quantidades na execuo do algoritmo, em funo de p e q;identifica-se uma regio parmetros em que o desempenho baixo. O clculo das grandezas feito de maneira emprica, aproximando-as respectivamente (a) pela frao de cenrios em queh convergncia e (b) pelo nmero mdio de iteraes necessrio para que a mesma ocorra.

    frao de cenrios para os quais ({s(b)i }) = 1, isto , em que se obteve as mesmas estimativaspara todos os valores de b.

    0.5 0.55 0.6 0.65 0.7 0.75 0.8 0.85 0.9 0.95 1

    P (i = 1)

    0.5

    0.55

    0.6

    0.65

    0.7

    0.75

    0.8

    0.85

    0.9

    0.95

    1

    P0 (

    r i =

    1)

    0

    0.2

    0.4

    0.6

    0.8

    1

    Figura 2.12: Frao de cenrios em que obteve-se resultados similares dadas diferentes condi-es iniciais (({s(b)i }) = 1); aqui tambm h uma regio de parmetros para a qual os resulta-dos da execuo so ruins, apresentando alta sensibilidade s condies iniciais.

  • 34

    Percebe-se assim que existe uma regio de parmetros na qual o desempenho do algoritmo

    baixo h dificuldades na convergncia e alta sensibilidade s condies iniciais. Parece

    portanto interessante que investiguemos o porqu disto ocorrer nesta regio especfica, e no

    em uma outra qualquer; a anlise do captulo 3 permitir que discorramos sobre o assunto.

    Vale notar ainda que at agora em nossa anlise assumimos fornecidos ao algoritmo os

    valores reais dos parmetros p e q de acordo com os quais as avaliaes so geradas. Estas

    no so, no entanto, as condies sob as quais a execuo se dar tipicamente; de um ponto

    de vista mais geral, so quatro os parmetros presentes: {p,q}, especificados pela instncia doproblema; e {p, q}, estimados e fornecidos ao algoritmo.

    Exemplos de como a anlise pode ser estendida ao caso mais geral so dados pelas figuras

    2.13 e 2.14: na primeira, fixamos q = 0.7 e analisamos erro e tempo de convergncia mdios

    para diferentes valores de p e p; em seguida, fixam-se q = 0.7 e p = 0.7, e estudamos o com-

    portamento das mesmas quantidades em funo de p e q.

    0.5 0.55 0.6 0.65 0.7 0.75 0.8 0.85 0.9 0.95 1

    valor real de p

    0.5

    0.55

    0.6

    0.65

    0.7

    0.75

    0.8

    0.85

    0.9

    0.95

    1

    val

    or

    esti

    mad

    o d

    e p

    0

    0.05

    0.1

    0.15

    0.2

    0.25

    0.3

    0.35

    0.4

    0.45

    0.5

    (a) erro mdio

    0.5 0.55 0.6 0.65 0.7 0.75 0.8 0.85 0.9 0.95 1

    valor real de p

    0.5

    0.55

    0.6

    0.65

    0.7

    0.75

    0.8

    0.85

    0.9

    0.95

    1

    val

    or

    esti

    mad

    o d

    e p

    0

    20

    40

    60

    80

    100

    120

    140

    160

    180

    (b) taxa mdia de convergncia

    Figura 2.13: Anlise para parmetros estimados {p, q} diferentes dos reais, {p,q}; fixou-seaqui q = q = 0.7, e estudou-se as quantidades em funo de p e p. As quantidades em questo o erro mdio e a taxa mdia de convergncia (o nmero mdio de iteraes necessrio paraque a convergncia ocorra) servem como medidores para o desempenho do algoritmo sob asdiferentes condies. Para cada valor de p, o erro mantm-se mnimo em p = p; o estudo dataxa mdia de convergncia indica regio de baixo desempenho no canto superior esquerdo dogrfico.

  • 35

    0.5 0.55 0.6 0.65 0.7 0.75 0.8 0.85 0.9 0.95 1

    valor estimado de p

    0.5

    0.55

    0.6

    0.65

    0.7

    0.75

    0.8

    0.85

    0.9

    0.95

    1

    val

    or

    esti

    mad

    o d

    e q

    0.28

    0.3

    0.32

    0.34

    0.36

    0.38

    0.4

    0.42

    0.44

    0.46

    0.48

    (a) erro mdio

    0.5 0.55 0.6 0.65 0.7 0.75 0.8 0.85 0.9 0.95 1

    valor estimado de p

    0.5

    0.55

    0.6

    0.65

    0.7

    0.75

    0.8

    0.85

    0.9

    0.95

    1

    val

    or

    esti

    mad

    o d

    e q

    0

    50

    100

    150

    200

    250

    (b) taxa mdia de convergncia

    Figura 2.14: Fixando os parmetros reais p = q = 0.7, pode-se estudar como as mesmas quanti-dades variam em funo dos parmetros estimados p e q. Como esperado, erros baixos ocorrempara valores de p p e q q; pode-se, a partir da anlise da taxa mdia de convergncia,identificar uma regio de baixo desempenho no canto direito do grfico.

    Aps modelar o problema de estimar reputaes como um de inferncia, formulamos neste

    captulo um mtodo para a obteno de estimativas e analisamos o mesmo de maneira emp-

    rica, por meio de simulaes executou-se o algoritmo para um grande nmero de cenrios,

    estudando seu desempenho tpico por meio de indicadores como o erro e a taxa de convergncia.

    Esta anlise, enquanto til, apresenta alguns problemas: bastante custosa, e aumenta

    em pouco nossa compreenso do problema no procura explicar, por exemplo, porque o

    desempenho maior ou menor para uma dada regio de parmetros.

    Tcnicas de mecnica estatstica permitem que analisemos o problema de forma analtica

    e portanto, menos custosa e que investiguemos mais a fundo sua estrutura. Este o objeto

    de estudo de nosso prximo captulo.

  • 36

    3 Anlise Terica

    You dont understand anything until you learn it more than one way

    Marvin Minsky

    Consideremos um sistema fsico a temperatura fixa 1, que assume diferentes configu-

    raes microscpicas x = (x1,x2, . . . ,xN) de respectivas energias E(x). sabido da mecnica

    estatstica (26) que as configuraes de equilbrio deste sistema distribuem-se de acordo com

    P(x) = 1Z exp[E(x)], onde Z = x exp(E(x)] dita sua funo de partio. O clculo datermodinmica do sistema pode em seguida ser efetuado a partir de sua energia livre, que dada

    por FN =1 limN

    1N logZ.

    Em modelos para sistemas desordenados em equilbrio, a energia depender por vezes no

    s da configurao das variveis microscpicas x, mas tambm de uma certa aleatoriedade in-

    troduzida no sistema - seja na posio das partculas ou, mais comumente, nas direes e in-

    tensidades dos campos e ligaes. Temos assim E = E(x,{i}), onde {i} um conjunto devariveis aleatrias que assumem cada qual valores num determinado intervalo de acordo com

    uma distribuio de probabilidades P(i).

    Queremos, em modelos como estes, calcular mdias das grandezas termodinmicas com

    relao a {}. A energia livre, por exemplo, fica

    F{}

    =1

    limN

    logZ

    {}

    . (3.1)

    onde{}

    denota mdia sobre {}, isto ,{}

    =()i P(i)di.

    Neste contexto, distingue-se usualmente entre dois tipos de modelo para desordem (27):

    temperada (quenched) e recozida (annealed). No primeiro, admite-se que a desordem est-

    tica servindo como aproximao para situaes em que as variveis microscpicas evoluem

    muito mais rapidamente que a desordem; modelos de desordem recozida, por outro lado, assu-

    mem escala de evoluo temporal semelhante para ambas. Trabalharemos aqui apenas com a

    desordem temperada.

    A abordagem usual para modelos de desordem temperada se d a partir do truque de rpli-

  • 37

    cas (28), que como se denomina a identidade logZ = limn0 Zn1n . Pode-se prosseguir com o

    clculo da energia livre, obtendo

    F{}

    =1

    limN

    limn0

    1

    Zn{}

    n. (3.2)

    Dependeramos agora to somente do clculo de

    Zn{}

    , que feito a partir do produto

    de n rplicas do sistema da o nome do mtodo. Este clculo em geral deveras complicado,

    havendo na maior parte das vezes a necessidade de se fazer a hiptese de que as rplicas so

    simtricas.

    O mtodo de rplicas sem dvida o de maior sucesso neste tipo de estudos. Desde sua

    introduo por Sam Edwards e Phillip Anderson em 1975 (29), foi aplicado incansavelmente

    no estudo de diversos modelos que, por sua vez, mostraram-se capazes de descrever uma

    srie de fenmenos dentro e fora do mbito da fsica.

    Uma alternativa, no entanto, surge em torno de 1986. Neste ano, Marc Mzard e Giorgio

    Parisi, seguindo propostas semelhantes por outros autores (30, 31), formalizam tcnica seme-

    lhante aproximao de Bethe-Peierls (32, 33) a ser aplicada no estudo de sistemas desordena-

    dos, dando origem ao mtodo de cavidade (34). Trata-se, como a aproximao, de uma teoria

    de campo mdio: admite-se que a rede em que se do as interaes uma rvore.

    Mais recentemente, por volta do ano 2000, mostrou-se que h grande semelhana entre o

    mtodo de cavidade e o que denominamos neste trabalho de tcnica de propagao de crenas

    (35, 36, 7). Esta percepo possibilitou uma formulao moderna do mtodo, que tem sido

    aplicada com sucesso nos ltimos anos na anlise de problemas de inferncia e otimizao

    (37, 38, 39)

    Nas prximas sees, sero mencionadas as principais caractersticas do mtodo de cavi-

    dade, e em seguida vamos utiliz-lo para a anlise de nosso problema.

    3.1 Mtodo de cavidade

    Na seo 2.3, foi discutido um esquema de transmisso de mensagens que possibilita o

    clculo de marginais dadas distribuies de probabilidade do tipo P(s) = 1Z exp [H(s)], tpi-cas da mecnica estatstica fornecem a distribuio dos estados de equilbrio a temperatura

    fixa 1. Para uma hamiltoniana da forma H(s) = (i, j)E Ji jsis j i Bisi, a regra para atransmisso fica

  • 38

    h(t+1)i j = Bi +1 k i/ j

    tanh1[tanh(Jik) tanh(h

    (t)ki)

    ]. (3.3)

    Iterando esta regra at que uma possvel convergncia seja alcanada, obtido um conjunto

    de mensagens de ponto fixo, {hi j}. Aproximaes para as marginais so ento calculadasa partir de i(si) = exp( hisi), onde {hi} so fornecidos por expresso semelhante anterior,porm com soma efetuada sobre todos os vizinhos (eq. 2.29).

    O clculo de grandezas termodinmicas pode ento ser feito, dado que existe relao entre

    estas e {hi j} e {hi}, como veremos a seguir. Neste contexto, denominaremos {hi j} decampos de cavidade, e {hi} de campos efetivos.

    3.1.1 Clculo de grandezas termodinmicas

    A partir do clculo da energia livre do sistema, possvel obter uma descrio termodi-

    nmica completa do mesmo. Outras grandezas, no entanto, como energia interna e entropia,

    possuem uma conexo mais direta com os campos de cavidade; determinaremos expresses

    para estas inicialmente, e a energia livre pode ser facilmente calculada em seguida a partir de

    F =U 1 S.

    Energia interna e entropia

    As funes de compatibilidade, em nosso caso, so da forma a(xa) = exp[Ea(xa)],pelo que Ea(xa) = 1 loga(xa), e a energia total E =

    1

    Ma=1 loga(xa). Mas ora, a

    energia interna nada mais que o valor mdio da energia total, e assim

    U = 1 x

    P(x)M

    a=1

    loga(xa). (3.4)

    Nos utilizando em seguida da equao 2.18, temos que P(x)=a 1Za a(xa)ia ia(x j),

    e U pode ser reescrita como

    U [ ] = 1 x a

    1Za

    a(xa) ia

    ia(x j)a

    loga(xa) (3.5)

    = 1 a

    1Za

    xa

    {a(xa) loga(xa)

    iaia(x j)

    }.

  • 39

    Substituindo as funes de compatibilidade e a partir da eq. 2.25, podemos reescrever a

    expresso para nosso caso especfico em termos de {hi j} e {hi} como

    U [h] =i, j

    i jtanh(Ji j) tanh(hi j) tanh(hji)

    1+ tanh(Ji j) tanh(hi j) tanh(hji)

    iBi tanh( hi). (3.6)

    A entropia, por sua vez, dada por S =x P(x) logP(x). Dado que o grafo de fatores comque estamos trabalhando uma rvore, pode-se escrever que P(x)= a a(xa)i i(xi)1| i|

    (para uma demonstrao, ver por exemplo (3)), e a entropia fica

    S[] =a

    xa

    a(xa) log a(xa)i(1| i|)

    xii(xi) log i(xi). (3.7)

    Energia livre

    Re-escrevendo ia ia em U (eq. 3.5) como bR bi onde R o conjunto de

    ns-funo diferentes de a que se conectam a i temos pela eq. 2.18 que

    U [] = 1 a xa

    a(xa) loga(xa). (3.8)

    A partir desta expresso e utilizando-nos da relao F [] = U [] 1 S[], temos para aenergia livre

    F [] = a

    xa

    log[

    a(xa)a(xa)

    ]+

    i(1| i|)

    xii(xi) log i(xi), (3.9)

    ou, em termos de {ia, a j}, novamente atravs de 2.18

    F [ ] = a

    log

    [xa

    a(xa) ia

    ia(xi)

    ]+

    ilog

    [xi

    b i

    bi(xi)

    ](3.10)

    ia

    log

    [xi

    ia(xi)ai(xi)

    ].

    Para nosso caso, substituindo as funes de compatibilidade e pondo a expresso em termos

    dos campos de cavidade, ficamos com

  • 40

    F [h] = i j

    logcoshJi ji j

    log[1+ tanh(Ji j) tanh(hi j) tanh(h

    ji)

    ](3.11)

    +i

    log

    {eBi

    j i[1+ tanh(Ji j) tanh(hji)]+ e

    Bi j i

    [1 tanh(Ji j) tanh(hi j)]

    }.

    Magnetizao e outros parmetros de ordem

    Como j discutido na seo 2.3, a magnetizao local vem de mi = tanh( hi); uma maneira

    de calcular a magnetizao mdia a partir da mdia das magnetizaes locais, isto

    m[h] =1n i

    tanh( hi). (3.12)

    Podemos tambm calcul-la supondo a presena de um campo externo B0, fazendo H(s)H(s)B0 i si; e posteriormente tomando m = FB0

    B0=0

    , o que fornece o mesmo resultado da

    eq. 3.12.

    Um caso de interesse aquele em que Bi = Bri, com ri = 1; estudaremos este caso emdetalhes mais a frente. Neste contexto, outra grandeza relevante a magnetizao alternada

    dada por m = FB =1n i risi, ou

    m[h] =1n i

    ri tanh( hi). (3.13)

    til ainda introduzirmos um parmetro de ordem capaz de caracterizar a fase vtrea.

    Adota-se usualmente a susceptibilidade de vidro de spin

    vs =1n i, j

    (sis jsis j

    )2, (3.14)

    cuja divergncia indica o aparecimento de tal fase. Classicamente, relaciona-se esta quantidade

    ao espectro da matriz hessiana, tal como proposto por Almeida e Thouless (40); no formalismo

    utilizado, no entanto, mais natural relacion-la aos campos de cavidade.

    Como estamos trabalhando sobre uma rvore, podemos escrever que vs =r=1C(r)(s0srs0sr)2,

    em que C(r) d o nmero de ns a uma distncia r de s0; para que vs no divirja devemos por-

    tanto ter limR (s0sRs0sR)2 = 0.

    Do teorema de flutuao-dissipao, vem que s0srs0sr s0hr = s0h0

    h0hr , e deve-

  • 41

    se analisar assim

    = limR

    h0hR

    , (3.15)

    onde denotamos por h0 e hR mensagens respectivamente enviadas e recebidas pelo caminho

    que leva de 0 a R na rvore. Dependendo da maneira como a anlise realizada, h diferentes

    maneiras de efetuar o clculo desta quantidade (41); exporemos em seguida como se dar a

    anlise em nosso caso.

    3.1.2 Equao de cavidade

    possvel desta forma, a partir da iterao numrica das eqs. 3.3 sobre grafos da topologia

    desejada, simular sistemas fsicos de tamanho finito e efetuar o clculo de sua termodinmica.

    de nosso interesse, no entanto, realizar um estudo analtico mais aprofundado destas equaes,

    sobretudo no limite n .

    Consideremos agora a varivel aleatria h(t), cuja evoluo dada por

    h(t+1) =

    B+1

    c1

    i=1

    tanh1[tanh(Ji) tanh(h

    (t)i )]

    B,J, (3.16)

    em que h(t)i so cpias i.i.d.1 de h(t), distribudas de acordo com P(h(t)), e B e Ji so tambm

    aleatrias, distribudas de acordo com dadas P(B) e P(J); continuamos pressupondo que os ns

    possuem cada um nmero fixo de vizinhos c. Afirmaremos sem provar2 que, no limite n ,uma mensagem h(t)i j amostrada de maneira uniforme converge em distribuio para h

    (t). esta

    equao, d-se o nome de equao de evoluo de densidade.

    Faremos algumas hipteses; supondo a aplicao do esquema de propagao de crenas

    um grafo de fatores aleatrio arbitrariamente grande descrevendo P(s), admitimos que: (a) h

    um conjunto de mensagens de ponto fixo, que (b) fornece boas aproximaes para as marginais

    da distribuio conjunta, e (c) cujas mensagens se distribuem de acordo com o ponto fixo de

    3.16.

    A este conjunto de assunes, d-se o nome de hiptese de rplica simtrica, em analogia

    quela feita na utilizao do mtodo de rplicas; admite-se que, na presena de fases vtreas,

    a quebra de ergodicidade ocorrer de forma a fracionar o espao de fases em regies no-

    ergdicas que relacionam-se entre si por meio de simetrias (42). Caso estas regies no ocupem

    1Isto , independentes e identicamente distribudas.2Para uma prova, ver (3).

  • 42

    todo o volume do espao de fases, dito que h quebra na simetria de rplicas; faz-se necessrio

    o uso de tcnicas mais avanadas para o tratamento de tais situaes (43, 44).

    Foquemo-nos ento na equao acima em seu ponto fixo, isto

    h =

    B+1

    c1

    i=1

    tanh1 [tanh(Ji) tanh(hi)]

    B,J, (3.17)

    denominada equao de cavidade. Esta mesma equao faz-se presente, por exemplo, nos

    trabalhos pioneiros de Mezard e Parisi; sob este framework, no entanto, podemos compreender

    que se trata em ltima instncia de um estudo probabilstico sobre as marginais mais pre-

    cisamente, efetuado em rvores. A utilizao deste mesmo esquema em grafos de topologia

    qualquer um tipo de aproximao de campo mdio; de fato, como mostrado por Yedidia (35),

    a minimizao da energia livre3F [] em uma rvore (eq. 3.9), dadas as marginais (xi) de uma

    distribuio P(x) qualquer, equivale obteno das solues da eq. 3.17.

    Nosso objetivo determinar P(h). Denotando u(hi,Ji) 1 tanh1 [tanh(Ji) tanh(hi)],

    temos

    P(h) =

    [h

    (B+

    c1

    i=1

    u(Ji,hi)

    )]c1

    i=1

    P(hi)dhi

    B,J. (3.18)

    Em casos mais simples, este estudo pode ser feito analiticamente; mais geralmente, no

    entanto, se faz necessria a obteno numrica de uma estimativa para P(h), atravs de um

    algoritmo de dinmica de populaes.

    Parte-se, no algoritmo, de um conjunto grande de variveis (uma populao) que repre-

    sentam cpias i.i.d. de h. A cada perodo de tempo, cada uma destas variveis atualizada de

    acordo com a eq. 3.17, sendo os hi amostrados da populao de maneira uniforme, e B e J sorte-

    ados de acordo com as respectivas distribuies. Espera-se que, aps um nmero de perodos, a

    populao esteja distribuda de maneira similar a distribuio real P(h), e podemos desta forma

    obter uma estimativa para a mesma. Vemos abaixo uma descrio algortmica deste processo

    (algoritmo 2).

    A inicializao de {hi} se d a partir da amostragem de valores de alguma dada distribuio.So utilizadas, tipicamente, duas condies iniciais distintas (45): uma livre, com hi 0i, eoutra ferromagntica, com hii. Havendo transies de fase de primeira ordem, a primeiracondio inicial costuma levar a solues metaestveis. Dadas solues para as duas condies

    3Alternativamente, poder-se-ia minimizar a divergncia de Kullback-Leibler KL(P |Q) entre uma distribuioP(x) qualquer e Q(x)= a a(xa)i i(xi)1| i| em uma rvore.

  • 43

    Algoritmo 2 Dinmica de populaes (tamanho da populao npop, nmero de coordenao c,passos no tempo tmax)

    inicializa {hi}for t = 1 tmax do

    for i = 1 npop doamostra B; {J j}, j = 1,c1sorteia conjunto de variveis {h j}, j = 1,c1hi B+c1j=1 u(J j,h j)

    end forend forcalcula distribuio P(h)return P(h)

    iniciais, identifica-se a estvel como aquela de menor energia livre.

    Vale notar que os algoritmos 1 e 2, apesar de algo semelhantes, so responsveis por tarefas

    bastante distintas. Enquanto o primeiro supe situaes reais em que uma amostra de avaliaes

    foi obtida, o foco aqui o estudo numrico das solues de uma equao estocstica.

    Determinada uma estimativa para P(h) (e, consequentemente, para P(h)), podemos calcu-

    lar agora valores mdios para as grandezas termodinmicas a partir das expresses deduzidas

    acima. A magnetizao fica

    m =

    tanh( h)

    B,J,h, (3.19)

    e a (densidade de) energia livre, por sua vez

    f =c2

    logcosh +c2

    log [1+ tanh(J) tanh(h1) tanh(h2)]

    B,J,h

    (3.20)

    +

    log

    {eB

    c1

    i=1

    [1+ tanh(Ji) tanh(hi)]+ eBc1

    i=1

    [1 tanh(Ji) tanh(hi])

    }B,J,h

    .

    Para o clculo computacional das mdias, para por exemplo uma grandeza (h1,h2, . . . ,hk)

    que depende de k cpias de h, tomamos

    h=

    1l

    l

    i=1

    (h(i)1 ,h(i)2 , . . . ,h

    (i)k ), (3.21)

    com h(i) amostrados uniformemente da populao, e l n.

  • 44

    Expanso para baixas temperaturas

    Podemos ainda determinar uma forma para a equao de cavidade no limite , porvezes de interesse em situaes fsicas. Para uma varivel x qualquer, podemos escrever

    tanh(x) = sgn(x)1 exp(2 |x|)1+ exp(2 |x|)

    sgn(x)(1 e2 |x|). (3.22)

    Utilizando-nos desta aproximao na eq. 3.17, ficamos com

    h = B+1

    c1

    i=1

    sgn(Jihi) tanh1[12(e2 |hi|+ e2 |Ji|)

    ]. (3.23)

    Levando em conta que |x| tanh1(12e2 |x|), temos

    h = B+c1

    i=1

    sgn(Jihi) min(|Ji|, |hi|). (3.24)

    Podemos aplicar a aproximao, de forma anloga, no clculo das grandezas termodinmi-

    cas; a magnetizao, por exemplo, fica m

    sgn(h)

    B,J,h.

    3.1.3 Exemplo: modelo S-K

    Em 1975, Sherrington e Kirkpatrick propuseram (46) uma generalizao do modelo de

    Ising, dada por um hamiltoniano H = 1N (i, j) Ji jsis j com {Ji j} amostrados de certa distri-buio (geralmente gaussiana ou bimodal) e soma efetuada sobre todos os pares (i, j). Cada

    spin interage assim com todos os demais mas fracamente, devido a presena do termo 1N .

    Denomina-se geralmente este modelo de S-K, em aluso ao nome de seus autores; no artigo

    original, procede-se com o clculo da termodinmica a partir do mtodo de rplicas.

    Tomemos, nas equaes que derivamos, Bi = 0 i e Ji j =1, com P(Ji j = 1) = 12 , continu-ando a trabalhar com spins dispostos sobre uma rede regular aleatria de grau c = 3. Passa-se a

    descrever assim um modelo bastante similar ao S-K; a equao de cavidade fica

    h = 1

    c1

    i=1

    tanh1 [tanh(Ji) tanh(hi)]

    J,h. (3.25)

    Obtm-se em seguida estimativas numricas para a distribuio P(h), atravs do algoritmo

    de dinmica de populaes; na figura 3.1, pode-se ver as estimativas obtidas para alguns va-

  • 45

    0

    0.005

    0.01

    0.015

    0.02

    -2 -1 0 1 2

    P (

    h)

    T = 0.1

    0

    0.005

    0.01

    0.015

    0.02

    -2 -1 0 1 2

    T = 0.5

    0

    0.005

    0.01

    0.015

    0.02

    -2 -1 0 1 2

    P (

    h)

    h

    T = 0.9

    0

    0.005

    0.01

    0.015

    0.02

    -2 -1 0 1 2

    h

    T = 1.1

    Figura 3.1: Estimativas obtidas para a distribuio P(h) atravs do algoritmo de dinmica depopulaes, para o caso em que Bi = 0 i e Ji j =1, P(Ji j = 1) = 12 .

    lores de T = 1. Calculamos em seguida mdias das grandezas termodinmicas a partir, por

    exemplo, das eqs. 3.19 e 3.20.

    A magnetizao a campo nulo permite que identifiquemos se a fase termodinmica em que

    o sistema se encontra para- (m = 0) ou ferromagneticamente (m 6= 0) ordenada. Distribuiessimtricas em torno de zero, como as que obtivemos, implicam em m 0.

    Pode-se observar na fig. 3.1 que a distribuio parece concentrar-se num pico em torno

    de 0 a medida que T aumenta. De fato, a partir de uma determinada temperatura, obtemos na

    dinmica de populaes P(h) = (h); denomina-se tal soluo de paramagntica, por impli-

    car em mi = 0 i. Analogamente, distribuies do tipo P(h) = (h h0) para algum dado h0denominam-se ferromagnticas aparecem por exemplo no estudo do modelo de Ising. Pres-

    supondo que a distribuio assume alguma destas formas, obtemos aproximaes analticas por

    vezes consistentes com alguma regio de parmetros. Na figura 3.2 calculamos a mdia da ener-

    gia livre a partir das estimativas obtidas para P(h) pelo algoritmo de dinmica de populaes, e

    tambm a partir de P(h) = (h); a altas temperaturas, as curvas coincidem.

    Na anlise de Sherrington e Kirkpatrick, foi identificada ainda uma fase de propriedades

    incomuns; estudos iniciando-se poca tratavam-a pelo nome de fase de vidro de spin. Tal

  • 46

    1.7

    1.6

    1.5

    1.4

    1.3

    1.2

    0.4 0.8 1.2 1.6 2

    f

    T

    soluo numricasoluo paramagntica

    0

    0.3

    0.6

    0.9

    1.2

    1.5

    0.4 0.8 1.2 1.6 2

    T

    Figura 3.2: Grandezas termodinmicas no modelo S-K em funo da temperatura. esquerda:densidade de energia livre, obtida atravs da dinmica de populaes (linha cheia) e de hiptesepara P(h) = (h) (linha pontilhada) ambas coincidem no limite de altas temperaturas; direita: parmetro ; 6= 0 indica divergncia de vs, e por conseguinte, a existncia de umafase vtrea

    fase, tpica de sistemas desordenados, apresenta caractersticas como (47) estados fundamentais

    frustrados incapazes de minimizar globalmente termos locais de interao; superfcies de

    energia livre rugosas4; longos tempos de descorrelao; quebra de ergodicidade, etc.

    Como mencionado acima, no formalismo de rplicas o aparecimento da fase indicado

    pela divergncia de 3.14, posteriormente relacionada ao espectro da matriz hessiana. No uso

    do mtodo de cavidade, no entanto, quereremos analisar o parmetro , dado pela eq. 3.15.

    H vrias formas de faz-lo (41); optamos aqui pelo estudo de desvios entre duas rplicas da

    populao. Calculamos a derivada

    h0hR h0(hR + )h0(hR)

    , (3.26)

    atravs de um truque numrico: so introduzidas duas rplicas da populao, atribuindo-se a

    4Entende-se aqui as superfcies como funo de um conjunto de valores mdios que parametrizam P(s) (verpor exemplo (48, 49)). A energia livre mantm-se convexa em funo dos parmetros extensivos.

  • 47

    uma valores iniciais h(0)i , e a outra valores h(0)i = h

    (0)i + , 104. Aps um nmero grande

    de passos no tempo, aproxima-se por

    = limR

    (h0hR

    )2

    i

    [h()i h

    ()i

    ]2. (3.27)

    Os passos de tempo na dinmica de populao simulam assim a troca de mensagens entre

    ns cada vez mais distantes, devido estrutura de rvore sobre a qual trabalhamos; a partir

    da eq. 3.27, possvel obter uma estimativa de como mensagens similares divergem em sua

    propagao fornecendo uma aproximao para h0hR .

    Tomaremos, portanto, como parmetros de ordem m e ; pode-se da diferenciar entre as

    seguintes fases termodinmicas

    fase paramagntica, com m = 0 e = 0

    fase ferromagntica, com m 6= 0 e = 0

    fase de vidro de spin, com m = 0 e 6= 0

    uma fase de vidro de spin ferromagneticamente ordenada, que denominaremos mista,com m 6= 0 e 6= 0

    O calculo da magnetizao mdia nos d neste caso m = 0, como argumentado acima;

    j pela figura 3.2, podemos ver que se anula a partir de uma certa temperatura Tc 1.13.Identificamos portanto duas fases distintas: uma fase vtrea para T < Tc, e uma paramagntica

    para T > Tc.

    3.2 Vidro de spin de campo aleatrio

    Utilizando o mtodo descrito na seo anterior, estudemos a hamiltoniana

    H(s) = (i, j)E

    Ji jsis jBi

    risi, (3.28)

    com as variveis de spin si = 1 dispostas sobre um grafo aleatrio regular de grau c, e asvariveis temperadas Ji j e ri distribudas de acordo com Bimod1(p) e Bimod1(q), respecti-

    vamente.

  • 48

    m

    0.5 0.6 0.7 0.8 0.9 1

    p

    0

    0.2

    0.4

    0.6

    0.8

    1

    B

    0

    0.1

    0.2

    0.3

    0.4

    0.5

    0.6

    0.7

    0.8

    0.9

    1

    0.5 0.6 0.7 0.8 0.9 1

    p

    0

    0.2

    0.4

    0.6

    0.8

    1

    0

    0.2

    0.4

    0.6

    0.8

    1

    1.2

    1.4

    Figura 3.3: Parmetros de ordem em funo de p e B, para T = 0; m d a magnetizao camponulo, e indica a divergncia da susceptibilidade vtrea vs. A regio com m = 0 coincide emgrande parte com aquela em que = 0, dando origem uma fase vtrea; h no entanto umapequena regio em que no coincidem, de forma que se faz tambm presente uma fase mista.

    Este estudo abrir caminho para a anlise da distribuio a posteriori determinada na seo

    2.2, P(r|J).

    Iniciemos com a anlise do limite para baixas temperaturas ( ), utilizando a equao3.24. Atravs do algoritmo de dinmica de populaes, efetuamos o clculo de m e para

    valores diversos de p e B (fig. 3.3); traamos em seguida o diagrama de fases da figura 3.4,

    seguindo a denominao sugerida na seo anterior.

    Este procedimento pode ser repetido para o desenho dos demais diagramas. Temos a prin-

    cpio quatro parmetros de controle: , B, p e q; escolhemos dois destes, fixando os demais, e

    os varamos, executando para cada par de valores o algoritmo de dinmica de populaes. Ge-

    ramos assim mapas para os parmetros de ordem m e , como os da figura 3.3; a partir destes

    mapas, determinamos as linhas do diagrama, dadas pelas linhas de contorno para m = 0 e = 0

    (na prtica, utilizam-se as linhas de contorno para m e infinitesimalmente pequenos, a fim de

    evitar problemas numricos).

    Estudemos assim o comportamento dos parmetros de ordem, de maneira anloga, a tempe-

    raturas finitas; na fig. 3.5, vemos diagramas B-T para valores diversos de p. Os diagramas das

    figuras 3.4 e 3.5 foram feitos a fim de que comparssemos nossos resultados aos de (45), que

  • 49

    FVS

    P

    M

    0.5 0.6 0.7 0.8 0.9 1

    p

    0

    0.2

    0.4

    0.6

    0.8

    1

    1.2

    B

    FVS

    P

    M

    0.5 0.6 0.7 0.8 0.9 1

    p

    0

    0.2

    0.4

    0.6

    0.8

    1

    1.2

    B

    FVS

    P

    M

    0.5 0.6 0.7 0.8 0.9 1

    p

    0

    0.2

    0.4

    0.6

    0.8

    1

    1.2

    B

    Figura 3.4: Diagrama de fases p-B para T = 0. Quatro fases termodinmicas distintas fazem-sepresentes: paramagntica (P), com m = 0, = 0; ferromagntica (F), com m 6= 0, = 0; vtrea(VS), com m = 0, 6= 0; e mista (M), com m 6= 0, 6= 0.

    0 0.2 0.4 0.6 0.8 1

    B

    0

    0.2

    0.4

    0.6

    0.8

    1

    1.2

    1.4

    1.6

    T

    P

    VS

    0 0.2 0.4 0.6 0.8 1

    B

    0

    0.2

    0.4

    0.6

    0.8

    1

    1.2

    1.4

    1.6

    T

    (a) p = 0.8536

    P

    VSM

    F

    0 0.2 0.4 0.6 0.8 1

    B

    0

    0.2

    0.4

    0.6

    0.8

    1

    1.2

    1.4

    1.6

    T

    P

    VSM

    F

    0 0.2 0.4 0.6 0.8 1

    B

    0

    0.2

    0.4

    0.6

    0.8

    1

    1.2

    1.4

    1.6

    T

    (b) p = 0.90

    P

    VSM

    F

    0 0.2 0.4 0.6 0.8 1

    B

    0

    0.2

    0.4

    0.6

    0.8

    1

    1.2

    1.4

    1.6

    T

    P

    VSM

    F

    0 0.2 0.4 0.6 0.8 1

    B

    0

    0.2

    0.4

    0.6

    0.8

    1

    1.2

    1.4

    1.6

    T

    (c) p = 0.9167

    P

    VSM

    F

    0 0.2 0.4 0.6 0.8 1

    B

    0

    0.2

    0.4

    0.6

    0.8

    1

    1.2

    1.4

    1.6

    T

    P

    VSM

    F

    0 0.2 0.4 0.6 0.8 1

    B

    0

    0.2

    0.4

    0.6

    0.8

    1

    1.2

    1.4

    1.6

    T

    (d) p = 0.93

    Figura 3.5: Diagramas de fases B-T para q = 12 e valores diversos de p, escolhidos de forma areplicar os diagramas de (45). As irregularidades presentes em T 0.1 se devem problemasnumricos com a aproximao para baixas temperaturas.

  • 50

    realiza anlise similar a esta; uma vez replicados com sucesso, validou-se nossa implementao

    do mtodo.

    As irregularidades presentes nos diagramas devem-se ao uso de pouca preciso no clculo

    dos mapas de m e , e um nmero pequeno de passos no tempo utilizados na execuo da di-

    nmica de populaes. possvel evit-las impondo maiores preciso e nmero de passos, o

    que incorreria no entanto num maior custo computacional. Optando por um custo computaci-

    onal baixo, as linhas dos diagramas apresentam por vezes pequenas falhas, que implicam to

    somente um pequeno desvio em relao ao ponto em que de fato ocorre a transio de fases.

    3.2.1 Linha de Nishimori

    A distribuio a posteriori determinada anteriormente (eq. 2.30) sugere que trabalhemos

    com a hamiltoniana

    H(s) = (i, j)

    Ji jsis jBi

    si. (3.29)

    Rotacionemos esta hamiltoniana fazendo si risi, a fim de que estimativas corretas, si = ri,passem a ser representadas por si = 1. Usando que Ji j = i jrir j, ficamos com

    H(s) = (i, j)

    i jsis jBi

    risi. (3.30)

    Os valores de e B so, princpio, livres; tomando = N = 12 logp

    1p e B=BN =log q1qlog p1p

    ,

    no entanto, passamos a estudar a distribuio de fato, P(s|J); Estes valores dos parmetrosdefinem a linha de Nishimori (50).

    Utilizemos nossa anlise do vidro de spin de campo aleatrio para traar o diagrama de fases

    sobre a linha de Nishimori (3.6), seguindo o procedimento delineado. Ao compar-lo com os

    mapas das figuras 2.11 e 2.12, percebemos que a regio de parmetros correspondente aqui

    fase mista coincide com aquela na qual o algoritmo para inferncia apresenta maus resultados.

    Tal semelhana motiva uma investigao mais profunda sobre a relao entre as fases ter-

    modinmicas deste sistema e os diferentes comportamentos do algoritmo.

  • 51

    M

    F

    0.5 0.6 0.7 0.8 0.9 1

    p

    0.5

    0.6

    0.7

    0.8

    0.9

    1

    q

    Figura 3.6: Diagrama de fases p-q, com e B na linha de Nishimori. A regio de parme-tros relacionada aqui fase mista coincide com aquela em que o algoritmo apresenta baixodesempenho, na anlise emprica

    3.3 Estudo do algoritmo

    No estudo emprico feito na seo 2.4, preocupamo-nos em analisar o erro mdio do algo-

    ritmo, dado por =

    12

    (1+ rrn

    ). Lembrando que para a estimativa fizemos ri = sgn(hi)i e

    que, para o estudo analtico, efetuamos a rotao si risi, notamos que a quantidade rrn podeser analisada neste caso a partir do clculo de

    sgn(h)

    ,r,h

    .

    Esta grandeza pode ser facilmente calculada com o uso da dinmica de populaes; na

    figura 3.7, vemos o valor de = 12

    (1

    sgn(h)

    ,r,h

    )em funo de p e q, para e B na

    linha de Nishimori.

    Tal grfico , como se pode observar, bastante semelhante ao da figura 2.10; a parte de

    diferenas no canto inferior direito (regio prxima a p = 1, q = 0.5), os valores obtidos para

    o erro so praticamente idnticos. Esta diferena parece existir por assumirmos estar aqui no

    limite termodinmico (n ), enquanto nas simulaes trabalhamos com um nmero finitode agentes; espera-se assim que, na anlise emprica, sejam obtidos nesta regio de parmetros

    erros cada vez menores para valores maiores de n (figura 3.8).

    Podemos, de forma anloga, estudar esta quantidade e traar os diagramas de fase para os

    casos em que os parmetros estimados { p, q} so diferentes dos parmetros reais {p,q}. Paraisto, calculamos N e BN na dinmica de populaes a partir de p e q, enquanto amostrando

  • 52

    ../output/nish_old u 1:2:7

    0.5 0.6 0.7 0.8 0.9 1

    p

    0.5

    0.6

    0.7

    0.8

    0.9

    1

    q

    0

    0.05

    0.1

    0.15

    0.2

    0.25

    0.3

    0.35

    0.4

    0.45

    0.5

    Figura 3.7: Erro terico do algoritmo, calculado a partir de = 12

    (1

    sgn(h)

    ,r,h

    ), em

    funo de p P( = 1) e q P 0(ri = 1)

    e r de Bimod1(p) e Bimod1(q), respectivamente.

    Tambm nestes casos, a regio de parmetros em que a fase mista coincide com aquela

    em que o desempenho , de acordo com a anlise anterior, baixo em que a convergncia

    no ocorre ou demora a ocorrer, e h alta sensibilidade s condies iniciais. A anlise te-

    rica do erro mdio, por sua vez, fornece tambm resultados bastante semelhantes aos obtidos

    empiricamente.

    n = 70

    0.96 0.97 0.98

    p

    0.52

    0.56

    0.6

    q

    0

    0.1

    0.2

    0.3

    0.4

    0.5

    n = 150

    0.96 0.97 0.98

    p

    0.52

    0.56

    0.6

    n = 230

    0.96 0.97 0.98

    p

    0.52

    0.56

    0.6

    Figura 3.8: Erro mdio obtido na anlise emprica, na regio prxima a p = 1, q = 0.5, paran = 70, 150 e 230; espera-se que, para n arbitrariamente grande, os