Пример #1
0
        public void Initialize(NegotiationDomain domain, SideConfig strategyConfig, String opponentSide, INegotiationClient client)
        {
            Client = client;

            client.OfferReceivedEvent    += client_OfferReceivedEvent;
            client.NegotiationEndedEvent += client_NegotiationEndedEvent;
        }
Пример #2
0
        public virtual void Initialize(NegotiationDomain domain, SideConfig strategyConfig, String opponentSide, INegotiationClient client)
        {
            Domain         = domain;
            StrategyConfig = strategyConfig;
            Client         = client;
            OpponentSide   = opponentSide;

            Client.NegotiationStartedEvent    += OnNegotiationStartedEvent;
            Client.NegotiationEndedEvent      += OnNegotiationEndedEvent;
            Client.OfferReceivedEvent         += OnOfferReceivedEventInner;
            Client.TimePassedEvent            += OnTimePassedEventInner;
            Client.OpponentAcceptedOfferEvent += OnOpponentAcceptedOfferEvent;

            CalculateOffers();
        }
Пример #3
0
        public override void Initialize(NegotiationDomain domain, SideConfig strategyConfig, string opponentSide, INegotiationClient client)
        {
            if (domain.NumberOfRounds != 15)
            {
                throw new ArgumentException("This strategy has been optimized for 15 rounds", "domain");
            }

            if (domain.OwnerVariantDict[opponentSide].Keys.Count != 3)
            {
                throw new ArgumentException("This strategy has been optimized for 3 opponent variants", "domain");
            }

            base.Initialize(domain, strategyConfig, opponentSide, client);

            FScoreOffersByUtility = BestFScoreUtilityOffers.Values.OrderByDescending(x => x.Utility).ToList();
        }