/// <summary>
        /// Calculates the calibration algorithms where the node to be calibrated is the blind node
        /// </summary>
        /// <param name="dataSet">The dataset to be processed</param>
        private void ExecuteCalibrationBlindNode(DataSet dataSet)
        {
            Console.WriteLine("Executing the two calibration methods");

            foreach (DataRow row in dataSet.Tables[0].Rows)
            {
                currentID = row["node"].ToString();
                Node CurrentNode;

                if (currentID == "11")
                {
                    if (!AnchorNodes.Exists(AN => AN.WsnIdProperty == currentID))
                    {
                        AnchorNodes.Add(new Node(row["node"].ToString(), MyDb));

                        CurrentNode = AnchorNodes.Find(AN => AN.WsnIdProperty == currentID);

                        Console.WriteLine("Enter the position of the blind node in doubles!");
                        Point position = new Point();
                        Console.Write("X: ");
                        position.x = Convert.ToDouble(Console.ReadLine());
                        Console.Write("Y: ");
                        position.y = Convert.ToDouble(Console.ReadLine());

                        CurrentNode.position = new Point(position.x, position.y);
                    }

                    CurrentNode = AnchorNodes.Find(AN => AN.WsnIdProperty == currentID);

                    CurrentNode.UpdateAnchors(row["ANode"].ToString(), Convert.ToDouble(row["RSSI"].ToString()), 1, DateTime.Now);
                }
            }

            RangeBasedPositioning.CalibratePathloss(AnchorNodes, RangeBasedPositioning.AverageFilter);
            Console.WriteLine("Normal Calibration");
            Console.WriteLine(RangeBasedPositioning.pathLossExponent);
            Console.WriteLine(RangeBasedPositioning.baseLoss);
            RangeBasedPositioning.CalibratePathlossLS(AnchorNodes, RangeBasedPositioning.AverageFilter);
            Console.WriteLine("LS Calibration");
            Console.WriteLine(RangeBasedPositioning.pathLossExponent);
            Console.WriteLine(RangeBasedPositioning.baseLoss);

            AnchorNodes.Clear();
        }
        /// <summary>
        /// Calculates the calibration algorithms
        /// </summary>
        /// <param name="dataSet">The dataset to be processed</param>
        private void ExecuteCalibration(DataSet dataSet)
        {
            double baseLoss = 0, pathLossExponent = 0;
            int    counter = 0;

            Console.WriteLine("Executing the two calibration methods");

            Console.WriteLine("Normal Calibration");
            foreach (DataRow row in dataSet.Tables[0].Rows)
            {
                currentID = row["node"].ToString();
                Node CurrentNode;

                if (currentID != "11")
                {
                    if (!AnchorNodes.Exists(AN => AN.WsnIdProperty == currentID))
                    {
                        AnchorNodes.Add(new Node(row["node"].ToString(), MyDb));
                    }

                    CurrentNode = AnchorNodes.Find(AN => AN.WsnIdProperty == currentID);
                    CurrentNode.UpdateAnchors(row["ANode"].ToString(), Convert.ToDouble(row["RSSI"].ToString()), 1, DateTime.Now);

                    RangeBasedPositioning.CalibratePathloss(AnchorNodes, RangeBasedPositioning.NoFilter);
                    pathLossExponent += RangeBasedPositioning.pathLossExponent;
                    counter++;
                }
            }

            pathLossExponent /= counter;
            Console.WriteLine("baseLoss = " + RangeBasedPositioning.baseLoss.ToString());
            Console.WriteLine("pathLossExponent = " + pathLossExponent.ToString());

            baseLoss         = 0;
            pathLossExponent = 0;
            counter          = 0;
            AnchorNodes.Clear();

            Console.WriteLine("LS Calibration");
            foreach (DataRow row in dataSet.Tables[0].Rows)
            {
                currentID = row["node"].ToString();
                Node CurrentNode;

                if (currentID != "11")
                {
                    if (!AnchorNodes.Exists(AN => AN.WsnIdProperty == currentID))
                    {
                        AnchorNodes.Add(new Node(row["node"].ToString(), MyDb));
                    }

                    CurrentNode = AnchorNodes.Find(AN => AN.WsnIdProperty == currentID);
                    CurrentNode.UpdateAnchors(row["ANode"].ToString(), Convert.ToDouble(row["RSSI"].ToString()), 1, DateTime.Now);

                    RangeBasedPositioning.CalibratePathlossLS(AnchorNodes, RangeBasedPositioning.NoFilter);
                    baseLoss         += RangeBasedPositioning.baseLoss;
                    pathLossExponent += RangeBasedPositioning.pathLossExponent;
                    counter++;
                }
            }

            baseLoss         /= counter;
            pathLossExponent /= counter;
            Console.WriteLine("baseLoss = " + baseLoss.ToString());
            Console.WriteLine("pathLossExponent = " + pathLossExponent.ToString());
        }