No project description provided
Project description
PACE 2024 Verifier
This package can be used to verify a given solution against a set of crossing counting algorithms. For more information check the pace website.
Installation
Install the verifier from pip:
$ pip install pace2024-verifier
Usage
Verifier
To verify a solution use the following command:
$ pace2024verify <path/to/graph.gr> <path/to/solution.sol>
The verifiery has three different methods for verification usable via the switches:
- --segtree = Use a segment tree to count the crossings.
[default] - --interleave = Count the crossings by checking for each pair of edges if they interleave.
- --stacklike = Count the crossings by checking how many pairs are out of order in a one-sided book embedding.
There is also the option to only print the number of crossings via -c/--only-crossings.
Tester
To test a solver against a set of tests use:
$ pace2024tester <solver>
where <solver> has to be an executable. So if for example you run your solver via a shell-script solver.sh run the command $ pace2024tester solver.sh. The solver will then be run using the tiny test set. The instances and solutions of this set are included with the verifier. To add your own tests create a folder mytests containing a subfolder instances and a subfolder <solutions>. You can then run
$ pace2024tester --test <path/to/mytests> <solver>
and the tester will check the solver against this test set. You can also suppply multiple test sets via
$ pace2024tester --test <path/to/mytests1> --test <path/to/mytests2> <solver>
For each instance in an instances folder we match it to the same-named file in the solutions folder. The provided solver is then executed on each instance and the pace2024verifier is used to check the results. If you do not want to use the tiny test set you can switch it off using:
$ pace2024tester --no-tiny --test <path/to/mytests1> --test <path/to/mytests2> <solver>
By default the tester assumes that the solver uses files for input and output and calls it as:
$ <solver> path/to/input path/to/output
If you prefer using stdin or stdout use the following switches:
- --instanceas file/stdin = provide the input file as a path to the
fileor onstdin - --solutionas file/stdout = expect the output to be written to a
fileor onstdout
For solution files the tester creates temporary file using the tempdir library of python. All created files are deleted by this library after execution.
Finally, for easier parsable output you can use the flag:
- --only-compare/-c which prints only the line
Testing now <instancename>...followed by the string<crossingssolver>,<crossingssolution>.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file pace2024_verifier-0.3.8.tar.gz.
File metadata
- Download URL: pace2024_verifier-0.3.8.tar.gz
- Upload date:
- Size: 10.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.7.1 CPython/3.11.6 Linux/6.6.8-arch1-1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7253514a1f46ba13d3d4b89358aaa0791e9c35a5daabf75c955d1429408b18b2
|
|
| MD5 |
9e94259c3615d54ca16f3a45bd1c445b
|
|
| BLAKE2b-256 |
c2576670ce3662cb28ad791b4fbdcffd3d277d269a49bd23b63f882e2b5ffa2d
|
File details
Details for the file pace2024_verifier-0.3.8-py3-none-any.whl.
File metadata
- Download URL: pace2024_verifier-0.3.8-py3-none-any.whl
- Upload date:
- Size: 16.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.7.1 CPython/3.11.6 Linux/6.6.8-arch1-1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
58d19fae9eecee83b3e06898b12a20c839d394d5fa83c04c116adb31c15a1963
|
|
| MD5 |
4687c360e187f87b8c1a39a3a9d7c3cd
|
|
| BLAKE2b-256 |
93c8ccf4a0a223d7e3c432a7e8804c803b669bb782f5c583a6610be49d29d50d
|