<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE article
  PUBLIC "-//NLM//DTD Journal Publishing DTD v3.0 20080202//EN" "http://dtd.nlm.nih.gov/publishing/3.0/journalpublishing3.dtd">
<article xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" article-type="research-article" dtd-version="3.0" xml:lang="en">
  <front>
    <journal-meta><journal-id journal-id-type="nlm-ta">PLoS ONE</journal-id><journal-id journal-id-type="publisher-id">plos</journal-id><journal-id journal-id-type="pmc">plosone</journal-id><issn pub-type="epub">1932-6203</issn><publisher>
        <publisher-name>Public Library of Science</publisher-name>
        <publisher-loc>San Francisco, USA</publisher-loc>
      </publisher></journal-meta>
    <article-meta><article-id pub-id-type="publisher-id">PONE-D-12-09402</article-id><article-id pub-id-type="doi">10.1371/journal.pone.0041900</article-id><article-categories>
        <subj-group subj-group-type="heading">
          <subject>Research Article</subject>
        </subj-group>
        <subj-group subj-group-type="Discipline-v2">
          <subject>Biology</subject>
          <subj-group>
            <subject>Computational biology</subject>
            <subj-group>
              <subject>Population modeling</subject>
            </subj-group>
          </subj-group>
        </subj-group>
        <subj-group subj-group-type="Discipline-v2">
          <subject>Computer science</subject>
          <subj-group>
            <subject>Algorithms</subject>
          </subj-group>
        </subj-group>
        <subj-group subj-group-type="Discipline-v2">
          <subject>Engineering</subject>
          <subj-group>
            <subject>Electrical engineering</subject>
            <subj-group>
              <subject>Computer engineering</subject>
            </subj-group>
          </subj-group>
        </subj-group>
        <subj-group subj-group-type="Discipline-v2">
          <subject>Mathematics</subject>
          <subj-group>
            <subject>Applied mathematics</subject>
            <subj-group>
              <subject>Complex systems</subject>
            </subj-group>
          </subj-group>
        </subj-group>
        <subj-group subj-group-type="Discipline-v2">
          <subject>Medicine</subject>
          <subj-group>
            <subject>Mental health</subject>
            <subj-group>
              <subject>Psychology</subject>
              <subj-group>
                <subject>Social psychology</subject>
              </subj-group>
            </subj-group>
          </subj-group>
        </subj-group>
        <subj-group subj-group-type="Discipline-v2">
          <subject>Social and behavioral sciences</subject>
          <subj-group>
            <subject>Psychology</subject>
            <subj-group>
              <subject>Behavior</subject>
              <subject>Human relations</subject>
            </subj-group>
          </subj-group>
          <subj-group>
            <subject>Sociology</subject>
            <subj-group>
              <subject>Social networks</subject>
            </subj-group>
          </subj-group>
        </subj-group>
        <subj-group subj-group-type="Discipline">
          <subject>Mental Health</subject>
          <subject>Computational Biology</subject>
          <subject>Computer Science</subject>
          <subject>Mathematics</subject>
        </subj-group>
      </article-categories><title-group><article-title>Human Matching Behavior in Social Networks: An Algorithmic Perspective</article-title><alt-title alt-title-type="running-head">An Algorithmic Model of Human Matching Behavior</alt-title></title-group><contrib-group>
        <contrib contrib-type="author" xlink:type="simple">
          <name name-style="western">
            <surname>Coviello</surname>
            <given-names>Lorenzo</given-names>
          </name>
          <xref ref-type="aff" rid="aff1">
            <sup>1</sup>
          </xref>
          <xref ref-type="corresp" rid="cor1">
            <sup>*</sup>
          </xref>
        </contrib>
        <contrib contrib-type="author" xlink:type="simple">
          <name name-style="western">
            <surname>Franceschetti</surname>
            <given-names>Massimo</given-names>
          </name>
          <xref ref-type="aff" rid="aff1">
            <sup>1</sup>
          </xref>
        </contrib>
        <contrib contrib-type="author" xlink:type="simple">
          <name name-style="western">
            <surname>McCubbins</surname>
            <given-names>Mathew D.</given-names>
          </name>
          <xref ref-type="aff" rid="aff2">
            <sup>2</sup>
          </xref>
        </contrib>
        <contrib contrib-type="author" xlink:type="simple">
          <name name-style="western">
            <surname>Paturi</surname>
            <given-names>Ramamohan</given-names>
          </name>
          <xref ref-type="aff" rid="aff3">
            <sup>3</sup>
          </xref>
        </contrib>
        <contrib contrib-type="author" xlink:type="simple">
          <name name-style="western">
            <surname>Vattani</surname>
            <given-names>Andrea</given-names>
          </name>
          <xref ref-type="aff" rid="aff3">
            <sup>3</sup>
          </xref>
        </contrib>
      </contrib-group><aff id="aff1">
        <label>1</label>
        <addr-line>Department of Electrical and Computer Engineering, University of California San Diego, La Jolla, California, United States of America</addr-line>
      </aff><aff id="aff2">
        <label>2</label>
        <addr-line>Department of Political Science, University of Southern California, Los Angeles, California, United States of America</addr-line>
      </aff><aff id="aff3">
        <label>3</label>
        <addr-line>Department of Computer Science and Engineering, University of California San Diego, La Jolla, California, United States of America</addr-line>
      </aff><contrib-group>
        <contrib contrib-type="editor" xlink:type="simple">
          <name name-style="western">
            <surname>Huerta-Quintanilla</surname>
            <given-names>Rodrigo</given-names>
          </name>
          <role>Editor</role>
          <xref ref-type="aff" rid="edit1"/>
        </contrib>
      </contrib-group><aff id="edit1">
        <addr-line>Cinvestav-Merida, Mexico</addr-line>
      </aff><author-notes>
        <corresp id="cor1">* E-mail: <email xlink:type="simple">lcoviell@ucsd.edu</email></corresp>
        <fn fn-type="conflict">
          <p>The authors have declared that no competing interests exist.</p>
        </fn>
        <fn fn-type="con">
          <p>Conceived and designed the experiments: LC MF MDM RP AV. Performed the experiments: LC MF MDM RP AV. Analyzed the data: LC MF MDM RP AV. Wrote the paper: LC MF MDM RP AV.</p>
        </fn>
      </author-notes><pub-date pub-type="collection">
        <year>2012</year>
      </pub-date><pub-date pub-type="epub">
        <day>22</day>
        <month>8</month>
        <year>2012</year>
      </pub-date><volume>7</volume><issue>8</issue><elocation-id>e41900</elocation-id><history>
        <date date-type="received">
          <day>28</day>
          <month>3</month>
          <year>2012</year>
        </date>
        <date date-type="accepted">
          <day>29</day>
          <month>6</month>
          <year>2012</year>
        </date>
      </history><permissions>
        
        <copyright-holder>Coviello et al</copyright-holder>
        <license xlink:type="simple">
          <license-p>This is an open-access article distributed under the terms of the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original author and source are credited.</license-p>
        </license>
      </permissions><abstract>
        <p>We argue that algorithmic modeling is a powerful approach to understanding the collective dynamics of human behavior. We consider the task of <italic>pairing up</italic> individuals connected over a network, according to the following model: each individual is able to propose to <italic>match</italic> with and accept a proposal from a neighbor in the network; if a matched individual proposes to another neighbor or accepts another proposal, the current match will be broken; individuals can only observe whether their neighbors are currently matched but have no knowledge of the network topology or the status of other individuals; and all individuals have the common goal of maximizing the total number of matches. By examining the experimental data, we identify a behavioral principle called <italic>prudence</italic>, develop an algorithmic model, analyze its properties mathematically and by simulations, and validate the model with human subject experiments for various network sizes and topologies. Our results include i) a <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e001" xlink:type="simple"/></inline-formula>-<italic>approximate maximum</italic> matching is obtained in logarithmic time in the network size for bounded degree networks; ii) for any constant <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e002" xlink:type="simple"/></inline-formula>, a <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e003" xlink:type="simple"/></inline-formula>-<italic>approximate maximum</italic> matching is obtained in polynomial time, while obtaining a <italic>maximum</italic> matching can require an exponential time; and iii) convergence to a maximum matching is slower on preferential attachment networks than on small-world networks. These results allow us to predict that while humans can find a “good quality” matching quickly, they may be unable to find a maximum matching in feasible time. We show that the human subjects largely abide by <italic>prudence</italic>, and their collective behavior is closely tracked by the above predictions.</p>
      </abstract><funding-group>
        <funding-statement>This work was partially supported by the National Science Foundation under grant number 0905645 and the Army Research Office under grant W911NF-11-1-0363. The funders had no role in study design, data collection and analysis, decision to publish, or preparation of the manuscript.</funding-statement>
      </funding-group><counts>
        <page-count count="9"/>
      </counts></article-meta>
  </front>
  <body>
    <sec id="s1">
      <title>Introduction</title>
      <p>The modeling and prediction of collective human behavior has been one of the key challenges of social sciences for several decades. As early as 1947, Herbert Simon argued that <italic>information processing</italic> constitutes the core of human decision-making <xref ref-type="bibr" rid="pone.0041900-Simon1">[1]</xref>. A corollary of his argument is that human decision-making processes can be modeled <italic>algorithmically</italic>. However, such algorithmic modeling and prediction is challenging, considering that collective decision-making processes are driven by both individual attitudes and collective dynamics, and often involve social interchange and mutual agreement.</p>
      <p>This paper argues that despite the inherent complexity of human social interactions, it is possible to isolate basic behavioral principles, formulate mathematical models, and predict collective dynamics, using an algorithmic approach. As a simple example of this approach, in the context of a distributed coordination game on networks (i.e., the <italic>maximum matching game</italic>), we present an algorithmic model of human behavior that is based on <italic>simple</italic> principles of local interaction and that is able to capture <italic>complex</italic> collective coordination.</p>
      <p>Our approach is similar in spirit to the one in physics where particle systems and cellular automata described by simple rules are known to generate complex behaviors, such as phase transitions and universal computability <xref ref-type="bibr" rid="pone.0041900-Liggett1">[2]</xref>–<xref ref-type="bibr" rid="pone.0041900-Cook1">[5]</xref>. However, our algorithmic modeling approach embeds individual interaction behavior as part of a distributed computing system and leads to computational complexity analysis.</p>
      <p>Our work is influenced by the work of Kearns et al. <xref ref-type="bibr" rid="pone.0041900-Kearns1">[6]</xref> who studied the effect of network topology on subjects' ability to color a graph, and by subsequent work in the context of distributed coloring and consensus games <xref ref-type="bibr" rid="pone.0041900-Kearns2">[7]</xref>–<xref ref-type="bibr" rid="pone.0041900-Enemark1">[10]</xref>. However, our focus is on algorithmic modeling and analysis, rather than on observing the effect of network topology on performance.</p>
      <p>We have conducted over <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e004" xlink:type="simple"/></inline-formula> experiments with human subjects on a pool of over 80 networks with up to 24 nodes each, ranging from simple networks to more complex stochastic models including preferential attachment <xref ref-type="bibr" rid="pone.0041900-Barabsi1">[11]</xref>, <xref ref-type="bibr" rid="pone.0041900-Bollobs1">[12]</xref> and small-world networks <xref ref-type="bibr" rid="pone.0041900-Watts1">[13]</xref>. Our experimental set-up is simple. Subjects are represented by nodes of a network with edges representing potential matches. In our experiments, human subjects are connected over a virtual network and interact with their neighbors through a computer interface, see <xref ref-type="fig" rid="pone-0041900-g001">Figure 1</xref>. Subjects can form and destroy pairs with their neighbors, and each subject can be part of a single pair at a time. Subjects are given only local information about their immediate neighbors, and can only interact with them. They are able to propose to match with a neighbor and accept a proposal from a neighbor. While matched, a subject can also make a proposal to or accept a proposal from another neighbor; in both cases, the existing match would automatically be broken. Moreover, a subject can only have a single outstanding proposal at a time. Therefore, at any time, a subject can either be part of a matched pair, or not be matched and have at most a single outstanding proposal. Subjects are equally incentivized to achieve a <italic>maximum matching</italic>, namely to form the maximum number of disjoint mutual pairs, without regard to whom is matched with whom. Specifically, they are given an equal monetary reward for each game where a maximum matching is found within the allotted time.</p>
      <fig id="pone-0041900-g001" orientation="portrait" position="float">
        <object-id pub-id-type="doi">10.1371/journal.pone.0041900.g001</object-id>
        <label>Figure 1</label>
        <caption>
          <title>Computer interface.</title>
          <p>The subject is matched with the node on the right and is being requested by three unmatched nodes.</p>
        </caption>
        <graphic mimetype="image" orientation="portrait" position="float" xlink:href="info:doi/10.1371/journal.pone.0041900.g001" xlink:type="simple"/>
      </fig>
      <p>To better understand this setup, consider the following metaphor: imagine that incoming graduate students are pairing up with faculty members. Further imagine that every member of the department prefers every graduate student to have one adviser and every adviser to have one graduate student, and only certain faculty and graduate students share interests. Communication is limited so that individuals can only tell if members with whom they share an interest are already matched. Each member of the department is now a node, the edges represent shared interest, and individuals can then propose to work with members with whom they share an edge.</p>
      <p>Our algorithmic model is based on a simple property that we call “prudence” and that emerges from the analysis of a first set of experimental data. This property states that <italic>individuals do not break existing matched pairs unless they receive an alternative proposal by an unmatched neighbor</italic>. Based on this property, we propose a simple distributed algorithm, analyze its performance, validate the model with additional experimental results, and predict outcomes. The prudence property is reminiscent of the notion of risk aversion, a relevant topic in the economics literature <xref ref-type="bibr" rid="pone.0041900-Pratt1">[14]</xref>, <xref ref-type="bibr" rid="pone.0041900-Kahneman1">[15]</xref>.</p>
      <p>We now briefly summarize our findings. Throughout the paper we use the graph-theoretic terminology, according to which a matching is a set of edges without common nodes. The size of a matching is the number of edges in it. A maximum matching is a matching with the largest size. For <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e005" xlink:type="simple"/></inline-formula>, a matching is a <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e006" xlink:type="simple"/></inline-formula>-approximate maximum matching if its size is within a factor of <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e007" xlink:type="simple"/></inline-formula> from that of a maximum matching. A matching <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e008" xlink:type="simple"/></inline-formula> is maximal if it is not a proper subset of any other matching, i.e., for any new edge added to it, it is no longer a matching. <xref ref-type="fig" rid="pone-0041900-g002">Figure 2</xref> depicts an approximate and a maximum matching of a network. We show that the convergence time to the maximum matching in computer simulations of the prudence algorithm fits well the experimental data (after scaling by a constant factor), see <xref ref-type="fig" rid="pone-0041900-g003">Figures 3</xref> and <xref ref-type="fig" rid="pone-0041900-g004">4</xref>. By computer simulations we also predict that convergence to a maximum matching is slower on preferential attachment networks than on small-world networks, see <xref ref-type="fig" rid="pone-0041900-g005">Figure 5</xref>. This prediction is validated by our experiments with human subjects. It is also in agreement with the experimental results by Kearns et al. <xref ref-type="bibr" rid="pone.0041900-Kearns1">[6]</xref> regarding the coloring problem, and with the theoretical results by Montanari and Saberi <xref ref-type="bibr" rid="pone.0041900-Montanari1">[16]</xref> regarding the spread of innovation in networks. On the theoretical side, we analyze the dynamics of the prudence algorithm and show that for all graphs of bounded degree a <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e009" xlink:type="simple"/></inline-formula>-<italic>approximate maximum</italic> matching is reached quickly, on average in <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e010" xlink:type="simple"/></inline-formula> rounds, where <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e011" xlink:type="simple"/></inline-formula> refers to the number of nodes in the network (Theorem 1); and for all graphs a <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e012" xlink:type="simple"/></inline-formula>-<italic>approximate maximum</italic> matching is reached in polynomially many rounds with high probability (Theorem 2). We also show that there are instances (called “bad” graphs) for which reaching a <italic>maximum</italic> matching requires exponential time with high probability when starting from a set of configurations (called “bad” matchings) which constitute almost all possible configurations (Theorems 3 and 4). These results show that in the worst case there is an exponential gap between reaching a good matching (i.e., an approximate maximum matching whose cardinality is close to a maximum matching) versus the best (i.e., perfect) matching. The experimental data shows (consistently with the theoretical analysis) that human subjects always find a “good” matching quickly, while they can take much longer to improve the solution to a maximum matching, see <xref ref-type="fig" rid="pone-0041900-g006">Figure 6</xref>. In particular, on the bad graph, human subjects could not converge to a maximum matching in the allotted time.</p>
      <fig id="pone-0041900-g002" orientation="portrait" position="float">
        <object-id pub-id-type="doi">10.1371/journal.pone.0041900.g002</object-id>
        <label>Figure 2</label>
        <caption>
          <title>Approximate and maximum matching.</title>
          <p>Left: an approximate maximum matching of size <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e013" xlink:type="simple"/></inline-formula> on a network with <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e014" xlink:type="simple"/></inline-formula> nodes (matching edges are represented in bold red, matched nodes are colored, unmatched nodes are white). Right: a maximum matching of size <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e015" xlink:type="simple"/></inline-formula> on the same network (note that the maximum matching is also a perfect matching, as all nodes are matched).</p>
        </caption>
        <graphic mimetype="image" orientation="portrait" position="float" xlink:href="info:doi/10.1371/journal.pone.0041900.g002" xlink:type="simple"/>
      </fig>
      <fig id="pone-0041900-g003" orientation="portrait" position="float">
        <object-id pub-id-type="doi">10.1371/journal.pone.0041900.g003</object-id>
        <label>Figure 3</label>
        <caption>
          <title>Affinity between humans' and algorithm's performance, 16-node networks.</title>
          <p>The performance of the human subjects (red points joined by continuous line) and of the algorithm (blue points) over eight bipartite 16-node networks (triangles) and eight non-bipartite 16-node networks (circles) are plotted. The experiment was run multiple times on each network and the average behavior is reported. The <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e016" xlink:type="simple"/></inline-formula>-axis shows the indexes of the networks sorted by increasing average time required to reach a maximum matching. Bipartite networks are labeled from 1 to 8, while non-bipartite networks are labeled from 9 to 16. The <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e017" xlink:type="simple"/></inline-formula>-axis shows the average time (in seconds) required to reach a maximum matching for humans, while the average number of rounds of the algorithm is scaled by a constant factor.</p>
        </caption>
        <graphic mimetype="image" orientation="portrait" position="float" xlink:href="info:doi/10.1371/journal.pone.0041900.g003" xlink:type="simple"/>
      </fig>
      <fig id="pone-0041900-g004" orientation="portrait" position="float">
        <object-id pub-id-type="doi">10.1371/journal.pone.0041900.g004</object-id>
        <label>Figure 4</label>
        <caption>
          <title>Affinity between humans' and algorithm's performance, 24-node networks.</title>
          <p>The performance of the human subjects (red points joined by continuous line) and of the algorithm (blue points) over different 24-node networks are plotted. In particular, small-world networks (triangles), a ring network (diamonds), and preferential attachment networks (circles) were tested. The experiment was run multiple times on each network and the average behavior is reported. The <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e018" xlink:type="simple"/></inline-formula>-axis shows the indexes of the networks sorted by increasing average time required to reach a maximum matching. The <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e019" xlink:type="simple"/></inline-formula>-axis shows the average time (in seconds) required to reach a maximum matching for humans, while the average number of rounds of the algorithm is scaled by a constant factor.</p>
        </caption>
        <graphic mimetype="image" orientation="portrait" position="float" xlink:href="info:doi/10.1371/journal.pone.0041900.g004" xlink:type="simple"/>
      </fig>
      <fig id="pone-0041900-g005" orientation="portrait" position="float">
        <object-id pub-id-type="doi">10.1371/journal.pone.0041900.g005</object-id>
        <label>Figure 5</label>
        <caption>
          <title>Algorithm's asymptotic performance.</title>
          <p>Prudence algorithm's performance with respect to the network's size for the “bad” graph <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e020" xlink:type="simple"/></inline-formula> (black diamonds), for preferential attachment model (green squares), small-world model (red triangles). For each generative model and network size we generated 100 networks and run the algorithm 1000 times on each. The average behavior is reported. The <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e021" xlink:type="simple"/></inline-formula>-axis shows the network size, and the <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e022" xlink:type="simple"/></inline-formula>-axis shows the average number of rounds required by the algorithm to converge to a maximum matching.</p>
        </caption>
        <graphic mimetype="image" orientation="portrait" position="float" xlink:href="info:doi/10.1371/journal.pone.0041900.g005" xlink:type="simple"/>
      </fig>
      <fig id="pone-0041900-g006" orientation="portrait" position="float">
        <object-id pub-id-type="doi">10.1371/journal.pone.0041900.g006</object-id>
        <label>Figure 6</label>
        <caption>
          <title>Experimental performance, 24-node networks.</title>
          <p>Performance of the experimental subjects on networks of <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e023" xlink:type="simple"/></inline-formula> nodes. The plot shows the time to reach a perfect matching of size <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e024" xlink:type="simple"/></inline-formula> (red), an approximate matching of size <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e025" xlink:type="simple"/></inline-formula> (a <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e026" xlink:type="simple"/></inline-formula>–approximate matching, in blue) and a matching of size <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e027" xlink:type="simple"/></inline-formula> (a <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e028" xlink:type="simple"/></inline-formula>–approximate matching, in green). Results for single games are reported. The <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e029" xlink:type="simple"/></inline-formula>-axis shows the indexes of the games sorted by increasing solving time, while the <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e030" xlink:type="simple"/></inline-formula>-axis shows the time in seconds. The right-most four games on the red plot did not converge to a maximum matching and correspond to three instances of the “bad” graph <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e031" xlink:type="simple"/></inline-formula> and to one instance of the preferential attachment network.</p>
        </caption>
        <graphic mimetype="image" orientation="portrait" position="float" xlink:href="info:doi/10.1371/journal.pone.0041900.g006" xlink:type="simple"/>
      </fig>
      <sec id="s1a">
        <title>Related Literature</title>
        <p>The experimental study of human strategic behavior over networks is a topic of great current interest in the literature. The work by Kearns and others on network coloring and consensus games <xref ref-type="bibr" rid="pone.0041900-Kearns1">[6]</xref>–<xref ref-type="bibr" rid="pone.0041900-Enemark1">[10]</xref> has been particularly influential. Judd et al. <xref ref-type="bibr" rid="pone.0041900-Judd2">[17]</xref> investigated how subjects choose between playing either a dominant or a submissive role in a network game, documenting the importance of fairness. Kearns et al. <xref ref-type="bibr" rid="pone.0041900-Kearns3">[18]</xref> performed experiments on network formation games when there is a cost for creating links. Suri and Watts <xref ref-type="bibr" rid="pone.0041900-Suri1">[19]</xref> conducted experiments in which individuals connected over networks play local public good games. Wang et al. <xref ref-type="bibr" rid="pone.0041900-Wang1">[20]</xref> studied multi-player prisoner's dilemma games in which subjects can propose and delete links to other players, showing that partner selection increases cooperation. Brautbar and Kearns <xref ref-type="bibr" rid="pone.0041900-Brautbar1">[21]</xref> introduced a network formation game in which players need to maximize their clustering coefficients. Compared to these previous works, we focus on isolating behavioral principles of human interaction (in the context of maximum matching games) and using these principles to formulate algorithmic predictions of outcomes.</p>
        <p>As social interaction naturally induces strategic behavior, our work is also closely related to game theory. Indeed, several authors proposed game theoretical models of human interaction over social networks. Topics vary from diffusion and contagion over networks <xref ref-type="bibr" rid="pone.0041900-Montanari1">[16]</xref>, <xref ref-type="bibr" rid="pone.0041900-Goyal1">[22]</xref>, <xref ref-type="bibr" rid="pone.0041900-Acemoglu1">[23]</xref> to strategic information retrieval <xref ref-type="bibr" rid="pone.0041900-Kleinberg1">[24]</xref>, <xref ref-type="bibr" rid="pone.0041900-Cebrin1">[25]</xref>, models of segregation <xref ref-type="bibr" rid="pone.0041900-Brandt1">[26]</xref> and bargaining over networks <xref ref-type="bibr" rid="pone.0041900-Kanoria1">[27]</xref>, to mention a few. The main element that distinguishes our work from the game theory literature is that we focus on the algorithmic processes involved in strategic thinking and the ensuing collective dynamics rather than on equilibria. Moreover, our algorithmic model is motivated and supported by experimental data.</p>
        <p>Finally, matching theory has received notable attention throughout the decades, both in the context of game theory and economics <xref ref-type="bibr" rid="pone.0041900-Roth1">[28]</xref>–<xref ref-type="bibr" rid="pone.0041900-Ashlagi1">[31]</xref>, and in the development of algorithms for the maximum matching problem <xref ref-type="bibr" rid="pone.0041900-Hopcroft1">[32]</xref>–<xref ref-type="bibr" rid="pone.0041900-Pettie1">[36]</xref>. We point out that our simplified setup constitutes a simplification of the richness and heterogeneity of the ties in real social networks, as the subjects have no preference over each other, all the ties are equivalent, and interaction has no cost. However, such a simplified model leads to a tractable analysis and to the formulation of a general principle of collective behavior.</p>
      </sec>
    </sec>
    <sec id="s2" sec-type="methods">
      <title>Methods</title>
      <p>The experiments included the interaction of the participants through a computer interface, and were conducted in accordance with the ethical standards specified in the 1964 declaration of Helsinki. Written consent was granted before participation in the experiments. Our institutional review boards approved this study (UCSD IRB approval 111213SX, US Army Human Research Protection Office ARO-HRPO Log A-17038).</p>
      <sec id="s2a">
        <title>The Matching Games</title>
        <p>Before formulating our algorithmic model, we conducted four sessions of experiments, each with a different pool of sixteen undergraduate students connected over a virtual network. Subsequently, to validate our model, we ran an additional session of experiments with a pool of twenty four subjects on a set of networks that included small world and preferential attachment networks. In each of the first four sessions the subjects were asked to solve the matching game on a pool of over 70 networks. All networks admitted a <italic>perfect matching</italic>, namely a maximum matching with no unmatched nodes. We considered networks classified into four groups: bipartite networks admitting a unique perfect matching, bipartite networks admitting multiple perfect matchings, non-bipartite networks admitting a unique perfect matching, non-bipartite networks admitting multiple perfect matchings. Within each group, networks were randomly generated. As a remark, a bipartite network is a network whose nodes can be divided into two disjoint sets <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e032" xlink:type="simple"/></inline-formula> and <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e033" xlink:type="simple"/></inline-formula> such that every edge connects a vertex in <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e034" xlink:type="simple"/></inline-formula> to one in <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e035" xlink:type="simple"/></inline-formula>. If this property does not hold, we say that the network is non-bipartite. Subjects sat in front of workstations for the entire two-hour duration of the session and had no eye-contact with each other. For each matching game, a network was chosen, subjects were randomly assigned to its nodes, and each subject interacted with its neighbors by making or accepting proposals to form matched pairs using the interface shown in <xref ref-type="fig" rid="pone-0041900-g001">Figure 1</xref>. Each subject could control the node in the center of the screen and could only see its neighbors and, among those, distinguish which of them were currently matched (marked in dark green). A subject could make proposals or accept proposals by selecting a neighbor with a mouse click, and could only have one outstanding proposal at a time to form a matched pair (circled in yellow). While subjects knew whether a neighbor is matched or unmatched, they did not have direct knowledge of any outstanding requests to their neighbors other than their own. If two neighbors selected each other, a pair was formed (a bright green link appeared between them) which could be broken when one of the partners selected another neighbor. As a remark, since a pair was formed when two subjects selected each other and each subject could make a single selection at a time, each subject could be part of a single pair at a time (with one of its neighbors).</p>
        <p>If a perfect matching was found within the time limit of five minutes, the game was declared solved and each participant was rewarded by $.50 or $1 depending on the session, otherwise the game ended with no reward. The number of games in an experimental session was not fixed, but games were run for the two-hour duration of the session. Therefore, the number of games and the cumulative reward in a session depended on the performance of the participants, providing an additional incentive to coordinate.</p>
        <p>The networks used in this first set of experiments can be divided into four classes: bipartite, non bipartite, unique perfect matching, multiple perfect matchings. Two one-tailed Welch's t-tests confirmed the hypotheses that it is harder for humans to complete the matching game on non-bipartite than on bipartite networks (<inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e036" xlink:type="simple"/></inline-formula>-value <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e037" xlink:type="simple"/></inline-formula>); and that non-bipartite networks with unique perfect matching are more difficult to solve than non-bipartite networks with multiple perfect matchings (<inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e038" xlink:type="simple"/></inline-formula>-value <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e039" xlink:type="simple"/></inline-formula>). No statistically significant difference was found between the completion time of bipartite networks with unique and with multiple perfect matchings. We believe that this depended on the small network size of sixteen nodes and we did not explore larger bipartite networks further.</p>
      </sec>
      <sec id="s2b">
        <title>The Algorithmic Model</title>
        <p>One of the main behavioral properties that emerged from the experimental data is that matched players <italic>may</italic> break their current matching <italic>only if</italic> they have been requested by an unmatched neighbor. In particular, in <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e040" xlink:type="simple"/></inline-formula> of the games no player ever violated this rule at any time during the game. In the remaining games, over <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e041" xlink:type="simple"/></inline-formula> percent of the moves were in agreement with this rule. Therefore, this property led to the following modeling assumption:</p>
        <p><bold>Assumption 1 (Prudence)</bold> <italic>A matched node does not break its current matched pair if it does not receive any request from other neighbors.</italic></p>
        <p>Two remarks are in order. First, note that this behavioral rule is peculiar to the matching problem since each player needs to choose a partner but also needs to be chosen. Second, notice that a matched subject with unmatched neighbors has some incentive to behave non-prudently and break the current match, because the subject can infer from the status of its neighbors that the perfect matching is not reached yet. However, experimental data shows that this rarely happens.</p>
        <p>For each node <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e042" xlink:type="simple"/></inline-formula>, let <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e043" xlink:type="simple"/></inline-formula> indicate <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e044" xlink:type="simple"/></inline-formula>'s current preference. In other words, <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e045" xlink:type="simple"/></inline-formula> is the unique node to which <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e046" xlink:type="simple"/></inline-formula> has currently proposed to. <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e047" xlink:type="simple"/></inline-formula> will be null if <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e048" xlink:type="simple"/></inline-formula> does not have a current proposal. If two neighbors <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e049" xlink:type="simple"/></inline-formula> and <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e050" xlink:type="simple"/></inline-formula> currently prefer each other (i.e., <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e051" xlink:type="simple"/></inline-formula> and <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e052" xlink:type="simple"/></inline-formula>), then consider them matched and the edge <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e053" xlink:type="simple"/></inline-formula> as part of the matching. Assume that each node knows if a neighbor is matched or unmatched.</p>
        <p>Given the prudence property, we model the algorithmic behavior of humans using the <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e054" xlink:type="simple"/></inline-formula> algorithm shown in <xref ref-type="table" rid="pone-0041900-t001">Table 1</xref>. The algorithm is specified by the implementation of two functions, called <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e055" xlink:type="simple"/></inline-formula> and <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e056" xlink:type="simple"/></inline-formula>, which are placeholders for the behavior that node <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e057" xlink:type="simple"/></inline-formula> would follow depending on whether <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e058" xlink:type="simple"/></inline-formula> is matched or unmatched. We consider a synchronous setting, in which time is divided into rounds, and at the beginning of each round each node observes its status and the status of its neighborhood and then decides on an action to take.</p>
        <table-wrap id="pone-0041900-t001" orientation="portrait" position="float"><object-id pub-id-type="doi">10.1371/journal.pone.0041900.t001</object-id><label>Table 1</label><caption>
            <title>The algorithm.</title>
          </caption><alternatives>
            <graphic id="pone-0041900-t001-1" mimetype="image" orientation="portrait" position="float" xlink:href="info:doi/10.1371/journal.pone.0041900.t001" xlink:type="simple"/>
            <table>
              <colgroup span="1">
                <col align="left" span="1"/>
              </colgroup>
              <tbody>
                <tr>
                  <td align="left" colspan="1" rowspan="1"><bold>if</bold> unmatched</td>
                </tr>
                <tr>
                  <td align="left" colspan="1" rowspan="1">Set <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e059" xlink:type="simple"/></inline-formula></td>
                </tr>
                <tr>
                  <td align="left" colspan="1" rowspan="1"><bold>else if</bold> matched <bold>and</bold> <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e060" xlink:type="simple"/></inline-formula> neighbor <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e061" xlink:type="simple"/></inline-formula> s.t. <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e062" xlink:type="simple"/></inline-formula></td>
                </tr>
                <tr>
                  <td align="left" colspan="1" rowspan="1">Set <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e063" xlink:type="simple"/></inline-formula></td>
                </tr>
                <tr>
                  <td align="left" colspan="1" rowspan="1">
                    <bold>end</bold>
                  </td>
                </tr>
              </tbody>
            </table>
          </alternatives><table-wrap-foot>
            <fn id="nt101">
              <label/>
              <p>P<sc>rudence</sc> algorithm for node <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e064" xlink:type="simple"/></inline-formula>.</p>
            </fn>
          </table-wrap-foot></table-wrap>
        <p>In the following we provide a canonical implementation of the functions <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e065" xlink:type="simple"/></inline-formula> and <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e066" xlink:type="simple"/></inline-formula> consistent with the prudence property. <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e067" xlink:type="simple"/></inline-formula> does not change the current value of <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e068" xlink:type="simple"/></inline-formula> with probability <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e069" xlink:type="simple"/></inline-formula>, while with probability <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e070" xlink:type="simple"/></inline-formula> accepts the proposal from a neighbor uniformly at random from among the neighbors <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e071" xlink:type="simple"/></inline-formula> with <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e072" xlink:type="simple"/></inline-formula> if any; if there is no neighbor <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e073" xlink:type="simple"/></inline-formula> with <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e074" xlink:type="simple"/></inline-formula>, then it proposes to a node uniformly at random from among the unmatched neighbors if any; otherwise it proposes to a node uniformly at random from among all the matched neighbors. In other words, unmatched nodes prefer neighbors who requested them over other unmatched neighbors, and unmatched neighbors over matched neighbors. As for matched nodes, <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e075" xlink:type="simple"/></inline-formula> accepts a proposal from a neighbor uniformly at random from among the neighbors <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e076" xlink:type="simple"/></inline-formula> with <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e077" xlink:type="simple"/></inline-formula> (note that <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e078" xlink:type="simple"/></inline-formula>'s current partner is one of them). We remark that the simulations' performance and the fit with the experimental data was practically insensitive to the value of <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e079" xlink:type="simple"/></inline-formula> chosen in the run of the algorithm.</p>
      </sec>
    </sec>
    <sec id="s3">
      <title>Results</title>
      <sec id="s3a">
        <title>Mathematical Results</title>
        <p>In this section we present our analytical results regarding the convergence behavior of the P<sc>rudence</sc> algorithm. In particular, our results describe how well the algorithm performs in finding a large matching and the time it takes in terms of the number of rounds required. Due to space constraints, we only present proof sketches here. Complete details of the proofs are deferred to the SI.</p>
        <p>We define a <italic>matching</italic> at round <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e080" xlink:type="simple"/></inline-formula> as the set of matched edges at the beginning of round <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e081" xlink:type="simple"/></inline-formula> of the algorithm. We first claim that the prudence property implies that the size of the matching does not decrease with time. The proof is immediate and it is omitted.</p>
        <p><bold>Claim 1</bold> <italic>The size of the matching at round</italic> <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e082" xlink:type="simple"/></inline-formula> <italic>is non-decreasing as</italic> <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e083" xlink:type="simple"/></inline-formula> <italic>increases.</italic></p>
        <p>We then observe that the behavior of the P<sc>rudence</sc> algorithm can be described by a Markov chain over matchings. A transition from a matching <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e084" xlink:type="simple"/></inline-formula> to a matching <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e085" xlink:type="simple"/></inline-formula> is made by selecting an edge <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e086" xlink:type="simple"/></inline-formula> such that at least one among <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e087" xlink:type="simple"/></inline-formula> and <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e088" xlink:type="simple"/></inline-formula> is unmatched, and setting <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e089" xlink:type="simple"/></inline-formula> if <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e090" xlink:type="simple"/></inline-formula> are both unmatched, and <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e091" xlink:type="simple"/></inline-formula> if exactly one of <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e092" xlink:type="simple"/></inline-formula> and <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e093" xlink:type="simple"/></inline-formula> is matched in <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e094" xlink:type="simple"/></inline-formula> and <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e095" xlink:type="simple"/></inline-formula> is the matching edge. This Markov chain is reversible when restricted to matchings of the same size. Since the Markov chain is memory-less and has positive probability of reaching a maximum matching, we conclude that the P<sc>rudence</sc> algorithm enjoys self-stabilization.</p>
        <p><bold>Claim 2</bold> <italic>The</italic> P<sc>rudence</sc> <italic>algorithm is a self-stabilizing algorithm.</italic></p>
        <p>Our first theorem says that a <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e096" xlink:type="simple"/></inline-formula>-approximate matching will be reached quickly in networks with bounded degree.</p>
        <p><bold>Theorem 1</bold> <italic>In any bounded-degree graph on</italic> <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e097" xlink:type="simple"/></inline-formula> <italic>nodes, the expected number of rounds for the</italic> <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e098" xlink:type="simple"/></inline-formula> <italic>algorithm to reach a</italic> <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e099" xlink:type="simple"/></inline-formula><italic>-approximate matching is</italic> <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e100" xlink:type="simple"/></inline-formula>.</p>
        <p>The key idea of the proof is to show that, in expectation, the “distance” in terms of number of matched pairs to the smallest <italic>maximal</italic> matching shrinks by a constant factor in each round of the P<sc>rudence</sc> algorithm. Since it is well known that any maximal matching is a <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e101" xlink:type="simple"/></inline-formula>-approximation of the maximum matching, the result then follows.</p>
        <p>We remark that the assumption of having bounded degrees is necessary as there are unbounded degree graphs in which a polynomial number of rounds is required with high probability to achieve a <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e102" xlink:type="simple"/></inline-formula>-approximation. However, in this case, a polynomial number of rounds is also enough to achieve <italic>any</italic> constant approximation: indeed, as the next theorem states, the Prudence algorithm provides a PTAS (polynomial time approximation scheme) for the maximum matching problem. Given a graph <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e103" xlink:type="simple"/></inline-formula>, <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e104" xlink:type="simple"/></inline-formula> denotes its maximum degree.</p>
        <p><bold>Theorem 2</bold> <italic>For any graph</italic> <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e105" xlink:type="simple"/></inline-formula> <italic>of</italic> <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e106" xlink:type="simple"/></inline-formula> <italic>nodes,</italic> <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e107" xlink:type="simple"/></inline-formula> <italic>and</italic> <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e108" xlink:type="simple"/></inline-formula>, <italic>the</italic> P<sc>rudence</sc> <italic>algorithm reaches a</italic> <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e109" xlink:type="simple"/></inline-formula><italic>-approximate matching in</italic> <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e110" xlink:type="simple"/></inline-formula> <italic>rounds with probability at least</italic> <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e111" xlink:type="simple"/></inline-formula>.</p>
        <p>The theorem implies that, for any constant <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e112" xlink:type="simple"/></inline-formula>, a matching whose size is within a <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e113" xlink:type="simple"/></inline-formula> fraction of the size of the maximum matching is reached in polynomial time. For bounded-degree graphs, this result also holds for <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e114" xlink:type="simple"/></inline-formula>, implying that in this case a maximum matching can be reached in polynomial time.</p>
        <p>To prove the theorem, we track the progress of the algorithm towards an approximate maximum matching, using the concept of an <italic>augmenting path</italic>. An augmenting path is a path of odd length which alternates between matched and unmatched edges and whose extreme edges are unmatched. It turns out that there is a close connection between the size of a shortest augmenting path in a matching and how close the matching size is to the size of a maximum matching. More specifically, we use the following lemma due to Hopcroft and Karp <xref ref-type="bibr" rid="pone.0041900-Hopcroft1">[32]</xref>.</p>
        <p><bold>Lemma 1</bold> <italic>Consider any matching</italic> <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e115" xlink:type="simple"/></inline-formula> <italic>that does not admit augmenting paths of odd length</italic> <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e116" xlink:type="simple"/></inline-formula> <italic>or smaller. Then, the size of</italic> <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e117" xlink:type="simple"/></inline-formula> <italic>is at least a fraction</italic> <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e118" xlink:type="simple"/></inline-formula> <italic>of the size of a maximum matching.</italic></p>
        <p>Hence, to prove Theorem 2, we need to show that short augmenting paths (for a suitably chosen <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e119" xlink:type="simple"/></inline-formula>) are solved in a short amount of time. It is useful to consider a particle analogy to understand the process that eliminates short augmenting paths. We consider each unmatched node as a particle. Particles move around the graph from node to node as nodes change their status between matched and unmatched states dictated by the random choices in the algorithm. There are exactly two particles along an augmenting path, situated at the extreme nodes. To understand how an augmenting path gets shorter and eventually vanishes, we consider how the two particles move closer to each other along the path.</p>
        <p>Let <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e120" xlink:type="simple"/></inline-formula> denote a <italic>shortest</italic> augmenting path. If the extreme unmatched node <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e121" xlink:type="simple"/></inline-formula> proposes to <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e122" xlink:type="simple"/></inline-formula> and <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e123" xlink:type="simple"/></inline-formula> accepts the proposal breaking the current match with <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e124" xlink:type="simple"/></inline-formula>, then the particle moves from <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e125" xlink:type="simple"/></inline-formula> to <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e126" xlink:type="simple"/></inline-formula>. A similar argument applies to the other end of the path. Also, the minimality of the path guarantees that the internal nodes do not change their current matching as they have no unmatched neighbor. It follows that the particles become closer to each other and the augmenting path gets shorter. Using this approach, we can prove that with suitable probability the length of the <italic>shortest</italic> augmenting path shrinks after each round. When an augmenting path becomes an edge (that is, a path of length one), and if the extreme unmatched nodes select each other as partners, the particles and the path vanish, yielding an increment to the size of the matching. Hence, a key step of our proof is to lower bound the probability that an augmenting path of length <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e127" xlink:type="simple"/></inline-formula> vanishes, and then to apply Lemma 1 to relate the existing augmenting paths and the matching size.</p>
        <p>We remark that the random process governing the movement of the particles in the network is not a classical random walk over the nodes of the graph. Indeed, if that were the case, a <italic>maximum</italic> matching would always be reached in polynomial time by a simple cat-and-mouse argument. Instead, a random move of a particle depends on the current matching, which in turn changes when the particle moves. This modest difference can lead to an exponential time gap between convergence to an approximate matching and convergence to a maximum matching. Indeed, exploiting the dependence of the particles' movements on the current matching, we show that there is a family of graphs for which the Prudence algorithm takes exponentially many rounds with high probability to reach a maximum matching starting from a set of configurations that cover almost all possible cases. This family of “bad” graphs is defined as follows (see also <xref ref-type="fig" rid="pone-0041900-g007">Figure 7</xref>).</p>
        <fig id="pone-0041900-g007" orientation="portrait" position="float">
          <object-id pub-id-type="doi">10.1371/journal.pone.0041900.g007</object-id>
          <label>Figure 7</label>
          <caption>
            <title>The bad graph.</title>
            <p>The “bad” graph <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e128" xlink:type="simple"/></inline-formula> for <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e129" xlink:type="simple"/></inline-formula>. One of the “bad” matchings of Theorem 3 is highlighted in red.</p>
          </caption>
          <graphic mimetype="image" orientation="portrait" position="float" xlink:href="info:doi/10.1371/journal.pone.0041900.g007" xlink:type="simple"/>
        </fig>
        <p><bold>Definition 1 (Bad graph</bold> <italic>G<sub>n</sub></italic><bold>)</bold> <italic>The bipartite graph</italic> <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e130" xlink:type="simple"/></inline-formula> <italic>has</italic> <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e131" xlink:type="simple"/></inline-formula> <italic>nodes</italic> <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e132" xlink:type="simple"/></inline-formula> <italic>and</italic> <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e133" xlink:type="simple"/></inline-formula>, <italic>and its edges are</italic> <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e134" xlink:type="simple"/></inline-formula>, <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e135" xlink:type="simple"/></inline-formula> <italic>for all</italic> <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e136" xlink:type="simple"/></inline-formula> <italic>and</italic> <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e137" xlink:type="simple"/></inline-formula>, <italic>and</italic> <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e138" xlink:type="simple"/></inline-formula> <italic>for all</italic> <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e139" xlink:type="simple"/></inline-formula> <italic>and</italic> <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e140" xlink:type="simple"/></inline-formula>.</p>
        <p>Note that the set of “horizontal” edges <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e141" xlink:type="simple"/></inline-formula>, for <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e142" xlink:type="simple"/></inline-formula> is the unique perfect matching for <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e143" xlink:type="simple"/></inline-formula>.</p>
        <p><bold>Theorem 3</bold> <italic>The</italic> P<sc>rudence</sc> <italic>algorithm requires</italic> <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e144" xlink:type="simple"/></inline-formula> <italic>many rounds with high probability to reach the perfect matching when starting from any</italic> <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e145" xlink:type="simple"/></inline-formula><italic>-matching in which the two unmatched nodes are in opposite sides of</italic> <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e146" xlink:type="simple"/></inline-formula>.</p>
        <p>The main idea of the proof is to track the positions of the unmatched nodes throughout the course of the algorithm and to lower bound the number of rounds needed before they meet as an adjacent pair.</p>
        <p>We first prove a one-to-one correspondence between the Markov process of the state evolution between matchings and a classical random walk on a tree (represented in <xref ref-type="supplementary-material" rid="pone.0041900.s001">Figure S1</xref>) whose size is exponential in <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e147" xlink:type="simple"/></inline-formula>. We show that this classical random walk takes exponential time to reach the root of the tree starting at any one of its nodes, thus providing a lower bound on the convergence time of the <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e148" xlink:type="simple"/></inline-formula> algorithm.</p>
        <p>We say that a matching <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e149" xlink:type="simple"/></inline-formula> of <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e150" xlink:type="simple"/></inline-formula> of size <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e151" xlink:type="simple"/></inline-formula> is <italic>bad</italic> if the <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e152" xlink:type="simple"/></inline-formula> algorithm requires exponentially many rounds with high probability to converge to the perfect matching when starting from <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e153" xlink:type="simple"/></inline-formula>. Observe that all matchings considered by Theorem 3 are bad. The following theorem states that <italic>almost all</italic> matchings of size <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e154" xlink:type="simple"/></inline-formula> are bad.</p>
        <p><bold>Theorem 4</bold> <italic>The ratio between the number of “bad” matchings and the number of all</italic> <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e155" xlink:type="simple"/></inline-formula><italic>-matchings of</italic> <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e156" xlink:type="simple"/></inline-formula> <italic>is</italic> <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e157" xlink:type="simple"/></inline-formula>.</p>
        <p>Theorems 3 and 4 show that the <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e158" xlink:type="simple"/></inline-formula> algorithm requires exponentially many rounds to converge to the perfect matching of <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e159" xlink:type="simple"/></inline-formula> when starting from a set of configurations (the bad matchings) constituting almost all possible cases (the matchings of size <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e160" xlink:type="simple"/></inline-formula>).</p>
      </sec>
      <sec id="s3b">
        <title>Validation</title>
        <p><xref ref-type="fig" rid="pone-0041900-g003">Figure 3</xref> compares the performance of the human subjects (red) with that of simulations (blue) on a set of 16-node networks (8 bipartite networks and 8 non-bipartite networks) with unique perfect matchings. The networks are sorted by increasing average completion time, and as a result bipartite networks are labeled from 1 to 8, while non-bipartite networks are labeled from 9 to 16. Each of these networks was tested at least 6 times over all sessions. The vertical axis represents the time (in seconds), and the numerical values of the convergence time of the algorithm are scaled by a constant factor to best match the experimental data.</p>
        <p>In an additional experimental session, we tested twenty four subjects connected over small-world, preferential attachment and ring networks as well as over the “bad” graph <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e161" xlink:type="simple"/></inline-formula>. The games on the bad graph were never solved, consistent with the prediction of exponentially slow convergence. Furthermore, we found that preferential attachment networks were more difficult to solve than small-world networks (one-tailed Welch's t-test, <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e162" xlink:type="simple"/></inline-formula>-value <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e163" xlink:type="simple"/></inline-formula>). <xref ref-type="fig" rid="pone-0041900-g004">Figure 4</xref> shows the affinity between humans' (red) and algorithm's (blue) performance, on this set of 24-node networks: small-world networks (triangles), ring network (diamonds), preferential attachment networks (circles). The <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e164" xlink:type="simple"/></inline-formula>-axis shows the indices of the networks sorted by increasing average time to find the perfect matching, and the <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e165" xlink:type="simple"/></inline-formula>-axis shows the average time.</p>
        <p><xref ref-type="fig" rid="pone-0041900-g005">Figure 5</xref> shows, by simulation, that the algorithm scales linearly in the size of the network in the case of small-world networks <xref ref-type="bibr" rid="pone.0041900-Watts1">[13]</xref>, while it scales polynomially for preferential attachment networks <xref ref-type="bibr" rid="pone.0041900-Barabsi1">[11]</xref>, <xref ref-type="bibr" rid="pone.0041900-Bollobs1">[12]</xref>, and exponentially on the “bad” graph <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e166" xlink:type="simple"/></inline-formula>. These results closely resemble the experimental data of the coloring games performed by Kearns et al. <xref ref-type="bibr" rid="pone.0041900-Kearns1">[6]</xref>, where preferential attachment networks resulted in the worst performance among all tested networks, while small-worlds networks appeared to be much easier to solve.</p>
        <p><xref ref-type="fig" rid="pone-0041900-g006">Figure 6</xref> shows the performance of the experimental subjects on networks of <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e167" xlink:type="simple"/></inline-formula> nodes, each admitting a perfect matching. In particular, it reports results for single games, and it compares the time to reach a perfect matching of size <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e168" xlink:type="simple"/></inline-formula> (red), an approximate matching of size <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e169" xlink:type="simple"/></inline-formula> (a <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e170" xlink:type="simple"/></inline-formula>-approximate matching, in blue) and a matching of size <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e171" xlink:type="simple"/></inline-formula> (a <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e172" xlink:type="simple"/></inline-formula>-approximate matching, in green) in each game. The <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e173" xlink:type="simple"/></inline-formula>-axis shows the indexes of the games sorted by increasing solution time, while the <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e174" xlink:type="simple"/></inline-formula>-axis shows time in seconds. The plot shows (consistent with the theoretical analysis) that a <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e175" xlink:type="simple"/></inline-formula>-approximate matching is reached almost immediately in all games, an almost maximum matching is reached quickly, while reaching a perfect matching can take a large amount of time.</p>
      </sec>
    </sec>
    <sec id="s4">
      <title>Discussion</title>
      <p>While it is challenging to characterize the strategies used by humans in performing even simple social tasks, as they may depend on diverse individual cognitive and psychological attitudes, we argue that it is possible to isolate simple behavioral invariants of individual behavior, which are useful for algorithmic modeling, analysis and prediction of collective dynamics of coordination.</p>
      <p>To illustrate our approach, we have focused on a simple matching game over networks and presented a combination of theoretical, experimental, and simulation results. From the experiments, we identified the prudence property as a common behavioral invariant of human subjects when they coordinate to find a maximum matching. We proposed an algorithm as model of human behavior and showed that it can successfully predict dynamics of coordination.</p>
      <p>We have shown that our approach is able to uncover basic behavioral properties that may not be apparent from off-line surveys. Indeed, when subjects were asked to report on their strategies in post-experimental surveys, we obtained a list of diverse strategies, including: choose a partner and never disengage from it, always accept proposals from neighbors, try to change partner if the game is not solved for a while. Moreover, our results demonstrate that algorithmic modeling and the mathematical analysis of algorithms can be useful in systematically predicting the aggregate behavior and in deriving results that hold for any graph, or for a large family of graphs. This general conclusions cannot be derived rigorously form experimental observations and computer simulations.</p>
      <p>Our work suggests further research in several directions. A natural question is whether non-prudent behavior by a subset of the nodes can help. In a preliminary investigation, we have evaluated the performance of a variant of our algorithm where a subset of nodes behave non-prudently with a positive probability. In our simulations, these populations do not offer significant improvement in terms of finding a maximum matching. Furthermore, populations entirely composed of non-prudent nodes seem to perform poorly. In other words, a group of aggressive and risk-taking individuals might not achieve coordination easily.</p>
      <p>Our <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e176" xlink:type="simple"/></inline-formula> algorithm is memoryless. It is an interesting question as to what extent human subjects use memory in distributed games, and how memory could be incorporated in modeling human strategies. In an initial attempt to study this, we implemented a variant of the <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e177" xlink:type="simple"/></inline-formula> algorithm in which a node remembers its recent history and gives less preference to neighbors who recently rejected it. In simulations on preferential attachment and small world networks, memory did not result in significant improvement over the memoryless case. Furthermore, simulations show that making decisions based on events in a distant past (that is, tracking events that happened in a distant past) might hurt performance. A careful investigation of the role of memory in human strategies in distributed games is of fundamental interest.</p>
      <p>Regarding the incentives, in our matching games each subject obtains the same reward when a maximum matching is reached, regardless of the chosen partner. How does the introduction of preferences affect the overall coordination? Preferences could be “enforced” for example by rewarding subjects based on the partners they match with. There is likely to be a trade-off between the collective task of finding a maximum matching and the individual profit maximization.</p>
      <p>As a final remark, the proposed Prudence algorithm constitutes a <italic>possible</italic> reasonable explanation of human coordination behavior in the distributed matching game. Apart from the simple variations mentioned above, we did not test how well other alternative algorithmic models could fit the experimental data.</p>
    </sec>
    <sec id="s5">
      <title>Supporting Information</title>
      <supplementary-material id="pone.0041900.s001" mimetype="image/tiff" orientation="portrait" position="float" xlink:href="info:doi/10.1371/journal.pone.0041900.s001" xlink:type="simple">
        <label>Figure S1</label>
        <caption>
          <p><bold>Tree</bold> <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e178" xlink:type="simple"/></inline-formula><bold>.</bold> Tree <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e179" xlink:type="simple"/></inline-formula> with labels, for <inline-formula><inline-graphic xlink:href="info:doi/10.1371/journal.pone.0041900.e180" xlink:type="simple"/></inline-formula>.</p>
          <p>(TIF)</p>
        </caption>
      </supplementary-material>
      <supplementary-material id="pone.0041900.s002" mimetype="application/pdf" orientation="portrait" position="float" xlink:href="info:doi/10.1371/journal.pone.0041900.s002" xlink:type="simple">
        <label>Text S1</label>
        <caption>
          <p><bold>Technical proofs.</bold> This documents contains the detailed proofs of all technical results presented in the article.</p>
          <p>(PDF)</p>
        </caption>
      </supplementary-material>
    </sec>
  </body>
  <back>
    <ack>
      <p>We would like to thank Devin Barr and Daniel Enemark for helping us with the experiments. We would also like to thank Joel Sobel for his feedback. We are indebted to Stephen Judd and Michael Kearns for allowing us to modify their software for running our experiments.</p>
    </ack>
    <ref-list>
      <title>References</title>
      <ref id="pone.0041900-Simon1">
        <label>1</label>
        <mixed-citation publication-type="other" xlink:type="simple">Simon H, Barnard C (1976) Administrative behavior, volume 3. Cambridge University Press.</mixed-citation>
      </ref>
      <ref id="pone.0041900-Liggett1">
        <label>2</label>
        <mixed-citation publication-type="other" xlink:type="simple">Liggett T (1985) Interacting particle systems, volume 276. Springer Verlag.</mixed-citation>
      </ref>
      <ref id="pone.0041900-Bovier1">
        <label>3</label>
        <mixed-citation publication-type="other" xlink:type="simple">Bovier A (2006) Statistical mechanics of disordered systems: a mathematical perspective, volume 18. Cambridge University Press.</mixed-citation>
      </ref>
      <ref id="pone.0041900-VonNeumann1">
        <label>4</label>
        <mixed-citation publication-type="other" xlink:type="simple">Von Neumann J, Burks A (1966) Theory of self-reproducing automata. University of Illinois Press.</mixed-citation>
      </ref>
      <ref id="pone.0041900-Cook1">
        <label>5</label>
        <mixed-citation publication-type="journal" xlink:type="simple"><name name-style="western"><surname>Cook</surname><given-names>M</given-names></name> (<year>2004</year>) <article-title>Universality in elementary cellular automata</article-title>. <source>Complex Systems</source> <volume>15</volume>: <fpage>1</fpage>–<lpage>40</lpage>.</mixed-citation>
      </ref>
      <ref id="pone.0041900-Kearns1">
        <label>6</label>
        <mixed-citation publication-type="journal" xlink:type="simple"><name name-style="western"><surname>Kearns</surname><given-names>M</given-names></name>, <name name-style="western"><surname>Suri</surname><given-names>S</given-names></name>, <name name-style="western"><surname>Montfort</surname><given-names>N</given-names></name> (<year>2006</year>) <article-title>An experimental study of the coloring problem on human subject networks</article-title>. <source>Science</source> <volume>313</volume>: <fpage>824</fpage>–<lpage>827</lpage>.</mixed-citation>
      </ref>
      <ref id="pone.0041900-Kearns2">
        <label>7</label>
        <mixed-citation publication-type="journal" xlink:type="simple"><name name-style="western"><surname>Kearns</surname><given-names>M</given-names></name>, <name name-style="western"><surname>Judd</surname><given-names>S</given-names></name>, <name name-style="western"><surname>Tan</surname><given-names>J</given-names></name>, <name name-style="western"><surname>Wortman</surname><given-names>J</given-names></name> (<year>2009</year>) <article-title>Behavioral experiments on biased voting in networks</article-title>. <source>Proceedings of the National Academy of Sciences</source> <volume>106</volume>: <fpage>1347</fpage>.</mixed-citation>
      </ref>
      <ref id="pone.0041900-McCubbins1">
        <label>8</label>
        <mixed-citation publication-type="journal" xlink:type="simple"><name name-style="western"><surname>McCubbins</surname><given-names>M</given-names></name>, <name name-style="western"><surname>Paturi</surname><given-names>R</given-names></name>, <name name-style="western"><surname>Weller</surname><given-names>N</given-names></name> (<year>2009</year>) <article-title>Connected coordination network structure and group coordination</article-title>. <source>American Politics Research</source> <volume>37</volume>: <fpage>899</fpage>–<lpage>920</lpage>.</mixed-citation>
      </ref>
      <ref id="pone.0041900-Judd1">
        <label>9</label>
        <mixed-citation publication-type="journal" xlink:type="simple"><name name-style="western"><surname>Judd</surname><given-names>S</given-names></name>, <name name-style="western"><surname>Kearns</surname><given-names>M</given-names></name>, <name name-style="western"><surname>Vorobeychik</surname><given-names>Y</given-names></name> (<year>2010</year>) <article-title>Behavioral dynamics and inuence in networked coloring and consensus</article-title>. <source>Proceedings of the National Academy of Sciences</source> <volume>107</volume>: <fpage>14978</fpage>–<lpage>14982</lpage>.</mixed-citation>
      </ref>
      <ref id="pone.0041900-Enemark1">
        <label>10</label>
        <mixed-citation publication-type="other" xlink:type="simple">Enemark D, McCubbins M, Paturi R, Weller N (2011) Does more connectivity help groups to solve social problems? In: Proceedings of the ACM Conference of Electronic Commerce. pp. 21–27.</mixed-citation>
      </ref>
      <ref id="pone.0041900-Barabsi1">
        <label>11</label>
        <mixed-citation publication-type="journal" xlink:type="simple"><name name-style="western"><surname>Barabási</surname><given-names>A</given-names></name>, <name name-style="western"><surname>Albert</surname><given-names>R</given-names></name> (<year>1999</year>) <article-title>Emergence of scaling in random networks</article-title>. <source>Science</source> <volume>286</volume>: <fpage>509</fpage>–<lpage>512</lpage>.</mixed-citation>
      </ref>
      <ref id="pone.0041900-Bollobs1">
        <label>12</label>
        <mixed-citation publication-type="journal" xlink:type="simple"><name name-style="western"><surname>Bollobás</surname><given-names>B</given-names></name>, <name name-style="western"><surname>Riordan</surname><given-names>O</given-names></name>, <name name-style="western"><surname>Spencer</surname><given-names>J</given-names></name>, <name name-style="western"><surname>Tusnády</surname><given-names>G</given-names></name>, <etal>et al</etal>. (<year>2001</year>) <article-title>The degree sequence of a scale-free random graph process</article-title>. <source>Random Structures &amp; Algorithms</source> <volume>18</volume>: <fpage>279</fpage>–<lpage>290</lpage>.</mixed-citation>
      </ref>
      <ref id="pone.0041900-Watts1">
        <label>13</label>
        <mixed-citation publication-type="journal" xlink:type="simple"><name name-style="western"><surname>Watts</surname><given-names>D</given-names></name>, <name name-style="western"><surname>Strogatz</surname><given-names>S</given-names></name> (<year>1998</year>) <article-title>Collective dynamics of small-worldnetworks</article-title>. <source>Nature</source> <volume>393</volume>: <fpage>440</fpage>–<lpage>442</lpage>.</mixed-citation>
      </ref>
      <ref id="pone.0041900-Pratt1">
        <label>14</label>
        <mixed-citation publication-type="journal" xlink:type="simple"><name name-style="western"><surname>Pratt</surname><given-names>J</given-names></name> (<year>1964</year>) <article-title>Risk aversion in the small and in the large</article-title>. <source>Econometrica: Journal of the Econo-metric Society</source> <fpage>122</fpage>–<lpage>136</lpage>.</mixed-citation>
      </ref>
      <ref id="pone.0041900-Kahneman1">
        <label>15</label>
        <mixed-citation publication-type="journal" xlink:type="simple"><name name-style="western"><surname>Kahneman</surname><given-names>D</given-names></name>, <name name-style="western"><surname>Tversky</surname><given-names>A</given-names></name> (<year>1979</year>) <article-title>Prospect theory: An analysis of decision under risk</article-title>. <source>Econometrica: Journal of the Econometric Society</source> <fpage>263</fpage>–<lpage>291</lpage>.</mixed-citation>
      </ref>
      <ref id="pone.0041900-Montanari1">
        <label>16</label>
        <mixed-citation publication-type="other" xlink:type="simple">Montanari A, Saberi A (2009) Convergence to equilibrium in local interaction games. In: IEEE Symposium on Foundations of Computer Science. IEEE, pp. 303–312.</mixed-citation>
      </ref>
      <ref id="pone.0041900-Judd2">
        <label>17</label>
        <mixed-citation publication-type="journal" xlink:type="simple"><name name-style="western"><surname>Judd</surname><given-names>S</given-names></name>, <name name-style="western"><surname>Kearns</surname><given-names>M</given-names></name>, <name name-style="western"><surname>Vorobeychik</surname><given-names>Y</given-names></name> (<year>2011</year>) <article-title>Behavioral conict and fairness in social networks</article-title>. <source>Internet and Network Economics</source> <fpage>242</fpage>–<lpage>253</lpage>.</mixed-citation>
      </ref>
      <ref id="pone.0041900-Kearns3">
        <label>18</label>
        <mixed-citation publication-type="other" xlink:type="simple">Kearns M, Judd S, Vorobeychik Y (2012) Behavioral experiments on a network formation game. In: Proceedings of the ACM Conference of Electronic Commerce.</mixed-citation>
      </ref>
      <ref id="pone.0041900-Suri1">
        <label>19</label>
        <mixed-citation publication-type="journal" xlink:type="simple"><name name-style="western"><surname>Suri</surname><given-names>S</given-names></name>, <name name-style="western"><surname>Watts</surname><given-names>D</given-names></name> (<year>2011</year>) <article-title>Cooperation and contagion in web-based, networked public goods experi-ments</article-title>. <source>PLoS One</source> <volume>6</volume>: <fpage>e16836</fpage>.</mixed-citation>
      </ref>
      <ref id="pone.0041900-Wang1">
        <label>20</label>
        <mixed-citation publication-type="other" xlink:type="simple">Wang J, Suri S, Watts D (2012) Cooperation and assortativity with endogenous partner selection. In: Proceedings of the ACM Conference of Electronic Commerce.</mixed-citation>
      </ref>
      <ref id="pone.0041900-Brautbar1">
        <label>21</label>
        <mixed-citation publication-type="journal" xlink:type="simple"><name name-style="western"><surname>Brautbar</surname><given-names>M</given-names></name>, <name name-style="western"><surname>Kearns</surname><given-names>M</given-names></name> (<year>2011</year>) <article-title>A clustering coefficient network formation game</article-title>. <source>Algorithmic Game Theory</source> <fpage>224</fpage>–<lpage>235</lpage>.</mixed-citation>
      </ref>
      <ref id="pone.0041900-Goyal1">
        <label>22</label>
        <mixed-citation publication-type="other" xlink:type="simple">Goyal S, Kearns (2012) Competitive contagion in networks. In: Proceedings of the ACM Sympo-sium on Theory Of Computing. pp. 759–774.</mixed-citation>
      </ref>
      <ref id="pone.0041900-Acemoglu1">
        <label>23</label>
        <mixed-citation publication-type="other" xlink:type="simple">Acemoglu D, Ozdaglar A, Yildiz M (2011) Diffusion of innovations in social networks. In: IEEE Conference on Decision and Control. pp. 2329–2334.</mixed-citation>
      </ref>
      <ref id="pone.0041900-Kleinberg1">
        <label>24</label>
        <mixed-citation publication-type="other" xlink:type="simple">Kleinberg J, Raghavan P (2005) Query incentive networks. In: IEEE Symposium on Foundations of Computer Science. pp. 132–141.</mixed-citation>
      </ref>
      <ref id="pone.0041900-Cebrin1">
        <label>25</label>
        <mixed-citation publication-type="other" xlink:type="simple">Cebrián M, Coviello L, Vattani A, Voulgaris P (2012) Finding red balloons with split contracts: robustness to individuals' selfishness. In: Proceedings of the ACM Symposium on Theory Of Computing. pp. 775–788.</mixed-citation>
      </ref>
      <ref id="pone.0041900-Brandt1">
        <label>26</label>
        <mixed-citation publication-type="other" xlink:type="simple">Brandt C, Immorlica N, Kamath G, Kleinberg R (2012) An analysis of one-dimensional schelling segregation. In: STOC. pp. 789–804.</mixed-citation>
      </ref>
      <ref id="pone.0041900-Kanoria1">
        <label>27</label>
        <mixed-citation publication-type="other" xlink:type="simple">Kanoria Y, Bayati M, Borgs C, Chayes J, Montanari A (2011) Fast convergence of natural bar-gaining dynamics in exchange networks. In: ACM-SIAM Symposium on Discrete Algorithms. pp. 1518–1537.</mixed-citation>
      </ref>
      <ref id="pone.0041900-Roth1">
        <label>28</label>
        <mixed-citation publication-type="other" xlink:type="simple">Roth A, Sotomayor M (1992) Two-sided matching: A study in game-theoretic modeling and anal-ysis, volume 18. Cambridge University Press.</mixed-citation>
      </ref>
      <ref id="pone.0041900-Gale1">
        <label>29</label>
        <mixed-citation publication-type="journal" xlink:type="simple"><name name-style="western"><surname>Gale</surname><given-names>D</given-names></name>, <name name-style="western"><surname>Shapley</surname><given-names>L</given-names></name> (<year>1962</year>) <article-title>College admissions and the stability of marriage</article-title>. <source>The American Math-ematical Monthly</source> <volume>69</volume>: <fpage>9</fpage>–<lpage>15</lpage>.</mixed-citation>
      </ref>
      <ref id="pone.0041900-Hatfield1">
        <label>30</label>
        <mixed-citation publication-type="other" xlink:type="simple">Hatfield J, Kominers S (2010) Matching in networks with bilateral contracts. In: Proceedings of the 11th ACM conference on Electronic commerce. ACM, pp. 119–120.</mixed-citation>
      </ref>
      <ref id="pone.0041900-Ashlagi1">
        <label>31</label>
        <mixed-citation publication-type="other" xlink:type="simple">Ashlagi I, Braverman M, Hassidim A (2011) Matching with couples revisited. In: ACM Conference on Electronic Commerce. pp. 335–336.</mixed-citation>
      </ref>
      <ref id="pone.0041900-Hopcroft1">
        <label>32</label>
        <mixed-citation publication-type="other" xlink:type="simple">Hopcroft J, Karp R (1971) A n<sup>5/2</sup> algorithm for maximum matchings in bipartite. In: Switching and Automata Theory, 1971., 12th Annual Symposium on. IEEE, pp. 122–125.</mixed-citation>
      </ref>
      <ref id="pone.0041900-Karp1">
        <label>33</label>
        <mixed-citation publication-type="journal" xlink:type="simple"><name name-style="western"><surname>Karp</surname><given-names>R</given-names></name>, <name name-style="western"><surname>Upfal</surname><given-names>E</given-names></name>, <name name-style="western"><surname>Wigderson</surname><given-names>A</given-names></name> (<year>1986</year>) <article-title>Constructing a perfect matching is in random nc</article-title>. <source>Combi-natorica</source> <volume>6</volume>: <fpage>35</fpage>–<lpage>48</lpage>.</mixed-citation>
      </ref>
      <ref id="pone.0041900-Israeli1">
        <label>34</label>
        <mixed-citation publication-type="journal" xlink:type="simple"><name name-style="western"><surname>Israeli</surname><given-names>A</given-names></name>, <name name-style="western"><surname>Itai</surname><given-names>A</given-names></name> (<year>1986</year>) <article-title>A fast and simple randomized parallel algorithm for maximal matching</article-title>. <source>Information Processing Letters</source> <volume>22</volume>: <fpage>77</fpage>–<lpage>80</lpage>.</mixed-citation>
      </ref>
      <ref id="pone.0041900-Lotker1">
        <label>35</label>
        <mixed-citation publication-type="other" xlink:type="simple">Lotker Z, Patt-Shamir B, Pettie S (2008) Improved distributed approximate matching. In: Pro-ceedings of the ACM symposium on Parallelism in algorithms and architectures. pp. 129–136.</mixed-citation>
      </ref>
      <ref id="pone.0041900-Pettie1">
        <label>36</label>
        <mixed-citation publication-type="journal" xlink:type="simple"><name name-style="western"><surname>Pettie</surname><given-names>S</given-names></name>, <name name-style="western"><surname>Sanders</surname><given-names>P</given-names></name> (<year>2004</year>) <article-title>A simpler linear time 2/3 – <italic>ε</italic> approximation for maximum weight matching</article-title>. <source>Information Processing Letters</source> <volume>91</volume>: <fpage>271</fpage>–<lpage>276</lpage>.</mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>