8 Funcions de predicció

Totes les funcions llistades aquí són admeses a:

Algunes notes generals dels paràmetres de la funció:

  • Els paràmetres de funció es separen amb comes
  • Els paràmetres de funció opcionals (o parts de paràmetres) s'indiquen amb < >
  • Els paràmetres específics es descriuen amb cada funció
  • Els paràmetres /host/key i (sec|#num)<:time shift> mai han d'anar entre cometes
Paràmetres comuns
  • /host/key és un paràmetre comú obligatori per les funcions sobre l'històric de l'element d'equip
  • (sec|#num)<:time shift> és un segon paràmetre habitual per funcions referents a l'històric de l'element d'equip, on:
    • sec - període d'avaluació màxim en segons (es poden emprar els sufixes), o
    • #num - període d'avaluació màxim en nombre de valors recollits (si van precedits per el símbol de la graella)
    • canvi horari (facultatiu) permet canviar el punt d'avaluació en el temps. Veieu més detalls sobre la especificació del canvi horari.

Funcions de predicció

FUNCIÓ
Descripció Paràmetres específics de la funció Comentaris
forecast (/host/key,(sec|#num)<:time shift>,time,<fit>,<mode>)
valor futur, max, min, delta o mitjana de l'element. Veieu paràmetres comuns.

time - llindar de previsió en segons (es poden emprar sufixes de temps); s'admeten valors negatius

fit (facultatiu ; ha d'ésser entre cometes dobles) – funció emprada per ajustar les dades històriques

'fitsadmesos:
*linear* - funció liniar
*polynomialN* - polinomi de grau N (1 <= N <= 6)
*exponential* - funció exponencial
*logarithmic* - funció logarítmica
*power* - funció potencial<br >
Veieu que:
*linear* és el valor per defecte, *polynomial1* és equivalent a *linear*

**mode** (facultatiu; ha d'anar entre cometes dobles) - sortida demanada<br >
modesadmesos:
*value* - valor (per defecte)
*max* - màxim
*min* - mínim
*delta* - *max*-*min*
*avg* - mitjana

Veieu que:
*value* estima el valor de l'element al moment
now+time
*max*, *min*, *delta* i *avg* estudien l'estimació del valor de l'element a l'interval entre
nowinow+time`
Tipus de valors admesos: float, int

Si el valor a enviar és superior a 1,7976931348623157E+308 o més baix de -1,7976931348623157E+308, el valor retornat es redueix a 1,79769313486231 57E+308 o -1.7976931348623157E+308.

Només no s'admetrà si s'empra malament a l'expressió (tipus d'element erroni, paràmetres no vàlids); cas contrari, retorna -1 en cas d'errors.

Exemples:
=> forecast(/host/key,#10,1h) → valor de l'element de previsió en un moment sota la base dels deus darrers valors
=> forecast(/host/key,1h,30m) → valor previst de l'element en 30 minuts segons la base de dades de la darrera hora
=> forecast(/host/key, 1h:now-1d,12h) → valor previst de l'element les properes 12 hores segons la base d'un dia i una hora
=> forecast(/host/key,**1h* *,10m,"exponential") → valor de l'element de previsió en 10 minuts en funció de les dades de la darrera hora i de la funció exponencial
=> forecast(/host/key,1h, 2h,"polynomial3","max") → preveu el valor màxim que l'element pot assolir durant les properes dues hores segons la base de dades de la darrera hora i del polinomi cúbic (tercer grau)
=> forecast (/host/key,#2,-20m) → estimar el valor de l'element fa 20 minuts basant-nos en els dos darrers valors (aquest podria ésser més precís que emprant last(), sobretot si l'element no s'actualitza sovint; diguem un cop cada hora)

Veieu també la informació suplementària a les funcions de triggers predictius .
timeleft (/host/key,(sec|#num)<:time shift>,threshold,<fit>)
En segons, temps necessari per tal que un element assoleixi un llindar específic. Veieu els paràmetres comuns.

threshold - vallor a assolir (es poden emprar els sufixes d'unitat)

fit (facultatiu ; ha d'ésser entre cometes dobles) – veieu forecast()
Tipus de valor admesos: float, int

Si el valor a retornar és superior a 1,7976931348623157E+308, el valor retornat es reduirà a 1,7976931348623157E+308.

Retorna 1,7976931348623157E+308 si no es pot assolir el llindar.

No s'admet només en cas d'ús abusiu a l'expressió (tipus d'element incorrecte, paràmetres no vàlids); sinó, retorna -1 en cas d'error.

Exemples:
=> timeleft(/host/key,#10 ,0) → temps fins que el valor de l'element assoleix zero; en base als 10 darrers valors
=> timeleft(/host/key,1h,100) → temps fins que el valor de l'element arriba a 100; segons la base de dades de la darrera hora
=> timeleft(/host/key,1h:now-1d,100) → temps fins que el valor de l'element arriba a 100, en base a un dia i una hora
=> timeleft(/host/key,1h,200,"polynomial2") → temps fins que el valor arriba a 200, segons la base de dades de la darrera hora i suposant que l'element es comporta com un polinomi quadrat (segon grau)
Veieu també informació complementària sobre les funcions de triggers predictius.