SMC Procedure
The SMOOTH statement specifies options that are related to the smoothing problem, which is to find the probability distribution of the state, conditional on all observations (see the section SMC Smoothing). If the PMCMC method is specified in the LEARN statement, the model parameters in the requested smoothing method are set to the posterior mean of the corresponding model parameters. If the LEARN statement is omitted, the parameters with initial values specified in the PARAMETERS statement are used for the smoothing problem. You can specify the following options:
-
ALGORITHM=algorithm
ALG=algorithm
-
specifies the particle filter algorithm to use in the smoothing process. You can specify the following algorithms:
- APF<(ADP)>
specifies the auxiliary particle filter (APF) algorithm. The ADP suboption specifies the fully adapted auxiliary particle filter algorithm.
- BF
specifies the bootstrap filter (BF) algorithm.
- SIR<(TH | THRESH | THRESHOLD=number)>
specifies the sequential importance resampling (SIR) algorithm. The optional TH= option specifies the threshold (a value between 0 and 1) of the resampling step in the SIR algorithm. The resampling step occurs when the effective sample size is less than the product of the threshold and the number of particles. By default, TH=0.8.
By default, ALGORITHM=SIR.
-
METHOD=FIXEDINTERVAL | FIXEDLAG<(number)>
-
specifies the type of smoothing method. You can specify the following values:
- FIXEDINTERVAL
specifies the fixed-interval smoothing method.
- FIXEDLAG<(number)>
specifies the fixed-lag smoothing method. The optional number in parentheses specifies the number of lags to use in the fixed-lag smoothing method. By default, number=25.
By default, METHOD=FIXEDLAG<(number)>.
-
NPARTICLE=number
specifies the number of particles to use for the smoothing problem. If this option is omitted, the smoothing method uses the value of the NPARTICLE= option in the PROC SMC statement.
-
OUT<(PERCENTILES=numeric-list)>=libref.data-table
OUT<(PERCENTILE=numeric-list)>=libref.data-table
OUT<(PERCENT=numeric-list)>=libref.data-table
OUT<(PERC=numeric-list)>=libref.data-table
OUT<(PCT=numeric-list)>=libref.data-table
writes the summary of the smoothing estimates to the specified output data table. The weighted average, weighted standard deviation, minimum value, first quantile, second quantile, third quantile, maximum value, and percentile points of each state variable at each time step are displayed. The optional PERCENTILES=numeric-list specifies the percentile points in the summary table of the smoothing estimates, where each value in the numeric-list must be between 0 and 100 and values are separated by commas or spaces. By default, PERCENTILES=2.5, 97.5, which yields the 2.5th and 97.5th percentile points, respectively. libref.data-table is a two-level name, where libref refers to the library, and data-table specifies the name of the output data table. For more information about this two-level name, see the DATA= option and the section Using CAS Sessions and CAS Engine Librefs.
-
OUTSIM=libref.data-table
writes the smoothing estimates to the specified output data table. The particle values with the corresponding normalized weights at each time step are displayed. libref.data-table is a two-level name, where libref refers to the library, and data-table specifies the name of the output data table. For more information about this two-level name, see the DATA= option and the section Using CAS Sessions and CAS Engine Librefs.
-
PARM=MEAN | MEDIAN
-
specifies which parameter values from the posterior distribution to use for the smoothing distribution when you also specify the LEARN statement. If the LEARN statement is omitted, this option is ignored. You can specify one of the following values:
- MEAN
constructs the smoothing distribution by using the estimated posterior means of the parameters.
- MEDIAN
constructs the smoothing distribution by using the estimated posterior medians of the parameters.
By default, PARM=MEAN.
Last updated: July 09, 2026