diff --git a/jastadd-mquat-eris/src/main/java/de/tudresden/inf/st/mquat/eris/ErisMQuATBuilder.java b/jastadd-mquat-eris/src/main/java/de/tudresden/inf/st/mquat/eris/ErisMQuATBuilder.java
index f8c09160869e9fdfc25254953eabee1013883cbe..1eb82ab5b9765717724e5f6ace3fce0bb16ca240 100644
--- a/jastadd-mquat-eris/src/main/java/de/tudresden/inf/st/mquat/eris/ErisMQuATBuilder.java
+++ b/jastadd-mquat-eris/src/main/java/de/tudresden/inf/st/mquat/eris/ErisMQuATBuilder.java
@@ -5,7 +5,6 @@ import de.tudresden.inf.st.mquat.jastadd.model.*;
 import org.apache.logging.log4j.LogManager;
 import org.apache.logging.log4j.Logger;
 
-import java.util.Collections;
 import java.util.HashMap;
 import java.util.Map;
 
@@ -16,7 +15,6 @@ public class ErisMQuATBuilder {
 
   static Root createModel(ErisModel erisModel) {
 
-
     Root root = new Root();
 
     // set the objective property runtime
@@ -46,10 +44,10 @@ public class ErisMQuATBuilder {
     accessPath.addProperty(indexOrderPreserving);
 
     // add energy benchmark properties
-    Map<Integer,Property> insertProperties = new HashMap<>();
-    Map<Integer,Property> linkProperties = new HashMap<>();
-    Map<Integer,Property> lookupProperties = new HashMap<>();
-    Map<Integer,Property> scanProperties = new HashMap<>();
+    Map<Integer, Property> insertProperties = new HashMap<>();
+    Map<Integer, Property> linkProperties = new HashMap<>();
+    Map<Integer, Property> lookupProperties = new HashMap<>();
+    Map<Integer, Property> scanProperties = new HashMap<>();
     for (ERISBenchmarkResult result : erisModel.getErisAccessPaths().get(0).getResultList()) {
       int size = result.getDataSize();
       insertProperties.put(size, new Property(new Name("insertTime" + size), "ms"));
@@ -100,7 +98,7 @@ public class ErisMQuATBuilder {
       );
 
       // add all the attribute stat values
-      for (ERISBenchmarkResult benchmarkResult: erisAccessPath.getResultList()) {
+      for (ERISBenchmarkResult benchmarkResult : erisAccessPath.getResultList()) {
         Property insertProperty = insertProperties.get(benchmarkResult.getDataSize());
         multiResource.addCurrentResourceValue(
             new CurrentResourceValue(insertProperty.createRef(), new LiteralExpression(benchmarkResult.getInsert()))
@@ -142,13 +140,13 @@ public class ErisMQuATBuilder {
           // create a new top-level software component
 
           Component component = new Component();
-          component.setName(new Name("Component" + createName(erisContainer, erisLivingPartition, attribute)));
+          component.setName(new Name(createName(erisContainer, erisLivingPartition, attribute)));
 
 
           Implementation implementation = new Implementation();
           implementation.setName(new Name("accessPathSelector"));
 
-          Instance accessPathInstance =new Instance(new Name("accessPath"));
+          Instance accessPathInstance = new Instance(new Name("accessPath"));
 
           ResourceRequirement resourceRequirement = new ResourceRequirement();
           resourceRequirement.addInstance(accessPathInstance);
@@ -184,16 +182,25 @@ public class ErisMQuATBuilder {
 
           int num_lookups = attStats.getLookups();
           int num_inserts = attStats.getInserts();
-          int num_scans   = attStats.getScans();
-          int num_links   = attStats.getLinks();
-          int att_count   = attStats.getCount();
+          int num_scans = attStats.getScans();
+          int num_links = attStats.getLinks();
+          int att_count = attStats.getCount();
 
           // get the correct size
-          int lookupsize = (int)Math.ceil(Math.pow(2,Math.ceil(Math.log(att_count))));
+          int lookupsize = 0;
+          int dist = Integer.MAX_VALUE;
+          for (Integer i: lookupProperties.keySet()) {
+            logger.info(i);
+            if (Math.abs(att_count-i) < dist) {
+              dist = Math.abs(att_count-i);
+              lookupsize = i;
+            }
+          }
+
           MultExpression loopups = new MultExpression(new LiteralExpression(num_lookups), new PropertyResourceDesignator(accessPathInstance.createRef(), lookupProperties.get(lookupsize).createRef()));
           MultExpression inserts = new MultExpression(new LiteralExpression(num_inserts), new PropertyResourceDesignator(accessPathInstance.createRef(), insertProperties.get(lookupsize).createRef()));
-          MultExpression scans   = new MultExpression(new LiteralExpression(num_scans),   new PropertyResourceDesignator(accessPathInstance.createRef(), scanProperties.get(lookupsize).createRef()));
-          MultExpression links   = new MultExpression(new LiteralExpression(num_links),   new PropertyResourceDesignator(accessPathInstance.createRef(), linkProperties.get(lookupsize).createRef()));
+          MultExpression scans = new MultExpression(new LiteralExpression(num_scans), new PropertyResourceDesignator(accessPathInstance.createRef(), scanProperties.get(lookupsize).createRef()));
+          MultExpression links = new MultExpression(new LiteralExpression(num_links), new PropertyResourceDesignator(accessPathInstance.createRef(), linkProperties.get(lookupsize).createRef()));
 
           AddExpression expression = new AddExpression(loopups, new AddExpression(inserts, new AddExpression(scans, links)));
 
@@ -226,7 +233,7 @@ public class ErisMQuATBuilder {
 
   private static String createName(ERISContainer container, ERISLivingPartition partition, ERISAttribute attribute) {
     // TODO use ID instead of name for attribute if possible
-    return "_Container" + container.getId() + "_Node" + partition.getNodeId() + "_LP" + partition.getLocalId() + "_Attribute" + attribute.getId();
+    return "Container" + container.getId() + "_Node" + partition.getNodeId() + "_LP" + partition.getLocalId() + "_Attribute" + attribute.getId() + "_" + attribute.getName();
   }
 
 }