Skip to content

firefly-cpp/uARMSolver

Repository files navigation

uARMSolver - universal Association Rule Mining Solver

AUR package Fedora package DOI

Description 📋

The framework is written fully in C++ and runs on all platforms. 🖥️ It allows users to preprocess their data in a transaction database, to make discretization of data, to search for association rules and to guide a presentation/visualization of the best rules found using external tools. 📊 As opposed to the existing software packages or frameworks, this also supports numerical and real-valued types of attributes besides the categorical ones. Mining the association rules is defined as an optimization and solved using the nature-inspired algorithms that can be incorporated easily. 🌿 Because the algorithms normally discover a huge amount of association rules, the framework enables a modular inclusion of so-called visual guiders for extracting the knowledge hidden in data, and visualize these using external tools. 🔍

Compiling 🛠️

make

Installation 📦

To install uARMSolver on Fedora, use:

$ dnf install uARMSolver

To install uARMSolver on RHEL, CentOS, Scientific Linux enable EPEL 8 and use:

$ dnf install uARMSolver

To install uARMSolver on Arch-based distributions, please use an AUR helper:

$ yay -Syyu uarmsolver

To install uARMSolver on Alpine Linux, please enable Community repository and use:

$ apk add uarmsolver

To install uARMSolver on Windows, please follow to the following instructions.

Run example 🚀

./uARMSolver -s arm.set

arm.set is a problem definition file. Check README for more details about the format of .set file.

Docker Container 🐳

If you prefer to use a Docker container for running uARMSolver, you can use the uarmsolver-container repository. This repository provides a Docker setup for running uARMSolver.

uARMSolver Container 📦

The uarmsolver-container repository contains a Docker container setup for running uARMSolver. You can find it here: uarmsolver-container on Codeberg.

To build and run the Docker container, follow the instructions in the uarmsolver-container README.

Reference Papers (software is based on ideas from):

[1] I. Fister Jr., A. Iglesias, A. Gálvez, J. Del Ser, E. Osaba, I Fister. Differential evolution for association rule mining using categorical and numerical attributes In: Intelligent data engineering and automated learning - IDEAL 2018, pp. 79-88, 2018.

[2] I. Fister Jr., I Fister. Information cartography in association rule mining. arXiv preprint arXiv:2003.00348, 2020.

[3] I. Fister Jr., V. Podgorelec, I. Fister. Improved Nature-Inspired Algorithms for Numeric Association Rule Mining. In: Vasant P., Zelinka I., Weber GW. (eds) Intelligent Computing and Optimization. ICO 2020. Advances in Intelligent Systems and Computing, vol 1324. Springer, Cham.

Contributors

Iztok Fister, Iztok Fister Jr.

License

This package is distributed under the MIT License. This license can be found online at http://www.opensource.org/licenses/MIT.

Disclaimer

This framework is provided as-is, and there are no guarantees that it fits your purposes or that it is bug-free. Use it at your own risk!

Cite us

I. Fister, I Fister Jr. uARMSolver: A framework for Association Rule Mining. arXiv preprint arXiv:2010.10884, 2020.