Changeset 14825
- Timestamp:
- 04/04/17 16:57:45 (8 years ago)
- Location:
- branches/symbreg-factors-2650
- Files:
-
- 34 edited
- 3 copied
Legend:
- Unmodified
- Added
- Removed
-
branches/symbreg-factors-2650
- Property svn:mergeinfo changed
/trunk/sources merged: 14769-14770,14772-14775,14779-14781,14786,14789-14791,14793,14805,14809-14810,14817,14819-14820
- Property svn:mergeinfo changed
-
branches/symbreg-factors-2650/HeuristicLab.Algorithms.ALPS
- Property svn:mergeinfo changed
/trunk/sources/HeuristicLab.Algorithms.ALPS merged: 14774
- Property svn:mergeinfo changed
-
branches/symbreg-factors-2650/HeuristicLab.Algorithms.ALPS/3.3/AlpsGeneticAlgorithm.cs
r14185 r14825 475 475 protected override void Problem_EvaluatorChanged(object sender, EventArgs e) { 476 476 base.Problem_EvaluatorChanged(sender, e); 477 478 ParameterizeStochasticOperatorForLayer(Problem.Evaluator); 479 477 480 foreach (var @operator in Problem.Operators.OfType<IOperator>()) 478 481 ParameterizeStochasticOperator(@operator); -
branches/symbreg-factors-2650/HeuristicLab.Algorithms.DataAnalysis
- Property svn:mergeinfo changed
/trunk/sources/HeuristicLab.Algorithms.DataAnalysis merged: 14779-14781
- Property svn:mergeinfo changed
-
branches/symbreg-factors-2650/HeuristicLab.Algorithms.DataAnalysis/3.4/CrossValidation.cs
r14185 r14825 451 451 var aggregatedResults = new List<IResult>(); 452 452 foreach (KeyValuePair<string, List<IClassificationSolution>> solutions in resultSolutions) { 453 // clone manually to correctly clone references between cloned root objects 454 Cloner cloner = new Cloner(); 455 var problemDataClone = (IClassificationProblemData)cloner.Clone(Problem.ProblemData); 453 // at least one algorithm (GBT with logistic regression loss) produces a classification solution even though the original problem is a regression problem. 454 var targetVariable = solutions.Value.First().ProblemData.TargetVariable; 455 var problemDataClone = new ClassificationProblemData(Problem.ProblemData.Dataset, 456 Problem.ProblemData.AllowedInputVariables, targetVariable); 456 457 // set partitions of problem data clone correctly 457 458 problemDataClone.TrainingPartition.Start = SamplesStart.Value; problemDataClone.TrainingPartition.End = SamplesEnd.Value; -
branches/symbreg-factors-2650/HeuristicLab.Algorithms.DataAnalysis/3.4/GradientBoostedTrees/GradientBoostedTreesAlgorithm.cs
r14542 r14825 255 255 var classificationProblemData = new ClassificationProblemData(problemData.Dataset, 256 256 problemData.AllowedInputVariables, problemData.TargetVariable, problemData.Transformations); 257 classificationModel.RecalculateModelParameters(classificationProblemData, classificationProblemData.TrainingIndices); 257 classificationProblemData.TrainingPartition.Start = Problem.ProblemData.TrainingPartition.Start; 258 classificationProblemData.TrainingPartition.End = Problem.ProblemData.TrainingPartition.End; 259 classificationProblemData.TestPartition.Start = Problem.ProblemData.TestPartition.Start; 260 classificationProblemData.TestPartition.End = Problem.ProblemData.TestPartition.End; 261 262 classificationModel.SetThresholdsAndClassValues(new double[] { double.NegativeInfinity, 0.0 }, new []{ 0.0, 1.0 }); 263 258 264 259 265 var classificationSolution = new DiscriminantFunctionClassificationSolution(classificationModel, classificationProblemData); -
branches/symbreg-factors-2650/HeuristicLab.Analysis
- Property svn:mergeinfo changed
/trunk/sources/HeuristicLab.Analysis merged: 14775
- Property svn:mergeinfo changed
-
branches/symbreg-factors-2650/HeuristicLab.Analysis/3.3/QualityAnalysis/ExpectedRuntimeHelper.cs
r14102 r14825 30 30 if (successful.Count > 0) { 31 31 var succAvg = successful.Average(); 32 var succDev = successful.StandardDeviation() ;32 var succDev = successful.StandardDeviation() + 1e-7; 33 33 successful.RemoveAll(x => x < succAvg - 2 * succDev); 34 34 unsuccessful.RemoveAll(x => x < succAvg - 2 * succDev); -
branches/symbreg-factors-2650/HeuristicLab.Collections/3.3/IndexedItem.cs
r14185 r14825 20 20 #endregion 21 21 22 using System;23 24 22 namespace HeuristicLab.Collections { 25 [Serializable]26 23 public struct IndexedItem<T> { 27 private int index;24 private readonly int index; 28 25 public int Index { 29 26 get { return index; } 30 27 } 31 private T value;28 private readonly T value; 32 29 public T Value { 33 30 get { return value; } … … 40 37 41 38 public override string ToString() { 42 return "[" + index .ToString() + ": " + value == null ? "null" : value.ToString() + "]";39 return "[" + index + ": " + (value == null ? "null" : value.ToString()) + "]"; 43 40 } 44 41 } -
branches/symbreg-factors-2650/HeuristicLab.Common/3.3/EnumerableExtensions.cs
r14755 r14825 120 120 121 121 for (int i = 0; i < length; ++i) { 122 yield return range.Select(x => elements[x]) ;122 yield return range.Select(x => elements[x]).ToArray(); 123 123 124 124 if (i == length - 1) break; -
branches/symbreg-factors-2650/HeuristicLab.DataPreprocessing.Views
- Property svn:mergeinfo changed
/trunk/sources/HeuristicLab.DataPreprocessing.Views merged: 14817,14819
- Property svn:mergeinfo changed
-
branches/symbreg-factors-2650/HeuristicLab.DataPreprocessing.Views/3.4/CheckedFilterCollectionView.cs
r14185 r14825 21 21 22 22 using System; 23 using System.Windows.Forms;24 23 using HeuristicLab.Core; 25 24 using HeuristicLab.Core.Views; … … 35 34 InitializeComponent(); 36 35 } 37 38 protected override void addButton_Click(object sender, EventArgs e) {39 IFilter filter = new ComparisonFilter();40 Content.Add(filter);41 Content.SetItemCheckedState(filter, false);42 }43 44 36 } 45 37 } -
branches/symbreg-factors-2650/HeuristicLab.Optimization.Views
- Property svn:mergeinfo changed
/trunk/sources/HeuristicLab.Optimization.Views merged: 14775,14791,14793
- Property svn:mergeinfo changed
-
branches/symbreg-factors-2650/HeuristicLab.Optimization.Views/3.3/RunCollectionViews/RunCollectionBoxPlotView.cs
r14185 r14825 463 463 } 464 464 465 public bool StatisticsVisible { 466 get { return splitContainer.Panel2Collapsed; } 467 set { splitContainer.Panel2Collapsed = value; } 468 } 469 465 470 public void SetXAxis(string axisName) { 466 471 xAxisComboBox.SelectedItem = axisName; -
branches/symbreg-factors-2650/HeuristicLab.Optimization.Views/3.3/RunCollectionViews/RunCollectionRLDView.cs
r14751 r14825 1 1 #region License Information 2 2 /* HeuristicLab 3 * Copyright (C) 2002-201 6Heuristic and Evolutionary Algorithms Laboratory (HEAL)3 * Copyright (C) 2002-2017 Heuristic and Evolutionary Algorithms Laboratory (HEAL) 4 4 * 5 5 * This file is part of HeuristicLab. … … 42 42 private List<Series> invisibleTargetSeries; 43 43 44 private const string All Runs = "All Runs";44 private const string AllInstances = "All Instances"; 45 45 46 46 private static readonly Color[] colors = new[] { … … 223 223 var groupings = Content.ParameterNames.OrderBy(x => x).ToArray(); 224 224 groupComboBox.Items.Clear(); 225 groupComboBox.Items.Add(All Runs);225 groupComboBox.Items.Add(AllInstances); 226 226 groupComboBox.Items.AddRange(groupings); 227 227 if (selectedGroupItem != null && groupComboBox.Items.Contains(selectedGroupItem)) { … … 241 241 242 242 var selectedProblemItem = (ProblemInstance)problemComboBox.SelectedItem; 243 problemComboBox.DataSource = null; 244 problemComboBox.Items.Clear(); 243 245 problems.Clear(); 244 246 problems.Add(ProblemInstance.MatchAll); 247 problemComboBox.DataSource = new BindingSource() { DataSource = problems }; 248 problemComboBox.DataBindings.DefaultDataSourceUpdateMode = DataSourceUpdateMode.OnPropertyChanged; 245 249 if (problems[0].Equals(selectedProblemItem)) problemComboBox.SelectedItem = problems[0]; 246 250 foreach (var p in problemDict.ToList()) { … … 282 286 } 283 287 284 private Dictionary<string, Dictionary<ProblemInstance, List<IRun>>> GroupRuns() { 285 var groupedRuns = new Dictionary<string, Dictionary<ProblemInstance, List<IRun>>>(); 286 288 private IEnumerable<AlgorithmInstance> GroupRuns() { 287 289 var table = (string)dataTableComboBox.SelectedItem; 288 if (string.IsNullOrEmpty(table)) return groupedRuns;290 if (string.IsNullOrEmpty(table)) yield break; 289 291 290 292 var selectedGroup = (string)groupComboBox.SelectedItem; 291 if (string.IsNullOrEmpty(selectedGroup)) return groupedRuns;293 if (string.IsNullOrEmpty(selectedGroup)) yield break; 292 294 293 295 var selectedProblem = (ProblemInstance)problemComboBox.SelectedItem; 294 if (selectedProblem == null) return groupedRuns;296 if (selectedProblem == null) yield break; 295 297 296 298 foreach (var x in (from r in Content 297 where (selectedGroup == All Runs || r.Parameters.ContainsKey(selectedGroup))299 where (selectedGroup == AllInstances || r.Parameters.ContainsKey(selectedGroup)) 298 300 && selectedProblem.Match(r) 299 301 && r.Results.ContainsKey(table) 300 302 && r.Visible 301 let key = selectedGroup == All Runs ? AllRuns : r.Parameters[selectedGroup].ToString()303 let key = selectedGroup == AllInstances ? AllInstances : r.Parameters[selectedGroup].ToString() 302 304 group r by key into g 303 select Tuple.Create(g.Key, g.ToList()))) { 304 var pDict = problems.ToDictionary(r => r, _ => new List<IRun>()); 305 foreach (var y in x.Item2) { 306 var pd = new ProblemInstance(y); 307 List<IRun> l; 308 if (pDict.TryGetValue(pd, out l)) l.Add(y); 309 } 310 groupedRuns[x.Item1] = pDict.Where(a => a.Value.Count > 0).ToDictionary(a => a.Key, a => a.Value); 311 } 312 313 return groupedRuns; 305 select new AlgorithmInstance(g.Key, g, problems))) { 306 yield return x; 307 } 314 308 } 315 309 … … 326 320 if (targets == null) GenerateDefaultTargets(); 327 321 328 var groupedRuns = GroupRuns();329 if ( groupedRuns.Count == 0) return;322 var algInstances = GroupRuns().ToList(); 323 if (algInstances.Count == 0) return; 330 324 331 325 var xAxisTitles = new HashSet<string>(); … … 337 331 // how many targets have been left open at the point when the run ended 338 332 var misses = new Dictionary<string, SortedList<double, int>>(); 333 var totalRuns = new Dictionary<string, int>(); 339 334 340 335 var aggregate = aggregateTargetsCheckBox.Checked; 341 336 double minEff = double.MaxValue, maxEff = double.MinValue; 342 var noRuns = 0;343 foreach (var group in groupedRuns) {337 foreach (var alg in algInstances) { 338 var noRuns = 0; 344 339 SortedList<double, int> epdfHits = null, epdfMisses = null; 345 340 if (aggregate) { 346 hits[ group.Key] = epdfHits = new SortedList<double, int>();347 misses[ group.Key] = epdfMisses = new SortedList<double, int>();348 } 349 foreach (var problem in group.Value) {350 var max = problem. Key.IsMaximization();351 var absTargets = GetAbsoluteTargets(problem .Key).ToArray();352 foreach (var run in problem.Value) {341 hits[alg.Name] = epdfHits = new SortedList<double, int>(); 342 misses[alg.Name] = epdfMisses = new SortedList<double, int>(); 343 } 344 foreach (var problem in alg.GetProblemInstances()) { 345 var max = problem.IsMaximization(); 346 var absTargets = GetAbsoluteTargets(problem).ToArray(); 347 foreach (var run in alg.GetRuns(problem)) { 353 348 noRuns++; 354 349 var resultsTable = (IndexedDataTable<double>)run.Results[table]; … … 361 356 var e = efforts[idx]; 362 357 if (!aggregate) { 363 var key = group.Key+ "@" + (targetsAreRelative364 ? (targets[idx] * 100).ToString(CultureInfo.CurrentCulture.NumberFormat) + "%"365 : targets[idx].ToString(CultureInfo.CurrentCulture.NumberFormat));358 var key = alg.Name + "@" + (targetsAreRelative 359 ? (targets[idx] * 100).ToString(CultureInfo.CurrentCulture.NumberFormat) + "%" 360 : targets[idx].ToString(CultureInfo.CurrentCulture.NumberFormat)); 366 361 if (!hits.TryGetValue(key, out epdfHits)) 367 362 hits[key] = epdfHits = new SortedList<double, int>(); 368 363 if (!misses.TryGetValue(key, out epdfMisses)) 369 364 misses[key] = epdfMisses = new SortedList<double, int>(); 370 } 365 totalRuns[key] = noRuns; 366 }; 371 367 var list = e.Item1 ? epdfHits : epdfMisses; 372 368 int v; … … 377 373 } 378 374 } 375 if (aggregate) totalRuns[alg.Name] = noRuns; 379 376 } 380 377 381 378 UpdateTargetChartAxisXBounds(minEff, maxEff); 382 379 383 DrawTargetsEcdf(hits, misses, noRuns);380 DrawTargetsEcdf(hits, misses, totalRuns); 384 381 385 382 if (targets.Length == 1) { … … 392 389 targetChart.ChartAreas[0].CursorY.Interval = 0.05; 393 390 394 UpdateErtTables( groupedRuns);395 } 396 397 private void DrawTargetsEcdf(Dictionary<string, SortedList<double, int>> hits, Dictionary<string, SortedList<double, int>> misses, intnoRuns) {391 UpdateErtTables(algInstances); 392 } 393 394 private void DrawTargetsEcdf(Dictionary<string, SortedList<double, int>> hits, Dictionary<string, SortedList<double, int>> misses, Dictionary<string, int> noRuns) { 398 395 var colorCount = 0; 399 396 var lineStyleCount = 0; … … 418 415 var iter = misses[list.Key].GetEnumerator(); 419 416 var moreMisses = iter.MoveNext(); 420 var totalTargets = noRuns ;417 var totalTargets = noRuns[list.Key]; 421 418 if (aggregateTargetsCheckBox.Checked) totalTargets *= targets.Length; 422 419 var movingTargets = totalTargets; … … 594 591 } 595 592 596 private void UpdateErtTables( Dictionary<string, Dictionary<ProblemInstance, List<IRun>>> groupedRuns) {593 private void UpdateErtTables(List<AlgorithmInstance> algorithmInstances) { 597 594 ertTableView.Content = null; 598 595 var columns = 1 + targets.Length + 1; 599 var matrix = new string[ groupedRuns.Count * groupedRuns.Max(x => x.Value.Count) + groupedRuns.Max(x => x.Value.Count), columns];596 var matrix = new string[algorithmInstances.Count * algorithmInstances.Max(x => x.GetNumberOfProblemInstances()) + algorithmInstances.Max(x => x.GetNumberOfProblemInstances()), columns]; 600 597 var rowCount = 0; 601 598 … … 603 600 if (string.IsNullOrEmpty(tableName)) return; 604 601 605 var problems = groupedRuns.SelectMany(x => x.Value.Keys).Distinct().ToList();602 var problems = algorithmInstances.SelectMany(x => x.GetProblemInstances()).Distinct().ToList(); 606 603 607 604 foreach (var problem in problems) { … … 615 612 rowCount++; 616 613 617 foreach (var group in groupedRuns) { 618 matrix[rowCount, 0] = group.Key; 619 if (!group.Value.ContainsKey(problem)) { 614 foreach (var alg in algorithmInstances) { 615 matrix[rowCount, 0] = alg.Name; 616 var runs = alg.GetRuns(problem).ToList(); 617 if (runs.Count == 0) { 620 618 matrix[rowCount, columns - 1] = "N/A"; 621 619 rowCount++; 622 620 continue; 623 621 } 624 var runs = group.Value[problem];625 622 var result = default(ErtCalculationResult); 626 623 for (var i = 0; i < absTargets.Length; i++) { … … 648 645 if (budgets == null) GenerateDefaultBudgets(table); 649 646 650 var groupedRuns = GroupRuns();651 if ( groupedRuns.Count == 0) return;647 var algInstances = GroupRuns().ToList(); 648 if (algInstances.Count == 0) return; 652 649 653 650 var colorCount = 0; 654 651 var lineStyleCount = 0; 655 652 656 foreach (var group in groupedRuns) {653 foreach (var alg in algInstances) { 657 654 var hits = new Dictionary<string, SortedList<double, double>>(); 658 655 659 foreach (var problem in group.Value) {660 foreach (var run in problem.Value) {656 foreach (var problem in alg.GetProblemInstances()) { 657 foreach (var run in alg.GetRuns(problem)) { 661 658 var resultsTable = (IndexedDataTable<double>)run.Results[table]; 662 659 663 660 if (aggregateBudgetsCheckBox.Checked) { 664 CalculateHitsForAllBudgets(hits, resultsTable.Rows.First(), group.Value.Count, problem.Key, group.Key, problem.Value.Count);661 CalculateHitsForAllBudgets(hits, resultsTable.Rows.First(), alg.GetNumberOfProblemInstances(), problem, alg.Name, alg.GetNumberOfRuns(problem)); 665 662 } else { 666 CalculateHitsForEachBudget(hits, resultsTable.Rows.First(), group.Value.Count, problem.Key, group.Key, problem.Value.Count);663 CalculateHitsForEachBudget(hits, resultsTable.Rows.First(), alg.GetNumberOfProblemInstances(), problem, alg.Name, alg.GetNumberOfRuns(problem)); 667 664 } 668 665 } … … 697 694 698 695 private void GenerateDefaultBudgets(string table) { 699 var runs = GroupRuns().SelectMany(x => x.Value.Values).SelectMany(x => x).ToList();696 var runs = Content; 700 697 var min = runs.Select(x => ((IndexedDataTable<double>)x.Results[table]).Rows.First().Values.Select(y => y.Item1).Min()).Min(); 701 698 var max = runs.Select(x => ((IndexedDataTable<double>)x.Results[table]).Rows.First().Values.Select(y => y.Item1).Max()).Max(); … … 1172 1169 } 1173 1170 1171 private class AlgorithmInstance : INotifyPropertyChanged { 1172 private string name; 1173 public string Name { 1174 get { return name; } 1175 set { 1176 if (name == value) return; 1177 name = value; 1178 OnPropertyChanged("Name"); 1179 } 1180 } 1181 1182 private Dictionary<ProblemInstance, List<IRun>> performanceData; 1183 1184 public int GetNumberOfProblemInstances() { 1185 return performanceData.Count; 1186 } 1187 1188 public IEnumerable<ProblemInstance> GetProblemInstances() { 1189 return performanceData.Keys; 1190 } 1191 1192 public int GetNumberOfRuns(ProblemInstance p) { 1193 if (p == ProblemInstance.MatchAll) return performanceData.Select(x => x.Value.Count).Sum(); 1194 List<IRun> runs; 1195 if (performanceData.TryGetValue(p, out runs)) 1196 return runs.Count; 1197 1198 return 0; 1199 } 1200 1201 public IEnumerable<IRun> GetRuns(ProblemInstance p) { 1202 if (p == ProblemInstance.MatchAll) return performanceData.SelectMany(x => x.Value); 1203 List<IRun> runs; 1204 if (performanceData.TryGetValue(p, out runs)) 1205 return runs; 1206 1207 return Enumerable.Empty<IRun>(); 1208 } 1209 1210 public AlgorithmInstance(string name, IEnumerable<IRun> runs, IEnumerable<ProblemInstance> problems) { 1211 this.name = name; 1212 1213 var pDict = problems.ToDictionary(r => r, _ => new List<IRun>()); 1214 foreach (var y in runs) { 1215 var pd = new ProblemInstance(y); 1216 List<IRun> l; 1217 if (pDict.TryGetValue(pd, out l)) l.Add(y); 1218 } 1219 performanceData = pDict.Where(x => x.Value.Count > 0).ToDictionary(x => x.Key, x => x.Value); 1220 } 1221 1222 public override bool Equals(object obj) { 1223 var other = obj as AlgorithmInstance; 1224 if (other == null) return false; 1225 return name == other.name; 1226 } 1227 1228 public override int GetHashCode() { 1229 return name.GetHashCode(); 1230 } 1231 1232 public event PropertyChangedEventHandler PropertyChanged; 1233 protected virtual void OnPropertyChanged(string propertyName = null) { 1234 var handler = PropertyChanged; 1235 if (handler != null) handler(this, new PropertyChangedEventArgs(propertyName)); 1236 } 1237 } 1238 1174 1239 private class ProblemInstance : INotifyPropertyChanged { 1175 1240 private readonly bool matchAll; -
branches/symbreg-factors-2650/HeuristicLab.Optimization.Views/3.3/RunCollectionViews/RunCollectionView.cs
r14185 r14825 52 52 } 53 53 54 public ListView ItemsListView { 55 get { return itemsListView; } 56 } 54 private int EmptyImageIndex { get { return 0; } } 55 private int RunImageIndex { get { return 1; } } 57 56 58 57 public RunCollectionView() { 59 58 InitializeComponent(); 60 itemsGroupBox.Text = "Runs"; 59 UpdateGroupBoxText(); 60 61 itemsListView.SmallImageList.Images.Add(HeuristicLab.Common.Resources.VSImageLibrary.Nothing); 62 itemsListView.SmallImageList.Images.Add(HeuristicLab.Common.Resources.VSImageLibrary.Class); 63 61 64 itemListViewItemMapping = new Dictionary<IRun, List<ListViewItem>>(); 62 65 runCollectionModifiersListView.Evaluator = EvaluateModifications; … … 83 86 } 84 87 private void DeregisterItemEvents(IRun item) { 85 item.ItemImageChanged -= new EventHandler(Item_ItemImageChanged);86 88 item.ToStringChanged -= new EventHandler(Item_ToStringChanged); 87 89 item.PropertyChanged -= Item_PropertyChanged; 88 90 } 89 91 private void RegisterItemEvents(IRun item) { 90 item.ItemImageChanged += new EventHandler(Item_ItemImageChanged);91 92 item.ToStringChanged += new EventHandler(Item_ToStringChanged); 92 93 item.PropertyChanged += Item_PropertyChanged; … … 116 117 itemsListView.Items.Clear(); 117 118 itemListViewItemMapping.Clear(); 118 RebuildImageList();119 119 viewHost.Content = null; 120 121 UpdateGroupBoxText(); 120 122 121 123 if (Content != null) { … … 129 131 runCollectionModifiersListView.Content = RunCollection.Modifiers; 130 132 } 133 134 ListViewItem[] items = new ListViewItem[Content.Count]; 135 int count = 0; 131 136 foreach (IRun item in Content) { 132 137 ListViewItem listViewItem = CreateListViewItem(item); 133 AddListViewItem(listViewItem); 138 134 139 if ((selectedName != null) && item.Name.Equals(selectedName)) 135 140 listViewItem.Selected = true; 136 } 141 items[count] = listViewItem; 142 count++; 143 } 144 itemsListView.Items.AddRange(items); 137 145 AdjustListViewColumnSizes(); 138 146 } else { … … 166 174 } 167 175 168 private ListViewItem CreateListViewItem(IRun item) { 176 private static readonly string tooltipText = ItemAttribute.GetName(typeof(Run)) + ": " + 177 ItemAttribute.GetDescription(typeof(Run)); 178 private ListViewItem CreateListViewItem(IRun run) { 169 179 ListViewItem listViewItem = new ListViewItem(); 170 if ( item== null) {180 if (run == null) { 171 181 listViewItem.Text = "null"; 172 itemsListView.SmallImageList.Images.Add(HeuristicLab.Common.Resources.VSImageLibrary.Nothing); 173 listViewItem.ImageIndex = itemsListView.SmallImageList.Images.Count - 1; 182 listViewItem.ImageIndex = EmptyImageIndex; 183 return listViewItem; 184 } 185 186 listViewItem.Text = run.Name; 187 listViewItem.ToolTipText = tooltipText; 188 listViewItem.ImageIndex = RunImageIndex; 189 listViewItem.Tag = run; 190 191 if (run.Visible) { 192 listViewItem.Font = new Font(listViewItem.Font, FontStyle.Regular); 193 listViewItem.ForeColor = run.Color; 174 194 } else { 175 listViewItem.Text = item.ToString(); 176 listViewItem.ToolTipText = item.ItemName + ": " + item.ItemDescription; 177 itemsListView.SmallImageList.Images.Add(item.ItemImage); 178 listViewItem.ImageIndex = itemsListView.SmallImageList.Images.Count - 1; 179 listViewItem.Tag = item; 180 181 if (item.Visible) { 182 listViewItem.Font = new Font(listViewItem.Font, FontStyle.Regular); 183 listViewItem.ForeColor = item.Color; 184 } else { 185 listViewItem.Font = new Font(listViewItem.Font, FontStyle.Italic); 186 listViewItem.ForeColor = Color.LightGray; 187 } 188 } 195 listViewItem.Font = new Font(listViewItem.Font, FontStyle.Italic); 196 listViewItem.ForeColor = Color.LightGray; 197 } 198 199 if (!itemListViewItemMapping.ContainsKey(run)) { 200 itemListViewItemMapping.Add(run, new List<ListViewItem>()); 201 RegisterItemEvents(run); 202 } 203 itemListViewItemMapping[run].Add(listViewItem); 204 189 205 return listViewItem; 190 206 } 191 private void AddListViewItem(ListViewItem listViewItem) { 192 if (listViewItem == null) throw new ArgumentNullException(); 193 itemsListView.Items.Add(listViewItem); 194 IRun run = listViewItem.Tag as IRun; 195 if (run != null) { 196 if (!itemListViewItemMapping.ContainsKey(run)) { 197 itemListViewItemMapping.Add(run, new List<ListViewItem>()); 198 RegisterItemEvents(run); 199 } 200 itemListViewItemMapping[run].Add(listViewItem); 201 } 202 } 207 203 208 private void RemoveListViewItem(ListViewItem listViewItem) { 204 209 if (listViewItem == null) throw new ArgumentNullException(); … … 213 218 listViewItem.Remove(); 214 219 } 215 private void UpdateListViewItemImage(ListViewItem listViewItem) { 216 if (listViewItem == null) throw new ArgumentNullException(); 217 IRun item = listViewItem.Tag as IRun; 218 int i = listViewItem.ImageIndex; 219 itemsListView.SmallImageList.Images[i] = item == null ? HeuristicLab.Common.Resources.VSImageLibrary.Nothing : item.ItemImage; 220 listViewItem.ImageIndex = -1; 221 listViewItem.ImageIndex = i; 222 } 220 223 221 private void UpdateListViewItemText(ListViewItem listViewItem) { 224 222 if (listViewItem == null) throw new ArgumentNullException(); … … 239 237 return listViewItems == null ? Enumerable.Empty<ListViewItem>() : listViewItems; 240 238 } 239 } 240 241 private void UpdateGroupBoxText() { 242 if (Content == null || Content.Count == 0) itemsGroupBox.Text = "Runs"; 243 else itemsGroupBox.Text = @"Runs (" + Content.Count + @")"; 241 244 } 242 245 … … 393 396 RunCollection.UpdateOfRunsInProgress = true; 394 397 RunCollection.Modify(); 395 } finally { 398 } 399 finally { 396 400 ReadOnly = false; 397 401 RunCollection.UpdateOfRunsInProgress = false; … … 406 410 Invoke(new CollectionItemsChangedEventHandler<IRun>(Content_ItemsAdded), sender, e); 407 411 else { 408 foreach (IRun item in e.Items) 409 AddListViewItem(CreateListViewItem(item)); 410 412 var items = e.Items.Select(CreateListViewItem).ToArray(); 413 itemsListView.Items.AddRange(items); 411 414 AdjustListViewColumnSizes(); 412 415 analyzeRunsToolStripDropDownButton.Enabled = itemsListView.Items.Count > 0; 413 416 clearButton.Enabled = itemsListView.Items.Count > 0 && !Content.IsReadOnly && !ReadOnly; 414 417 runCollectionConstraintCollectionView.ReadOnly = itemsListView.Items.Count == 0; 418 UpdateGroupBoxText(); 415 419 } 416 420 } … … 425 429 if (listViewItem != null) RemoveListViewItem(listViewItem); 426 430 } 427 RebuildImageList();428 431 analyzeRunsToolStripDropDownButton.Enabled = itemsListView.Items.Count > 0; 429 432 clearButton.Enabled = itemsListView.Items.Count > 0 && !Content.IsReadOnly && !ReadOnly; 430 433 runCollectionConstraintCollectionView.ReadOnly = itemsListView.Items.Count == 0; 434 UpdateGroupBoxText(); 431 435 } 432 436 } … … 441 445 if (listViewItem != null) RemoveListViewItem(listViewItem); 442 446 } 443 RebuildImageList(); 444 foreach (IRun item in e.Items) 445 AddListViewItem(CreateListViewItem(item)); 447 var items = e.Items.Select(CreateListViewItem).ToArray(); 448 itemsListView.Items.AddRange(items); 446 449 447 450 AdjustListViewColumnSizes(); … … 449 452 clearButton.Enabled = itemsListView.Items.Count > 0 && !Content.IsReadOnly && !ReadOnly; 450 453 runCollectionConstraintCollectionView.ReadOnly = itemsListView.Items.Count == 0; 454 UpdateGroupBoxText(); 451 455 } 452 456 } … … 456 460 suppressUpdates = RunCollection.UpdateOfRunsInProgress; 457 461 if (!suppressUpdates) { 458 foreach (IRun item in Content) { 459 //remove only the first matching ListViewItem, because the IRun could be contained multiple times in the ItemCollection 460 ListViewItem listViewItem = GetListViewItemsForItem(item).FirstOrDefault(); 461 if (listViewItem != null) RemoveListViewItem(listViewItem); 462 foreach (IRun run in Content) { 463 DeregisterItemEvents(run); 462 464 } 463 RebuildImageList(); 464 foreach (IRun item in Content) 465 AddListViewItem(CreateListViewItem(item)); 465 itemsListView.Items.Clear(); 466 itemListViewItemMapping.Clear(); 467 var items = Content.Select(CreateListViewItem).ToArray(); 468 itemsListView.Items.AddRange(items); 466 469 467 470 AdjustListViewColumnSizes(); … … 469 472 clearButton.Enabled = itemsListView.Items.Count > 0 && !Content.IsReadOnly && !ReadOnly; 470 473 runCollectionConstraintCollectionView.ReadOnly = itemsListView.Items.Count == 0; 474 UpdateGroupBoxText(); 471 475 } 472 476 } … … 475 479 476 480 #region Item Events 477 private void Item_ItemImageChanged(object sender, EventArgs e) {478 if (suppressUpdates) return;479 if (InvokeRequired)480 Invoke(new EventHandler(Item_ItemImageChanged), sender, e);481 else {482 IRun item = (IRun)sender;483 foreach (ListViewItem listViewItem in GetListViewItemsForItem(item))484 UpdateListViewItemImage(listViewItem);485 }486 }487 481 private void Item_ToStringChanged(object sender, EventArgs e) { 488 482 if (suppressUpdates) return; … … 528 522 } 529 523 } 530 private void RebuildImageList() {531 itemsListView.SmallImageList.Images.Clear();532 foreach (ListViewItem listViewItem in itemsListView.Items) {533 IRun item = listViewItem.Tag as IRun;534 itemsListView.SmallImageList.Images.Add(item == null ? HeuristicLab.Common.Resources.VSImageLibrary.Nothing : item.ItemImage);535 listViewItem.ImageIndex = itemsListView.SmallImageList.Images.Count - 1;536 }537 }538 524 #endregion 539 525 } -
branches/symbreg-factors-2650/HeuristicLab.Problems.DataAnalysis.Symbolic
- Property svn:mergeinfo changed
/trunk/sources/HeuristicLab.Problems.DataAnalysis.Symbolic merged: 14809
- Property svn:mergeinfo changed
-
branches/symbreg-factors-2650/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Interpreter/SymbolicDataAnalysisExpressionTreeILEmittingInterpreter.cs
r14715 r14825 260 260 il.Emit(System.Reflection.Emit.OpCodes.Add); 261 261 } 262 il.Emit(System.Reflection.Emit.OpCodes.Ldc_ I4,nArgs);262 il.Emit(System.Reflection.Emit.OpCodes.Ldc_R8, (double)nArgs); 263 263 il.Emit(System.Reflection.Emit.OpCodes.Div); 264 264 return; … … 458 458 il.Emit(System.Reflection.Emit.OpCodes.Ldc_I4_0); // > 0 459 459 il.Emit(System.Reflection.Emit.OpCodes.Cgt); 460 il.Emit(System.Reflection.Emit.OpCodes.Conv_R8); // convert to float64 460 461 il.Emit(System.Reflection.Emit.OpCodes.Ldc_R8, 2.0); // * 2 461 462 il.Emit(System.Reflection.Emit.OpCodes.Mul); … … 476 477 il.Emit(System.Reflection.Emit.OpCodes.Xor); 477 478 } 479 il.Emit(System.Reflection.Emit.OpCodes.Conv_R8); // convert to float64 480 478 481 il.Emit(System.Reflection.Emit.OpCodes.Ldc_R8, 2.0); // * 2 479 482 il.Emit(System.Reflection.Emit.OpCodes.Mul); … … 487 490 488 491 il.Emit(System.Reflection.Emit.OpCodes.Cgt); // 1 (>) / 0 (otherwise) 492 il.Emit(System.Reflection.Emit.OpCodes.Conv_R8); // convert to float64 489 493 il.Emit(System.Reflection.Emit.OpCodes.Ldc_R8, 2.0); // * 2 490 494 il.Emit(System.Reflection.Emit.OpCodes.Mul); … … 497 501 CompileInstructions(il, state, ds); 498 502 il.Emit(System.Reflection.Emit.OpCodes.Clt); 503 il.Emit(System.Reflection.Emit.OpCodes.Conv_R8); // convert to float64 499 504 il.Emit(System.Reflection.Emit.OpCodes.Ldc_R8, 2.0); // * 2 500 505 il.Emit(System.Reflection.Emit.OpCodes.Mul); -
branches/symbreg-factors-2650/HeuristicLab.Problems.DataAnalysis.Views
- Property svn:mergeinfo changed
/trunk/sources/HeuristicLab.Problems.DataAnalysis.Views merged: 14770,14772,14805
- Property svn:mergeinfo changed
-
branches/symbreg-factors-2650/HeuristicLab.Problems.DataAnalysis.Views/3.4/HeuristicLab.Problems.DataAnalysis.Views-3.4.csproj
r14542 r14825 215 215 <Compile Include="Interfaces\IGradientChart.cs" /> 216 216 <Compile Include="Interfaces\IDataPreprocessorStarter.cs" /> 217 <Compile Include="MenuItems\ChangeDataOfOptimizersMenuItem.cs" /> 217 218 <Compile Include="MenuItems\ShrinkDataAnalysisRunsMenuItem.cs" /> 218 219 <Compile Include="ModifiableDatasetView.cs"> -
branches/symbreg-factors-2650/HeuristicLab.Problems.DataAnalysis.Views/3.4/Regression/ConfidenceRegressionSolutionEstimatedValuesView.cs
r14185 r14825 61 61 foreach (var row in Enumerable.Range(0, Content.ProblemData.Dataset.Rows)) { 62 62 estimated_var.MoveNext(); 63 matrix[row, 7] = estimated_var.Current.ToString();63 matrix[row, 8] = estimated_var.Current.ToString(); 64 64 } 65 65 66 66 foreach (var row in Content.ProblemData.TrainingIndices) { 67 67 estimated_var_training.MoveNext(); 68 matrix[row, 8] = estimated_var_training.Current.ToString();68 matrix[row, 9] = estimated_var_training.Current.ToString(); 69 69 } 70 70 71 71 foreach (var row in Content.ProblemData.TestIndices) { 72 72 estimated_var_test.MoveNext(); 73 matrix[row, 9] = estimated_var_test.Current.ToString();73 matrix[row, 10] = estimated_var_test.Current.ToString(); 74 74 } 75 75 -
branches/symbreg-factors-2650/HeuristicLab.Problems.DataAnalysis.Views/3.4/Regression/RegressionSolutionEstimatedValuesView.cs
r14185 r14825 81 81 82 82 protected virtual StringMatrix CreateValueMatrix() { 83 string[,] values = new string[Content.ProblemData.Dataset.Rows, 7];83 string[,] values = new string[Content.ProblemData.Dataset.Rows, 8]; 84 84 85 85 double[] target = Content.ProblemData.Dataset.GetDoubleValues(Content.ProblemData.TargetVariable).ToArray(); … … 101 101 estimated.MoveNext(); 102 102 double est = estimated.Current; 103 double res = Math.Abs(est - target[row]);103 double res = target[row] - est; 104 104 values[row, 0] = row.ToString(); 105 105 values[row, 1] = target[row].ToString(); 106 106 values[row, 2] = est.ToString(); 107 values[row, 5] = Math.Abs(res).ToString(); 108 values[row, 6] = Math.Abs(res / target[row]).ToString(); 107 values[row, 5] = res.ToString(); 108 values[row, 6] = Math.Abs(res).ToString(); 109 values[row, 7] = Math.Abs(res / target[row]).ToString(); 109 110 } 110 111 111 112 var matrix = new StringMatrix(values); 112 matrix.ColumnNames = new string[] { "Id", TARGETVARIABLE_SERIES_NAME, ESTIMATEDVALUES_SERIES_NAME, ESTIMATEDVALUES_TRAINING_SERIES_NAME, ESTIMATEDVALUES_TEST_SERIES_NAME, " Absolute Error (all)", "Relative Error (all)" };113 matrix.ColumnNames = new string[] { "Id", TARGETVARIABLE_SERIES_NAME, ESTIMATEDVALUES_SERIES_NAME, ESTIMATEDVALUES_TRAINING_SERIES_NAME, ESTIMATEDVALUES_TEST_SERIES_NAME, "Residuals (all)", "Absolute Error (all)", "Relative Error (all)" }; 113 114 matrix.SortableView = true; 114 115 return matrix; -
branches/symbreg-factors-2650/HeuristicLab.Problems.DataAnalysis.Views/3.4/Solution Views/DataAnalysisSolutionView.cs
r14185 r14825 29 29 using HeuristicLab.MainForm; 30 30 using HeuristicLab.Optimization; 31 using HeuristicLab.Optimization.Views;32 31 using HeuristicLab.Persistence.Default.Xml; 33 32 using HeuristicLab.PluginInfrastructure; … … 97 96 } 98 97 99 protected override void itemsListView_DoubleClick(object sender, EventArgs e) {98 protected sealed override void itemsListView_DoubleClick(object sender, EventArgs e) { 100 99 if (itemsListView.SelectedItems.Count != 1) return; 101 100 … … 103 102 Type viewType = itemsListView.SelectedItems[0].Tag as Type; 104 103 if (result != null) { 105 IContentView view = MainFormManager.MainForm.ShowContent(result , typeof(ResultView));104 IContentView view = MainFormManager.MainForm.ShowContent(result.Value); 106 105 if (view != null) { 106 view.Caption = result.Name; 107 107 view.ReadOnly = ReadOnly; 108 108 view.Locked = Locked; -
branches/symbreg-factors-2650/HeuristicLab.Problems.Instances.DataAnalysis
- Property svn:mergeinfo changed
/trunk/sources/HeuristicLab.Problems.Instances.DataAnalysis merged: 14789-14791
- Property svn:mergeinfo changed
-
branches/symbreg-factors-2650/HeuristicLab.Problems.Instances.DataAnalysis/3.3/HeuristicLab.Problems.Instances.DataAnalysis-3.3.csproj
r14751 r14825 157 157 <Compile Include="Regression\FeatureSelection\FeatureSelection.cs" /> 158 158 <Compile Include="Regression\FeatureSelection\FeatureSelectionInstanceProvider.cs" /> 159 <Compile Include="Regression\MibaFriction\CF3.cs" /> 160 <Compile Include="Regression\MibaFriction\Wear1.cs" /> 161 <Compile Include="Regression\MibaFriction\Wear2.cs" /> 162 <Compile Include="Regression\MibaFriction\Temp2.cs" /> 163 <Compile Include="Regression\MibaFriction\Temp1.cs" /> 164 <Compile Include="Regression\MibaFriction\NvhRating.cs" /> 165 <Compile Include="Regression\MibaFriction\CF4.cs" /> 166 <Compile Include="Regression\MibaFriction\CF2.cs" /> 167 <Compile Include="Regression\MibaFriction\CF1.cs" /> 168 <Compile Include="Regression\MibaFriction\MibaFrictionRegressionInstanceProvider.cs" /> 159 169 <Compile Include="Regression\VariableNetworks\LinearVariableNetwork.cs" /> 160 170 <Compile Include="Regression\VariableNetworks\GaussianProcessVariableNetwork.cs" /> … … 246 256 <None Include="Properties\AssemblyInfo.cs.frame" /> 247 257 <EmbeddedResource Include="Regression\Data\RegressionRealWorld.zip" /> 258 <EmbeddedResource Include="Regression\Data\MibaFriction.zip" /> 248 259 </ItemGroup> 249 260 <ItemGroup> -
branches/symbreg-factors-2650/HeuristicLab.Services.WebApp.Statistics/3.3/WebApp/clients/clients.cshtml
r12780 r14825 33 33 </div> 34 34 <div class="panel-body"> 35 <table class="table table-hover table-condensed" >35 <table class="table table-hover table-condensed" ts-wrapper> 36 36 <thead> 37 37 <tr> 38 38 <th>#</th> 39 <th >Client Name</th>40 <th >Group Name</th>41 <th >Cores</th>42 <th >Cpu Utilization</th>43 <th >Memory</th>44 <th >State</th>39 <th ts-criteria="Name">Client Name</th> 40 <th ts-criteria="GroupName">Group Name</th> 41 <th ts-criteria="UsedCores">Cores</th> 42 <th ts-criteria="CpuUtilization">Cpu Utilization</th> 43 <th ts-criteria="UsedMemory">Memory</th> 44 <th ts-criteria="State">State</th> 45 45 <th></th> 46 46 </tr> 47 47 </thead> 48 <tr ng-repeat="client in clientPage.Clients" >48 <tr ng-repeat="client in clientPage.Clients" ts-repeat> 49 49 <td>{{($index + 1)+((curClientsPage-1)*(clientsPageSize))}}</td> 50 50 <td>{{client.Name}}</td> … … 81 81 </div> 82 82 <div class="panel-body"> 83 <table class="table table-hover table-condensed" >83 <table class="table table-hover table-condensed" ts-wrapper> 84 84 <thead> 85 85 <tr> 86 86 <th>#</th> 87 <th >Client Name</th>88 <th >Group Name</th>89 <th >Cores</th>90 <th >Cpu Utilization</th>91 <th >Memory</th>92 <th >State</th>87 <th ts-criteria="Name">Client Name</th> 88 <th ts-criteria="GroupName">Group Name</th> 89 <th ts-criteria="UsedCores">Cores</th> 90 <th ts-criteria="CpuUtilization">Cpu Utilization</th> 91 <th ts-criteria="UsedMemory">Memory</th> 92 <th ts-criteria="State">State</th> 93 93 <th></th> 94 94 </tr> 95 95 </thead> 96 <tr ng-repeat="client in expiredClientPage.Clients" >96 <tr ng-repeat="client in expiredClientPage.Clients" ts-repeat> 97 97 <td>{{($index + 1)+((curExpiredClientsPage-1)*(expiredClientsPageSize))}}</td> 98 98 <td>{{client.Name}}</td> -
branches/symbreg-factors-2650/HeuristicLab.Services.WebApp.Statistics/3.3/WebApp/exceptions/exceptions.cshtml
r12778 r14825 30 30 </div> 31 31 <div class="panel-body"> 32 <table class="table table-hover table-condensed" >32 <table class="table table-hover table-condensed" ts-wrapper> 33 33 <thead> 34 34 <tr> 35 35 <th>#</th> 36 <th >Job</th>37 <th >Task</th>38 <th >Username</th>39 <th >Client</th>40 <th >Date</th>36 <th ts-criteria="JobName">Job</th> 37 <th ts-criteria="TaskId">Task</th> 38 <th ts-criteria="UserName">Username</th> 39 <th ts-criteria="ClientName">Client</th> 40 <th ts-criteria="Date">Date</th> 41 41 <th></th> 42 42 </tr> 43 43 </thead> 44 <tr ng-repeat="exception in exceptionPage.Exceptions" >44 <tr ng-repeat="exception in exceptionPage.Exceptions" ts-repeat> 45 45 <td>{{($index + 1)+((curExceptionsPage-1)*(exceptionsPageSize))}}</td> 46 46 <td><a ng-href="#/statistics/jobs/{{exception.JobId}}">{{exception.JobName}}</a></td> -
branches/symbreg-factors-2650/HeuristicLab.Services.WebApp.Statistics/3.3/WebApp/groups/groups.cshtml
r12551 r14825 33 33 </div> 34 34 <div class="panel-body"> 35 <table class="table table-hover table-condensed" >35 <table class="table table-hover table-condensed" ts-wrapper> 36 36 <thead> 37 37 <tr> 38 38 <th>#</th> 39 <th >Group Name</th>40 <th >Cores</th>41 <th >Cpu Utilization</th>42 <th >Memory</th>43 <th >Clients</th>39 <th ts-criteria="Name">Group Name</th> 40 <th ts-criteria="UsedCores">Cores</th> 41 <th ts-criteria="CpuUtilization">Cpu Utilization</th> 42 <th ts-criteria="UsedMemory">Memory</th> 43 <th ts-criteria="OnlineClients">Clients</th> 44 44 <th></th> 45 45 </tr> 46 46 </thead> 47 <tr ng-repeat="group in groupPage.Groups" >47 <tr ng-repeat="group in groupPage.Groups" ts-repeat> 48 48 <td>{{($index + 1)+((curGroupsPage-1)*(groupsPageSize))}}</td> 49 49 <td>{{group.Name}}</td> -
branches/symbreg-factors-2650/HeuristicLab.Services.WebApp.Statistics/3.3/WebApp/jobs/jobs.cshtml
r12778 r14825 33 33 </div> 34 34 <div class="panel-body"> 35 <table class="table table-hover table-condensed" >35 <table class="table table-hover table-condensed" ts-wrapper> 36 36 <thead> 37 37 <tr> 38 38 <th>#</th> 39 <th >Job Name</th>39 <th ts-criteria="Name">Job Name</th> 40 40 @if (Request.IsAuthenticated && User.IsInRole(HiveRoles.Administrator)) { 41 <th >Username</th>41 <th ts-criteria="UserName">Username</th> 42 42 } 43 <th >Date Created</th>43 <th ts-criteria="DateCreated">Date Created</th> 44 44 <th>Progress</th> 45 45 <th></th> … … 47 47 </thead> 48 48 @if (Request.IsAuthenticated && User.IsInRole(HiveRoles.Administrator)) { 49 <tr ng-repeat="job in allUsersJobs" >49 <tr ng-repeat="job in allUsersJobs" ts-repeat> 50 50 <td>{{$index + 1}}</td> 51 51 <td>{{job.Name}}</td> … … 93 93 </div> 94 94 <div class="panel-body"> 95 <table class="table table-hover table-condensed" >95 <table class="table table-hover table-condensed" ts-wrapper> 96 96 <thead> 97 97 <tr> 98 98 <th>#</th> 99 <th >Job Name</th>100 <th >Date Created</th>101 <th >Date Completed</th>102 <th >Tasks</th>99 <th ts-criteria="Name">Job Name</th> 100 <th ts-criteria="DateCreated">Date Created</th> 101 <th ts-criteria="DateCompleted">Date Completed</th> 102 <th ts-criteria="TotalTasks|parseInt">Tasks</th> 103 103 <th></th> 104 104 </tr> 105 105 </thead> 106 <tr ng-repeat="job in completedJobPage.Jobs" >106 <tr ng-repeat="job in completedJobPage.Jobs" ts-repeat> 107 107 <td>{{($index + 1)+((completedJobCurPage-1)*(completedJobPageSize))}}</td> 108 108 <td>{{job.Name}}</td> -
branches/symbreg-factors-2650/HeuristicLab.Services.WebApp.Statistics/3.3/WebApp/users/users.cshtml
r12584 r14825 30 30 </div> 31 31 <div class="panel-body"> 32 <table class="table table-hover table-condensed" >32 <table class="table table-hover table-condensed" ts-wrapper> 33 33 <thead> 34 34 <tr> 35 35 <th>#</th> 36 <th >Username</th>36 <th ts-criteria="Name">Username</th> 37 37 <th></th> 38 38 </tr> 39 39 </thead> 40 <tr ng-repeat="user in users" >40 <tr ng-repeat="user in users" ts-repeat> 41 41 <td>{{$index + 1}}</td> 42 42 <td>{{user.Name}}</td> -
branches/symbreg-factors-2650/HeuristicLab.Services.WebApp.Statistics/3.3/statistics.js
r12560 r14825 2 2 (function () { 3 3 var plugin = appStatisticsPlugin; 4 plugin.dependencies = ['ngResource', 'ui.knob', 'ui.bootstrap', 'ngFitText' ];4 plugin.dependencies = ['ngResource', 'ui.knob', 'ui.bootstrap', 'ngFitText', 'tableSort']; 5 5 plugin.files = [ 6 6 'WebApp/statistics.css', -
branches/symbreg-factors-2650/HeuristicLab.Tests
- Property svn:mergeinfo changed
/trunk/sources/HeuristicLab.Tests merged: 14773,14810
- Property svn:mergeinfo changed
-
branches/symbreg-factors-2650/HeuristicLab.Tests/HeuristicLab-3.3/Samples/GaussianProcessRegressionSampleTest.cs
r14185 r14825 50 50 gpr.Seed = 1618551877; 51 51 SamplesUtils.RunAlgorithm(gpr); 52 Assert.AreEqual(-940. 39914958616748, SamplesUtils.GetDoubleResult(gpr, "NegativeLogLikelihood"));53 Assert.AreEqual(0.9956 14091354263, SamplesUtils.GetDoubleResult(gpr, "Training R²"));52 Assert.AreEqual(-940.60591737780555, SamplesUtils.GetDoubleResult(gpr, "NegativeLogLikelihood")); 53 Assert.AreEqual(0.99560909041069334, SamplesUtils.GetDoubleResult(gpr, "Training R²")); 54 54 } 55 55 -
branches/symbreg-factors-2650/HeuristicLab.Tests/HeuristicLab.Problems.DataAnalysis.Symbolic-3.4/SymbolicDataAnalysisExpressionTreeInterpreterTest.cs
r14185 r14825 182 182 } 183 183 184 /// <summary> 185 ///A test for Evaluate 186 ///</summary> 187 [TestMethod] 188 [TestCategory("Problems.DataAnalysis.Symbolic")] 189 [TestProperty("Time", "short")] 190 public void ILEmittingInterpreterTestEvaluation() { 191 var interpreter = new SymbolicDataAnalysisExpressionTreeILEmittingInterpreter(); 192 EvaluateTerminals(interpreter, ds); 193 EvaluateOperations(interpreter, ds); 194 EvaluateLaggedOperations(interpreter, ds); 195 EvaluateSpecialFunctions(interpreter, ds); 196 } 197 184 198 [TestMethod] 185 199 [TestCategory("Problems.DataAnalysis.Symbolic")] … … 187 201 public void CompiledInterpreterTestEvaluation() { 188 202 var interpreter = new SymbolicDataAnalysisExpressionCompiledTreeInterpreter(); 189 // ADFs are not supported by the compiled tree interpreter190 203 EvaluateTerminals(interpreter, ds); 191 204 EvaluateOperations(interpreter, ds); … … 410 423 try { 411 424 Evaluate(interpreter, ds, "(psi " + x + ")", 0, alglib.psi(x)); 412 } 413 catch (alglib.alglibexception) { // ignore cases where alglib throws an exception 425 } catch (alglib.alglibexception) { // ignore cases where alglib throws an exception 414 426 } 415 427 };
Note: See TracChangeset
for help on using the changeset viewer.