Example #1
0
        /// <summary>
        /// Construtor
        /// </summary>
        /// <param name="funcao"></param>
        /// <param name="saida"></param>
        public Molecule(int funcao, ParameterMolecule saida)
        {
            _function = funcao;

            _function   = 10;
            _input      = null;
            _levelsBack = 0;
            _output     = saida;
        }
Example #2
0
        /// <summary>
        /// Construtor
        /// </summary>
        /// <param name="funcao"></param>
        /// <param name="saida"></param>
        public Molecule(int funcao, ParameterMolecule saida)
        {
            _function = funcao;

            _function = 10;
            _input = null;
            _levelsBack = 0;
            _output = saida;
        }
Example #3
0
 /// <summary>
 /// 
 /// </summary>
 /// <param name="funcao">5 - INV,  6 - AND,  7 - XOR , 8 - OR, 9 - ADD, 10 - INPUT, 11 - OUTPUT</param>
 /// <param name="entrada">Caso Seja um "INPUT", passar null, do mais, passar as entradas que estao sendo recebidas</param>
 /// <param name="saida"></param>
 public Molecule(int funcao, int[] entrada, ParameterMolecule saida)
 {
     _function = funcao;
     if (entrada == null)
         _function = 10;
     else
         _input = (int[])entrada;
     _output = saida;
 }
Example #4
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="funcao">5 - INV,  6 - AND,  7 - XOR , 8 - OR, 9 - ADD, 10 - INPUT, 11 - OUTPUT</param>
 /// <param name="entrada">Caso Seja um "INPUT", passar null, do mais, passar as entradas que estao sendo recebidas</param>
 /// <param name="saida"></param>
 public Molecule(int funcao, int[] entrada, ParameterMolecule saida)
 {
     _function = funcao;
     if (entrada == null)
     {
         _function = 10;
     }
     else
     {
         _input = (int[])entrada;
     }
     _output = saida;
 }
Example #5
0
        /// <summary>
        /// Cartesian  Genetic Programming
        /// </summary>
        /// <param name="n"> Linhas de moleculas </param>
        /// <param name="m"> Colunas de Moleculas </param>
        /// <param name="w"> Tamanho do dado (data width) </param>
        /// <param name="p"> Quantidade de nos intermediarios (level back parameter) (Geralmente, numero de colunas -1 )</param>
        public CGP(int n, int m, int w, int p, int[] genotype, ParameterMolecule[] output, ParameterMolecule[] input)
        {
            _genotype = genotype;
            _digitalCircuit = new Molecule[n, m];
            _input = input;
            _output = output;
            linha = n;
            coluna = m;
            palavra = w;

            //Instanciando a matriz que representa o circuito genericamente
            for (int i = 0; i < m; i++)
            {
                for (int j = 0; j < n; j++)
                {
                    //Contador ID é por coluna
                    _digitalCircuit[j, i] = new Molecule(6, new int[w], new ParameterMolecule(((linha * 4) + j + (i * linha)), false));
                }
            }
            //Constroi o Circuito a partir do GENE Passado
            BuilCircuitFromGene();
        }