//[Fact] public void CanComputeCriteriaWeightsviaFuzzyAHP() { var ComparisonMatrix = new ValueTuple <double, double, double> [6, 6]; string[] values = ReadAllLines("compmat.csv"); string[] line, numbers; for (int i = 0; i < 6; i++) { line = values[i].Split(','); for (int j = 0; j < 6; j++) { numbers = line[j].Split(' '); ComparisonMatrix[i, j].Item1 = Convert.ToDouble(numbers[0]); ComparisonMatrix[i, j].Item2 = Convert.ToDouble(numbers[1]); ComparisonMatrix[i, j].Item3 = Convert.ToDouble(numbers[2]); } } var fahp = new FAHP(ComparisonMatrix); double[] weights = fahp.CriteriaWeights; string[] whattowrite = new string[6]; for (int i = 0; i < 6; i++) { whattowrite[i] = $"{weights[i]}"; } WriteAllLines("weights.txt", whattowrite); }
private Task<string> GetValuesAsync(string[] values) { return Task.Run(() => { int max = values.Length; string fp = Directory.GetCurrentDirectory(); fp = Path.Combine(Directory.GetParent(Directory.GetCurrentDirectory()).FullName, "Dataset.csv"); Query query; try { query = new Query(6, fp) { Class = Convert.ToInt32(values[0]), Social = Convert.ToDouble(values[1]), IsMale = values[2] == "1", Age = Convert.ToInt32(values[3]), Location = new Address(values[4], values[5], values[6], values[7]) }; for (int i = 0; i < 15; i++) query.FuzzyValues[i] = Convert.ToInt32(values[i + 8]); query.ConfLevel = Convert.ToInt32(values[23]); } catch (Exception x) { return x.ToString(); } query.CreateComparisonMatrix(); FAHP fAHP = new FAHP(query.ComparisonMatrix); double[] weights = fAHP.CriteriaWeights; return string.Join(',', weights); }); }
public void OnGet() { query = Program.MyQuery; fahp = new FAHP(query.ComparisonMatrix); }