#region License Information /* HeuristicLab * Copyright (C) 2002-2016 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 . */ #endregion using System; using System.Collections.Generic; using System.Linq; using HeuristicLab.Common; using HeuristicLab.Core; using HeuristicLab.Data; using HeuristicLab.Parameters; using HeuristicLab.Persistence.Default.CompositeSerializers.Storable; namespace HeuristicLab.Problems.DataAnalysis { [StorableClass] [Item("TimeSeriesPrognosisProblemData", "Represents an item containing all data defining a time series prognosis problem.")] public class TimeSeriesPrognosisProblemData : RegressionProblemData, ITimeSeriesPrognosisProblemData { #region default data private static double[,] mackey_glass_17 = new double[,] { {9.0000000e-01}, {9.0000000e-01}, {9.0000000e-01}, {9.4136145e-01}, {1.1188041e+00}, {1.2161867e+00}, {1.2476827e+00}, {1.0067861e+00}, {7.1297054e-01}, {5.0349420e-01}, {5.8392542e-01}, {9.4327347e-01}, {1.0178784e+00}, {1.0346794e+00}, {1.1640420e+00}, {1.0670009e+00}, {1.0026658e+00}, {7.7000347e-01}, {7.0782984e-01}, {7.9370192e-01}, {1.0558440e+00}, {1.2000510e+00}, {1.2998549e+00}, {1.1857500e+00}, {8.4250325e-01}, {5.5885374e-01}, {4.2572016e-01}, {7.5043060e-01}, {9.7291951e-01}, {9.3785503e-01}, {1.0653587e+00}, {1.1355961e+00}, {1.1533842e+00}, {1.0678134e+00}, {8.1349649e-01}, {6.6246660e-01}, {6.2210481e-01}, {9.3890430e-01}, {1.1287058e+00}, {1.1699535e+00}, {1.2412759e+00}, {9.8090748e-01}, {7.3311051e-01}, {5.2596003e-01}, {6.3134850e-01}, {9.7849655e-01}, {1.0578901e+00}, {1.0888001e+00}, {1.1681297e+00}, {9.9896471e-01}, {8.7928027e-01}, {6.6864116e-01}, {7.3694626e-01}, {9.7850487e-01}, {1.1571565e+00}, {1.2440406e+00}, {1.2532851e+00}, {9.3967388e-01}, {6.5403177e-01}, {4.5549437e-01}, {6.4110939e-01}, {9.6727507e-01}, {9.8419122e-01}, {1.0332443e+00}, {1.1440570e+00}, {1.0922307e+00}, {1.0485820e+00}, {8.0447560e-01}, {7.1465526e-01}, {7.1296010e-01}, {9.9300973e-01}, {1.1766813e+00}, {1.2618288e+00}, {1.2517022e+00}, {9.2078170e-01}, {6.2369710e-01}, {4.3562308e-01}, {6.4988558e-01}, {9.5895791e-01}, {9.5866122e-01}, {1.0183775e+00}, {1.1415533e+00}, {1.1289579e+00}, {1.1022163e+00}, {8.4414928e-01}, {6.9891813e-01}, {6.2493643e-01}, {9.0049230e-01}, {1.1246569e+00}, {1.1850486e+00}, {1.2646400e+00}, {1.0193893e+00}, {7.3830722e-01}, {5.1921750e-01}, {5.6836076e-01}, {9.3609361e-01}, {1.0324202e+00}, {1.0360676e+00}, {1.1675966e+00}, {1.0504944e+00}, {9.8129158e-01}, {7.5798016e-01}, {7.1660079e-01}, {8.3950658e-01}, {1.0870027e+00}, {1.2170776e+00}, {1.3123779e+00}, {1.1361782e+00}, {7.9337369e-01}, {5.2230472e-01}, {4.3857925e-01}, {8.0873950e-01}, {9.7422631e-01}, {9.3291515e-01}, {1.0947530e+00}, {1.1335086e+00}, {1.1645714e+00}, {1.0315895e+00}, {7.9058261e-01}, {6.3878936e-01}, {6.4385427e-01}, {9.7290237e-01}, {1.1330941e+00}, {1.1738960e+00}, {1.2210669e+00}, {9.4813374e-01}, {7.1548595e-01}, {5.2046031e-01}, {6.8100333e-01}, {1.0072944e+00}, {1.0641199e+00}, {1.1194312e+00}, {1.1522817e+00}, {9.7118023e-01}, {8.2966445e-01}, {6.3876024e-01}, {7.6770138e-01}, {1.0325752e+00}, {1.1660632e+00}, {1.2543878e+00}, {1.1956003e+00}, {8.7571542e-01}, {6.1252082e-01}, {4.5699619e-01}, {7.4030148e-01}, {1.0017485e+00}, {9.8958385e-01}, {1.0949833e+00}, {1.1249612e+00}, {1.0658962e+00}, {9.5636335e-01}, {7.4498806e-01}, {7.2563393e-01}, {8.3530455e-01}, {1.0977307e+00}, {1.2314926e+00}, {1.3167422e+00}, {1.1172604e+00}, {7.6900341e-01}, {5.0549771e-01}, {4.4450990e-01}, {8.2808038e-01}, {9.6930396e-01}, {9.2772189e-01}, {1.1010458e+00}, {1.1366939e+00}, {1.1770457e+00}, {1.0282839e+00}, {7.8657093e-01}, {6.2340354e-01}, {6.3476140e-01}, {9.6941037e-01}, {1.1224823e+00}, {1.1576217e+00}, {1.2147442e+00}, {9.5631199e-01}, {7.3947874e-01}, {5.4187646e-01}, {6.8681641e-01}, {1.0131445e+00}, {1.0865854e+00}, {1.1414849e+00}, {1.1594630e+00}, {9.4411600e-01}, {7.7794034e-01}, {5.9741518e-01}, {7.7225037e-01}, {1.0587360e+00}, {1.1485933e+00}, {1.2344562e+00}, {1.1458853e+00}, {8.5415118e-01}, {6.2127481e-01}, {4.9756097e-01}, {8.0931406e-01}, {1.0430891e+00}, {1.0367506e+00}, {1.1608048e+00}, {1.0902522e+00}, {9.6945804e-01}, {7.9607346e-01}, {6.7035674e-01}, {8.2493000e-01}, {1.0685565e+00}, {1.1912458e+00}, {1.2916937e+00}, {1.1585237e+00}, {8.2653804e-01}, {5.5624667e-01}, {4.4364773e-01}, {7.8679896e-01}, {9.8947432e-01}, {9.5587476e-01}, {1.0976735e+00}, {1.1247419e+00}, {1.1220470e+00}, {9.9754667e-01}, {7.7406653e-01}, {6.7630712e-01}, {7.2445263e-01}, {1.0303591e+00}, {1.1801427e+00}, {1.2506686e+00}, {1.1989987e+00}, {8.7114663e-01}, {6.0602798e-01}, {4.5163741e-01}, {7.3553573e-01}, {9.9456302e-01}, {9.8098646e-01}, {1.0857031e+00}, {1.1289641e+00}, {1.0828069e+00}, {9.8224963e-01}, {7.5966277e-01}, {7.1111527e-01}, {7.8645769e-01}, {1.0673541e+00}, {1.2116816e+00}, {1.2990734e+00}, {1.1657704e+00}, {8.1779454e-01}, {5.4428063e-01}, {4.3047549e-01}, {7.7832590e-01}, {9.7551443e-01}, {9.3705618e-01}, {1.0807206e+00}, {1.1339189e+00}, {1.1551319e+00}, {1.0473610e+00}, {8.0021464e-01}, {6.5377513e-01}, {6.3810292e-01}, {9.6140773e-01}, {1.1354401e+00}, {1.1782311e+00}, {1.2323246e+00}, {9.5811452e-01}, {7.1400985e-01}, {5.1434848e-01}, {6.5876782e-01}, {9.9374878e-01}, {1.0532057e+00}, {1.0987291e+00}, {1.1569941e+00}, {9.9327584e-01}, {8.7055783e-01}, {6.6607204e-01}, {7.5154249e-01}, {9.9147904e-01}, {1.1618652e+00}, {1.2531013e+00}, {1.2445235e+00}, {9.2459418e-01}, {6.3924685e-01}, {4.4899067e-01}, {6.5946924e-01}, {9.7165260e-01}, {9.7791817e-01}, {1.0391898e+00}, {1.1412631e+00}, {1.0983393e+00}, {1.0493420e+00}, {8.0399406e-01}, {7.0992449e-01}, {7.0350356e-01}, {9.8952236e-01}, {1.1734521e+00}, {1.2538876e+00}, {1.2508500e+00}, {9.2423636e-01}, {6.3070030e-01}, {4.4136962e-01}, {6.4946966e-01}, {9.6197955e-01}, {9.6606332e-01}, {1.0237953e+00}, {1.1421522e+00}, {1.1183774e+00}, {1.0857179e+00}, {8.3157725e-01}, {7.0250588e-01}, {6.4917325e-01}, {9.2959329e-01}, {1.1407976e+00}, {1.2080261e+00}, {1.2684960e+00}, {9.9122930e-01}, {7.0220017e-01}, {4.8816416e-01}, {5.8586111e-01}, {9.4668329e-01}, {1.0087590e+00}, {1.0232927e+00}, {1.1559444e+00}, {1.0720927e+00}, {1.0286336e+00}, {7.9460252e-01}, {7.2093651e-01}, {7.6292167e-01}, {1.0248985e+00}, {1.1929944e+00}, {1.2920208e+00}, {1.2293181e+00}, {8.8290244e-01}, {5.8527613e-01}, {4.1855360e-01}, {6.9074767e-01}, {9.5977708e-01}, {9.3601019e-01}, {1.0268467e+00}, {1.1397909e+00}, {1.1581327e+00}, {1.1205956e+00}, {8.5280669e-01}, {6.7763483e-01}, {5.7983286e-01}, {8.6429914e-01}, {1.0976939e+00}, {1.1367408e+00}, {1.2374931e+00}, {1.0493382e+00}, {8.0588138e-01}, {5.9127581e-01}, {5.7929225e-01}, {9.2472931e-01}, {1.0849831e+00}, {1.0943246e+00}, {1.2041235e+00}, {1.0091917e+00}, {8.4987188e-01}, {6.3876182e-01}, {6.7747918e-01}, {9.7202288e-01}, {1.1405471e+00}, {1.1943368e+00}, {1.2338428e+00}, {9.4462558e-01}, {6.9738430e-01}, {4.9856007e-01}, {6.6823589e-01}, {9.9611375e-01}, {1.0393748e+00}, {1.0920087e+00}, {1.1489492e+00}, {1.0066576e+00}, {8.9589007e-01}, {6.8845995e-01}, {7.5294149e-01}, {9.6184563e-01}, {1.1555071e+00}, {1.2567316e+00}, {1.2751778e+00}, {9.6335246e-01}, {6.5830948e-01}, {4.4799275e-01}, {5.9888825e-01}, {9.4430988e-01}, {9.6837958e-01}, {9.9677549e-01}, {1.1434629e+00}, {1.1210684e+00}, {1.1148356e+00}, {8.6401556e-01}, {7.1420118e-01}, {6.2999725e-01}, {8.7537864e-01}, {1.1167941e+00}, {1.1896694e+00}, {1.2722030e+00}, {1.0454715e+00}, {7.4997564e-01}, {5.2383173e-01}, {5.3664145e-01}, {9.1117041e-01}, {1.0244044e+00}, {1.0151287e+00}, {1.1633675e+00}, {1.0695966e+00}, {1.0183575e+00}, {8.0087884e-01}, {7.1535296e-01}, {7.8553095e-01}, {1.0319822e+00}, {1.1937155e+00}, {1.2977947e+00}, {1.2217806e+00}, {8.7524512e-01}, {5.7851885e-01}, {4.1763620e-01}, {7.0155638e-01}, {9.6135267e-01}, {9.3393602e-01}, {1.0323424e+00}, {1.1394608e+00}, {1.1605598e+00}, {1.1161968e+00}, {8.4854339e-01}, {6.7338626e-01}, {5.7982826e-01}, {8.7043086e-01}, {1.0990834e+00}, {1.1357404e+00}, {1.2369383e+00}, {1.0441753e+00}, {8.0417958e-01}, {5.9002711e-01}, {5.8533894e-01}, {9.3051649e-01}, {1.0871279e+00}, {1.0984983e+00}, {1.2044155e+00}, {1.0039892e+00}, {8.4210523e-01}, {6.3124655e-01}, {6.8055115e-01}, {9.7935183e-01}, {1.1399170e+00}, {1.1935307e+00}, {1.2269029e+00}, {9.3758049e-01}, {6.9527243e-01}, {5.0033084e-01}, {6.8171448e-01}, {1.0034848e+00}, {1.0435853e+00}, {1.1027381e+00}, {1.1454200e+00}, {9.9636446e-01}, {8.7575610e-01}, {6.7572455e-01}, {7.6161436e-01}, {9.8751885e-01}, {1.1634852e+00}, {1.2613366e+00}, {1.2527158e+00}, {9.3041078e-01}, {6.3648886e-01}, {4.4289908e-01}, {6.4543043e-01}, {9.6271252e-01}, {9.6856037e-01}, {1.0237816e+00}, {1.1419384e+00}, {1.1143808e+00}, {1.0817980e+00}, {8.2952128e-01}, {7.0565231e-01}, {6.5745758e-01}, {9.3688510e-01}, {1.1457239e+00}, {1.2160319e+00}, {1.2696485e+00}, {9.8373294e-01}, {6.9141844e-01}, {4.7910268e-01}, {5.8995166e-01}, {9.4754885e-01}, {1.0004197e+00}, {1.0182334e+00}, {1.1527974e+00}, {1.0815601e+00}, {1.0462772e+00}, {8.0856012e-01}, {7.2009150e-01}, {7.3360533e-01}, {9.9726771e-01}, {1.1799228e+00}, {1.2752553e+00}, {1.2545993e+00}, {9.1834232e-01}, {6.1478702e-01}, {4.2718988e-01}, {6.4709630e-01}, {9.5321724e-01}, {9.4745071e-01}, {1.0082615e+00}, {1.1408283e+00}, {1.1449070e+00}, {1.1287695e+00}, {8.6506953e-01}, {6.9506068e-01}, {5.9077914e-01}, {8.5235412e-01}, {1.0981812e+00}, {1.1502068e+00}, {1.2457878e+00}, {1.0606248e+00}, {7.9743949e-01}, {5.7871635e-01}, {5.5597309e-01}, {9.0976389e-01}, {1.0678545e+00}, {1.0678466e+00}, {1.1926843e+00}, {1.0306506e+00}, {9.0068600e-01}, {6.8968565e-01}, {6.8293693e-01}, {9.2938386e-01}, {1.1389931e+00}, {1.2107723e+00}, {1.2742112e+00}, {9.9571305e-01}, {7.0900966e-01}, {4.8711002e-01}, {5.7843327e-01}, {9.4262722e-01}, {1.0068885e+00}, {1.0174671e+00}, {1.1549847e+00}, {1.0752383e+00}, {1.0382561e+00}, {8.0493588e-01}, {7.2297438e-01}, {7.5109199e-01}, {1.0099650e+00}, {1.1869526e+00}, {1.2859723e+00}, {1.2455314e+00}, {9.0247113e-01}, {5.9968946e-01}, {4.2056794e-01}, {6.6467784e-01}, {9.5461231e-01}, {9.3926954e-01}, {1.0128964e+00}, {1.1403075e+00}, {1.1549599e+00}, {1.1335031e+00}, {8.6584651e-01}, {6.8689154e-01}, {5.7663890e-01}, {8.4338430e-01}, {1.0904343e+00}, {1.1347127e+00}, {1.2344704e+00}, {1.0665197e+00}, {8.1831436e-01}, {6.0374950e-01}, {5.6609914e-01}, {9.0609488e-01}, {1.0837698e+00}, {1.0903349e+00}, {1.2068005e+00}, {1.0215332e+00}, {8.5834739e-01}, {6.4797779e-01}, {6.6278967e-01}, {9.5567807e-01}, {1.1370612e+00}, {1.1868501e+00}, {1.2426235e+00}, {9.6133342e-01}, {7.1189926e-01}, {5.0582127e-01}, {6.4642134e-01}, {9.8585814e-01}, {1.0428580e+00}, {1.0831242e+00}, {1.1568123e+00}, {1.0097872e+00}, {9.0412446e-01}, {6.9144384e-01}, {7.4452934e-01}, {9.5158341e-01}, {1.1512270e+00}, {1.2509608e+00}, {1.2807229e+00}, {9.7601316e-01}, {6.6959369e-01}, {4.5362019e-01}, {5.8397806e-01}, {9.3866865e-01}, {9.7211974e-01}, {9.9154526e-01}, {1.1440232e+00}, {1.1182310e+00}, {1.1159711e+00}, {8.6902975e-01}, {7.1839537e-01}, {6.3437176e-01}, {8.7058758e-01}, {1.1155207e+00}, {1.1929730e+00}, {1.2750340e+00}, {1.0511137e+00}, {7.5075715e-01}, {5.2249794e-01}, {5.2857771e-01}, {9.0479637e-01}, {1.0201490e+00}, {1.0078239e+00}, {1.1602784e+00}, {1.0762699e+00}, {1.0328279e+00}, {8.1754050e-01}, {7.1739458e-01}, {7.6521302e-01}, {1.0063562e+00}, {1.1829441e+00}, {1.2880301e+00}, {1.2505618e+00}, {9.0963666e-01}, {6.0373594e-01}, {4.2059572e-01}, {6.5552332e-01}, {9.5216646e-01}, {9.3915492e-01}, {1.0073402e+00}, {1.1402595e+00}, {1.1555473e+00}, {1.1400569e+00}, {8.7240707e-01}, {6.8972093e-01}, {5.7304964e-01}, {8.3155186e-01}, {1.0852244e+00}, {1.1309096e+00}, {1.2300408e+00}, {1.0756716e+00}, {8.2836037e-01}, {6.1503305e-01}, {5.6289537e-01}, {8.9596963e-01}, {1.0857176e+00}, {1.0933045e+00}, {1.2103223e+00}, {1.0266092e+00}, {8.5466111e-01}, {6.4485312e-01}, {6.5137619e-01}, {9.5039035e-01}, {1.1326982e+00}, {1.1771304e+00}, {1.2406618e+00}, {9.6686921e-01}, {7.2402007e-01}, {5.1657512e-01}, {6.4610863e-01}, {9.8716024e-01}, {1.0536774e+00}, {1.0920775e+00}, {1.1611436e+00}, {9.9694608e-01}, {8.7913715e-01}, {6.7096137e-01}, {7.4646346e-01}, {9.8211586e-01}, {1.1596887e+00}, {1.2506463e+00}, {1.2528610e+00}, {9.3574881e-01}, {6.4708026e-01}, {4.5058777e-01}, {6.4326949e-01}, {9.6585146e-01}, {9.7825812e-01}, {1.0299115e+00}, {1.1430802e+00}, {1.1005190e+00}, {1.0609387e+00}, {8.1379890e-01}, {7.1122428e-01}, {6.9156533e-01}, {9.7259709e-01}, {1.1655186e+00}, {1.2452699e+00}, {1.2619116e+00}, {9.4482161e-01}, {6.4801701e-01}, {4.4907240e-01}, {6.2485209e-01}, {9.5564190e-01}, {9.7288683e-01}, {1.0147847e+00}, {1.1443809e+00}, {1.1120870e+00}, {1.0877802e+00}, {8.3639407e-01}, {7.0935594e-01}, {6.5684224e-01}, {9.2695542e-01}, {1.1418485e+00}, {1.2155793e+00}, {1.2744439e+00}, {9.9526406e-01}, {6.9858658e-01}, {4.8225678e-01}, {5.7551868e-01}, {9.3953863e-01}, {1.0000682e+00}, {1.0105854e+00}, {1.1531271e+00}, {1.0852683e+00}, {1.0562598e+00}, {8.2024340e-01}, {7.2070006e-01}, {7.2200828e-01}, {9.7907123e-01}, {1.1713283e+00}, {1.2668075e+00}, {1.2685662e+00}, {9.4120299e-01}, {6.3302397e-01}, {4.3403723e-01}, {6.1877701e-01}, {9.4622798e-01}, {9.5365292e-01}, {9.9618857e-01}, {1.1414351e+00}, {1.1389950e+00}, {1.1349258e+00}, {8.7553815e-01}, {7.0489527e-01}, {5.9575516e-01}, {8.3938416e-01}, {1.0946321e+00}, {1.1549299e+00}, {1.2478627e+00}, {1.0727433e+00}, {8.0007945e-01}, {5.7879852e-01}, {5.4142544e-01}, {8.9584895e-01}, {1.0605852e+00}, {1.0558398e+00}, {1.1875826e+00}, {1.0434789e+00}, {9.2439267e-01}, {7.1612758e-01}, {6.8218882e-01}, {9.0102182e-01}, {1.1275375e+00}, {1.2109971e+00}, {1.2892493e+00}, {1.0360675e+00}, {7.3214326e-01}, {4.9603224e-01}, {5.2859768e-01}, {9.0839931e-01}, {9.9967438e-01}, {9.8761933e-01}, {1.1495807e+00}, {1.0955451e+00}, {1.0837190e+00}, {8.6306190e-01}, {7.2864571e-01}, {6.9570443e-01}, {9.1466309e-01}, {1.1416079e+00}, {1.2423455e+00}, {1.2979661e+00}, {1.0158501e+00}, {6.9306586e-01}, {4.6540187e-01}, {5.3429520e-01}, {9.1176535e-01}, {9.7214664e-01}, {9.6587930e-01}, {1.1395672e+00}, {1.1254350e+00}, {1.1438751e+00}, {9.1306791e-01}, {7.3239337e-01}, {6.1798523e-01}, {7.9591503e-01}, {1.0777494e+00}, {1.1677842e+00}, {1.2502967e+00}, {1.1151699e+00}, {8.1642087e-01}, {5.8442000e-01}, {5.0055038e-01}, {8.4650946e-01}, {1.0385843e+00}, {1.0234916e+00}, {1.1635033e+00}, {1.0803258e+00}, {9.9050756e-01}, {8.0394987e-01}, {6.9093478e-01}, {8.1258118e-01}, {1.0510811e+00}, {1.1928214e+00}, {1.2964341e+00}, {1.1903709e+00}, {8.5006682e-01}, {5.6609363e-01}, {4.2789827e-01}, {7.4508986e-01}, {9.7546850e-01}, {9.4304490e-01}, {1.0657257e+00}, {1.1344752e+00}, {1.1448680e+00}, {1.0604924e+00}, {8.0946851e-01}, {6.6897242e-01}, {6.3751840e-01}, {9.5203759e-01}, {1.1383222e+00}, {1.1857882e+00}, {1.2429358e+00}, {9.6640521e-01}, {7.0943525e-01}, {5.0606242e-01}, {6.3814517e-01}, {9.8050653e-01}, {1.0400252e+00}, {1.0768445e+00}, {1.1586073e+00}, {1.0171349e+00}, {9.1652446e-01}, {7.0015343e-01}, {7.3826470e-01}, {9.3314098e-01}, {1.1436325e+00}, {1.2463125e+00}, {1.2921798e+00}, {1.0004180e+00}, {6.8706555e-01}, {4.6091370e-01}, {5.5360860e-01}, {9.2333217e-01}, {9.7324082e-01}, {9.7644851e-01}, {1.1422917e+00}, {1.1211038e+00}, {1.1312591e+00}, {8.9312684e-01}, {7.2669146e-01}, {6.2634170e-01}, {8.3089176e-01}, {1.0962164e+00}, {1.1808500e+00}, {1.2661262e+00}, {1.0871224e+00}, {7.8484345e-01}, {5.5241172e-01}, {5.0720010e-01}, {8.7433135e-01}, {1.0293171e+00}, {1.0110677e+00}, {1.1612664e+00}, {1.0781429e+00}, {1.0169296e+00}, {8.1818733e-01}, {7.0825239e-01}, {7.8555548e-01}, {1.0202406e+00}, {1.1861871e+00}, {1.2927766e+00}, {1.2345608e+00}, {8.9196638e-01}, {5.9165129e-01}, {4.1993302e-01}, {6.8133251e-01}, {9.5902336e-01}, {9.3840491e-01}, {1.0229760e+00}, {1.1397483e+00}, {1.1549910e+00}, {1.1221729e+00}, {8.5521466e-01}, {6.8171599e-01}, {5.8253142e-01}, {8.6249156e-01}, {1.0984374e+00}, {1.1402897e+00}, {1.2397438e+00}, {1.0509675e+00}, {8.0267914e-01}, {5.8719202e-01}, {5.7423177e-01}, {9.2225657e-01}, {1.0807070e+00}, {1.0878295e+00}, {1.2011335e+00}, {1.0137713e+00}, {8.6200406e-01}, {6.5063788e-01}, {6.7962388e-01}, {9.6415425e-01}, {1.1427244e+00}, {1.2001432e+00}, {1.2435862e+00}, {9.5255718e-01}, {6.9548843e-01}, {4.9228114e-01}, {6.4975070e-01}, {9.8475452e-01}, {1.0290189e+00}, {1.0735305e+00}, {1.1514964e+00}, {1.0265685e+00}, {9.3450570e-01}, {7.1609613e-01}, {7.4066401e-01}, {9.0672547e-01}, {1.1323663e+00}, {1.2457251e+00}, {1.3080265e+00}, {1.0368462e+00}, {7.0922252e-01}, {4.6922499e-01}, {5.0971665e-01}, {8.9530783e-01}, {9.6897032e-01}, {9.5144881e-01}, {1.1327578e+00}, {1.1313397e+00}, {1.1615669e+00}, {9.4490349e-01}, {7.4435097e-01}, {6.0879030e-01}, {7.4201167e-01}, {1.0475442e+00}, {1.1489683e+00}, {1.2189341e+00}, {1.1527726e+00}, {8.6373864e-01}, {6.3765290e-01}, {5.0482479e-01}, {7.9976041e-01}, {1.0463811e+00}, {1.0486243e+00}, {1.1650654e+00}, {1.0937932e+00}, {9.5242412e-01}, {7.7776887e-01}, {6.5337298e-01}, {8.3412675e-01}, {1.0842165e+00}, {1.1876958e+00}, {1.2860798e+00}, {1.1277640e+00}, {8.0705117e-01}, {5.4933954e-01}, {4.6409423e-01}, {8.2407983e-01}, {1.0029510e+00}, {9.7182671e-01}, {1.1248927e+00}, {1.1108497e+00}, {1.0927585e+00}, {9.3345740e-01}, {7.4563087e-01}, {6.9815644e-01}, {8.2911579e-01}, {1.0975320e+00}, {1.2225208e+00}, {1.3041931e+00}, {1.1107874e+00}, {7.6954799e-01}, {5.1381033e-01}, {4.5656108e-01}, {8.3803614e-01}, {9.8059578e-01}, {9.4343837e-01}, {1.1139527e+00}, {1.1272959e+00}, {1.1505047e+00}, {9.8802150e-01}, {7.6846480e-01}, {6.4059710e-01}, {7.0404249e-01}, {1.0213995e+00}, {1.1571646e+00}, {1.2167098e+00}, {1.1922700e+00}, {8.8891917e-01}, {6.4610240e-01}, {4.8423413e-01}, {7.4237703e-01}, {1.0194305e+00}, {1.0263817e+00}, {1.1223002e+00}, {1.1218476e+00}, {1.0047937e+00}, {8.6916869e-01}, {6.8761628e-01}, {7.7272726e-01}, {9.8680374e-01}, {1.1662112e+00}, {1.2718586e+00}, {1.2599891e+00}, {9.3374084e-01}, {6.3070745e-01}, {4.3512068e-01}, {6.3400337e-01}, {9.5387123e-01}, {9.5725486e-01}, {1.0083783e+00}, {1.1414776e+00}, {1.1320033e+00}, {1.1156485e+00}, {8.5730304e-01}, {7.0257566e-01}, {6.1385070e-01}, {8.7645096e-01}, {1.1135407e+00}, {1.1743915e+00}, {1.2617479e+00}, {1.0416530e+00}, {7.6141001e-01}, {5.3947941e-01}, {5.5263397e-01}, {9.2079176e-01}, {1.0423877e+00}, {1.0391593e+00}, {1.1741828e+00}, {1.0475738e+00}, {9.6528247e-01}, {7.4824631e-01}, {7.0765109e-01}, {8.6076413e-01}, {1.1015853e+00}, {1.2180296e+00}, {1.3087379e+00}, {1.1050105e+00}, {7.7144492e-01}, {5.1073157e-01}, {4.5959721e-01}, {8.4138746e-01}, {9.8058403e-01}, {9.4385625e-01}, {1.1155190e+00}, {1.1265194e+00}, {1.1505430e+00}, {9.8480260e-01}, {7.6753361e-01}, {6.3998096e-01}, {7.0790430e-01}, {1.0242649e+00}, {1.1582776e+00}, {1.2187970e+00}, {1.1895283e+00}, {8.8519343e-01}, {6.4254017e-01}, {4.8336487e-01}, {7.4700679e-01}, {1.0202300e+00}, {1.0250636e+00}, {1.1237335e+00}, {1.1201468e+00}, {1.0057497e+00}, {8.6867488e-01}, {6.8876595e-01}, {7.7314271e-01}, {9.8646241e-01}, {1.1663720e+00}, {1.2725046e+00}, {1.2607985e+00}, {9.3432428e-01}, {6.3055002e-01}, {4.3462242e-01}, {6.3267663e-01}, {9.5306639e-01}, {9.5647018e-01}, {1.0069834e+00}, {1.1414283e+00}, {1.1332454e+00}, {1.1183329e+00}, {8.5964718e-01}, {7.0259273e-01}, {6.1086847e-01}, {8.7145976e-01}, {1.1109278e+00}, {1.1713319e+00}, {1.2600859e+00}, {1.0459933e+00}, {7.6697548e-01}, {5.4492361e-01}, {5.5082792e-01}, {9.1787603e-01}, {1.0454451e+00}, {1.0416026e+00}, {1.1762039e+00}, {1.0460129e+00}, {9.5856257e-01}, {7.4291843e-01}, {7.0478730e-01}, {8.6904294e-01}, {1.1074327e+00}, {1.2185136e+00}, {1.3067057e+00}, {1.0916662e+00}, {7.6226341e-01}, {5.0599582e-01}, {4.7004755e-01}, {8.5459323e-01}, {9.8292600e-01}, {9.4923741e-01}, {1.1230180e+00}, {1.1230727e+00}, {1.1436380e+00}, {9.6517685e-01}, {7.5906667e-01}, {6.4229098e-01}, {7.3739829e-01}, {1.0441989e+00}, {1.1689429e+00}, {1.2377221e+00}, {1.1702644e+00}, {8.5776744e-01}, {6.1283507e-01}, {4.7508171e-01}, {7.7650778e-01}, {1.0199875e+00}, {1.0098181e+00}, {1.1277738e+00}, {1.1115547e+00}, {1.0256012e+00}, {8.8156161e-01}, {7.0600708e-01}, {7.6171841e-01}, {9.5613909e-01}, {1.1569502e+00}, {1.2691300e+00}, {1.2887802e+00}, {9.7384680e-01}, {6.5493328e-01}, {4.3953117e-01}, {5.7648851e-01}, {9.2999054e-01}, {9.5436230e-01}, {9.7297008e-01}, {1.1391325e+00}, {1.1416064e+00}, {1.1590944e+00}, {9.0850247e-01}, {7.1895834e-01}, {5.8564424e-01}, {7.8301903e-01}, {1.0675300e+00}, {1.1390766e+00}, {1.2237314e+00}, {1.1158432e+00}, {8.4615038e-01}, {6.2929929e-01}, {5.3024321e-01}, {8.4771779e-01}, {1.0679772e+00}, {1.0707805e+00}, {1.1942615e+00}, {1.0628072e+00}, {9.0277875e-01}, {7.0464579e-01}, {6.4124982e-01}, {8.9445063e-01}, {1.1236998e+00}, {1.1838208e+00}, {1.2721938e+00}, {1.0302053e+00}, {7.4928918e-01}, {5.2054789e-01}, {5.5300914e-01}, {9.2450978e-01}, {1.0290172e+00}, {1.0254177e+00}, {1.1658431e+00}, {1.0585030e+00}, {9.9937151e-01}, {7.7845423e-01}, {7.1727834e-01}, {8.1473462e-01}, {1.0635825e+00}, {1.2081434e+00}, {1.3087387e+00}, {1.1774543e+00}, {8.2930325e-01}, {5.4568406e-01}, {4.2252006e-01}, {7.6155262e-01}, {9.6902023e-01}, {9.2946430e-01}, {1.0663917e+00}, {1.1373062e+00}, {1.1667915e+00}, {1.0769457e+00}, {8.1823128e-01}, {6.5190054e-01}, {6.0082155e-01}, {9.2122516e-01}, {1.1147361e+00}, {1.1467530e+00}, {1.2352757e+00}, {9.9993521e-01}, {7.6890308e-01}, {5.5857496e-01}, {6.2725763e-01}, {9.7318317e-01}, {1.0840117e+00}, {1.1108847e+00}, {1.1857549e+00}, {9.7757101e-01}, {8.2394503e-01}, {6.1941336e-01}, {7.2410931e-01}, {1.0158088e+00}, {1.1491174e+00}, {1.2188178e+00}, {1.2007209e+00}, {8.9859946e-01}, {6.5456633e-01}, {4.8391373e-01}, {7.3135136e-01}, {1.0176181e+00}, {1.0277501e+00}, {1.1176213e+00}, {1.1248859e+00}, {1.0041498e+00}, {8.7364691e-01}, {6.8812425e-01}, {7.7228478e-01}, {9.8423833e-01}, {1.1655135e+00}, {1.2710944e+00}, {1.2619166e+00}, {9.3651452e-01}, {6.3284215e-01}, {4.3578889e-01}, {6.3021849e-01}, {9.5269846e-01}, {9.5770175e-01}, {1.0064613e+00}, {1.1416014e+00}, {1.1318041e+00}, {1.1173687e+00}, {8.5933718e-01}, {7.0364317e-01}, {6.1326177e-01}, {8.7318554e-01}, {1.1121947e+00}, {1.1737687e+00}, {1.2616019e+00}, {1.0447114e+00}, {7.6386287e-01}, {5.4149208e-01}, {5.5006680e-01}, {9.1816862e-01}, {1.0427545e+00}, {1.0385725e+00}, {1.1744959e+00}, {1.0484442e+00}, {9.6566520e-01}, {7.4941645e-01}, {7.0654030e-01}, {8.5978495e-01}, {1.1007328e+00}, {1.2172148e+00}, {1.3084224e+00}, {1.1066295e+00}, {7.7306455e-01}, {5.1195750e-01}, {4.5881820e-01}, {8.3991753e-01}, {9.8090418e-01}, {9.4402667e-01}, {1.1150495e+00}, {1.1263864e+00}, {1.1498512e+00}, {9.8537193e-01}, {7.6788821e-01}, {6.4101222e-01}, {7.0798171e-01}, {1.0241973e+00}, {1.1588402e+00}, {1.2194902e+00}, {1.1900225e+00}, {8.8503290e-01}, {6.4170616e-01}, {4.8247262e-01}, {7.4633801e-01}, {1.0194608e+00}, {1.0238758e+00}, {1.1225142e+00}, {1.1204876e+00}, {1.0078894e+00}, {8.7195748e-01}, {6.9071922e-01}, {7.7128559e-01}, {9.8171063e-01}, {1.1648359e+00}, {1.2716060e+00}, {1.2653194e+00}, {9.4044785e-01}, {6.3462126e-01}, {4.3541986e-01}, {6.2397592e-01}, {9.4996429e-01}, {9.5654324e-01}, {1.0018949e+00}, {1.1415375e+00}, {1.1340702e+00}, {1.1242483e+00}, {8.6601272e-01}, {7.0479002e-01}, {6.0700568e-01}, {8.6003770e-01}, {1.1056434e+00}, {1.1671804e+00}, {1.2575999e+00}, {1.0561104e+00}, {7.7723774e-01}, {5.5451638e-01}, {5.4470017e-01}, {9.0953268e-01}, {1.0489983e+00}, {1.0432715e+00}, {1.1787522e+00}, {1.0466535e+00}, {9.5253913e-01}, {7.3976965e-01}, {6.9910727e-01}, {8.7457184e-01}, {1.1111747e+00}, {1.2168058e+00}, {1.3037145e+00}, {1.0820947e+00}, {7.5710433e-01}, {5.0441461e-01}, {4.7923251e-01}, {8.6434525e-01}, {9.8624111e-01}, {9.5555561e-01}, {1.1291297e+00}, {1.1187232e+00}, {1.1339455e+00}, {9.4624297e-01}, {7.5185473e-01}, {6.4886735e-01}, {7.6947931e-01}, {1.0640658e+00}, {1.1819490e+00}, {1.2581006e+00}, {1.1479357e+00}, {8.2795383e-01}, {5.8084914e-01}, {4.6968322e-01}, {8.0540679e-01}, {1.0147037e+00}, {9.9267552e-01}, {1.1297166e+00}, {1.1074520e+00}, {1.0535732e+00}, {8.9989357e-01}, {7.2414622e-01}, {7.3710872e-01}, {9.0842211e-01}, {1.1372436e+00}, {1.2550645e+00}, {1.3118017e+00}, {1.0309191e+00}, {6.9715233e-01}, {4.6014528e-01}, {5.1093338e-01}, {8.9602085e-01}, {9.6063866e-01}, {9.4454964e-01}, {1.1299822e+00}, {1.1400660e+00}, {1.1784050e+00}, {9.5942169e-01}, {7.4592605e-01}, {5.9179210e-01}, {7.0833096e-01}, {1.0269127e+00}, {1.1280089e+00}, {1.1874924e+00}, {1.1668412e+00}, {8.9924653e-01}, {6.8916581e-01}, {5.3047422e-01}, {7.7534076e-01}, {1.0549099e+00}, {1.0847312e+00}, {1.1818109e+00}, {1.1071479e+00}, {9.0609669e-01}, {7.2016981e-01}, {5.9922569e-01}, {8.4631545e-01}, {1.1007330e+00}, {1.1539455e+00}, {1.2548057e+00}, {1.0707369e+00}, {7.9955359e-01}, {5.7211183e-01}, {5.3729384e-01}, {8.9511329e-01}, {1.0559775e+00}, {1.0482488e+00}, {1.1833103e+00}, {1.0467011e+00}, {9.3892077e-01}, {7.3109756e-01}, {6.8881096e-01}, {8.8724202e-01}, {1.1196405e+00}, {1.2137632e+00}, {1.2969341e+00}, {1.0598913e+00}, {7.4476987e-01}, {5.0025043e-01}, {5.0175473e-01}, {8.8612613e-01}, {9.9295902e-01}, {9.7027740e-01}, {1.1406663e+00}, {1.1082236e+00}, {1.1111857e+00}, {9.0519862e-01}, {7.3853971e-01}, {6.6752554e-01}, {8.4076984e-01}, {1.1041197e+00}, {1.2107499e+00}, {1.2910787e+00}, {1.0889124e+00}, {7.6218879e-01}, {5.1854183e-01}, {4.8212027e-01}, {8.6343438e-01}, {9.9664176e-01}, {9.6786348e-01}, {1.1354766e+00}, {1.1100558e+00}, {1.1078273e+00}, {9.1950063e-01}, {7.4186814e-01}, {6.7554741e-01}, {8.2771704e-01}, {1.0970261e+00}, {1.2115055e+00}, {1.2926801e+00}, {1.1044430e+00}, {7.7268354e-01}, {5.2367729e-01}, {4.6962326e-01}, {8.4775775e-01}, {9.9325612e-01}, {9.6094332e-01}, {1.1271528e+00}, {1.1156670e+00}, {1.1183008e+00}, {9.4351589e-01}, {7.5035067e-01}, {6.6773972e-01}, {7.8886291e-01}, {1.0750322e+00}, {1.1971741e+00}, {1.2770426e+00}, {1.1387571e+00}, {8.0837143e-01}, {5.5509702e-01}, {4.5955065e-01}, {8.1398530e-01}, {1.0008314e+00}, {9.7057086e-01}, {1.1195985e+00}, {1.1149111e+00}, {1.0957539e+00}, {9.4451157e-01}, {7.4819097e-01}, {6.9474604e-01}, {8.1250200e-01}, {1.0876804e+00}, {1.2158509e+00}, {1.2988266e+00}, {1.1270851e+00}, {7.8595861e-01}, {5.2690470e-01}, {4.5032342e-01}, {8.2266007e-01}, {9.8371303e-01}, {9.4630598e-01}, {1.1090276e+00}}; private static readonly Dataset defaultDataset; private static readonly IEnumerable defaultAllowedInputVariables; private static readonly string defaultTargetVariable; static TimeSeriesPrognosisProblemData() { defaultDataset = new Dataset(new string[] { "x" }, mackey_glass_17); defaultDataset.Name = "Mackey-Glass (t=17) Time Series Benchmark Dataset"; defaultAllowedInputVariables = Enumerable.Empty(); defaultTargetVariable = "x"; } #endregion private const string TrainingHorizonParameterName = "Training Horizon"; private const string TestHorizonParameterName = "Test Horizon"; public IFixedValueParameter TrainingHorizonParameter { get { return (IFixedValueParameter)Parameters[TrainingHorizonParameterName]; } } public IFixedValueParameter TestHorizonParameter { get { return (IFixedValueParameter)Parameters[TestHorizonParameterName]; } } #region Properties public int TrainingHorizon { get { return TrainingHorizonParameter.Value.Value; } set { TrainingHorizonParameter.Value.Value = value; } } public int TestHorizon { get { return TestHorizonParameter.Value.Value; } set { TestHorizonParameter.Value.Value = value; } } #endregion [StorableConstructor] protected TimeSeriesPrognosisProblemData(bool deserializing) : base(deserializing) { } protected TimeSeriesPrognosisProblemData(TimeSeriesPrognosisProblemData original, Cloner cloner) : base(original, cloner) { } public override IDeepCloneable Clone(Cloner cloner) { return new TimeSeriesPrognosisProblemData(this, cloner); } public TimeSeriesPrognosisProblemData() : this(defaultDataset, defaultAllowedInputVariables, defaultTargetVariable) { TrainingPartition.Start = 50; } public TimeSeriesPrognosisProblemData(IDataset dataset, IEnumerable allowedInputVariables, string targetVariable, IEnumerable transformations = null) : base(dataset, allowedInputVariables, targetVariable, transformations ?? Enumerable.Empty()) { Parameters.Add(new FixedValueParameter(TrainingHorizonParameterName, "Specifies the horizon (how far the prognosis reaches in the future) for each training sample.", new IntValue(1))); Parameters.Add(new FixedValueParameter(TestHorizonParameterName, "Specifies the horizon (how far the prognosis reaches in the future) for each test sample.", new IntValue(1))); TrainingHorizonParameter.Hidden = true; TestHorizonParameter.Hidden = true; TrainingPartition.Start = Math.Min((int)(TrainingPartition.Size * 0.2), 50); RegisterParameterEventHandlers(); } public TimeSeriesPrognosisProblemData(ITimeSeriesPrognosisProblemData timeseriesProblemData) : this(timeseriesProblemData.Dataset, timeseriesProblemData.AllowedInputVariables, timeseriesProblemData.TargetVariable) { TrainingPartition.Start = timeseriesProblemData.TrainingPartition.Start; TrainingPartition.End = timeseriesProblemData.TrainingPartition.End; TestPartition.Start = timeseriesProblemData.TestPartition.Start; TestPartition.End = timeseriesProblemData.TestPartition.End; TrainingHorizon = timeseriesProblemData.TrainingHorizon; TestHorizon = timeseriesProblemData.TestHorizon; } [StorableHook(HookType.AfterDeserialization)] private void AfterDeserialization() { RegisterParameterEventHandlers(); } private void RegisterParameterEventHandlers() { TrainingHorizonParameter.Value.ValueChanged += new System.EventHandler(Parameter_ValueChanged); TestHorizonParameter.Value.ValueChanged += new System.EventHandler(Parameter_ValueChanged); } private void Parameter_ValueChanged(object sender, EventArgs e) { OnChanged(); } protected override bool IsProblemDataCompatible(IDataAnalysisProblemData problemData, out string errorMessage) { if (problemData == null) throw new ArgumentNullException("problemData", "The provided problemData is null."); ITimeSeriesPrognosisProblemData timeseriesProblemData = problemData as ITimeSeriesPrognosisProblemData; if (timeseriesProblemData == null) throw new ArgumentException("The problem data is not a time-series problem data. Instead a " + problemData.GetType().GetPrettyName() + " was provided.", "problemData"); var returnValue = base.IsProblemDataCompatible(problemData, out errorMessage); //check targetVariable if (problemData.InputVariables.All(var => var.Value != TargetVariable)) { errorMessage = string.Format("The target variable {0} is not present in the new problem data.", TargetVariable) + Environment.NewLine + errorMessage; return false; } return returnValue; } public override void AdjustProblemDataProperties(IDataAnalysisProblemData problemData) { TimeSeriesPrognosisProblemData timeSeriesProblemData = problemData as TimeSeriesPrognosisProblemData; if (timeSeriesProblemData == null) throw new ArgumentException("The problem data is not a timeseries problem data. Instead a " + problemData.GetType().GetPrettyName() + " was provided.", "problemData"); var trainingDataStart = TrainingIndices.First(); base.AdjustProblemDataProperties(problemData); TestPartition.Start = trainingDataStart; TrainingHorizon = timeSeriesProblemData.TrainingHorizon; TestHorizon = timeSeriesProblemData.TestHorizon; } } }