Generate random numbers with a constraint

4 views (last 30 days)
I want to generate several numbers that meet a constraint. The constraint may be kind of complex, nonlinearity for example.
It occurs to me that there are also constraint input in the optimization toolbox. In some intelligent algorithm like ga, i guess the toolbox can generate input parameters according to the constraint. I want to know how it works and implement this function in my own script.
  3 Comments
Xiaobo Dong
Xiaobo Dong on 11 Oct 2022
It doesn't matter what the constraint is, I just want to know how to solve this kind of problem.
Indeed, there are some tricks for some certain simple constraints, which are not my expectations.
Rik
Rik on 11 Oct 2022
It does matter what the contstraints are if you want an efficient implementation.

Sign in to comment.

Accepted Answer

Jiri Hajek
Jiri Hajek on 11 Oct 2022
A general answer to your general question is inverse transform sampling, which makes it possible to generate sample random data from any probability distribution.
  6 Comments
Xiaobo Dong
Xiaobo Dong on 11 Oct 2022
OK, thanks. But I think this method is not general. What if there are other inequalities in the problem?
Jiri Hajek
Jiri Hajek on 11 Oct 2022
Edited: Jiri Hajek on 11 Oct 2022
Well, it seems that if you still have some concerns, than your problem statement was probably not complete... There's really no problem to e.g. generate random numbers that are integer and positive or e.g. random numbers constrained by a nonlinear inequality (like coodrinates from an area constrained by some curve). Here I agree with Rik that you can get an answer only to a properly defined question.

Sign in to comment.

More Answers (0)

Products

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!