import java.util.Random; public class CSPInstanceGenerator { int numberOfVariables; int numberOfTrueVariables; int numberOfConstraints; int relationNumber; public void readArguments(String[] args){ //populate the arguments from the command line boolean usage=false; if(args.length<3){ //Print how to use notes usage = true; }else{ try{ numberOfVariables = Integer.parseInt(args[0]); numberOfTrueVariables = Integer.parseInt(args[1]); numberOfConstraints = Integer.parseInt(args[2]); relationNumber = Integer.parseInt(args[3]); }catch(Exception ex){ usage = true; } } if(usage){ //Print how to use notes System.out.println("Usage: CSPInstanceGenerator NumberOfVars NumberOfTrueVars #OfConstraints Relation#"); System.exit(1); } } public String createInstance(){ //print the header StringBuffer sb = new StringBuffer(); sb.append("p "+numberOfConstraints+" "+numberOfVariables+"\n"); Random random = new Random(); for(int i=0;i