Timeline
08/14/08:
- 16:47 Changeset [514] by
-
added a very crude exporter in preparation for ticket #200
- 16:02 Ticket #258 (BakedFunctionTree should provide an appropriate ToString() method) created by
- 14:51 Ticket #257 (CEDMA console doesn't handle communication- and timeout exceptions ...) created by
- Connection is automatically timed out if it is inactive for a longer …
08/13/08:
- 17:12 Ticket #255 (CEDMA console should have a refresh button for the treeview with ...) closed by
- fixed
- 17:12 Ticket #211 (Full operator-graphs are stored multiple times in the database even ...) closed by
- fixed: r513: Fixed the problem that sometimes an operator link was not …
- 17:09 Changeset [513] by
-
Fixed the problem that sometimes an operator link was not patched before a view was created (which resulted in a NullException) by adding a property for the source database in OperatorLink! and updating this property recursively whenever an operator is loaded from the CEDMA DB.
The method for recursively setting the property is in static class OperatorLinkPatcher because the code is needed in Agent, DatabaseOperatorLibrary and OperatorLink.
(ticket #211)
- 16:33 Changeset [512] by
-
worked on #211
- 14:35 Changeset [511] by
-
improved the condition for the special case by removing the predicate that estimated is smaller then original or larger than original because this is always true when the error is <-1 or +1 resp.
- 13:20 Changeset [510] by
-
implemented #255 (CEDMA console should have a refresh button for the treeview with agents and results). Also deleted the obsolete timer in ConsoleEditor.
- 12:40 Ticket #256 (It should be possible to start the CEDMA server without connection to ...) created by
- CEDMA server can provide services even without connection to a grid …
- 12:25 Ticket #255 (CEDMA console should have a refresh button for the treeview with ...) created by
- 12:24 Ticket #253 (SequentialComposer doesn't set the operator names correctly) closed by
- fixed: fixed with r509
- 12:24 Changeset [509] by
-
fixed #253
- 12:16 Ticket #239 (Dragging an item in the ItemListView adds the same item again) closed by
- fixed
- 12:16 Ticket #254 (FunctionLibraryInjector doesn't handle the 'Autoregressive' switch ...) closed by
- fixed
- 12:15 Changeset [508] by
- 11:47 Ticket #254 (FunctionLibraryInjector doesn't handle the 'Autoregressive' switch ...) created by
- 11:45 Ticket #253 (SequentialComposer doesn't set the operator names correctly) created by
- 10:17 Ticket #252 (Streaming of byte-arrays (RawData entries) could improve the ...) created by
- Instead of buffered transfer of byte arrays (RawData entries from DB …
- 10:07 Ticket #141 (Use WeakReference to store results in the EngineStore instead of ...) closed by
- wontfix: After the introduction of the SQLite DB backend for the engine store …
08/12/08:
- 19:06 Ticket #197 (Use SQLite backend to store waiting engines and results instead of ...) closed by
- fixed: The DB backend seems to work nicely. Expiry of old jobs doesn't work …
- 19:04 Ticket #251 (Engine-store should delete old jobs and results) created by
- follow up to #197
- 18:58 Changeset [507] by
-
fixed a thread-safety bug in the database. write-lock was released before the transaction was committed (#197 Use SQLite backend to store waiting engines and results instead of in-memory dictionaries)
- 18:58 Changeset [506] by
-
added locking for thread-safe update of the counter variables (#197 Use SQLite backend to store waiting engines and results instead of in-memory dictionaries)
- 16:35 Changeset [505] by
-
improved SQL statement to reduce I/O load of the DB (ticket #197 Use SQLite backend to store waiting engines and results instead of in-memory dictionaries)
- 15:38 Changeset [504] by
-
reenabled waiting/running/finished counters (#197 Use SQLite backend to store waiting engines and results instead of in-memory dictionaries)
- 14:56 Ticket #249 (Loading agent and result lists in the CEDMA console is too slow) closed by
- fixed: fixed with r503 list by lazily loading and extracting rawdata of …
- 14:55 Changeset [503] by
-
Improved loading speed of agent and results list by lazily loading and extracting rawdata of operator graphs and result items (ticket #249)
- 12:07 Changeset [502] by
-
fixed a few bugs (#197 Use SQLite backend to store waiting engines and results instead of in-memory dictionaries)
- 09:04 Changeset [501] by
-
removed wait-handles (ticket #197)
08/11/08:
- 22:31 Changeset [500] by
-
worked on #197 (Use SQLite backend to store waiting engines and results instead of in-memory dictionaries)
- 21:13 Ticket #250 (Grid-server should support different expiry intervals for each job) created by
- There could potentially be jobs that run for days and jobs that run …
- 16:14 Changeset [499] by
-
quick fix for first CEDMA experiment
- 15:52 Changeset [498] by
-
added configuration option to make the SQLite plugin work when it is not installed in the GAC
- 15:13 Changeset [497] by
-
fixed the bug in the run scheduler that caused full expansion of all operator links (#211)
- 15:02 Changeset [496] by
-
fixed a bug (#211)
- 14:40 Changeset [495] by
-
fixed a problem that caused an exception when a dataset was imported after one of the local variables had been removed.
- 14:04 Ticket #247 (FunctionLibraryInjector should have a parameter to switch between ...) closed by
- fixed: implemented with r494
- 14:04 Changeset [494] by
-
implemented #247 (FunctionLibraryInjector should have a parameter to switch between autoregressive and non-autoregressive modeling)
- 13:40 Ticket #249 (Loading agent and result lists in the CEDMA console is too slow) created by
- 13:39 Ticket #248 (FunctionLibraryInjector should provide a feature to have different ...) created by
- 13:37 Ticket #247 (FunctionLibraryInjector should have a parameter to switch between ...) created by
- 13:32 Changeset [493] by
-
also patch operator links in local variables (when they are not part of any (reachable) operator graph) (ticket #211)
- 13:30 Changeset [492] by
-
increased constraints for messages to prevent exceptions while testing (ticket #211)
- 13:29 Changeset [491] by
-
minor bugfix: only inject variables that are local and havn't been deleted by the user
- 00:49 Changeset [490] by
-
small improvement to improve interoperability with the Metaprogramming plugin
- 00:49 Ticket #246 (Metaprogramming operator to insert variable injectors for a range of ...) closed by
- fixed: implemented with r489
- 00:49 Changeset [489] by
-
implemented #246
- 00:48 Ticket #246 (Metaprogramming operator to insert variable injectors for a range of ...) created by
- Analog to DoubleRangeVariableInjector (see #203)
08/10/08:
- 23:50 Changeset [488] by
-
fixed a minor bug
- 23:02 Ticket #245 (StructIdProblemInjector should inject a list of allowed features) closed by
- fixed: implemented with r487
- 23:02 Changeset [487] by
-
implemented #245 (StructIdProblemInjector should inject a list of allowed features)
- 22:33 Ticket #245 (StructIdProblemInjector should inject a list of allowed features) created by
- 20:35 Ticket #244 (Authentication mechanism for the grid-server) created by
- 20:08 Ticket #236 (Operator to create a list of n-m out of k possible items) closed by
- fixed: implemented with r486
- 20:07 Changeset [486] by
-
implemented #236 (Operator to create a list of n-m out of k possible items)
- 15:52 Ticket #242 (All GP evaluators should support the 'UseEstimatedTargetValues' switch ...) closed by
- fixed: fixed with r484.
- 15:50 Changeset [485] by
-
implemented #243 (GP evaluator that calculates the full classification matrix)
- 15:49 Ticket #243 (GP evaluator that calculates the full classification matrix) closed by
- fixed: fixed with r484
- 15:49 Changeset [484] by
-
fixed a bug where AccuracyEvaluator set the value of the discrimination function instead of the predicted class value (ticket #242)
- 15:38 Ticket #243 (GP evaluator that calculates the full classification matrix) created by
- 15:29 Ticket #242 (All GP evaluators should support the 'UseEstimatedTargetValues' switch ...) reopened by
- Bug in classification evaluators
- 15:18 Ticket #242 (All GP evaluators should support the 'UseEstimatedTargetValues' switch ...) closed by
- fixed: fixed a bug with r483.
- 14:24 Changeset [483] by
-
fixed a bug uncovered by r482
- 12:44 Changeset [482] by
-
made a few more improvements in the GP evaluators (ticket #242 All GP evaluators should support the 'UseEstimatedTargetValues' switch for autoregressive modelling)
- 11:57 Changeset [481] by
-
fixed another small bug (#242 All GP evaluators should support the 'UseEstimatedTargetValues' switch for autoregressive modelling)
- 11:37 Changeset [480] by
-
fixed a bug (ticket #242 (All GP evaluators should support the 'UseEstimatedTargetValues' switch for autoregressive modelling))
- 11:08 Changeset [479] by
-
implemented #242 (All GP evaluators should support the 'UseEstimatedTargetValues' switch for autoregressive modelling).
Also used the chance to remove a lot of the code duplication and thus improve the readability of all GP evaluators.
- 09:05 Ticket #242 (All GP evaluators should support the 'UseEstimatedTargetValues' switch ...) created by
08/09/08:
- 14:14 Changeset [478] by
-
fixed another small glitch in the classification evaluator
- 13:38 Changeset [477] by
-
fixed a bug in the function-tree evaluator. trees that contained Differential terminal symbols were evaluated incorrectly.
- 12:18 Changeset [476] by
-
fixed a few bugs in classification evaluators
- 10:30 Ticket #222 (Variation of MSE evaluator for classification where the error cost ...) closed by
- fixed: added the operator with r475
- 10:30 Changeset [475] by
-
implemented #222 (Variation of MSE evaluator for classification where the error cost rises linear above a certain threshold)
- 00:32 Ticket #241 (AccuracyEvaluator doesn't work for more than two classes) closed by
- fixed: improved the evaluator with r474. calculates the ratio of correctly …
- 00:31 Changeset [474] by
-
improved AccuracyEvaluator (#241)
calculates the ratio of correctly classified instances to total number of instances with static class threshold (exactly in the middle between two classes)
08/08/08:
- 23:33 Ticket #241 (AccuracyEvaluator doesn't work for more than two classes) created by
- 21:46 Ticket #237 (FunctionLibraryInjector that injects default function libraries with a ...) closed by
- fixed: Tested the injector in an engine and it seems to work correctly.
- 21:41 Ticket #240 (DatasetView hangs when updating the data-grid (after import)) closed by
- fixed: r473 reactivated auto-resizing of header cells by disabling resizing …
- 21:40 Changeset [473] by
-
reactivated auto-resizing of header cells by disabling resizing before updating the content of the DataGrid and enabling resizing again afterwards. (ticket #240).
This solution is very similar to an earlier problem we had with the auto-layout of DataGrid (see #157)
- 21:31 Changeset [472] by
-
fixed #240 by disabling the auto-resizing of row headers.
- 21:16 Ticket #240 (DatasetView hangs when updating the data-grid (after import)) created by
- Importing new data causes the DatasetView to hang while updating the …
- 21:15 Changeset [471] by
-
removed parameter TargetVariable since it is not needed for the FunctionLibraryInjector (#237)
- 21:14 Changeset [470] by
-
fixed the range for uniform random numbers in the initializer for index and sample-offset of variable (necessary after fixing #238) (ticket #237)
- 21:01 Ticket #239 (Dragging an item in the ItemListView adds the same item again) created by
- I guess the intended behaviour of dragging items in the ItemListView …
- 19:56 Ticket #238 (UniformRandomizer has incorrect distribution for integer values) closed by
- fixed: fixed with r469. using floor instead of round when we use a …
- 19:56 Changeset [469] by
-
fixed #238 by using floor instead of round when we use a uniform-distribution in combination with integer variables
- 19:30 Changeset [468] by
-
ironed out a few more problems (#237 FunctionLibraryInjector that injects default function libraries with a few parameters)
- 17:09 Changeset [467] by
-
worked on #237 (FunctionLibraryInjector that injects default function libraries with a few parameters)
- added operator
- added helper functions in Variable, Differential and Constraints to support the function library injector
- 17:00 Ticket #238 (UniformRandomizer has incorrect distribution for integer values) created by
- Math.Round(rand_d * (max-min) + min) means that the probability of the …
08/07/08:
- 09:35 Ticket #237 (FunctionLibraryInjector that injects default function libraries with a ...) created by
- A specific function library injector that injects a kind of default …
- 09:30 Ticket #236 (Operator to create a list of n-m out of k possible items) created by
- This could be useful for an experimenter. For instance to run all …
- 09:14 Ticket #203 (Operator to create algorithms with different settings) closed by
- fixed: changed meta prog. operators to work with CombinedOperators as input …
- 09:12 Changeset [466] by
-
changed meta prog. operators to work with CombinedOperators as input and output values (this should be general policy in all operators of this plugin) (#203)
- 09:06 Changeset [465] by
-
moved metaprogramming operators from CEDMA.Operators to Operators.Metaprogramming
- 09:00 Ticket #235 (Plugin for the meta programming operators) closed by
- fixed: added with r462:464
- 08:59 Changeset [464] by
-
added prebuild event to update the revision number (ticket #235 plugin for the meta programming operators)
- 08:57 Changeset [463] by
-
initial import of Operators.Metaprogramming plugin (ticket #235)
- 08:43 Ticket #235 (Plugin for the meta programming operators) created by
- Metaprogramming operators are not CEDMA specific
- 08:40 Changeset [462] by
-
- implemented simple operator to create sub-scopes with variable injectors that inject different double values
- implemented operator that takes a list of operators and combines them to a sequence (in a CombinedOperator)
(ticket #203 (Operator to create agents with different settings)
08/06/08:
- 16:59 Changeset [461] by
-
improved StructIdProblemInjector (user can remove variables which shouldn't be injected)
- 16:58 Changeset [460] by
-
minor changes in BakedTreeEvaluator to removed branches
- 16:58 Changeset [459] by
-
fixed a bug introduced in r454
- 15:32 Changeset [458] by
-
added line numbers for the grid-view of the dataset
- 15:32 Changeset [457] by
-
improved shuffle rows feature (#233)
- 15:31 Ticket #234 (GUI layout of SvmExporter is botched) closed by
- fixed: fixed with r456
- 15:31 Changeset [456] by
-
fixed #234 GUI (layout of SvmExporter is botched).
Also added line numbers in the row headers
- 15:07 Ticket #234 (GUI layout of SvmExporter is botched) created by
- 15:06 Changeset [455] by
-
fixed a typo
- 13:12 Ticket #233 (Shuffle instances in Dataset) closed by
- fixed: fixed with r454
- 13:12 Changeset [454] by
-
implemented #233 (Shuffle instances in Dataset)
- 12:34 Ticket #233 (Shuffle instances in Dataset) created by
08/05/08:
- 22:33 Ticket #225 (Simplify GP infrastructure (GPOperatorLibrary and Functions)) closed by
- fixed: * removed string constants not needed after r425 with r428:430 * …
- 22:22 Changeset [453] by
-
fixed a small problem in classification evaluators (#225)
- 22:18 Ticket #223 (Recheck and improve evaluation of boolean functions and conditionals) closed by
- fixed: after testing with benchmark classification problem sets (wisconsin, …
- 16:51 Changeset [452] by
-
fixed a bug that caused generation of invalid individuals (#225)
- 16:38 Changeset [451] by
-
added checking of sub-operator type constraints to IsValidTree (ticket #225)
- 16:31 Changeset [450] by
-
removed the balanced-tree parameter for method CreateRandomTree because it doesn't have an effect (ticket #225)
- 15:40 Changeset [449] by
-
Use PTC2 random tree creation for all random-tree-creation-needs except for RampedHalfHalf (which uses MakeBalancedTree and MakeUnbalancedTree) (ticket #225)
- 15:23 Changeset [448] by
-
removed size limit check in MakeBalancedTree and MakeUnbalancedTree. The methods are used for classic RampedHalfHalfInitialization where only the height constraint is checked. Use PTC2 initialization if the size constraint should also be checked. (ticket #225)
- 13:11 Ticket #227 (Random tree creation with PTC2 throws Exceptions with restricted ...) closed by
- fixed: fixed with r441 r442 r444
- 13:04 Ticket #231 (Plugin with stop-watch operators and necessary data) closed by
- fixed: * initial import of plugin with start/stop operators and a stopwatch …
- 13:03 Changeset [447] by
-
added automatic updating of revision number (ticket #231)
- 13:02 Ticket #232 (Prepare CEDMA plugins for automatic update of revision number and ...) closed by
- worksforme: Oops this is already working correctly.
- 12:56 Ticket #232 (Prepare CEDMA plugins for automatic update of revision number and ...) created by
- 12:53 Changeset [446] by
-
renamed AssemblyInfo to prepare for automatic update of revision number
- 12:52 Changeset [445] by
-
initial import of HeuristicLab.Operators.Stopwatch plugin (ticket #231)
- 12:12 Ticket #231 (Plugin with stop-watch operators and necessary data) created by
- Needed for instance in pspitzli's GP MetaOpt.
- 11:34 Changeset [444] by
-
fixed #227
- 10:31 Changeset [443] by
-
fixed minor problem
08/04/08:
- 23:06 Changeset [442] by
-
stop trying to cross trees that are not compatible with each other after a maximal number of tries (20).
Also weakened the final size-constraint check because trees generated with initial operators could be slightly larger than the size limit.
(ticket #225)
- 23:04 Changeset [441] by
-
changed the way invalid trees are handled in the RampedTreeCreator (ticket #225)
- 17:21 Ticket #230 (Grid-client should create a new AppDomain for each job) closed by
- fixed: looks OK in tests
- 16:47 Changeset [440] by
-
- split the GridForm class into two classes GridForm and GridClient
- added class EngineRunner to act as the bridge between the AppDomain where engines are executed and the main AppDomain of the client.
- GridClient creates a new AppDomain for each engine and unloads it again when the engine is finished.
(ticket #230)
- 15:06 Changeset [439] by
-
removed old ServiceBehaviour attribute which is a left over of the times when the client also exposed a service (ticket #230)
- 14:59 Ticket #230 (Grid-client should create a new AppDomain for each job) created by
- By creating an AppDomain for each job and disposing it afterwards we …
- 13:10 Ticket #229 (Loading a persisted distributed-engine throws Exception) closed by
- fixed: fixed with r438
- 13:09 Changeset [438] by
-
fixed #229 (Loading a persisted distributed-engine throws Exception)
- 13:06 Ticket #229 (Loading a persisted distributed-engine throws Exception) created by
- The server address attribute is not persisted correctly
- 08:33 Ticket #228 (SizeFairCrossOver throws exceptions with restricted function libraries) closed by
- fixed: fixed with r437 by replacing the code to go randomly up in the …
- 08:30 Changeset [437] by
-
fixed #228 by simplifying the crossover operator
- 08:13 Ticket #226 (View of AllSubOperatorsTypeConstraint is botched) closed by
- fixed: fixed with r436
- 08:13 Changeset [436] by
-
fixed #226 (View of AllSubOperatorsTypeConstraint is botched)
- 01:26 Ticket #163 (Changing the FunctionLibrary in a VariableInjector has no effect on ...) closed by
- fixed: The problem is fixed with r434 and changes related to #225 (esp. r431 …
- 01:20 Ticket #228 (SizeFairCrossOver throws exceptions with restricted function libraries) created by
- Similar to #227. Reproduce in the same way but use …
- 01:15 Ticket #227 (Random tree creation with PTC2 throws Exceptions with restricted ...) created by
- Howto reproduce: * Create a simple function library with +, *, …
- 00:35 Changeset [435] by
-
- code could be improved after removing the 'TypeId' variable and directly comparing instances of IOperator
- added firing change events in the SubOperatorTypeConstraints (ticket #163)
- 00:34 Changeset [434] by
-
added creation of empty SubOperatorTypeConstraints for each input of each function (#163)
- 00:33 Changeset [433] by
-
removed commented code and fixed a bug (#225)
08/03/08:
- 23:53 Changeset [432] by
-
- removed the button and methods for manual recalculation of min tree bounds introduced with r423 because it soon won't be needed anymore
- GPOperatorGroup adds event-handlers to SubOperatorTypeConstraints on the operators added to the library to automatically update min tree size and height when any of them is changed.
(ticket #225)
- 23:33 Changeset [431] by
-
removed the 'AllowedSubOperators' variable for functions because the original intention was to cache the list of allowed sub-functions which is actually determined by a tree of constraints. However the original idea was never fully implemented so up to now any function in the library was allowed for any other function as long as it was not a terminal (also defined by constraints on the arity). The 'AllowedSubOperators' variable is not necessary at all when we defined the set via constraints. The SubOperatorsConstraintView allows draging of functions from the library into the constraint.
Next step: automatic adaption of SubOperatorsConstraints of functions in the library when new functions are added or existing entries removed.
(ticket #225)
- 23:14 Changeset [430] by
-
removed 'TypeIds' for functions (also a relic of an old design) (ticket #225)
- 23:10 Ticket #226 (View of AllSubOperatorsTypeConstraint is botched) created by
- 23:00 Changeset [429] by
-
fixed compilation problems introduced with r428 (ticket #225)
- 22:54 Changeset [428] by
-
also removed string constants that are not needed anymore after r425 (ticket #225)
- 11:01 Changeset [427] by
-
fixed a minor GUI bug. (ticket #225)
- 11:01 Changeset [426] by
-
added properties to access parameters of randomizers (must be combined with r425) (ticket #225)
- 10:51 Changeset [425] by
-
moved creation of default init and manipulation operators from !GPOperatorGroup into the functions (ticket #225 "Simplify GP infrastructure (GPOperatorLibrary and Functions)")
- 09:32 Ticket #225 (Simplify GP infrastructure (GPOperatorLibrary and Functions)) created by
- Related to #163. There are a few relics in the GP infrastructure …
08/02/08:
- 22:45 Changeset [424] by
-
worked on #223 (Recheck and improve evaluation of boolean functions and conditionals)
- 11:32 Changeset [423] by
-
quick fix for #163 (Changing the FunctionLibrary in a VariableInjector has no effect on the injected FunctionLibrary)
- 11:31 Ticket #224 (Simple frontend for GP for non-expert users (similar to HeurisicLab.SGA)) created by
- 10:13 Ticket #223 (Recheck and improve evaluation of boolean functions and conditionals) created by
- 00:48 Ticket #221 (Evaluator for classification accuracy) closed by
- fixed: implemented with r422
- 00:48 Changeset [422] by
-
implemented #221 (Evaluator for classification accuracy)
- 00:46 Ticket #222 (Variation of MSE evaluator for classification where the error cost ...) created by
- 00:44 Ticket #221 (Evaluator for classification accuracy) created by
08/01/08:
- 21:40 Ticket #220 (Create a non-editable snapshot of operators from the database operator ...) created by
- To make sure that the exact algorithm can be reconstructed for each …
- 21:38 Changeset [421] by
-
added missing GPL license headers for new files (#211)
- 21:35 Changeset [420] by
-
worked on #211.
- Implemented downloading of linked operators from the database in AgentList (to allow view/edit of the whole operator graph)
- Implemented downloading and patching of linked operators in RunScheduler to prepare the operator-graph for execution (OperatorLink operator can't be executed)
(there is some code duplication because the patching is very similar in AgentList DatabaseOperatorLibrary and RunScheduler. This needs some more work)
- 21:32 Ticket #211 (Full operator-graphs are stored multiple times in the database even ...) reopened by
- ticket was closed unintentionally in a hurry
- 17:59 Ticket #211 (Full operator-graphs are stored multiple times in the database even ...) closed by
- fixed: worked on patching the operator-graph of an agent before execution …
- 17:59 Changeset [419] by
-
worked on #211 need to patch the operator-graph of an agent before execution (replacing the OperatorLinks with their targets).
work in progress...
- 16:50 Changeset [418] by
-
worked on #211 (Full operator-graphs are stored multiple times in the database even though most of it is static anyway)
- added class OperatorLink that allows to create CombinedOperators in the DatabaseOperatorLibrary which use other operators from the library (not via a copy but via a link)
- 14:43 Changeset [417] by
-
worked on #211 (Full operator-graphs are stored multiple times in the database even though most of it is static anyway)
- created a new type of operator library that is connected to the CEDMA db and a view for it