Rename numAsWt to more appropriate widenInteger.
authorMatt McCutchen <matt@mattmccutchen.net>
Sat, 2 Aug 2008 20:23:07 +0000 (16:23 -0400)
committerMatt McCutchen <matt@mattmccutchen.net>
Sat, 2 Aug 2008 20:23:07 +0000 (16:23 -0400)
program/PMDefaults.hs
program/PMInstance.hs
program/PMInstanceGenerator.hs
program/ProposalMatcher.hs

index 2f4a687..3504e06 100644 (file)
@@ -53,7 +53,7 @@ marginalVeryBoringCost = \lx -> 1000 + lx*1000,
 
 -- Cost to make a review.  Used by the evaluator too.
 -- I'm using quadratic cost functions as a first attempt.
-assignmentCost = \pref -> (numAsWt 10 + pref) ^ 2,
+assignmentCost = \pref -> (widenInteger 10 + pref) ^ 2,
 
 -- Bonus for a first knowledgeable or expert review.
 knowledgeableBonus = 1000,
@@ -75,6 +75,6 @@ topicZipfExponent = -0.5,
 -- its "unhappiness".  Default is [reviewsEachProposal, ..., 1] since it's most
 -- important for the best review to be good.
 reviewEvalWeights = let rep = reviewsEachProposal pmDefaults in
-       map numAsWt [rep, rep-1 .. 1]
+       map widenInteger [rep, rep-1 .. 1]
 
 }
index acb6843..70d7529 100644 (file)
@@ -5,7 +5,7 @@ import ArrayStuff
 import Formatter
 
 type Wt = Double -- Can be any RealFrac.
-numAsWt x = fromInteger (toInteger x)
+widenInteger x = fromInteger (toInteger x)
 
 data PMInstance = PMInstance
        Int                 -- numReviewers
index 0f78b02..4324546 100644 (file)
@@ -35,7 +35,7 @@ data ProposalInfo = ProposalInfo {
 }
 
 randomTopic cfg = withWeight $
-       map (\i -> (numAsWt (i+1) ** topicZipfExponent cfg, return i))
+       map (\i -> (widenInteger (i+1) ** topicZipfExponent cfg, return i))
                [0 .. numTopics cfg - 1]
 
 randomProposalInfo cfg = do
index 96c2c32..d435d67 100644 (file)
@@ -54,7 +54,7 @@ doReduction cfg (PMInstance numRvrs numProps rloadA prefA) =
        let
                totalReviews = (reviewsEachProposal cfg) * numProps
                totalRelativeLoad = foldl (+) 0 (map (rloadA !) [0 .. numRvrs - 1])
-               targetLoad i = ceiling (numAsWt totalReviews * (rloadA ! i) / totalRelativeLoad)
+               targetLoad i = ceiling (widenInteger totalReviews * (rloadA ! i) / totalRelativeLoad)
                -- A...H refer to idea book p.429
                edgesABC = do
                        i <- [0 .. numRvrs - 1]
@@ -62,13 +62,13 @@ doReduction cfg (PMInstance numRvrs numProps rloadA prefA) =
                        let freeEdgeA = (source, rvrNode i 0, REdge undefined tl 0)
                        let nonfreeEdgesA = do
                                l <- [tl .. tl + (loadTolerance cfg) - 1]
-                               let costA = marginalLoadCost cfg ((numAsWt (l - tl) + 1/2) / numAsWt (loadTolerance cfg))
+                               let costA = marginalLoadCost cfg ((widenInteger (l - tl) + 1/2) / widenInteger (loadTolerance cfg))
                                [(source, rvrNode i 0, REdge undefined 1 costA)]
                        let edgesBC = do
                                l <- [0 .. tl + (loadTolerance cfg) - 1]
-                               let costB = marginalBoringCost cfg ((numAsWt l + 1/2) / numAsWt tl)
+                               let costB = marginalBoringCost cfg ((widenInteger l + 1/2) / widenInteger tl)
                                let edgeB = (rvrNode i 0, rvrNode i 1, REdge undefined 1 costB)
-                               let costC = marginalVeryBoringCost cfg ((numAsWt l + 1/2) / numAsWt tl)
+                               let costC = marginalVeryBoringCost cfg ((widenInteger l + 1/2) / widenInteger tl)
                                let edgeC = (rvrNode i 1, rvrNode i 2, REdge undefined 1 costC)
                                [edgeB, edgeC]
                        [freeEdgeA] ++ nonfreeEdgesA ++ edgesBC