close Warning: Can't synchronize with repository "(default)" (/var/svn/tolp does not appear to be a Subversion repository.). Look in the Trac log for more information.

Opened 12 years ago

Closed 12 years ago

#1663 closed doubt (worksforme)

Tiempo muy alto al compilar serie

Reported by: lmperez@… Owned by: Víctor de Buen Remiro
Priority: high Milestone: Mantainance
Component: TimeAlgebra Version: 3.1
Severity: normal Keywords:
Cc:

Description (last modified by Víctor de Buen Remiro)

Hola Tol, cuando trato de construirme esta serie temporal, el tiempo que necesita para crearla es desorbitado, aproximadamente 20 segundos!.
Además cuando trato de hacer una estimación sea en Estimate o BSR el tiempo de estimación es absurdamente largo. ¿Podéis ayudarme?

Os dejo un ejemplo:

Date DefFirst := y2010;
Date DefLast  := y2015;

TimeSet tmsLV = C-WD(6)-WD(7);

TimeSet tmsFinDeMes.Medio      = Succ(D(1),-1,tmsLV);
TimeSet tmsFinDeMes.Sabado     = tmsFinDeMes.Medio*WD(6);
TimeSet tmsPreFinDeMes.Sabado  = Succ(tmsFinDeMes.Sabado, -1,tmsLV);

Real time = Time;
Serie serPreFinDeMes.Sabado  = CalInd(tmsPreFinDeMes.Sabado ,tmsLV);
Real CtrTime(time);

Gracias de antemano

Change History (2)

comment:1 Changed 12 years ago by Víctor de Buen Remiro

Description: modified (diff)
Status: newaccepted

comment:2 Changed 12 years ago by Víctor de Buen Remiro

Resolution: worksforme
Status: acceptedclosed
Type: defectdoubt

El problema es que estás operando con una expresión del conjunto temporal vacío.

El TimeSet tmsFinDeMes.Medio es un subconjunto de tmsLV que excluye a los sábados, por lo que TimeSet tmsFinDeMes.Sabado, que es su intersección con WD(6) es necesariamente vacía. El sucesor del vacío en cualquier cosa es el vacío por lo que TimeSet tmsPreFinDeMes.Sabado lo es también.

Las operaciones de sucesión y predecesión de fechas sobre un conjunto vacío se tornan virtualmente infinitas. Si operas sobre W que es explícitamente vacío no hay problema porque TOL lo sabe, pero TOL no es capaz de hacer el cálculo simbólico que acabo de exponer para descubrir que un conjunto temporal es vacío, y se intenta defender mediante reglas heurísticas para no caer en ciclos infinitos pero el resultado es terriblemente lento.

Note: See TracTickets for help on using tickets.