diff --git a/R/utils_functions.R b/R/utils_functions.R
index 9f590334b5b972b853b3cee9da3104697463707e..8d7d3177deef026074aeb691efcd562d36712d14 100644
--- a/R/utils_functions.R
+++ b/R/utils_functions.R
@@ -616,9 +616,9 @@ KBO_EM<-function(param,kappaOpt,Y,Tps,N,dix){
   C= sum((p%*%(matrice_C*Z))[1:(N-1)])
   Yb= sum((p%*%(matrice_Yb*Z))[1:(N-1)])
   
-  newm0= (C*Yb-B*Ya)/(C^2-A*B)
-  newmm= (C*Ya-A*Yb)/(C^2-A*B)
-  ppnew=sum(p%*%Z)/N
+  newm0=(C*Yb-B*Ya)/(C^2-A*B)
+  newmm=(C*Ya-A*Yb)/(C^2-A*B)
+  ppnew=max(sum(p%*%Z)/N , 0.5)
   
   # Outputs
   resultat=list("m0"=newm0,