2017-07-07 3 views
0

Je construis un modèle basé sur l'agent pour l'utilisation du produit. J'essaye de développer une fonction pour décider si l'utilisateur utilise le produit à un moment donné, tout en incorporant le caractère aléatoire. Donc, disons que nous savons que l'utilisateur passe un total de 1 heure par jour en utilisant le produit, et nous connaissons la distribution moyenne de ce temps (par exemple, le plus utilisé à 18h-20h). Comment puis-je générer un ensemble de temps d'utilisation/non utilisation (c'est-à-dire, pendant chaque bloc de 10 minutes, l'utilisateur est actif ou non) tout en s'assurant qu'à la fin de la journée le temps total total est d'une heure.Distribuer les blocs de temps actifs de l'utilisateur soumis à la contrainte totale

Dans la plupart des cas, je voudrais simplement faire fonctionner le distributeur sans se soucier du total, puis à la fin normaliser en le rendant proportionnel à la durée totale de sorte que le total était de 1 heure. Cependant, je ne peux pas faire cela parce que les blocs de temps doivent être de 10 minutes. Je pense que c'est une question différente parce que je ne suis pas en train de calculer des plages de temps, je calcule des booléens à associer à différents blocs de temps de 10 minutes (par exemple, l'utilisateur était/n'était pas actif pendant un bloc donné).

Existe-t-il un moyen standard de le faire?

Répondre

0

J'ai fait d'autres réflexions et j'ai compris, si quelqu'un d'autre le voit.

L'approche à adopter est la suivante: Vous connaissez le nombre autorisé n de blocs de temps de 10 minutes pour un agent donné.

Iterate n fois, et à chaque itération, sélectionnez un bloc de temps hors du jour en fonction de votre fonction de distribution d'activité.

Le point principal consiste à parcourir le nombre de blocs de temps que vous souhaitez placer, et non pas toute la journée.