# source:branches/DataPreprocessing/HeuristicLab.Problems.DataAnalysis/3.4/Implementation/TimeSeriesPrognosis/TimeSeriesPrognosisProblemData.cs@11064

Last change on this file since 11064 was 11064, checked in by mkommend, 5 years ago

#2206: Updated data preprocessing branch with trunk changes.

File size: 33.4 KB
Line
2/* HeuristicLab
3 * Copyright (C) 2002-2013 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
4 *
5 * This file is part of HeuristicLab.
6 *
7 * HeuristicLab is free software: you can redistribute it and/or modify
9 * the Free Software Foundation, either version 3 of the License, or
10 * (at your option) any later version.
11 *
12 * HeuristicLab is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15 * GNU General Public License for more details.
16 *
17 * You should have received a copy of the GNU General Public License
18 * along with HeuristicLab. If not, see <http://www.gnu.org/licenses/>.
19 */
20#endregion
21
22using System;
23using System.Collections.Generic;
24using System.Linq;
25using HeuristicLab.Common;
26using HeuristicLab.Core;
27using HeuristicLab.Data;
28using HeuristicLab.Parameters;
29using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
30
31namespace HeuristicLab.Problems.DataAnalysis {
32  [StorableClass]
33  [Item("TimeSeriesPrognosisProblemData", "Represents an item containing all data defining a time series prognosis problem.")]
34  public class TimeSeriesPrognosisProblemData : RegressionProblemData, ITimeSeriesPrognosisProblemData {
35    #region default data
36    private static double[,] mackey_glass_17 = new double[,] {
37{9.0000000e-01},
38{9.0000000e-01},
39{9.0000000e-01},
40{9.4136145e-01},
41{1.1188041e+00},
42{1.2161867e+00},
43{1.2476827e+00},
44{1.0067861e+00},
45{7.1297054e-01},
46{5.0349420e-01},
47{5.8392542e-01},
48{9.4327347e-01},
49{1.0178784e+00},
50{1.0346794e+00},
51{1.1640420e+00},
52{1.0670009e+00},
53{1.0026658e+00},
54{7.7000347e-01},
55{7.0782984e-01},
56{7.9370192e-01},
57{1.0558440e+00},
58{1.2000510e+00},
59{1.2998549e+00},
60{1.1857500e+00},
61{8.4250325e-01},
62{5.5885374e-01},
63{4.2572016e-01},
64{7.5043060e-01},
65{9.7291951e-01},
66{9.3785503e-01},
67{1.0653587e+00},
68{1.1355961e+00},
69{1.1533842e+00},
70{1.0678134e+00},
71{8.1349649e-01},
72{6.6246660e-01},
73{6.2210481e-01},
74{9.3890430e-01},
75{1.1287058e+00},
76{1.1699535e+00},
77{1.2412759e+00},
78{9.8090748e-01},
79{7.3311051e-01},
80{5.2596003e-01},
81{6.3134850e-01},
82{9.7849655e-01},
83{1.0578901e+00},
84{1.0888001e+00},
85{1.1681297e+00},
86{9.9896471e-01},
87{8.7928027e-01},
88{6.6864116e-01},
89{7.3694626e-01},
90{9.7850487e-01},
91{1.1571565e+00},
92{1.2440406e+00},
93{1.2532851e+00},
94{9.3967388e-01},
95{6.5403177e-01},
96{4.5549437e-01},
97{6.4110939e-01},
98{9.6727507e-01},
99{9.8419122e-01},
100{1.0332443e+00},
101{1.1440570e+00},
102{1.0922307e+00},
103{1.0485820e+00},
104{8.0447560e-01},
105{7.1465526e-01},
106{7.1296010e-01},
107{9.9300973e-01},
108{1.1766813e+00},
109{1.2618288e+00},
110{1.2517022e+00},
111{9.2078170e-01},
112{6.2369710e-01},
113{4.3562308e-01},
114{6.4988558e-01},
115{9.5895791e-01},
116{9.5866122e-01},
117{1.0183775e+00},
118{1.1415533e+00},
119{1.1289579e+00},
120{1.1022163e+00},
121{8.4414928e-01},
122{6.9891813e-01},
123{6.2493643e-01},
124{9.0049230e-01},
125{1.1246569e+00},
126{1.1850486e+00},
127{1.2646400e+00},
128{1.0193893e+00},
129{7.3830722e-01},
130{5.1921750e-01},
131{5.6836076e-01},
132{9.3609361e-01},
133{1.0324202e+00},
134{1.0360676e+00},
135{1.1675966e+00},
136{1.0504944e+00},
137{9.8129158e-01},
138{7.5798016e-01},
139{7.1660079e-01},
140{8.3950658e-01},
141{1.0870027e+00},
142{1.2170776e+00},
143{1.3123779e+00},
144{1.1361782e+00},
145{7.9337369e-01},
146{5.2230472e-01},
147{4.3857925e-01},
148{8.0873950e-01},
149{9.7422631e-01},
150{9.3291515e-01},
151{1.0947530e+00},
152{1.1335086e+00},
153{1.1645714e+00},
154{1.0315895e+00},
155{7.9058261e-01},
156{6.3878936e-01},
157{6.4385427e-01},
158{9.7290237e-01},
159{1.1330941e+00},
160{1.1738960e+00},
161{1.2210669e+00},
162{9.4813374e-01},
163{7.1548595e-01},
164{5.2046031e-01},
165{6.8100333e-01},
166{1.0072944e+00},
167{1.0641199e+00},
168{1.1194312e+00},
169{1.1522817e+00},
170{9.7118023e-01},
171{8.2966445e-01},
172{6.3876024e-01},
173{7.6770138e-01},
174{1.0325752e+00},
175{1.1660632e+00},
176{1.2543878e+00},
177{1.1956003e+00},
178{8.7571542e-01},
179{6.1252082e-01},
180{4.5699619e-01},
181{7.4030148e-01},
182{1.0017485e+00},
183{9.8958385e-01},
184{1.0949833e+00},
185{1.1249612e+00},
186{1.0658962e+00},
187{9.5636335e-01},
188{7.4498806e-01},
189{7.2563393e-01},
190{8.3530455e-01},
191{1.0977307e+00},
192{1.2314926e+00},
193{1.3167422e+00},
194{1.1172604e+00},
195{7.6900341e-01},
196{5.0549771e-01},
197{4.4450990e-01},
198{8.2808038e-01},
199{9.6930396e-01},
200{9.2772189e-01},
201{1.1010458e+00},
202{1.1366939e+00},
203{1.1770457e+00},
204{1.0282839e+00},
205{7.8657093e-01},
206{6.2340354e-01},
207{6.3476140e-01},
208{9.6941037e-01},
209{1.1224823e+00},
210{1.1576217e+00},
211{1.2147442e+00},
212{9.5631199e-01},
213{7.3947874e-01},
214{5.4187646e-01},
215{6.8681641e-01},
216{1.0131445e+00},
217{1.0865854e+00},
218{1.1414849e+00},
219{1.1594630e+00},
220{9.4411600e-01},
221{7.7794034e-01},
222{5.9741518e-01},
223{7.7225037e-01},
224{1.0587360e+00},
225{1.1485933e+00},
226{1.2344562e+00},
227{1.1458853e+00},
228{8.5415118e-01},
229{6.2127481e-01},
230{4.9756097e-01},
231{8.0931406e-01},
232{1.0430891e+00},
233{1.0367506e+00},
234{1.1608048e+00},
235{1.0902522e+00},
236{9.6945804e-01},
237{7.9607346e-01},
238{6.7035674e-01},
239{8.2493000e-01},
240{1.0685565e+00},
241{1.1912458e+00},
242{1.2916937e+00},
243{1.1585237e+00},
244{8.2653804e-01},
245{5.5624667e-01},
246{4.4364773e-01},
247{7.8679896e-01},
248{9.8947432e-01},
249{9.5587476e-01},
250{1.0976735e+00},
251{1.1247419e+00},
252{1.1220470e+00},
253{9.9754667e-01},
254{7.7406653e-01},
255{6.7630712e-01},
256{7.2445263e-01},
257{1.0303591e+00},
258{1.1801427e+00},
259{1.2506686e+00},
260{1.1989987e+00},
261{8.7114663e-01},
262{6.0602798e-01},
263{4.5163741e-01},
264{7.3553573e-01},
265{9.9456302e-01},
266{9.8098646e-01},
267{1.0857031e+00},
268{1.1289641e+00},
269{1.0828069e+00},
270{9.8224963e-01},
271{7.5966277e-01},
272{7.1111527e-01},
273{7.8645769e-01},
274{1.0673541e+00},
275{1.2116816e+00},
276{1.2990734e+00},
277{1.1657704e+00},
278{8.1779454e-01},
279{5.4428063e-01},
280{4.3047549e-01},
281{7.7832590e-01},
282{9.7551443e-01},
283{9.3705618e-01},
284{1.0807206e+00},
285{1.1339189e+00},
286{1.1551319e+00},
287{1.0473610e+00},
288{8.0021464e-01},
289{6.5377513e-01},
290{6.3810292e-01},
291{9.6140773e-01},
292{1.1354401e+00},
293{1.1782311e+00},
294{1.2323246e+00},
295{9.5811452e-01},
296{7.1400985e-01},
297{5.1434848e-01},
298{6.5876782e-01},
299{9.9374878e-01},
300{1.0532057e+00},
301{1.0987291e+00},
302{1.1569941e+00},
303{9.9327584e-01},
304{8.7055783e-01},
305{6.6607204e-01},
306{7.5154249e-01},
307{9.9147904e-01},
308{1.1618652e+00},
309{1.2531013e+00},
310{1.2445235e+00},
311{9.2459418e-01},
312{6.3924685e-01},
313{4.4899067e-01},
314{6.5946924e-01},
315{9.7165260e-01},
316{9.7791817e-01},
317{1.0391898e+00},
318{1.1412631e+00},
319{1.0983393e+00},
320{1.0493420e+00},
321{8.0399406e-01},
322{7.0992449e-01},
323{7.0350356e-01},
324{9.8952236e-01},
325{1.1734521e+00},
326{1.2538876e+00},
327{1.2508500e+00},
328{9.2423636e-01},
329{6.3070030e-01},
330{4.4136962e-01},
331{6.4946966e-01},
332{9.6197955e-01},
333{9.6606332e-01},
334{1.0237953e+00},
335{1.1421522e+00},
336{1.1183774e+00},
337{1.0857179e+00},
338{8.3157725e-01},
339{7.0250588e-01},
340{6.4917325e-01},
341{9.2959329e-01},
342{1.1407976e+00},
343{1.2080261e+00},
344{1.2684960e+00},
345{9.9122930e-01},
346{7.0220017e-01},
347{4.8816416e-01},
348{5.8586111e-01},
349{9.4668329e-01},
350{1.0087590e+00},
351{1.0232927e+00},
352{1.1559444e+00},
353{1.0720927e+00},
354{1.0286336e+00},
355{7.9460252e-01},
356{7.2093651e-01},
357{7.6292167e-01},
358{1.0248985e+00},
359{1.1929944e+00},
360{1.2920208e+00},
361{1.2293181e+00},
362{8.8290244e-01},
363{5.8527613e-01},
364{4.1855360e-01},
365{6.9074767e-01},
366{9.5977708e-01},
367{9.3601019e-01},
368{1.0268467e+00},
369{1.1397909e+00},
370{1.1581327e+00},
371{1.1205956e+00},
372{8.5280669e-01},
373{6.7763483e-01},
374{5.7983286e-01},
375{8.6429914e-01},
376{1.0976939e+00},
377{1.1367408e+00},
378{1.2374931e+00},
379{1.0493382e+00},
380{8.0588138e-01},
381{5.9127581e-01},
382{5.7929225e-01},
383{9.2472931e-01},
384{1.0849831e+00},
385{1.0943246e+00},
386{1.2041235e+00},
387{1.0091917e+00},
388{8.4987188e-01},
389{6.3876182e-01},
390{6.7747918e-01},
391{9.7202288e-01},
392{1.1405471e+00},
393{1.1943368e+00},
394{1.2338428e+00},
395{9.4462558e-01},
396{6.9738430e-01},
397{4.9856007e-01},
398{6.6823589e-01},
399{9.9611375e-01},
400{1.0393748e+00},
401{1.0920087e+00},
402{1.1489492e+00},
403{1.0066576e+00},
404{8.9589007e-01},
405{6.8845995e-01},
406{7.5294149e-01},
407{9.6184563e-01},
408{1.1555071e+00},
409{1.2567316e+00},
410{1.2751778e+00},
411{9.6335246e-01},
412{6.5830948e-01},
413{4.4799275e-01},
414{5.9888825e-01},
415{9.4430988e-01},
416{9.6837958e-01},
417{9.9677549e-01},
418{1.1434629e+00},
419{1.1210684e+00},
420{1.1148356e+00},
421{8.6401556e-01},
422{7.1420118e-01},
423{6.2999725e-01},
424{8.7537864e-01},
425{1.1167941e+00},
426{1.1896694e+00},
427{1.2722030e+00},
428{1.0454715e+00},
429{7.4997564e-01},
430{5.2383173e-01},
431{5.3664145e-01},
432{9.1117041e-01},
433{1.0244044e+00},
434{1.0151287e+00},
435{1.1633675e+00},
436{1.0695966e+00},
437{1.0183575e+00},
438{8.0087884e-01},
439{7.1535296e-01},
440{7.8553095e-01},
441{1.0319822e+00},
442{1.1937155e+00},
443{1.2977947e+00},
444{1.2217806e+00},
445{8.7524512e-01},
446{5.7851885e-01},
447{4.1763620e-01},
448{7.0155638e-01},
449{9.6135267e-01},
450{9.3393602e-01},
451{1.0323424e+00},
452{1.1394608e+00},
453{1.1605598e+00},
454{1.1161968e+00},
455{8.4854339e-01},
456{6.7338626e-01},
457{5.7982826e-01},
458{8.7043086e-01},
459{1.0990834e+00},
460{1.1357404e+00},
461{1.2369383e+00},
462{1.0441753e+00},
463{8.0417958e-01},
464{5.9002711e-01},
465{5.8533894e-01},
466{9.3051649e-01},
467{1.0871279e+00},
468{1.0984983e+00},
469{1.2044155e+00},
470{1.0039892e+00},
471{8.4210523e-01},
472{6.3124655e-01},
473{6.8055115e-01},
474{9.7935183e-01},
475{1.1399170e+00},
476{1.1935307e+00},
477{1.2269029e+00},
478{9.3758049e-01},
479{6.9527243e-01},
480{5.0033084e-01},
481{6.8171448e-01},
482{1.0034848e+00},
483{1.0435853e+00},
484{1.1027381e+00},
485{1.1454200e+00},
486{9.9636446e-01},
487{8.7575610e-01},
488{6.7572455e-01},
489{7.6161436e-01},
490{9.8751885e-01},
491{1.1634852e+00},
492{1.2613366e+00},
493{1.2527158e+00},
494{9.3041078e-01},
495{6.3648886e-01},
496{4.4289908e-01},
497{6.4543043e-01},
498{9.6271252e-01},
499{9.6856037e-01},
500{1.0237816e+00},
501{1.1419384e+00},
502{1.1143808e+00},
503{1.0817980e+00},
504{8.2952128e-01},
505{7.0565231e-01},
506{6.5745758e-01},
507{9.3688510e-01},
508{1.1457239e+00},
509{1.2160319e+00},
510{1.2696485e+00},
511{9.8373294e-01},
512{6.9141844e-01},
513{4.7910268e-01},
514{5.8995166e-01},
515{9.4754885e-01},
516{1.0004197e+00},
517{1.0182334e+00},
518{1.1527974e+00},
519{1.0815601e+00},
520{1.0462772e+00},
521{8.0856012e-01},
522{7.2009150e-01},
523{7.3360533e-01},
524{9.9726771e-01},
525{1.1799228e+00},
526{1.2752553e+00},
527{1.2545993e+00},
528{9.1834232e-01},
529{6.1478702e-01},
530{4.2718988e-01},
531{6.4709630e-01},
532{9.5321724e-01},
533{9.4745071e-01},
534{1.0082615e+00},
535{1.1408283e+00},
536{1.1449070e+00},
537{1.1287695e+00},
538{8.6506953e-01},
539{6.9506068e-01},
540{5.9077914e-01},
541{8.5235412e-01},
542{1.0981812e+00},
543{1.1502068e+00},
544{1.2457878e+00},
545{1.0606248e+00},
546{7.9743949e-01},
547{5.7871635e-01},
548{5.5597309e-01},
549{9.0976389e-01},
550{1.0678545e+00},
551{1.0678466e+00},
552{1.1926843e+00},
553{1.0306506e+00},
554{9.0068600e-01},
555{6.8968565e-01},
556{6.8293693e-01},
557{9.2938386e-01},
558{1.1389931e+00},
559{1.2107723e+00},
560{1.2742112e+00},
561{9.9571305e-01},
562{7.0900966e-01},
563{4.8711002e-01},
564{5.7843327e-01},
565{9.4262722e-01},
566{1.0068885e+00},
567{1.0174671e+00},
568{1.1549847e+00},
569{1.0752383e+00},
570{1.0382561e+00},
571{8.0493588e-01},
572{7.2297438e-01},
573{7.5109199e-01},
574{1.0099650e+00},
575{1.1869526e+00},
576{1.2859723e+00},
577{1.2455314e+00},
578{9.0247113e-01},
579{5.9968946e-01},
580{4.2056794e-01},
581{6.6467784e-01},
582{9.5461231e-01},
583{9.3926954e-01},
584{1.0128964e+00},
585{1.1403075e+00},
586{1.1549599e+00},
587{1.1335031e+00},
588{8.6584651e-01},
589{6.8689154e-01},
590{5.7663890e-01},
591{8.4338430e-01},
592{1.0904343e+00},
593{1.1347127e+00},
594{1.2344704e+00},
595{1.0665197e+00},
596{8.1831436e-01},
597{6.0374950e-01},
598{5.6609914e-01},
599{9.0609488e-01},
600{1.0837698e+00},
601{1.0903349e+00},
602{1.2068005e+00},
603{1.0215332e+00},
604{8.5834739e-01},
605{6.4797779e-01},
606{6.6278967e-01},
607{9.5567807e-01},
608{1.1370612e+00},
609{1.1868501e+00},
610{1.2426235e+00},
611{9.6133342e-01},
612{7.1189926e-01},
613{5.0582127e-01},
614{6.4642134e-01},
615{9.8585814e-01},
616{1.0428580e+00},
617{1.0831242e+00},
618{1.1568123e+00},
619{1.0097872e+00},
620{9.0412446e-01},
621{6.9144384e-01},
622{7.4452934e-01},
623{9.5158341e-01},
624{1.1512270e+00},
625{1.2509608e+00},
626{1.2807229e+00},
627{9.7601316e-01},
628{6.6959369e-01},
629{4.5362019e-01},
630{5.8397806e-01},
631{9.3866865e-01},
632{9.7211974e-01},
633{9.9154526e-01},
634{1.1440232e+00},
635{1.1182310e+00},
636{1.1159711e+00},
637{8.6902975e-01},
638{7.1839537e-01},
639{6.3437176e-01},
640{8.7058758e-01},
641{1.1155207e+00},
642{1.1929730e+00},
643{1.2750340e+00},
644{1.0511137e+00},
645{7.5075715e-01},
646{5.2249794e-01},
647{5.2857771e-01},
648{9.0479637e-01},
649{1.0201490e+00},
650{1.0078239e+00},
651{1.1602784e+00},
652{1.0762699e+00},
653{1.0328279e+00},
654{8.1754050e-01},
655{7.1739458e-01},
656{7.6521302e-01},
657{1.0063562e+00},
658{1.1829441e+00},
659{1.2880301e+00},
660{1.2505618e+00},
661{9.0963666e-01},
662{6.0373594e-01},
663{4.2059572e-01},
664{6.5552332e-01},
665{9.5216646e-01},
666{9.3915492e-01},
667{1.0073402e+00},
668{1.1402595e+00},
669{1.1555473e+00},
670{1.1400569e+00},
671{8.7240707e-01},
672{6.8972093e-01},
673{5.7304964e-01},
674{8.3155186e-01},
675{1.0852244e+00},
676{1.1309096e+00},
677{1.2300408e+00},
678{1.0756716e+00},
679{8.2836037e-01},
680{6.1503305e-01},
681{5.6289537e-01},
682{8.9596963e-01},
683{1.0857176e+00},
684{1.0933045e+00},
685{1.2103223e+00},
686{1.0266092e+00},
687{8.5466111e-01},
688{6.4485312e-01},
689{6.5137619e-01},
690{9.5039035e-01},
691{1.1326982e+00},
692{1.1771304e+00},
693{1.2406618e+00},
694{9.6686921e-01},
695{7.2402007e-01},
696{5.1657512e-01},
697{6.4610863e-01},
698{9.8716024e-01},
699{1.0536774e+00},
700{1.0920775e+00},
701{1.1611436e+00},
702{9.9694608e-01},
703{8.7913715e-01},
704{6.7096137e-01},
705{7.4646346e-01},
706{9.8211586e-01},
707{1.1596887e+00},
708{1.2506463e+00},
709{1.2528610e+00},
710{9.3574881e-01},
711{6.4708026e-01},
712{4.5058777e-01},
713{6.4326949e-01},
714{9.6585146e-01},
715{9.7825812e-01},
716{1.0299115e+00},
717{1.1430802e+00},
718{1.1005190e+00},
719{1.0609387e+00},
720{8.1379890e-01},
721{7.1122428e-01},
722{6.9156533e-01},
723{9.7259709e-01},
724{1.1655186e+00},
725{1.2452699e+00},
726{1.2619116e+00},
727{9.4482161e-01},
728{6.4801701e-01},
729{4.4907240e-01},
730{6.2485209e-01},
731{9.5564190e-01},
732{9.7288683e-01},
733{1.0147847e+00},
734{1.1443809e+00},
735{1.1120870e+00},
736{1.0877802e+00},
737{8.3639407e-01},
738{7.0935594e-01},
739{6.5684224e-01},
740{9.2695542e-01},
741{1.1418485e+00},
742{1.2155793e+00},
743{1.2744439e+00},
744{9.9526406e-01},
745{6.9858658e-01},
746{4.8225678e-01},
747{5.7551868e-01},
748{9.3953863e-01},
749{1.0000682e+00},
750{1.0105854e+00},
751{1.1531271e+00},
752{1.0852683e+00},
753{1.0562598e+00},
754{8.2024340e-01},
755{7.2070006e-01},
756{7.2200828e-01},
757{9.7907123e-01},
758{1.1713283e+00},
759{1.2668075e+00},
760{1.2685662e+00},
761{9.4120299e-01},
762{6.3302397e-01},
763{4.3403723e-01},
764{6.1877701e-01},
765{9.4622798e-01},
766{9.5365292e-01},
767{9.9618857e-01},
768{1.1414351e+00},
769{1.1389950e+00},
770{1.1349258e+00},
771{8.7553815e-01},
772{7.0489527e-01},
773{5.9575516e-01},
774{8.3938416e-01},
775{1.0946321e+00},
776{1.1549299e+00},
777{1.2478627e+00},
778{1.0727433e+00},
779{8.0007945e-01},
780{5.7879852e-01},
781{5.4142544e-01},
782{8.9584895e-01},
783{1.0605852e+00},
784{1.0558398e+00},
785{1.1875826e+00},
786{1.0434789e+00},
787{9.2439267e-01},
788{7.1612758e-01},
789{6.8218882e-01},
790{9.0102182e-01},
791{1.1275375e+00},
792{1.2109971e+00},
793{1.2892493e+00},
794{1.0360675e+00},
795{7.3214326e-01},
796{4.9603224e-01},
797{5.2859768e-01},
798{9.0839931e-01},
799{9.9967438e-01},
800{9.8761933e-01},
801{1.1495807e+00},
802{1.0955451e+00},
803{1.0837190e+00},
804{8.6306190e-01},
805{7.2864571e-01},
806{6.9570443e-01},
807{9.1466309e-01},
808{1.1416079e+00},
809{1.2423455e+00},
810{1.2979661e+00},
811{1.0158501e+00},
812{6.9306586e-01},
813{4.6540187e-01},
814{5.3429520e-01},
815{9.1176535e-01},
816{9.7214664e-01},
817{9.6587930e-01},
818{1.1395672e+00},
819{1.1254350e+00},
820{1.1438751e+00},
821{9.1306791e-01},
822{7.3239337e-01},
823{6.1798523e-01},
824{7.9591503e-01},
825{1.0777494e+00},
826{1.1677842e+00},
827{1.2502967e+00},
828{1.1151699e+00},
829{8.1642087e-01},
830{5.8442000e-01},
831{5.0055038e-01},
832{8.4650946e-01},
833{1.0385843e+00},
834{1.0234916e+00},
835{1.1635033e+00},
836{1.0803258e+00},
837{9.9050756e-01},
838{8.0394987e-01},
839{6.9093478e-01},
840{8.1258118e-01},
841{1.0510811e+00},
842{1.1928214e+00},
843{1.2964341e+00},
844{1.1903709e+00},
845{8.5006682e-01},
846{5.6609363e-01},
847{4.2789827e-01},
848{7.4508986e-01},
849{9.7546850e-01},
850{9.4304490e-01},
851{1.0657257e+00},
852{1.1344752e+00},
853{1.1448680e+00},
854{1.0604924e+00},
855{8.0946851e-01},
856{6.6897242e-01},
857{6.3751840e-01},
858{9.5203759e-01},
859{1.1383222e+00},
860{1.1857882e+00},
861{1.2429358e+00},
862{9.6640521e-01},
863{7.0943525e-01},
864{5.0606242e-01},
865{6.3814517e-01},
866{9.8050653e-01},
867{1.0400252e+00},
868{1.0768445e+00},
869{1.1586073e+00},
870{1.0171349e+00},
871{9.1652446e-01},
872{7.0015343e-01},
873{7.3826470e-01},
874{9.3314098e-01},
875{1.1436325e+00},
876{1.2463125e+00},
877{1.2921798e+00},
878{1.0004180e+00},
879{6.8706555e-01},
880{4.6091370e-01},
881{5.5360860e-01},
882{9.2333217e-01},
883{9.7324082e-01},
884{9.7644851e-01},
885{1.1422917e+00},
886{1.1211038e+00},
887{1.1312591e+00},
888{8.9312684e-01},
889{7.2669146e-01},
890{6.2634170e-01},
891{8.3089176e-01},
892{1.0962164e+00},
893{1.1808500e+00},
894{1.2661262e+00},
895{1.0871224e+00},
896{7.8484345e-01},
897{5.5241172e-01},
898{5.0720010e-01},
899{8.7433135e-01},
900{1.0293171e+00},
901{1.0110677e+00},
902{1.1612664e+00},
903{1.0781429e+00},
904{1.0169296e+00},
905{8.1818733e-01},
906{7.0825239e-01},
907{7.8555548e-01},
908{1.0202406e+00},
909{1.1861871e+00},
910{1.2927766e+00},
911{1.2345608e+00},
912{8.9196638e-01},
913{5.9165129e-01},
914{4.1993302e-01},
915{6.8133251e-01},
916{9.5902336e-01},
917{9.3840491e-01},
918{1.0229760e+00},
919{1.1397483e+00},
920{1.1549910e+00},
921{1.1221729e+00},
922{8.5521466e-01},
923{6.8171599e-01},
924{5.8253142e-01},
925{8.6249156e-01},
926{1.0984374e+00},
927{1.1402897e+00},
928{1.2397438e+00},
929{1.0509675e+00},
930{8.0267914e-01},
931{5.8719202e-01},
932{5.7423177e-01},
933{9.2225657e-01},
934{1.0807070e+00},
935{1.0878295e+00},
936{1.2011335e+00},
937{1.0137713e+00},
938{8.6200406e-01},
939{6.5063788e-01},
940{6.7962388e-01},
941{9.6415425e-01},
942{1.1427244e+00},
943{1.2001432e+00},
944{1.2435862e+00},
945{9.5255718e-01},
946{6.9548843e-01},
947{4.9228114e-01},
948{6.4975070e-01},
949{9.8475452e-01},
950{1.0290189e+00},
951{1.0735305e+00},
952{1.1514964e+00},
953{1.0265685e+00},
954{9.3450570e-01},
955{7.1609613e-01},
956{7.4066401e-01},
957{9.0672547e-01},
958{1.1323663e+00},
959{1.2457251e+00},
960{1.3080265e+00},
961{1.0368462e+00},
962{7.0922252e-01},
963{4.6922499e-01},
964{5.0971665e-01},
965{8.9530783e-01},
966{9.6897032e-01},
967{9.5144881e-01},
968{1.1327578e+00},
969{1.1313397e+00},
970{1.1615669e+00},
971{9.4490349e-01},
972{7.4435097e-01},
973{6.0879030e-01},
974{7.4201167e-01},
975{1.0475442e+00},
976{1.1489683e+00},
977{1.2189341e+00},
978{1.1527726e+00},
979{8.6373864e-01},
980{6.3765290e-01},
981{5.0482479e-01},
982{7.9976041e-01},
983{1.0463811e+00},
984{1.0486243e+00},
985{1.1650654e+00},
986{1.0937932e+00},
987{9.5242412e-01},
988{7.7776887e-01},
989{6.5337298e-01},
990{8.3412675e-01},
991{1.0842165e+00},
992{1.1876958e+00},
993{1.2860798e+00},
994{1.1277640e+00},
995{8.0705117e-01},
996{5.4933954e-01},
997{4.6409423e-01},
998{8.2407983e-01},
999{1.0029510e+00},
1000{9.7182671e-01},
1001{1.1248927e+00},
1002{1.1108497e+00},
1003{1.0927585e+00},
1004{9.3345740e-01},
1005{7.4563087e-01},
1006{6.9815644e-01},
1007{8.2911579e-01},
1008{1.0975320e+00},
1009{1.2225208e+00},
1010{1.3041931e+00},
1011{1.1107874e+00},
1012{7.6954799e-01},
1013{5.1381033e-01},
1014{4.5656108e-01},
1015{8.3803614e-01},
1016{9.8059578e-01},
1017{9.4343837e-01},
1018{1.1139527e+00},
1019{1.1272959e+00},
1020{1.1505047e+00},
1021{9.8802150e-01},
1022{7.6846480e-01},
1023{6.4059710e-01},
1024{7.0404249e-01},
1025{1.0213995e+00},
1026{1.1571646e+00},
1027{1.2167098e+00},
1028{1.1922700e+00},
1029{8.8891917e-01},
1030{6.4610240e-01},
1031{4.8423413e-01},
1032{7.4237703e-01},
1033{1.0194305e+00},
1034{1.0263817e+00},
1035{1.1223002e+00},
1036{1.1218476e+00},
1037{1.0047937e+00},
1038{8.6916869e-01},
1039{6.8761628e-01},
1040{7.7272726e-01},
1041{9.8680374e-01},
1042{1.1662112e+00},
1043{1.2718586e+00},
1044{1.2599891e+00},
1045{9.3374084e-01},
1046{6.3070745e-01},
1047{4.3512068e-01},
1048{6.3400337e-01},
1049{9.5387123e-01},
1050{9.5725486e-01},
1051{1.0083783e+00},
1052{1.1414776e+00},
1053{1.1320033e+00},
1054{1.1156485e+00},
1055{8.5730304e-01},
1056{7.0257566e-01},
1057{6.1385070e-01},
1058{8.7645096e-01},
1059{1.1135407e+00},
1060{1.1743915e+00},
1061{1.2617479e+00},
1062{1.0416530e+00},
1063{7.6141001e-01},
1064{5.3947941e-01},
1065{5.5263397e-01},
1066{9.2079176e-01},
1067{1.0423877e+00},
1068{1.0391593e+00},
1069{1.1741828e+00},
1070{1.0475738e+00},
1071{9.6528247e-01},
1072{7.4824631e-01},
1073{7.0765109e-01},
1074{8.6076413e-01},
1075{1.1015853e+00},
1076{1.2180296e+00},
1077{1.3087379e+00},
1078{1.1050105e+00},
1079{7.7144492e-01},
1080{5.1073157e-01},
1081{4.5959721e-01},
1082{8.4138746e-01},
1083{9.8058403e-01},
1084{9.4385625e-01},
1085{1.1155190e+00},
1086{1.1265194e+00},
1087{1.1505430e+00},
1088{9.8480260e-01},
1089{7.6753361e-01},
1090{6.3998096e-01},
1091{7.0790430e-01},
1092{1.0242649e+00},
1093{1.1582776e+00},
1094{1.2187970e+00},
1095{1.1895283e+00},
1096{8.8519343e-01},
1097{6.4254017e-01},
1098{4.8336487e-01},
1099{7.4700679e-01},
1100{1.0202300e+00},
1101{1.0250636e+00},
1102{1.1237335e+00},
1103{1.1201468e+00},
1104{1.0057497e+00},
1105{8.6867488e-01},
1106{6.8876595e-01},
1107{7.7314271e-01},
1108{9.8646241e-01},
1109{1.1663720e+00},
1110{1.2725046e+00},
1111{1.2607985e+00},
1112{9.3432428e-01},
1113{6.3055002e-01},
1114{4.3462242e-01},
1115{6.3267663e-01},
1116{9.5306639e-01},
1117{9.5647018e-01},
1118{1.0069834e+00},
1119{1.1414283e+00},
1120{1.1332454e+00},
1121{1.1183329e+00},
1122{8.5964718e-01},
1123{7.0259273e-01},
1124{6.1086847e-01},
1125{8.7145976e-01},
1126{1.1109278e+00},
1127{1.1713319e+00},
1128{1.2600859e+00},
1129{1.0459933e+00},
1130{7.6697548e-01},
1131{5.4492361e-01},
1132{5.5082792e-01},
1133{9.1787603e-01},
1134{1.0454451e+00},
1135{1.0416026e+00},
1136{1.1762039e+00},
1137{1.0460129e+00},
1138{9.5856257e-01},
1139{7.4291843e-01},
1140{7.0478730e-01},
1141{8.6904294e-01},
1142{1.1074327e+00},
1143{1.2185136e+00},
1144{1.3067057e+00},
1145{1.0916662e+00},
1146{7.6226341e-01},
1147{5.0599582e-01},
1148{4.7004755e-01},
1149{8.5459323e-01},
1150{9.8292600e-01},
1151{9.4923741e-01},
1152{1.1230180e+00},
1153{1.1230727e+00},
1154{1.1436380e+00},
1155{9.6517685e-01},
1156{7.5906667e-01},
1157{6.4229098e-01},
1158{7.3739829e-01},
1159{1.0441989e+00},
1160{1.1689429e+00},
1161{1.2377221e+00},
1162{1.1702644e+00},
1163{8.5776744e-01},
1164{6.1283507e-01},
1165{4.7508171e-01},
1166{7.7650778e-01},
1167{1.0199875e+00},
1168{1.0098181e+00},
1169{1.1277738e+00},
1170{1.1115547e+00},
1171{1.0256012e+00},
1172{8.8156161e-01},
1173{7.0600708e-01},
1174{7.6171841e-01},
1175{9.5613909e-01},
1176{1.1569502e+00},
1177{1.2691300e+00},
1178{1.2887802e+00},
1179{9.7384680e-01},
1180{6.5493328e-01},
1181{4.3953117e-01},
1182{5.7648851e-01},
1183{9.2999054e-01},
1184{9.5436230e-01},
1185{9.7297008e-01},
1186{1.1391325e+00},
1187{1.1416064e+00},
1188{1.1590944e+00},
1189{9.0850247e-01},
1190{7.1895834e-01},
1191{5.8564424e-01},
1192{7.8301903e-01},
1193{1.0675300e+00},
1194{1.1390766e+00},
1195{1.2237314e+00},
1196{1.1158432e+00},
1197{8.4615038e-01},
1198{6.2929929e-01},
1199{5.3024321e-01},
1200{8.4771779e-01},
1201{1.0679772e+00},
1202{1.0707805e+00},
1203{1.1942615e+00},
1204{1.0628072e+00},
1205{9.0277875e-01},
1206{7.0464579e-01},
1207{6.4124982e-01},
1208{8.9445063e-01},
1209{1.1236998e+00},
1210{1.1838208e+00},
1211{1.2721938e+00},
1212{1.0302053e+00},
1213{7.4928918e-01},
1214{5.2054789e-01},
1215{5.5300914e-01},
1216{9.2450978e-01},
1217{1.0290172e+00},
1218{1.0254177e+00},
1219{1.1658431e+00},
1220{1.0585030e+00},
1221{9.9937151e-01},
1222{7.7845423e-01},
1223{7.1727834e-01},
1224{8.1473462e-01},
1225{1.0635825e+00},
1226{1.2081434e+00},
1227{1.3087387e+00},
1228{1.1774543e+00},
1229{8.2930325e-01},
1230{5.4568406e-01},
1231{4.2252006e-01},
1232{7.6155262e-01},
1233{9.6902023e-01},
1234{9.2946430e-01},
1235{1.0663917e+00},
1236{1.1373062e+00},
1237{1.1667915e+00},
1238{1.0769457e+00},
1239{8.1823128e-01},
1240{6.5190054e-01},
1241{6.0082155e-01},
1242{9.2122516e-01},
1243{1.1147361e+00},
1244{1.1467530e+00},
1245{1.2352757e+00},
1246{9.9993521e-01},
1247{7.6890308e-01},
1248{5.5857496e-01},
1249{6.2725763e-01},
1250{9.7318317e-01},
1251{1.0840117e+00},
1252{1.1108847e+00},
1253{1.1857549e+00},
1254{9.7757101e-01},
1255{8.2394503e-01},
1256{6.1941336e-01},
1257{7.2410931e-01},
1258{1.0158088e+00},
1259{1.1491174e+00},
1260{1.2188178e+00},
1261{1.2007209e+00},
1262{8.9859946e-01},
1263{6.5456633e-01},
1264{4.8391373e-01},
1265{7.3135136e-01},
1266{1.0176181e+00},
1267{1.0277501e+00},
1268{1.1176213e+00},
1269{1.1248859e+00},
1270{1.0041498e+00},
1271{8.7364691e-01},
1272{6.8812425e-01},
1273{7.7228478e-01},
1274{9.8423833e-01},
1275{1.1655135e+00},
1276{1.2710944e+00},
1277{1.2619166e+00},
1278{9.3651452e-01},
1279{6.3284215e-01},
1280{4.3578889e-01},
1281{6.3021849e-01},
1282{9.5269846e-01},
1283{9.5770175e-01},
1284{1.0064613e+00},
1285{1.1416014e+00},
1286{1.1318041e+00},
1287{1.1173687e+00},
1288{8.5933718e-01},
1289{7.0364317e-01},
1290{6.1326177e-01},
1291{8.7318554e-01},
1292{1.1121947e+00},
1293{1.1737687e+00},
1294{1.2616019e+00},
1295{1.0447114e+00},
1296{7.6386287e-01},
1297{5.4149208e-01},
1298{5.5006680e-01},
1299{9.1816862e-01},
1300{1.0427545e+00},
1301{1.0385725e+00},
1302{1.1744959e+00},
1303{1.0484442e+00},
1304{9.6566520e-01},
1305{7.4941645e-01},
1306{7.0654030e-01},
1307{8.5978495e-01},
1308{1.1007328e+00},
1309{1.2172148e+00},
1310{1.3084224e+00},
1311{1.1066295e+00},
1312{7.7306455e-01},
1313{5.1195750e-01},
1314{4.5881820e-01},
1315{8.3991753e-01},
1316{9.8090418e-01},
1317{9.4402667e-01},
1318{1.1150495e+00},
1319{1.1263864e+00},
1320{1.1498512e+00},
1321{9.8537193e-01},
1322{7.6788821e-01},
1323{6.4101222e-01},
1324{7.0798171e-01},
1325{1.0241973e+00},
1326{1.1588402e+00},
1327{1.2194902e+00},
1328{1.1900225e+00},
1329{8.8503290e-01},
1330{6.4170616e-01},
1331{4.8247262e-01},
1332{7.4633801e-01},
1333{1.0194608e+00},
1334{1.0238758e+00},
1335{1.1225142e+00},
1336{1.1204876e+00},
1337{1.0078894e+00},
1338{8.7195748e-01},
1339{6.9071922e-01},
1340{7.7128559e-01},
1341{9.8171063e-01},
1342{1.1648359e+00},
1343{1.2716060e+00},
1344{1.2653194e+00},
1345{9.4044785e-01},
1346{6.3462126e-01},
1347{4.3541986e-01},
1348{6.2397592e-01},
1349{9.4996429e-01},
1350{9.5654324e-01},
1351{1.0018949e+00},
1352{1.1415375e+00},
1353{1.1340702e+00},
1354{1.1242483e+00},
1355{8.6601272e-01},
1356{7.0479002e-01},
1357{6.0700568e-01},
1358{8.6003770e-01},
1359{1.1056434e+00},
1360{1.1671804e+00},
1361{1.2575999e+00},
1362{1.0561104e+00},
1363{7.7723774e-01},
1364{5.5451638e-01},
1365{5.4470017e-01},
1366{9.0953268e-01},
1367{1.0489983e+00},
1368{1.0432715e+00},
1369{1.1787522e+00},
1370{1.0466535e+00},
1371{9.5253913e-01},
1372{7.3976965e-01},
1373{6.9910727e-01},
1374{8.7457184e-01},
1375{1.1111747e+00},
1376{1.2168058e+00},
1377{1.3037145e+00},
1378{1.0820947e+00},
1379{7.5710433e-01},
1380{5.0441461e-01},
1381{4.7923251e-01},
1382{8.6434525e-01},
1383{9.8624111e-01},
1384{9.5555561e-01},
1385{1.1291297e+00},
1386{1.1187232e+00},
1387{1.1339455e+00},
1388{9.4624297e-01},
1389{7.5185473e-01},
1390{6.4886735e-01},
1391{7.6947931e-01},
1392{1.0640658e+00},
1393{1.1819490e+00},
1394{1.2581006e+00},
1395{1.1479357e+00},
1396{8.2795383e-01},
1397{5.8084914e-01},
1398{4.6968322e-01},
1399{8.0540679e-01},
1400{1.0147037e+00},
1401{9.9267552e-01},
1402{1.1297166e+00},
1403{1.1074520e+00},
1404{1.0535732e+00},
1405{8.9989357e-01},
1406{7.2414622e-01},
1407{7.3710872e-01},
1408{9.0842211e-01},
1409{1.1372436e+00},
1410{1.2550645e+00},
1411{1.3118017e+00},
1412{1.0309191e+00},
1413{6.9715233e-01},
1414{4.6014528e-01},
1415{5.1093338e-01},
1416{8.9602085e-01},
1417{9.6063866e-01},
1418{9.4454964e-01},
1419{1.1299822e+00},
1420{1.1400660e+00},
1421{1.1784050e+00},
1422{9.5942169e-01},
1423{7.4592605e-01},
1424{5.9179210e-01},
1425{7.0833096e-01},
1426{1.0269127e+00},
1427{1.1280089e+00},
1428{1.1874924e+00},
1429{1.1668412e+00},
1430{8.9924653e-01},
1431{6.8916581e-01},
1432{5.3047422e-01},
1433{7.7534076e-01},
1434{1.0549099e+00},
1435{1.0847312e+00},
1436{1.1818109e+00},
1437{1.1071479e+00},
1438{9.0609669e-01},
1439{7.2016981e-01},
1440{5.9922569e-01},
1441{8.4631545e-01},
1442{1.1007330e+00},
1443{1.1539455e+00},
1444{1.2548057e+00},
1445{1.0707369e+00},
1446{7.9955359e-01},
1447{5.7211183e-01},
1448{5.3729384e-01},
1449{8.9511329e-01},
1450{1.0559775e+00},
1451{1.0482488e+00},
1452{1.1833103e+00},
1453{1.0467011e+00},
1454{9.3892077e-01},
1455{7.3109756e-01},
1456{6.8881096e-01},
1457{8.8724202e-01},
1458{1.1196405e+00},
1459{1.2137632e+00},
1460{1.2969341e+00},
1461{1.0598913e+00},
1462{7.4476987e-01},
1463{5.0025043e-01},
1464{5.0175473e-01},
1465{8.8612613e-01},
1466{9.9295902e-01},
1467{9.7027740e-01},
1468{1.1406663e+00},
1469{1.1082236e+00},
1470{1.1111857e+00},
1471{9.0519862e-01},
1472{7.3853971e-01},
1473{6.6752554e-01},
1474{8.4076984e-01},
1475{1.1041197e+00},
1476{1.2107499e+00},
1477{1.2910787e+00},
1478{1.0889124e+00},
1479{7.6218879e-01},
1480{5.1854183e-01},
1481{4.8212027e-01},
1482{8.6343438e-01},
1483{9.9664176e-01},
1484{9.6786348e-01},
1485{1.1354766e+00},
1486{1.1100558e+00},
1487{1.1078273e+00},
1488{9.1950063e-01},
1489{7.4186814e-01},
1490{6.7554741e-01},
1491{8.2771704e-01},
1492{1.0970261e+00},
1493{1.2115055e+00},
1494{1.2926801e+00},
1495{1.1044430e+00},
1496{7.7268354e-01},
1497{5.2367729e-01},
1498{4.6962326e-01},
1499{8.4775775e-01},
1500{9.9325612e-01},
1501{9.6094332e-01},
1502{1.1271528e+00},
1503{1.1156670e+00},
1504{1.1183008e+00},
1505{9.4351589e-01},
1506{7.5035067e-01},
1507{6.6773972e-01},
1508{7.8886291e-01},
1509{1.0750322e+00},
1510{1.1971741e+00},
1511{1.2770426e+00},
1512{1.1387571e+00},
1513{8.0837143e-01},
1514{5.5509702e-01},
1515{4.5955065e-01},
1516{8.1398530e-01},
1517{1.0008314e+00},
1518{9.7057086e-01},
1519{1.1195985e+00},
1520{1.1149111e+00},
1521{1.0957539e+00},
1522{9.4451157e-01},
1523{7.4819097e-01},
1524{6.9474604e-01},
1525{8.1250200e-01},
1526{1.0876804e+00},
1527{1.2158509e+00},
1528{1.2988266e+00},
1529{1.1270851e+00},
1530{7.8595861e-01},
1531{5.2690470e-01},
1532{4.5032342e-01},
1533{8.2266007e-01},
1534{9.8371303e-01},
1535{9.4630598e-01},
1536{1.1090276e+00}};
1537
1538    private static readonly Dataset defaultDataset;
1539    private static readonly IEnumerable<string> defaultAllowedInputVariables;
1540    private static readonly string defaultTargetVariable;
1541
1542    static TimeSeriesPrognosisProblemData() {
1543      defaultDataset = new Dataset(new string[] { "x" }, mackey_glass_17);
1544      defaultDataset.Name = "Mackey-Glass (t=17) Time Series Benchmark Dataset";
1545      defaultAllowedInputVariables = Enumerable.Empty<string>();
1546      defaultTargetVariable = "x";
1547    }
1548    #endregion
1549
1550    private const string TrainingHorizonParameterName = "Training Horizon";
1551    private const string TestHorizonParameterName = "Test Horizon";
1552
1553    public IFixedValueParameter<IntValue> TrainingHorizonParameter {
1554      get { return (IFixedValueParameter<IntValue>)Parameters[TrainingHorizonParameterName]; }
1555    }
1556    public IFixedValueParameter<IntValue> TestHorizonParameter {
1557      get { return (IFixedValueParameter<IntValue>)Parameters[TestHorizonParameterName]; }
1558    }
1559
1560    #region Properties
1561    public int TrainingHorizon {
1562      get { return TrainingHorizonParameter.Value.Value; }
1563      set { TrainingHorizonParameter.Value.Value = value; }
1564    }
1565
1566    public int TestHorizon {
1567      get { return TestHorizonParameter.Value.Value; }
1568      set { TestHorizonParameter.Value.Value = value; }
1569    }
1570    #endregion
1571
1572    [StorableConstructor]
1573    protected TimeSeriesPrognosisProblemData(bool deserializing) : base(deserializing) { }
1574
1575    protected TimeSeriesPrognosisProblemData(TimeSeriesPrognosisProblemData original, Cloner cloner) : base(original, cloner) { }
1576    public override IDeepCloneable Clone(Cloner cloner) {
1577      return new TimeSeriesPrognosisProblemData(this, cloner);
1578    }
1579
1580    public TimeSeriesPrognosisProblemData()
1581      : this(defaultDataset, defaultAllowedInputVariables, defaultTargetVariable) {
1582      TrainingPartition.Start = 50;
1583    }
1584    public TimeSeriesPrognosisProblemData(Dataset dataset, IEnumerable<string> allowedInputVariables, string targetVariable)
1585      : base(dataset, allowedInputVariables, targetVariable) {
1586      Parameters.Add(new FixedValueParameter<IntValue>(TrainingHorizonParameterName, "Specifies the horizon (how far the prognosis reaches in the future) for each training sample.", new IntValue(1)));
1587      Parameters.Add(new FixedValueParameter<IntValue>(TestHorizonParameterName, "Specifies the horizon (how far the prognosis reaches in the future) for each test sample.", new IntValue(1)));
1588
1589      TrainingHorizonParameter.Hidden = true;
1590      TestHorizonParameter.Hidden = true;
1591
1592      TrainingPartition.Start = Math.Min((int)(TrainingPartition.Size * 0.2), 50);
1593
1594      RegisterParameterEventHandlers();
1595    }
1596
1597    public TimeSeriesPrognosisProblemData(ITimeSeriesPrognosisProblemData timeseriesProblemData)
1598      : this(timeseriesProblemData.Dataset, timeseriesProblemData.AllowedInputVariables, timeseriesProblemData.TargetVariable) {
1599
1600      TrainingPartition.Start = timeseriesProblemData.TrainingPartition.Start;
1601      TrainingPartition.End = timeseriesProblemData.TrainingPartition.End;
1602      TestPartition.Start = timeseriesProblemData.TestPartition.Start;
1603      TestPartition.End = timeseriesProblemData.TestPartition.End;
1604
1605      TrainingHorizon = timeseriesProblemData.TrainingHorizon;
1606      TestHorizon = timeseriesProblemData.TestHorizon;
1607    }
1608
1609    [StorableHook(HookType.AfterDeserialization)]
1610    private void AfterDeserialization() {
1611      RegisterParameterEventHandlers();
1612    }
1613
1614    private void RegisterParameterEventHandlers() {
1615      TrainingHorizonParameter.Value.ValueChanged += new System.EventHandler(Parameter_ValueChanged);
1616      TestHorizonParameter.Value.ValueChanged += new System.EventHandler(Parameter_ValueChanged);
1617    }
1618
1619    private void Parameter_ValueChanged(object sender, EventArgs e) {
1620      OnChanged();
1621    }
1622
1623    protected override bool IsProblemDataCompatible(IDataAnalysisProblemData problemData, out string errorMessage) {
1624      if (problemData == null) throw new ArgumentNullException("problemData", "The provided problemData is null.");
1625      ITimeSeriesPrognosisProblemData timeseriesProblemData = problemData as ITimeSeriesPrognosisProblemData;
1626      if (timeseriesProblemData == null)
1627        throw new ArgumentException("The problem data is not a time-series problem data. Instead a " + problemData.GetType().GetPrettyName() + " was provided.", "problemData");
1628
1629      var returnValue = base.IsProblemDataCompatible(problemData, out errorMessage);
1630      //check targetVariable
1631      if (problemData.InputVariables.All(var => var.Value != TargetVariable)) {
1632        errorMessage = string.Format("The target variable {0} is not present in the new problem data.", TargetVariable)
1633                       + Environment.NewLine + errorMessage;
1634        return false;
1635      }
1636      return returnValue;
1637    }
1638
1639    public override void AdjustProblemDataProperties(IDataAnalysisProblemData problemData) {
1640      TimeSeriesPrognosisProblemData timeSeriesProblemData = problemData as TimeSeriesPrognosisProblemData;
1641      if (timeSeriesProblemData == null)
1642        throw new ArgumentException("The problem data is not a timeseries problem data. Instead a " + problemData.GetType().GetPrettyName() + " was provided.", "problemData");
1643
1644      var trainingDataStart = TrainingIndices.First();
1645