Git Product home page Git Product logo

nagyistge / qbsolv Goto Github PK

View Code? Open in Web Editor NEW

This project forked from dwavesystems/qbsolv

0.0 2.0 0.0 18.89 MB

qbsolv is a metaheuristic or partitioning solver that solves a potentially large quadratic unconstrained binary optimization (QUBO) problem by splitting it into pieces that are solved either on a D-Wave system or via a classical tabu solver.

License: Apache License 2.0

Makefile 0.66% C 73.51% Shell 7.75% C++ 18.08%

qbsolv's Introduction

README.txt file for qbsolv 

This directory contains the following files and directories:
- README.txt: 		this file
- License:	        A copy of the Apache License Version 2.0
- src:		        Source directory of the qbsolv program with Makefile
			that creates a binary read and solve "QUBO" files
- example:		Directory of example(s) application(s) using qbsolv
			as a solver
- tests:		Directory of scripts and qubo(s) to test qbsolv
- contrib.txt:		Instructions for potential contributors

qbsolv (qb for qubo, solv for solve )

	qbsolv -i infile [-o outfile] [-m] [-T] [-n] [-S SubMatrix] [-w] 
		[-h] [-v verbosityLevel] [-V] [-q]

DESCRIPTION 
	qbsolv executes a quadratic unconstrained binary optimization 
	(QUBO) problem represented in a file, providing bit-vector 
	result(s) that minimizes (or optionally, maximizes) the value of 
	the objective function represented by the QUBO.  The problem is 
	represented in the QUBO(5) file format and notably is not limited 
	to the size or connectivity pattern of the D-Wave system on which 
	it will be executed. 
		The options are as follows: 
	-i infile 
		The name of the file in which the input QUBO resides.  This 
		is a required option. 
	-o outfile 
		This optional argument denotes the name of the file to 
		which the output will be written.  The default is the 
		standard output. 
	-m 
		This optional argument denotes to find the maximum instead 
		of the minimum. 
	-T target 
		This optional argument denotes to stop execution when the 
		target value of the objective function is found. 
	-t timeout 
		This optional argument stops execution when the elapsed 
		cpu time equals or exceeds timeout value. Timeout is only checked 
		after completion of the main loop. Other halt values 
		such as 'target' and 'repeats' will halt before 'timeout'.
		The default value is 2592000.0.
	-n repeats 
		This optional argument denotes, once a new optimal value is 
		found, to repeat the main loop of the algorithm this number
		of times with no change in optimal value before stopping.  
		The default value is 50. 
	-S subproblemSize 
		This optional argument indicates the size of the sub-
		problems into which the QUBO will be decomposed.  A 
		subproblem size of 0 (the default) indicates to use the 
		size known by qbsolv to be most effective for the D-Wave 
		system targeted for execution.  A subproblem size greater 
		than zero indicates to use the given size and execute with 
		qbsolvs internal classical tabu solver rather than using 
		the D-Wave system. 
	-w 
		If present, this optional argument will print the QUBO 
		matrix and result in .csv format. 
	-h 
		If present, this optional argument will print the help or 
		usage message for qbsolv and exit without execution. 
	-v verbosityLevel 
		This optional argument denotes the verbosity of output. A 
		verbosityLevel of 0 (the default) will output the number of 
		bits in the solution, the solution, and the energy of the 
		solution.  A verbosityLevel of 1 will output the same 
		information for multiple solutions, if found. A 
		verbosityLevel of 2 will also output more detailed 
		information at each step of the algorithm.   
	-V 
		If present, this optional argument will emit the version 
		number of the qbsolv program and exit without execution. 
	-q 
		If present, this optional argument triggers printing the 
		format of the QUBO file.
	-r seed 
		Used to reset the seed for the random number generation 

qbsolv's People

Contributors

mwbooth avatar adam-douglass avatar darthfudd avatar matthewrobertmason avatar extrowerk avatar noelniles 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.