27
Bi-directional Bi-directional incremental evolution incremental evolution Dr Tatiana Kalganova Dr Tatiana Kalganova Electronic and Computer Electronic and Computer Engineering Dept. Engineering Dept. Bio-Inspired Intelligent Bio-Inspired Intelligent Systems Group Systems Group Brunel University Brunel University

Bi-directional incremental evolution

  • Upload
    giulio

  • View
    46

  • Download
    0

Embed Size (px)

DESCRIPTION

Bi-directional incremental evolution. Dr Tatiana Kalganova Electronic and Computer Engineering Dept. Bio-Inspired Intelligent Systems Group Brunel University. Outline. Evolutionary process Evolvable hardware Bi-directional incremental evolution: basic concept - PowerPoint PPT Presentation

Citation preview

Page 1: Bi-directional incremental evolution

Bi-directional incremental Bi-directional incremental evolutionevolution

Dr Tatiana KalganovaDr Tatiana Kalganova

Electronic and Computer Electronic and Computer Engineering Dept.Engineering Dept.

Bio-Inspired Intelligent Systems Bio-Inspired Intelligent Systems GroupGroup

Brunel UniversityBrunel University

Page 2: Bi-directional incremental evolution

OutlineOutline

Evolutionary processEvolutionary process Evolvable hardwareEvolvable hardware Bi-directional incremental Bi-directional incremental

evolution: basic conceptevolution: basic concept Bi-directional incremental Bi-directional incremental

evolution in evolvable hardwareevolution in evolvable hardware Some applications of bi-directional Some applications of bi-directional

incremental evolutionincremental evolution

Page 3: Bi-directional incremental evolution

What is an evolution?What is an evolution?

Evolution

Chromosome:DNA

Chromosome:DNA

Selection

CrossoverMutation

Page 4: Bi-directional incremental evolution

What is an evolvable What is an evolvable hardware (EHW)?hardware (EHW)?

The logic circuit is designed using The logic circuit is designed using evolutionary algorithmevolutionary algorithm

Y 3

Y 2

Y 0

x 0 x 1 x 2 x 3

Y 1

mult2.pla

15

62

3

4

7

Y 4

3

mult28

5

9

10

Y 5

Y 3

Y 2

mult212

Y 1

Y 0

7

11

mult21

x 0 x 1 x 2 x 3 x 4x 5

mult3.pla

mult24

mult22

mult26

chromosome

chromosome

Evolution

Selection

CrossoverMutation

Page 5: Bi-directional incremental evolution

Circuit design problem in Circuit design problem in evolvable hardwareevolvable hardware

Tested logic function

X1 X2 … XN Y1 Y2 … YM 0 0 … 1 1 0 … 0 0 1 … 1 0 1 … 0

. .

. .

. . 1 1 … 1 1 1 … 0

Logic circuit

Inputs X1 X2 … XN 0 0 … 1 0 1 … 1

.

.

. 1 1 … 1

Outputs Y1 Y2 … YM 0 1 … 1 0 1 … 1

.

.

. 1 1 … 0

Input1: Logic function Input2: Logic circuit Output: Test v's function

Page 6: Bi-directional incremental evolution

““Stalling” effect in Stalling” effect in evolutionary processevolutionary process

Circuit functionality fitness, F1

75

80

85

90

95

1001

316

631

946

1261

1576

1891

2206

2521

2836

3151

3466

3781

4096

4411

4726

The number of generations

Cir

cuit

fu

nct

ion

ali

ty

fitn

ess

, F

1

Circuit functionality fitness, F1

Mult2.pla - 5.000 generationsMult3.pla – 16.000.000 generationsMult4.pla - ? … 150.000.000.000 ?

Page 7: Bi-directional incremental evolution

““Stalling” effect in Stalling” effect in evolutionary processevolutionary process

REASON:REASON: the task is too complex the task is too complex to solve at once. to solve at once.

SOLUTION:SOLUTION: introduce the new introduce the new evolutionary process once the evolutionary process once the “stalling” effect is appeared“stalling” effect is appeared

IMPLEMENTATION:IMPLEMENTATION: the new fitness the new fitness function is used for each function is used for each evolutionary processevolutionary process

Page 8: Bi-directional incremental evolution

Bi-directional Incremental Bi-directional Incremental EvolutionEvolution

IDEA:IDEA: two directions of evolution to two directions of evolution to obtain the desired solutionobtain the desired solution

CONCEPT:CONCEPT: evolve the system from evolve the system from complex to simple and optimise using complex to simple and optimise using evolution from simple to complexevolution from simple to complex

REQUIREMENTS:REQUIREMENTS: knowledge of system knowledge of system evolved and identification of heuristicsevolved and identification of heuristics

SUCCESS:SUCCESS: use of simple different use of simple different evolutionary processes identified by evolutionary processes identified by various heuristicsvarious heuristics EXAMPLE:EXAMPLE: evolvable hardware evolvable hardware

Page 9: Bi-directional incremental evolution

Bi-directional Incremental Bi-directional Incremental EvolutionEvolution

Stage 1:Stage 1: Evolution Evolution towards a towards a modularised modularised systemsystem

IDEA:IDEA: Evolution Evolution performs from performs from complex system complex system to sub-systemsto sub-systems

Stage 2:Stage 2: Evolution Evolution towards an towards an optimised systemoptimised system

IDEA:IDEA: Evolution Evolution performs from performs from sub-systems to sub-systems to complex systemcomplex system

Page 10: Bi-directional incremental evolution

Bi-directional Incremental Bi-directional Incremental Evolution (BIE) in EHWEvolution (BIE) in EHW

Bidirectional Incremental EvolutionE

v ol

utio

n to

war

dsm

odul

aris

ed s

yste

m

Evo

lutio

n to

war

dsop

timis

ed s

yste

m

Complex circuit,S

...

Standardfunctional

decomposition

EHW-orienteddecomposition

Assembling

S1 S2 Sk

Simpler sub-circuits

Page 11: Bi-directional incremental evolution

Bi-directional Incremental Bi-directional Incremental Evolution (BIE) for EHWEvolution (BIE) for EHW

IdeaIdea

Evolve the system Evolve the system gradually using gradually using decomposition methodsdecomposition methods

1) Decompose the system into 1) Decompose the system into sub-systemssub-systems

2) Evolve each sub-system 2) Evolve each sub-system separatelyseparately

3) Assemble the complex 3) Assemble the complex systemsystem

4) Evolve the complex system4) Evolve the complex system

AdvantagesAdvantages• Evolving the Evolving the

circuits of the large circuits of the large number of number of variablesvariables

• Evolving the Evolving the circuits of any circuits of any complexitycomplexity

• No restrictions on No restrictions on the application the application tasktask

Page 12: Bi-directional incremental evolution

EVOLVE:an extrinsic EHW

Result: C b0 (T 0)

Keep the genotypeof the best

chromosomeC b0 (T 0)

Define an outputpartitioning vector, vo

and an productpartitioning vector, vp

Generate the truthtable, T 1I(n, | vp|),

O (|vo|, |vp|)

Generate the truthtable, T 2

I(n , p-| vp|),O (|vo|, p-| vp|)

Generate the truthtable, T 3I(n , |vp|),

O (m -|vo|, |vp|)

EVOLVE:an extrinsic EHW

Result: C b1(T 1)

T 0

IP (R )

IP (C b0(T 0)) EVOLVE:an extrinsic

EHWResult: C b3 (T 3)

T 1T 3

IP (R )fo(vo) and f io (v io)

for T 2 from T 0 arehigh ?

EVOLVE:an extrinsic

EHWResult: C b2 (T 2)

Fully functionalsolution for T 1 isgenerated. ( S 1)

IP (C b0(T 0))

Yes

NoEVOLVE:

an extrinsicEHW

Result: C b2 (T 2)

IP (R )

Fully functionalsolution for T 2 isgenerated ( S 2).

T 0=T 2C b0 (T 0)=C b2 (T 2)

fo(vo) and f io (v io)for T 3 from T 0 are

high ?

NoYes

EVOLVE:an extrinsic

EHWResult: C b3 (T 3)

IP (C b0(T 0))

Fully functionalsolution for T 3 isgenerated ( S 3).

EVOLVE:an extrinsic

EHWResult: C b3 (T 3)

IP (R )

T 0=T 3C b0 (T 0)=C b3 (T 3)

Generate thetruth table T 0 of

complexsystem, S 0

Page 13: Bi-directional incremental evolution

BIEBIEin EHWin EHW Gate

ArrayX

F

x 1x 2

x n

f1f2

fm

Evolved system

GateArray 1

X

x 1x 2

x n

f1f2

fm1

F1

GateArray sX

x 1x 2

x n

f1f2

fms

Fs

Output decomposition

GateArray 1

X 1

x 1x 2

x n1

h 1h 2

h k1

H 1

GateArray 2

X 2

x 1x 2

x n2

h 1h 2

h k2

H 2

Input decomposition

GateArray S f1

f2

fm

X s

x 1x 2

x ns

F

GateArray 1

x 1x 2

x n

f1f2

fm

GateArray s

X

x 1x 2

x n

f1f2

fm

Shannon decomposition

F

f1f2

fm

x 1x 2

x n

Evolved sub-systems

Page 14: Bi-directional incremental evolution

BIE:BIE:EHW-oriented EHW-oriented decompositiondecomposition

S i(n, m, p)(F 1 )

S 0 (7, 10, 128)(F 1 )

S 1 (7, 3, 128)(F 2 )

S 2 (7, 7, 128)(F 1 )

S 3 (7, 3, 128)(F 1 ), (F 2 )

S 4 (7, 4, 128)(F 1 )

S 8 (7, 1, 128)(F 1 ), (F 2 )

S 7 (7, 1, 128)(F 1 ), (F 2 )

S 5 (7, 1, 128)(F 1 ), (F 2 )

Diagram of evolving logicfunction of 7-inputs and 10outputs (z5xp1_d.pla) using

DCE with EHW-oriented outputdecomposition

S 6 (7, 3, 128)(F 1 )

Evolution towards amodularised system

Evolution towards anoptimised system

S 9 (7, 1, 128)(F 1 ), (F 2 )

Page 15: Bi-directional incremental evolution

BIE: sub-circuit allocationBIE: sub-circuit allocation

Evolution towards anoptimised system

Diagram of evolving logicfunction of 7-inputs and 10outputs (z5xp1_d.pla) usingincremental evolution withEHW-oriented output and

Shannon's decompositions

S 3 (7, 2, 64)(F 1 ), (F 2 )

Evolution towards amodularised system

S 6 (7, 1, 64)(F 2 )

S 7 (7, 1, 64)(F 1 ), (F 2 )

S 5 (7, 1, 128)(F 2 )

S 8 (7, 3, 128)(F 1 )

S 1 1 (7, 1, 64)(F 2 )

S 1 0 (7, 2, 64)(F 1 ), (F 2 )

S 9 (7, 2, 64)(F 2 )

S 1 2 (7, 1, 64)(F 1 ), (F 2 )

S 4 (7, 5, 128)(F 1 )

S 0 (7, 10, 128)(F 1 )

S i(n, m, p)(F 1 )

S 1 (7, 3, 128)(F 2 )

S 2 (7, 2, 64)(F 2 )

Page 16: Bi-directional incremental evolution

Direct and incremental Direct and incremental evolutionsevolutions

10 000 20 000 30 000 40 000 50 000 60 000 70 000 80 000

60

70

80

90

100S 0 S 2 S 3 S 4 S 5 S 6 S 7 S 8 S 9

Generations

Circ

uit

fu

nct

ion

alit

y

500

Performance of direct and bidirectional incremental evolutionStage 1: Synthesis of the fully functional circuit

IncrementalDirect

Page 17: Bi-directional incremental evolution

BIE in applicationsBIE in applications

Evolution of complex Evolution of complex combinational logic circuitscombinational logic circuits

Optimisation of control the Optimisation of control the fermentation processfermentation process

Prediction in investment appraisalPrediction in investment appraisal

Page 18: Bi-directional incremental evolution

BIE in prediction in BIE in prediction in investment appraisalinvestment appraisal

Problem:Problem:• Design an Intelligent System for Risk Design an Intelligent System for Risk

Classification of Stock Investment Classification of Stock Investment ProjectsProjects

Page 19: Bi-directional incremental evolution

Training networkTraining network

An effective bi-directional An effective bi-directional evolutionary strategy is evolutionary strategy is elaborated, as direct evolution fails elaborated, as direct evolution fails to rich a solution to the complex to rich a solution to the complex problem of optimising the weights problem of optimising the weights and shift terms in the fuzzy and shift terms in the fuzzy network over a set of investment network over a set of investment projects. projects.

Page 20: Bi-directional incremental evolution

BIEBIE

The strategy involves a decomposition The strategy involves a decomposition and an incremental part. and an incremental part.

The integral problem is first divided into The integral problem is first divided into subtasks of decreasing complexity by subtasks of decreasing complexity by partitioning accordingly the training set partitioning accordingly the training set of projects. of projects.

Then the subtasks are merged Then the subtasks are merged incrementally to optimise the integral incrementally to optimise the integral solution.solution.

Page 21: Bi-directional incremental evolution

Training partitioningTraining partitioning

{pro jec t 1 , p ro jec t 2 ,p ro jec t 3 ,p ro jec t 4 , p ro jec t 5 , p ro jec t 6 }

{pro jec t 1 }{pro jec t 2 , p ro jec t 3 ,p ro jec t 4 , p ro jec t 6 }

{pro jec t 6 }{pro jec t 2 , p ro jec t 3 ,

p ro jec t 4 }

{pro jec t 3 ,p ro jec t 4 }evo lu tion towards

decreasingcom plexity tasks

evo lu tion towardsincreasing

com plexity tasksfu ll-s ize tra in ing se t

{pro jec t 5 }firs t-leve lpartition ing

{pro jec t 2 , p ro jec t 3 ,p ro jec t 4 }

{pro jec t 2 , p ro jec t 3 ,p ro jec t 4 , p ro jec t 6 }

second-leve lpartition ing

{pro jec t 2 }th ird -leve lpartition ing

firstincrem enta l

leve l

secondincrem enta l

leve l

th irdincrem enta l

leve l

Training-set partitioning and increment during bidirectional incremental evolutionDecomposition part: the training set is partitioned at several levels, evolving the fuzzy network towards tasks with decreasing complexity.Incremental part: the training subsets are merged incrementally in reverse direction, evolving the network towards solving the integral problem.A dynamic objective function is applied at each decomposition and incremental level.

Page 22: Bi-directional incremental evolution

BIE resultsBIE results

Performance of bidirectional incremental evolution and direct evolution in maximum fitness per generationBlack line: bidirectional incremental evolution advances through several decomposition and incremental tasks and solves the general problem in 148,243 generations.Lighter line: direct evolution makes some initial progress and then stalls.

30000 60000 90000 120000 1500000

10

20

30

40

50

60

70

80

90

100

Generations

RF

NN

Fu

ncti

on

ality

20

00

0

projects 1,2,3,4,5,6

39

01

4

project 1

62

47

9

project 5

72

47

9

2,3,4,6 6

77

62

6

projects 2,3,4

12

76

26

342

234

2346

1,2,3,4,5,6

14

82

43

13

27

62

incr

emen

t

al p

art

decomposition part

direct evolution

bidirectional incremental evolution

Page 23: Bi-directional incremental evolution

Experimental resultsExperimental results

The bi-directional strategy evolves The bi-directional strategy evolves a fully functional fuzzy network in a fully functional fuzzy network in 148,243148,243 generations. generations.

Direct evolution reaches only Direct evolution reaches only 46.33%46.33% maximum fitness in maximum fitness in 500,000500,000 generations. generations.

Thus, the empirical results prove Thus, the empirical results prove decisively the efficiency of the decisively the efficiency of the developed evolutionary strategy.developed evolutionary strategy.

Page 24: Bi-directional incremental evolution

Some resultsSome results

In all applications mentioned In all applications mentioned earlier it has been obtained that earlier it has been obtained that the optimal solution has been the optimal solution has been obtained at least in 100 times obtained at least in 100 times quicker then using standard quicker then using standard evolutionevolution

The quality of evolved solution in The quality of evolved solution in this case remains the samethis case remains the same

Page 25: Bi-directional incremental evolution

BIE in applications: BIE in applications: SummarySummary

Design of complex combinational Design of complex combinational circuitscircuits

Use of Use of • Decomposition methodsDecomposition methods• Evolutionary strategyEvolutionary strategy

Page 26: Bi-directional incremental evolution

BIE in applications: BIE in applications: SummarySummary

Prediction in investment appraisalPrediction in investment appraisal

Use of Use of • Decomposition methodsDecomposition methods• Automatic re-scaling fitness functionAutomatic re-scaling fitness function• Neural networkNeural network• Fuzzy logicFuzzy logic

Page 27: Bi-directional incremental evolution

ConclusionConclusion

Bi-directional incremental evolution Bi-directional incremental evolution is the technique that can be used in is the technique that can be used in evolution of complex systemsevolution of complex systems

BIE allows to use evolutionary BIE allows to use evolutionary algorithms in both online and offline algorithms in both online and offline calculationscalculations

BIE can be used in large range of BIE can be used in large range of applicationsapplications