示例#1
0
        protected override void OnTimePassedEvent(object sender, ExtendedTimePassedEventArgs e)
        {
            if (!e.HasRoundPassed)
            {
                return;
            }

            if (RoundsPassed == 0)
            {
                return;
            }
            else if (RoundsPassed <= 7)
            {
                SendOffer(BestOffer);
            }
            else if (RoundsPassed <= 11)
            {
                CompareOffer(OpponentOffer, false);
                SendOffer(FScoreOffersByUtility[0].Offer);
            }
            else if (RoundsPassed <= 13)
            {
                CompareOffer(OpponentOffer, false);
                SendOffer(FScoreOffersByUtility[1].Offer);
            }
            else
            {
                CompareOffer(OpponentOffer, false);
                SendOffer(FScoreOffersByUtility[2].Offer);
            }
        }
示例#2
0
        protected override void OnTimePassedEvent(object sender, ExtendedTimePassedEventArgs e)
        {
            if (!e.HasRoundPassed && RoundsPassed == 0)
            {
                return;
            }

            if (RoundsPassed < Domain.NumberOfRounds - 1)
            {
                RoundRobinOffer(BestFScoreUtilityOffers.Values, e.RemainingTime);
            }
            else
            {
                RoundRobinOffer(BestCombinedUtilityOffers.Values, e.RemainingTime);
            }
        }
示例#3
0
        protected override void OnTimePassedEvent(object sender, ExtendedTimePassedEventArgs e)
        {
            if (!e.HasRoundPassed)
            {
                return;
            }

            if (RoundsPassed == 0)
            {
                return;
            }
            else
            {
                SendOffer(BestOffer);
            }
        }
示例#4
0
        protected override void OnTimePassedEvent(object sender, ExtendedTimePassedEventArgs e)
        {
            if (!e.HasRoundPassed && RoundsPassed != Domain.NumberOfRounds - 1)
            {
                return;
            }

            if (RoundsPassed == 0)
            {
                return;
            }
            else if (RoundsPassed < Domain.NumberOfRounds - 1)
            {
                CompareOffer(OpponentOffer, false);
                SendOffer(BestFScoreUtilityOffers.Values.ElementAt(RoundsPassed % BestFScoreUtilityOffers.Count).Offer);
            }
            else
            {
                RoundRobinOffer(BestCombinedUtilityOffers.Values, e.RemainingTime);
            }
        }