Index: branches/Scheduling/HeuristicLab.Problems.Scheduling/3.3/Evaluators/SchedulingEvaluationAlgorithm.cs
===================================================================
--- branches/Scheduling/HeuristicLab.Problems.Scheduling/3.3/Evaluators/SchedulingEvaluationAlgorithm.cs	(revision 6414)
+++ branches/Scheduling/HeuristicLab.Problems.Scheduling/3.3/Evaluators/SchedulingEvaluationAlgorithm.cs	(revision 6475)
@@ -54,4 +54,9 @@
     }
 
+    public void InitializeOperatorGraph<T>() where T : Item, IScheduleEncoding {
+      OperatorGraph.Operators.Clear();
+      OperatorGraph.InitialOperator = evaluator;
+    }
+
     public void InitializeOperatorGraph<T>(ScheduleDecoder<T> decoder) where T : Item, IScheduleEncoding {
       OperatorGraph.Operators.Clear();
Index: branches/Scheduling/HeuristicLab.Problems.Scheduling/3.3/HeuristicLab.Problems.Scheduling-3.3.csproj
===================================================================
--- branches/Scheduling/HeuristicLab.Problems.Scheduling/3.3/HeuristicLab.Problems.Scheduling-3.3.csproj	(revision 6414)
+++ branches/Scheduling/HeuristicLab.Problems.Scheduling/3.3/HeuristicLab.Problems.Scheduling-3.3.csproj	(revision 6475)
@@ -50,5 +50,4 @@
     <Compile Include="Analyzers\BestSchedulingSolutionAnalyzer.cs" />
     <Compile Include="Analyzers\SchedulingAnalyzer.cs" />
-    <Compile Include="Decoders\GTAlgorithmUtils.cs" />
     <Compile Include="Decoders\JSMDecoder.cs" />
     <Compile Include="Decoders\JSMDecodingErrorPolicyTypes.cs" />
@@ -60,8 +59,6 @@
     <Compile Include="Evaluators\SchedulingEvaluator.cs" />
     <Compile Include="Interfaces\IJSSPOperator.cs" />
-    <Compile Include="Job.cs" />
     <Compile Include="JobShopSchedulingProblem.cs" />
     <Compile Include="Evaluators\SchedulingEvaluationAlgorithm.cs" />
-    <Compile Include="Task.cs" />
     <Compile Include="SchedulingProblem.cs" />
     <Compile Include="Plugin.cs" />
Index: branches/Scheduling/HeuristicLab.Problems.Scheduling/3.3/Interfaces/IJSSPOperator.cs
===================================================================
--- branches/Scheduling/HeuristicLab.Problems.Scheduling/3.3/Interfaces/IJSSPOperator.cs	(revision 6414)
+++ branches/Scheduling/HeuristicLab.Problems.Scheduling/3.3/Interfaces/IJSSPOperator.cs	(revision 6475)
@@ -1,3 +1,4 @@
 ﻿using HeuristicLab.Core;
+using HeuristicLab.Encodings.ScheduleEncoding;
 
 namespace HeuristicLab.Problems.Scheduling {
Index: branches/Scheduling/HeuristicLab.Problems.Scheduling/3.3/Job.cs
===================================================================
--- branches/Scheduling/HeuristicLab.Problems.Scheduling/3.3/Job.cs	(revision 6414)
+++ 	(revision )
@@ -1,78 +1,0 @@
-﻿#region License Information
-/* HeuristicLab
- * Copyright (C) 2002-2011 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
- *
- * This file is part of HeuristicLab.
- *
- * HeuristicLab is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * HeuristicLab is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with HeuristicLab. If not, see <http://www.gnu.org/licenses/>.
- */
-#endregion
-
-using System.Text;
-using HeuristicLab.Common;
-using HeuristicLab.Core;
-using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
-
-namespace HeuristicLab.Problems.Scheduling {
-  [Item("Job", "Represents a composition of tasks that require processing in a scheduling problem.")]
-  [StorableClass]
-  public class Job : Item {
-    [Storable]
-    public double DueDate { get; set; }
-    [Storable]
-    public int Index { get; set; }
-    [Storable]
-    public ItemList<Task> Tasks { get; set; }
-
-    [StorableConstructor]
-    protected Job(bool deserializing) : base(deserializing) { }
-    protected Job(Job original, Cloner cloner)
-      : base(original, cloner) {
-      this.DueDate = original.DueDate;
-      this.Index = original.Index;
-      this.Tasks = cloner.Clone(original.Tasks);
-    }
-    public override IDeepCloneable Clone(Cloner cloner) {
-      return new Job(this, cloner);
-    }
-    public Job(int index, double dueDate)
-      : base() {
-      Index = index;
-      Tasks = new ItemList<Task>();
-
-      if (dueDate != null)
-        DueDate = dueDate;
-
-    }
-
-    public override string ToString() {
-      StringBuilder sb = new StringBuilder();
-      sb.Append("Job#" + Index + " [ ");
-      foreach (Task t in Tasks) {
-        sb.Append(t.ToString() + " ");
-      }
-      if (DueDate != null)
-        sb.Append("{" + DueDate + "} ");
-      sb.Append("]");
-      return sb.ToString();
-    }
-
-    internal Task GetPreviousTask(Task t) {
-      if (t.TaskNr == 0)
-        return null;
-      else
-        return Tasks[t.TaskNr - 1];
-    }
-  }
-}
Index: branches/Scheduling/HeuristicLab.Problems.Scheduling/3.3/JobShopSchedulingProblem.cs
===================================================================
--- branches/Scheduling/HeuristicLab.Problems.Scheduling/3.3/JobShopSchedulingProblem.cs	(revision 6414)
+++ branches/Scheduling/HeuristicLab.Problems.Scheduling/3.3/JobShopSchedulingProblem.cs	(revision 6475)
@@ -173,4 +173,9 @@
             PWRDecoder decoder = new PWRDecoder();
             ((SchedulingEvaluationAlgorithm)this.EvaluatorParameter.ActualValue).InitializeOperatorGraph<PWREncoding>(decoder);
+          } else {
+            if (SolutionCreator.GetType().Equals(typeof(DirectScheduleRandomCreator))) {
+              Operators.AddRange(ApplicationManager.Manager.GetInstances<IDirectScheduleOperator>());
+              ((SchedulingEvaluationAlgorithm)this.EvaluatorParameter.ActualValue).InitializeOperatorGraph<Schedule>();
+            }
           }
         }
Index: branches/Scheduling/HeuristicLab.Problems.Scheduling/3.3/Plugin.cs
===================================================================
--- branches/Scheduling/HeuristicLab.Problems.Scheduling/3.3/Plugin.cs	(revision 6414)
+++ branches/Scheduling/HeuristicLab.Problems.Scheduling/3.3/Plugin.cs	(revision 6475)
@@ -23,5 +23,5 @@
 
 namespace HeuristicLab.Problems.Scheduling {
-  [Plugin("HeuristicLab.Problems.Scheduling", "3.3.3.6412")]
+  [Plugin("HeuristicLab.Problems.Scheduling", "3.3.3.6414")]
   [PluginFile("HeuristicLab.Problems.Scheduling-3.3.dll", PluginFileType.Assembly)]
   public class HeuristicLabProblemsSchedulingPlugin : PluginBase {
Index: branches/Scheduling/HeuristicLab.Problems.Scheduling/3.3/Task.cs
===================================================================
--- branches/Scheduling/HeuristicLab.Problems.Scheduling/3.3/Task.cs	(revision 6414)
+++ 	(revision )
@@ -1,72 +1,0 @@
-﻿#region License Information
-/* HeuristicLab
- * Copyright (C) 2002-2011 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
- *
- * This file is part of HeuristicLab.
- *
- * HeuristicLab is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * HeuristicLab is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with HeuristicLab. If not, see <http://www.gnu.org/licenses/>.
- */
-#endregion
-
-using System.Text;
-using HeuristicLab.Common;
-using HeuristicLab.Core;
-using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
-
-namespace HeuristicLab.Problems.Scheduling {
-  [Item("Task", "Represents a task that has to be scheduled.")]
-  [StorableClass]
-  public class Task : Item {
-    [Storable]
-    public int TaskNr { get; set; }
-    [Storable]
-    public int ResourceNr { get; set; }
-    [Storable]
-    public int JobNr { get; set; }
-    [Storable]
-    public double Duration { get; set; }
-    [Storable]
-    public bool IsScheduled { get; set; }
-
-    [StorableConstructor]
-    protected Task(bool deserializing) : base(deserializing) { }
-    protected Task(Task original, Cloner cloner)
-      : base(original, cloner) {
-      this.ResourceNr = original.ResourceNr;
-      this.JobNr = original.JobNr;
-      this.Duration = original.Duration;
-      this.TaskNr = original.TaskNr;
-      this.IsScheduled = original.IsScheduled;
-    }
-    public override IDeepCloneable Clone(Cloner cloner) {
-      return new Task(this, cloner);
-    }
-
-
-    public Task(int taskNr, int resNr, int jobNr, double duration)
-      : base() {
-      Duration = duration;
-      ResourceNr = resNr;
-      JobNr = jobNr;
-      TaskNr = taskNr;
-      IsScheduled = false;
-    }
-
-    public override string ToString() {
-      StringBuilder sb = new StringBuilder();
-      sb.Append("[" + TaskNr + "," + ResourceNr + "]");
-      return sb.ToString();
-    }
-  }
-}
