[TOC]
This changelog contains a non-exhaustive list of new features and notable bug-fixes (not all bug-fixes will be listed).
- HiGHS solver is added for open-source alternative to Gurobi (which is now not necessary for compilation and can be enabled by necessary flags).
- Command line interface is added.
- Documentation is improved (Doxygen website).
- Sakoe-Chiba band implementation is now more accurate.
- Replaced
VecMatrix<data_t>class witharma::Mat<data_t>.
- Required C++ standard is reduced from C++20 to C++17 as it was causing
call to consteval function 'std::chrono::hh_mm_ss::_S_fractional_width' is not a constant expressionerror for clang versions older than clang-15. OpenMPfor parallelisation is adopted asApple-clangdoes not supportstd::execution.
- The software is now being tested via Catch2 library.
- Dependabot is added.
CURRENT_ROOT_FOLDERandDTWC_ROOT_FOLDERare seperated as DTW-C++ library can be included by other libraries.
- UCR_test_2018 data integration for benchmarking.
- N/A
- DataLoader class is added for data reading.
settings::resultsPathis changed without_foldermember variable to have more flexibility.get_namefunction added to removesettings::writeAsFileNamesrepetition)std::filesystem::path operator+was unnecessary and removed.
A user interface is created for other people's use.
- Scores file with silhouette score is added.
dtwFull_L(L = light) is added for reducing memory requirements substantially.
- Problem class for a better interface.
mip.hppandmip.cppfiles are created to contain MIP functions.
- Gurobi better path finding in macOS.
- TBB could not be used in macOS so it is now option with alternative thread-based parallelisation.
- Time was showing wrong on macOS with std::clock. Therefore, moved to chrono library.
- Include a clang-format file.
- Required C++ standard is upgraded from C++17 to C++20.
This is the initial release of DTWC.
- Iterative algortihms for K-means and K-medoids
- Mixed-integer programming solution support via YALMIP/MATLAB.
- Support for
*.csvfiles generated by Pandas.
- A compiler with C++17 support.
- We require at least CMake 3.16.