edu.neu.ccs.assignment
Class AssignmentUtil

java.lang.Object
  extended by edu.neu.ccs.assignment.AssignmentUtil

public class AssignmentUtil
extends java.lang.Object

Class for generating best assignment and performing operations on it.

It uses Greedy approach for finding best assignment. For each variable present in the raw material:

  1. Find E[Z[F(x=0)]]
  2. Find E[Z[F(x=1)]]
  3. Compare the above two values and pick max of the above two
  4. Set value of x in the raw material to the one that came out to be max by taking shannon cofactor

Author:
Charu Chandra and Wu Jiang

Constructor Summary
AssignmentUtil()
           
 
Method Summary
static gen.Assignment findAssignment(gen.RawMaterial rawMaterial)
          Finds the best assignment for the given raw material
static gen.Assignment findAssignment(java.lang.String rawMaterial)
          Finds the best assignment for the given raw material
static double findQuality(gen.RawMaterial rawMaterial, gen.Assignment assign)
          Calculates the quality of assignment for the input raw material.
static double findQuality(java.lang.String rawMaterial, gen.Assignment assign)
          Calculates the quality of assignment for the input raw material.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

AssignmentUtil

public AssignmentUtil()
Method Detail

findAssignment

public static gen.Assignment findAssignment(java.lang.String rawMaterial)
                                     throws java.lang.Exception
Finds the best assignment for the given raw material

Parameters:
rawMaterial - raw material in form of String
Returns:
best assignment as Assignment object
Throws:
java.lang.Exception - Any exception occurred during finding an assignment

findAssignment

public static gen.Assignment findAssignment(gen.RawMaterial rawMaterial)
                                     throws java.lang.Exception
Finds the best assignment for the given raw material

Parameters:
rawMaterial - raw material in form of RawMaterial
Returns:
best assignment as Assignment object
Throws:
java.lang.Exception - Any exception occurred during finding an assignment

findQuality

public static double findQuality(java.lang.String rawMaterial,
                                 gen.Assignment assign)
                          throws java.lang.Exception
Calculates the quality of assignment for the input raw material.

Parameters:
rawMaterial - in form of String
assign - in form of Assignment object
Returns:
quality achieved by the assignment
Throws:
java.lang.Exception - Any exception produced during calculation

findQuality

public static double findQuality(gen.RawMaterial rawMaterial,
                                 gen.Assignment assign)
                          throws java.lang.Exception
Calculates the quality of assignment for the input raw material.

Parameters:
rawMaterial - in form of RawMaterial object
assign - in form of Assignment object
Returns:
quality achieved by the assignment
Throws:
java.lang.Exception - Any exception produced during calculation