10 releases

0.2.2 Feb 22, 2021
0.2.1 Feb 22, 2021
0.1.6 Feb 13, 2021

#919 in Science

MIT license

6MB
770 lines

Build Status Crates.io docs.rs

About

This is an implementation of the Cognitively-Inspired Simulated Annealing Teams (CISAT) Framework in Rust.

This is currently an incomplete implementation. Progress on CISAT characteristics includes:

  • Multi-agency
  • Organic interaction timing
  • Quality-informed solutions haring
  • Quality bias reduction
  • Self-bias
  • Operational learning
  • Locally-sensitive search
  • Satisficing

Usage

Here is a basic examples of usage

use cisat::{Cohort, Parameters, problems::Ackley};
fn main() {
    let mut x = Cohort::<Ackley>::new(Parameters::default());

    x.solve();

    println!("{:?}", x);
}

You can also implement new problem, agent, and team types using the Solution, AgentMethods, and TeamMethods traits, respectively. This allows significant flexibility within the basic CISAT structure.

Literature

Aspects of CISAT have been published in several places. You can learn more about it here:

  1. McComb, C., Cagan, J., & Kotovsky, K. (2015). Lifting the Veil: Drawing insights about design teams from a cognitively-inspired computational model. Design Studies, 40, 119-142. doi:10.1016/j.destud.2015.06.005. PDF
  2. McComb, C., Cagan, J., & Kotovsky, K. (2016). Drawing inspiration from human design teams for better search and optimization: The heterogeneous simulated annealing teams algorithm. Journal of Mechanical Design, 138(4). doi:10.1115/1.4032810. PDF
  3. McComb, C., Cagan, J., & Kotovsky, K. (2017). Capturing human sequence-learning abilities in configuration design tasks through markov chains. Journal of Mechanical Design, 139(9). doi:10.1115/1.4037185. PDF
  4. McComb, C., Cagan, J., & Kotovsky, K. (2017). Optimizing design teams based on problem properties: computational team simulations and an applied empirical test. Journal of Mechanical Design, 139(4). doi:10.1115/1.4035793. PDF

Dependencies

~11–22MB
~289K SLoC