weekdaze-0.0.0.3: A school-timetable problem-solver.

Safe HaskellNone
LanguageHaskell2010

WeekDaze.ExecutionConfiguration.ExecutionOptions

Contents

Description

AUTHOR
Dr. Alistair Ward
DESCRIPTION
Defines the data which drives the solution-mechanism, as opposed to that which either defines the problem or describes the presentation of the solution.
Synopsis

Types

Type-synonyms

type RandomSeed = Int Source #

A seed from which to construct a pseudo-random number-generator.

type PermitTemporaryStudentBodyMerger = Bool Source #

Whether to permit student-bodies to be temporarily merged for a lesson.

type ReduceStudentBodyRegister = Bool Source #

Whether to automatically merge student-bodies with identical profiles.

type RemoveRedundantCourses = Bool Source #

Whether to remove courses for which there's zero demand.

Data-types

data ExecutionOptions criterionWeight fecundityDecayRatio populationDiversityRatio Source #

Encapsulates the data which drives the implementation.

Constructors

MkExecutionOptions 

Fields

Instances
(Eq fecundityDecayRatio, Eq populationDiversityRatio, Eq criterionWeight) => Eq (ExecutionOptions criterionWeight fecundityDecayRatio populationDiversityRatio) Source # 
Instance details

Defined in WeekDaze.ExecutionConfiguration.ExecutionOptions

Methods

(==) :: ExecutionOptions criterionWeight fecundityDecayRatio populationDiversityRatio -> ExecutionOptions criterionWeight fecundityDecayRatio populationDiversityRatio -> Bool #

(/=) :: ExecutionOptions criterionWeight fecundityDecayRatio populationDiversityRatio -> ExecutionOptions criterionWeight fecundityDecayRatio populationDiversityRatio -> Bool #

(Show fecundityDecayRatio, Show populationDiversityRatio, Show criterionWeight) => Show (ExecutionOptions criterionWeight fecundityDecayRatio populationDiversityRatio) Source # 
Instance details

Defined in WeekDaze.ExecutionConfiguration.ExecutionOptions

Methods

showsPrec :: Int -> ExecutionOptions criterionWeight fecundityDecayRatio populationDiversityRatio -> ShowS #

show :: ExecutionOptions criterionWeight fecundityDecayRatio populationDiversityRatio -> String #

showList :: [ExecutionOptions criterionWeight fecundityDecayRatio populationDiversityRatio] -> ShowS #

(NFData criterionWeight, NFData fecundityDecayRatio, NFData populationDiversityRatio) => NFData (ExecutionOptions criterionWeight fecundityDecayRatio populationDiversityRatio) Source # 
Instance details

Defined in WeekDaze.ExecutionConfiguration.ExecutionOptions

Methods

rnf :: ExecutionOptions criterionWeight fecundityDecayRatio populationDiversityRatio -> () #

(Fractional criterionWeight, Fractional fecundityDecayRatio, Fractional populationDiversityRatio) => Default (ExecutionOptions criterionWeight fecundityDecayRatio populationDiversityRatio) Source # 
Instance details

Defined in WeekDaze.ExecutionConfiguration.ExecutionOptions

Methods

def :: ExecutionOptions criterionWeight fecundityDecayRatio populationDiversityRatio #

(Fractional criterionWeight, Fractional fecundityDecayRatio, Fractional populationDiversityRatio, XmlPickler criterionWeight, XmlPickler fecundityDecayRatio, XmlPickler populationDiversityRatio, Ord fecundityDecayRatio, Ord populationDiversityRatio, Real criterionWeight, Show criterionWeight, Show fecundityDecayRatio, Show populationDiversityRatio) => XmlPickler (ExecutionOptions criterionWeight fecundityDecayRatio populationDiversityRatio) Source # 
Instance details

Defined in WeekDaze.ExecutionConfiguration.ExecutionOptions

Methods

xpickle :: PU (ExecutionOptions criterionWeight fecundityDecayRatio populationDiversityRatio) #

(Num fecundityDecayRatio, Num populationDiversityRatio, Ord fecundityDecayRatio, Ord populationDiversityRatio, Real criterionWeight, Show criterionWeight, Show fecundityDecayRatio, Show populationDiversityRatio) => SelfValidator (ExecutionOptions criterionWeight fecundityDecayRatio populationDiversityRatio) Source # 
Instance details

Defined in WeekDaze.ExecutionConfiguration.ExecutionOptions

Methods

getErrors :: ExecutionOptions criterionWeight fecundityDecayRatio populationDiversityRatio -> [String] #

isValid :: ExecutionOptions criterionWeight fecundityDecayRatio populationDiversityRatio -> Bool #

(Eq criterionWeight, Num criterionWeight) => Configuration (ExecutionOptions criterionWeight fecundityDecayRatio populationDiversityRatio) Source # 
Instance details

Defined in WeekDaze.ExecutionConfiguration.ExecutionOptions

Methods

issueWarnings :: ExecutionOptions criterionWeight fecundityDecayRatio populationDiversityRatio -> [String] Source #

Constants

permitTemporaryStudentBodyMergerTag :: String Source #

Used to qualify SQL & XML.

randomSeedTag :: String Source #

Used to qualify SQL & XML.

reduceStudentBodyRegisterTag :: String Source #

Used to qualify SQL & XML.

removeRedundantCoursesTag :: String Source #

Used to qualify SQL & XML.

removePointlessGroupsTag :: String Source #

Used to qualify SQL & XML.

removeUnsubscribedGroupsTag :: String Source #

Used to qualify SQL & XML.

zeroInappropriateOptionsTag :: String Source #

Used to qualify SQL & XML.

Functions

Mutators

setPermitTemporaryStudentBodyMerger :: Num criterionWeight => PermitTemporaryStudentBodyMerger -> Mutator criterionWeight fecundityDecayRatio populationDiversityRatio Source #

setSynchronisedCourseMutationFecundity :: TimetableBreederFecundity -> Mutator criterionWeight fecundityDecayRatio populationDiversityRatio Source #

Mutator.

setSynchronisedCourseByDayMutationFecundity :: TimetableBreederFecundity -> Mutator criterionWeight fecundityDecayRatio populationDiversityRatio Source #

Mutator.

setExcessRunlengthMutationFecundity :: TimetableBreederFecundity -> Mutator criterionWeight fecundityDecayRatio populationDiversityRatio Source #

Mutator.

setFecundityDecayRatio :: fecundityDecayRatio -> Mutator criterionWeight fecundityDecayRatio populationDiversityRatio Source #

Mutator.

setHomogeneousStudentViewLessonMutationFecundity :: TimetableBreederFecundity -> Mutator criterionWeight fecundityDecayRatio populationDiversityRatio Source #

Mutator.

setIncompleteCourseMutationFecundity :: TimetableBreederFecundity -> Mutator criterionWeight fecundityDecayRatio populationDiversityRatio Source #

Mutator.

setMinimumPopulationDiversityRatio :: populationDiversityRatio -> Mutator criterionWeight fecundityDecayRatio populationDiversityRatio Source #

Mutator.

setMaybeNInitialScouts :: Maybe NTimetables -> Mutator criterionWeight fecundityDecayRatio populationDiversityRatio Source #

Mutator.

setSingletonStudentClassMutationFecundity :: TimetableBreederFecundity -> Mutator criterionWeight fecundityDecayRatio populationDiversityRatio Source #

Mutator.

setSplitSessionMutationFecundity :: TimetableBreederFecundity -> Mutator criterionWeight fecundityDecayRatio populationDiversityRatio Source #

Mutator.

setStudentBodyCombinationMutationFecundity :: TimetableBreederFecundity -> Mutator criterionWeight fecundityDecayRatio populationDiversityRatio Source #

Mutator.

setStudentViewTimetableForDayMutationFecundity :: TimetableBreederFecundity -> Mutator criterionWeight fecundityDecayRatio populationDiversityRatio Source #

Mutator.

setStudentViewTimetableForWeekMutationFecundity :: TimetableBreederFecundity -> Mutator criterionWeight fecundityDecayRatio populationDiversityRatio Source #

Mutator.

setSynchronousLessonMutationFecundity :: TimetableBreederFecundity -> Mutator criterionWeight fecundityDecayRatio populationDiversityRatio Source #

Mutator.

Predicates

hintWasSpecified :: ExecutionOptions criterionWeight fecundityDecayRatio populationDiversityRatio -> (Bool, Bool) Source #

True if a (traversalOrder, input file-path) was specified.