AutoExpe.Column
— TypeRepresents one result column
AutoExpe.Column
— MethodColumn constructor
AutoExpe.ColumnGroup
— TypeRepresents several columns which are regrouped under the same title
AutoExpe.ColumnGroup
— MethodColumnGroup constructor
AutoExpe.CombinationResults
— TypeRepresents all the relevant information related to the results of a combination of the row parameters.
AutoExpe.CombinationResults
— MethodCombinationResults constructor
Input
- parameters: the parameters of the current experiment
- combination: the value of each row parameters in the row;
- combinationResults: all the results for all instances in the combination
AutoExpe.ExpeParameters
— TypeParameters of an automatic experiment
AutoExpe.ExpeParameters
— MethodConstructor of the parameters in which the folder which includes the instances is specified
Input
- extension: the instances file names must match this extension Can or cannot start with a dot (e.g., "txt" or ".txt")
- filters: the instances file names must include each element of filters array
AutoExpe.ExpeParameters
— MethodConstructor of the parameters in which the path of each instance is specified
AutoExpe.InstanceResults
— TypeContains all the results associated to a given instance for a combination in a latex table
AutoExpe.InstanceResults
— MethodInstanceResults constructor
Input
- parameters: parameters of the current experiment;
- instancePath: path of the instance;
- instanceResults: all the results for this instance
AutoExpe.MethodResults
— TypeContains all the results associated to a given method for a given instance in a row of a latex table
AutoExpe.MethodResults
— MethodMethodResults constructor
AutoExpe.RowVariable
— TypeVariable which different values appear in the rows of the latex table
AutoExpe.RowVariable
— MethodRow variable constructor
AutoExpe.TableParameters
— TypeMain parameters of a latex table
AutoExpe.TableValue
— TypeRepresents a value in a table
AutoExpe.TableValue
— MethodTableValue constructor
AutoExpe.ValueInformation
— TypeRepresents the information required to retrieve a value v in a json result entry
AutoExpe.ValueInformation
— TypeValueInformation constructor
AutoExpe.addResultsToRow
— MethodAdd to a String which represents the current row of a table the value of a vector of TableValue. If the table starts before this row, print the table header. If the table ends after this row, print the table footer.
Input
- tableValues: the value to add to the row
- mustReprintHeader: true if the header must be printed before the row;
- outputstream: stream in which the row must be printed
- tableaHeader: header of the table
- latexRow: the string of the result row which already included the value dedicated to the row parameters
- rowCount: number of rows currently in the table
- tableHasMissingValues: true if the current table has missing values
- tableParam: parameters of the table
AutoExpe.computeInstanceValues
— MethodCompute all the values for an instance and a combination in a column. There can be several of these values. E.g.: If we have results when combining two parameters in a knapsack problem: 1 - number of knapsacks: 2 and 3; 2 - size of the: 10 and 20.
We get 4 combinations of parameters: (2, 10), (3, 10), (2, 20), (3, 20).
If we create a latex table in which:
- the number of knapsacks is a row parameter;
- the size of the knapsacks is not;
for each instance we will obtain two result lines: 2 and 3. For each of these lines we will have 2 values (2, 10) and (2, 20) in the first and (3, 10) and (3, 20) in the second.
Input
- parameters: the parameters of the experiment;
- instanceResults: results obtained during this experiment for the instance and the combination considered;
- column: the column for which we compute the values.
AutoExpe.computeTableValue
— MethodCompute the average value of a vector of results
AutoExpe.computeTableValues
— MethodCompute the value for each result column for each CombinationResults
AutoExpe.computeValue
— MethodCompute the value in column "column" for an instance using the results of the methods in "methodResults". methodResults only contains 1 entry for each resolution method required to compute the value of the column.
Input
- column: the column in which the result must be computed
- methodResults: dictionary of results for the considered instance indexed by method name methodResults[methodName][resultName]: value of entry "resultName" in the result files for method "methodName"
AutoExpe.createTexTable
— MethodCreate a latex table from the results of an autoexperiment.
The lines of the latex table corresponds to the different possible values of the variables contained in rowVariables (obtained from argument tableStructure). The columns of the latex table corresponds to variable columnVariables (idem).
AutoExpe.createTexTables
— MethodCreate a latex table from the results of an autoexperiment.
The lines of the latex table corresponds to the different possible values of the variables contained in rowVariables (obtained from argument tableStructure). The columns of the latex table corresponds to variable columnVariables (idem).
AutoExpe.documentFooter
— MethodFooter of the latex document
AutoExpe.documentHeader
— MethodHeader of the latex document
AutoExpe.gap
— MethodCompute the gap of the two numerical values included in an array (|t[1] - t[2]|/t[1]). Returns nothing if:
- the size of the array is not 2;
- both values are not numerical.
Note:
- to avoid dividing by 0, 1E-6 is added to the denominator;
- to avoid very high gaps, the denominator is set to 0.1 if it is <0.1 and if the gap exceeds 1000.
AutoExpe.getMethods
— MethodGet several julia functions.
Input:
- iMethods: Dictionary with an entry "name" (the name of the julia
function) and an optional entry "module" (the module in which the function can be found). To specify several functions, iMethods can be an array of such dictionaries. If the module is not specified, the Main module will be considered in priority. If it is not in the Main module, all the other loaded modules will be considered.
Output:
- vector of Function which correspond to the found functions.
AutoExpe.getResults
— MethodGet all the results computed in the experiment
AutoExpe.getVariablesValues
— MethodFor each row variable, get all its values which appear in the results
Intput
- variables: list of RowVariables
- results: dictionary in which each entry corresponds to a result
Output
- array which contains one vector for each variable. The array associated to a variable contains all its possible values
AutoExpe.hasMissingResults
— MethodTest if any resolution methods used to compute the value of a column has missing values for an instance.
Input
- column: the column
- instanceResults: the result of the considered instance
AutoExpe.isExtensionValid
— MethodTest if a file extension is included in a list of extensions
Input
- path: the path to test;
- validExtensions: list of the valid extensions.
AutoExpe.mean
— MethodCompute the mean value of the numerical values contained in an array Returns nothing if there are no numerical value in the array.
AutoExpe.numericalValue
— MethodParse a value from a result file into a numerical value:
- convert the strings which represent integers and floats; and
- returns nothing for unexpected values.
AutoExpe.numericalVector
— MethodConvert a vector into numerical values. Unexpected value are ignored (e.g., non numerical values, arrays, strings, ...)
AutoExpe.readColumn
— MethodRead the json entry which corresponds to a column and return the corresponding Column.
AutoExpe.readExpeFormat
— MethodRead the format of the experiment from a json file
AutoExpe.readInstanceFolder
— MethodFind all the instances with a valid extension in a folder
Input:
- folderPath: path of the folder
- extensions: list of the valid extensions
- isRecursive: true if instances are sought recursively
AutoExpe.readInstances
— MethodGet the path of the instances in the json experiment
Input
- paths: each path can correspond to an instance file or to a folder. A folder is specified either by a String (its path) or a Dictionary with key "path" (and optionally key "isRecursive"). This argument either contain one folder or an array of folders;
- extensions: list of valid instance name extensions.
AutoExpe.readLatexFormat
— MethodRead the format of a latex table from a json file
AutoExpe.setBoldValuesInGroup
— MethodFind the best numerical values in the set of values of a group and set them to bold. Non-numerical values are ignored.
Input
- group: Column group in which the columns are located
- groupValues: TableValues in the group
AutoExpe.splitResultsByCombination
— MethodSplit all the results according to their combination of parameters
Input
- parameters: parameters of the experiment;
- results: all the results saved during the experiment;
- columns: the columns of the table;
- rowVariables: the row variables of the table.
Output
- an array of CombinationResults ordered according to the row of the table (i.e. the ith index of this array corresponds to all the results used to compute the ith line)
AutoExpe.uniqueColumnName
— MethodUnique name of a column used to identify a column without any ambguity. Required since several columns may have the same displayed name in the latex table.