Esempio n. 1
0
        public static void leapOverride(AutoStatePredictor destination, AutoStatePredictor original, Random rdm, double intensity)
        {
            destination.reset();
            //Copy original to destination
            original.table.CopyTo(destination.table, 0);

            destination.trainingDepth = original.trainingDepth + 1;

            //Choose the number of changes to make to the original based on intensity
            //not very optimal
            int changeCount = rdm.Next(2 + (int)(original.table.Length * intensity));

            destination.lastLeapCount = changeCount;

            //Make changes
            int index;

            for (int i = 0; i < changeCount; i++)
            {
                //Choose random table index for change
                index = rdm.Next(destination.table.Length);

                //Check if index is prediction image or state image
                destination.table[index] = (byte)rdm.Next(destination.symbolSize); //New random prediction at index
            }

            destination.computeStateTransitionsTable();
        }
Esempio n. 2
0
        public static void randomOverride(AutoStatePredictor destination, Random rdm)
        {
            destination.reset();
            destination.trainingDepth = 0;


            for (int i = 0; i < destination.table.Length; i++)
            {
                destination.table[i] = (byte)rdm.Next(destination.symbolSize); //New random prediction at index
            }

            destination.computeStateTransitionsTable();
        }