diff --git a/jastadd-mquat-solver-ilp/src/main/java/de/tudresden/inf/st/mquat/solving/ilp/AbstractILPTransformer.java b/jastadd-mquat-solver-ilp/src/main/java/de/tudresden/inf/st/mquat/solving/ilp/AbstractILPTransformer.java
index 9be4e39ad54dae666142e8cd0bb8fcbdd182e049..79eeed3d16632e6e30b8e6f254a4f6396c71e298 100644
--- a/jastadd-mquat-solver-ilp/src/main/java/de/tudresden/inf/st/mquat/solving/ilp/AbstractILPTransformer.java
+++ b/jastadd-mquat-solver-ilp/src/main/java/de/tudresden/inf/st/mquat/solving/ilp/AbstractILPTransformer.java
@@ -39,15 +39,18 @@ public class AbstractILPTransformer implements ILPTransformer {
 
     for (int clusterId : clusters.keySet()) {
 
-      ResourceClass resourceClass = new ResourceClass();
-      resourceClass.setName(new Name("class_" + clusterId));
+      if (clusters.get(clusterId).size() > 0) {
+        ResourceClass resourceClass = new ResourceClass();
+        resourceClass.setName(new Name("class_" + clusterId));
 
-      for (Resource resource : clusters.get(clusterId)) {
-        resource.setResourceClassRef(resourceClass.createRef());
-        resourceClass.addResourceRef(resource.createRef());
+        for (Resource resource : clusters.get(clusterId)) {
+          resource.setResourceClassRef(resourceClass.createRef());
+          resourceClass.addResourceRef(resource.createRef());
+        }
+
+        model.getHardwareModel().addResourceClass(resourceClass);
       }
 
-      model.getHardwareModel().addResourceClass(resourceClass);
     }
   }