Project funded by the Future and Emerging Technologies arm of the IST Programme Understanding “tag” systems by comparing “tag” models David Hales www.davidhales.com.

Slides:



Advertisements
Similar presentations
Reinforcement Learning
Advertisements

Evolving Cooperation in the N-player Prisoner's Dilemma: A Social Network Model Dept Computer Science and Software Engineering Golriz Rezaei Michael Kirley.
Genetic Algorithms (Evolutionary Computing) Genetic Algorithms are used to try to “evolve” the solution to a problem Generate prototype solutions called.
SP 5: Biologically Inspired Techniques for “Organic IT” Final Year Report Participants UniBO, UPF, Telenor, RAL Lead partner: Bologna (UniBO)
Evolution and Repeated Games D. Fudenberg (Harvard) E. Maskin (IAS, Princeton)
Evolution of Cooperation The importance of being suspicious.
Solving Collective Commons Problems: Future Scenarios for P2P Finance David Hales, University of Szeged, Hungary Diversity in Macro.
Learning in games Vincent Conitzer
Improving Peer-to-Peer Networks “Limited Reputation Sharing in P2P Systems” “Robust Incentive Techniques for P2P Networks”
CITS4403 Computational Modelling Agent Based Models.
Chapter 6 © 2006 Thomson Learning/South-Western Game Theory.
EC – Tutorial / Case study Iterated Prisoner's Dilemma Ata Kaban University of Birmingham.
Tags and Image Scoring for Robust Cooperation By Nathan Griffiths Presented at AAMAS 2008.
A Memetic Framework for Describing and Simulating Spatial Prisoner’s Dilemma with Coalition Formation Sneak Review by Udara Weerakoon.
COMP305. Part II. Genetic Algorithms. Genetic Algorithms.
Evolutionary Games The solution concepts that we have discussed in some detail include strategically dominant solutions equilibrium solutions Pareto optimal.
Evolutionary Games The solution concepts that we have discussed in some detail include strategically dominant solutions equilibrium solutions Pareto optimal.
CPS Learning in games Vincent Conitzer
University of Bologna, Italy How to cheat BitTorrent and why nobody does Simon Patarin and David Hales University of Bologna ECCS 2006,
Project funded by the Future and Emerging Technologies arm of the IST Programme Recent directions in DELIS / Overview of on-going work David Hales
Cooperation through the endogenous evolution of social structure David Hales & Shade Shutters The Open University & Arizona State University
Learning in Multiagent systems
CSS-TW1 Cooperation in Selfish Systems incorporating TagWorld I Welcome! David Hales, University of Bologna.
Project funded by the Future and Emerging Technologies arm of the IST Programme Cooperation with Strangers David Hales Department of.
Linking multi-agent simulation to experiments in economy Re-implementing John Duffy’s model of speculative learning agents.
Example Department of Computer Science University of Bologna Italy ( Decentralised, Evolving, Large-scale Information Systems (DELIS)
Rationality meets the tribe: Some models of cultural group selection David Hales, The Open University Hales, D., (2010) Rationality.
Engineering with Sociological Metaphors: Examples and Prospects University of Bologna This work is partially supported by the European.
SLAC and SLACER: Simple copy & rewire algorithms for trust and cooperation in P2P David Hales, Stefano Arteconi, Ozalp Babaoglu University of Bologna,
Presenter: Chih-Yuan Chou GA-BASED ALGORITHMS FOR FINDING EQUILIBRIUM 1.
Project funded by the Future and Emerging Technologies arm of the IST Programme Socially Inspired Approaches to Evolving Cooperation David Hales
Can Tags Build Working Systems? From MABS to ESOA Attempting to apply results gained from Multi-Agent- Based Social Simulation (MABSS)
Multi-Patch Cooperative Specialists With Tags Can Resist Strong Cheaters, Bruce Edmonds, Feb 2013, ECMS 2013, Aalesund, Norway, slide 1 Multi-Patch Cooperative.
GENETIC ALGORITHMS.  Genetic algorithms are a form of local search that use methods based on evolution to make small changes to a popula- tion of chromosomes.
Evolving networks for cooperation Dagstuhl CCT3 DELIS Workshop Sept 3rd-4th 2005 Presented by David Hales University of Bologna, Italy
Self-Organising Networks of Services without Money or Contracts David Hales, University of Bologna, Italy First International Workshop and Summer School.
You are all social scientists: you just don’t know it yet David Hales (University of Bologna, Italy) SASO 2007, Cambridge. Mass.
Putting “tags” to work Attempting to apply results gained from agent- based social simulation (ABSS) to MAS. Dr David Hales
David Hales (University of Bologna) University of Bologna, Italywww.davidhales.com WARNING! Superficial sociological interpretation followed by simplistic.
Emergent Group-Like Selection in a Peer-to-Peer Network ECCS Conference Paris, Nov. 16 th, 2005 David Hales University of Bologna, Italy
Evolving cooperation in one-time interactions with strangers Tags produce cooperation in the single round prisoner’s dilemma and it’s.
Evolving Social Rationality for MAS using “Tags” Trying to “make things work” by applying results gained from Agent-Based Social Simulation.
Project funded by the Future and Emerging Technologies arm of the IST Programme From Selfish Nodes to Cooperative Networks – Emergent Link-based Incentives.
The Evolution of Specialisation in Groups – Tags (again!) David Hales Centre for Policy Modelling, Manchester Metropolitan University, UK.
Game Theory by James Crissey Luis Mendez James Reid.
Socially Inspired Computing Engineering with Social Metaphors.
Design of a Robust Search Algorithm for P2P Networks
Evolving P2P overlay networks with Tags, SLAC and SLACER for Cooperation and possibly other things… Saarbrücken SP6 workshop July 19-20th 2005 Presented.
Project funded by the Future and Emerging Technologies arm of the IST Programme Altruism “for free” using Tags David Hales Department.
Evolving Strategies for the Prisoner’s Dilemma Jennifer Golbeck University of Maryland, College Park Department of Computer Science July 23, 2002.
Simple Rewire Protocols for Cooperation in Dynamic Networks David Hales, Stefano Arteconi, Ozalp Babaoglu University of Bologna, Italy Bio-Inspired Workshop,
Evolving Specialisation, Altruism & Group-Level Optimisation Using Tags – The emergence of a group identity? David Hales Centre for Policy Modelling, Manchester.
Evolving Specialisation, Altruism & Group-Level Optimisation Using Tags David Hales Centre for Policy Modelling, Manchester Metropolitan University, UK.
Artificial Intelligence By Mr. Ejaz CIIT Sahiwal Evolutionary Computation.
Project funded by the Future and Emerging Technologies arm of the IST Programme Change your tags fast! - A necessary condition for cooperation? David Hales.
1 Comparative Study of two Genetic Algorithms Based Task Allocation Models in Distributed Computing System Oğuzhan TAŞ 2005.
Evolution of Cooperation in Mobile Ad Hoc Networks Jeff Hudack (working with some Italian guy)
Emergent Group Selection: Tags, Networks and Society David Hales, The Open University ASU, Thursday, November 29th For more details.
Indirect Reciprocity in the Selective Play Environment Nobuyuki Takahashi and Rie Mashima Department of Behavioral Science Hokkaido University 08/07/2003.
Novel Models of Group Selection in Social Structures and Networks David Hales University of Bologna, Italy In collaboration with: Stefano.
Introduction to Genetic Algorithms
Evolution for Cooperation
CASE − Cognitive Agents for Social Environments
Socially Inspired Approaches to Evolving Cooperation
Group Selection Design Pattern
Self-Organising, Open and Cooperative P2P Societies – From Tags to Networks David Hales Department of Computer Science University of.
Evolution for Cooperation
Altruism “for free” using Tags
Evolving cooperation in one-time interactions with strangers
CHAPTER I. of EVOLUTIONARY ROBOTICS Stefano Nolfi and Dario Floreano
Presentation transcript:

Project funded by the Future and Emerging Technologies arm of the IST Programme Understanding “tag” systems by comparing “tag” models David Hales Department of Computer Science University of Bologna Italy

ESSA'04, Valladolid, Sept Talk Overview Why study cooperation? Some previous models of cooperation Tags – what are they? Tags – how do they work? (Hypothesis) Conclusion

ESSA'04, Valladolid, Sept Why study cooperation? How can agents do tasks involving: Coordination & Teamwork Specialisation & Self-Repair Emergent Functions & Adapting to Change WITHOUT centralised supervision and in a scalable way when agents are autonomous (worst case: selfish, greedy)

ESSA'04, Valladolid, Sept The Prisoner’s Dilemma Two thieves are taken in. The police have little evidence. They interrogate them separately – each is offered a “deal”: If they give evidence against the other they get a lighter punishment (whatever the other does), otherwise they get some time in jail. But both know that If they both keep quiet they get off lightly, if both talk then they both get put away for longer, but if one talks and the other stays silent then the “grass” walks free while the silent one goes away for an even longer time.

ESSA'04, Valladolid, Sept The Prisoner’s Dilemma Given: T > R > P > S and 2R > T + S

ESSA'04, Valladolid, Sept The Prisoner’s Dilemma This is a “minimal form” of a “Commons Tragedy” (Hardin 1968). In Game Theory “Nash” equilibrium is to defect Evolution would also tend to Nash Desirable for “societies” to maintain some cooperation in such situations and many seem to. But how?

ESSA'04, Valladolid, Sept Maintaining Cooperation in the PD Binding Agreements (3’rd party enforcement) – expensive, complex (Thomas Hobbes 1660) Repeated Interactions can punish defectors – tit-for-tat (Axelrod 1984) Spatial relationships – lattice or fixed network (Nowak & May 1992) Tags – scalable, single round, simple (Holland 1993, Riolo 1997, Hales 2000)

Project funded by the Future and Emerging Technologies arm of the IST Programme Tags – New and Novel Mechanism for Cooperation What they are they? Some previous tag models. Thoughts on how they work.

ESSA'04, Valladolid, Sept What are “tags” Tags are observable labels, markings or social cues Agents can observe tags Tags evolve like any other trait (or gene) Agents may discriminate based on tags John Holland (1992) => tags powerful “symmetry breaking” function in “social-like” processes In GA-type interpretation, tags = parts of the genotype reflected directly in the phenotype

ESSA'04, Valladolid, Sept Recent tag models Tags may be bit strings signifying some observable cultural cue Tags may be a single real number Most show cooperation / altruism between selfish, greedy (boundedly rational) agents No worked-out analytical proof Nobody really knows why it works! Necessary or sufficient conditions?

ESSA'04, Valladolid, Sept Tags in the literature

ESSA'04, Valladolid, Sept Tags in the literature

ESSA'04, Valladolid, Sept Initialise all agents with randomly selected strategies LOOP some number of generations LOOP for each agent (a) in the population Select a game partner (b) from the population select a random partner with matching tag Agent (a) and (b) invoke their strategies receiving the appropriate payoff END LOOP Reproduce agents in proportion to their average payoff with some small probability of mutation (M) END LOOP A generic evolutionary algorithm

ESSA'04, Valladolid, Sept Results Very high levels of cooperation Even when all agents initialised as defectors Over broad range of parameters For binary string tags – needed > 8 bits Mutation rate needs to be within some range What kinds of process appear to be occurring?

ESSA'04, Valladolid, Sept Agents - a Tag and a PD strategy Tag = 5 Tag = 10 Cooperate Defect Tag = (say) Some Integer Game interaction between those with same tag (if possible)

ESSA'04, Valladolid, Sept Shared tags Thinking about how tags work Mutation of tag Copy tag and strategy Game Interactions

ESSA'04, Valladolid, Sept Visualising the Process Time Unique Tag Values Coop Defect Mixed Empty

ESSA'04, Valladolid, Sept Visualising the Process Time Unique Tag Values Coop Defect Mixed Empty

ESSA'04, Valladolid, Sept Hypothesis Groups have to be formed more quickly than they invaded and killed New groups are formed by mutation on the tag Old groups are killed by mutation on the strategy So if tag mutation > strategy mutation this should promote cooperation? Test it by looking at the existing models and implementing a new one

ESSA'04, Valladolid, Sept Varying tag mutation rate relative to strategy mutation rate

ESSA'04, Valladolid, Sept Previous results Hales (2000). T = PD temptation payoff and L is the tag length in bits. Runs are to 100,000 generations

ESSA'04, Valladolid, Sept Reproduction of results using same parameters (exceptt that here runs were to only 10,000 generations). The main differences are where L=8 and 16.

ESSA'04, Valladolid, Sept Shows the absolute differences (i.e. the docking errors). We consider this to be due to the difference in generations – but we need to test this.

ESSA'04, Valladolid, Sept Results when the same mutation rate is applied equally to the tag and strategy. T is the PD temptation payoff and L is the tag length in bits

ESSA'04, Valladolid, Sept Results when mutation is increased by the tag length L such that the mutation factor f = L in all cases. Cooperation is restored.

ESSA'04, Valladolid, Sept tag represented by single real number but mutation factor (f) is increased by same values as before. The tag mutation factor (f) appears to be the necessary condition to produce cooperation not the tag structure.

ESSA'04, Valladolid, Sept Conclusions Hypothesis – high mutation required on the tag than the strategy to produce high cooperation Appears to hold (in some form) in all previous models – often obscured by model details But without formal analysis how can we know this is necessary? Could show it's necessary for existing results by reproducing models and changing assumption Has helped in translating to new domains – P2P network model (IEEE p2p conference 2004)

ESSA'04, Valladolid, Sept Ad: Socially Inspired Computing – engineering with social metaphors A 2-day workshop 12 th &13 th April 2005 Part of AISB 2005 convention: Social Intelligence and Interaction in Animals, Robots and Agents At Univ. of Hertfordshire, UK (just north of London) Workshop website: Co-located with 15 other symposia, including: Emerging Artificial Societies (14 th &15 th April)

Project funded by the Future and Emerging Technologies arm of the IST Programme Translating Tags into a P2P Scenario All well and good, but can these previous results be applied to something like looks more like: unstructured overlay networks with limited degree and open to free riders

ESSA'04, Valladolid, Sept A P2P Scenario Consider a P2P: Assume nodes maintain some max. no. of links Node neighbours can be thought of as a group Nodes may be good guys, share resources with neighbours, or free-ride, using neighbours resources but not sharing theirs (PD) Sharing / free-riding is a Strategy The neighbour links (as a whole) a kind of “tag” (if clustering high enough)

ESSA'04, Valladolid, Sept A P2P Scenario Represent the P2P as a undirected graph Assume nodes are selfish and periodically: Play PD with RND selected neighbour Compare performance to some randomly selected other node If other node is doing better copy its neighbourhood and strategy Mutate strategies and neighbourhood.

ESSA'04, Valladolid, Sept Initial thoughts and questions For tag-like dynamics high clustering would appear to be required (groups required) Will dynamic nature of the scenario support this? Can cooperation be maintained without it? We might start simulations of the model with high clustering initially (say small world or lattice) and compare that to random networks Many schemes of “neighbourhood copying and mutation” are possible which to use? What kind of topologies emerge over time?

ESSA'04, Valladolid, Sept Design Decisions Mutation of neighbourhood = replace all neighbours with a single neighbour chosen at random from the population Mutation on strategy = flip the strategy Node j copying a more successful node i = replace i neighbourhood with j’s U j itself When maximum degree of node is exceeded throw away a randomly chosen link Payoffs as before: T=1.9, R=1, P=d, S=d

ESSA'04, Valladolid, Sept Social Climbing, Ostracism, Replication F u > A u Before After Where A u = average utility of node A A copies F neighbours & strategy In his case mutation has not changed anything

ESSA'04, Valladolid, Sept Mutation on the Neighbourhood Before After Mutation applied to F’s neighbourhood F is wired to a randomly selected node (B)

ESSA'04, Valladolid, Sept The Simulation Cycle LOOP some number of generations LOOP for each node (i) in the population N Select a game partner node (j) randomly from neighbour list Agent (i) and (j) invoke their strategies and get appropriate payoff END LOOP Select N/2 random pairs of agents (i, j) reproduce higher scoring agent Apply mutation to neighbour list and strategy of each reproduced agent with probability m END LOOP

ESSA'04, Valladolid, Sept Parameters Vary N between 4, ,000 Maximum degree 20 Initial topology random graph Initial strategies all defection (not random) Mutation rate m = (small) a previous Payoffs as before: T=1.9, R=1, P=d, S=d (where d is a small value)

ESSA'04, Valladolid, Sept Results

ESSA'04, Valladolid, Sept Results – increased mf=10

ESSA'04, Valladolid, Sept A few more nodes

ESSA'04, Valladolid, Sept A typical run (10,000 nodes)

ESSA'04, Valladolid, Sept A 100 node example – after 500 generations

ESSA'04, Valladolid, Sept

ESSA'04, Valladolid, Sept Topology Evolution – so far it seems…. From ANY initial starting topology / strategy mix same outcome (tried random, lattice, small world, all nodes disconnected, all defect, random, all coop) Typically (very approx.) a max of n/10 unstable components exist at any one time which are highly internally connected (L not much more than 1 and C very high) But they are not of equal size Constantly reforming and changing due to mutation and replication Rough characterisation of disconnectedness = prob. that two random nodes are connected

ESSA'04, Valladolid, Sept Typical run, 200 nodes C=clustering coeff, L = path length, K = degree, cm = no of components, cp = connection prob, coop = prop of cooperators L / 5, K / 20, CM / 20

ESSA'04, Valladolid, Sept A message passing game Keep everything the same but change “game” A message passing game – select two nodes (i,j) randomly from G. i tries to send a message to j. Do a flood fill query from i to j. If a route of cooperators is found from i to j then i gets a “hit” (one point added to score) Only cooperators pass on a messages incurring a small cost for doing so, reducing score Hence defectors will do better than cooperators getting the same proportion of hits Tough task since need a route between specific nodes via a chain of coops only

ESSA'04, Valladolid, Sept Message Passing game nodes after 500 generations

ESSA'04, Valladolid, Sept Message passing game nodes to 100 generations L / 5, K / 20, CM / 20

ESSA'04, Valladolid, Sept But its not as good as it seems... Increased games to 25n per generation Start with random strategies (all def. no good) Does not appear to scale well (oscillations) More work needs to be done (only a few runs) A very tough test for scaling on this mechanism On reflection - surprising it did this well Try “easier” and more realistic “game”

ESSA'04, Valladolid, Sept Next steps Assume random selections from the population (will it work with network generated selections?) Realistic task (file sharing) (Qixiang Sun & Hector Garcia-Molina 2004 – see Hales 2004 IEEE P2P2004) So far robustness tested as effect of mutation – static pop size – try drop or introduce lots of nodes at once Simplistically treats all neighbour links as “one chunk” rather than selectively removing links (eliminate comparison also?) various schemes possible Modified form might enhance BitTorrent?

ESSA'04, Valladolid, Sept Conclusion Tag-like dynamics can be put into a network using simple rewiring rules Even simple rules appear flexible, able to create and maintain different topologies for different tasks Free-riding is minimised, even though node behaviour selfishly and have no knowledge of past interaction At least for close neighbour interaction the method scales well But much more analysis needs to be done and more realistic kinds of p2p task domain need to be tested