Problem Types#

Quantum Launcher provides definitions and conversions to different models for a set of common combinatorial problems.

from quantum_launcher.problems import MaxCut,EC,QATM,JSSP,TSP, GraphColoring
import os

Max Cut#

mc = MaxCut.from_preset('default')
mc.visualize()
../_images/cda74f7e0aad4212c975ac116e3c8ec87b9fe8d92e31b8476c5ee68242b7c029.png

Exact Cover#

ec = EC.from_preset('toy')
ec.visualize()
../_images/fc419a9eb1fcce5ab5ae04e213cd517448b89d7d683b16694a7511024c374c5f.png

Travelling Salesman#

tsp = TSP.from_preset('default')
tsp.visualize()
../_images/c0fc01b49b29aa92d37e55cfdcba01c9377b481fb25f7b94274a4848460f2666.png

Graph Coloring#

gc = GraphColoring.from_preset('small')
gc.visualize()
../_images/404551123f25faca5cfd3c0d3ee612d1a1b94090d1308b581decd30c9ff0b0c1.png

Air Traffic Management#

filepath = os.path.abspath('./../../data/qatm/')
atm = QATM.from_file(filepath,'RCP_3.txt')

print("Collisions")
print(atm.instance['cm'])
print()
print("Aircraft manouvers")
print(atm.instance['aircrafts'])
Collisions
[[1. 0. 1. 0. 0. 0.]
 [0. 1. 0. 0. 0. 1.]
 [1. 0. 1. 0. 1. 0.]
 [0. 0. 0. 1. 0. 0.]
 [0. 0. 1. 0. 1. 0.]
 [0. 1. 0. 0. 0. 1.]]

Aircraft manouvers
  manouver aircraft
0       A0       A0
1       A1       A1
2       A2       A2
3  A0_a=10       A0
4  A1_a=10       A1
5  A2_a=10       A2

Job Shop Scheduling#

jssp = JSSP.from_preset('toy',onehot="quadratic",max_time=10)
jssp.instance
---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
Cell In[7], line 1
----> 1 jssp = JSSP.from_preset('toy',onehot="quadratic",max_time=10)
      2 jssp.instance

File /builds/quantum/psnc-sdk/launcher/quantum_launcher/problems/problem_initialization/jssp.py:70, in JSSP.from_preset(instance_name, **kwargs)
     67     case _:
     68         raise ValueError(f"Instance {instance_name} does not exist choose instance_name from the following: ('toy')")
---> 70 return JSSP(max_time=max_time, instance=instance, instance_name=instance_name, **kwargs)

TypeError: quantum_launcher.problems.problem_initialization.jssp.JSSP() got multiple values for keyword argument 'max_time'