Timeline
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
07/31/08:
- 17:42 Changeset [416] by
-
worked on #211 (Full operator-graphs are stored multiple times in the database even though most of it is static anyway)
By introducing a table of operators in the CEDMA database.
- 14:46 Ticket #219 (Grid-client returns the whole engine as result) closed by
- fixed: fixed with r415
- 14:46 Changeset [415] by
-
fixed #219 (Grid-client returns the whole engine as result)
- 14:26 Ticket #219 (Grid-client returns the whole engine as result) created by
- Only the scope of the initial operator and the sub-branches of that …
- 13:10 Ticket #216 (ProcessingEngine should terminate on breakpoints) closed by
- fixed: tested with the engine in the attachment.
- 13:08 Changeset [414] by
-
implemented #216 (ProcessingEngine should terminate on breakpoints)
- 10:07 Ticket #218 (DistributedEngine silently ignores when grid-jobs are canceled ...) closed by
- fixed: fixed with r413
- 10:07 Changeset [413] by
-
fixed #218 (DistributedEngine silently ignores when grid-jobs are canceled (because of exceptions) on grid-clients) by adding a property that holds an error message to the ProcessingEngine
- 00:23 Ticket #218 (DistributedEngine silently ignores when grid-jobs are canceled ...) created by
- When an engine is cancled at a grid-client because of an exception it …
- 00:15 Ticket #212 (GridClient returns engines that threw an exception even though the ...) closed by
- fixed: fixed with r412
- 00:15 Changeset [412] by
-
fixed #212
07/30/08:
- 23:37 Ticket #217 (ProcessingEngine should handle special 'go-to-sleep' breakpoints) created by
- For CEDMA it's useful to be able to suspend and resume engines that …
- 23:34 Ticket #216 (ProcessingEngine should terminate on breakpoints) created by
- 14:24 Ticket #215 (Grid-client should be able to enforce an upper limit for the heap size.) created by
- 14:23 Ticket #214 (Watchdog for grid-clients) created by
- * Automatically restart the client if the process dies * Also start …
- 14:19 Ticket #213 (More intelligent job distribution matching ressource requirements of ...) created by
- 14:03 Ticket #212 (GridClient returns engines that threw an exception even though the ...) created by
- Don't persist and zip the whole engine if it was aborted instead just …
- 13:47 Ticket #210 (Trace exceptions from the engine at the grid-clients to ease debugging ...) closed by
- fixed: implemented with r411
- 13:47 Changeset [411] by
-
implemented #210 (Trace exceptions from the engine at the grid-clients to ease debugging of the grid infrastructure)
- 13:28 Ticket #211 (Full operator-graphs are stored multiple times in the database even ...) created by
- 13:27 Ticket #210 (Trace exceptions from the engine at the grid-clients to ease debugging ...) created by
- 13:16 Ticket #180 (Treenode is not selected on right click in the FunctionsTreeView component) closed by
- fixed: fixed with r410
- 13:16 Changeset [410] by
-
fixed #180 by adding an event-handler for the mouse-up event that selects the clicked node on right-click.
(had to rename variable functionTreeView to funTreeView because the designer was unhappy. )
07/29/08:
- 20:49 Changeset [409] by
-
fixed a minor display bug (related to #204)
- 20:44 Ticket #202 (Split the big reader/writer lock in class Database into separate ...) closed by
- wontfix: reverted changes of r399 with r408
- 20:44 Changeset [408] by
- 20:39 Ticket #202 (Split the big reader/writer lock in class Database into separate ...) reopened by
- SQLite doesn't support concurrent read&writes to different tables …
- 20:24 Ticket #204 (The distinction in 'ControllerAgents' and 'normal' agents is bad) closed by
- fixed: fixed small bug with r407
- 20:24 Changeset [407] by
- 20:17 Ticket #204 (The distinction in 'ControllerAgents' and 'normal' agents is bad) reopened by
- Changes of r398 broke CEDMA infrastructure
- 19:23 Ticket #209 (Values 'n.def.' are not parsed correctly by the DatasetParser because ...) closed by
- fixed: fixed with r405 and r406. Since 'n. def.' should be treated as one …
- 19:17 Changeset [406] by
-
fixed #209 by changing the import format while keeping compatibility with HL2 exported files
- 18:49 Changeset [405] by
-
changed parser to try three different number-formats for the whole file and not for single tokens (ticket #209)
- 18:17 Ticket #207 (The table of imported data is not cleared when the importer is ...) closed by
- fixed: fixed with r404
- 18:17 Changeset [404] by
-
fixed #207
- 18:10 Ticket #209 (Values 'n.def.' are not parsed correctly by the DatasetParser because ...) created by
- 18:07 Ticket #201 (Fix plugin dependencies for CEDMA plugins) closed by
- fixed: fixed with r403
- 18:05 Changeset [403] by
-
- fixed ticket #201 (Fix plugin dependencies for CEDMA plugins)
- deleted classes DbPersistenceManager because the common code was moved to the PersistenceManager in HeuristicLab.Core.
- 17:55 Changeset [402] by
-
moved GZip persistence into the PersistenceManager in HeuristicLab.Core because compression is needed in several plugins (CEDMA and Grid)
- 17:54 Changeset [401] by
-
added tracing to event-log to simplify debugging of grid infrastructure
- 16:30 Ticket #156 (All GP-evaluators should update the number of total evaluated nodes) closed by
- fixed: fixed with r400
- 16:30 Changeset [400] by
-
fixed #156 (All GP-evaluators should update the number of total evaluated nodes)
- 16:20 Ticket #202 (Split the big reader/writer lock in class Database into separate ...) closed by
- fixed: fixed with r399
- 16:20 Changeset [399] by
-
fixed #202 (Split big R/W lock into separate R/W locks for each table)
- 16:17 Ticket #204 (The distinction in 'ControllerAgents' and 'normal' agents is bad) closed by
- fixed: fixed with r398
- 16:17 Changeset [398] by
-
removed the distinction between controller agents and normal agents. Also removed the AgentScheduler because it is not needed anymore. (ticket #204)
- 14:50 Ticket #208 (Closing the view of the sequential engine doesn't stop the engine) created by
- 14:45 Ticket #207 (The table of imported data is not cleared when the importer is ...) created by
- 11:37 Ticket #206 (StructIdProblemInjector doesn't inject start and end of test samples) closed by
- fixed: fixed with r397
- 11:37 Changeset [397] by
-
fixed #206
- 10:32 Ticket #206 (StructIdProblemInjector doesn't inject start and end of test samples) created by
07/28/08:
- 18:46 Ticket #205 (Can't execute more than one engine for GP simultaniously (evaluator is ...) closed by
- fixed: fixed with r396
- 18:46 Changeset [396] by
-
fixed ticket #205 by creating the function-specific evaluator in the evaluation operators.
- 10:08 Ticket #205 (Can't execute more than one engine for GP simultaniously (evaluator is ...) created by
07/25/08:
- 14:07 Changeset [395] by
-
added evaluator for mean absolute percentage error and added a parameter for the evaluator for theil's inequality to determine whether to calculate the coefficient for the change or for the absolute value
07/24/08:
- 16:04 Ticket #204 (The distinction in 'ControllerAgents' and 'normal' agents is bad) created by
- Running controller agents in round-robin style on the server is bad …
07/23/08:
- 18:58 Ticket #203 (Operator to create algorithms with different settings) created by
- 15:14 Ticket #202 (Split the big reader/writer lock in class Database into separate ...) created by
- 01:00 Ticket #201 (Fix plugin dependencies for CEDMA plugins) created by
- 00:47 Ticket #200 (Simple indexer for results and matching search-frontend for ...) created by
- 00:29 Ticket #191 (Operators to store results in the database) closed by
- fixed: r394 * added an operator to store a whole scope as a result in the …
- 00:28 Changeset [394] by
-
- implemented operator to store a whole scope as an result item into the cedma-db.
- worked on AgentListView to display results as sub-nodes of agents.
(ticket #191)
07/22/08:
- 23:34 Ticket #189 (Scheduler for the round-robin execution of agents) closed by
- fixed: prototypical implementation with r388:393
- 23:31 Ticket #188 (Persistence of agents and runs in the database) closed by
- fixed: worked on prototypical implementation in r388:393 .
- 23:29 Changeset [393] by
-
worked on very basic control to view the tree of agents/runs (ticket #188)
- 21:16 Changeset [392] by
-
worked on unification of agents and runs (ticket #188)
- 21:15 Changeset [391] by
-
improved JobManager code and fixed a typo in the JobState enum. (ticket #188)
- 19:15 Changeset [390] by
-
unified runs and agents (are actually the same with the minor difference that agents can create new agents (runs)) (ticket #188)
- 14:06 Changeset [389] by
-
worked on #188
07/21/08:
- 17:18 Changeset [388] by
-
fixed a bug in the AgentScheduler that caused each agent to stop after 100 steps
- 17:12 Changeset [387] by
-
changed ManualResetEvents to AutoResetEvents in JobManager (related to #199)
- 16:43 Ticket #199 (ThreadPool contention in the JobManager) closed by
- fixed: fixed with r386 by introducing to queues for waiting and running …
- 16:40 Changeset [386] by
-
worked on #199
- 13:47 Ticket #199 (ThreadPool contention in the JobManager) created by
- JobManager queues a thread-pool WaitCallback to collect. In …