Free cookie consent management tool by TermsFeed Policy Generator

Changeset 6412


Ignore:
Timestamp:
06/14/11 14:53:14 (13 years ago)
Author:
jhelm
Message:

#1329: Did some minor changes affecting datatypes.

Location:
branches/Scheduling
Files:
23 edited

Legend:

Unmodified
Added
Removed
  • branches/Scheduling/HeuristicLab.Encodings.ScheduleEncoding.Views/3.3

    • Property svn:ignore set to
      HeuristicLab.Encodings.ScheduleEncoding.Views-3.3.csproj.user
      bin
      obj
  • branches/Scheduling/HeuristicLab.Encodings.ScheduleEncoding.Views/3.3/Plugin.cs

    r6406 r6412  
    2323
    2424namespace HeuristicLab.Encodings.ScheduleEncoding.Views {
    25   [Plugin("HeuristicLab.Encodings.ScheduleEncoding.Views", "3.3.3.0")]
     25  [Plugin("HeuristicLab.Encodings.ScheduleEncoding.Views", "3.3.3.6406")]
    2626  [PluginFile("HeuristicLab.Encodings.ScheduleEncoding.Views-3.3.dll", PluginFileType.Assembly)]
    2727  public class HeuristicLabEncodingsScheduleEncodingViewsPlugin : PluginBase {
  • branches/Scheduling/HeuristicLab.Encodings.ScheduleEncoding.Views/3.3/Properties/AssemblyInfo.cs

    r6406 r6412  
    5555// [assembly: AssemblyVersion("1.0.*")]
    5656[assembly: AssemblyVersion("3.3.0.0")]
    57 [assembly: AssemblyFileVersion("3.3.3.0")]
     57[assembly: AssemblyFileVersion("3.3.3.6406")]
  • branches/Scheduling/HeuristicLab.Encodings.ScheduleEncoding.Views/3.3/ScheduleView.cs

    r6406 r6412  
    7575          string categoryName = "ScheduleTasks";
    7676          if (t is ScheduledTask) {
    77             categoryNr = ((ScheduledTask)t).JobNr.Value;
     77            categoryNr = ((ScheduledTask)t).JobNr;
    7878            categoryName = "Job" + categoryNr;
    7979            toolTip = categoryName + " - " + toolTip;
     
    8282          ganttChart.AddData("Resource" + r.Index,
    8383            categoryNr,
    84             t.StartTime.Value,
    85             t.EndTime.Value,
     84            t.StartTime,
     85            t.EndTime,
    8686            toolTip);
    8787        }
  • branches/Scheduling/HeuristicLab.Encodings.ScheduleEncoding/3.3

    • Property svn:ignore set to
      HeuristicLab.Encodings.ScheduleEncoding-3.3.csproj.user
      bin
      obj
  • branches/Scheduling/HeuristicLab.Encodings.ScheduleEncoding/3.3/Plugin.cs

    r6406 r6412  
    2323
    2424namespace HeuristicLab.Encodings.ScheduleEncoding {
    25   [Plugin("HeuristicLab.Encodings.ScheduleEncoding", "3.3.3.0")]
     25  [Plugin("HeuristicLab.Encodings.ScheduleEncoding", "3.3.3.6406")]
    2626  [PluginFile("HeuristicLab.Encodings.ScheduleEncoding-3.3.dll", PluginFileType.Assembly)]
    2727  public class HeuristicLabEncodingsScheduleEncodingPlugin : PluginBase {
  • branches/Scheduling/HeuristicLab.Encodings.ScheduleEncoding/3.3/Properties/AssemblyInfo.cs

    r6406 r6412  
    5555// [assembly: AssemblyVersion("1.0.*")]
    5656[assembly: AssemblyVersion("3.3.0.0")]
    57 [assembly: AssemblyFileVersion("3.3.3.0")]
     57[assembly: AssemblyFileVersion("3.3.3.6406")]
  • branches/Scheduling/HeuristicLab.Encodings.ScheduleEncoding/3.3/ScheduleEncoding/Resource.cs

    r6406 r6412  
    2323using HeuristicLab.Common;
    2424using HeuristicLab.Core;
    25 using HeuristicLab.Data;
    2625using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
    2726
     
    4544      set;
    4645    }
    47     public DoubleValue TotalDuration {
     46    public double TotalDuration {
    4847      get {
    4948        double result = 0;
    5049        foreach (ScheduledTask t in Tasks) {
    51           if (t.EndTime.Value > result)
    52             result = t.EndTime.Value;
     50          if (t.EndTime > result)
     51            result = t.EndTime;
    5352        }
    54         return new DoubleValue(result);
     53        return result;
    5554      }
    5655    }
  • branches/Scheduling/HeuristicLab.Encodings.ScheduleEncoding/3.3/ScheduleEncoding/Schedule.cs

    r6406 r6412  
    117117    public void ScheduleTask(int resNr, double startTime, double duration, int jobNr) {
    118118      ScheduledTask task = new ScheduledTask(resNr, startTime, duration, jobNr);
    119       Resource affectedResource = resources[task.ResourceNr.Value];
     119      Resource affectedResource = resources[task.ResourceNr];
    120120      int i = 0;
    121       while (i < affectedResource.Tasks.Count && affectedResource.Tasks[i].StartTime.Value < task.StartTime.Value)
     121      while (i < affectedResource.Tasks.Count && affectedResource.Tasks[i].StartTime < task.StartTime)
    122122        i++;
    123123
     
    153153      double quality = 0;
    154154      foreach (Resource r in Resources) {
    155         if (r.TotalDuration.Value > quality) {
    156           quality = r.TotalDuration.Value;
     155        if (r.TotalDuration > quality) {
     156          quality = r.TotalDuration;
    157157        }
    158158      }
  • branches/Scheduling/HeuristicLab.Encodings.ScheduleEncoding/3.3/ScheduleEncoding/ScheduledTask.cs

    r6406 r6412  
    2323using HeuristicLab.Common;
    2424using HeuristicLab.Core;
    25 using HeuristicLab.Data;
    2625using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
    2726
     
    3231    #region Properties
    3332    [Storable]
    34     public IntValue ResourceNr { get; set; }
     33    public int ResourceNr { get; set; }
    3534    [Storable]
    36     public DoubleValue Duration { get; set; }
     35    public double Duration { get; set; }
    3736    [Storable]
    38     public DoubleValue StartTime { get; set; }
    39     public DoubleValue EndTime {
     37    public double StartTime { get; set; }
     38    public double EndTime {
    4039      get {
    41         return new DoubleValue(Duration.Value + StartTime.Value);
     40        return Duration + StartTime;
    4241      }
    4342    }
    4443    [Storable]
    45     public IntValue JobNr { get; set; }
     44    public int JobNr { get; set; }
    4645    #endregion
    4746
     
    5049    protected ScheduledTask(ScheduledTask original, Cloner cloner)
    5150      : base(original, cloner) {
    52       this.ResourceNr = cloner.Clone(original.ResourceNr);
    53       this.Duration = cloner.Clone(original.Duration);
    54       this.StartTime = cloner.Clone(original.StartTime);
    55       this.JobNr = cloner.Clone(original.JobNr);
     51      this.ResourceNr = original.ResourceNr;
     52      this.Duration = original.Duration;
     53      this.StartTime = original.StartTime;
     54      this.JobNr = original.JobNr;
    5655    }
    5756    public override IDeepCloneable Clone(Cloner cloner) {
     
    6160    public ScheduledTask(int resNr, double startTime, double duration, int jobNr)
    6261      : base() {
    63       Duration = new DoubleValue(duration);
    64       ResourceNr = new IntValue(resNr);
    65       StartTime = new DoubleValue(startTime);
    66       JobNr = new IntValue(jobNr);
     62      Duration = duration;
     63      ResourceNr = resNr;
     64      StartTime = startTime;
     65      JobNr = jobNr;
    6766    }
    6867
  • branches/Scheduling/HeuristicLab.Problems.Scheduling.Views/3.3/JobShopSchedulingProblemView.cs

    r6294 r6412  
    2424using HeuristicLab.Core;
    2525using HeuristicLab.Core.Views;
    26 using HeuristicLab.Data;
    2726using HeuristicLab.MainForm;
    28 using HeuristicLab.Parameters;
    2927using HeuristicLab.PluginInfrastructure;
    30 using System.Drawing;
    3128
    3229namespace HeuristicLab.Problems.Scheduling.Views {
     
    6360        double lastEndTime = 0;
    6461        foreach (Task t in content.JobData[jobCount].Tasks) {
    65           int categoryNr = t.JobNr.Value;
     62          int categoryNr = t.JobNr;
    6663          string categoryName = "Job" + categoryNr;
    6764          ganttChart.AddJobColor(categoryNr);
     
    6966            categoryNr,
    7067            lastEndTime + 1,
    71             lastEndTime + t.Duration.Value,
    72             "Job" + t.JobNr + " - " + "Task#" + t.TaskNr.Value.ToString());
    73           lastEndTime += t.Duration.Value;
     68            lastEndTime + t.Duration,
     69            "Job" + t.JobNr + " - " + "Task#" + t.TaskNr.ToString());
     70          lastEndTime += t.Duration;
    7471        }
    7572        jobCount++;
  • branches/Scheduling/HeuristicLab.Problems.Scheduling.Views/3.3/Plugin.cs

    r6406 r6412  
    2323
    2424namespace HeuristicLab.Problems.Scheduling.Views {
    25   [Plugin("HeuristicLab.Problems.Scheduling.Views", "3.3.3.6364")]
     25  [Plugin("HeuristicLab.Problems.Scheduling.Views", "3.3.3.6406")]
    2626  [PluginFile("HeuristicLab.Problems.Scheduling.Views-3.3.dll", PluginFileType.Assembly)]
    2727  public class HeuristicLabProblemsSchedulingViewsPlugin : PluginBase {
  • branches/Scheduling/HeuristicLab.Problems.Scheduling.Views/3.3/Properties/AssemblyInfo.cs

    r6406 r6412  
    5353// by using the '*' as shown below:
    5454[assembly: AssemblyVersion("3.3.0.0")]
    55 [assembly: AssemblyFileVersion("3.3.0.6364")]
     55[assembly: AssemblyFileVersion("3.3.0.6406")]
  • branches/Scheduling/HeuristicLab.Problems.Scheduling/3.3/Decoders/GTAlgorithmUtils.cs

    r6406 r6412  
    3131      foreach (Job j in jobData) {
    3232        foreach (Task t in j.Tasks) {
    33           if (!t.IsScheduled.Value) {
     33          if (!t.IsScheduled) {
    3434            result.Add(t);
    3535            break;
     
    5656      result.Add(conflictedTask);
    5757      foreach (Task t in earliestTasksList) {
    58         if (t.ResourceNr.Value == conflictedTask.ResourceNr.Value) {
     58        if (t.ResourceNr == conflictedTask.ResourceNr) {
    5959          if (ComputeEarliestStartTime(t, schedule) < conflictedCompletionTime)
    6060            result.Add(t);
     
    6565
    6666    public static double ComputeEarliestStartTime(Task t, Schedule schedule) {
    67       ScheduledTask previousTask = schedule.GetLastScheduledTaskForJobNr(t.JobNr.Value);
    68       Resource affectedResource = schedule.Resources[t.ResourceNr.Value];
    69       double lastMachineEndTime = affectedResource.TotalDuration.Value;
     67      ScheduledTask previousTask = schedule.GetLastScheduledTaskForJobNr(t.JobNr);
     68      Resource affectedResource = schedule.Resources[t.ResourceNr];
     69      double lastMachineEndTime = affectedResource.TotalDuration;
    7070      double previousJobTaskEndTime = 0;
    7171      if (previousTask != null)
    72         previousJobTaskEndTime = previousTask.EndTime.Value;
     72        previousJobTaskEndTime = previousTask.EndTime;
    7373
    7474      return Math.Max(previousJobTaskEndTime, lastMachineEndTime);
    7575    }
    7676    public static double ComputeEarliestCompletionTime(Task t, Schedule schedule) {
    77       return ComputeEarliestStartTime(t, schedule) + t.Duration.Value;
     77      return ComputeEarliestStartTime(t, schedule) + t.Duration;
    7878    }
    7979  }
  • branches/Scheduling/HeuristicLab.Problems.Scheduling/3.3/Decoders/JSMDecoder.cs

    r6406 r6412  
    8686      //scan conflictSet for given solutionCandidate, and return if found
    8787      foreach (Task t in conflictSet) {
    88         if (t.JobNr.Value == solutionCandidateJobNr)
     88        if (t.JobNr == solutionCandidateJobNr)
    8989          return t;
    9090      }
     
    9494      int newResolutionIndex = 0;
    9595
    96       while (newResolutionIndex < jsm[conflictedResourceNr].Length && jsm[conflictedResourceNr][newResolutionIndex] != result.JobNr.Value)
     96      while (newResolutionIndex < jsm[conflictedResourceNr].Length && jsm[conflictedResourceNr][newResolutionIndex] != result.JobNr)
    9797        newResolutionIndex++;
    98       ApplyForcingStrategy(jsm, conflictedResourceNr, newResolutionIndex, progressOnConflictedResource, result.JobNr.Value);
     98      ApplyForcingStrategy(jsm, conflictedResourceNr, newResolutionIndex, progressOnConflictedResource, result.JobNr);
    9999
    100100      return result;
     
    108108        for (int i = progress; i < resource.Length; i++) {
    109109          int j = 0;
    110           while (j < conflictSet.Count && conflictSet[j].JobNr.Value != resource[i])
     110          while (j < conflictSet.Count && conflictSet[j].JobNr != resource[i])
    111111            j++;
    112112
     
    145145      foreach (Job j in jobs) {
    146146        foreach (Task t in j.Tasks) {
    147           t.IsScheduled.Value = false;
     147          t.IsScheduled = false;
    148148        }
    149149      }
     
    155155        //STEP 1 - Get earliest not scheduled operation with minimal earliest completing time
    156156        Task minimal = GTAlgorithmUtils.GetTaskWithMinimalEC(earliestTasksList, resultingSchedule);
    157         int conflictedResourceNr = minimal.ResourceNr.Value;
     157        int conflictedResourceNr = minimal.ResourceNr;
    158158        Resource conflictedResource = resultingSchedule.Resources[conflictedResourceNr];
    159159
     
    166166
    167167        //STEP 4 - Add the selected task to the current schedule
    168         selectedTask.IsScheduled.Value = true;
     168        selectedTask.IsScheduled = true;
    169169        double startTime = GTAlgorithmUtils.ComputeEarliestStartTime(selectedTask, resultingSchedule);
    170         resultingSchedule.ScheduleTask(selectedTask.ResourceNr.Value, startTime, selectedTask.Duration.Value, selectedTask.JobNr.Value);
     170        resultingSchedule.ScheduleTask(selectedTask.ResourceNr, startTime, selectedTask.Duration, selectedTask.JobNr);
    171171
    172172        //STEP 5 - Back to STEP 1
  • branches/Scheduling/HeuristicLab.Problems.Scheduling/3.3/Decoders/PRVDecoder.cs

    r6406 r6412  
    7272      Task currentResult = RandomRule(tasks);
    7373      foreach (Task t in tasks) {
    74         if (t.Duration.Value < currentResult.Duration.Value)
     74        if (t.Duration < currentResult.Duration)
    7575          currentResult = t;
    7676      }
     
    8282      Task currentResult = RandomRule(tasks);
    8383      foreach (Task t in tasks) {
    84         if (t.Duration.Value > currentResult.Duration.Value)
     84        if (t.Duration > currentResult.Duration)
    8585          currentResult = t;
    8686      }
     
    9494      foreach (Task t in tasks) {
    9595        double remainingProcessingTime = 0;
    96         foreach (Task jt in jobs[t.JobNr.Value].Tasks) {
    97           if (!jt.IsScheduled.Value)
    98             remainingProcessingTime += jt.Duration.Value;
     96        foreach (Task jt in jobs[t.JobNr].Tasks) {
     97          if (!jt.IsScheduled)
     98            remainingProcessingTime += jt.Duration;
    9999        }
    100100        if (remainingProcessingTime > currentLargestRemainingProcessingTime) {
     
    112112      foreach (Task t in tasks) {
    113113        double remainingProcessingTime = 0;
    114         foreach (Task jt in jobs[t.JobNr.Value].Tasks) {
    115           if (!jt.IsScheduled.Value)
    116             remainingProcessingTime += jt.Duration.Value;
     114        foreach (Task jt in jobs[t.JobNr].Tasks) {
     115          if (!jt.IsScheduled)
     116            remainingProcessingTime += jt.Duration;
    117117        }
    118118        if (remainingProcessingTime < currentSmallestRemainingProcessingTime) {
     
    130130      foreach (Task t in tasks) {
    131131        int nrOfRemainingTasks = 0;
    132         foreach (Task jt in jobs[t.JobNr.Value].Tasks) {
    133           if (!jt.IsScheduled.Value)
     132        foreach (Task jt in jobs[t.JobNr].Tasks) {
     133          if (!jt.IsScheduled)
    134134            nrOfRemainingTasks++;
    135135        }
     
    148148      foreach (Task t in tasks) {
    149149        int nrOfRemainingTasks = 0;
    150         foreach (Task jt in jobs[t.JobNr.Value].Tasks) {
    151           if (!jt.IsScheduled.Value)
     150        foreach (Task jt in jobs[t.JobNr].Tasks) {
     151          if (!jt.IsScheduled)
    152152            nrOfRemainingTasks++;
    153153        }
     
    218218      foreach (Job j in jobs) {
    219219        foreach (Task t in j.Tasks) {
    220           t.IsScheduled.Value = false;
     220          t.IsScheduled = false;
    221221        }
    222222      }
     
    235235        //STEP 3 - Select an operation from the conflict set (various methods depending on how the algorithm should work..)
    236236        //Task selectedTask = SelectTaskFromConflictSet(conflictSet, solution.PriorityRulesVector [currentDecisionIndex++], solution.NrOfRules.Value);
    237         Task selectedTask = SelectTaskFromConflictSet(conflictSet, solution.PriorityRulesVector[minimal.JobNr.Value], solution.NrOfRules.Value);
     237        Task selectedTask = SelectTaskFromConflictSet(conflictSet, solution.PriorityRulesVector[minimal.JobNr], solution.NrOfRules.Value);
    238238
    239239        //STEP 4 - Adding the selected operation to the current schedule
    240         selectedTask.IsScheduled.Value = true;
     240        selectedTask.IsScheduled = true;
    241241        double startTime = GTAlgorithmUtils.ComputeEarliestStartTime(selectedTask, resultingSchedule);
    242         resultingSchedule.ScheduleTask(selectedTask.ResourceNr.Value, startTime, selectedTask.Duration.Value, selectedTask.JobNr.Value);
     242        resultingSchedule.ScheduleTask(selectedTask.ResourceNr, startTime, selectedTask.Duration, selectedTask.JobNr);
    243243
    244244        //STEP 5 - Back to STEP 1
  • branches/Scheduling/HeuristicLab.Problems.Scheduling/3.3/Decoders/PWRDecoder.cs

    r6406 r6412  
    6060      foreach (int jobNr in solution.PermutationWithRepetition) {
    6161        int i = 0;
    62         while (jobs[jobNr].Tasks[i].IsScheduled.Value) i++;
     62        while (jobs[jobNr].Tasks[i].IsScheduled) i++;
    6363        Task currentTask = jobs[jobNr].Tasks[i];
    6464        double startTime = GTAlgorithmUtils.ComputeEarliestStartTime(currentTask, resultingSchedule);
    65         currentTask.IsScheduled.Value = true;
    66         resultingSchedule.ScheduleTask(currentTask.ResourceNr.Value, startTime, currentTask.Duration.Value, currentTask.JobNr.Value);
     65        currentTask.IsScheduled = true;
     66        resultingSchedule.ScheduleTask(currentTask.ResourceNr, startTime, currentTask.Duration, currentTask.JobNr);
    6767      }
    6868      return resultingSchedule;
  • branches/Scheduling/HeuristicLab.Problems.Scheduling/3.3/Evaluators/MakespanEvaluator.cs

    r6406 r6412  
    4444      DoubleValue quality = new DoubleValue(0);
    4545      foreach (Resource r in schedule.Resources) {
    46         if (r.TotalDuration.Value > quality.Value) {
    47           quality.Value = r.TotalDuration.Value;
     46        if (r.TotalDuration > quality.Value) {
     47          quality.Value = r.TotalDuration;
    4848        }
    4949      }
  • branches/Scheduling/HeuristicLab.Problems.Scheduling/3.3/Evaluators/MeanTardinessEvaluator.cs

    r6406 r6412  
    5959      double totalTardiness = 0;
    6060      foreach (Resource r in schedule.Resources) {
    61         double tardiness = r.Tasks[r.Tasks.Count - 1].EndTime.Value - JobData[r.Tasks[r.Tasks.Count - 1].JobNr.Value].DueDate.Value;
     61        double tardiness = r.Tasks[r.Tasks.Count - 1].EndTime - JobData[r.Tasks[r.Tasks.Count - 1].JobNr].DueDate;
    6262        if (tardiness > 0)
    6363          totalTardiness += tardiness;
  • branches/Scheduling/HeuristicLab.Problems.Scheduling/3.3/Job.cs

    r6406 r6412  
    2323using HeuristicLab.Common;
    2424using HeuristicLab.Core;
    25 using HeuristicLab.Data;
    2625using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
    2726
    2827namespace HeuristicLab.Problems.Scheduling {
    29   [Item("Job Class", "Represents a composition of tasks that require processing in a scheduling problem.")]
     28  [Item("Job", "Represents a composition of tasks that require processing in a scheduling problem.")]
    3029  [StorableClass]
    3130  public class Job : Item {
    3231    [Storable]
    33     public DoubleValue DueDate { get; set; }
     32    public double DueDate { get; set; }
    3433    [Storable]
    35     public IntValue Index { get; set; }
     34    public int Index { get; set; }
    3635    [Storable]
    3736    public ItemList<Task> Tasks { get; set; }
     
    4140    protected Job(Job original, Cloner cloner)
    4241      : base(original, cloner) {
    43       this.DueDate = cloner.Clone(original.DueDate);
    44       this.Index = cloner.Clone(original.Index);
     42      this.DueDate = original.DueDate;
     43      this.Index = original.Index;
    4544      this.Tasks = cloner.Clone(original.Tasks);
    4645    }
     
    4847      return new Job(this, cloner);
    4948    }
    50     public Job(IntValue index, DoubleValue dueDate)
     49    public Job(int index, double dueDate)
    5150      : base() {
    5251      Index = index;
     
    5453
    5554      if (dueDate != null)
    56         DueDate = (DoubleValue)dueDate.Clone();
    57       else
    58         DueDate = null;
     55        DueDate = dueDate;
     56
    5957    }
    6058
     
    6664      }
    6765      if (DueDate != null)
    68         sb.Append("{" + DueDate.Value + "} ");
     66        sb.Append("{" + DueDate + "} ");
    6967      sb.Append("]");
    7068      return sb.ToString();
     
    7270
    7371    internal Task GetPreviousTask(Task t) {
    74       if (t.TaskNr.Value == 0)
     72      if (t.TaskNr == 0)
    7573        return null;
    7674      else
    77         return Tasks[t.TaskNr.Value - 1];
     75        return Tasks[t.TaskNr - 1];
    7876    }
    7977  }
  • branches/Scheduling/HeuristicLab.Problems.Scheduling/3.3/JobShopSchedulingProblem.cs

    r6406 r6412  
    2222using System;
    2323using System.Collections.Generic;
     24using System.Drawing;
    2425using System.IO;
    2526using HeuristicLab.Common;
     
    3940  [Creatable("Problems")]
    4041  [StorableClass]
    41   public sealed class JobShopSchedulingProblem : SchedulingProblem {
     42  public sealed class JobShopSchedulingProblem : SchedulingProblem, IStorableContent {
    4243    #region Parameter Properties
    4344    public ValueParameter<ItemList<Job>> JobDataParameter {
     
    8788      set { DueDatesParameter.Value = value; }
    8889    }
     90    public override Image ItemImage {
     91      get { return HeuristicLab.Common.Resources.VSImageLibrary.Type; }
     92    }
     93    public string Filename { get; set; }
    8994    #endregion
    9095
     
    95100
    96101      Parameters.Add(new ValueParameter<IntValue>("Jobs", "The number of jobs used in this JSSP instance.", new IntValue()));
    97       Parameters.Add(new ValueParameter<IntValue>("Resources", "The number of resources used this JSSP instance.", new IntValue()));
     102      Parameters.Add(new ValueParameter<IntValue>("Resources", "The number of resources used in this JSSP instance.", new IntValue()));
    98103      Parameters.Add(new ValueParameter<BoolValue>("DueDates", "Determines whether the problem instance uses due dates or not.", new BoolValue()));
    99104      Parameters.Add(new ValueParameter<SchedulingEvaluator>("SolutionEvaluator", "The evaluator used to determine the quality of a solution.", new MakespanEvaluator()));
     
    196201    }
    197202    private Job CreateJobFromData(List<string> data, int jobCount) {
    198       DoubleValue dueDate = null;
     203      double dueDate = 0;
    199204      int dataCount = data.Count;
    200205      if (DueDates.Value) {
    201         dueDate = new DoubleValue(Double.Parse(data[data.Count - 1]));
     206        dueDate = Double.Parse(data[data.Count - 1]);
    202207        dataCount--;
    203208      }
    204       Job j = new Job(new IntValue(jobCount), dueDate);
     209      Job j = new Job(jobCount, dueDate);
    205210      for (int i = 0; i < dataCount; i++) {
    206211        Task t = new Task(i / 2, Int32.Parse(data[i]), jobCount, Double.Parse(data[i + 1]));
  • branches/Scheduling/HeuristicLab.Problems.Scheduling/3.3/Plugin.cs

    r6406 r6412  
    2323
    2424namespace HeuristicLab.Problems.Scheduling {
    25   [Plugin("HeuristicLab.Problems.Scheduling", "3.3.3.6364")]
     25  [Plugin("HeuristicLab.Problems.Scheduling", "3.3.3.6406")]
    2626  [PluginFile("HeuristicLab.Problems.Scheduling-3.3.dll", PluginFileType.Assembly)]
    2727  public class HeuristicLabProblemsSchedulingPlugin : PluginBase {
  • branches/Scheduling/HeuristicLab.Problems.Scheduling/3.3/Task.cs

    r6406 r6412  
    2323using HeuristicLab.Common;
    2424using HeuristicLab.Core;
    25 using HeuristicLab.Data;
    2625using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
    2726
     
    3130  public class Task : Item {
    3231    [Storable]
    33     public IntValue TaskNr { get; set; }
     32    public int TaskNr { get; set; }
    3433    [Storable]
    35     public IntValue ResourceNr { get; set; }
     34    public int ResourceNr { get; set; }
    3635    [Storable]
    37     public IntValue JobNr { get; set; }
     36    public int JobNr { get; set; }
    3837    [Storable]
    39     public DoubleValue Duration { get; set; }
     38    public double Duration { get; set; }
    4039    [Storable]
    41     public BoolValue IsScheduled { get; set; }
     40    public bool IsScheduled { get; set; }
    4241
    4342    [StorableConstructor]
     
    4544    protected Task(Task original, Cloner cloner)
    4645      : base(original, cloner) {
    47       this.ResourceNr = cloner.Clone(original.ResourceNr);
    48       this.JobNr = cloner.Clone(original.JobNr);
    49       this.Duration = cloner.Clone(original.Duration);
    50       this.TaskNr = cloner.Clone(original.TaskNr);
    51       this.IsScheduled = cloner.Clone(original.IsScheduled);
     46      this.ResourceNr = original.ResourceNr;
     47      this.JobNr = original.JobNr;
     48      this.Duration = original.Duration;
     49      this.TaskNr = original.TaskNr;
     50      this.IsScheduled = original.IsScheduled;
    5251    }
    5352    public override IDeepCloneable Clone(Cloner cloner) {
     
    5857    public Task(int taskNr, int resNr, int jobNr, double duration)
    5958      : base() {
    60       Duration = new DoubleValue(duration);
    61       ResourceNr = new IntValue(resNr);
    62       JobNr = new IntValue(jobNr);
    63       TaskNr = new IntValue(taskNr);
    64       IsScheduled = new BoolValue(false);
     59      Duration = duration;
     60      ResourceNr = resNr;
     61      JobNr = jobNr;
     62      TaskNr = taskNr;
     63      IsScheduled = false;
    6564    }
    6665
Note: See TracChangeset for help on using the changeset viewer.