3 votos

Previsión de renovación de licencias

Recientemente me he encontrado con el siguiente problema del mundo real relacionado con la renovación de licencias de un producto de software. Sólo tengo conocimientos rudimentarios de los fundamentos en este campo y me interesa sobre todo resolver este problema, pero me encantaría aprender algo por el camino.

La entrada es el vector de licencias renovadas $(r_i)_{i=1}^n$ indexado por días y un vector de licencias que expiran para cada día $(e_i)_{i=1}^{n+k}$ . Es decir $r_i$ es el número de licencias renovadas el día $i$ y $e_i$ es el número de licencias que caducan el día $i$ . Las renovaciones dependen mucho del día de la semana. Por ejemplo, hay muchas renovaciones los lunes y domingos y pocas los jueves.

El problema es predecir o extrapolar el vector de renovaciones $(r_i)$ para $i=n+1, \ldots, k$ .

Lo que me parece interesante de este problema es el hecho de que $r_i$ no depende únicamente de $e_i$ sino también en los valores vecinos, ya que a menudo se decide renovar la licencia antes de que caduque o después. De hecho, usted sabe que, por término medio, el 95% de las personas renuevan la licencia en 60 días, en torno al día en que expira su licencia, y aún más: tiene un histograma de estas renovaciones. $(h_j)_{j=-30}^{30}$ . Si he entendido bien los datos, el valor $h_j$ representa la parte de las renovaciones que se producen por término medio $j$ días antes (o después dependiendo del signo de $j$ ) la licencia expira para $j=-30,\ldots, 30$ y los valores de $j=-30,30$ cubren las renovaciones que se produjeron más de un mes después o antes de la expiración. En particular $\sum_{j=-31}^{31} h_j = 1$ .

Q1: ¿Cuál es el mejor enfoque para este tipo de problema?

Después de pensarlo un poco, se me ocurrió lo siguiente. Sea $c_{ij}$ es la proporción de licencias que caducan el día $j$ y se renuevan el día $i$ al número total de licencias que caducan el día $j$ . Entonces $$ r_i = \sum_{j=1}^n c_{ij}e_j $$ o en forma de matriz $r = Ce$ . Además tenemos $$ h_j \approx \frac{1}{n} \sum_{i=1}^n \frac{c_{i+j,i}}{t_i}, $$ donde $t_i = \sum_{j=1}^n c_{ji}$ es el cociente entre las licencias renovadas y todas las licencias que caducan el día $j$ . Esto me da $n+60$ ecuaciones para $n^2$ variables.

Q2: ¿Es el modelo de Markov oculto el enfoque adecuado en este caso? No sé nada de ellos, así que si este enfoque es el correcto, agradecería algunos enlaces a materiales de los que pueda aprender la teoría, así como enlaces a implementaciones.

Podemos reducir el número de variables estableciendo $c_{ij} = 0$ para $|i-j| > 30$ pero eso aún nos deja con un sistema muy poco determinado. Ahora mismo estoy a punto de probar a sustituir $c_{ij}$ por $h_{i-j}t_j$ . Esto me dará $n$ ecuaciones para $n$ desconocidos. Que espero poder resolver y luego simplemente extrapolar los valores $p_i$ para $i=n+1, \ldots, k$ y estimar las renovaciones mediante $r_i = \sum_{j=-30}^{30} h_{i-j}t_je_j$ .

Actualización: Las soluciones oscilan hacia $i\to n$ .

Descargo de responsabilidad: Publicado en math.stackexchange

1voto

JornC Puntos 81

Yo lo enfocaría partiendo de ese histograma y de una tasa de renovación "media". Esto debería bastar para obtener el número previsto de renovaciones que se producirían en un día concreto (observando cuántas se esperarían de los 60 días de la ventana del histograma) con una tasa de renovación media y una estacionalidad media.

A continuación, tendría en cuenta la estacionalidad diaria, ya que parece indicar que es más probable que las renovaciones se produzcan unos días de la semana que otros.

Al final de este proceso, dispondrá de una línea de base y podrá buscar patrones en la realidad debido a descensos/aumentos graduales en la tasa de renovación, si las promociones aumentan la tasa de renovación en general o sólo aceleran los plazos, etc. Esto le dará una idea de cómo debe modelar los efectos de las promociones (y la introducción de productos de la competencia). Esto le dará una idea de cómo debe modelizar los efectos de las promociones (y la introducción de productos de la competencia).

0voto

Owen Fraser-Green Puntos 642

El número de renovaciones podría predecirse a partir del número de licencias que caducan, el historial de licencias caducadas, el número futuro de licencias caducadas, el día de la semana, el día del mes, los efectos de las vacaciones y, por supuesto, los cambios de nivel y las tendencias que esperan ser descubiertas. Además, es posible que la varianza del error no sea constante, lo que puede remediarse incorporando una estructura ARIMA que refleje el impacto de renovaciones anteriores, cambios en los parámetros o cambios deterministas en el proceso de error. También se podrían incorporar al modelo efectos de promoción. En general, esto se denomina función de transferencia y pertenece a la clase de mínimos cuadrados generalizados. Si lo desea, puede publicar sus datos o enviármelos a dave@autobox.com y yo los publicaré y realizaré un análisis que podría incluir algunas de las estructuras aquí mencionadas. Datos como estos son comunes en la industria del cable.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X