Closed lisv closed 3 years ago
Update
ResponsesFitnessClustering uses agglomerative clustering to calculate the fitness for individuals
A hashmap is kept that contains the keys of the responseObject and the corresponding values of AgglomerativeClustering objects.
Clusters are thus created per response object structure (the JSONObject keys in the response). The values corresponding to the keys are put in a feature vector and the feature vectors are then clustered based on similarity metrics (defined for strings and numbers, also for booleans but this is not used/redundant).
To take into account the depth of values (e.g. if a JSONObject A contains some values, of which one is another JSONObject B, the values of JSONObject A should be more important for the dissimilarity than the values of JSONObject B), I implemented a weightVector that contains weights corresponding to the values in the featureVector.
Following the meeting on the 8th of March