1 #include "../base/partitionevaluation.h"
2 #include "../base/combinedevaluation.h"
3 #include "../base/proxygenerator.h"
28 virtual double partitioncost(std::vector<std::vector<T*> >
const &partitioning)
const;
37 virtual double partitioncost(std::vector<T*>
const &partition)
const;
55 std::vector<T> proxies;
56 size_t n = partitioning.size();
57 for(
size_t i = 0; i < n; i++)
59 proxies.push_back(generator->generate(partitioning[i]));
61 return evaluation->combinedcost(partitioning, proxies);
66 std::vector<std::vector<T*> > partitioning = partitionProvider.
clustering(solutionIndex);
68 std::vector<T> proxies;
69 size_t n = partitioning.size();
70 for(
size_t i = 0; i < n; i++)
72 proxies.push_back(generator->generate(partitioning[i]));
74 return evaluation->combinedcost(partitioning, proxies);
79 return evaluation->combinedcost(partition, generator->generate(partition));
84 std::vector<T*> partition = partitionProvider.
cluster(solutionIndex, partitionIndex);
85 return evaluation->combinedcost(partition, generator->generate(partition));
CombinedEvaluation< T > const *const evaluation
ProxyGenerator< T > const *const generator
virtual std::vector< T * > cluster(unsigned int solutionIndex, unsigned int partitionIndex) const =0
Returns a vector of pointers to the elements of a particular cluster from the specified clustering...
Abstract class. Proxy based evaluation algorithms may be optimized by deriving from this class...
CombinedToPartitionEvaluationWrapper(CombinedEvaluation< T > const *evaluation, ProxyGenerator< T > const *generator)
Provide a CombinedEvaluation and a suitable ProxyGenerator.
Abstract base class for mechanisms that compute a proxy or representative object for a given set of o...
virtual double partitioncost(std::vector< std::vector< T * > > const &partitioning) const
See wrapped class's combinedcost() documentation.
virtual std::vector< std::vector< T * > > clustering(unsigned int solutionIndex) const =0
Returns the specified clustering as a vector of vector of pointers to the elements.
Abstract class for partition-based evaluation algorithms.
Abstract base class to access results of partition based clustering algorithms.
Wraps CombinedEvaluation into PartitionEvaluation by using a ProxGenerator instance.