+ All Categories
Home > Documents > Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes,...

Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes,...

Date post: 17-Jul-2020
Category:
Upload: others
View: 11 times
Download: 0 times
Share this document with a friend
96
Bayesian Programming Pierre Bessière CNRS - INRIA - Grenoble University Laboratoire LIG - E-Motion Bayesian-Programming.org Building Jaynes’ robot 1
Transcript
Page 1: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

Bayesian Programming

Pierre Bessière

CNRS - INRIA - Grenoble UniversityLaboratoire LIG - E-Motion

Bayesian-Programming.org

Building Jaynes’ robot

1

Page 2: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

E.T. Jaynes, Probability theory: The logic of Science, Page 9

Introducing the RobotIn order to direct attention to constructive things and away from controversial irrelevancies, we shall invent an imaginary being.

Its brain is to be designed by us, so that it reasons according to certain

definite rules.

These rules will be deduced from simple desiderata which, it appears to us, would be desirable in human brains; i.e., we think that a rational person, should he discover that he was violating one of these desiderata, would wish to revise his thinking.

In principle, we are free to adopt any rules we please; that is our way of defining which robot we shall study. Comparing its reasoning with yours, if you find no resemblance you are in turn free to reject our robot and design a different one more to your liking. But if you find a very strong resemblance, and decide that you want and trust this robot to help you in your own problems of inference, then that will be an accomplishment of the theory, not a premise.

Our robot is going to reason about propositions. As already indicated above, we shall denote various propositions by italicized capital letters, A, B, C, etc., and for the time being we must require that any proposition used must have, to the robot, an unambiguous meaning and must be of the simple, definite logical type that must

be either true or false. That is, until otherwise stated we shall be concerned only with two valued logic, or Aristotelian logic.

We do not require that the truth or falsity of such an Aristotelian proposition be ascertainable by any feasible investigation; indeed, our inability to do this is usually just the reason why we need the robot's help.

...

2

Page 3: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

Incompleteness(1989)

Probability as an

alternative to Logic

(1991)

Formalism:Bayesian Programming

(1994)

Inference:ProBT®

(1995)

IndustrialApplications:

ProBAYES(2003)

Cognitive models:BIBA, BACS

(2000)

3

Page 4: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

Incompleteness(1989)

Probability as an

alternative to Logic

(1991)

Formalism:Bayesian Programming

(1994)

Inference:ProBT®

(1995)

IndustrialApplications:

ProBAYES(2003)

Cognitive models:BIBA, BACS

(2000)

3

Page 5: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

Incompleteness(1989)

Probability as an

alternative to Logic

(1991)

Formalism:Bayesian Programming

(1994)

Inference:ProBT®

(1995)

IndustrialApplications:

ProBAYES(2003)

Cognitive models:BIBA, BACS

(2000)

3

Page 6: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

Incompleteness(1989)

Probability as an

alternative to Logic

(1991)

Formalism:Bayesian Programming

(1994)

Inference:ProBT®

(1995)

IndustrialApplications:

ProBAYES(2003)

Cognitive models:BIBA, BACS

(2000)

3

Page 7: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

Incompleteness(1989)

Overview

Probability as an

alternative to Logic

(1991)

Formalism:Bayesian Programming

(1994)

Inference:ProBT®

(1995)

IndustrialApplications:

ProBAYES(2003)

Cognitive models:BIBA, BACS

(2000)

4

Page 8: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

IncompletenessBeam-in-the-Bin experiment (set-up)

5

Page 9: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

IncompletenessBeam-in-the-Bin experiment (Result 1)

6

Page 10: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

IncompletenessBeam-in-the-Bin experiment (Result 2)

7

Page 11: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

IncompletenessBeam-in-the-Bin experiment (Result 3)

8

Page 12: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

IncompletenessBeam-in-the-Bin experiment (Result 3)

8

Page 13: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

IncompletenessLogical paradigm

AvoidObstacle

Environment

9

Page 14: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

IncompletenessLogical paradigm

AvoidObstacle

Environment

O1begin......end

AvoidObs(01)

P

A

9

Page 15: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

IncompletenessLogical paradigm

AvoidObstacle

Environment

=?

O1

O1begin......end

AvoidObs(01)

P

A

9

Page 16: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

IncompletenessLogical paradigm

AvoidObstacle

Environment

=?

O1

Incomp

letnessO1

begin......end

AvoidObs(01)

P

A

9

Page 17: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

Incompleteness(1989)

Overview

Probability as an

alternative to Logic

(1991)

Formalism:Bayesian Programming

(1994)

Inference:ProBT®

(1995)

IndustrialApplications:

ProBAYES(2003)

Cognitive models:BIBA, BACS

(2000)

10

Page 18: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

Bayesian ApproachPrinciple

Environment

11

Page 19: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

Bayesian ApproachPrinciple

Environment

Avoid Obstacle

ConnaissancesPréalables

R ( S , M)

11

Page 20: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

Bayesian ApproachPrinciple

Environment

Avoid Obstacle

ConnaissancesPréalables

R ( S , M)

M

SDonnées Expérimentales

P(MS | DC)

11

Page 21: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

Bayesian ApproachPrinciple

Environment

Avoid Obstacle

ConnaissancesPréalables

R ( S , M)

M

SDonnées Expérimentales

P(MS | DC)

=P(M | SDC)

11

Page 22: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

Bayesian ApproachAn alternative to Logic

Incompleteness

12

Page 23: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

Bayesian ApproachAn alternative to Logic

Incompleteness

Preliminary Knowledge+

Experimental Data=

Probabilistic Representation

Uncertainty

Learning

Entropy Principles

12

Page 24: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

Bayesian ApproachAn alternative to Logic

Incompleteness

Preliminary Knowledge+

Experimental Data=

Probabilistic Representation

Uncertainty

Bayesian inference

Decision

Learning

Entropy Principles

P a( ) +P ¬a( ) =1

P a∧b( ) = P(a)×P(b | a) = P(b)×P(a | b)

12

Page 25: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

Incompleteness(1989)

Overview

Probability as an

alternative to Logic

(1991)

Formalism:Bayesian Programming

(1994)

Inference:ProBT®

(1995)

IndustrialApplications:

ProBAYES(2003)

Cognitive models:BIBA, BACS

(2000)

13

Page 26: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

Bayesian Programming

14

Page 27: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

Bayesian ProgrammingB

ayesia

n P

ro

gr

am

Descr

ipti

on

Question

14

Page 28: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

Bayesian ProgrammingB

ayesia

n P

ro

gr

am

Descr

ipti

on

Question

Specification

Identification

14

Page 29: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

Bayesian ProgrammingB

ayesia

n P

ro

gr

am

Descr

ipti

on

Question

Specification

Identification

•Variables

•Decomposition

•Parametric Forms

14

Page 30: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

Bayesian ProgrammingB

ayesia

n P

ro

gr

am

Descr

ipti

on

Question

Specification

Identification

•Variables

•Decomposition

•Parametric Forms

14

Page 31: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

Bayesian ProgrammingB

ayesia

n P

ro

gr

am

Descr

ipti

on

Question

Specification

Identification

•Variables

•Decomposition

•Parametric Forms

14

Page 32: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

Bayesian ProgrammingB

ayesia

n P

ro

gr

am

Descr

ipti

on

Question

Specification

Identification

•Variables

•Decomposition

•Parametric Forms

14

Page 33: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

Bayesian ProgrammingB

ayesia

n P

ro

gr

am

Descr

ipti

on

Question

Specification

Identification

•Variables

•Decomposition

•Parametric Forms

•Learning from instances

14

Page 34: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

Bayesian ProgrammingB

ayesia

n P

ro

gr

am

Descr

ipti

on

Question

Specification

Identification

•Variables

•Decomposition

•Parametric Forms

•Learning from instances

14

Page 35: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

Bayesian ProgrammingRelated formalisms

15

Page 36: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

Incompleteness(1989)

Overview

Probability as an

alternative to Logic

(1991)

Formalism:Bayesian Programming

(1994)

Inference:ProBT®

(1995)

IndustrialApplications:

ProBAYES(2003)

Cognitive models:BIBA, BACS

(2000)

16

Page 37: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

ProBT®B

ayesia

n P

ro

gr

am

Descr

ipti

on

Question

Specification

Identification

•Variables

•Decomposition

•Parametric Forms

•Learning from instances

17

Page 38: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

ProBT®

main (){

//Variables plFloat read_time; plIntegerType id_type(0,1); plFloat times[5] = {1,2,3,5,10}; plSparseType time_type(5,times); plSymbol id("id",id_type); plSymbol time("time",time_type);

//Parametrical forms //Construction of P(id) plProbValue id_dist[2] = {0.75,0.25}; plProbTable P_id(id,id_dist);

//Construction of P(time | id = john) plProbValue t_john_dist[5] = {20,30,10,5,2}; plProbTable P_t_john(time,t_john_dist); //Construction of P(time | id = bill) plProbValue t_bill_dist[5] = {2,6,10,40,20}; plProbTable P_t_bill(time,t_bill_dist); //Construction de P(time | id) plKernelTable Pt_id(time,id); plValues t_and_id(time^id); t_and_id[id] = 0; Pt_id.push(P_t_john,t_and_id); t_and_id[id] = 1;

Pt_id.push(P_t_bill,t_and_id); //Decomposition // P(time id) = P(id) P(time | id) plJointDistribution jd(time^id,P_id*Pt_id);

//Question //Getting the question P(id | time) plCndKernel Pid_t; jd.ask(Pid_t,id,time);

//Read a time from the key board cout<<"P(id,time)= "<<Pid_t<<"\n"; cout<<"Time? : "; cin>>read_time;

//Getting P(id | time = read_time) plKernel Pid_readTime;

Bayesia

n P

ro

gr

am

Descr

ipti

on

Question

Bayesian-Programming.org

17

Page 39: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

Question P X1 ∧X 2 ∧ ...∧Xn( ) = P L1( ) ×P L2 | R2( ) × ...×P Lk | Rk( )

18

Page 40: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

Question P X1 ∧X 2 ∧ ...∧Xn( ) = P L1( ) ×P L2 | R2( ) × ...×P Lk | Rk( )

P Search |Known( )

18

Page 41: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

Question P X1 ∧X 2 ∧ ...∧Xn( ) = P L1( ) ×P L2 | R2( ) × ...×P Lk | Rk( )

P Search |Known( )

= P Search∧Free |Known( )Free∑

18

Page 42: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

Question P X1 ∧X 2 ∧ ...∧Xn( ) = P L1( ) ×P L2 | R2( ) × ...×P Lk | Rk( )

P Search |Known( )

= P Search∧Free |Known( )Free∑

=P Search∧Free∧Known( )

P Known( )Free∑

18

Page 43: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

Question P X1 ∧X 2 ∧ ...∧Xn( ) = P L1( ) ×P L2 | R2( ) × ...×P Lk | Rk( )

P Search |Known( )

= P Search∧Free |Known( )Free∑

=P Search∧Free∧Known( )

P Known( )Free∑

= 1Z× P Search∧Free∧Known( )Free∑

18

Page 44: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

Question P X1 ∧X 2 ∧ ...∧Xn( ) = P L1( ) ×P L2 | R2( ) × ...×P Lk | Rk( )

P Search |Known( )

= P Search∧Free |Known( )Free∑

=P Search∧Free∧Known( )

P Known( )Free∑

= 1Z× P Search∧Free∧Known( )Free∑

= 1Z× P L1( ) ×P L2 | R2( ) × ...×P Lk | Rk( )Free∑

18

Page 45: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

Symbolic simplification P Search |Known( ) = 1

Z× P Li | Ri( )

i=0

k

∏⎡

⎣ ⎢

⎦ ⎥

Free∑

19

Page 46: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

Symbolic simplification P Search |Known( ) = 1

Z× P Li | Ri( )

i=0

k

∏⎡

⎣ ⎢

⎦ ⎥

Free∑

Factorization:

P Search |Known( ) = 1Z× P Lj | R j( )j∈J∏ × P Lk | Rk( )

k∈K∏⎡

⎣ ⎢

⎦ ⎥

Free1∑

19

Page 47: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

Symbolic simplification P Search |Known( ) = 1

Z× P Li | Ri( )

i=0

k

∏⎡

⎣ ⎢

⎦ ⎥

Free∑

Factorization:

P Search |Known( ) = 1Z× P Lj | R j( )j∈J∏ × P Lk | Rk( )

k∈K∏⎡

⎣ ⎢

⎦ ⎥

Free1∑

P Search |Known( ) = 1Z× P Lj | R j( )j∈J∏ × P Ll | Rl( )

l∈L∏⎡

⎣ ⎢

⎦ ⎥

Free2∑Sum to 1:

[Bessière et al. 2003]

19

Page 48: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

Symbolic simplification P Search |Known( ) = 1

Z× P Li | Ri( )

i=0

k

∏⎡

⎣ ⎢

⎦ ⎥

Free∑

Factorization:

P Search |Known( ) = 1Z× P Lj | R j( )j∈J∏ × P Lk | Rk( )

k∈K∏⎡

⎣ ⎢

⎦ ⎥

Free1∑

P Search |Known( ) = 1Z× P Lj | R j( )j∈J∏ × P Ll | Rl( )

l∈L∏⎡

⎣ ⎢

⎦ ⎥

Free2∑Sum to 1:

[Bessière et al. 2003]

Distributivity: Generalized distributive law [Aji & McEliece2000]Restrictions successives [Raoult & Smail2003]

P Search |Known( ) = 1Z× P Lj | R j( )j∈J∏ × P Lm | Rm( ) × P Ln | Rn( )

n∈N∏ × ...× P Lo | Ro( )

o∈O∏⎡

⎣ ⎢

⎦ ⎥

FreeX∑

⎣ ⎢ ⎢

⎦ ⎥ ⎥ Free4

∑m∈M∏

⎣ ⎢ ⎢

⎦ ⎥ ⎥ Free3

19

Page 49: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

Using cache memory

P Search |Known( ) = 1Z× P Lj | R j( )j∈J∏ × P Lm | Rm( ) × P Ln | Rn( )

n∈N∏ × ...× P Lo | Ro( )

o∈O∏⎡

⎣ ⎢

⎦ ⎥

FreeX∑

⎣ ⎢ ⎢

⎦ ⎥ ⎥ Free4

∑m∈M∏

⎣ ⎢ ⎢

⎦ ⎥ ⎥ Free3

Π

Σ

P1

P2

Π

Σ

Π

P8

P9

Π

Σ

P3 P4

Σ

Σ

P5

P6

P7

Π

20

Page 50: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

Using cache memory

P Search |Known( ) = 1Z× P Lj | R j( )j∈J∏ × P Lm | Rm( ) × P Ln | Rn( )

n∈N∏ × ...× P Lo | Ro( )

o∈O∏⎡

⎣ ⎢

⎦ ⎥

FreeX∑

⎣ ⎢ ⎢

⎦ ⎥ ⎥ Free4

∑m∈M∏

⎣ ⎢ ⎢

⎦ ⎥ ⎥ Free3

Π

Σ

P1

P2

Π

Σ

Π

P8

P9

Π

Σ

P3 P4

P10

20

Page 51: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

Using cache memory

P Search |Known( ) = 1Z× P Lj | R j( )j∈J∏ × P Lm | Rm( ) × P Ln | Rn( )

n∈N∏ × ...× P Lo | Ro( )

o∈O∏⎡

⎣ ⎢

⎦ ⎥

FreeX∑

⎣ ⎢ ⎢

⎦ ⎥ ⎥ Free4

∑m∈M∏

⎣ ⎢ ⎢

⎦ ⎥ ⎥ Free3

Π

Σ

P1

P2

Π

Σ

Π

P8

P9

P10

P11

20

Page 52: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

Incompleteness(1989)

Overview

Probability as an

alternative to Logic

(1991)

Formalism:Bayesian Programming

(1994)

Inference:ProBT®

(1995)

IndustrialApplications:

ProBAYES(2003)

Cognitive models:BIBA, BACS

(2000)

21

Page 53: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

BIBA & BACSMain Questions

•How to develop better artifacts using

Bayesian reasoning?

•Biological plausibility of Bayesian

reasoning at a macroscopic level?

•Biological plausibility of Bayesian

reasoning at a microscopic level?

22

Page 54: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

Bayesian Robots ProgrammingPhD O. Lebeltel (1999)

[Lebeltel99][Lebeltel04]

Basic Concepts of Bayesian Programming 35

Pro

gra

m

8

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>><

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>:

Des

crip

tion

8

>>>>>>>>>>>>>>>>>>>>>>>>>><

>>>>>>>>>>>>>>>>>>>>>>>>>>:

Spec

ifica

tion

8

>>>>>>>>>>>>>>>>>>>>>><

>>>>>>>>>>>>>>>>>>>>>>:

Relevant Variables:Dir, Prox, !, V rot, HDecomposition:P (Dir ! Prox ! ! ! V rot ! H | "homing) =

P (Dir ! Prox ! ! | "homing)"P (H | Prox ! "homing)"P (V rot | Dir ! Prox ! ! ! H ! "homing)

Parametric Forms:P (Dir ! Prox ! ! | "homing) # UniformP ([H = avoidance] | Prox ! "homing) = Sigmoid!,"(Prox)P (V rot | Dir ! Prox ! ! ! [H = avoidance] ! "homing)# P (V rot | Dir ! Prox ! "avoidance)P (V rot | Dir ! Prox ! ! ! [H = phototaxy]! "homing)# P (V rot | ! ! Prox ! "phototaxy)

Identification:No learning

Question:P (V rot | dir ! prox ! # ! "homing)

Fig. 11. Homing BP

Dir ! {"10, . . . , 10} #Dir$ = 21Prox ! {0, . . . , 15} #Prox$ = 16! ! {"170, . . . , 180} #!$ = 36V rot ! {"10, . . . , 10} #V rot$ = 21H ! {avoidance, phototaxy} #H$ = 2

(33)

Decomposition: We believe that the sensory variables Dir, Prox and ! areindependent from one another.

Far from any objects, we want the robot to go toward the light. Very closeto obstacles, we want the robot to avoid them. Hence, we consider that Hshould only depend on Prox.

Finally,we believe that Vrot must depend on the other four variables. Theseprogrammer choices lead to the following decomposition:

P (Dir % Prox % ! % V rot % H | "homing)= P (Dir % Prox % ! | "homing)

&P (H | Prox % "homing)&P (V rot | Dir % Prox % ! % H % "homing)

(34)

Parametric forms: We have no a priori information about either the directionand distance of objects or the direction of the light source. Consequently, westate:

P (Dir % Prox % ! | "homing) ' Uniform (35)

H is a command variable to switch from avoidance to phototaxy. Thismeans that when H = avoidance the robot should behave as it learned to do

23

Page 55: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

Bayesian Robots ProgrammingPhD O. Lebeltel (1999)

[Lebeltel99][Lebeltel04] 23

Page 56: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

Bayesian Robots ProgrammingPhD O. Lebeltel (1999)

[Lebeltel99][Lebeltel04]

Basic Concepts of Bayesian Programming 35

Pro

gra

m

8

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>><

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>:

Des

crip

tion

8

>>>>>>>>>>>>>>>>>>>>>>>>>><

>>>>>>>>>>>>>>>>>>>>>>>>>>:

Spec

ifica

tion

8

>>>>>>>>>>>>>>>>>>>>>><

>>>>>>>>>>>>>>>>>>>>>>:

Relevant Variables:Dir, Prox, !, V rot, HDecomposition:P (Dir ! Prox ! ! ! V rot ! H | "homing) =

P (Dir ! Prox ! ! | "homing)"P (H | Prox ! "homing)"P (V rot | Dir ! Prox ! ! ! H ! "homing)

Parametric Forms:P (Dir ! Prox ! ! | "homing) # UniformP ([H = avoidance] | Prox ! "homing) = Sigmoid!,"(Prox)P (V rot | Dir ! Prox ! ! ! [H = avoidance] ! "homing)# P (V rot | Dir ! Prox ! "avoidance)P (V rot | Dir ! Prox ! ! ! [H = phototaxy]! "homing)# P (V rot | ! ! Prox ! "phototaxy)

Identification:No learning

Question:P (V rot | dir ! prox ! # ! "homing)

Fig. 11. Homing BP

Dir ! {"10, . . . , 10} #Dir$ = 21Prox ! {0, . . . , 15} #Prox$ = 16! ! {"170, . . . , 180} #!$ = 36V rot ! {"10, . . . , 10} #V rot$ = 21H ! {avoidance, phototaxy} #H$ = 2

(33)

Decomposition: We believe that the sensory variables Dir, Prox and ! areindependent from one another.

Far from any objects, we want the robot to go toward the light. Very closeto obstacles, we want the robot to avoid them. Hence, we consider that Hshould only depend on Prox.

Finally,we believe that Vrot must depend on the other four variables. Theseprogrammer choices lead to the following decomposition:

P (Dir % Prox % ! % V rot % H | "homing)= P (Dir % Prox % ! | "homing)

&P (H | Prox % "homing)&P (V rot | Dir % Prox % ! % H % "homing)

(34)

Parametric forms: We have no a priori information about either the directionand distance of objects or the direction of the light source. Consequently, westate:

P (Dir % Prox % ! | "homing) ' Uniform (35)

H is a command variable to switch from avoidance to phototaxy. Thismeans that when H = avoidance the robot should behave as it learned to do

1 - Calling Bayesian subroutines 2 - Probabilistic if-then-else

24

Page 57: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

Mobile Robot NavigationPhD C. Pradalier (2004)

[Pradalier04][Pradalier05] 25

Page 58: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

Mobile Robot NavigationPhD C. Pradalier (2004)

[Pradalier04][Pradalier05] 25

Page 59: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

Mobile Robot NavigationPhD C. Pradalier (2004)

[Pradalier04][Pradalier05]

3 - Proscriptive programming26

Page 60: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

Mobile Robot NavigationPhD C. Pradalier (2004)

[Pradalier04][Pradalier05] 27

Page 61: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

Mobile Robot NavigationPhD C. Pradalier (2004)

[Pradalier04][Pradalier05] 27

Page 62: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

Training Video-Games AvatarsPhD R. Le Hy (2007)

[LeHy05][LeHy07]

196 Ronan Le Hy and Pierre Bessière

Pro

gra

m

8

>>>>>>>>>>>>>>>>>>>>>><

>>>>>>>>>>>>>>>>>>>>>>:

Des

crip

tion

8

>>>>>>>>>>>>>>>>>><

>>>>>>>>>>>>>>>>>>:

Spec

ifica

tion

8

>>>>>>>>>>>>>><

>>>>>>>>>>>>>>:

Relevant Variables:Bt, Bt!1, Ht, W t, OW t, N t, NOt, WP t and HP t

Decomposition:P (Bt ! Bt!1 ! Ht ! W t ! OW t ! N t ! NOt ! WP t ! HP t) =

P (Bt!1) " P (Bt | Bt!1)"P (Ht | Bt) " P (W t | Bt) " P (OW t | Bt) " P (N t | Bt)"P (NOt | Bt) " P (WP t | Bt) " P (HP t | Bt)

Parametric Forms:P (Bt!1): uniform;All other distributions are tables

Identification:None

Question:P (Bt | bt!1 ! ht ! wt ! owt ! nt ! not ! wpt ! hpt)

Fig. 2. Sequencing Bot’s behaviors by inverse programming

Table 1. P (Ht | Bt)

attack searchweapon searchhealth explore flee detectdangerLow 10!3 10!1 x 10!1 0.7 10!1

Medium 10!1 x 10!2 x 0.2 xHigh x x 10!3 x 0.1 x

(poor) health level, a medium probability (10!1) of having a medium (fair)health level, and a strong probability (0.899 4) of having a high (good) healthlevel.

This form of specification allows us to formalize conveniently the con-straints we want to impose on the behavior, in a condensed format, and sepa-rately on each sensory variable. Indeed, Table 1 formalizes the relation of thebot’s health level to its state: if it starts attacking, then its health is ratherhigh; if it starts searching for a health pack, then its health is almost certainlylow; if it starts fleeing, then its health is probably rather low, but with a highdegree of uncertainty.

All six tables for the other sensory variables are built on similar patterns.

Transition table

P (Bt | Bt!1) is special (see Table 2). It gives some sort of basic transitiontable; i.e. it answers in a probabilistic way the question: knowing nothing butthe current state, what will the next state be?

In the present case, it basically specifies stability: a very high probabilityof continuing with the same behavior and a low one of changing.4 "x" stands for the normalization value of the column. For instance, in this first

column x=0.899

28

Page 63: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

Training Video-Games AvatarsPhD R. Le Hy (2007)

[LeHy05][LeHy07]

196 Ronan Le Hy and Pierre Bessière

Pro

gra

m

8

>>>>>>>>>>>>>>>>>>>>>><

>>>>>>>>>>>>>>>>>>>>>>:

Des

crip

tion

8

>>>>>>>>>>>>>>>>>><

>>>>>>>>>>>>>>>>>>:

Spec

ifica

tion

8

>>>>>>>>>>>>>><

>>>>>>>>>>>>>>:

Relevant Variables:Bt, Bt!1, Ht, W t, OW t, N t, NOt, WP t and HP t

Decomposition:P (Bt ! Bt!1 ! Ht ! W t ! OW t ! N t ! NOt ! WP t ! HP t) =

P (Bt!1) " P (Bt | Bt!1)"P (Ht | Bt) " P (W t | Bt) " P (OW t | Bt) " P (N t | Bt)"P (NOt | Bt) " P (WP t | Bt) " P (HP t | Bt)

Parametric Forms:P (Bt!1): uniform;All other distributions are tables

Identification:None

Question:P (Bt | bt!1 ! ht ! wt ! owt ! nt ! not ! wpt ! hpt)

Fig. 2. Sequencing Bot’s behaviors by inverse programming

Table 1. P (Ht | Bt)

attack searchweapon searchhealth explore flee detectdangerLow 10!3 10!1 x 10!1 0.7 10!1

Medium 10!1 x 10!2 x 0.2 xHigh x x 10!3 x 0.1 x

(poor) health level, a medium probability (10!1) of having a medium (fair)health level, and a strong probability (0.899 4) of having a high (good) healthlevel.

This form of specification allows us to formalize conveniently the con-straints we want to impose on the behavior, in a condensed format, and sepa-rately on each sensory variable. Indeed, Table 1 formalizes the relation of thebot’s health level to its state: if it starts attacking, then its health is ratherhigh; if it starts searching for a health pack, then its health is almost certainlylow; if it starts fleeing, then its health is probably rather low, but with a highdegree of uncertainty.

All six tables for the other sensory variables are built on similar patterns.

Transition table

P (Bt | Bt!1) is special (see Table 2). It gives some sort of basic transitiontable; i.e. it answers in a probabilistic way the question: knowing nothing butthe current state, what will the next state be?

In the present case, it basically specifies stability: a very high probabilityof continuing with the same behavior and a low one of changing.4 "x" stands for the normalization value of the column. For instance, in this first

column x=0.899

200 Ronan Le Hy and Pierre Bessière

eight products (see Equation 2). It is linear in both the number of behaviorsto sequence and the number of variables to take into account.

3 Training video game avatars

The next step is to teach the bot a behavior instead of specifying all theprobability distributions by hand.

To do this, the player is placed in the usual interface of the game (seeFigure 3). He or she pilots the bot using the familiar controls: keyboard andmouse. We measure at each instant (every tenth of a second) the sensoryvariables coming from the bots and the commands decided by the player.These sensory inputs and commands are used to learn the values of the tablesthat were fixed manually in the previous section.

After this learning phase we are back to the previous situation and thebot is controlled the exact same manner: answering each tenth of a secondthe question P (Bt | bt!1 ! ht ! wt ! owt ! nt ! not ! wpt ! hpt).

Fig. 3. Game setup !!!Changer l’image!!!

3.1 Bayesian program

Consequently, the Bayesian program did not changed but for the identifica-tion part. The variables are the same, the decomposition is the same, theparametric forms are the same, the question is the same, but, Learning bydemonstration is used to identify the values of the table.

28

Page 64: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

Training Video-Games AvatarsPhD R. Le Hy (2007)

[LeHy05][LeHy07]

196 Ronan Le Hy and Pierre Bessière

Pro

gra

m

8

>>>>>>>>>>>>>>>>>>>>>><

>>>>>>>>>>>>>>>>>>>>>>:

Des

crip

tion

8

>>>>>>>>>>>>>>>>>><

>>>>>>>>>>>>>>>>>>:

Spec

ifica

tion

8

>>>>>>>>>>>>>><

>>>>>>>>>>>>>>:

Relevant Variables:Bt, Bt!1, Ht, W t, OW t, N t, NOt, WP t and HP t

Decomposition:P (Bt ! Bt!1 ! Ht ! W t ! OW t ! N t ! NOt ! WP t ! HP t) =

P (Bt!1) " P (Bt | Bt!1)"P (Ht | Bt) " P (W t | Bt) " P (OW t | Bt) " P (N t | Bt)"P (NOt | Bt) " P (WP t | Bt) " P (HP t | Bt)

Parametric Forms:P (Bt!1): uniform;All other distributions are tables

Identification:None

Question:P (Bt | bt!1 ! ht ! wt ! owt ! nt ! not ! wpt ! hpt)

Fig. 2. Sequencing Bot’s behaviors by inverse programming

Table 1. P (Ht | Bt)

attack searchweapon searchhealth explore flee detectdangerLow 10!3 10!1 x 10!1 0.7 10!1

Medium 10!1 x 10!2 x 0.2 xHigh x x 10!3 x 0.1 x

(poor) health level, a medium probability (10!1) of having a medium (fair)health level, and a strong probability (0.899 4) of having a high (good) healthlevel.

This form of specification allows us to formalize conveniently the con-straints we want to impose on the behavior, in a condensed format, and sepa-rately on each sensory variable. Indeed, Table 1 formalizes the relation of thebot’s health level to its state: if it starts attacking, then its health is ratherhigh; if it starts searching for a health pack, then its health is almost certainlylow; if it starts fleeing, then its health is probably rather low, but with a highdegree of uncertainty.

All six tables for the other sensory variables are built on similar patterns.

Transition table

P (Bt | Bt!1) is special (see Table 2). It gives some sort of basic transitiontable; i.e. it answers in a probabilistic way the question: knowing nothing butthe current state, what will the next state be?

In the present case, it basically specifies stability: a very high probabilityof continuing with the same behavior and a low one of changing.4 "x" stands for the normalization value of the column. For instance, in this first

column x=0.899

28

Page 65: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

Training Video-Games AvatarsPhD R. Le Hy (2007)

[LeHy05][LeHy07]

196 Ronan Le Hy and Pierre Bessière

Pro

gra

m

8

>>>>>>>>>>>>>>>>>>>>>><

>>>>>>>>>>>>>>>>>>>>>>:

Des

crip

tion

8

>>>>>>>>>>>>>>>>>><

>>>>>>>>>>>>>>>>>>:

Spec

ifica

tion

8

>>>>>>>>>>>>>><

>>>>>>>>>>>>>>:

Relevant Variables:Bt, Bt!1, Ht, W t, OW t, N t, NOt, WP t and HP t

Decomposition:P (Bt ! Bt!1 ! Ht ! W t ! OW t ! N t ! NOt ! WP t ! HP t) =

P (Bt!1) " P (Bt | Bt!1)"P (Ht | Bt) " P (W t | Bt) " P (OW t | Bt) " P (N t | Bt)"P (NOt | Bt) " P (WP t | Bt) " P (HP t | Bt)

Parametric Forms:P (Bt!1): uniform;All other distributions are tables

Identification:None

Question:P (Bt | bt!1 ! ht ! wt ! owt ! nt ! not ! wpt ! hpt)

Fig. 2. Sequencing Bot’s behaviors by inverse programming

Table 1. P (Ht | Bt)

attack searchweapon searchhealth explore flee detectdangerLow 10!3 10!1 x 10!1 0.7 10!1

Medium 10!1 x 10!2 x 0.2 xHigh x x 10!3 x 0.1 x

(poor) health level, a medium probability (10!1) of having a medium (fair)health level, and a strong probability (0.899 4) of having a high (good) healthlevel.

This form of specification allows us to formalize conveniently the con-straints we want to impose on the behavior, in a condensed format, and sepa-rately on each sensory variable. Indeed, Table 1 formalizes the relation of thebot’s health level to its state: if it starts attacking, then its health is ratherhigh; if it starts searching for a health pack, then its health is almost certainlylow; if it starts fleeing, then its health is probably rather low, but with a highdegree of uncertainty.

All six tables for the other sensory variables are built on similar patterns.

Transition table

P (Bt | Bt!1) is special (see Table 2). It gives some sort of basic transitiontable; i.e. it answers in a probabilistic way the question: knowing nothing butthe current state, what will the next state be?

In the present case, it basically specifies stability: a very high probabilityof continuing with the same behavior and a low one of changing.4 "x" stands for the normalization value of the column. For instance, in this first

column x=0.899

4 - Inverse programming29

Page 66: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

Bayesian control of robotics armsPhD R. Garcia (2003)

[Garcia03]

Description de l’objetPoints de référence sur les caméras (VS)

Calibration des caméras

Localisation d’un point avec la V.S.

Positions apprises (mixture)

Positions de référence

Positions articulaire et cartésienne

Capteurs d’état

Localisation d’un objet

Gestion d’activitésAction de la pincePosition but correspondant à l’activitéDescription du mouvement du bras

30

Page 67: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

Bayesian Approach to Action Selection and Attention focusing

PhD C. Koike (2005)

[Koike05]

Bayesian Approach to Action Selection and Attention Focusing 275

Pro

gra

m

8

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>><

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>:

Des

crip

tion

8

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>><

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>:

Spec

ifica

tion

8

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>><

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>:

Relevant Variables:S0:t

i , Z0:ti , !0:t

i , C0:t, "0:ti , B0:t, #0:t

i , M0:t

Decomposition:P (S0:t

i ! Z0:ti ! C0:t ! !0:t

i ! B0:t ! "0:ti ! M0:t ! #0:t

i |$i) =˛˛˛˛˛˛˛˛˛˛˛˛

Qtj=1

2

66664

P (Sji |S

j!1i M j!1$i)

"P (Zji |S

ji Cj$i)

"P (Cj |$i) " P (!i|CjBjSj

i $i)"P (Bj|$i) " P ("i|B

jSji Bj!1$i)

"P (M j |$i) " P (#i|MjSj

i BjM j!1$i)

3

77775

"P (S0i Z0

i "0i B0#0

i M0|$i).

Parametric Forms:P (Sj

i |Sj!1i M j!1$i) = Dynamic Model

P (Zji |S

ji Cj$i) = Sensor model

P (Cj |$i) = A priori about Attention VariablesP (!i|C

jBjSji $i)Attention model in fusion with coherence form

P (Bj |$i) = A priori about Behaviour variablesP ("i|B

jSji Bj!1$i) = Behaviour model in fusion with coherence form

P (M j |$i) = A priori about motor variablesP (#i|M

jSji BjM j!1$i) = Motor model in fusion with coherence form

P (S0i Z0

i #0i M

0|$i) = Initial ConditionsIdentification:A Priori or Learning Method

Question:P (Sj

i |z0:j!1i m0:j!1 c0:j!1 !0:j!1

i "0:j!1i #0:j!1

i $i) - Prediction of StatesP (Cj |z0:j!1

i m0:j!1 c0:j!1 !0:ji "0:j!1

i #0:j!1i $i) - Determination of Attention

P (Bj |z0:ji m0:j!1 c0:j !0:j

i "0:ji #0:j!1

i $i) - Determination of BehaviourP (Sj

i |z0:ji m0:j!1 c0:j !0:j

i "0:ji #0:j!1

i $i) - Estimation of StatesP (M j |z0:j

i m0:j!1 b0:j c0:j !0:ji "0:j

i #0:ji $i) - Motor Commands

Fig. 9. Elementary Filter with Attention Selection Bayesian Program

processing method to be applied to the raw data and the observation thatresults.

Attention variables Ct are common to all elementary filters, and the atten-tion model is defined by applying coherence-based fusion. A coherence variableset !t is then necessary, one variable in each elementary filter for each variablein Ct .

In the joint distribution shown in figure 9, the first term shows the dynamicmodel, which is unchanged from the Bayes filter in the previous section.

The observation model P (Zji |S

ji Cj"i) in the second line inside the time

product now includes the attention variable.The attention variable is necessary in the sensor model to indicate valid

observations. If observations are valid, the sensor model applies. If an obser-vation is not available, a uniform distribution is used. In other words, it is

31

Page 68: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

Bayesian Approach to Action Selection and Attention focusing

PhD C. Koike (2005)

[Koike05]

• Inclusion of intermediary state variables

• Bayesian time filtering

• Motor model addition

• Domains of interest

• Behaviour selection, synergies and strategies

• Reduction of perception data pre-processing

31

Page 69: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

86 M.K Tay, K. Mekhnacha, M. Yguel, C. Coué and C. Laugier

Pro

gra

m

8

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>><

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>:

Des

crip

tion

8

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>><

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>:

Spec

ifica

tion

8

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>><

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>:

Relevant Variables:C :an index that identify each 2D cell of the gridA :an index that identify each possible antecedent of the cell

c over all the cells in the 2D gridZt :sensor measurement relative to the cell cV :The set of velocities for the cell c where

V is discretized in n cases; V ! V = {v1, . . . , vn}O, O!1 : Taking values from the set O " {occ, emp}

indicating if the cell c is ‘occupied’ or ‘empty’.O!1 represents the random variable of the state of anantecedent cell of c through the possible motion through c.

Decomposition:P (C A Z O O!1 V ) =

P (A)P (V |A)P (C|V, A)P (O!1|A)P (O|O!1)P (Z|O, V, C)Parametric Forms:P (A): uniform;P (V | A): conditional velocity distribution of antecedent cell;P (C | V A): dirac representing reachability (see 2.3);P (O!1 | A): conditional occupancy distribution of antecdent cell;P (O | O!1): occupancy transitional matrix (see 2.3);P (Z | O V C): observation model;

Identification:None

Question:P (O | Z C)P (V | Z C)

Fig. 5. BOF with Velocity Inference

Parametric Form

Each sub expression of the joint distribution decomposition can be mappedto a semantic. The semantics of each distribution in the decomposition areinterpreted as follows:

• P (A) is the distribution over all the possible antecedent of the cell c. It ischosen to be uniform because the cell is considered reachable from all theantecedents with equal probability.

• P (V |A) is the distribution over all the possible velocities of a certain an-tecedent of the cell c, its parametric form is in the form of a histogram.

• P (C|V, A) is a distribution that explains if c is reachable from [A = a]with the velocity [V = v]. In discrete spaces, this distribution is a diracwith value equal to one if and only if cx = ax + vx!t and cy = ay + vy!twhich follows a dynamic model of constant velocity.

Bayesian Occupancy Filters for ADASPhD C. Coué (2003)

[Coué03][Coué05] 32

Page 70: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

Bayesian Occupancy Filters for ADASPhD C. Coué (2003)

[Coué03][Coué05] 32

Page 71: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

Bayesian Occupancy Filters for ADASPhD C. Coué (2003)

[Coué03][Coué05] 32

Page 72: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

86 M.K Tay, K. Mekhnacha, M. Yguel, C. Coué and C. Laugier

Pro

gra

m

8

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>><

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>:

Des

crip

tion

8

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>><

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>:

Spec

ifica

tion

8

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>><

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>:

Relevant Variables:C :an index that identify each 2D cell of the gridA :an index that identify each possible antecedent of the cell

c over all the cells in the 2D gridZt :sensor measurement relative to the cell cV :The set of velocities for the cell c where

V is discretized in n cases; V ! V = {v1, . . . , vn}O, O!1 : Taking values from the set O " {occ, emp}

indicating if the cell c is ‘occupied’ or ‘empty’.O!1 represents the random variable of the state of anantecedent cell of c through the possible motion through c.

Decomposition:P (C A Z O O!1 V ) =

P (A)P (V |A)P (C|V, A)P (O!1|A)P (O|O!1)P (Z|O, V, C)Parametric Forms:P (A): uniform;P (V | A): conditional velocity distribution of antecedent cell;P (C | V A): dirac representing reachability (see 2.3);P (O!1 | A): conditional occupancy distribution of antecdent cell;P (O | O!1): occupancy transitional matrix (see 2.3);P (Z | O V C): observation model;

Identification:None

Question:P (O | Z C)P (V | Z C)

Fig. 5. BOF with Velocity Inference

Parametric Form

Each sub expression of the joint distribution decomposition can be mappedto a semantic. The semantics of each distribution in the decomposition areinterpreted as follows:

• P (A) is the distribution over all the possible antecedent of the cell c. It ischosen to be uniform because the cell is considered reachable from all theantecedents with equal probability.

• P (V |A) is the distribution over all the possible velocities of a certain an-tecedent of the cell c, its parametric form is in the form of a histogram.

• P (C|V, A) is a distribution that explains if c is reachable from [A = a]with the velocity [V = v]. In discrete spaces, this distribution is a diracwith value equal to one if and only if cx = ax + vx!t and cy = ay + vy!twhich follows a dynamic model of constant velocity.

Bayesian Occupancy Filters for ADASPhD C. Coué (2003)

[Coué03][Coué05] 33

5 - Time vs Space dependencies

Page 73: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

Early development of speech:Orofacial imitation

PhD S. Serkhane (2005)

[Serkhane05a][Serkhane05b]

Building a Talking Baby Robot 359

Pro

gra

m

8

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>><

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>:

Des

crip

tion

8

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>><

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>:

Spec

ifica

tion

8

>>>>>>>>>>>>>>>>>>>>>>>>>><

>>>>>>>>>>>>>>>>>>>>>>>>>>:

Relevant Variables:Lh, Tb, Td, Xh, Y h, Al, F1 and F2

Decomposition:P (Lh ! Tb ! Td ! Xh ! Y h ! Al ! F1 ! F2) =

P (Xh) " P (Y h) " P (Al)"P (Lh | Al) " P (Tb | Xh ! Y h) " P (Td | Xh ! Y h ! Tb)"P (F1 | Xh ! Y h ! Al) " P (F2 | Xh ! Y h ! Al)

Parametric Forms:P (Xh) # UniformP (Y h) # UniformP (Al) # UniformP (Lh | Al) # G(µ(Al), !(Al))P (Tb | Xh ! Y h) # G(µ(Xh, Y h), !(Xh, Y h))P (Td | Xh ! Y h ! Tb) # G(µ(Xh, Y h, T b),!(Xh, Y h, T b))P (F1 | Xh ! Y h ! Al) # G(µ(Xh, Y h, Al), !(Xh, Y h, Al))P (F2 | Xh ! Y h ! Al) # G(µ(Xh, Y h, Al), !(Xh, Y h, Al))

Identification:See text (Sections 4.3, 4.5 and 4.6)

Question:P (Lh ! Tb ! Td | f1 ! f2) or P (Lh ! Tb ! Td | f1 ! f2 ! al)

Fig. 13. Talking baby robot Bayesian model

system of reference. As mentioned in section 2.2, Xh and Y h are potentialoutputs of the somesthetic system and Al can be either a somatosensory ora visual variable (depending on whether this piece of information comes fromself or the other).

The variables Lh, Tb, Td, F1 and F2 are discretized with 16 values each.Their ranges have been fixed according to the findings of the di!erent framingsdescribed above.

The variables Xh, Y h and Al are also discrete. We explore di!erent dis-cretization for them: {16, 16, 8}, {8, 8, 4}, {4, 4, 2} and {2, 2, 1}. Thesedi!erent choices will be discuss in details in the sequel.

Decomposition

The three variables Xh, Y h and Al which characterize the geometric shapeof the vocal duct are selected as pivots of the decomposition. Indeed, knowingthe shape of the vocal duct it is possible to independently deduce, on onehand, the produce sound (F1 and F2) and, on the other hand, independently,the motor commands (Lh, Tb and Td). The corresponding formal hypothesesare the following:

1. The three geometric variables Xh, Y h and Al are independent of oneanother when nothing is known about either the produce sound or themotor commands.

34

Page 74: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

Early development of speech:Orofacial imitation

PhD S. Serkhane (2005)

[Serkhane05a][Serkhane05b] 34

Page 75: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

Early development of speech:Orofacial imitation

PhD S. Serkhane (2005)

[Serkhane05a][Serkhane05b] 34

Page 76: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

Early development of speech:Orofacial imitation

PhD S. Serkhane (2005)

[Serkhane05a][Serkhane05b]

Building a Talking Baby Robot 359

Pro

gra

m

8

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>><

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>:

Des

crip

tion

8

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>><

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>:

Spec

ifica

tion

8

>>>>>>>>>>>>>>>>>>>>>>>>>><

>>>>>>>>>>>>>>>>>>>>>>>>>>:

Relevant Variables:Lh, Tb, Td, Xh, Y h, Al, F1 and F2

Decomposition:P (Lh ! Tb ! Td ! Xh ! Y h ! Al ! F1 ! F2) =

P (Xh) " P (Y h) " P (Al)"P (Lh | Al) " P (Tb | Xh ! Y h) " P (Td | Xh ! Y h ! Tb)"P (F1 | Xh ! Y h ! Al) " P (F2 | Xh ! Y h ! Al)

Parametric Forms:P (Xh) # UniformP (Y h) # UniformP (Al) # UniformP (Lh | Al) # G(µ(Al), !(Al))P (Tb | Xh ! Y h) # G(µ(Xh, Y h), !(Xh, Y h))P (Td | Xh ! Y h ! Tb) # G(µ(Xh, Y h, T b),!(Xh, Y h, T b))P (F1 | Xh ! Y h ! Al) # G(µ(Xh, Y h, Al), !(Xh, Y h, Al))P (F2 | Xh ! Y h ! Al) # G(µ(Xh, Y h, Al), !(Xh, Y h, Al))

Identification:See text (Sections 4.3, 4.5 and 4.6)

Question:P (Lh ! Tb ! Td | f1 ! f2) or P (Lh ! Tb ! Td | f1 ! f2 ! al)

Fig. 13. Talking baby robot Bayesian model

system of reference. As mentioned in section 2.2, Xh and Y h are potentialoutputs of the somesthetic system and Al can be either a somatosensory ora visual variable (depending on whether this piece of information comes fromself or the other).

The variables Lh, Tb, Td, F1 and F2 are discretized with 16 values each.Their ranges have been fixed according to the findings of the di!erent framingsdescribed above.

The variables Xh, Y h and Al are also discrete. We explore di!erent dis-cretization for them: {16, 16, 8}, {8, 8, 4}, {4, 4, 2} and {2, 2, 1}. Thesedi!erent choices will be discuss in details in the sequel.

Decomposition

The three variables Xh, Y h and Al which characterize the geometric shapeof the vocal duct are selected as pivots of the decomposition. Indeed, knowingthe shape of the vocal duct it is possible to independently deduce, on onehand, the produce sound (F1 and F2) and, on the other hand, independently,the motor commands (Lh, Tb and Td). The corresponding formal hypothesesare the following:

1. The three geometric variables Xh, Y h and Al are independent of oneanother when nothing is known about either the produce sound or themotor commands.

6 - Simplification using intermediary variables35

Page 77: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

Shape From MovementPhD F. Colas (2006)

[Colas06][Colas07]

Courtesy of Max Plant Institute

36

Page 78: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

Shape From MovementPhD F. Colas (2006)

[Colas06][Colas07]

7 - Expressing psychological priors37

Page 79: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

Incompleteness(1989)

Perspectives

Probability as an

alternative to Logic

(1991)

Formalism:Bayesian Programming

(1994)

Inference:ProBT®

(1995)

IndustrialApplications:

ProBAYES(2003)

Cognitive models:BIBA, BACS

(2000)

BayesianNeuron

38

Page 80: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

Probabilistic inference by the biochemical mechanisms of phototransduction

39

Courtesy of A. Houillon, LPPA, Collège de France

Page 81: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

Probabilistic inference by the biochemical mechanisms of phototransduction

39

Activation ofPhosphodiastrase

Courtesy of A. Houillon, LPPA, Collège de France

Page 82: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

Probabilistic inference by the biochemical mechanisms of phototransduction

39

Activation ofPhosphodiastrase

Hydrolysis ofcGMP

Courtesy of A. Houillon, LPPA, Collège de France

Page 83: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

Probabilistic inference by the biochemical mechanisms of phototransduction

39

Activation ofPhosphodiastrase

Hydrolysis ofcGMP

Closure of Ca++ion channels

Courtesy of A. Houillon, LPPA, Collège de France

Page 84: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

Probabilistic inference by the biochemical mechanisms of phototransduction

39

Activation ofPhosphodiastrase

Hydrolysis ofcGMP

Closure of Ca++ion channels

Decrease of Ca++concentration

Courtesy of A. Houillon, LPPA, Collège de France

Page 85: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

Probabilistic inference by the biochemical mechanisms of phototransduction

39

Activation ofPhosphodiastrase

Hydrolysis ofcGMP

Closure of Ca++ion channels

Decrease of Ca++concentration

AMPLIFICATIONHyperpolarization of the Membrane

Courtesy of A. Houillon, LPPA, Collège de France

Page 86: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

Probabilistic inference by the biochemical mechanisms of phototransduction

39

Activation ofPhosphodiastrase

Hydrolysis ofcGMP

Closure of Ca++ion channels

Decrease of Ca++concentration

Ca++ regulatesActivation of GC

AMPLIFICATIONHyperpolarization of the Membrane

Courtesy of A. Houillon, LPPA, Collège de France

Page 87: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

Probabilistic inference by the biochemical mechanisms of phototransduction

39

Activation ofPhosphodiastrase

Hydrolysis ofcGMP

Closure of Ca++ion channels

Decrease of Ca++concentration

Ca++ regulatesActivation of GC

GC catalyses production of cGMP

AMPLIFICATIONHyperpolarization of the Membrane

Courtesy of A. Houillon, LPPA, Collège de France

Page 88: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

Probabilistic inference by the biochemical mechanisms of phototransduction

39

Activation ofPhosphodiastrase

Hydrolysis ofcGMP

Closure of Ca++ion channels

Decrease of Ca++concentration

Ca++ regulatesActivation of GC

GC catalyses production of cGMP

AMPLIFICATIONHyperpolarization of the Membrane

Courtesy of A. Houillon, LPPA, Collège de France

Page 89: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

Biochemical – Probability equivalence

40

Page 90: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

Biochemical – Probability equivalence

Biochemistry

40

Page 91: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

Biochemical – Probability equivalence

Biochemistry

40

Page 92: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

Biochemical – Probability equivalence

Biochemistry Probability

40

Page 93: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

Biochemical – Probability equivalence

Biochemistry Probability

40

Page 94: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

Biochemical – Probability equivalence

41

Page 95: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

Incompleteness(1989)

Overview

Probability as an

alternative to Logic

(1991)

Formalism:Bayesian Programming

(1994)

Inference:ProBT®

(1995)

IndustrialApplications:

ProBAYES(2003)

Cognitive models:BIBA, BACS

(2000)

42

Page 96: Bayesian Programming - Supélec · Bayesian-Programming.org Building JaynesÕ robot 1. E.T. Jaynes, Probability theory: The logic of Science, Page 9 Introducing the Robot In order

Want to know more?

[email protected]

Bayesian-Programming.org

Bayesian ProgrammingUnfinished Draft

43


Recommended