Re: [R] generate random numbers subject to constraints

From: Ted Harding <>
Date: Wed, 26 Mar 2008 19:52:19 +0000 (GMT)

On 26-Mar-08 20:13:50, Robert A LaBudde wrote:

> At 01:13 PM 3/26/2008, Ala' Jaouni wrote:

>>I am trying to generate a set of random numbers that fulfill
>>the following constraints:
>>X1 + X2 + X3 + X4 = 1
>>aX1 + bX2 + cX3 + dX4 = n
>>where a, b, c, d, and n are known.
>>Any function to do this?
> 1. Generate random variates for X1, X2, based upon whatever 
> unspecified distribution you wish.
> 2. Solve the two equations for X3 and X4.

The trouble is that the original problem is not well specified. Your suggestion, Robert, gives a solution to one version of the problem -- enabling Ala' Jaouni to say "I have generated 4 random numbers X1,X2,X3,X4 such that X1 and X2 have specified distributions, and X1,X2,X3,X4 satisfy the two equations ... ".

However, suppose the real problem was: let X2,X2,X3,X4 have independent distributions F1,F2,F3,F4. Now sample X1,X2,X3,X4 conditional on the two equations (i.e. from the coditional density). That is a different problem.

As a slightly simpler example, suppose we have just X1,X2,X3 and they are independently uniform on (0,1). Now sample from the conditional distribution, conditional on X1 + X2 + X3 = 1.

The result is a random point uniformly distributed on the planar triangle whose vertices are at (1,0,0),(0,1,0),(0,0,1).

Then none of X1,X2,X3 is uniformly distributed (in fact the marginal density of each is 2*(1-x)).

However, your solution would work from either point of view if the distributions were Normal.

If X1,X2,X3,X4 were neither Normally nor uniformly distributed, then finding or simulating the conditional distribution would in general be difficult.

Ala' Jaouni needs to tell us whether what he precisely wants is as you stated the problem, Robert, or whether he wants a conditional distribution for given distributions if X1,X2,X3,X4, or whether he wants something else.

Best wishes to all,

E-Mail: (Ted Harding) <> Fax-to-email: +44 (0)870 094 0861
Date: 26-Mar-08                                       Time: 19:52:16
------------------------------ XFMail ------------------------------

______________________________________________ mailing list PLEASE do read the posting guide and provide commented, minimal, self-contained, reproducible code. Received on Wed 26 Mar 2008 - 23:18:03 GMT

Archive maintained by Robert King, hosted by the discipline of statistics at the University of Newcastle, Australia.
Archive generated by hypermail 2.2.0, at Wed 26 Mar 2008 - 23:30:24 GMT.

Mailing list information is available at Please read the posting guide before posting to the list.

list of date sections of archive