use mcdm::{CriteriaTypes, McdmError, Normalize, Rank, Weight};
use nalgebra::dmatrix;
fn main() -> Result<(), McdmError> {
let alternatives = dmatrix![4.0, 7.0, 8.0; 2.0, 9.0, 6.0; 3.0, 6.0, 9.0];
let criteria_types = CriteriaTypes::from_slice(&[-1, 1, 1])?;
let normalized_matrix = alternatives.normalize_min_max(&criteria_types)?;
let equal_weights = normalized_matrix.weight_equal()?;
let ranking = normalized_matrix.rank_topsis(&equal_weights)?;
println!("Ranking: {:.3}", ranking);
Ok(())
}