Giter Site home page Giter Site logo

wooodhead / csplib Goto Github PK

View Code? Open in Web Editor NEW

This project forked from csplib/csplib

0.0 2.0 0.0 12.66 MB

A benchmark library for constraints

Home Page: csplib.org

TeX 14.17% Makefile 0.14% Prolog 31.37% Python 16.67% Common Lisp 8.02% C 1.02% C++ 5.78% HTML 3.06% Scala 4.06% C# 4.19% Java 3.45% GCC Machine Description 1.79% AMPL 3.14% Perl 0.19% Shell 1.06% CSS 1.53% JavaScript 0.18% Batchfile 0.19%

csplib's Introduction

Requires Python 3.3+, (Python 3.4+ on windows)

To build a local copy of csplib to view locally type:

make        # Builds CSPLib to the _deploy directory
make serve  # Starts a local web server to view the files
<open localhost:8000 in your browser>

To add a new problem use new_problem.sh to create a basic outline.

Problem Specification

Each problem is stored in the Problems directory. The best way to get a feeling for how a problem is stored is to look at an existing problem (Problem/prob001 is a good start).

Each problem is built from the following parts:

  • specification.md - The basic description of the problem. This will contain a title, proposer, category, and an English description of the problem. This is technically all that is required.

  • references - This directory contains the references, usually in references.bib file as bibtex.

  • models, data and results - The models, data and results directories store models of the problem, data files and any known results. The exact structure of these is described below.

The assets/ directory will be copied but not automatically linked to. Use this directory for files, such as images, which are linked to from specification.md

specification.md

The specification needs to start with a Title, Proposer and Category in the following format:

---
Title:    Magic Hexagon
Proposer: Toby Walsh
Category:
    - Design and configuration
    - Combinatorial mathematics
    - Games and puzzles
---

If the Proposer or Category have multiple values, they are put on a new line as shown above.

The rest of the specification is written in markdown. References from the references section can be cited using the notation cite{bibref}.

References

References are stored in the references directory. The file references.bib should contain references in standard BibTeX format. Any text in the file notes.inline.md will be listed at the top of the references page.

A problem can be referenced using its id, [prob058] will be shown hyperlinked as [prob058]. {prob058} will shown hyperlinked as Discrete Lot Sizing Problem

Languages can also be referenced e.g. [Minion]

Models, data and results directories

Each of these directories are handled in the same way.

Files can be added to these directories by simply placing the file in the appropriate directory. Human readable files are displayed in place, binary files are given a download link. If any file is incorrectly identified as binary or human readable, please submit a bug report!

You can describe a file file.txt in a file file.txt.metadata. This can contain a Title, and a Type. The file should be formatted as follows:

---
Title: This describes the data file
Type: The type
---

In general, Type is only useful for models and data.

You can also use files with the extension .inline.md which will be displayed inline directly in the results/references/model tab. See problem prob013 for an example of all these types of files.

Language Specification

Languages are stored in the Languages directory. Languages do not store the models, data and results, these are stored with the problems and linked from the languages.

specification.md for Languages

The specification of languages is similar to problems, with a simpler design. Languages should contain a title, and (single or list of) extensions:

---
Title: MiniZinc
Extensions:
    - mzn
    - minizinc
---

The extensions will be matched against the file extensions, or Type contained in all models, data and results of all problems.

Website building scripts

An overview of the architecture used to build csplib can be found at internal/readme.md.

Development builds

Development builds of every branch and pull requests are located at http://csplib.github.io/csplib-builds/

The master (main) branch has a vanity url as well for convenience: http://git.io/csplib

csplib's People

Contributors

9thbit avatar andreina-francisco avatar arnaud-m avatar atm7 avatar bilalh avatar ccoffrin avatar chrisjefferson avatar cmears avatar guidotack avatar hakank avatar hsimonis avatar ianjmiguel avatar jnmonette avatar jschimpf avatar justinkennethpearson avatar lokdlok avatar ozgurakgun avatar panayiotis avatar paulbuis avatar pesantgilles avatar ratheilesse avatar siala avatar turingfan avatar vale1410 avatar wetterj avatar

Watchers

 avatar  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.