• Aucun résultat trouvé

Varying the time granularity

OPTIMAL SELECTION OF TV SHOWS FOR WATCHING AND RECORDING

5.6 Run time improvements

5.7.1 Varying the time granularity

Next, we are going to increase the granularity of the user availability timea from 1 to 30 minutes to determine the effect on the number of states, the run time, and the total value. For the effect on the number of states, see Figure 5.4.

Wim F.J. Verhaegh

83 The effect of the granularity on the run time of the dynamic programming algorithm is shown in Figure 5.5. The effect of the granularity on the total value of the solution is less than 1%. It turned out, for instance, that for a granularity of 30 minutes the optimal solution contained shows selected for watching that all last a multiple of 30 minutes. For these shows, the effect of rounding the user availability time is void.

5.7.2 Filtering shows

Next, we are going to filter shows on their preference density value, and see what the effect is on the run time and total value. To this end, we applied a threshold 1,...,20 on the preference density value of the shows, and solved

Figure 5.3. A practical example of TV shows and the resulting schedule. The dark grey boxes indicate the shows that have been selected for watching, for which the schedule is given at the bottom, and the light grey boxes indicate the shows that have been selected for recording. The height of a box indicates the preference value of the corresponding show. The number of tuners is four in this example.

time

channels

18:00 19:00 20:00 21:00 22:00 23:00 00:00 01:00

18:00 19:00 20:00 21:00 22:00 23:00 00:00 01:00

resulting watch schedule

Optimal Selection of TV Shows for Watching and Recording

84

Table 5.1. The list of shows selected for reception and watching. For shows to be watched, the time indicates when they are scheduled for watching, and between brackets the corresponding time shift is given. The value is given by the weight (2 for watching, 1 for reception only) times the duration in minutes times the preference value.

time (shift) channel show value

receive & watch:

18:00–19:00 TMF Babetrap 2·60·20

19:00–19:31 (0:52) ARD Sportschau: EK voetbal 31·20 19:31–19:32 (0:52) ARD Ein gutes Los f ¨ur alle 2·1·20

19:32–19:35 (0:32) Nederland 3 Nederland 3 2·3·18

19:35–20:25 (0:30) Nickelodeon Saved by the bell 50·20

20:25–21:25 (0:25) TMF Interactive charts 2·60·20

21:25–22:50 (0:50) Nederland 3 Tegenlicht 85·20

22:50–23:00 (0:15) Nederland 3 NOS-Journaal 2·10·19 receive only:

18:00–18:05 KETNET/Canvas Hopla 12

18:00–18:15 Nederland 3 Sesamstraat 1·15·20

18:00–18:55 SBS 6 Klussen & wonen 1·55·19

18:05–18:08 ARD Der 7er Sinn 1·3·4

18:15–18:25 Nederland 3 Melatten 1·10·15

18:25–18:30 Nederland 3 Buikzingen 20

18:30–19:00 RTL 5 Stapel op auto’s 1·30·16

18:40–19:05 Nickelodeon Kuifje 25·15

18:55–20:30 Veronica The Dukes of Hazzard 1·95·19

19:00–19:30 Yorin De modepolitie 30·19

19:03–19:33 Nederland 3 Gewe(e)st 1·30·14

19:30–20:00 RTL 4 RTL Nieuws 1·30·16

19:33–20:35 Nederland 3 R.A.M. Compilatie 62·19

19:58–20:00 ARD Heute Abend im Ersten 1·2·13

20:00–20:15 WDR Fernsehen Tagesschau 15·15

20:15–20:45 Nederland 1 De vakantierechter 1·30·18

20:30–22:20 NET 5 Outrageous fortune 110·17

20:45–22:28 Nederland 1 KRO Detectives: Second sight 1·103·20 21:00–22:00 Discovery Channel Xtreme martial arts 1·60·20 22:00–23:00 Discovery Channel Xtreme martial arts 1·60·19 22:00–23:00 National Geographic Innovation: Spy catchers 1·60·14

22:25–22:35 Nederland 3 D66 10·18

22:30–00:35 Veronica The Emerald forest 1·125·16

22:45–23:40 Yorin The bachelor 55·17

23:00–23:15 BBC 1 Nieuws en weerbericht 1·15·11

23:08–01:07 Nederland 1 KRO Filmtheater: Musicbox 1·119·11 23:15–00:20 SBS 6 Reportage: Oog in oog met ... 1·65·20

23:45–00:25 Nederland 2 De nieuwe pest 1·40·18

Wim F.J. Verhaegh

85

Table 5.2. The list of shows selected for reception and watching in case of two tuners.

time (shift) channel show value

receive & watch:

18:00–18:55 SBS 6 Klussen & wonen 2·55·19

18:55–19:55 (0:55) TMF Babetrap 2·60·20

19:55–20:45 (0:50) Nickelodeon Saved by the bell 2·50·20 20:45–20:47 (0:47) ARD Heute Abend im Ersten 2·2·13 20:47–21:17 (0:32) Nederland 1 De vakantierechter 2·30·18 21:17–23:00 (0:32) Nederland 1 KRO Detectives: Second sight 2·103·20 receive only:

18:55–20:30 Veronica The Dukes of Hazzard 1·95·19

19:00–19:03 Nederland 3 Nederland 3 1·3·18

20:00–20:15 WDR Fernsehen Tagesschau 1·15·15

20:35–22:00 Nederland 3 Tegenlicht 1·85·20

22:00–23:00 Discovery Channel Xtreme martial arts 1·60·19

22:30–00:35 Veronica The Emerald forest 1·125·16

23:00–23:15 BBC 1 Nieuws en weerbericht 1·15·11

23:15–00:20 SBS 6 Reportage: Oog in oog met ... 1·65·20

the instance with the shows having this value or higher. The results are shown in Figure 5.6. As we can see, we can save quite some run time by applying a threshold before the quality of the end solution drops.

5.8 Conclusion

We have presented the problem of how to optimally select a number of TV shows for reception and watching, and showed that the problem is NP-hard.

Next, we have presented a dynamic programming approach that finds optimal solutions, and works in a reasonable run time in practice. We also presented and tested a few ways to reduce the run time of the approach, thereby finding approximate solutions.

Future work concerns the extension of the presented problem to include ad-ditional relevant problem aspects, to refine the objective function by including dependencies between shows, and the extension of the solution approach. Fur-thermore, when the techniques are to be used in real applications, actual values for the threshold, the time granularity, the time horizon, etcetera, have to be made.

Next, the second stage of TV evening programming has to be addressed, which concerns the compilation of sequences of shows from the set of selected and stored shows, and eventually shows also have to be chosen for deletion, in order to make room for new ones.

Optimal Selection of TV Shows for Watching and Recording

86

0 20,000 40,000 60,000 80,000 100,000 120,000 140,000 160,000 180,000

0 20 40 60 80 100 120 140 160 180 200

iteration

states

Figure 5.4. The number of states as a function of the iteration number 1,...,191, for a gran-ularity of 1 (top line), 2, 5, 10, 15, and 30 (bottom line) minutes, for the example with four tuners.

0 20 40 60 80 100 120 140 160 180

0 5 10 15 20 25 30

granularity

run time

Figure 5.5. The run time of the dynamic programming approach (in seconds) as a function of the granularity (in minutes), for the example with four tuners.

Wim F.J. Verhaegh

87

0 20 40 60 80 100 120 140 160 180

0 5 10 15 20

0 5000 10000 15000 20000 25000 30000

preference threshold

run time total value

total value

run time

Figure 5.6. The effect of applying a threshold of 1,...,20 for the preference value on the run time (in seconds, lower graph and left scale), and on the total value (upper graph, right scale), for the example with four tuners.

Gutta, S., K. Kurapati, K.P. Lee, J. Martino, J. Milanski, D. Schaffer, and J. Zimmerman [2000].

TV content recommender system. InProceedings of the 17th National Conference on AI, pages 1121–1122.

Korst, J. [1992].Periodic Multiprocessor Scheduling. Ph.D. thesis, Eindhoven University of Technology.

Papadimitriou, C.H., and K. Steiglitz [1982]. Combinatorial Optimization: Algorithms and Complexity. Prentice-Hall.

Smyth, B., and P. Cotter [2000]. A personalized TV listing service for the digital TV age.

Knowledge-Based Systems, 13:53–59.

References

Garey, M.R., and D.S. Johnson [1979].Computers and Intractability: A Guide to the Theory of NP-Completeness. W.H. Freeman and Company, New York.

Optimal Selection of TV Shows for Watching and Recording

Chapter 6

MOVIE-IN-A-MINUTE: AUTOMATICALLY