Understanding QLCBOs

Like QUBOs, QLCBO problems serve as fundamental building blocks for more complex optimization models that can address many real-world problems and are one of the primary types of problems that can be solved by Dirac entropy quantum computing systems. This module will start with a basic introduction to QLBCOs and then provide tutorials for more complex forms of optimization based off of QLBCOs.

Module Outline

  1. QLCBO on Dirac

  2. Portfolio Optimization

  3. Quadratic Assignment Problem

  4. Feature Selection

  5. Travelling Salesperson

  6. Set Partitioning

Module Overview

1. QLCBO on Dirac

This tutorial is an overview of Quadratic Linearly Constrained Binary Optimization (or QLCBO), which is a method for optimizing functions that include quadratic terms and linear constraints.

2. Portfolio Optimization

This tutorial presents a method of portfolio optimization for creating an equal-weighted optimal portfolio by selecting a subset of stocks from a pool based on minimizing portfolio risk while maximizing expected return. It outlines the methodology, including the formulation of the optimization problem with binary variables representing stock inclusion/exclusion and constraints on the number of selected stocks.

3. Quadratic Assignment Problem

This tutorial introduces the Quadratic Assignment Problem (QAP), which aims to minimize a cost function based on fixed quantities and distances between pairs of sets, where each member of one set is assigned to one member of another set. It provides a simple example with synthetic data illustrating planned material flow between facilities, distances between locations, and the cost of building facilities at different locations.

4. Feature Selection on Dirac

This tutorial outlines a feature selection approach focusing on minimizing inter-correlation among features. It introduces the need for feature selection in machine learning problems due to large feature sets, and elucidates the method's underlying principles and constraints. Subsequently, it provides practical application steps, demonstrated using public Medicare prescription data, including data cleaning and feature generation.

5. Traveling Salesperson on Dirac

This tutorial introduces the Traveling Salesperson Problem (TSP) and then delves into the implementation on QCi's Dirac hardware. The process walks through importing necessary libraries, generating random points, formulating the TSP objective function, creating constraint and objective files for optimization, setting up a client for QCi API interaction, uploading files, executing the job, and ultimately visualizing the solution.

6. Set Partitioning on Dirac

This tutorial introduces the Set Partitioning Problem (SPP) as an optimization problem aimed at selecting sets from a collection such that each member is included in exactly one of the selected sets. Applications of SPP range from logistics to manufacturing and scheduling. Formulation involves creating constraints ensuring each member belongs to only one selected set and an objective function measuring the cost or benefit of selecting certain sets.


After completing this module, you should be equipped to create and execute QLCBOs and other optimization problems that are based on the QLCBO formulations. If you haven't already, next visit our module on Understanding QUBOs.