++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

----------------------- CDM NEWS -----------------------------

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

CDM package
                        +-+-+-+
                        |C|D|M|
                        +-+-+-+

        A. Robitzsch [aut, cre], T. Kiefer [aut], 
         A. C. George [aut], & A. Uenlue [aut]

mailto:
robitzsch@ipn.uni-kiel.de

For reporting a bug, please always provide a reproducible 
R script and (if necessary) a corresponding dataset.

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++




--------------------------------------------------------------
VERSIONS CDM 8.2  |  2022-08-25  |  Last: CDM 8.2-6
--------------------------------------------------------------

NOTE  * fixed issues in CRAN checks due to the recent use 
        of KaTeX

DATA  * included/modified datasets: ---
EXAMP * included/modified examples: ---

--------------------------------------------------------------
VERSIONS CDM 8.1  |  2022-05-12  |  Last: CDM 8.1-12
--------------------------------------------------------------

NOTE  * released a new version to CRAN because the CDM version
        8.0-5 was removed from CRAN

DATA  * included/modified datasets: ---
EXAMP * included/modified examples: ---

--------------------------------------------------------------
VERSIONS CDM 8.0  |  2022-05-01  |  Last: CDM 8.0-5
--------------------------------------------------------------

NOTE  * two minor changes in manual pages in function tests
        to satisfy CRAN requirements

DATA  * included/modified datasets: ---
EXAMP * included/modified examples: ---

--------------------------------------------------------------
VERSIONS CDM 7.6  |  2022-04-11  |  Last: CDM 7.6-11
--------------------------------------------------------------

FIXED * fixed numerical issues in modelfit.cor.din()
        (thanks to @yjchen, Github issue #6)
NOTE  * included argument 'attr.prob.fixed' in gdina()
        (thanks to a discussion with Wenchao Ma)

DATA  * included/modified datasets: ---
EXAMP * included/modified examples: ---

--------------------------------------------------------------
VERSIONS CDM 7.5  |  2020-03-10  |  Last: CDM 7.5-15
--------------------------------------------------------------

FIXED * corrected a bug that stopped gdina.dif()
        (thanks to Sookhyun Park)
NOTE  * included argument 'rule' in ideal.response.pattern().
        Ideal response patterns can now be also computed for
        the DINO model (in addition to the DINA model).
        (suggested by Emine Yavuz)
       
DATA  * included/modified datasets: ---
EXAMP * included/modified examples: ideal.response.pattern(1)

--------------------------------------------------------------
VERSIONS CDM 7.4  |  2019-09-04  |  Last: CDM 7.4-19
--------------------------------------------------------------

NOTE  * included item content for dataset data.Student in the
        ?data.Students (requested by Ren Liu)
NOTE  * corrected ?din (thanks @ifengji,
        https://github.com/alexanderrobitzsch/CDM/pull/2)
NOTE  * included NAs for non-defined entries for MD statistic
        in IRT.RMSD()
NOTE  * removed redundant code in gdina() function
        (thanks to Jeremy Zheng; issue #4)

DATA  * included/modified datasets: ---
EXAMP * included/modified examples: ---

--------------------------------------------------------------
VERSIONS CDM 7.3  |  2019-03-18  |  Last: CDM 7.3-17
--------------------------------------------------------------

NOTE  * improved estimation with monotonicity constraints
        (thanks to discussion with Xin Xu)
NOTE  * changed normalization of penalty terms in regularized 
        estimation in gdina() and slca()
NOTE  * fixed numerical instabilities for extreme probabilities
        in reglca() (thanks to Boris Girnat)
NOTE  * exported utility function cdm_attach_internal_function()
ADDED * added S3 method plot_item_mastery() for plotting item 
        response probabilities for non-masters and masters

DATA  * included/modified datasets: ---
EXAMP * included/modified examples: plot_item_mastery (1)

--------------------------------------------------------------
VERSIONS CDM 7.2  |  2019-02-08  |  Last: CDM 7.2-30
--------------------------------------------------------------

NOTE  * changes in estimation algorithm in reglca() 
NOTE  * changes in estimation algorithm for regularized 
        estimation in gdina() and slca()
ADDED * included argument 'regular_weights' for adaptive 
        regularized estimation in gdina()
NOTE  * added simulation function in data.dtmr  
FIXED * fixed a bug in slca() in estimation problems with
        equality constraints
NOTE  * included data check routine for non-defined categories
        in Q-matrix in mcdina() (suggested by Marcus Kubsch)
FIXED * fixed a bug in cdm.est.class.accuracy() when skill names
        were missing in Q.matrix (reported by Sandip Sinharay)
FIXED * prevent negatively estimated probabilities in gdina()
        function when PEM acceleration is used
        (thanks to Yi-Jhen Wu)
ADDED * added S3 method IRT.marginal_posterior() for computing
        marginal posterior distributions 
        (requested by Elif Oezlem Ardic)
ADDED * included checks of identifiability conditions of the
        DINA model according Gu and Xu in din_identifiability()

DATA  * included/modified datasets: data.dtmr, data.cdm09,
        data.cdm10
EXAMP * included/modified examples: reglca (1), gdina (13),
        data.dtmr (2), IRT.marginal_posterior (1),
        din_identifiability (1)

--------------------------------------------------------------
VERSIONS CDM 7.1  |  2018-12-13  |  Last: CDM 7.1-20
--------------------------------------------------------------

NOTE  * included function numerical_gradient()
NOTE  * changed computation of numerical gradient to symmetric
        difference quotient in numerical_Hessian()

DATA  * included/modified datasets: ---
EXAMP * included/modified examples: ---

--------------------------------------------------------------
VERSIONS CDM 7.0  |  2018-11-06  |  Last: CDM 7.0-12
--------------------------------------------------------------

NOTE  * included argument 'prob_min' in reglca() to prevent
        negatively estimated probabilities or numerical
        instabilities (thanks to Boris Girnat)
NOTE  * included utility function cat_paste()

DATA  * included/modified datasets: ---
EXAMP * included/modified examples: ---

--------------------------------------------------------------
VERSIONS CDM 6.6  |  2018-09-30  |  Last: CDM 6.6-5
--------------------------------------------------------------

NOTE  * changes in estimation algorithm in regularized latent 
        class analysis function reglca() to stabilize estimation

DATA  * included/modified datasets: ---
EXAMP * included/modified examples: ---

--------------------------------------------------------------
VERSIONS CDM 6.5  |  2018-08-16  |  Last: CDM 6.5-12
--------------------------------------------------------------

NOTE  * changed metric of regularization parameter lambda in
        gdina() which seems to improve estimation stability
NOTE  * exported utility function cdm_parameter_regularization(),
        cdm_calc_information_criteria(), cdm_penalty_values(),
        cdm_print_summary_information_criteria()
FIXED * corrected output with missing entries in case of groups
        without observations in IRT.RMSD()
        (thanks to Laura Helbling)

DATA  * included/modified datasets: ---
EXAMP * included/modified examples: ---

--------------------------------------------------------------
VERSIONS CDM 6.4  |  2018-07-06  |  Last: CDM 6.4-23
--------------------------------------------------------------

NOTE  * included argument 'optimizer' in gdina() which allows
        to use the stats::optim() function for optimization in
        M-step (default is optimizer='optim'). 
        'use_optim=TRUE' is always used for estimation
        of the RRUM model. This change was motivated by an
        application of Hamdollah Ravand.
NOTE  * included utility function cdm_matrixstring()
FIXED * allowed items with only zero Q-matrix entries in
        mcdina() anf fixed a bug in reduced skill space 
        estimation in mcdina() (thanks to Jeannot Gersner)
NOTE  * exported core computation function IRT_RMSD_calc_rmsd()
        for RMSD statistic

DATA  * included/modified datasets: ---
EXAMP * included/modified examples: gdina (13)

--------------------------------------------------------------
VERSIONS CDM 6.3  |  2018-05-28  |  Last: CDM 6.3-45
--------------------------------------------------------------

NOTE  * renamed thresholding penalty functions 
NOTE  * deleted seed argument from cdm.est.class.accuracy()
        function
ADDED * included general simulation function sim_model()
ADDED * included function IRT.classify() for computing
        individual classifications
ADDED * included function eval_likelihood() for evaluating
        likelihood (and posterior) and prep_data_long_format()
        for saving item response matrix in long format
NOTE  * included corrected statistics for classification
        accuracy and consistency in cdm.est.class.accuracy()

DATA  * included/modified datasets: ---
EXAMP * included/modified examples: sim_model (1),
        IRT.classify (1), eval_likelihood (1)

--------------------------------------------------------------
VERSIONS CDM 6.2  |  2018-05-02  |  Last: CDM 6.2-91
--------------------------------------------------------------

FIXED * fixed a bug in IRT.RMSD() function for models fitted in
        the CDM package
NOTE  * speeded parts of the IRT.modelfit() function
ADDED * included item discrimination indices in discrim.index()
        function (Henson, DiBello & Stout, 2018)
NOTE  * included argument 'IDI_diff' in the din.validate.qmatrix()
        function. Speeded this function due to referring most
        of the computations to Rcpp. 
ADDED * included cognitive diagnosis model for simultaneous 
        identification for skills and misconceptions (Kuo et al.,
        2018, APM). The model is included in the gdina() function
        using the argument rule='SISM'.
      
DATA  * included/modified datasets: data.timss07.G4.py,
        data.timss07.G4.Qdomains, data.timss11.G4.sa, data.cdm05,
        data.cdm06, data.cdm07, data.pisa00R.ct, data.pisa00R.cc,
        data.cdm08
EXAMP * included/modified examples: IRT.RMSD (3),
        data.timss07.G4.lee (2), data.cdm (2), data.pisa00R (1),
        gdina (12)

--------------------------------------------------------------
VERSIONS CDM 6.1  |  2018-02-26  |  Last: CDM 6.1-10
--------------------------------------------------------------

FIXED * fixed bug of computation of MD statistic in IRT.RMSD()
        which was recently broken
NOTE  * included item index in title of figures in 
        IRT.irfprobPlot()

DATA  * included/modified datasets: ---
EXAMP * included/modified examples: IRT.RMSD (2)

--------------------------------------------------------------
VERSIONS CDM 6.0  |  2017-11-20  |  Last: CDM 6.0-101
--------------------------------------------------------------

ADDED * included regularized maximum likelihood in slca()
ADDED * included option for positivity constraints of Xlambda
        parameter in slca()
ADDED * included P-EM acceleration method in slca(), gdm(),
        and gdina()
NOTE  * avoided inversion of singular covariance matrices in
        gdina() by using MASS::ginv()
NOTE  * included several sub-datasets and different Q-matrices
        of the fraction subtraction dataset (see 'data.fraction')
NOTE  * slight changes in algorithm of higher-order GDINA model
NOTE  * included argument 'diag_only' in numerical_Hessian()
NOTE  * exported utility functions cdm_fa1(), cdm_print_summary_call(),
        cdm_print_summary_computation_time(), threshold operators
        cdm_XXX_threshold() for diverse 'XXX', cdm_fit_normal(),
        cdm_parameter_regularization(), cdm_penalty_values(),
        CDM_rbind_fill(), cdm_matrix1(), cdm_matrix2()
NOTE  * included derivative function numerical_Hessian_partial()
ADDED * added option for monotonicity constraints in gdina()
ADDED * added regularization methods in gdina(). Implemented are
        the penalties SCAD, lasso, ridge, SCAD-L2, truncated L1, MCP
        (Xu & Shang, 2017, JASA) 
NOTE  * included argument 'freq_weights' in gdina() to disable the
        usage of frequency weights
ADDED * included prior distributions for item parameters in 
        gdina() function
ADDED * added regularized latent class estimation (reglca();
        Chen et al., 2015, JASA; Chen et al., 2017, Psychometrika)
NOTE  * extended option for skill space reduction in gdina() to
        multiple group analysis
NOTE  * enabled 'delta.designmatrix' argument in gdm() function 
        which was previously ignored
NOTE  * disbaled PEM acceleration for HOGDINA models (not yet 
        implemented, thanks to Hamdollah Ravand)

DATA  * included/modified datasets: data.fraction3, 
        data.fraction4, data.fraction5
EXAMP * included/modified examples: gdina (1.9, 1.10, 1.11),
        slca (6), reglca (1)

--------------------------------------------------------------
VERSIONS CDM 5.9  |  2017-10-06  |  Last: CDM 5.9-27
--------------------------------------------------------------

FIXED * fixed a bug in 'gdina' function in argument 'invariance'
        if a vector of item names is used
        (thanks to Hamdollah Ravand) 
FIXED * fixed the broken function 'gdina.dif'
        (thanks again to Hamdollah Ravand)
ADDED * added EM acceleration method P-EM in function 'slca' by 
        argument 'PEM'
NOTE  * included P-EM utility functions 'cdm_pen_XXX' and
        'cdm_print_summary_data_frame'

DATA  * included/modified datasets: ---
EXAMP * included/modified examples: gdina (5.5)

--------------------------------------------------------------
VERSIONS CDM 5.8  |  2017-08-07  |  Last: CDM 5.8-9
--------------------------------------------------------------

NOTE  * fixed a bug in 'equivalent.dina' and included an 
        additional example (thanks to Sedat San)
NOTE  * moved lattice and psych packages from 'Imports' to 
        'Suggests'. Removed MASS and plyr packages from 
        'Imports'.
NOTE  * imported utility functions 'CDM_require_namespace'
        and 'CDM_rmvnorm'.
FIXED * fixed a bug in 'gdina' for Q-matrices with only one
        skill (thanks to Matthew Madison)

DATA  * included/modified datasets: ---
EXAMP * included/modified examples: equivalent.dina (3)

--------------------------------------------------------------
VERSIONS CDM 5.7  |  2017-06-24  |  Last: CDM 5.7-16
--------------------------------------------------------------

ADDED * included S3 method 'IRT.frequencies' for calculation 
        of observed and expected frequencies of univariate and 
        bivariate distributions (suggested by Rudolf Debelak)

DATA  * included/modified datasets: ---
EXAMP * included/modified examples: IRT.frequencies (1)

--------------------------------------------------------------
VERSIONS CDM 5.6  |  2017-06-17  |  Last: CDM 5.6-16
--------------------------------------------------------------

NOTE  * internal restructure of 'gdina' and 'gdm' functions

DATA  * included/modified datasets: ---
EXAMP * included/modified examples: ---

--------------------------------------------------------------
VERSIONS CDM 5.5  |  2017-04-11  |  Last: CDM 5.5-21
--------------------------------------------------------------

NOTE  * corrected a wrong specification in the Rd manual
        of 'skillspace.hierarchy' (Example 2; thanks to
        Peida Zhan) 
FIXED * corrected calculations of MD and MAD statistics in 
        'IRT.RMSD'
FIXED * fixed a bug in computation of 'itemfit.sx2' in case of
        cells with frequencies of zero (thanks to Carmen Koehler)

DATA  * included/modified datasets: ---
EXAMP * included/modified examples: skillspace.hierarchy (2)

--------------------------------------------------------------
CDM 5.4 (2017-02-08)   --  CRAN CDM 5.4-0
--------------------------------------------------------------

FIXED  * fixed warnings in calculation of standard errors in
         'gdina' and 'gdina.wald'
         (thanks to Andres Alberto Burga Leon)

DATA  * included/modified datasets: ---
EXAMP * included/modified examples: ---

--------------------------------------------------------------
CDM 5.3 (2017-01-11)   --  CRAN CDM 5.3-0
--------------------------------------------------------------

ADDED * included function CDM::IRT.RMSD which computed group-wise
        item fit. The RMSD item fit statistic was denoted as 
        RMSEA in previous publications and is internally computed 
        by the CDM::itemfit.rmsea function in the CDM package.
ADDED * included chi square statistic and MAD statistic (mean 
        absolute deviation) of item fit in CDM::IRT.RMSD
NOTE  * cleaned code in function 'WaldTest' a bit
        (thanks to suggestions of Michael Chirico)
NOTE  * added links to recently released GDINA package in R. 
        Included Example 1d for fitting a GDINA model with 
        GDINA::GDINA.

DATA  * included/modified datasets: ---
EXAMP * included/modified examples: IRT.RMSD (1), gdina (1d)

--------------------------------------------------------------
CDM 5.2 (2016-10-14)   --  CRAN CDM 5.2-1
--------------------------------------------------------------

NOTE  * extended 'item_by_group' function which can now handle
        partial set of group-specific items
ADDED * included option for a subset of invariant items in 
        multiple group estimation of GDINA model in 'gdina'
        (requested by Hamid Bahrami)
FIXED * fixed a bug in setting boundaries for guessing and slipping 
        parameters in 'din' (thanks to Jill-Jen Vie)
NOTE  * reference to new Journal of Statistical Software George et al.
        article in the CITATION file and the CDM manual

DATA  * included/modified datasets: ---
EXAMP * included/modified examples: item_by_group (1), 
        gdina (5)

--------------------------------------------------------------
CDM 5.1 (2016-08-29)   --  CRAN CDM 5.1-0
--------------------------------------------------------------

FIXED  * changed the method of standard error calculation in
         'gdina' function. It seems that previous CDM version produced
         overestimated standard errors (thanks to Xue-Lan Qiu). 
         The improved calculation is now the default specified as the 
         argument 'se_version=1'. The behavior of older CDM versions can 
         be obtained with 'se_version=0'.

DATA  * included/modified datasets: ---
EXAMP * included/modified examples: ---

--------------------------------------------------------------
CDM 5.0  (2016-07-11)   --  CRAN CDM 5.0-0
--------------------------------------------------------------

NOTE  * changed the way of calculating numerical derivatives in
        'numerical_Hessian'
NOTE  * included utility function 'abs_approx' for a differentiable
        function approximation (and its derivative 'abs_approx_D1')
        of absolute value function
NOTE  * added argument 'append' in function 'osink'
NOTE  * included a utility function 'summary_sink' which sinks 
        summary output of a method into a file
NOTE  * included utility function 'deltaMethod' for nonlinear
        transformations of parameters
NOTE  * included utility function 'item_by_group' which extends
        a dataset of item responses and a grouping variable to an
        extended dataset of group-specific item responses
ADDED * added sequential GDINA model for polytomous item responses
        (Ma & de la Torre, 2016, BJMSP) in 'gdina' function.
NOTE  * included argument 'invariance' in 'gdina' which allows
        specification of non-invariant item parameters across
        multiple groups (see ?gdina, Example 5)
NOTE  * changed number of M-steps in 'slca' in default to 10 
        iterations (msteps=10)
      
DATA  * included/modified datasets: data.cdm04
EXAMP * included/modified examples: abs_approx (1), 
        summary_sink (1), deltaMethod (1), item_by_group (1),
        gdina (5,11)

--------------------------------------------------------------
CDM 4.991 (2016-05-31)   --  CRAN CDM 4.991-1
--------------------------------------------------------------

NOTE  * changed argument structure of 'numerical_hessian'
NOTE  * included maximum likelihood estimation method for
        GDINA models (method='ML') which seems to be more stable
        when method='ULS' (or 'WLS') has a bad convergence
        behavior. Now, the GDINA function switches to ML
        estimation if the RRUM model is used 
        (thanks to a correspondence with Thomas Eckes).
NOTE  * added an example of fitting (data.cdm, Example 1) the 
        reduced RUM model in the CDM package (see the recent
        Chiu et al., IJT paper)
NOTE  * changed default value of 'max.increment' argument in
        'gdina' function to .3
FIXED * fixed a bug in 'gdina.dif' (thanks to Sinem Senfarah)

DATA  * included/modified datasets: data.cdm03
EXAMP * included/modified examples: data.cdm (1)

--------------------------------------------------------------
CDM 4.8 (2016-03-10)   --  CRAN CDM 4.8-0
--------------------------------------------------------------

FIXED * fixed a bug in 'itemfit.sx2' for fitted objects in TAM
NOTE  * slightly changed output of 'print' methods
NOTE  * changed argument 'rdigits' to 'digits' in 'summary'
        method if necessary
NOTE  * included utility functions 'osink' and 'csink' for 
        writing output of 'summary' into a file
NOTE  * allowed argument 'file' in 'summary' method for objects 
        of class 'gdina', 'gdm', 'mcdina' and 'slca'
ADDED * included function 'numerical_Hessian' for a numerical
        evaluation of the Hessian matrix
        
DATA  * included/modified datasets: ---
EXAMP * included/modified examples: osink (1),
        numerical_Hessian (1)

--------------------------------------------------------------
CDM 4.7 (2016-01-30)   --  CRAN CDM 4.7-0
--------------------------------------------------------------

NOTE  * extended Wald test for item fit 'gdina.wald' for DINO
        models. In addition, an effect size of approximation
        ('uwgtdist' and 'wgtdist') is included
NOTE  * cleaned namespace file and defined imported functions
        in a more explicit way
ADDED * added a S3 method 'IRT.parameterTable'
ADDED * added a utility function 'WaldTest' for performing
        Wald tests

DATA  * included/modified datasets: ---
EXAMP * included/modified examples: gdina.wald (1), data.ecpe (1),

--------------------------------------------------------------
CDM 4.6 (2015-11-04)   --  CRAN CDM 4.6-0
--------------------------------------------------------------

NOTE  * included optional lower and upper bounds for estimation
        of guessing and slipping parameters in 'din' (arguments
        'guess.min', 'guess.max', 'slip.min', 'slip.max') 
        (requested by Kevin Carl Santos)

DATA  * included/modified datasets: ---
EXAMP * included/modified examples: ---

--------------------------------------------------------------
CDM 4.5 (2015-08-28)   --  CRAN CDM 4.5-0
--------------------------------------------------------------

NOTE  * extended 'din' and 'gdina' functions for items with more
        than five measured attributes per item
        (requested by Alvaro Artavia Medrano)
NOTE  * included 'converged' value for all models indicating
        whether maximum number of iterations was reached
        (suggested by an anonymous reviewer) 

DATA  * included/modified datasets: ---
EXAMP * included/modified examples: ---

--------------------------------------------------------------
CDM 4.4 (2015-07-01)   --  CRAN CDM 4.4-1
--------------------------------------------------------------

FIXED * fixed a bug in function 'sequential.items'

DATA  * included/modified datasets: ---
EXAMP * included/modified examples: ---

--------------------------------------------------------------
CDM 4.3 (2015-06-05)   --  CRAN CDM 4.3-0
--------------------------------------------------------------

NOTE  * included t and p values in 'IRT.jackknife.gdina'
FIXED * fixed bugs in 'summary.gdina' and 'gdina' due to
        computational problems in standard error calculation

DATA  * included/modified datasets: ---
EXAMP * included/modified examples: ---

--------------------------------------------------------------
CDM 4.2 (2015-02-23)   --  CRAN CDM 4.2-12
--------------------------------------------------------------

FIXED * fixed the ignorance of the 'centered.latent' argument 
        in the 'gdm' function
ADDED * included S3 methods 'IRT.expectedCounts' for extracting
        expected counts and 'IRT.data' for extracting the used
        item response dataset
ADDED * included general plotting function for item response
        functions 'IRT.irfprobPlot'. This function can be used 
        with both lattice and graphics packages.        
ADDED * included S3 method 'predict' (and function 'IRT.predict')
        for computing expected values and residuals for
        fitted models in CDM        
NOTE  * added attributes group and weights to 'IRT.data' value 
NOTE  * added a summary method for 'IRT.compareModels'
NOTE  * changed output of posterior in 'gdina'
ADDED * included function 'IRT.repDesign' for constructing 
        replicate designs
ADDED * added arguments for fixing and initial parameters in
        'gdina' function 
NOTE  * added parameter table and matrix of polychoric correlations
        among skills in 'gdina' output 
ADDED * added S3 method 'IRT.jackknife' and an initial version
        for models of class 'gdina'
ADDED * added function 'IRT.derivedParameter' for replication methods
        for derived parameters based on objects of class 'IRT.jackknife'

DATA  * included/modified datasets: data.timss11.G4.AUT,
        data.timss11.G4.AUT.part
EXAMP * included/modified examples: IRT.expectedCounts (1,2),
        IRT.irfprobPlot (1,2), predict (1,2),
        IRT.data (1), IRT.repDesign (1,2), gdina (1), 
        IRT.jackknife (1,2)

--------------------------------------------------------------
CDM 4.1 (2014-12-17)   --  CRAN CDM 4.1
--------------------------------------------------------------

NOTE  * included confidence intervals S3 method for din objects
FIXED * fixed a bug in printing BIC for 'gdina' objects
NOTE  * included S3 method 'IRT.modelfit' for assessment of
        absolute model fit
NOTE  * included S3 method 'IRT.se' for computation of standard
        errors
NOTE  * included S3 method 'IRT.IC' for extracting information
        criteria and 'IRT.compareModels' for model comparisons
NOTE  * included object names in 'anova' methods for CDM objects
NOTE  * included S3 method 'IRT.anova'
NOTE  * removed MX2 statistic from 'modelfit.cor' function

DATA  * included/modified datasets: ---
EXAMP * included/modified examples: vcov.din (1), IRT.modelfit (1),
        IRT.IC (1), IRT.compareModels (1), anova (1,2)

--------------------------------------------------------------
CDM 4.0 (2014-11-21)   --  CRAN CDM 4.0
--------------------------------------------------------------

NOTE  * included argument for iteration progress in 'gdm'
        and 'slca'
NOTE  * included value call in 'din', 'gdina', 'gdm',
        'mcdina' and 'slca'
NOTE  * changed print method in 'din' and included print method
        for 'gdina', 'gdm' and 'slca'
NOTE  * added anova and coef method for 'slca' function
ADDED * added asymptotic covariance matrix estimation S3 method
        'vcov' for objects of class din
ADDED * added computation of entropy of whole test and items in
        function 'entropy.lca' (Asparouhov & Muthen, 2014)
NOTE  * included a summary function for 'cdi.kli'
NOTE  * included a function 'skillspace.full' for creating a 
        skill space for dichotomous skills
ADDED * included a plot S3 method for 'gdm' and 'slca'        
NOTE  * corrected a bug in person value of 'gdm': missing standard
        errors of EAPs of multiple dimensions are now included
ADDED * included person fit appropriateness statistic (Liu et al., 2009)
ADDED * included S3 methods 'IRT.likelihood', 'IRT.personfit',
        'IRT.irfprob' and 'IRT.factor.scores' for objects of classes 
        din, gdina, gdm, slca and mcdina
NOTE  * included person parameter estimation (classification) for
        'slca' and 'mcdina' functions

DATA  * included/modified datasets: ---
EXAMP * included/modified examples: data.dcm (1), modelfit.cor (2),
        vcov-CDM (1), entropy.lca (1,2,3), personfit.appropriateness (1,2),
        slca (1), IRT.likelihood (1), IRT.irfprob (1), IRT.factor.scores (1)

--------------------------------------------------------------
CDM 3.4 (2014-08-31)   --  CRAN CDM 3.4-21
--------------------------------------------------------------

NOTE  * speeded itemfit.sx2 a bit
NOTE  * included output value 'pattern' in multiple group GDINA models
        (requested by Sung Eun Kim)
NOTE  * included adjusted mean absolute deviation of Q3 statistics (MADaQ3)
        in modelfit.cor.din
EXAMP * included examples for running CDMs in mirt package
          o DINA model ('data.dcm', Model 1)
          o additive GDINA model ('data.dcm', Model 6)

DATA  * included/modified datasets: ---
EXAMP * included/modified examples: modelfit.cor (1), din.deterministic,
        itemfit.sx2 (1), data.dcm (1,6) 

--------------------------------------------------------------
CDM 3.3 (2014-05-25)   --  CRAN CDM 3.3-24
--------------------------------------------------------------

ADDED * included structured latent class analysis for polytomous data ('slca')

DATA  * included/modified datasets: ---
EXAMP * included/modified examples: slca (1,2,3,4,5)

--------------------------------------------------------------
CDM 3.2 (2014-04-23)   --  CRAN CDM 3.2-6
--------------------------------------------------------------

NOTE  * included an argument save.devmin in 'gdina' for more parsimonious
        savings of output values to avoid working memory overflow for 
        large datasets
NOTE  * included effect size of differential item functioning in
        gdina model (included in 'gdina.dif')
FIXED * fixed a bug in itemfit.sx2

DATA  * included/modified datasets: ---
EXAMP * included/modified examples: gdina.dif (1)

--------------------------------------------------------------
CDM 3.1 (2014-03-21)   --  CRAN CDM 3.1-14
--------------------------------------------------------------

FIXED * fixed a bug when printing objects of class 'din'
NOTE  * allowed vector input of item response pattern in 'plot.din'
NOTE  * disabled argument log.file in 'summary.din'
NOTE  * included random initial parameter values in 'din' and 'gdina'
NOTE  * changed some settings in plot.din

DATA  * included/modified datasets: ---
EXAMP * included/modified examples: din (1), gdina (1), plot.din

--------------------------------------------------------------
CDM 3.0 (2014-02-26)   --  CRAN CDM 3.0-29
--------------------------------------------------------------

NOTE  * changed output in summary.gdina a bit (fixed a bug for
        the output of skill probabilities)
NOTE  * included the argument 'avoid.zeroprobs' in gdina function
        to avoid zero probabilities of skill classes and inversion
        of singular matrices   
NOTE  * fixed problems in itemfit.sx2 for empty cells (thanks to
        Balal Izanloo)
ADDED * included a Wald test for the GDINA model (gdina.wald)
ADDED * included assessment of item-wise differential item functioning 
        in the GDINA model (gdina.dif)
FIXED * removed minor bug in summary.gdina
FIXED * fixed a bug with singular design matrix in skill space reduction    
ADDED * included calculation of polychoric correlation in summary.gdina
        and an additional function skill.polychor
NOTE  * removed parallel plot form plot.din
FIXED * fixed a crucial bug for in the multidimensional GDMs with item slope
        parameter estimation
ADDED * included function 'mcdina' for estimating the multiple group multiple
        choice DINA (MCDINA) model with polytomous attributes

DATA  * included/modified datasets: data.cdm01, data.cdm02
EXAMP * included/modified examples: data.ecpe, gdina.wald (1), 
        gdina.dif (1), din (7), mcdina (1,2,3)

--------------------------------------------------------------
CDM 2.7 (2014-01-30)   --  CRAN CDM 2.7-7
--------------------------------------------------------------

ADDED * included cognitive diagnostic indices based on Kullback-Leibler
        information ('cdi.kli')
NOTE  * changed NAMESPACE and DESCRIPTION files due to a change in Rcpp
NOTE  * included non-exported Rcpp files for calculating individual 
        likelihood and posterior distribution for polytomous items and
        multiple groups

DATA  * included/modified datasets: ---
EXAMP * included/modified examples: cdi.kli (1)

--------------------------------------------------------------
CDM 2.6 (2014-01-19)   --  CRAN CDM 2.6-13
--------------------------------------------------------------

FIXED * fixed a bug in polytomous GDINA models with only one skill
NOTE  * included value 'zeroprob.skillclasses' in skillspace.hierarchy
NOTE  * included a more efficient skill space reduction method in
        gdina: using the argument 'reduced.skillspace.method',
        the new implemented method is now the default
ADDED * included data transformation function 'sequential.items' for
        constructing dichtomous pseudo items from polytomous items for
        estimation sequential item response models 

DATA  * included/modified datasets: data.sda6, data.timss03.G8.su,
        data.timss07.G4.lee
EXAMP * included/modified examples: gdm (10)

--------------------------------------------------------------
CDM 2.5 (2014-01-16)   --  CRAN CDM 2.5-48
--------------------------------------------------------------

FIXED * fixed a bug when inverting a singular matrix in standard error
        calculation in gdina function (thanks to Hsin-Hao Chen)
NOTE  * included conditional item probabilities in gdina output
NOTE  * included gdina plot function (thanks to a discussion with 
        Hamdollah Ravand)
FIXED * fixed a bug in summary.dina if data without column names
        is provided (thanks to Hu Jinxiang)
FIXED * removed a bug in gdina function which occured sometimes
        due to division by zero (thanks to Hu Jinxiang)
FIXED * fixed a bug in cdm.est.class.accuracy for GDINA models
        (thanks to Hamdollah Ravand)
FIXED * fixed some instable numerical behavior for higher order
        GDINA models (thanks to Ed Merkle)
FIXED * fixed a bug in calculating number of estimated parameters for
        'din' function in case of skill classes with zero probability
        (thanks to Juergen Gross)
NOTE  * added some explanations in the manual of 'modelfit.cor'
ADDED * included S-X2 item fit statistic ('itemfit.sx2') accompanied
        with a summary and a plot method
ADDED * included marginal skill classification reliability in
        'cdm.est.class.accuracy' function
ADDED * implemented significance tests in modelfit.cor and modelfit.cor.din
ADDED * included jackknife estimation of standard
        errors and bias corrected estimators in modelfit.cor.din
NOTE  * speeded function 'modelfit.cor' by moving some parts of the code
        to Rcpp
NOTE  * included warnings in case of nonconvergence in gdina function
        (thanks to a dataset provided by Hamdollah Ravand)
NOTE  * slight change of algorithm for skill space reduction which
        seems to improve convergence behavior
ADDED * included a function for skill space approximation
ADDED * included a function for calculation reduced skill spaces
        if hierarchies among skills exist ('skillspace.hierarchy')
ADDED * included generalized distance discriminating method and a function
        for computing ideal response patterns

DATA  * included/modified datasets: data.hr, data.melab, data.jang, 
        data.dtmr
EXAMP * included/modified examples: gdm (4,5,6), gdina (8,9), sim.din (3), 
        sim.gdina (2,3), itemfit.sx2 (1,2), din(6)

--------------------------------------------------------------
CDM 2.4 (2013-10-24)   --  CRAN CDM 2.4-9
--------------------------------------------------------------

DATA  * included two datasets 'data.dcm' and 'data.ecpe'
DATA  * eliminated a recoding error in data.Students

--------------------------------------------------------------
CDM 2.3 (2013-09-06)   --  CRAN CDM 2.3-15
--------------------------------------------------------------

NOTE  * worked on slight improvements of computation time in din
        and gdina
DATA  * included multiple group dataset 'data.mg'
NOTE  * cleaned CDM manual (thanks to Michaela Mayr)

--------------------------------------------------------------
CDM 2.2 (2013-08-20)   --  CRAN CDM 2.2-20
--------------------------------------------------------------

NOTE  * accelerated rowMaxs function
ADDED * included Q-matrix validation function (de la Torre, 2008)
ADDED * included joint maximum likelihood estimation and
        classification function for the mixed DINA/DINO model
        -> function din.deterministic
EXAMP * included another example (based on attribute vectors) 
        in sim.din function
ADDED * included polytomous GDINA model (Chen & de la Torre, 2013)  

--------------------------------------------------------------
CDM 2.01 (2013-07-27)   --  CRAN CDM 2.01-11
--------------------------------------------------------------

FIXED * fixed a bug in gdm in multiple group estimation: group
        labeling was incorrect and is now included in output group.stat
        and displayed in summary.gdm
NOTE  * improved convergence behavior for multiple group analysis
NOTE  * accelerated calculation in gdm: skillspace reduction

--------------------------------------------------------------
CDM 1.5 (2013-07-09)   --  CRAN CDM 1.5-12
--------------------------------------------------------------

NOTE  * allowed for centering of intercepts and slopes in gdm
ADDED * included satured skill distribution estimation in gdm
FIXED * fixed a bug in the calculation of RMSEA itemfit, although
        is not clear if the correct formula is used
FIXED * fixed a bug in gdm with varying number of item categories
        (thanks to Artur Pokropek)
ADDED * included the multidimensional latent class IRT model 
        (Bartolucci, 2007) in gdm (skillspace="est")
NOTE  * speeded calculation of modelfit.cor

--------------------------------------------------------------
CDM 1.4 (2013-06-30)   --  CRAN CDM 1.4-16
--------------------------------------------------------------

FIXED * eliminated a bug in GDINA function for link="log"
ADDED * included the parametrization of the reduced RUM model in gdina
ADDED * worked on higher order GDINA model which has the argument
        HOGDINA in gdina. Now there is dependency on the 'fa' factor 
        analysis function in the psych package.
ADDED * included log-likelihood extractor functions
ADDED * included group-wise calculation of RMSEA statistics
        see itemfit.rmsea and the gdm output (thanks to Artur Pokropek)
FIXED * (hopefully) fixed a bug in gdm function with differing number of
        item categories (thanks to Artur Pokropek)  
NOTE  * use frequency patterns in gdm to speed up calculations
        for large data sets (argument 'use.freqpatt' in gdm function)
NOTE  * included more than one step in gdm function
        - arguments msteps (set to 8 M steps as the default) and convM

--------------------------------------------------------------
CDM 1.3 (2013-05-15)   --  CRAN CDM 1.3-17
--------------------------------------------------------------

ADDED * included the general diagnostic model (function gdm)
ADDED * included a function for calculating equivalent skill classes
        for the DINA/DINO model
ADDED * modelfit and anova functions are also accessible for the GDM
FIXED * fixed a bug in the function for classification accuracy
ADDED * included the RMSEA item fit index
FIXED * fixed a bug in gdina estimation
ADDED * included coef extractor function

--------------------------------------------------------------
CDM 1.2-3 (2013-02-12)
--------------------------------------------------------------

ADDED * included a model fit function modelfit.cor(.din) for the
        comparison of observed and expected correlations
FIXED * fixed a bug in the gdina function when applying the model
        with one skill

--------------------------------------------------------------
CDM 1.2-1/1.2-2 (2013-02-01)
--------------------------------------------------------------

ADDED * allow for user specified reduced skill space designs
ADDED * included tetrachoric correlations in summary.gdina function
ADDED * handled zero probability classes in gdina function
ADDED * allowed for output and input of attribute patterns in sim.din
        function
NOTE  * included relative deviance change as convergence criterion in din
        function
ADDED * included function for determining a statistically equivalent 
        DINA model (von Davier, 2013)
NOTE  * changed structure of din summary
ADDED * included an anova function
ADDED * included a function for estimating classification reliability
FIXED * fixed a bug in gdina function when creating design matrices

--------------------------------------------------------------
CDM 1.2.0 (2012-09-30)
--------------------------------------------------------------

ADDED * implemented the latent skill space reduction according
        to Xu and von Davier (2008)
FIXED * fixed a bug in calculation of estimated parameters
FIXED * fixed a bug in IDI calculation
FIXED * corrected MLE based classification in case of latent
        classes with a priori spceified zero probability in the
        din function (yet to be done in gdina)
FIXED * fixed a bug in standard error calculation in gdina
NOTE  * speed improvements in din and gdina function
        - included a C function for calculating the posterior 
          distribution
NOTE  * check of admissible rule in gdina
ADDED * include rule "GDINA2" and "GDINA1" ("GDINA1" is 
        equivalent to "ACDM")
ADDED * Simulation function for the GDINA model included
ADDED * multiple group gdina function for estimation of
        generalized DINA models (de la Torre, 2011)
ADDED * included new function summary.gdina

--------------------------------------------------------------
CDM 1.1 (2012-07-29)
--------------------------------------------------------------

NOTE  * highest argument deleted from print.din method
NOTE  * new argument for summary.din n.skill.classes
NOTE  * skill pattern probabilities deleted from print.din
NOTE  * skill pattern summary replaced by n most frequent skill 
        classes in summary.din
NOTE  * (argument ask=TRUE in summary.din placed by overwrite=FALSE)
NOTE  * use a different item discrimination index (Lee et al., 2012)
NOTE  * remove GDINA estimation from this package version because
        it is in an experimental status 
        -> gdina will be included in CDM >= 1.1-1
NOTE  * new optional attribute for q-matrix specification list of skill 
        labels
NOTE  * changed ouput in din function
        -> pattern, like and posterior are sorted according to the original 
           input data frame
FIXED * remove a bug for models with only attribute
ADDED * new argument for din method zeroprob.skillclasses
ADDED * new argument for din method equal.itempars
NOTE  * new arguments for summary.din method log.file and ask
FIXED * minor bug fixes in print.din method
NOTE  * replace internal method rowProds with faster rowProds2
NOTE  * option for writing an output file of model results included in 
        function summary.din 

--------------------------------------------------------------
CDM 1.0 (2011-10-27)
--------------------------------------------------------------
               [--- FIRST CRAN RELEASE ---]