public static int deductConstraintsViolatedScore(
Dictionary<Models.Group, Dictionary<Models.Station,
HillClimbingAlgorithm.StationAssignmentRange>> groupStationVisitRange)
{
int numConstraintsViolated = 0;
foreach (var group in groupStationVisitRange)
{
foreach (var station in group.Value)
{
//must check if numVisits is not equal to zero or null here
if (station.Value.numVisits > 0 || station.Value.numVisits < 0)
numConstraintsViolated += Math.Abs((int)station.Value.numVisits);
}
}
return (numConstraintsViolated * -500);
}