All Projects → douglasrizzo → Catsim

douglasrizzo / Catsim

Licence: lgpl-3.0
Computerized Adaptive Testing Simulator

Programming Languages

python
139335 projects - #7 most used programming language

Labels

Projects that are alternatives of or similar to Catsim

datamosh
✨💾 Edit images via buffers. 💯✨
Stars: ✭ 23 (-64.62%)
Mutual labels:  cat
Audio cat dog classification
Classification of WAV files from cats and dogs
Stars: ✭ 16 (-75.38%)
Mutual labels:  cat
Nyan Mode
Nyan Cat for Emacs! Nyanyanyanyanyanyanyanyanyan!
Stars: ✭ 590 (+807.69%)
Mutual labels:  cat
hack-tools
"Кали-заменитель". Располагает в себе большое количество утилит для взлома.
Stars: ✭ 39 (-40%)
Mutual labels:  cat
bash-cat-with-cat
The classic cat command but with a cat
Stars: ✭ 154 (+136.92%)
Mutual labels:  cat
Cshell
A basic shell. Written in C
Stars: ✭ 19 (-70.77%)
Mutual labels:  cat
react-redux-cats
React and Redux with cats
Stars: ✭ 23 (-64.62%)
Mutual labels:  cat
Mdcat
cat for markdown
Stars: ✭ 1,043 (+1504.62%)
Mutual labels:  cat
CatCode
猫猫码,一个可爱的通用特殊码,CQ码的精神延续。/ Cat code, the spirit of CQ code continues, a cute universal special code.
Stars: ✭ 23 (-64.62%)
Mutual labels:  cat
Intel Cmt Cat
User space software for Intel(R) Resource Director Technology
Stars: ✭ 400 (+515.38%)
Mutual labels:  cat
cat
CAT is a computer-based online test application powered by Codeigniter, jquery. Simple and easy to use
Stars: ✭ 72 (+10.77%)
Mutual labels:  cat
FT857d
CAT support for Arduino, simulating a Yaesu FT-857D
Stars: ✭ 31 (-52.31%)
Mutual labels:  cat
Kitty Cloud
Spring Cloud 架构搭建的开源社区技术网站,落地微服务架构值得参考的项目。
Stars: ✭ 263 (+304.62%)
Mutual labels:  cat
Cofoundry.Samples.SPASite
A simple single page application using Cofoundry as a headless CMS
Stars: ✭ 30 (-53.85%)
Mutual labels:  cat
Catpapers
Cool vision, learning, and graphics papers on Cats!
Stars: ✭ 918 (+1312.31%)
Mutual labels:  cat
json-viewer
Pretty JSON viewer for the terminal
Stars: ✭ 26 (-60%)
Mutual labels:  cat
surepy
🐾 Library & CLI to monitor and control the Pet Door & Cat Flap Connect 🚪 the Pet Feeder Connect 🍽 and the Felaqua 💦 sold by Sure Petcare
Stars: ✭ 45 (-30.77%)
Mutual labels:  cat
Mog
A different take on the UNIX tool cat
Stars: ✭ 62 (-4.62%)
Mutual labels:  cat
Random Cat
Modul to get random cat images
Stars: ✭ 23 (-64.62%)
Mutual labels:  cat
Cat Generator
Generate cat images with neural networks
Stars: ✭ 354 (+444.62%)
Mutual labels:  cat

Logo


Build Status Test Coverage Latest Version Code Health Requirements Status Digital Object Identifier

catsim is a Python package for computerized adaptive testing (CAT) simulations. It provides multiple methods for:

These methods can either be used in a standalone fashion [1] to power other software or be used with catsim to simulate the application of computerized adaptive tests [2], given a sample of examinees, represented by their proficiency levels, and an item bank, represented by their parameters according to some logistic Item Response Theory model.

What's a CAT

Computerized adaptive tests are educational evaluations, usually taken by examinees in a computer or some other digital means, in which the examinee's proficiency is evaluated after the response of each item. The new proficiency is then used to select a new item, closer to the examinee's real proficiency. This method of test application has several advantages compared to the traditional paper-and-pencil method or even linear tests applied electronically, since high-proficiency examinees are not required to answer all the easy items in a test, answering only the items that actually give some information regarding his or hers true knowledge of the subject at matter. A similar, but inverse effect happens for those examinees of low proficiency level.

More information is available in the docs and over at Wikipedia.

Installation

Install it using pip install catsim.

Basic Usage

NEW: there is now a Colab Notebook teaching the basics of catsim!

  1. Have an item matrix;
  2. Have a sample of examinee proficiencies, or a number of examinees to be generated;
  3. Create an initializer, an item selector, a proficiency estimator and a stopping criterion;
  4. Pass them to a simulator and start the simulation.
  5. Access the simulator's properties to get specifics of the results;
  6. Plot your results.
from catsim.initialization import RandomInitializer
from catsim.selection import MaxInfoSelector
from catsim.estimation import HillClimbingEstimator
from catsim.stopping import MaxItemStopper
from catsim.simulation import Simulator
from catsim.cat import generate_item_bank
initializer = RandomInitializer()
selector = MaxInfoSelector()
estimator = HillClimbingEstimator()
stopper = MaxItemStopper(20)
Simulator(generate_item_bank(100), 10).simulate(initializer, selector, estimator, stopper)

Dependencies

All dependencies are listed on setup.py and should be installed automatically.

To run the tests, you'll need to install the testing requirements pip install catsim[testing].

To generate the documentation, Sphinx and its dependencies are needed.

Compatibility

Since the beginning, catsim has only been compatible with Python 3.4 upwards.

Important links

Citing catsim

You can cite the package using the following bibtex entry:

@article{catsim,
    author = {{De Rizzo Meneghetti}, Douglas and Aquino Junior, Plinio Thomaz},
        title = "{Application and Simulation of Computerized Adaptive Tests Through the Package catsim}",
    journal = {arXiv e-prints},
    keywords = {Statistics - Applications},
        year = 2017,
        month = jul,
        eid = {arXiv:1707.03012},
        pages = {arXiv:1707.03012},
archivePrefix = {arXiv},
    eprint = {1707.03012},
primaryClass = {stat.AP}
}
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].