mining

Version, currently master branch1 version
  • master branchlatestDec 31, 2021

github.com/w-wieczorek/mining

The source code for "Minimum query set for decision tree construction"

0 stars
0 dependents
License: MIT

Installation

# Add this to your shard.yml
dependencies:
  mining:
    github: w-wieczorek/mining
    branch: master

master is a branch, not a release, so this tracks it rather than pinning a version.

Then run:

shards install

shard.yml

Crystal
1.1.1
License
MIT
Author
Wojciech Wieczorek
Target
  • mining from src/mining.cr

Dependencies

This version declares no dependencies.

README

mining

This is the implementation of an algorithm for the genaration of decision trees from csv databases. Please read and cite the following article:

Minimum Query Set for Decision Tree Construction, Entropy 2021, 23(12), 1682; https://doi.org/10.3390/e23121682

Our program uses Gurobi Optimizer, at least 9.1.2, which is a powerful mathematical programming solver available for LP and MIP problems (free for academic purposes).

The language of implementation is Crystal and we tested the program under Ubuntu 20.04.3 LTS operating system.

Installation and usage

  1. Install the LP solver as descibed on the page Gurobi for Academics and Researchers.

  2. Clone our repository:

    git clone https://github.com/w-wieczorek/mining.git
  3. Find the source file mining.cr and change the first line by puting there a correct path (for linux version - gurobi912/linux64/lib) to libgurobi91.so file.

  4. Build and run the code:

    cd mining
    crystal build --no-debug --release src/mining.cr
    ./mining

Contributing

  1. Fork it (https://github.com/w-wieczorek/mining/fork)
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create a new Pull Request

Contributors