During this session, we broke into three groups, brainstormed, and then regrouped with the following three summaries:
Eric Siegel`s subgroup (loosely regarding classification problems) {Siegel}
- Global hillclimbing (via mutation) is simple to integrate.
- Brood selection [Tacket] is like crossover-based hillclimbing.
- Both mutation and crossover hillclimbing can use a cheaper, noisier fitness
measure.
- GP hybridized with other techniques may not need as big a population.
- Chaining classifiers [Stolfo]/multistage modeling: NN -> NN been done, and
GP -> GP could be done, and that starts to sound like encapsulation.
- Problem: adding complexity to learning system, eg hybrid, makes it harder
to evaluate which parts of the system are making it work.
- Two types of hybrid: 1. During GP run and 2. pre/post-processing.
- It pays to spend more time on preprocessing input data (eg via hybrid) since
GP will do well with predictive data.
Brij Masand's subgroup (regarding control problems) {Masand}
Breakout session: Brij Masand's subgroup (supposedly on control)
(Synergy between GP and machine learning
approaches to control problems -- Neural nets, inducing decision
trees, simulated annealing)
-- different kinds of control problems
alife creatures, broom balancing, elevator control, process control
-- one-shot control vs. planning vs. real-time dynamic control
-- issue: representation: if there is specific appropriate
representation such as a neural network, an analogue circuit for
control, schedules, plans, then GP can work on the
representation directly
-- GP population can be initially seeded by variants of successful
control systems in their representation (Neural nets, rules for
decision trees, plans) and then GP can refine/enhance the solution
to the control problem
-- issue: fitness: Sometimes historical data is available for testing control
but for real-time control problems (network management) how does
one evaluate fitness of a controller? It may not be always possible
to use an object in a safe environment to test it.
-- GP can help discover/abstract new features for the control problem
(from raw sensor data) that can enhance a machine learning method
being used for the actual control
-- GP can provide experience in simulating environments for estimating
fitness for solutions to control problems
-- synergy the other way:
If a GP run is viewed as a "control problem" in terms of providing a
schedule for different parameters, then knowledge of parameters can
help treat it as a control problem (for instance apply neural nets
decision trees to the parameters for optimizing them, abstract
patterns of successful runs and use it to control future runs -- meta
learning ).
Astro Teller's subgroup (loosely regarding prediction problems) {Teller}
GP + NNs
1. Cellular encoding is an example of such a synthesis
2. Try learning NN's and then use them as GP primitives.
(that is, if the NN takes 6 inputs and outputs 1 value,
make a primitive NN-primitive(x,y,z,u,v,w))
GP + Decision Trees
1. Use GP to evolve alternatives to information gain
2. Use a Decision Tree but put small GP trees in each of
the leaves instead of simply returning the
majority classification at that leaf.
3. 2 is a way of putting "expert knowledge" into your learning
system. It is debatable if this is really better than
simply seeding your initial population with a GP tree
with that expert knowledge.
GP + Simulated annealing
1. GP already has most of the benefits of simulated annealing
2. Try doing simulated annealing on each of the gen 0 programs
before starting the actual run.
3. Simulated annealing as a genetic operator.
GP + GA
1. Use GA's instead of constants so the constants can evolve.