Package ise.mace.participants

Examples of ise.mace.participants.PublicGroupDataModel


      {
        Set<String> Groups = PublicEnvironmentConnection.getInstance().getGroups();

        for (String GroupId : Groups)
        {
          PublicGroupDataModel Group = PublicEnvironmentConnection.getInstance().getGroupById(
                  GroupId);

          if (!Group.getPanel().isEmpty())
          {
            for (String LeaderId : Group.getPanel())
            {
              //drawLeader
              float hue = getGroupColour(GroupId);
              g.setColor(Color.getHSBColor(hue, 1, 1));
              if (p_players.get(LeaderId) != null)
View Full Code Here


    Iterator<String> iter = active_agent_ids.iterator();
    PublicEnvironmentConnection ec = PublicEnvironmentConnection.getInstance();
    while (iter.hasNext())
    {
      String groupID = iter.next();
      PublicGroupDataModel dm = ec.getGroupById(groupID);
      Map<String, List<Tuple<Double, Double>>> loansGiven = PoliticalGroup.getLoansGiven(
              dm);
      double totalAmountGiven = 0;
      if (loansGiven != null)
      {
        for (String debtors : loansGiven.keySet())
        {
          //if (ec.getGroupById(debtors) == null) break;
          double amountBorrowed = 0;
          for (Tuple<Double, Double> t : loansGiven.get(debtors))
          {
            amountBorrowed += t.getKey() * (1 + t.getValue());
          }
          totalAmountGiven += amountBorrowed;
        }
      }
      Map<String, List<Tuple<Double, Double>>> loansTaken = PoliticalGroup.getLoansTaken(
              dm);
      double totalAmountTaken = 0;
      if (loansTaken != null)
      {
        for (String creditors : loansTaken.keySet())
        {
          //if (ec.getGroupById(creditors) == null) break;
          double amountBorrowed = 0;
          for (Tuple<Double, Double> t : loansTaken.get(creditors))
          {
            amountBorrowed += t.getKey() * (1 + t.getValue());
          }
          totalAmountTaken += amountBorrowed;
        }
      }
      double averageHappiness = 0;
      for (String member : dm.getMemberList())
      {
        averageHappiness += ec.getAgentById(member).getCurrentHappiness();
      }
      averageHappiness = averageHappiness / dm.getMemberList().size();
      String spaces = "                               ";
      data.add(dm.getName()
              + spaces + Math.round(dm.getCurrentReservedFood())
              + spaces + Math.round(totalAmountGiven)
              + spaces + Math.round(totalAmountTaken)
              + spaces + averageHappiness
              + spaces + PoliticalGroup.getGreediness(dm));
    }
View Full Code Here

   * @param none
   * @return none
   */
  protected void checkToEvict()
  {
    PublicGroupDataModel myGroup = getConn().getGroupById(
            getDataModel().getGroupId());

    //Used when agent is about to issue the command to leave the group of only himself and another,
    //it searches for the other agent and tells it leave the group as well
    if (myGroup == null) return;

    if (myGroup.getMemberList().size() == 2)
    {
      for (String member : myGroup.getMemberList())
      {
        //look for the other member of this group to kick out into free agent mode
        if (!member.equals(getDataModel().getId()))
          membersToKickOut.add(member);
      }
View Full Code Here

    g.drawLine(0, rect.height / 2, rect.width, rect.height / 2);

    // Draw agents
    for (String group : PublicEnvironmentConnection.getInstance().getGroups())
    {
      PublicGroupDataModel dm = ec.getGroupById(group);
      double size = 2 * Math.sqrt((double)dm.size());
      logger.log(Level.INFO, "{0} [{1}] '{'{2},{3},{4}'}'", new Object[]
              {
                group,
                dm.getName(), dm.getCurrentEconomicPoisition(),
                dm.getEstimatedSocialLocation(), dm.size()
              });
      drawAgent(g, dm.getEstimatedSocialLocation(),
              dm.getCurrentEconomicPoisition(), (int)size, dm.getName());
    }

  }
View Full Code Here

  private void getGroupRoundData()
  {

    for (Map.Entry<String, PublicGroupDataModel> entry : trackedGroups.entrySet())
    {
      PublicGroupDataModel group = entry.getValue();
      try
      {

        if (loans)
        {
          double averageHappiness = 0;
          for (String member : group.getMemberList())
          {
            averageHappiness += ec.getAgentById(member).getCurrentHappiness();
          }
          averageHappiness = averageHappiness / group.getMemberList().size();
          wrap.loanGroupRound(groupIdMap.get(entry.getKey()), round, group,
                  averageHappiness);
        }
        else wrap.groupRound(groupIdMap.get(entry.getKey()), round, group);
      }
      catch (NullPointerException ex)
      {
        logger.log(Level.WARNING,
                "Null Exception: For group {0} for round {1}.Ex:{2}"
                + " ", new Object[]
                {
                  group.getName(), round, ex
                });
      }
    }

View Full Code Here

   * @param none
   * @return none
   */
  protected void checkToEvict()
  {
    PublicGroupDataModel myGroup = getConn().getGroupById(
            getDataModel().getGroupId());

    //Used when agent is about to issue the command to leave the group of only himself and another,
    //it searches for the other agent and tells it leave the group as well
    if (myGroup == null) return;

    if (myGroup.getMemberList().size() == 2)
    {
      for (String member : myGroup.getMemberList())
      {
        //look for the other member of this group to kick out into free agent mode
        if (!member.equals(getDataModel().getId()))
          membersToKickOut.add(member);
      }
View Full Code Here

               
    Iterator<String> iter = active_agent_ids.iterator();               
    while (iter.hasNext())
    {
      String groupID = iter.next();
      PublicGroupDataModel dm = ec.getGroupById(groupID);
      Map<String, List<Tuple<Double, Double>>> loansGiven = LoansGroup.getLoansGiven(
              dm);
      double totalAmountGiven = 0;
      if (loansGiven != null)
      {
        for (String debtors : loansGiven.keySet())
        {
          //if (ec.getGroupById(debtors) == null) break;
          double amountBorrowed = 0;
          for (Tuple<Double, Double> t : loansGiven.get(debtors))
          {
            amountBorrowed += t.getKey() * (1 + t.getValue());
          }
          totalAmountGiven += amountBorrowed;
        }
      }
      Map<String, List<Tuple<Double, Double>>> loansTaken = LoansGroup.getLoansTaken(
              dm);
      double totalAmountTaken = 0;
      if (loansTaken != null)
      {
        for (String creditors : loansTaken.keySet())
        {
          //if (ec.getGroupById(creditors) == null) break;
          double amountBorrowed = 0;
          for (Tuple<Double, Double> t : loansTaken.get(creditors))
          {
            amountBorrowed += t.getKey() * (1 + t.getValue());
          }
          totalAmountTaken += amountBorrowed;
        }
      }
      double averageHappiness = 0;
      for (String member : dm.getMemberList())
      {
        averageHappiness += ec.getAgentById(member).getCurrentHappiness();
      }
      averageHappiness = averageHappiness / dm.getMemberList().size();
      String spaces = "                               ";
      data.add(dm.getName()
              + spaces + Math.round(dm.getCurrentReservedFood())
              + spaces + Math.round(totalAmountGiven)
              + spaces + Math.round(totalAmountTaken)
              + spaces + averageHappiness
              + spaces + LoansGroup.getGreediness(dm));
    }
View Full Code Here

TOP

Related Classes of ise.mace.participants.PublicGroupDataModel

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.