Extraction

of

Rules

from

Discrete-Time

Recurrent

Neural

Networks

Christian

W.

Omlin

C.

Lee

Giles

NEC

Research

Institute

Independence

Way

Princeton

N.J.

USA

Phone

-LRB-

-RRB-

g

E-mail

fomlinc,gilesg@research.nj.nec.com

Technical

Report

and

University

of

Maryland

College

Park

MD

Abstract

The

extraction

of

symbolic

knowledge

from

trained

neural

networks

and

the

direct

encoding

of

-LRB-

partial

-RRB-

knowledge

into

networks

prior

to

training

are

important

issues

They

allow

the

exchange

of

information

between

symbolic

and

connectionist

knowledge

representations

The

focus

of

this

paper

is

on

the

quality

of

the

rules

that

are

extracted

from

recurrent

neural

networks

Discrete-time

recurrent

neural

networks

can

be

trained

to

correctly

classify

strings

of

a

regular

language

Rules

defining

the

learned

grammar

can

be

extracted

from

networks

in

the

form

of

deterministic

finite-state

automata

-LRB-

DFA

's

-RRB-

by

applying

clustering

algorithms

in

the

output

space

of

recurrent

state

neurons

Our

algorithm

can

extract

different

finite-state

automata

that

are

consistent

with

a

training

set

from

the

same

network

We

compare

the

generalization

performances

of

these

different

models

and

the

trained

network

and

we

introduce

a

heuristic

that

permits

us

to

choose

among

the

consistent

DFA

's

the

model

which

best

approximates

the

learned

regular

grammar

Appeared

in

Neural

Networks

-LRB-

-RRB-

p.

Copyright

Elsevier

Publishing

Neural

Network

Rule

Extraction

INTRODUCTION

There

has

been

much

interest

in

the

integration

and

extraction

of

knowledge

from

neural

networks

-LRB-

Towell

et

al.

Frasconi

et

al.

Hanson

Burr

Giles

et

al.

Watrous

Kuhn

Fu

-RRB-

One

reason

is

that

the

lack

of

understanding

of

the

rules

that

underly

neural

network

performance

has

limited

their

use

in

some

application

domains

Another

is

that

some

intelligent

processing

naturally

requires

the

use

of

symbolic

and

rule-based

knowledge

Recurrent

neural

networks

with

discrete-time

inputs

readily

lend

themselves

to

certain

types

of

knowledge

encoding

and

extraction

in

particular

the

ordered

triple

of

a

discrete

Markov

fstate

input

next-stateg

process

-LRB-

Giles

et

al.

Omlin

Giles

-RRB-

What

this

paper

addresses

is

the

validity

and

usefulness

of

extracting

this

information

based

on

a

representation

of

the

neurons

activation

Background

Recently

the

training

of

recurrent

neural

networks

that

recognize

finite

state

languages

has

been

discussed

by

several

authors

-LRB-

Williams

Zipser

Cleeremans

Servan-Schreiber

McClelland

Elman

Giles

et

al.

Watrous

Kuhn

-RRB-

The

motivation

for

this

work

has

been

multifold

from

understanding

how

these

neural

networks

process

natural

language

to

quantifying

and

understanding

their

computational

characteristics

Cleeremans

-LRB-

-RRB-

and

Elman

-LRB-

-RRB-

trained

recurrent

networks

by

predicting

the

next

symbol

using

a

truncation

of

the

backward

recurrence

Cleeremans

-LRB-

-RRB-

concluded

that

the

hidden

unit

activations

represented

past

histories

and

that

clusters

of

these

activations

can

represent

the

states

of

the

generating

automaton

The

work

reported

by

Giles

et

al.

-LRB-

-RRB-

is

an

extension

of

Cleeremans

-LRB-

-RRB-

in

that

complete

deterministic

finite-state

automata

are

extracted

from

recurrent

networks

Watrous

Kuhn

-LRB-

-RRB-

implemented

an

alternative

approach

to

state

machine

extraction

In

related

work

Crutchfield

Young

-LRB-

-RRB-

extract

finite-state

automata

from

general

dynamical

systems

though

the

systems

do

not

have

dynamical

inputs

Motivation

Grammars

and

automata

are

intimately

related

Grammars

generate

the

languages

that

automata

recognize

The

computational

power

of

recurrent

networks

has

been

proven

by

relating

these

networks

to

automata

Recurrent

networks

have

recently

been

shown

to

be

computationally

quite

powerful

i.e.

Turing

equivalent

-LRB-

Siegelmann

Sontag

-RRB-

The

representational

limitations

of

Neural

Network

Rule

Extraction

recurrent

network

models

have

been

explored

by

showing

their

relationships

to

automata

-LRB-

Goudreau

et

al.

Giles

et

al.

-RRB-

Thus

it

is

natural

to

see

how

well

recurrent

networks

learn

what

they

can

be

proven

to

represent

This

being

said

it

is

not

evident

that

recurrent

networks

are

the

best

tools

for

learning

regular

grammars

However

regular

language

inference

requires

that

state

information

to

be

stored

over

indefinite

periods

of

time

and

no

feature

extraction

is

necessary

for

learning

Thus

grammatical

inference

is

a

good

test

bed

in

which

to

investigate

issues

related

to

the

representation

of

symbolic

knowledge

in

recurrent

networks

and

to

explore

their

computational

capabilities

For

example

Giles

and

Omlin

-LRB-

-RRB-

show

how

grammar

learning

can

be

useful

in

quantifying

the

computational

power

of

a

pruning

algorithm

of

recurrent

neural

networks

Jim

et

al.

-LRB-

-RRB-

show

that

training

noisy

recurrent

networks

with

grammatical

strings

is

a

good

measure

of

the

effect

of

different

type

of

noise

insertion

methodologies

on

networks

generalization

and

convergence

performance

The

performance

of

recurrent

networks

on

long

temporal

sequences

is

naturally

explored

by

using

grammatical

strings

-LRB-

Manolios

Fanelli

-RRB-

Frasconi

et

al.

-LRB-

-RRB-

used

grammar

learning

and

representation

to

explore

a

new

recurrent

network

architecture

Furthermore

recent

results

by

Giles

et

al.

-LRB-

-RRB-

and

Clouse

et.al

-LRB-

-RRB-

imply

that

neural

networks

under

certain

constraints

can

learn

extremely

large

grammars

and

may

be

competitive

with

other

methods

The

extraction

of

-LRB-

symbolic

-RRB-

rules

from

both

feed-forward

as

well

as

recurrent

neural

networks

has

become

an

active

area

of

research

-LRB-

Cleeremans

et

al.

Towell

et

al.

Giles

et

al.

Fu

-RRB-

The

following

question

is

the

focus

of

our

work

How

good

are

the

rules

extracted

from

recurrent

networks

This

is

an

important

one

and

to

our

knowledge

has

not

been

discussed

anywhere

else

in

the

literature

Overview

We

train

discrete

second-order

recurrent

neural

networks

to

recognize

strings

of

a

regular

language

given

a

finite

set

of

positive

and

negative

example

strings

The

DFAs

extracted

from

trained

networks

depend

on

a

clustering

parameter

and

different

minimized

DFAs

may

be

obtained

for

different

values

of

the

clustering

parameter

Several

among

the

different

DFAs

may

correctly

classify

all

strings

of

the

training

set

Given

a

set

of

extracted

DFAs

which

may

accept

different

regular

languages

the

question

arises

which

DFA

best

approximates

the

unknown

source

grammar

i.e.

Neural

Network

Rule

Extraction

which

extracted

DFA

assigns

the

same

label

as

the

unknown

source

grammar

to

as

many

strings

as

possible

A

model

selection

heuristic

is

introduced

which

allows

us

to

choose

among

the

different

DFAs

the

one

that

best

models

the

regular

language

The

remainder

of

this

paper

is

organized

as

follows

We

give

a

brief

introduction

ot

regular

languages

and

grammatical

inference

in

section

followed

by

a

presentation

of

the

neural

network

architecture

and

training

in

section

we

also

include

some

generalization

results

of

trained

networks

on

long

test

strings

The

rule

extraction

algorithm

and

the

problem

of

selecting

among

the

extracted

DFAs

the

best

model

are

discussed

in

detail

in

section

A

summary

of

the

empirical

results

followed

by

a

short

discussion

of

related

work

and

possible

future

research

directions

conclude

this

paper

REGULAR

LANGUAGES

Definitions

Regular

languages

represent

the

smallest

class

of

formal

languages

in

the

Chomsky

hierarchy

-LRB-

Hopcroft

Ullman

-RRB-

Regular

languages

are

generated

by

regular

grammars

A

regular

grammar

G

is

a

G

S

N

T

P

where

S

is

the

start

symbol

N

and

T

are

non-terminal

and

terminal

symbols

respectively

and

P

are

productions

of

the

form

A

a

or

A

aB

where

A

B

ffl

N

and

a

ffl

T

The

regular

language

generated

by

G

is

denoted

L

-LRB-

G

-RRB-

Associated

with

each

regular

language

L

is

a

deterministic

finite-state

automaton

-LRB-

DFA

-RRB-

M

which

is

an

acceptor

for

the

language

L

-LRB-

G

-RRB-

i.e.

L

-LRB-

G

-RRB-

L

-LRB-

M

-RRB-

DFA

M

accepts

only

strings

which

are

a

member

of

the

regular

language

L

-LRB-

G

-RRB-

Formally

a

DFA

M

is

a

M

Q

R

F

ffi

where

akg

is

the

alphabet

of

the

language

L

Q

sMg

is

a

set

of

states

R

ffl

Q

is

the

start

state

F

Q

is

a

set

of

accepting

states

and

ffi

Q

Q

define

state

transitions

in

M

A

string

x

is

accepted

by

the

DFA

M

and

hence

is

a

member

of

the

regular

language

L

-LRB-

M

-RRB-

if

an

accepting

state

is

reached

after

the

string

x

has

been

read

by

M

Alternatively

a

DFA

M

can

also

be

considered

a

generator

which

generates

the

regular

language

L

-LRB-

M

-RRB-

Grammatical

Inference

Grammatical

inference

the

problem

of

inferring

grammar

-LRB-

s

-RRB-

from

samples

of

strings

of

an

unknown

regular

language

is

a

NP-complete

problem

-LRB-

Gold

Angluin

Smith

-RRB-

The

problem

of

Neural

Network

Rule

Extraction

grammatical

inference

can

be

stated

informally

as

follows

Given

a

finite

set

of

strings

along

with

a

label

indicating

whether

or

not

a

string

is

a

member

of

the

language

find

the

rules

which

define

the

language

For

example

we

may

be

given

the

following

two

sets

of

positive

and

negative

example

strings

positive

examples

negative

examples

111 100110111

In

this

example

the

rule

might

be

to

reject

strings

which

contain

three

or

more

consecutive

's

and

to

accept

all

other

strings

It

is

intuitively

clear

that

the

inferred

grammar

will

better

model

the

underlying

language

if

more

example

strings

both

positive

and

negative

are

provided

as

input

to

the

inference

algorithm

Our

algorithm

extracts

rules

from

-LRB-

trained

-RRB-

networks

in

the

form

of

DFAs

which

can

be

readily

transformed

into

a

regular

grammar

where

each

state

of

the

DFA

corresponds

to

a

non-terminal

symbol

and

the

DFA

transitions

correspond

to

production

rules

RECURRENT

NEURAL

NETWORK

Architecture

Recurrent

neural

networks

have

been

shown

to

have

powerful

capabilities

for

modeling

many

computational

structures

an

excellent

discussion

of

recurrent

neural

network

models

and

references

can

be

found

in

-LRB-

Hertz

Krogh

Palmer

-RRB-

To

learn

grammars

we

use

a

second-order

recurrent

neural

network

-LRB-

Lee

et

al.

Giles

et

al.

Sun

et

al.

Pollack

-RRB-

The

network

architecture

is

illustrated

in

figure

This

net

has

N

recurrent

hidden

neurons

labeled

Sj

L

special

Neural

Network

Rule

Extraction

nonrecurrent

input

neurons

labeled

Ik

and

real-valued

weights

labeled

Wijk

As

long

as

the

number

of

input

neurons

is

small

compared

to

the

number

of

hidden

neurons

the

complexity

of

the

network

only

grows

as

O

-LRB-

-RRB-

the

same

as

a

linear

network

We

refer

to

the

values

of

the

hidden

neurons

collectively

as

a

state

vector

S

in

the

finite

N-dimensional

space

-LSB-

-RSB-

N.

Note

that

the

weights

Wijk

modify

a

product

of

the

hidden

Sj

and

input

Ik

neurons

This

quadratic

form

directly

represents

the

state

transition

diagrams

of

a

state

process

finput

stateg

-RRB-

fnextstateg

This

recurrent

network

accepts

a

time-ordered

sequence

of

inputs

and

evolves

with

dynamics

defined

by

the

following

equations

S

-LRB-

t

-RRB-

i

g

-LRB-

i

-RRB-

i

X

j

k

WijkS

-LRB-

t

-RRB-

j

I

-LRB-

t

-RRB-

k

where

g

is

a

sigmoid

discriminant

function

Each

input

string

is

encoded

into

the

input

neurons

one

character

per

discrete

time

step

t

The

above

equation

is

then

evaluated

for

each

hidden

neuron

Si

to

compute

the

next

state

vector

S

of

the

hidden

neurons

at

the

next

time

step

t

With

unary

encoding

the

neural

network

is

constructed

with

one

input

neuron

for

each

character

in

the

alphabet

of

the

relevant

language

This

condition

might

be

too

restrictive

for

grammars

with

large

alphabets

Training

Procedure

A

special

recurrent

neuron

is

selected

as

the

network

's

output

neuron

A

network

learns

by

comparing

its

actual

output

with

the

desired

classification

at

the

end

of

a

string

Weight

updates

are

computed

using

a

second-order

form

of

the

RTRL

net

of

Williams

-LRB-

-RRB-

which

computes

the

partial

derivative

of

a

quadratic

error

function

with

respect

to

all

weights

Wijk

Network

Performance

We

consider

a

regular

language

over

the

alphabet

that

is

recognized

by

a

randomly

generated

minimal

DFA

From

a

data

set

consisting

of

alternating

positive

and

negative

example

strings

starting

with

strings

of

length

we

formed

five

different

training

sets

The

first

training

set

consisted

of

all

example

strings

the

remaining

training

sets

consisted

of

the

first

and

strings

respectively

of

the

example

strings

This

was

done

in

order

to

achieve

a

variety

of

generalization

performances

for

networks

of

fixed

size

All

the

weights

were

initialized

to

random

values

in

the

interval

-LSB-

-RSB-

The

learning

rate

ff

and

the

momentum

were

both

set

to

Neural

Network

Rule

Extraction

We

used

an

incremental

learning

strategy

where

a

network

is

first

trained

on

a

small

subset

of

all

training

strings

-LRB-

working

set

-RRB-

this

subset

only

contains

the

shortest

strings

When

a

network

has

either

learned

to

correctly

classify

all

the

strings

of

a

working

set

or

a

maximum

number

of

epochs

has

expired

for

the

current

working

set

new

strings

from

the

training

set

are

added

to

the

working

set

and

the

network

is

trained

on

this

expanded

working

set

The

working

set

is

expanded

until

a

network

correctly

classifies

all

the

strings

of

the

training

set

This

incremental

training

heuristic

aims

at

overcoming

the

problems

that

arise

from

training

on

long

strings

with

a

gradient

descent

learning

algorithm

-LRB-

Bengio

et

al.

-RRB-

We

trained

networks

with

eight

state

neurons

on

each

of

the

five

training

sets

and

performed

a

statistical

analysis

on

the

networks

average

generalization

performances

-LRB-

table

-RRB-

on

three

test

sets

consisting

of

alls

string

of

length

up

to

-LRB-

strings

-RRB-

randomly

strings

of

length

and

randomly

strings

of

length

We

observe

that

the

average

generalization

performance

improves

with

increasing

training

set

size

which

contain

strings

of

increasing

length

the

confidence

intervals

are

non-overlapping

This

result

is

not

surprising

since

networks

trained

on

smaller

data

sets

have

less

information

and

thus

learn

a

poorer

model

of

the

source

grammar

Networks

generally

perform

poorer

when

tested

on

strings

that

are

longer

compared

to

the

training

strings

a

network

's

internal

DFA

representation

becomes

increasingly

unstable

with

increasing

string

length

which

leads

to

string

misclassification

The

next

section

addresses

the

issue

of

how

DFA

extraction

can

be

made

computationally

feasible

and

the

quality

of

the

extracted

rules

i.e.

how

well

do

extracted

DFAs

generalize

compared

to

the

network

's

generalization

performance

we

also

compare

the

performance

of

DFAs

that

are

extracted

with

different

quantization

levels

from

the

same

network

RULE

EXTRACTION

Algorithm

We

describe

our

heuristic

for

extracting

rules

from

recurrent

networks

in

the

form

of

DFAs

-LRB-

Giles

et

al.

-RRB-

Different

approaches

are

described

in

Cleeremans

-LRB-

-RRB-

and

in

Watrous

Kuhn

-LRB-

-RRB-

The

heuristic

is

not

restricted

to

second-order

networks

and

can

be

applied

to

any

discrete-time

neural

network

The

algorithm

used

to

extract

a

finite-state

automaton

from

a

network

is

based

Neural

Network

Rule

Extraction

on

the

observation

that

the

outputs

of

the

recurrent

state

neurons

of

a

trained

network

tend

to

cluster

as

shown

in

figure

The

outputs

of

a

trained

recurrent

network

which

is

tested

on

a

small

test

set

are

shown

as

two-dimensional

projections

into

the

-LRB-

Si

Sj

-RRB-

plane

for

all

possible

pairs

-LRB-

Si

Sj

-RRB-

-LRB-

projections

-RRB-

Our

hypothesis

is

that

collections

of

these

clusters

correspond

to

the

states

of

the

finite-state

automaton

the

network

has

learned

Furthermore

these

clusters

tend

to

be

well

separated

in

networks

which

learned

a

given

grammar

well

as

measured

by

their

generalization

performance

on

unseen

strings

For

the

DFA

extraction

we

consider

network

states

where

the

output

of

the

response

neuron

is

larger

than

to

correspond

to

accepting

DFA

states

otherwise

the

current

network

state

corresponds

to

a

rejecting

DFA

state

The

problem

of

DFA

extraction

is

thus

reduced

to

identifying

clusters

in

the

output

space

-LSB-

-RSB-

N

of

all

state

neurons

We

use

a

dynamical

state

space

exploration

which

identifies

the

DFA

states

and

at

the

same

time

avoids

exploration

of

the

entire

space

which

is

computationally

not

feasible

The

extraction

algorithm

divides

the

output

of

each

of

the

N

state

neurons

into

q

intervals

of

equal

size

yielding

qN

partitions

in

the

space

of

outputs

of

the

state

neurons

We

also

refer

to

q

as

the

quantization

level

Starting

in

some

defined

initial

network

state

the

trained

weights

of

the

network

will

cause

the

current

network

state

to

follow

a

continuous

state

trajectory

as

symbols

are

presented

as

input

The

algorithm

considers

all

strings

in

alphabetical

order

starting

with

length

This

procedure

defines

a

search

tree

with

the

initial

state

as

its

root

the

number

of

successors

of

each

node

is

equal

to

the

number

of

symbols

in

the

input

alphabet

Links

between

nodes

correspond

to

transitions

between

DFA

states

The

search

is

performed

in

breadth-first

order

When

a

transition

is

made

into

another

-LRB-

not

necessarily

different

-RRB-

partition

then

all

paths

from

that

new

network

state

are

followed

for

subsequent

input

symbol

creating

new

states

in

the

DFA

for

each

new

input

symbol

subject

to

the

following

three

conditions

-LRB-

-RRB-

When

a

previously

visited

partition

is

reached

then

only

the

new

transition

is

defined

between

the

previous

and

the

current

partition

no

new

DFA

state

is

created

This

corresponds

to

pruning

the

search

tree

at

that

node

-LRB-

-RRB-

In

general

many

different

state

vectors

belong

to

the

same

partition

We

choose

the

state

vector

which

first

reached

a

partition

as

the

new

initial

state

for

all

subsequent

symbols

This

condition

only

applies

when

two

or

more

transitions

from

a

partition

to

another

partition

are

extracted

-LRB-

-RRB-

When

a

transition

leads

from

a

partition

immediately

to

the

same

partition

then

a

loop

is

created

and

the

search

tree

is

also

pruned

at

that

node

The

algorithm

terminates

when

no

new

partitions

are

visited

for

the

first

time

hence

Neural

Network

Rule

Extraction

no

new

DFA

states

are

created

and

all

possible

transitions

for

all

DFA

states

have

been

extracted

The

extraction

would

seem

computationally

infeasible

if

all

qN

partitions

had

to

be

visited

However

the

clusters

corresponding

to

DFA

states

are

often

local

and

can

be

covered

with

fewer

partitions

Also

we

aim

to

extract

DFAs

with

the

smallest

possible

quantization

level

which

explains

the

training

data

These

properties

along

with

the

pruning

of

the

search

tree

makes

DFA

extraction

feasible

even

for

DFAs

with

larger

alphabets

Clearly

the

extracted

DFA

depends

on

the

quantization

level

q

chosen

i.e.

in

general

different

DFA

will

be

extracted

for

different

values

of

q.

Furthermore

because

of

condition

different

DFA

may

be

extracted

depending

on

the

order

in

which

the

successors

of

a

node

in

the

search

tree

are

visited

In

general

however

these

distinctions

are

not

significant

because

of

the

subsequent

standard

minimization

algorithm

-LRB-

Hopcroft

Ullman

-RRB-

This

algorithm

yields

a

unique

minimal

representation

of

the

extracted

DFA

Many

different

DFA

extracted

thus

collapse

into

equivalence

classes

Example

We

will

illustrate

in

detail

how

the

extraction

algorithm

builds

the

corresponding

DFA

using

a

simple

example

Assume

a

recurrent

network

with

state

neurons

and

input

neurons

is

trained

on

some

data

set

The

network

state

vector

has

dimension

and

the

range

of

possible

values

of

and

can

be

represented

as

a

unit

square

in

the

-LRB-

-RRB-

plane

For

reasons

of

simplicity

we

choose

quantization

level

q

i.e.

the

output

of

each

of

the

two

state

neurons

is

divided

into

equal

length

intervals

defining

discrete

partitions

Each

of

these

partitions

corresponds

to

a

hypothetical

state

in

the

unknown

DFA

We

will

assign

labels

to

the

partitions

in

the

order

in

which

they

are

visited

for

the

first

time

The

start

state

is

defined

by

the

initial

network

state

vector

used

for

training

the

network

it

lies

in

partition

-LRB-

figure

-RRB-

The

state

vector

reached

in

partition

falls

within

the

accepting

region

-LRB-

the

output

of

the

response

neuron

is

larger

than

-RRB-

thus

this

initial

states

is

marked

as

an

accepting

state

-LRB-

shaded

circle

-RRB-

The

start

state

represents

the

totally

unknown

DFA

On

input

and

the

network

makes

a

transition

into

partitions

and

respectively

This

causes

the

creation

of

a

transition

to

a

new

accepting

DFA

state

and

a

transition

from

state

to

itself

In

the

next

step

transitions

from

partitions

into

partitions

and

on

input

and

respectively

Neural

Network

Rule

Extraction

occur

and

the

resulting

partial

DFA

is

shown

in

figure

The

DFA

in

figure

shows

the

current

knowledge

about

the

DFA

after

all

state

transitions

from

states

and

have

been

extracted

from

the

network

In

the

last

step

only

one

more

new

state

is

created

-LRB-

figure

-RRB-

Since

no

known

state

has

left

any

undefined

transitions

the

extraction

algorithm

terminates

Notice

that

not

all

partitions

have

been

assigned

to

DFA

states

The

algorithm

usually

only

visits

a

subset

of

all

available

partitions

for

the

DFA

extraction

Many

more

partitions

are

reached

when

large

test

sets

-LRB-

especially

when

they

contain

many

long

strings

-RRB-

are

used

-LRB-

e.g.

when

measuring

the

generalization

performance

on

a

large

test

set

-RRB-

The

extracted

DFA

and

its

unique

minimized

representation

are

shown

in

figure

The

DFAs

accept

all

strings

which

do

not

contain

three

consecutive

's

-LRB-

notice

that

both

DFAs

accept

exactly

the

same

regular

language

-RRB-

If

several

DFAs

are

extracted

with

different

quantization

levels

qi

then

one

or

more

of

the

extracted

DFA

Mqi

may

be

consistent

with

the

given

training

set

i.e.

several

DFA

Mqi

may

correctly

classify

the

training

set

Clearly

we

need

to

make

a

choice

between

different

consistent

DFA

The

heuristic

for

choosing

a

DFA

will

be

discussed

next

Model

Selection

Let

M

denote

the

unknown

DFA

and

L

-LRB-

M

-RRB-

the

language

accepted

by

M

By

choosing

a

particular

quantization

level

qi

we

extract

a

minimized

finite-state

automaton

which

we

consider

to

be

a

hypothesis

Mqi

for

the

grammar

to

be

inferred

A

DFA

M

is

called

a

consistent

DFA

if

it

correctly

classifies

all

strings

of

the

training

set

otherwise

it

is

called

an

inconsistent

model

of

the

unknown

source

grammar

Given

a

set

of

consistent

hypotheses

MqQ

we

need

criteria

that

allow

us

to

choose

the

hypothesis

that

best

approximates

the

unknown

language

L

-LRB-

M

-RRB-

We

refer

to

the

process

of

choosing

a

DFA

Mqi

as

model

selection

A

possible

heuristic

for

model

selection

would

be

to

split

a

given

data

set

into

two

disjoint

sets

-LRB-

training

and

testing

set

-RRB-

to

train

the

network

on

the

training

set

and

to

test

the

network

's

generalization

performance

on

the

test

set

However

by

disregarding

a

subset

of

the

original

data

set

for

training

we

may

be

eliminating

valuable

data

from

the

training

set

which

would

improve

the

network

's

generalization

performance

if

the

entire

data

set

were

used

for

training

Clearly

we

wish

to

make

a

model

selection

based

solely

on

simple

properties

of

the

extracted

DFAs

and

not

resort

to

a

test

set

The

minimized

DFAs

which

were

extracted

from

a

trained

network

for

quantization

levels

q

q

and

q

are

shown

in

figure

All

three

DFAs

were

consistent

with

the

training

set

i.e.

they

Neural

Network

Rule

Extraction

correctly

classified

all

strings

in

the

training

set

Which

DFA

best

models

the

unknown

source

M

To

answer

this

question

we

extracted

DFAs

with

quantization

levels

q

from

the

trained

networks

for

each

of

the

five

training

sets

and

measured

the

DFAs

generalization

performances

on

the

same

three

test

sets

as

before

In

some

cases

DFAs

that

were

extracted

with

quantization

levels

or

were

inconsistent

with

a

network

's

training

set

these

DFAs

were

discarded

In

all

our

experiments

the

consistent

minimized

DFAs

that

were

extracted

with

the

smallest

quantization

levels

also

had

the

fewest

number

of

states

Following

Occam

's

Razor

we

measured

the

generalization

performances

of

these

smallest

consistent

DFAs

and

compared

them

to

the

performances

of

the

remaining

DFAs

The

results

of

a

statistical

analysis

are

shown

in

table

We

observe

that

the

smallest

consistent

DFAs

generally

outperform

the

remaining

consistent

DFAs

In

the

case

where

DFAs

were

extracted

from

networks

trained

on

only

strings

the

smallest

consistent

DFAs

are

outperformed

by

the

remaining

consistent

DFAs

However

this

is

statistically

not

significant

since

the

confidence

intervals

for

the

DFAs

average

performance

overlap

These

simulation

results

lead

us

to

conjecture

that

the

DFA

Mq

which

best

models

the

unknown

DFA

M

is

the

smallest

consistent

DFA

Mq

can

be

found

by

extracting

DFAs

Mq

Mq

in

that

order

The

best

model

is

the

first

consistent

DFA

Mq

We

further

hypothesize

that

there

always

exists

a

value

q

such

that

Mq

is

the

smallest

consistent

DFA

Assuming

that

we

succeed

in

extracting

a

DFA

that

is

consistent

with

the

training

set

then

such

a

smallest

q

exists

by

the

well-ordering

principle

Our

intuition

leads

us

to

believe

that

large

DFAs

tend

to

overfit

the

given

training

data

set

They

do

not

capture

the

structure

of

the

unknown

source

grammar

well

leading

to

poorer

generalization

performance

CONCLUSIONS

A

heuristic

has

been

introduced

that

permits

the

inference

of

good

grammars

from

trained

networks

The

rules

of

learned

grammars

are

extracted

in

the

form

of

deterministic

finite-state

automata

-LRB-

DFAs

-RRB-

The

problem

of

rule

extraction

is

reduced

to

a

dynamical

state

exploration

and

cluster

analysis

in

the

N-dimensional

output

space

of

recurrent

state

neurons

Clusters

of

state

neuron

activations

are

found

through

a

simple

partitioning

procedure

parameterized

by

a

partitioning

or

Neural

Network

Rule

Extraction

quantization

level

q

Other

methods

such

as

hierarchical

clustering

or

unsupervised

learning

algorithms

could

be

used

instead

Although

different

DFAs

may

be

extracted

for

different

values

of

the

quantization

level

q

a

standard

minimization

algorithm

-LRB-

Hopcroft

Ullman

-RRB-

can

be

applied

yielding

unique

minimal

representations

of

the

DFAs

Furthermore

these

DFAs

may

be

identical

over

ranges

of

the

quantization

level

q

We

have

observed

that

different

DFAs

of

minimal

representation

can

be

extracted

from

a

trained

network

depending

on

the

parameter

q

It

is

quite

common

that

several

extracted

DFA

are

consistent

with

the

training

set

i.e.

several

DFAs

correctly

classify

the

training

set

Generalization

tests

on

the

different

minimized

DFA

have

shown

that

there

exists

among

the

consistent

DFA

one

which

shows

the

best

generalization

performance

Thus

it

becomes

necessary

to

perform

a

model

selection

among

several

DFA

candidates

In

our

experiments

the

smallest

consistent

DFA

always

outperformed

the

trained

network

and

all

other

extracted

DFAs

It

was

also

always

the

DFA

that

was

extracted

with

the

smallest

quantization

level

and

that

was

consistent

with

the

training

set

Our

rule

extraction

algorithm

depends

on

dividing

the

continuous

state

space

of

recurrent

networks

with

sigmoidal

discriminant

functions

into

discrete

partitions

Different

partitionings

may

cause

different

minimal

DFAs

to

be

extracted

from

a

network

which

makes

a

model

selection

necessary

Two

recently

proposed

methods

avoid

that

problem

Zeng

et

al.

-LRB-

-RRB-

define

a

discrete

state

space

prior

to

training

rather

than

prior

to

the

rule

extraction

The

sigmoidal

discriminant

function

is

still

used

for

computing

the

weight

updates

For

string

classification

the

sigmoidal

discriminant

function

g

-LRB-

x

-RRB-

becomes

a

step

function

h

-LRB-

x

-RRB-

g

-LRB-

xi

-RRB-

for

xi

x

xi

where

g

-LRB-

xi

-RRB-

is

the

original

sigmoidal

discriminant

function

This

yields

qN

discrete

state

vectors

in

-LSB-

-RSB-

N

each

of

which

potentially

corresponds

to

a

DFA

state

Das

Mozer

-LRB-

-RRB-

have

proposed

a

self-clustering

learning

method

which

assumes

that

the

unknown

source

grammar

requires

a

finite

number

of

discrete

internal

states

that

are

corrupted

due

to

inaccuracies

in

the

weights

Their

networks

learn

to

recover

these

states

with

maximum

a

posteriori

probability

These

clusters

changes

during

the

course

of

learning

Both

proposed

methods

report

improved

network

generalization

performance

based

on

the

stability

of

the

internal

DFA

representation

However

they

fail

to

address

the

issue

of

training

performance

Neural

Network

Rule

Extraction

i.e.

DFAs

which

are

readily

learned

by

networks

without

state

space

clustering

may

not

be

learned

as

easily

by

either

one

of

the

two

clustering

methods

Our

results

raise

the

issue

of

could

improved

performance

be

obtained

from

some

recursive

combination

of

rule

extraction

and

rule

insertion

We

have

developed

a

simple

algorithm

which

maps

a

-LRB-

partial

-RRB-

description

of

a

DFA

into

a

second-order

recurrent

neural

network

by

programming

some

of

the

weights

accordingly

-LRB-

Omlin

Giles

-RRB-

The

architecture

of

the

network

is

defined

by

the

amount

of

prior

information

about

the

otherwise

unknown

DFA

Significant

learning

time

improvements

were

achieved

by

training

networks

with

prior

knowledge

By

continuously

inserting

and

extracting

knowledge

from

a

network

starting

with

little

or

no

prior

information

the

size

of

the

network

would

change

after

each

rule

insertion/training/rule

extraction

cycle

and

be

determined

by

the

current

partial

knowledge

of

the

DFA

i.e.

the

extracted

symbolic

knowledge

would

control

the

growth

and

decay

of

the

network

architecture

Thus

this

symbolically-guided

training

procedure

could

lead

to

faster

training

and

better

generalization

performance

ACKNOWLEGDMENT

We

would

like

to

acknowledge

useful

discussions

with

E.B.

Baum

K.

Lang

and

L.

Valiant

REFERENCES

Angluin

D.

Smith

C.H.

-LRB-

-RRB-

Inductive

Inference

Theory

and

Methods

ACM

Computing

Surveys

Bengio

Y.

Simard

P.

Frasconi

P.

-LRB-

-RRB-

Learning

Long-Term

Dependencies

with

Gradient

Descent

is

Difficult

IEEE

Transactions

on

Neural

Networks

Cleeremans

A.

Servan-Schreiber

D.

McClelland

J.

-LRB-

-RRB-

Finite

State

Automata

and

Simple

Recurrent

Recurrent

Networks

Neural

Computation

Clouse

D.S.

Giles

C.L.

Horne

B.G.

Cottrell

G.W.

-LRB-

-RRB-

Learning

Large

DeBruijn

Automata

with

Feed-Forward

Neural

Networks

Technical

Report

Department

of

Computer

Science

and

Engineering

University

of

California

at

San

Diego

La

Jolla

Neural

Network

Rule

Extraction

Crutchfield

J.P.

Young

K.

-LRB-

-RRB-

Computation

at

the

Onset

of

Chaos

In

W.H.

Zurek

-LRB-

Ed

-RRB-

Proceedings

of

the

Workshop

on

Complexity

Entropy

and

the

Physics

of

Information

-LRB-

pp.

-RRB-

Redwood

City

Addison-Wesley

Das

S.

Mozer

M.C.

-LRB-

-RRB-

A

Unified

Gradient-Descent/Clustering

Architecture

for

Finite

State

Machine

Induction

In

Cowan

J.W.

Tesauro

G.

Alspector

J.

-LRB-

Eds

-RRB-

Advances

in

Neural

Information

Processing

Systems

-LRB-

pp.

-RRB-

San

Mateo

Morgan

Kaufmann

Publishers

Elman

J.L.

-LRB-

-RRB-

Finding

Structure

in

Time

Cognitive

Science

Frasconi

P.

Gori

M.

Maggini

M.

Soda

G.

-LRB-

-RRB-

A

Unified

Approach

for

Integrating

Explicit

Knowledge

and

Learning

by

Example

in

Recurrent

Networks

In

IEEE

INNS

International

Joint

Conference

on

Neural

Networks

Seattle

-LRB-

-RRB-

Piscataway

IEEE

Press

Frasconi

P.

Gori

M.

Maggini

M.

Soda

G.

-LRB-

-RRB-

Representation

of

Finite

State

Automata

in

Recurrent

Radial

Basis

Function

Networks

Machine

Learning

In

press

Fu

L.

-LRB-

-RRB-

Rule

Generation

from

Neural

Networks

IEEE

Transactions

on

Neural

Networks

Giles

C.L.

Sun

G.Z.

Chen

H.H.

Lee

Y.C.

Chen

D.

-LRB-

-RRB-

Higher

Order

Recurrent

Networks

Grammatical

Inference

In

D.S.

Touretzky

-LRB-

Ed

-RRB-

Advances

in

Neural

Information

Systems

-LRB-

pp

-RRB-

San

Mateo

Morgan

Kaufmann

Publishers

Giles

C.L.

Miller

C.B.

Chen

D.

Chen

H.H.

Sun

G.Z.

Lee

Y.C.

-LRB-

-RRB-

Learning

and

Extracting

Finite

State

Automata

with

Second-Order

Recurrent

Neural

Network

Neural

Computation

Giles

C.L.

Omlin

C.W.

-LRB-

-RRB-

Inserting

Rules

into

Recurrent

Neural

Networks

In

S.

Kung

F.

Fallside

J.A.

Sorenson

C.

Kamm

-LRB-

Eds

-RRB-

Neural

Networks

for

Signal

Processing

II

Proceedings

of

The

IEEE

Workshop

-LRB-

-RRB-

Piscataway

IEEE

Press

Giles

C.L.

Horne

B.G

Lin

T.

-LRB-

-RRB-

Learning

a

Class

of

Large

Finite

State

Machines

with

Neural

Network

Rule

Extraction

a

Recurrent

Neural

Network

Technical

Report

Institute

for

Advanced

Computer

Studies

University

of

Maryland

College

Park

Giles

C.L.

Omlin

C.W.

-LRB-

-RRB-

Pruning

Recurrent

Neural

Networks

for

Improved

Generalization

Performance

IEEE

Transactions

on

Neural

Networks

-LRB-

-RRB-

Giles

C.L.

Chen

D.

Sun

G.Z.

Chen

H.H.

Lee

Y.C.

Goudreau

M.W.

-LRB-

-RRB-

Constructive

Learning

of

Recurrent

Neural

Networks

Limitations

of

Recurrent

Casade

Correlation

and

a

Simple

Solution

IEEE

Transactions

on

Neural

Networks

In

press

Gold

E.M.

-LRB-

-RRB-

Complexity

of

Automaton

Identification

from

Given

Data

Information

and

Control

Goudreau

M.W.

Giles

C.L.

Chakradhar

S.T.

Chen

D.

-LRB-

-RRB-

First-Order

Vs.

SecondOrder

Single

Layer

Recurrent

Networks

IEEE

Transactions

on

Neural

Networks

-LRB-

-RRB-

Hanson

S.

Burr

D.

-LRB-

-RRB-

What

Connectionist

Models

Learn

Learning

and

Representation

in

Connectionist

Networks

In

R.

Mammone

Y.Zeevi

-LRB-

Eds

-RRB-

Neural

Networks

Theory

and

Applications

Boston

Academic

Press

Hertz

J.

Krogh

A.

Palmer

R.G.

-LRB-

-RRB-

Introduction

to

the

Theory

of

Neural

Computation

Redwood

City

Addison-Wesley

Hopcroft

J.E.

Ullman

J.F.

-LRB-

-RRB-

Introduction

to

Automata

Theory

Languages

and

Computation

Reading

Addison-Wesley

Jim

K.

Horne

B.G.

Giles

C.L.

-LRB-

-RRB-

Effects

of

Noise

on

Convergence

and

Generalization

in

Recurrent

Networks

In

Tesauro

G.

Touretzky

D.

Leen

T.

-LRB-

Eds

-RRB-

Advances

in

Neural

Information

Processing

Systems

In

press

Lee

Y.C.

Doolen

G.

Chen

H.H.

Sun

G.Z.

Maxwell

T.

Lee

H.Y.

Giles

C.L.

-LRB-

-RRB-

Machine

Learning

Using

a

Higher

Order

Correlational

Network

Physica

D

Neural

Network

Rule

Extraction

Manolios

P.

Fanelli

R.

-LRB-

-RRB-

First

Order

Recurrent

Neural

Networks

and

Deterministic

Finite

State

Automata

Neural

Computation

-LRB-

-RRB-

Omlin

C.W.

Giles

C.L.

-LRB-

-RRB-

Training

Second-Order

Recurrent

Neural

Networks

using

Hints

In

Sleeman

D.

Edwards

P.

-LRB-

Eds

-RRB-

Proceedings

of

the

Ninth

International

Conference

on

Machine

Learning

-LRB-

pp.

-RRB-

San

Mateo

Morgan

Kaufmann

Publishers

Pollack

J.B.

-LRB-

-RRB-

The

Induction

of

Dynamical

Recognizers

Machine

Learning

Siegelmann

H.T.

Sontag

E.D.

-LRB-

-RRB-

On

the

Computational

Power

of

Neural

Nets

In

Proceedings

of

the

Fifth

ACM

Workshop

on

Computational

Learning

Theory

-LRB-

-RRB-

New

York

ACM

Sun

G.Z.

Chen

H.H.

Giles

C.L.

Lee

Y.C.

Chen

D.

-LRB-

-RRB-

Connectionist

Pushdown

Automata

that

Learn

Context-Free

Grammars

Proceedings

of

the

International

Joint

Conference

on

Neural

Networks

-LRB-

pp.

-RRB-

Hillsdale

Lawrence

Erlbaum

Towell

G.G.

Craven

M.W.

Shavlik

J.W.

-LRB-

-RRB-

Constructive

Induction

using

KnowledgeBased

Neural

Networks

In

L.A.

Birnbaum

G.C.

Collins

-LRB-

Eds

-RRB-

Proceedings

of

the

Eighth

International

Machine

Learning

Workshop

-LRB-

p.

-RRB-

San

Mateo

Morgan

Kaufmann

Publishers

Watrous

R.L.

Kuhn

G.M.

-LRB-

-RRB-

Induction

of

Finite-State

Languages

Using

Second-Order

Recurrent

Networks

Neural

Computation

Williams

R.J.

Zipser

D.

-LRB-

-RRB-

A

Learning

Algorithm

for

Continually

Running

Fully

Recurrent

Neural

Networks

Neural

Computation

Zeng

Z.

Goodman

R.

Smyth

P.

-LRB-

-RRB-

Learning

Finite

State

Machines

with

Self-Clustering

Recurrent

Networks

Neural

Computation

Neural

Network

Rule

Extraction

-LRB-

t

-RRB-

-LRB-

t

-RRB-

time

delaySg

-LRB-

-RRB-

-LRB-

t

-RRB-

S

-LRB-

t

-RRB-

Sg

-LRB-

-RRB-

g

-LRB-

-RRB-

S

-LRB-

t

-RRB-

S

-LRB-

t

-RRB-

-LRB-

t

-RRB-

I

-LRB-

t

-RRB-

ijijkl

Figure

Second-Order

Single

Layer

Recurrent

Neural

Network

S

-LRB-

t

-RRB-

i

and

I

-LRB-

t

-RRB-

k

represent

the

values

of

the

ith

and

kth

state

and

input

neuron

respectively

at

time

t

The

blocks

marked

represent

the

operation

Wijk

S

-LRB-

t

-RRB-

j

I

-LRB-

t

-RRB-

k

Neural

Network

Rule

Extraction

Neuron

Neuron

Neuron

Neuron

Neuron

Neuron

Neuron

Neuron

Neuron

Neuron

Neuron

Neuron

Figure

State

Clustering

A

recurrent

network

with

state

neurons

was

trained

to

accept

only

strings

which

do

not

contain

three

consecutive

's

The

network

builds

an

internal

representation

of

the

learned

language

in

the

space

of

its

output

neurons

The

two-dimensional

projection

of

the

state

space

-LSB-

-RSB-

into

the

-LRB-

Si

Sj

-RRB-

plane

for

all

possible

pairs

-LRB-

Si

Sj

-RRB-

are

shown

-LRB-

projections

-RRB-

The

figures

show

that

the

state

vectors

reached

for

the

strings

of

the

test

set

tend

to

form

clusters

We

hypothesize

that

these

cluster

correspond

to

states

of

the

learned

DFA

and

transitions

between

clusters

correspond

to

state

transitions

in

the

DFA

Neural

Network

Rule

Extraction

-LRB-

a

-RRB-

-LRB-

b

-RRB-

-LRB-

c

-RRB-

-LRB-

d

-RRB-

O O O O O B I I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I I O O B I I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O B I O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I I O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O B I I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O

generalization performance
grammatical inference
model selection
recurrent neural networks
regular languages
rule extraction

deterministic finite-state automata
occam's razor


Case

study

visualizing

various

properties

of

dynamical

systems

Georg

Fischel

Helmut

Doleisch

Lukas

Mroz

Helwig

L?ffelmann

Eduard

Gr?ller

Institute

of

Computer

Graphics

Vienna

University

of

Technology

Karlsplatz

Vienna

Austria

ABSTRACT

There

is

a

wide

range

of

visualization

techniques

for

dynamical

systems

These

methods

are

used

to

visualize

certain

properties

as

e.g.

stability

of

fixed

points

characteristic

changes

of

velocity

and

bifurcations

This

paper

gives

a

short

introduction

to

dynamical

systems

and

describes

several

visualization

techniques

Some

of

those

are

applied

to

three

different

dynamical

systems

The

application

of

different

visualization

methods

to

dynamical

systems

shows

how

scientific

visualization

can

be

used

for

analyzing

the

behavior

of

dynamical

systems

and

how

visualization

can

make

analysis

of

a

dynamical

system

fast

and

efficient

INTRODUCTION

Dynamical

are

found

in

various

fields

of

research

e.g.

economy

physics

chemistry

and

mathematics

They

are

given

by

an

analytical

specification

-LRB-

differential

or

difference

equation

-RRB-

or

as

sampled

data

There

are

several

ways

to

analyze

a

dynamical

system

One

approach

is

to

analyze

its

long

term

behavior

e.g.

to

see

whether

a

system

exhibits

an

attractor

or

not

Another

important

branch

of

the

analysis

of

dynamical

systems

is

local

analysis

For

certain

applications

e.g.

the

prediction

of

a

system?s

behavior

it

is

crucial

to

know

how

initially

close

states

will

evolve

with

respect

to

each

other

Researchers

interested

in

flow

fields

for

example

are

often

interested

in

vortices

-LRB-

singularities

-RRB-

Such

structures

may

be

detected

by

local

analysis

of

the

underlying

dynamical

system

A

particular

challenge

for

visualization

is

to

deal

with

dynamical

systems

that

have

more

than

three

dimensions

In

this

paper

we

will

investigate

one

such

system

with

four

dimensions

Classes

of

dynamical

systems

Dynamical

systems

are

represented

by

a

multi-dimensional

state

that

evolves

over

time

Input

as

well

as

the

current

state

of

a

dynamical

system

determine

the

evolution

of

the

system

Typically

an

output

is

generated

from

the

state

of

the

The

principle

is

illustrated

in

Fig.

Fig.

Specification

of

a

dynamical

system

This

is

the

general

definition

of

a

dynamical

system

and

many

different

systems

fit

into

the

scheme

illustrated

in

Fig.

To

investigate

dynamical

systems

it

is

necessary

to

specify

some

characteristics

that

allow

a

subdivision

of

all

dynamical

systems

into

specific

classes

An

important

characteristic

of

a

dynamical

system

is

whether

it

is

continuous

or

discrete

Continuous

systems

-LRB-

often

called

flows

-RRB-

are

given

by

differential

equations

i.e.

x

A

x

whereas

discrete

dynamical

systems

-LRB-

often

called

maps

-RRB-

are

specified

by

difference

equations

i.e.

x

A

x

n

n

It

is

also

important

whether

a

dynamical

system

is

linear

or

not

Non-linear

systems

typically

do

have

intricate

behavior

that

may

even

be

Non-linear

systems

are

often

linearized

to

facilitate

local

analysis

The

dynamical

systems

visualized

in

this

case

study

are

all

non-linear

and

continuous

Visualization

techniques

In

this

section

we

will

give

a

short

overview

of

some

commonly

used

visualization

techniques

Generally

these

techniques

are

applied

in

phase

space

For

dynamical

systems

phase

space

is

used

to

describe

the

temporal

evolution

of

a

system

Each

variable

in

the

set

of

differential

equations

is

assigned

to

a

coordinate

in

Euclidean

n-space

A

point

in

phase

space

corresponds

to

a

state

of

the

system

at

a

specific

moment

in

time

Trajectories

The

path

of

a

point

evolving

according

to

the

underlying

dynamical

system

is

called

trajectory

Visualizing

trajectories

in

phase

space

is

a

very

important

visualization

technique

This

method

is

used

for

instance

to

approximate

attractors

by

showing

a

single

trajectory

over

a

long

period

of

time

Sweeps

Trajectories

can

also

be

visualized

as

tubes

A

tube

has

a

surface

that

reflects

light

in

a

unique

direction

and

thus

allows

surface

shading

This

gives

a

better

three-dimensional

With

sweeps

it

is

also

easier

to

distinguish

whether

a

trajectory

is

in

front

or

behind

another

trajectory

Function

graphs

state

diagrams

showing

f

-LRB-

t

-RRB-

the

value

of

a

function

over

time

are

helpful

tools

for

visualizing

long

term

behavior

They

are

often

used

to

show

the

development

of

a

single

coordinate

of

a

system

or

distance

functions

Color

coding

There

is

a

wide

range

of

possibilities

to

assign

a

color

to

a

part

of

a

trajectory

Color

coding

can

be

used

for

representing

distances

e.g.

the

distance

to

a

fixed

point

Another

possibility

is

to

encode

the

vector

magnitude

i.e.

the

velocity

of

a

point

in

the

system

It

is

also

possible

to

code

time

along

a

trajectory

by

the

use

of

color

e.g.

a

trajectory

starts

with

red

and

ends

with

blue

Interpolation

can

be

done

e.g.

along

the

hue

value

of

the

HLS

model

Color

coding

can

also

be

used

to

illustrate

one

of

the

state

variables

of

a

dynamical

system

Color

coding

does

not

show

exact

values

Properties

are

only

shown

qualitatively

which

is

however

sufficient

for

most

applications

Parallel

coordinates

The

idea

of

parallel

coordinates

is

to

represent

dimensions

on

parallel

axes

Each

of

the

coordinate

of

a

point

is

mapped

for

instance

onto

a

vertical

axis

Coordinates

belonging

to

the

same

point

are

then

connected

by

a

polygon

The

methods

of

parallel

coordinates

can

be

used

for

visualizing

high-dimensional

VISUALIZING

DYNAMICAL

SYSTEMS

For

our

case

study

we

have

chosen

three

different

dynamical

systems

from

physics

and

econometrics

Each

of

these

systems

has

its

characteristic

behavior

We

will

apply

different

visualization

techniques

to

get

insight

different

characteristics

of

these

systems

Long

term

behavior

of

the

Lorenz

systems

The

Lorenz

system

is

a

well

known

example

of

a

dynamical

system

and

it

is

mentioned

in

many

books

as

a

typical

example

of

chaotic

The

Lorenz

equations

describe

the

dynamical

behavior

of

convection

cells

in

fluid

layers

that

are

heated

from

below

The

Lorenz

equations

are

given

as

follows

-LRB-

-RRB-

x

y

x

y

rx

y

xz

z

xy

bz

s

The

state

variables

are

x

rotational

speed

of

the

convection

rolls

in

the

fluid

y

temperature

difference

between

the

rising

and

falling

stream

of

the

convection

rolls

z

deviation

of

the

linear

temperature

development

in

vertical

direction

The

system

parameters

are

s

Prandtl

number

r

constant

proportional

to

the

Raleigh

-LRB-

see

below

for

a

brief

description

of

the

Raleigh

number

-RRB-

b

dimensionless

geometric

constant

An

interesting

parameter

setting

is

s

b

r

-LRB-

See

Fig.

-RRB-

For

these

parameters

the

system

has

chaotic

behavior

The

system

has

three

fixed

points

-LRB-

-RRB-

C

=-LRB-

b

r

-LRB-

-RRB-

b

r

-LRB-

-RRB-

r

-RRB-

and

C

=-LRB-

b

r

-LRB-

-RRB-

b

r

-LRB-

-RRB-

r

-RRB-

Fig.

Trajectory

of

a

Lorenz

system

-LRB-

s

b

and

r

-RRB-

Fig.

shows

a

trajectory

computed

for

the

Lorenz

system

The

trajectories

are

visualized

as

sweeps

and

color

coded

according

to

the

minimum

distance

to

one

of

the

fixed

points

C

and

C

The

color

coding

used

in

Fig.

reveals

the

stretch-split-merge

behavior

that

is

inherent

to

the

many

chaotic

dynamical

Trajectories

are

moving

away

from

the

fixed

points

C

and

C

The

more

far

away

a

trajectory

is

from

C

the

nearer

it

gets

to

the

other

fixed

point

C

when

changing

its

sign

in

x

and

y

The

most

significant

parameter

is

r

which

is

proportional

to

the

Raleigh

number

The

Raleigh

number

in

principle

gives

the

relation

between

energy

inflow

and

energy

loss

The

Lorenz

system

does

not

always

exhibit

chaos

when

varying

r

between

and

For

r

the

Lorenz

system

exhibits

transient

chaos

For

some

initial

conditions

the

system

behaves

in

a

chaotic

fashion

for

some

time

until

it

settles

to

a

stable

state

i.e.

a

weakly

attracting

fixed

point

C

or

C

This

behavior

is

illustrated

with

a

diagram

that

displays

time

on

the

horizontal

axis

and

the

distance

from

the

z-axis

in

phase

space

on

the

vertical

axis

-LRB-

Fig.

-RRB-

The

initial

points

are

distributed

on

a

line

between

the

points

-LRB-

-RRB-

and

-LRB-

L

L

-RRB-

L

was

chosen

as

to

cover

a

wide

range

of

initial

conditions

Color

codes

the

distance

of

the

initial

points

of

the

trajectories

to

the

z-axis

This

way

of

color

coding

allows

to

follow

the

path

of

points

along

the

time

axis

It

was

used

in

the

diagram

in

Fig.

Fig.

Diagram

showing

transient

chaos

for

specific

initial

conditions

Fig.

shows

that

for

r

most

initial

conditions

reach

a

fixed

point

immediately

without

exhibiting

transient

chaos

For

r

the

fixed

points

C

and

C

are

saddle

fixed

points

with

an

unstable

limit

Fig.

shows

the

limit

cycle

of

C

as

a

red

tube

There

a

two

additional

trajectories

One

trajectory

is

starting

within

the

limit

cycle

the

other

trajectory

starting

outside

of

the

limit

cycle

Along

the

trajectories

time

is

color

coded

starting

with

blue

and

ending

yellow

This

approach

helps

to

recognize

slow

movements

which

are

close

to

the

weakly

repelling

limit

cycle

but

moving

away

from

it

Fig.

Trajectories

moving

away

from

an

unstable

limit

cycle

Slow-Fast

dynamics

and

period

doubling

with

the

Dynastic

Cycle

The

dynastic

cycle

is

an

econometric

model

which

describes

the

interaction

between

framers

bandits

and

soldiers

in

ancient

china

It

exhibits

a

periodic

alternation

of

the

society

between

despotism

and

The

three

class

society

consists

of

farmers

who

produce

some

goods

bandits

who

steal

these

goods

and

of

soldiers

who

try

to

protect

the

farmers

by

fighting

against

the

bandits

but

also

tax

the

farmers

Anarchy

means

that

an

equilibrium

develops

between

bandits

who

steal

and

farmers

who

try

to

defend

their

goods

without

any

public

authority

-LRB-

soldiers

-RRB-

In

despotism

soldiers

tax

the

farmers

and

fight

the

bandits

very

successfully

in

order

to

protect

their

incomes

from

the

tax

revenue

Therefore

soldiers

punish

bandits

by

execution

which

are

then

eliminated

entirely

for

a

certain

period

of

time

The

equations

of

the

Dynastic

Cycle

are

given

as

follows

-LRB-

-RRB-

-LRB-

-RRB-

-LRB-

-RRB-

x

x

x

y

B

x

Hz

x

x

y

z

y

Qy

E

x

B

x

z

D

y

Qy

x

y

z

z

R

xy

B

x

Gz

R

x

y

z

j

y

J

where

x

is

the

number

of

farmers

y

is

the

number

of

bandits

z

is

the

number

of

rulers

-LRB-

soldiers

-RRB-

and

B

D

E

G

H

R

Q

are

model

specific

constants

Fig.

Trajectory

of

the

Dynastic

Fig.

shows

a

trajectory

of

the

dynastic

cycle

for

B

H

Q

D

E

G

R

with

color

coding

of

the

velocity

of

the

system

-LRB-

blue

stands

for

low

and

red

stands

for

high

velocity

-RRB-

For

these

parameters

the

system

exhibits

slow-fast

dynamics

i.e.

the

population

of

the

soldiers

changes

very

slowly

compared

to

the

populations

of

farmers

and

bandits

The

color

coding

shows

the

rapid

changes

in

population

of

farmers

and

bandits

in

time

of

anarchy

-LRB-

yellow

to

red

colored

trajectory

between

the

points

d

and

f

-RRB-

In

times

of

despotism

the

numbers

of

farmers

and

bandits

remains

constant

while

the

number

of

soldiers

is

decreasing

very

slowly

-LRB-

blue

colored

trajectory

between

the

points

c

and

d

-RRB-

The

parameters

and

equations

defining

the

system

induce

the

following

behavior

In

the

absence

of

bandits

and

soldiers

the

farmers

have

a

logistic

growth

But

there

is

also

a

mortality

rate

caused

by

the

predation

by

the

bandits

and

due

to

subtraction

of

parts

of

the

farmers

resources

by

the

soldiers

via

taxation

For

the

bandits

the

predation

term

is

transformed

into

a

growth

rate

Bandits

have

also

natural

mortality

rate

and

have

an

additional

mortality

rate

due

to

the

action

of

the

soldiers

Soldiers

are

hired

proportional

to

the

rate

of

criminality

existing

in

the

system

at

time

t.

Soldiers

population

decreases

due

to

soldiers

leaving

their

job

either

by

retirement

or

if

they

die

Fig.

shows

the

dynastic

cycle

exhibiting

slow-fast

dynamics

The

population

of

the

soldiers

changes

very

slow

compared

to

farmers

or

bandits

The

parameters

can

also

be

adjusted

to

let

the

soldiers

population

react

very

fast

on

criminality

changes

in

society

-LRB-

see

Fig

-RRB-

Fig.

Period-doubling

scenario

of

the

dynastic

cycle

without

slow-fast

dynamics

Fig.

shows

the

period

doubling

scenario

of

the

dynastic

cycle

for

non

slow-fast

dynamics

for

different

values

of

parameter

E

The

trajectories

in

phase

space

c

are

colored

according

to

the

velocity

and

show

the

period

doubling

Blue

encodes

slow

and

red

stands

for

fast

changes

in

society

Since

there

is

no

direct

relation

between

the

length

of

a

path

along

the

trajectory

and

the

velocity

there

are

two

additional

function

graphs

-LRB-

d

and

e

-RRB-

that

show

the

populations

of

farmers

bandits

and

soldiers

on

the

vertical

axis

The

function

graphs

differ

by

the

way

of

color

coding

Diagram

d

uses

different

colors

for

farmers

depicted

in

red

bandits

in

green

and

soldiers

in

blue

Diagram

e

shows

velocity

encoding

All

scenarios

-LRB-

period

and

finally

chaotic

behavior

-RRB-

show

long

periods

of

stability

with

fast

and

short

changes

in

population

Visualization

of

a

transformation

of

the

Kortweg-deVries

equation

The

visualization

of

dynamical

systems

with

a

dimension

higher

than

three

remains

a

challenge

Due

to

the

at

most

three-dimensional

perception

and

thinking

schemes

of

most

people

and

the

two-dimensional

nature

of

the

display

devices

only

parts

of

the

information

contained

in

a

space

can

be

displayed

simultaneously

Animation

or

color

may

be

used

as

an

additional

dimension

and

various

advanced

methods

have

been

developed

for

higher

dimensional

but

it

remains

up

to

the

viewer

to

reconstruct

the

picture

of

the

four

dimensional

system

The

investigated

system

is

a

transformed

two-mode

approximation

of

the

one

dimensional

perturbed

Korteweg-de

Vries

equation

-LRB-

KdV

-RRB-

and

has

been

used

during

a

mathematical

The

KdV

equations

play

an

important

role

in

wave

dynamics

describing

extremely

stable

solitary

waves

called

solitons

An

application

of

solitons

is

for

example

fast

data

transmission

with

rates

of

Gbit/s

over

kilometers

Because

the

equations

below

are

transformations

of

the

KdV

equations

there

is

unfortunately

no

intuitive

interpretation

of

the

system

variables

The

equations

of

the

system

are

given

as

follows

p

p

e

m

p

p

p

e

m

p

p

p

e

m

p

p

p

p

p

p

e

m

p

-LRB-

-RRB-

-LRB-

-RRB-

-LRB-

-RRB-

-LRB-

-RRB-

The

phase

space

of

the

system

contains

two

fixed

points

which

is

independent

from

the

system

parameters

located

at

-LRB-

-RRB-

and

with

parameter-dependent

The

system

has

two

additional

relative

equilibria

one

of

them

is

stable

one

unstable

Fig.

shows

one

way

of

visualizing

a

system

In

this

case

only

of

the

variables

and

of

the

system

are

displayed

in

a

phase

space

The

value

of

is

color

coded

The

image

shows

that

the

phase

space

is

divided

into

two

big

areas

the

basin

of

the

attractor

which

is

one

fixed

point

of

the

system

and

the

area

attracted

by

-LRB-

-RRB-

The

border

between

these

two

basins

is

close

to

the

stable

relative

equilibrium

States

slightly

displaced

in

one

direction

from

the

equilibrium

evolve

into

whereas

states

displaced

in

the

opposite

direction

escape

to

infinity

For

Fig.

m

is

equal

to

Fig.

Basins

of

attraction

of

a

system

In

Fig.

only

the

variables

and

are

projected

into

orthogonal

axes

which

are

then

projected

on

a

image

Two

trajectories

that

only

differ

in

the

variable

but

not

changing

in

and

would

overlap

completely

As

mentioned

in

section

color

coding

does

not

show

exact

values

So

small

changes

in

parameter

might

not

be

recognized

The

sequence

in

Fig.

visualizes

the

same

scenario

shown

in

Fig.

using

extruded

parallel

coordinates

Short

tubes

are

generated

and

sweep

along

streamlines

The

parallel

coordinate

view

of

the

streamline

vertices

is

shown

in

the

inset

window

at

the

top

right

corner

In

the

parallel

coordinate

view

the

coordinates

of

a

vertex

are

placed

equally

spaced

along

the

y

axis

the

magnitude

of

the

coordinate

is

used

as

the

z

component

of

the

resulting

vertex

Subsequent

streamline

vertices

are

displaced

along

the

x

axis

A

four

dimensional

trajectory

is

thus

represented

by

a

surface

in

Fig.

Visualizing

streamlines

using

extruded

parallel

coordinates

The

surfaces

are

colored

violet

and

green

according

to

the

two

diverging

groups

of

sweeps

Compared

to

color

coding

the

parallel

coordinates

show

more

exact

differences

between

the

fourth

variable

Also

the

problem

of

overlapping

trajectories

in

phase

space

has

disappeared

CONCLUSIONS

Several

visualization

techniques

have

been

demonstrated

by

three

specific

applications

Visualizing

dynamical

systems

using

colored

trajectories

has

been

proved

as

a

powerful

tool

for

analyzing

dynamical

systems

Also

function

graphs

can

be

applied

for

a

wide

range

of

the

analysis

Visualizing

a

four-dimensional

system

by

using

color

coding

and

parallel

coordinates

facilitates

the

interpretation

of

behavior

Scientific

visualization

is

a

mighty

tools

for

analyzing

dynamical

systems

Visualization

easily

allows

to

reveal

behavior

like

slow-fast

dynamics

or

periodic

cycles

It

also

allows

people

who

are

not

familiar

with

mathematical

analysis

of

dynamical

systems

to

get

insight

into

the

behavior

of

a

dynamical

system

The

color

images

and

a

detailed

description

of

the

dynamical

systems

introduced

above

are

available

at

the

following

address

REFERENCES

Strogatz

S.H.

Nonlinear

Dynamics

and

Chaos

Addison

Wesley

Rinaldi

S.

Non-linear

dynamical

systems

Bifurcation

and

chaos

Lecture

at

the

Institute

of

Economics

Vienna

University

of

Technology

May

Tsonis

A.A.

Chaos

From

Theory

to

Application

Plenum

Press

Watt

A.

Computer

Graphics

Second

Edition

Addison-Wesley

Wegenkittl

R.

L?ffelmann

H.

Gr?ller

E.

Visualizing

the

Behavior

of

Higher

Dimensional

Dynamical

Systems

Proceedings

IEEE

Computer

Society

Peitgen

H.O.

J?rgens

H.

Saupe

D.

Chaos

and

Fractals

New

Frontiers

in

Science

Springer

Verlag

Feichtinger

G.

Forst

Ch

V.

and

Piccardi

C.

A

Nonlinear

Dynamical

Model

for

the

Dynastic

Cycle

Forschungsbericht

Institute

of

Econometrics

Operations

Research

and

Systems

Theory

Vienna

University

of

Technology

Feichtinger

G.

Prskawetz

A.

Gr?ller

E.

Fischel

G.

Despotism

and

Anarchy

in

Ancient

China

Visualizing

the

Dynastic

Cycle

Jahrbuch

f?r

Wirtschaftswissenschaften

Band

Heft

Dieter

Duwendag

Sauernheimer

Wille

Vandenhoeck

Ruprecht

G?ttingen

pp

Gils

S.A.

Soewono

E.

Modulated

Waves

in

a

perturbed

Korteweg-de

Vries

equation

Nonlinear

Dynamical

Systems

and

Chaos

Broer

H.W.

Gils

S.A.

Hoveijn

I.

Takens

F.

Birkh?user

Verlag

pp.

O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O B O O O O O O O O O O B I O O O O O B O O B I O O O O B O O O O O O O O B I O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O B I O O O O O O O O O O O O O O O O O O O O O O O B I B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O B O O O O O O O O O O O O O O B O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O B I O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O B O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O B I O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O B I O B O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O