Selected Applications of Sub-Symbolic AI Methods Keith L. Downing - - PowerPoint PPT Presentation

selected applications of sub symbolic ai methods
SMART_READER_LITE
LIVE PREVIEW

Selected Applications of Sub-Symbolic AI Methods Keith L. Downing - - PowerPoint PPT Presentation

Selected Applications of Sub-Symbolic AI Methods Keith L. Downing The Norwegian University of Science and Technology (NTNU) Trondheim, Norway keithd@idi.ntnu.no March 27, 2011 Keith L. Downing Selected Applications of Sub-Symbolic AI Methods


slide-1
SLIDE 1

Selected Applications of Sub-Symbolic AI Methods

Keith L. Downing

The Norwegian University of Science and Technology (NTNU) Trondheim, Norway keithd@idi.ntnu.no

March 27, 2011

Keith L. Downing Selected Applications of Sub-Symbolic AI Methods

slide-2
SLIDE 2

Experimentum Crucis (Rechenberg, 1964)

The first EA, now known as an evolutionary stategy, was a mechanical device, not a computer algorithm. Goal: Minimize drag on a 6-plate, 5-hinge surface. Solution: All angles = 0 (similar to OneMax problem) 1+1-ES with wind-tunnel for fitness (drag) measurement.

# Possible Configurations = 515 = 345,025,251

Keith L. Downing Selected Applications of Sub-Symbolic AI Methods

slide-3
SLIDE 3

Nozzle Design (Schwefel & Klockgether, 1965)

1+1-ES over 200 generations. 45 physical models were built and tested during the process. Schwefel was the first to program an ES, but fitness testing still needed to be done physically; no good simulators.

Keith L. Downing Selected Applications of Sub-Symbolic AI Methods

slide-4
SLIDE 4

Coevolutionary Sorting (Hillis, 1992)

Task: Sort a 16-element list using minimal comparisons Sorting algorithms are characterized by compare-and-swap operations. E.g. (5, 8) means compare X(5) to X(8) and swap if X(5) > X(8) The trick = do comparisons in the right sequence. History of 16-sort progress 65 comparisons (1962) 63 comparisons (1964) 62 comparisons (1969) 60 comparisons, optimal, (1969) Bubblesort = 15 + 14 + 13 + .... + 1 = 120 comparisons

Keith L. Downing Selected Applications of Sub-Symbolic AI Methods

slide-5
SLIDE 5

Hillis’ GA

One pair of chromosomes:

1111 0000 0001 0111 0111 0011 1100 0101 1011 0110 0001 0111 1000 0010 0001 0111 (15, 0) (11, 6) (7, 3) (8, 2) (12, 5) (1, 7) (1, 7)

Diploid Genome: 15 paris of chromosomes, each of which encodes 4-8 comparisons. So the genome encodes between 60 (4 x 15) and 120 (8 x 15) comparisons. Diploid Crossover (just like in biology): parent chromosomes do not cross until gametes are produced. Fitness Test = several lists of unsorted integers. Fitness = number of cases sorted correctly.

Keith L. Downing Selected Applications of Sub-Symbolic AI Methods

slide-6
SLIDE 6

Hillis’ Results

Best result without coevolution = 65 comparisons. Why do smaller comparison sets evolve when size is not part of the fitness function? Answer: Good comparisons become popular, get copied a lot, and end up on corresponding chromosome pairs. Adding Coevolution ⇒ add population of unsorted lists that compete against the sorting schemes. Fitness(unsorted list) = number of sorting schemes that fail to correctly sort it. Result using coevolution = 61 comparisons! First convincing argument for coevolution in evolutionary computation.

Keith L. Downing Selected Applications of Sub-Symbolic AI Methods

slide-7
SLIDE 7

Evolving Analog Circuits with Cellular-Encoding GP

_ + Embryo List Series Parallel End End End End End End End C L R 7 3 50 * 8 12 R

Keith L. Downing Selected Applications of Sub-Symbolic AI Methods

slide-8
SLIDE 8

The Growing Circuit

_ + Embryo List Series Parallel End End End End End End End C L R 7 3 50 * 8 12 R 21 + 12

Keith L. Downing Selected Applications of Sub-Symbolic AI Methods

slide-9
SLIDE 9

Nearly Finished

Embryo List Series Parallel End End End End End End End C L R 7 3 50 * 8 12 R + 12 21 8 21 + 12 50

Keith L. Downing Selected Applications of Sub-Symbolic AI Methods

slide-10
SLIDE 10

Human Competitive Results

1

Re-invention of many 20th-century electronic circuits.

2

Re-invention of 6 circuits patented after 2000.

3

Automated synthesis of PID controllers.

4

Patented controller-inventing process (using Cellular Encoded GP).

5

Design of metabolic pathway models

6

Design of polymer optical fibers

7

Methods for automatic software repair

8

Patented antennas * The first 5 involve Koza’s 1000+ node Beuwolf cluster.

Keith L. Downing Selected Applications of Sub-Symbolic AI Methods

slide-11
SLIDE 11

GP for Parallelizing Code (Ryan & Ivan, 1999)

Given: A serial program. Find: A parallel version that does not violate code dependencies. Method: GP population = Transformation Trees Apply tree to serial code to produce parallel code. Assess fitness in terms of program speed (pos) and violated dependencies (neg). Code Dependency

1

A = B + C

2

D = A + E (1 and 2 can’t be run in parallel, since 1 modifies A while 2 uses A.)

3

X = W + Y

4

Z = W + V (3 and 4 can be parallel despite sharing W, since neither modifies it.)

Keith L. Downing Selected Applications of Sub-Symbolic AI Methods

slide-12
SLIDE 12

GP Tree Primitives

S(x): Break sequence into 2 chunks, which are still run serially (so far) but can be treated independently during later parallelization steps. x = % in first chunk. P(x): Break sequence into 2 parallel chunks. x = % in first chunk. Fseq, Lseq: Pick out first (F) or last (L) item and treat it as a separate serial chunk from the rest. Fpar, Lpar: Pick out first (F) or last (L) item and run it in parallel with the rest of the items. Shift: Delay the starting time for a chunk by one timestep. Null: Do nothing more with the chunk. ParNull: Parallelize each item in the chunk, and then do nothing more with the items. Loop Transformations: A whole set of operations for optimizing loops. These are housed in a separate linear genome.

Keith L. Downing Selected Applications of Sub-Symbolic AI Methods

slide-13
SLIDE 13

An Evolved Parallelization Scheme

P(50) 1 S(30) 2 {ABCDEFGH} {ABCD} Null 3 {A} {BCD} Par Null Null 6 {E} Fpar 5 {EFGH} 4 Shift 7 {FGH} Null 8 {FGH} *Each letter = a line of code Time 1 2 3 4 5 6 7 8 (ABCDEFGH) (ABCD) (EFGH) (A)(BCD) (EFGH) A(BCD) (EFGH) A B C D (EFGH) A B C D (E) (FGH) A B C D E FGH A B C D E (FGH) A B C D E (FGH) Keith L. Downing Selected Applications of Sub-Symbolic AI Methods

slide-14
SLIDE 14

Steven Rooke’s Evolutionary Art

Uses GP to map (X, Y) to colors. (See http://srooke.com/)

Keith L. Downing Selected Applications of Sub-Symbolic AI Methods

slide-15
SLIDE 15

Weighted Function Graphs

X Y K 0.7

  • 1.3

0.9 2.3

  • 1.2
  • 0.5

0.2 3.1

  • 1.7

Keith L. Downing Selected Applications of Sub-Symbolic AI Methods

slide-16
SLIDE 16

Compositional Pattern-Producing Network (CPPN)

  • K. Stanley (2006, 2007) - CPPNs
  • J. Secretan, K. Stanley, et. al. - PicBreeder (picbreeder.org)

Keith L. Downing Selected Applications of Sub-Symbolic AI Methods

slide-17
SLIDE 17

Developmental Encoding of ANN Weights

0 0 1 0 0 1 0 0 0 1 0 0 0 1 1 Genome (Developmental Encoding) 3 2 1 2 1 1 2 3 sine 3 2 1 3 abs gauss 0.25 0.6 1.3 0.67 CPPN 1.2

HYPERNEAT (J. Gauci & K. Stanley, 2007, 2010) Applications: Checkers, Othello, Robot Control.

Keith L. Downing Selected Applications of Sub-Symbolic AI Methods

slide-18
SLIDE 18

Neural Networks in Control Systems

Controller Plant error (e)

  • utput (y)

control (u) goal (y*) y +

The neural network can serve as: the controller component, performing e → u mapping. a model of the physical system (a.k.a plant): does u → y map. MANY combinations are possible.

Neural Networks for Control, M. Hagan & H. Demuth (1999).

Keith L. Downing Selected Applications of Sub-Symbolic AI Methods

slide-19
SLIDE 19

Stabilizing Controller

Feedback Controller Plant e y u y* y ANN Inverse Plant Model

+

ANN Learning Algorithm Feedforward Control

+

ANN learns to do feedforward control: it maps y∗ → u. The recommendation (for u) from the feedback controller serves as an error signal to the ANN’s learning algorithm (e.g. backprop). After training, the ANN can replace the feedback controller.

Keith L. Downing Selected Applications of Sub-Symbolic AI Methods

slide-20
SLIDE 20

Nonlinear Internal Model Control

Plant e r* y + ANN Controller

+

ANN Plant Model u

+

Robustness Filter yp

ANN used to control the plant ANN used to model the plant Error = difference between actual and predicted plant output Both ANNs can be trained off-line, using data from the normal operation

  • f the plant.

Keith L. Downing Selected Applications of Sub-Symbolic AI Methods

slide-21
SLIDE 21

Micro Aerial Vehicle (MAV) Control

A Neuro-Evolutionary Approach to MAV Control, Salichon & Turner (2010) Tiny (insect-to-bird size) airplanes and helicopters are useful for exploring small or difficult-to-access areas. But they are hard to control due to strong perturbation by wind gusts and turbulence. Evolved 3 separate controllers for altitude, heading and roll. 3-5 times better performance than standard PID controllers, and with much less tuning effort. No model of the MAV or world was needed (as in other control methods). Hence, it’s easy to re-evolve and re-deploy in new areas.

Keith L. Downing Selected Applications of Sub-Symbolic AI Methods

slide-22
SLIDE 22

Forecasting with ANNs

1

Train the ANN (typically using backprop) on historical data to learn [X(t−k),X(t−k+1),...,X(t0)] → [X(t1),...,X(tm−1),X(tm)]

2

Use to predict future value(s) based on the past k values. Sample applications (Ungar, in Handbook of Brain Theory and NNs, 2003) Car sales Airline passengers Currency exchange rates Electrical loads on regional power systems. Flour prices Stock prices (Warning: often tried, but few good, documented results).

Keith L. Downing Selected Applications of Sub-Symbolic AI Methods

slide-23
SLIDE 23

Brain-Computer Interfaces (BCI)

Scalp EEG Action Neural Context Neural Ensembles

1

Ask subject to think about an activity (e.g. moving joystick left)

2

Register brain activity (EEG waves - non-invasive) or (Neural ensembles - invasive)

3

ANN training case = (brain readings, joystick motion) Sample applications (Millan, in Handbook of Brain Theory and NNs, 2003) Keyboards (3 keystrokes per minute) Artificial (prosthetic) hands Wheelchairs Computer games

Keith L. Downing Selected Applications of Sub-Symbolic AI Methods

slide-24
SLIDE 24

Evolving Profitable Technical Patterns for Stocks

A New Modular GP for Finding Attractive Technical Patterns in Stock Markets, (Lee & Moon, 2010) Goal: Find boolean patterns (expressed by GP) that classify good stocks to BUY at particular times. GP Primitives po(t) = opening price on day t, where current day = 0. pc(t) = closing price on day t. ph(t) = highest price on day t. v(t) = trading volume on day t. MAn(t) = moving n-day average ending at day t. Sample Technical Patterns 1.1×po(−1) ≤ po(0)∧MA40(0) ≥ MA20(−1) v(0) ≥ 2×v(−7)∨ph(0) ≥ 1.5×ph(−7)

Keith L. Downing Selected Applications of Sub-Symbolic AI Methods

slide-25
SLIDE 25

Fitness(Technical Pattern) ∝ Profitability

Expected Earning Rate of pattern r Ek(r) = 1 | R(r) |

(i,j)∈R(r)

pc(i,j +k) pc(i,j) where: R(r) = { (i,j): r matches company i on day j } pc(i,j) = closing price of company i on day j Fitness If | r |< M (i.e. r doesn’t have too many terms) and | R(r) |≥ m (r has many matches to company-days), then: f(r) = 1 n

n

k=1

Ek(r) Otherwise, f(r) = 0. This averages the expected earning rate over all window sizes from 1 to n (the smoothing factor).

Keith L. Downing Selected Applications of Sub-Symbolic AI Methods

slide-26
SLIDE 26

Modular GP

GP Trees composed of pre-defined modules, such as: mpo(t) > pc(t)∧npo(t) < pc(t) where m,n ∈ (0.99,1.0) and t ∈ [−4,0] 50+ modules for this domain

≤ >

∨ ∧

ph(t) pc(t) 1.05

✶ =

Modules

Results Best patterns are small ( ≤ 5 modules). GP found patterns with ≥ 8% profit on all test sets.

Keith L. Downing Selected Applications of Sub-Symbolic AI Methods

slide-27
SLIDE 27

Evolving Mining Schedules

EAs in large-scale open pit mine scheduling (Myburgh & Deb, 2010) 3d models with O(105−6) blocks containing ore and/or waste. Goal: Bring up the most ore and the least waste as efficiently as possible while satisfying constraints induced by levels and toe blocks. A complete level need not be removed before another, but a) all blocks above block A must be removed before A, and b) a certain mining width

  • f blocks must be removed on a level to allow equipment to operate

there (and thus dig below that level). Conventional optimization techniques can’t handle the size of this problem: too many blocks.

Toe Block = 1st block that must be removed from its level. 16 18 15 12 13 14 8 7 1 11 10 9 6 5 4 2 3 17 19 20 21 22 26 27 28 23 24 25 Level 1 Level 2 Level 3 Level 4 The Pit Mine Unmined Mined Toe Block Ore Waste

Keith L. Downing Selected Applications of Sub-Symbolic AI Methods

slide-28
SLIDE 28

Evolving Mining Schedules

Methods Specialized crossover operators needed to avoid block redundancies and omissions in the children. Period = a sequence of blocks needed to achieve a given total-ore

  • target. They can vary in length.

Fitness = inverse function of total waste mined during the periods.

GA Chromosome 4 3 2 5 6 16 10 11 9 17 18 12 19 26 25 Period 1 Period 2 Period 3

Results Good results obtained only when chromosomes are incrementally evolved, one period at a time: once good values are found for period 1, move on to period 2, etc. Many real-world, Australian, mine schedules determined, of various sizes: 320K blocks, 460K blocks, 900K blocks, etc.

Keith L. Downing Selected Applications of Sub-Symbolic AI Methods

slide-29
SLIDE 29

Evolving Viral Marketing Strategies

Stonedahl, Rand & Wilensky (2010) Task Given: A network of potential consumers, each of which is connected to some neighbors, who can influence his/her purchasing decision. In general, the more neighbors who adopt the product, the better chance that you will also. A limited budget for free samples of the product. Find: a set of consumers to receive a free sample, such that: the rest of the consumers will adopt (i.e. buy) the product as quickly as possible.

Keith L. Downing Selected Applications of Sub-Symbolic AI Methods

slide-30
SLIDE 30

Adoption

Seeded Adopts Waits

Adoption Function = f(t) = probability of adopting f(t) = p +q × na(t) n where: p = external influence, q = neighborly influence na(t) = # neighbors that have adopted by time t. n = # neighbors

Keith L. Downing Selected Applications of Sub-Symbolic AI Methods

slide-31
SLIDE 31

Evaluating Seed Potential of Nodes

5 Key Node Properties Degree - of connectivity to other nodes. 2-step - # nodes reachable via 1 or 2 connections Avg path length - to all other nodes in the network Clustering coefficient - 1 minus fraction of neighbors that are

  • interconnected. High clustering is not conducive to spreading adoption.

A randomizing factor. A weighted combination of these factors determines a node’s evaluation. Nodes are sorted by their evaluations. The first k nodes in this list become seeds.

Keith L. Downing Selected Applications of Sub-Symbolic AI Methods

slide-32
SLIDE 32

Mixed Strategy Encoding

Strategy = Evaluation function for nodes, which determines seeding. Chromosome encodes 2 strategies, the first of which is applied to any given node with prob p (also evolved).

10110101 11101100 1011 00000111 11101100 0101

GA Chromosome

Degree

w

2-step

w

Avg Path

w

Cluster

w

Random

w

Avg Path

w

Seed Fraction Strategy prob (p)

+ +

1-p

p

f1(t)

Mixed Strategy

f2(t)

Keith L. Downing Selected Applications of Sub-Symbolic AI Methods

slide-33
SLIDE 33

Evolving and Testing Seeding Strategies

Fitness Testing Use evolved seeding strategy to seed the network. Test each node for adoption. Update status if it adopts. Keep updating nodes until all have adopted. Fitness = Net Present Value (NPV) of the Adoption Network NPV(G,S,f(t)) =

t=0

a(t)λ t G = the social network (graph) S = fraction of nodes to seed (evolved) f(t) = the adoption function - there are several options. a(t) = # that adopt AT time t λ = discount rate (e.g. λ = 0.9) So the longer that it takes the whole network to adopt, the lower the fitness.

Keith L. Downing Selected Applications of Sub-Symbolic AI Methods

slide-34
SLIDE 34

Results???

Several Network Types Random Lattice Small World Preferential Attachment Twitter They had hoped to find interesting relationships between network types and the seeding strategies for each. However, they found very little of

  • significance. Still, the application is quite unique, and interesting. The general

approach could transfer to other domains.

Keith L. Downing Selected Applications of Sub-Symbolic AI Methods