Exemple #1
0
        protected override void onInstanceActivated(ConceptInstance instance, BeamGenerator generator)
        {
            var activations = generator.GetInstanceActivations();

            foreach (var relevantInstanceActivation in activations)
            {
                if (!relevantInstanceActivation.CanBeReferenced)
                {
                    continue;
                }

                var relevantInstance = relevantInstanceActivation.Instance;
                if (relevantInstance == instance)
                {
                    //dont reference self
                    continue;
                }

                //try tunnel instances between turns
                generator.Push(new StaticScoreEvent(0.05));
                generator.Push(new InstanceReferencedEvent(relevantInstance));
                generator.Pop();
                generator.Pop();
            }
        }