Ma question:Naissance Code mort
à un institut de mathématiques expérimentales il y a un ordinateur qui aide à résoudre les problèmes.
Les problèmes arrivent à à l'ordinateur lors d'un processus poisson avec intensité "Landa" par heure.
Le temps de résolution de chaque problème peut être vu comme une distribution exponentielle avec le paramètre "mu".
Dans notre monde, nous avons quatre états différents. S = (0,1,2,3)
Etat 0 = 0 problèmes sont arrivés à l'ordinateur
Etat 1 = l'ordinateur est la résolution 1 question
Etat 2 = l'ordinateur est la résolution 1 question + 1 en file d'attente.
État 3 = l'ordinateur résout 1 question + 2 en file d'attente.
Si une question arrive lorsque nous sommes dans l'état 3, l'expéditeur reçoit un message d'erreur et réessaie plus tard. L'institution a décidé que maximum 5% des expéditeurs devraient recevoir ce message d'erreur.
Pour décider qui devrait avoir accès à l'ordinateur, nous sommes 3 propositions différentes.
- Seuls les professeurs sont alowed à envoyer vos questions (Landa = 2, Mu = 10)
- Les professeurs et les étudiants sont alowed d'envoyer des questions (Landa = 6, Mu = 10)
- Toute personne est alowed à envoyer des questions (Landa = 10, Mu = 10)
Nous devrions enquêter sur les 3 propositions qui ne remplissent pas l'ordinateur plus de 5% du temps.
J'ai deux choses que je dois aider à
Première chose: Pour résoudre la question m'a donné cette structure de code (le code sous). Ce que j'ai besoin d'aide est si quelqu'un peut brièvement m'expliquer le but du code ci-dessous où j'ai écrit "#?".
Donc, ce dont j'ai vraiment besoin d'aide, c'est d'expliquer certaines parties du code. Seconde chose: Dans deux endroits, j'ai écrit "...", là j'ai besoin d'aide pour remplir du code.
bd_process <- function(lambda, mu, initial_state = 0, steps = 100) {
time_now <- 0
state_now <- initial_state
time <- 0
state <- initial_state
for (i in 1:steps) {
if (state_now == 3) {
lambda_now <- 0
} else {
lambda_now <- lambda
}
if (state_now == 0) {
mu_now <- 0
} else {
mu_now <- mu
}
#?
time_to_transition <- ...
#?
if (...) {
state_now <- state_now - 1
} else {
state_now <- state_now + 1
}
#?
time_now <- time_now + time_to_transition
#?
time <- c(time, time_now)
#?
state <- c(state, state_now) #WHAT DOE THIS VECTOR CONSIST OF?
}
list(time = time, state = state)
}
Whoa, c'est toute la question. Pouvez-vous s'il vous plaît réduire à un [mcve] pour faciliter la réponse? – Stedy
Vous semblez avoir copié/collé une déclaration de problème. Comprenez-vous le problème? Comprenez-vous l'objectif de la fonction 'bd_process'? A la fin, il renvoie 'tid' et' state', mais vous avez un point d'interrogation sur la mise à jour de 'state' et vous écrivez" '#WHAT DOE CE VECTEUR CONSISTE? '". Ne pas comprendre le retour me fait penser que vous ne comprenez pas l'objectif de la fonction – Gregor
Peut-être pourriez-vous également expliquer ce que vous savez. Par exemple, vous avez un point d'interrogation sur la ligne 'time_now <- time_now + time_to_transition'. C'est un ajout simple. Il ajoute la valeur actuelle de 'time_now' à la valeur actuelle de' time_to_transition' et appelle le résultat 'time_now', d'où la mise à jour de la variable' time_now'. Est-ce le niveau d'explication dont vous avez besoin? – Gregor