Пример #1
0
 def sample(self, ignored):
   if self.cummulatives is None:
       self.calculateCummulatives()
   rand = random.random()
   #print "DiscreteDistribution.sample.random" + str(rand)
   #print "DiscreteDistribution.sample.cummulative" + str(self.cummulatives)
   temp = ABAGAILArrays()
   result = temp.search(self.cummulatives, rand)
  # print "DiscreteDistribution.sample.search.result" + str(result)
   return Instance(val = result)  
Пример #2
0
print "Route:"
path = []
for x in range(0,N):
    path.append(ga.getOptimal().getDiscrete(x))
print path


# for mimic we use a sort encoding
ef = TravelingSalesmanSortEvaluationFunction(points);
fill = [N] * N
ranges = list(array('i', fill))
odd = DiscreteUniformDistribution(ranges);
df = DiscreteDependencyTree(.1, ranges); 
pop = GenericProbabilisticOptimizationProblem(ef, odd, df);

mimic = MIMIC(500, 100, pop)
fit = FixedIterationTrainer(mimic, 1000)
fit.train()
print "MIMIC Inverse of Distance: " + str(ef.value(mimic.getOptimal()))
print "Route:"
path = []
optimal = mimic.getOptimal()
fill = [0] * optimal.size()
ddata = list(array('d', fill))
for i in range(0,len(ddata)):
    ddata[i] = optimal.getContinuous(i)
temp = ABAGAILArrays()
order = temp.indices(optimal.size())
temp.quicksort(ddata, order)
print order
 def sample(self, ignored):
    temp = ABAGAILArrays()
    d  = temp.dindices(self.n)
    temp.permute(d)
    return Instance(ds = d)