The organization of this SRFI Bradley Lucier (19 May 2020 00:06 UTC)
Re: The organization of this SRFI John Cowan (20 May 2020 13:18 UTC)
Re: The organization of this SRFI Bradley Lucier (08 Jun 2020 21:07 UTC)
Re: The organization of this SRFI John Cowan (09 Jun 2020 03:06 UTC)
Re: The organization of this SRFI Bradley Lucier (11 Jun 2020 21:44 UTC)
Re: The organization of this SRFI John Cowan (11 Jun 2020 23:39 UTC)

Re: The organization of this SRFI Bradley Lucier 08 Jun 2020 21:07 UTC

On 5/20/20 9:18 AM, John Cowan wrote:
>     (gweighted-sampling) [ s ] obj ..)
>
>     You probably want to choose randomly from N generators based on the
>     output of an N+1st generator that has range [0,N). Specifying
>
>     probabilities (basically the probability distribution function of a
>     discrete random variable) is too difficult in general.
>
>
> I don't understand this statement.  The idea is that if you have
> generators of bad widgets and good widgets, and you want 12% bad and 88%
> good in your output stream (IIRC this is optimal for human
> quality-control inspection), you specify (gweighted-sampling 0.12
> bad-widgets 0.88 good-widgets).  Or equivalently specify 12 and 88, or 3
> and 22, or 12/100 and 88/100.

I'd rather have a place to plug in a random generator with range [0,N)
that chooses from among N other generators.

In your example, the "choice" generator would be Bernoulli(.88), which
would choose between the "good-widgets" and "bad-widgets" generator.

I don't see much benefit in the many and various ways to specify this
generator (the "Or equivalently ..." part).

Brad