}
uint convertSize(uint cost) {
- cost = 1.2 * cost;// fudge factor
+ cost = FUDGEFACTOR * cost;// fudge factor
return NEXTPOW2(cost);
}
totalCost = (newSize - leftSize) * leftGraph->numElements +
(newSize - rightSize) * rightGraph->numElements;
}
- double conversionfactor = 0.5;
- if ((totalCost * conversionfactor) < eeValue) {
+
+ if ((totalCost * CONVERSIONFACTOR) < eeValue) {
//add the edge
mergeNodes(left, right);
}
#include "structs.h"
#include "graphstructs.h"
+#define FUDGEFACTOR 1.2
+#define CONVERSIONFACTOR 0.5
+
class EncodingGraph {
public:
EncodingGraph(CSolver *solver);
C port of CNF SAT Conversion Copyright Brian Demsky 2017.
*/
-#define LITCAPACITY 4
-#define MERGESIZE 5
VectorImpl(LitVector, LitVector *, 4)
This->litSize = litSize;
}
-#define MERGETHRESHOLD 2
+
LitVector *mergeLitVectors(LitVector *This, LitVector *expr) {
uint maxsize = This->size + expr->size + MERGETHRESHOLD;
LitVector *merged = (LitVector *)ourmalloc(sizeof(LitVector));
#include "vector.h"
typedef int Literal;
+#define LITCAPACITY 4
+#define MERGESIZE 5
+#define MERGETHRESHOLD 2
struct LitVector {
void naiveEncodingElement(Element *This) {
ElementEncoding *encoding = This->getElementEncoding();
if (encoding->getElementEncodingType() == ELEM_UNASSIGNED) {
- if(This->type != ELEMCONST)
+ if(This->type != ELEMCONST){
model_print("INFO: naive encoder is making the decision about element %p....\n", This);
+ }
encoding->setElementEncodingType(BINARYINDEX);
encoding->encodingArrayInitialization();
}
SearchTuner *AutoTuner::mutateTuner(SearchTuner *oldTuner, uint k) {
SearchTuner *newTuner = oldTuner->copyUsed();
uint numSettings = oldTuner->getSize();
- double factor = 0.3;//Adjust this factor...
- uint settingsToMutate = (uint)(factor * (((double)numSettings) * (budget - k)) / (budget));
+ uint settingsToMutate = (uint)(AUTOTUNERFACTOR * (((double)numSettings) * (budget - k)) / (budget));
if (settingsToMutate < 1)
settingsToMutate = 1;
model_print("Mutating %u settings\n", settingsToMutate);
#include "classlist.h"
#include "structs.h"
+#define AUTOTUNERFACTOR 0.3
+
+
class AutoTuner {
public:
AutoTuner(uint budget);
randomSetting->selectedValue = randomchoice;
else
randomSetting->selectedValue = randomchoice + 1;
+ model_print("&&&&&&&&Mutating&&&&&&&\n");
+ randomSetting->print();
+ model_print("&&&&&&&&&&&&&&&&&&&&&&&\n");
}
void SearchTuner::print() {