Пример #1
0
    def resetPopulation(self):

        for node in self.__leafNode:
            #bestCell = node.getBest()
            node.resetAgent()
            #node.addToPocket(bestCell)
        for node in self.__fatherNode:
            #bestCell = node.getBest()
            node.resetAgent()
            #node.addToPocket(bestCell)

        #bestCell = self.__rootNode.getBest()
        #self.__rootNode.resetAgent()
        #self.__rootNode.addToPocket(bestCell)

        if self.__isKB:
            #gene = Gene()
            #gene.randomCellKB(len(self.__ligand.branchSegment), self.__searchSpace, self.__ligand.anglesArray, self.__kbProb)
            #gene = self.calculates(gene)
            #self.__rootNode.addToPocket(copy.deepcopy(gene))

            for n in range(len(self.__fatherNode)):
                gene = Gene()
                gene.randomCellKB(len(self.__ligand.branchSegment),
                                  self.__searchSpace,
                                  self.__ligand.anglesArray, self.__kbProb)
                gene = self.calculatesInit(gene)
                self.__fatherNode[n].addToPocket(gene)  #cpyflag
            for n in range(len(self.__leafNode)):
                gene = Gene()
                gene.randomCellKB(len(self.__ligand.branchSegment),
                                  self.__searchSpace,
                                  self.__ligand.anglesArray, self.__kbProb)
                gene = self.calculatesInit(gene)
                self.__leafNode[n].addToPocket(gene)  #cpyflag
        else:
            #gene = Gene()
            #gene.randomCell(len(self.__ligand.branchSegment), self.__searchSpace)
            #gene = self.calculates(gene)
            #self.__rootNode.addToPocket(copy.deepcopy(gene))

            for n in range(len(self.__fatherNode)):
                gene = Gene()
                gene.randomCell(len(self.__ligand.branchSegment),
                                self.__searchSpace)
                gene = self.calculatesInit(gene)
                self.__fatherNode[n].addToPocket(gene)  #cpyflag
            for n in range(len(self.__leafNode)):
                gene = Gene()
                gene.randomCell(len(self.__ligand.branchSegment),
                                self.__searchSpace)
                gene = self.calculatesInit(gene)
                self.__leafNode[n].addToPocket(gene)  #cpyflag
Пример #2
0
	def resetPopulation(self):
		for node in self.__leafNode:
			bestCell = node.getBest()
			node.resetAgent()
			node.addToPocket(bestCell)
		for node in self.__fatherNode:
			bestCell = node.getBest()
			node.resetAgent()
			node.addToPocket(bestCell)
		bestCell = self.__rootNode.getBest()
		self.__rootNode.resetAgent()
		self.__rootNode.addToPocket(bestCell)

		gene = Gene()
		gene.randomCell(len(self.__ligand.branchSegment), self.__searchSpace)
		gene = self.calculates(gene)
		self.__rootNode.addToPocket(copy.deepcopy(gene))

		for n in range(len(self.__fatherNode)):
			gene = Gene()
			gene.randomCell(len(self.__ligand.branchSegment), self.__searchSpace)
			gene = self.calculates(gene)
			self.__fatherNode[n].addToPocket(copy.deepcopy(gene))
		for n in range(len(self.__leafNode)):
			gene = Gene()
			gene.randomCell(len(self.__ligand.branchSegment), self.__searchSpace)
			gene = self.calculates(gene)
			self.__leafNode[n].addToPocket(copy.deepcopy(gene))
Пример #3
0
 def initPopulation(self, first=True):
     if self.__isKB:
         gene = Gene()
         gene.randomCellKB(len(self.__ligand.branchSegment),
                           self.__searchSpace, self.__ligand.anglesArray,
                           self.__kbProb)
         gene = self.calculatesInit(gene)
         self.__rootNode.addToPocket(gene)  #flag cpy
         for n in range(len(self.__fatherNode)):
             gene = Gene()
             gene.randomCellKB(len(self.__ligand.branchSegment),
                               self.__searchSpace,
                               self.__ligand.anglesArray, self.__kbProb)
             gene = self.calculatesInit(gene)
             self.__fatherNode[n].addToPocket(gene)  #flag cpy
         for n in range(len(self.__leafNode)):
             gene = Gene()
             gene.randomCellKB(len(self.__ligand.branchSegment),
                               self.__searchSpace,
                               self.__ligand.anglesArray, self.__kbProb)
             gene = self.calculatesInit(gene)
             self.__leafNode[n].addToPocket(gene)  #flag cpy
         if first:
             self.initLog()
     else:
         gene = Gene()
         gene.randomCell(len(self.__ligand.branchSegment),
                         self.__searchSpace)
         gene = self.calculatesInit(gene)
         self.__rootNode.addToPocket(gene)  #flag cpy
         for n in range(len(self.__fatherNode)):
             gene = Gene()
             gene.randomCell(len(self.__ligand.branchSegment),
                             self.__searchSpace)
             gene = self.calculatesInit(gene)
             self.__fatherNode[n].addToPocket(gene)  #flag cpy
         for n in range(len(self.__leafNode)):
             gene = Gene()
             gene.randomCell(len(self.__ligand.branchSegment),
                             self.__searchSpace)
             gene = self.calculatesInit(gene)
             self.__leafNode[n].addToPocket(gene)  #flag cpy
         if first:
             self.initLog()