我有一套X项目,例如{鼓风机,割草机,炉灶},每个项目都有一定的百分比,应从整体设置中选择{blower = 25%,割草机= 25%,炉灶= 75 %}以及这些项目应遵循的特定分布(鼓风机应在选择开始时选择更多,并在结束时更多地加热)。我们给出了一些要被整体选择的对象(即100)以及执行此操作的总时间(例如100秒)。
我正在考虑使用轮盘赌算法,其中车轮上的重量受到当前分布的影响,作为经过时间(和允许的持续时间)的函数,因此可以使用简单的函数来确定权重。对于这样的问题,有没有人能够意识到的常见方法?
目前我已经使用x ^ 2(对权重进行了正确的归一化)等函数在java中编写了与此类似的东西,以确保发生良好的分布。欢迎提出其他建议或惯例: - )
答案 0 :(得分:0)
我的问题描述并不完全清楚,但我会尽量回答我的理解。首先,您可以通过执行以下操作从加权分布中选择随机项:
通过权重按降序排列对象有助于提高操作的速度。
这只是为了找到我们从当前分布中选择的对象。听起来你的发行版随着时间的推移而变化,所以你只需要改变随时间选择的可能对象列表。