Giter VIP home page Giter VIP logo

pairwise's Introduction

Pairwise

Pairwise is a tool for generating configurations using pairwise algorithm with weights.

Installation

  1. Clone this repo and change to cloned directory.
  2. Install pipenv using pip: pip install pipenv
  3. Install required packages: pipenv install

Usage

Usage of this tool is very simple.

First you need json file with parameters. e.g. parameters.json

{
  "Parameters": {
    "P1": ["a", "b"],
    "P2": [1, 2],
    "P3": ["x", "y"]
  }
}

Then you can run it as pipenv run pairwise parameters.json

You must always run it from the root directory (/path/to/repository/Pairwise).

As output you get generated configurations:

 1: ['a', 2, 'y']
 2: ['a', 1, 'x']
 3: ['b', 1, 'y']
 4: ['b', 2, 'x']

You can also set weights for each parameter. e.g.

{
  "Parameters": {
    "P1": ["a", "b"],
    "P2": [1, 2],
    "P3": ["x", "y"]
  },
  "Weights": {
    "a": 1,
    "x": 2
  }
}

Weight represents the ratio in which you want to parameters appear in generated configuratations. Default weight for each parameter is 1.

Additionally, you can use some of the available options:

  • --output {file.csv} creates csv file with generated configurations
  • --margin {float} margin of weights, some wiggle room for weight representation in generated configurations (default: 0.05)
  • --count prints how many times was each parameter used during configuration generation

e.g. pipenv run pairwise --output configurations.csv --margin 0.04 --count parameters.json

pairwise's People

Contributors

jaurbanrh avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.