public override bool Equals(object obj)
        {
            if (obj == null || !(obj is NodeTravellingSalesmanEdge))
            {
                return(false);
            }
            NodeTravellingSalesmanEdge rhs = obj as NodeTravellingSalesmanEdge;

            return(StartStep.Equals(rhs.StartStep) &&
                   EndStep.Equals(rhs.EndStep) &&
                   Score.Equals(rhs.Score));
        }