# ELKI 0.5.0 release notes

## Primary release goals

- Cluster evaluation: metrics and circle-segment-visualization (ICDE 2012, see Examples/ClusterEvaluation)
- Outlier detection ensembles (SDM 2011, 2012, see Examples/GreedyEnsemble)
- Usability improvements, for example by adding an automatic evaluation helper
- Performance improvements by reducing boxing of primitive types (see DBID API for details)
- Parallel coordinates visualizations added for high-dimensional data

## Additional improvements

### Algorithms

- K-means variants, including: Lloyd and MacQueen iteration, k-Medians and k-medoids (PAM)
- Various k-means/k-medians initializations, including k-means++
- aLOCI (fast approximation of LOCI)
- HilOut (fast approximation of KNNWeightOutlier)
- OUTRES outlier detection
- OutRank outlier detection
- HiCS: high-contrast subspaces for outlier detection (ICDE 2012)
- Generalized DBSCAN

### Distance functions

- Add Canberra distance
- Add Jeffrey divergence distance
- More distance functions implement the spatial distance function API, and can thus use R-Trees for accelerated queries.

### Index layer

- additional split strategies for RStarTree
- Ang-Tan linear split
- Greene’s split
- Guttman linear and quadratic splits
- additional bulk loading strategies
- Sort-Tile-Recursive
- Sort by X
- Native file order
- Space filling curve bulk splits: Z-Curve, Peano Curve and Hilbert curve and KD-Tree style binary splits
- optional: no reinsertions (so you get a regular RTree instead of an R*-Tree)
- VAFile and partial VA file (both in-memory only for now)

### Evaluation

- Most clustering similarity measures (BCubed, Rand, ARI, Mutual Information, Entropy, Edit, …)
- More outlier evaluation measures (ROC, P/R curves, Average-Precision curves, SmROC curves)
- Automatic Evaluation, disable via
`-evaluator NoAutomaticEvaluation`

.

### Visualizations

- Alpha shapes
- Voronoi cells for 2D K-means
- Cluster stars for mean-models (k-means, EM)
- Parallel coordinates

### Applications

- Cluster similarity visualization, from ICDE 2012 (see Examples/ClusterEvaluation)
- Greedy Ensemble for Outlier Detection, from SDM 2012 (see Examples/GreedyEnsemble)

### Other

- Improved support for sparse vectors. Note the need to apply the SparseVectorFieldFilter for many algorithms (that assume a fixed dimensionality vector field! For more details, see HowTo/SparseData
- Improved error logging (less exceptions lost, shorter stacktraces)
- Robustness improvements
- Use GNU Trove primitive collections for further speedups.
- DBID API changes, for performance improvements.
- No longer include PDF/PS/EPS support in
`elki.jar`

(add Apache FOP to your classpath to enable!)