Free cookie consent management tool by TermsFeed Policy Generator

source: branches/2521_ProblemRefactoring/HeuristicLab.Problems.VehicleRouting/3.4/ProblemInstances/SingleDepotVRP/CVRPTWEvaluation.cs @ 18242

Last change on this file since 18242 was 17715, checked in by abeham, 4 years ago

#2521: working on VRP (analyzers)

File size: 2.9 KB
Line 
1#region License Information
2/* HeuristicLab
3 * Copyright (C) Heuristic and Evolutionary Algorithms Laboratory (HEAL)
4 *
5 * This file is part of HeuristicLab.
6 *
7 * HeuristicLab is free software: you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License as published by
9 * the Free Software Foundation, either version 3 of the License, or
10 * (at your option) any later version.
11 *
12 * HeuristicLab is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15 * GNU General Public License for more details.
16 *
17 * You should have received a copy of the GNU General Public License
18 * along with HeuristicLab. If not, see <http://www.gnu.org/licenses/>.
19 */
20#endregion
21
22
23using HEAL.Attic;
24using HeuristicLab.Common;
25using HeuristicLab.Core;
26
27namespace HeuristicLab.Problems.VehicleRouting.ProblemInstances {
28  [Item("CVRPTWInsertionInfo", "")]
29  [StorableType("487635b5-2682-42a2-9ec2-1a210e6ce88c")]
30  public class CVRPTWInsertionInfo : CVRPInsertionInfo {
31
32    [Storable] public double TourStartTime { get; private set; }
33    [Storable] public double ArrivalTime { get; private set; }
34    [Storable] public double LeaveTime { get; private set; }
35    [Storable] public double SpareTime { get; private set; }
36    [Storable] public double WaitingTime { get; private set; }
37
38
39    [StorableConstructor]
40    protected CVRPTWInsertionInfo(StorableConstructorFlag _) : base(_) { }
41    protected CVRPTWInsertionInfo(CVRPTWInsertionInfo original, Cloner cloner)
42      : base(original, cloner) {
43      TourStartTime = original.TourStartTime;
44      ArrivalTime = original.ArrivalTime;
45      LeaveTime = original.LeaveTime;
46      SpareTime = original.SpareTime;
47      WaitingTime = original.WaitingTime;
48    }
49    public CVRPTWInsertionInfo(int start, int end, double spareCapacity, double tourStartTime, double arrivalTime, double leaveTime, double spareTime, double waitingTime)
50      : base(start, end, spareCapacity) {
51      TourStartTime = tourStartTime;
52      ArrivalTime = arrivalTime;
53      LeaveTime = leaveTime;
54      SpareTime = spareTime;
55      WaitingTime = waitingTime;
56    }
57  }
58
59  [Item("CVRPTWEvaluation", "")]
60  [StorableType("b3b31244-5ac8-4007-9ae6-249e2a7d5321")]
61  public class CVRPTWEvaluation : CVRPEvaluation {
62    [Storable] public double Tardiness { get; set; }
63    [Storable] public double TravelTime { get; set; }
64
65    [StorableConstructor]
66    protected CVRPTWEvaluation(StorableConstructorFlag _) : base(_) { }
67    protected CVRPTWEvaluation(CVRPTWEvaluation original, Cloner cloner)
68      : base(original, cloner) {
69      Tardiness = original.Tardiness;
70      TravelTime = original.TravelTime;
71    }
72    public CVRPTWEvaluation() { }
73
74    public override IDeepCloneable Clone(Cloner cloner) {
75      return new CVRPTWEvaluation(this, cloner);
76    }
77  }
78}
Note: See TracBrowser for help on using the repository browser.