Clemens Zeidler

Christof Lutteroth

Gerald Weber
email: g.weber@cs.auckland.ac.nz

An Evaluation of Stacking and Tiling Features within the Traditional Desktop Metaphor

Keywords: window manager, tabbing, usability, evaluation

des établissements d'enseignement et de recherche français ou étrangers, des laboratoires publics ou privés.

Introduction

In the traditional desktop metaphor, windows can float freely on the desktop and are allowed to overlap each other. One problem that arises when having multiple windows open at the same time is that the content of some windows may get partially or fully occluded. To make the content visible again the user has to bring the occluded window to the front or move other windows aside. This can make the management of overlapping windows tedious and time consuming [START_REF] Bury | Window management in interactive computer systems[END_REF] and task management can become another task [START_REF] Oliver | SWISH: semantic analysis of window titles and switching history[END_REF].

An alternative approach to overlapping windows is a tiling window manager where windows are tiled beside of each other. This approach can be superior to the overlapping approach [START_REF] Bly | A comparison of tiled and overlapping windows[END_REF][START_REF] Kandogan | Elastic windows: evaluation of multi-window operations[END_REF]. There is also the idea of stacking windows on top of each other [START_REF] Beaudouin-Lafon | Novel interaction techniques for overlapping windows[END_REF]. Tabbed interfaces became very popular in web browsers, but are widely unused in window management. Despite these alternatives and extensions, all main desktop operating systems are still primarily using the traditional overlapping window approach.

In this paper we investigate the benefits of stacking and tiling features in a traditional overlapping window manager. To analyze such features, we first present Stack & Tile, which is an extension of a traditional window manager. Stack & Tile allows users to stack windows on top of one another and tile windows beside of each other (Figure 1). In this way the user is able to create window groups (Stack & Tile groups) consisting of arbitrary windows from different applications, which can be controlled similar to single windows. Window groups can still overlap other windows or window groups, so Stack & Tile integrates seamlessly into the traditional desktop. To answer the main question in this study, whether stacking and tiling within an overlapping window manager bring any benefits to the user, we conducted a controlled experiment to determine in which use-cases Stack & Tile performs better than a traditional window manager. We looked at use-cases where the user is working with documents of the same or of different applications, and a use-case where data is exchanged between documents of the same application, and designed experimental tasks accordingly. Another task measured the time needed to switch between different groups of windows. We found that for all tasks Stack & Tile performed significantly faster. Furthermore, the setup time used to create a Stack & Tile group is acceptably low. Most participants stated that Stack & Tile makes window management easier and more enjoyable.

Stack & Tile is already integrated in the open-source operating system Haiku1 , and thus is already exposed to a large group of developers and users. This allowed us to target another interesting question: How are stacking and tiling features used and accepted by real users? In a web-based survey we asked the Haiku community about their opinions and experiences of Stack & Tile. From 146 responses we got a detailed insight into how, how often and for what applications Stack & Tile is used.

Contribution

In this work, we analyze the potential of stacking and tiling features in the traditional desktop metaphor. In particular, we present:

1. A concept for integrating stacking and tiling unobtrusively into a traditional window manager.

The Stack & Tile Window Manager

In Stack & Tile, users can stack and tile windows together to create window groups according to their needs. Groups behave like single windows, and can be used together with other windows as usual. Stack & Tile combines the advantages of stacked and tiled windows with the freedom of overlapping windows.

This combination can help users to manage their windows more effectively. Tiled windows in an active Stack & Tile group are always visible and not occluded by other windows. As shown later, this makes it easier to exchange data between windows. A window stack can be used to group windows together whose content does not need to be visible at the same time. Grouping windows used for a certain task together in a Stack & Tile group can result in a cleaner desktop and facilitate switching between tasks involving multiple windows.

Internally linear constraints are used to describe a Stack & Tile group, employing the tabstop and area system of the Auckland Layout Model (ALM) [START_REF] Lutteroth | Domain specific High-Level constraints for user interface layout[END_REF]. Areas are simply the tiles where windows can be placed, and tabstops are their borders. For example, two stacked windows are sharing the same tabstops and are therefore always getting the same size. The minimum size of a window is specified using a hard constraint while the maximum and current window sizes are specified using soft constraints. Window operations modify the constraint specifications that describe the Stack & Tile groups, and the window manager solves the specifications and rerenders the windows.

Currently, there is a fully working Stack & Tile implementation available, which is well-known and appreciated in the Haiku OS community. It is showcased regularly at large open-source conferences, and has been integrated into the default Haiku OS user interface. Stacking: Briefly, a stacking operation is triggered by moving the title tab of the candidate window onto the tile tab of a parent window while holding the Stack & Tile key. To be more precise, the candidate window has to be dragged by the title tab so that the upper edge of the candidate window tab is on the parent window tab, and the x-position of the mouse cursor is in the x-range of the parent title tab. When a valid stacking candidate-parent pair is found, the window title tabs of both windows are highlighted (left of Figure 2).

2.1

Stack & Tile Operations

After stacking windows on top of one another, the stacked windows have the same position and size. The title tabs are automatically arranged beside each other, so that the stacked windows are accessible over a tab interface at the top of the stack. The result is comparable with a tab bar, e.g. in a tabbed web browser, with a similar functionality for reordering tabs.

Tiling: If the Stack & Tile key is pressed, dragging and dropping a candidate window border close to one or more parent window borders triggers the tiling operation (right of Figure 2). Tiled windows always share a border position. For example, when tiling two windows horizontally, the right border of the left window always has the same position as the left border of the right window. Furthermore, the top and bottom of both windows are aligned with each other. Windows can be tiled to any free rec-tangular region of an existing group, and can span the width and height of several other windows in the group. Figure 1 shows an example of a tiled window group.

Removing from a Group: A window can be removed from a Stack & Tile group by holding down the Stack & Tile key and dragging the window away from the group. After removing the window from the group, the window behaves just like an ordinary window in the desktop metaphor. In case the removed window was the only connection between other windows in the group, the group is split into several independent groups.

Traditional Window Management Operations

When interacting with a Stack & Tile group, the semantics of the traditional window management operations change slightly. Stack & Tile applies window management operations to multiple windows, which has already been considered to be helpful in Elastic Windows [START_REF] Kandogan | Elastic windows: evaluation of multi-window operations[END_REF].

Activating one window in a Stack & Tile group raises all windows in the Stack & Tile group. Only the window that triggered the group operation gets the input focus.

Moving a window by a certain offset also moves all other group windows by the same offset. This means windows in a Stack & Tile group keep their relative position to each other.

Resizing one window in a Stack & Tile group leaves all windows in the group aligned to each other. For example, windows that are tiled to a resized window are moved or resized accordingly. This is done by temporarily setting a high priority for the size constraint of the resized window. In this way, the resized window gets its new size and the other windows adapt according to the solution of the constraint system.

Hiding or showing a window also hides or shows all other windows in the group. Thus, all windows in a Stack & Tile group are either hidden or shown.

Related Work

Novel techniques for overlapping windows such as snapping windows to a master window or organizing them in tabs have already been proposed in 2001 [START_REF] Beaudouin-Lafon | Novel interaction techniques for overlapping windows[END_REF]. However, they have not been evaluated for traditional window managers.

A comparison between overlapping, stacked and "piled" windows found that tabbed interfaces are doing well when it comes to finding a document [START_REF] Jakobsen | Piles, tabs and overlaps in navigation among documents[END_REF]. The study only looked at windows of the same application, while our study also looks at tasks involving windows of different applications (in contrast to windows of the same application, they are not grouped in the taskbar). Furthermore, they did not consider the presence of windows that were not part of the task at hand.

The Google Chrome 2 browser can stack web pages running in different processes, and extends the usage of the tab interface to stack different instances of the same ap-plication. Stack & Tile is more general and is working not only with windows of a particular application, but with arbitrary windows of arbitrary applications.

Roughly one year after the first release of Stack & Tile, a similar stacking feature was implemented in the KDE desktop environment 3 . Although KDE has an optional Notion-like tiling window manager (see below), a combination of stacking and tiling in the standard KDE desktop is not possible.

Tiling window managers allow users to tile windows beside each other. Windows are arranged so that they do not overlap each other and are aligned without gaps and fragmentation. In general, windows are arranged automatically by the window manager, using the whole screen, but the user has the ability to rearrange the window tiling using different layouts [START_REF] Bell | Dynamic space management for user interfaces[END_REF][START_REF] Funke | An approach to intelligent automated window management[END_REF][START_REF] Haraty | AdWiL: adaptive windows layout manager[END_REF][START_REF] Kandogan | Elastic windows: evaluation of multi-window operations[END_REF][START_REF] Stewart | Xmonad[END_REF]. For example, the tiling window manager Notion4 allows the user to rearrange the tile layout manually, and multiple windows can be stacked into one tile. By comparison, Stack & Tile integrates seamlessly with the traditional desktop metaphor. In Windows 7, two windows can be tiled horizontally using the whole screen space. However, more complex tiling layouts with more than two windows, as in Stack & Tile, are not possible.

Tiling windows can help the user to organize their windows better. Already in old studies it has been shown that tiled windows can be superior to overlapping windows in certain use-cases. For example, if all window content fits into the allocated tiles, the tiling approach leads to shorter task completion times [START_REF] Bly | A comparison of tiled and overlapping windows[END_REF]. Another study found that the completion time is lower for tiled windows when comparing information sources in multiple windows and scanning through windows of a certain window group [START_REF] Kandogan | Elastic windows: evaluation of multi-window operations[END_REF]. Stack & Tile leverages the advantages of tiled windows, but integrates tiling with the traditional overlapping window management.

It is quite common that users work on different task in parallel and switch back and forth between different windows [START_REF] Tak | Improving window switching interfaces[END_REF]. Typically windows from different tasks are overlapping each other, and task switching involves the manipulation of many windows. One approach to address this is to let the user group windows by task [START_REF] Kandogan | Elastic windows: evaluation of multi-window operations[END_REF][START_REF] Tashman | Windowscape: Lessons learned from a task-centric window manager[END_REF]. Another approach is to analyze the user activities and assign windows to tasks automatically [START_REF] Bernstein | Taskposé: exploring fluid boundaries in an associative window visualization[END_REF][START_REF] Ishak | Content-aware layout[END_REF][START_REF] Oliver | SWISH: semantic analysis of window titles and switching history[END_REF][START_REF] Tashman | Windowscape: Lessons learned from a task-centric window manager[END_REF][START_REF] Xu | Push-and-pull switching: window switching based on window overlapping[END_REF]. For example, WindowScape [START_REF] Tashman | Windowscape: Lessons learned from a task-centric window manager[END_REF] creates a timeline of previous window configurations, and also allows users to assign windows to tasks manually. This is similar to an activity centered desktop [START_REF] Bardram | Support for activity-based computing in a personal computing operating system[END_REF] where applications can be assigned to activities. Also Stack & Tile can be used to group windows by task. Additionally, Stack & Tile helps users to optimize the layout of window groups.

To reduce the probability of overlapping existing windows on the screen and to group windows by task, the concept of multiple virtual workspaces can be used [START_REF] Jr | Rooms: the use of multiple virtual workspaces to reduce space contention in a window-based graphical user interface[END_REF]. Another option is to increase the physical workspace by attaching multiple monitors to a computer [START_REF] Hutchings | Display space usage and window management operation comparisons between single monitor and multiple monitor users[END_REF]. However, often windows overlap other windows, and some approaches use alternative methods to make overlapped windows temporary available without losing the focus on the active window [START_REF] Chapuis | Metisse is not a 3D desktop! In[END_REF][START_REF] Chapuis | Copy-and-paste between overlapping windows[END_REF]. For example, an occluded window can be made visible by folding the overlapping window back like a piece of paper [START_REF] Chapuis | Copy-and-paste between overlapping windows[END_REF].

The Scwm window manager [START_REF] Badros | Scwm: An extensible Constraint-Enabled window manager[END_REF] gives the user the opportunity to specify relations and constraints for each window. For example, it is possible to set a relative distance between two windows or set the minimum or maximum size of a window. With this approach it is also possible to tile windows beside each other. However, because constraints in Scwm are on a lower level of abstraction, tiling is not as easily accessible as in other tiling window managers and Stack & Tile.

Experimental Evaluation

In this section we compare Stack & Tile with a traditional window manager in a controlled experiment, using tasks that are representative of certain use-cases that involve multiple windows (multi-window tasks). Stack & Tile makes it possible to group windows with direct manipulation operations, and offers window management operations that affect all the windows in a group. This can be used to manage occlusion and quickly switch between groups of windows related to different tasks.

Methodology

We conducted a within-subjects study, i.e. each participant performed two runs of tasks: one run with Stack & Tile and one run without Stack & Tile. To avoid order bias, the order of the runs was alternated between participants. Furthermore, there were two different sets of similar tasks for each run. Also the order of the sets of tasks was permuted. Each run included a window setup phase followed by three question tasks and a group switching task.

To start with, each participant got an introduction to the Haiku window manager, its taskbar and Stack & Tile. After that the participant had time to get familiar with the system. Then each participant performed a training run, which was similar to the main runs but with shorter tasks. Participants were allowed to use different methods to switch between windows, e.g. Alt+tab or the taskbar.

Each run was guided by instructions shown in a small instruction window that was placed at the bottom-right screen corner on top of all other windows (see Figure 3). The size of the instruction window was chosen to be as small as possible to not interfere with other windows on the screen. At the beginning of each task, the instruction window was in fullscreen mode, so that the participant was not distracted by other windows on the screen. After the participant had internalized the instruction, she had to press the start button to start a timer. This resized the instruction window back to its smaller size at the bottom-right. For the question tasks, the instruction window also contained a question with a three-point multiple choice answer field. When the participant had completed the task, she had to press a finish button to stop the timer. Pressing the finish button adds a small and fairly constant offset to the task completion time, which does not affect the outcome of our comparison. Afterwards, the instruction window was shown in fullscreen mode again with the next instructions. Each task involved multiple windows, and all windows of all tasks (in total 12 windows) were open all the time. We think this is a realistic number of windows, but it is not unusual that users have even more windows open at a time [START_REF] Wagner | Left-over Windows Cause Window Clutter[END_REF]. We were interested in the efficiency of managing multiple windows and tasks, so we tried to minimize the time spent on activities unrelated to window management. Thus, the question tasks were designed to be very easy, but the answers were not guessable. The three question tasks were targeting H1, with each task addressing a different use-case.

Setup Phase The first step of a run was to open all windows for all tasks. For each task, the participant got a description in the instruction window about what windows were involved in the task. Then the windows were opened automatically, so that the participant could get familiar with them before starting the task. When using Stack & Tile, there was an extra step where the participant had to stack or tile the windows, depending on the task. Here the setup time taken to create a certain Stack & Tile group was measured.

Task I The first question task was about finding a picture in a set of five pictures and answering an easy question about it. Each picture was opened in a single window and there was one question for each picture (e.g. Figure 3). This targeted the use-case of working with multiple windows of the same application, where no data needs to be exchanged between the windows. It simulates typical lookup tasks, where a user needs to activate the window that contains a particular piece of information.

When it comes to finding a certain window, it can be helpful if all windows of interest for the task have been stacked previously. In this case, activating one window of the stack brings the whole group to the front, and the right window can be chosen through the tab interface. When using Stack & Tile, the participant was asked to stack all five pictures on top of one another to take advantage of this behavior. Without Stack & Tile, the participant had to search for the right window on the desktop, or use the taskbar. Because the taskbar groups windows by application, it provides a similar grouping facility as a window stack, and it is unclear if Stack & Tile is advantageous.

Task II The second question task was similar to Task I. Here, three windows were involved: a web page, a PDF document and a text document. This targeted the usecase of working with windows of different applications, where no data needs to be exchanged between the windows. As before, there was one question for each document, e.g. "What is the first word of the second paragraph in the web page?" In the Stack & Tile condition, the three windows had to be stacked first.

There are two reasons why it is expected that navigation in this more heterogeneous group is more difficult than in Task I. First, because windows are opened with different applications, they are not grouped together in the taskbar anymore. Secondly, because documents of different types also differ visually, users cannot rely as much on visual similarity as in Task I when associating a window with the task.

Task III The third question task targeted the use-case of working with windows of the same application, where data needs to be exchanged between the windows. To simulate this use-case, a simple coordinate treasure map game was chosen. A treasure map is a 7x5 table, with each cell containing either a coordinate pointing to a cell in another map or a treasure. For example, the coordinate M2(D,5) points to map 2, cell (D,5). Starting from an initial coordinate, the participant had to visually follow the path through four different maps to find a "treasure". The treasure was always reached after three steps, and the path crossed all four maps in random order. When the treasure was found, the kind of treasure had to be selected in the instruction window. This had to be repeated three times, each time starting from a different coordinate in the first treasure map.

While this task may seem artificial, it does simulate real tasks where related information has to be collated from multiple sources. For example, a real task of that kind would be looking up the location of an appointment mentioned in an email from a calendar, and then checking a booking for that location. Many such tasks involve tabular information, as simulated by the treasure maps.

The four treasure maps were each opened in a text editor window. When using Stack & Tile, the participant had to tile the four editor windows beside each other in a 2x2 layout. In this way, it was possible to display all four maps without occlusion on the screen, i.e. all maps were completely visible.

Task IV: Group switching This task evaluated the efficiency of switching between different tasks (H2). All windows from the previous tasks were used, and the user was asked to bring the windows of each task to the front, one task at a time. Without Stack & Tile, this can be done by directly clicking the windows on the desktop, or by activating them from the taskbar. When using Stack & Tile, only one window has to be activated to bring the whole group to the front. We expected Stack & Tile to be clearly faster here; this task was included to shed light on how much faster it actually is. For the non-Stack & Tile condition , we expected a correlation between group size (between 3 and 5 windows per group) and activation time.

Questionnaire After finishing both runs, the participant was asked to fill in a Likert-scale questionnaire and make some general comments about what they liked and disliked about Stack & Tile. Furthermore, the participant had to estimate their usage in percentages of the following window management techniques: taskbar, short cuts, direct window access, virtual desktops and other.

Results and Discussion

There were 30 participants with an average age of 31 (σ = 6). Six of them were female. Most of them (~ 70%) were software developers or students of Computer Science or Software Engineering. 15 of the participants were from the Haiku community and 7 of them had used Stack & Tile before. We found that users who had used Stack & Tile before performed only slightly better than those who had not, therefore we do not differentiate between these groups in the following.

For the analysis of the task completion times, the difference between the task completion time with Stack & Tile t S&T and the task completion time without Stack & Tile t noS&T was calculated: Δt = t noS&T -t S&T . A pairwise Wilcoxon rank-sum test was used to calculate the probability p wrs for the null-hypothesis. The Wilcoxon rank-sum test was chosen because the task completion times were only roughly Gaussiandistributed.

For each question task, three answer options were given, with only one correct option. In only ~ 3% of all cases a questions was answered wrongly. Furthermore, there was no difference between the error rates with and without Stack & Tile. Thus we can say that it was easy for the participants to answer the questions. From our observations, the participants followed the instructions carefully. Even when they chose the wrong answer, they applied the necessary window operations. Because we are not primarily interested in how accurate a task was performed but in how Stack & Tile affects window management, wrong answers were not removed from the result set.

Task I Results (5 Pictures) Table 1 shows the average task completion time t S&T under the Stack & Tile condition, the average time difference Δt, their standard deviation σ and the Wilcoxon rank-sum test p-value. For all five questions, Stack & Tile had significantly shorter task completion times. Thus we can accept H1 for Task I.

Answering the first question had the longest completion time. This can be explained by an additional step: first the Stack & Tile picture group had to be found and activated. After that participants were able to just select the next picture from the tab bar and the task completion time stayed roughly constant. The time difference Δt decreases from Picture 1 to Picture 5. A possible explanation is that for the non-Stack & Tile conditions, all pictures were moved to the front after some time and it became easier to find the right window. Another possible explanation is that the participants got into the routine of selecting the right picture from the taskbar. 2. For the web page question there was no significant completion time difference. However, for the two following questions, Stack & Tile had a significantly better performance.

So why did participants have problems with the web page question while they were fine with the first picture question in Task I? A possible explanation is that the window with the web page was harder to activate than the windows with the pictures. When using direct activation by clicking on a window, all a participant had to do to select the Stack & Tile group of picture windows was to click any window with a picture on the screen, since there was only one group with pictures in it. Once the group was activated, the tab interface could be used to raise the right picture. However, there were two window groups with textual documents in it, so activating the window group containing the web page was not a as simple as clicking any window containing text. When using the taskbar to activate a window, for the window group with the pictures there was exactly one group of windows listed in the taskbar, as all the pictures were shown using the same application. However, the documents for Task II were all opened with different applications and hence there was a different entry in the taskbar for each of the windows. The taskbar gave no indication that the windows were grouped together, as for the five pictures. In fact, the taskbar obfuscated the Stack & Tile grouping of the windows, by grouping them by application together with other windows belonging to different Stack & Tile groups.

Hypothesis H1 cannot be accepted for the initial question of Task II. It is reasonable to assume that once a desired window group is activated, the advantages of Stack & Tile show more clearly. To facilitate this, as a future work, the taskbar could be changed to group windows by their Stack & Tile groups.

Task III Results (Treasure Maps) The results of Task III are shown in Table 3. When using Stack & Tile, finding the first treasure required a lot less time (21s). This time difference decreased to 7s and 5s for the second and third treasures. We can clearly accept hypothesis H1 for Task III.

This can be explained from the observations of the participants during the task. Without Stack & Tile, many participants first tried to position all treasure maps in a 2x2 grid to make them visible at the same time. Thus, finding the following treasures became easier for them.

However, finding the second and third treasures was still significantly faster using Stack & Tile. A reason for that is that many participants did not manage to align the treasure maps precisely without occlusion, and thus had to rearrange the windows later on. Moreover, some participants accidentally activated unrelated windows, which made more window operations necessary. This is consistent with the findings from Elastic Windows [START_REF] Kandogan | Elastic windows: evaluation of multi-window operations[END_REF], were they found that setting up and working with overlapping windows becomes more difficult for an increasing number of windows.

Task IV Results (Activate Groups) As expected, activating all windows of a task is much faster using Stack & Tile (Table 4). This clearly supports hypothesis H2. However, no significant correlation between the number of windows of a task and the activation time could be detected. Here, the heterogeneous Group II (Task II) resulted in the largest t S&T . Activating a group containing only windows of the same application seems to be easier than activating a group containing windows of different applications. This is consistent with the results of Task II.

Stack & Tile Setup Time Results

To assess whether the time needed for setting up Stack & Tile groups is acceptable (H3), we compared the average setup time t setup with the average saved time t saved for each task (Table 5). t saved is the sum of Δt for all questions of a particular task. The experimental tasks were artificial hence one could argue that such a comparison is not meaningful. However, all experimental tasks were quite short compared to real world tasks, so these numbers serve to indicate that t saved is reasonably likely to outweigh t setup when working with Stack & Tile groups a bit longer. From our observations, participants still had problems to set up Stack & Tile groups in an optimal manner after the training tasks. It is reasonable to assume that once users get more practice with Stack & Tile, the setup times will drop. A nonsignificant indication (p < 0.25) for this is that users who had used Stack & Tile before had a slightly shorter setup time (on average 2-3 seconds for each of the three tasks). Note that the setup time does not include the time users needed to decide how a Stack & Tile group should look like, because the layouts for the groups were given in the experiment. Questionnaire Results Figure 4 shows the results from the Likert-scale questions. All participants agreed that they often use tabbed user interfaces (Q4), which shows that the stacking feature is not a fundamentally new concept to them.

There was an overall agreement that they often have multiple windows open (Q3), and over 2/3 of them agreed that window management often becomes frustrating when working with overlapping windows (Q6). This indicates that there is a need for better window management.

Only 3 of the 30 participants agreed that the initial overhead to setup a Stack & Tile group would prevent them from using Stack & Tile (Q7), and 24 of them agreed that they often adjust the position and size of a window before using it (Q5). Both supports H3 (see also Section 4.2).

Lastly, there was a general agreement that Stack & Tile makes window management easier and more enjoyable (Q8). This is also supported by many comments. As an example, one participant said: "Much easier to use. Better grouping, while still having more freedom than MDI apps". This supports H4. The results for the question about the techniques participants use to manage windows are depicted in Figure 5. The results are consistent with the empirical findings in [START_REF] Tak | Improving window switching interfaces[END_REF]. Participants said that they use direct window access only 17% of the time. This is another indication that direct window activation is not perceived as optimal. Figure 7 shows the results for question S6. Here we can see that most people who had tried Stack & Tile before were still using it.

Question S7 asked for preferences for the stacking or the tiling feature. There is a trend that the participants feel stacking is more useful than tiling (see Figure 8). S9 asked for the usage of the stacking and tiling features. The average estimated percentage of tiling is 45% (σ = 29%) and for stacking 55% (σ = 29%). Stacking is slightly more used than tiling with p wrs = 0.06. This indicates that participants think that stacking is more useful (S7) and consequently use it more (S9). However, keeping in mind that stacking is much more common in today's applications (e.g. tabbed browsing), it is still interesting that the tiling feature is reportedly used that much.

S8 targeted the feature that windows in a group stay aligned when resizing one window in the group. Most of the participants judged this to be helpful (see Figure 8).

Figure 9 shows the average number of groups when Stack & Tile was used. Most participants used between one and four groups at a time, with the majority using more than one. This is quite interesting because it means they not only used it sporadically for a single task, but seem to have used it for different tasks in parallel.

We From the screenshots we observed that the Stack & Tile groups had mostly moderate complexity. There were only a few use-cases where more than two windows were tiled together. However, the stacked window groups had usually more than two windows in them.

There were 34 responses for the open-ended comments & suggestions field. Here participants had some ideas for improvements and better integration into the desktop. For example, there was the request to show Stack & Tile groups in the taskbar, and that it should be possible to store and restore Stack & Tile groups, especially on reboot. Applications that are using a tabbed interface should use the stacking feature instead. These are points we want to target in future work. One participant stated that he already started to replace the tabbed interface of a browser with the Stack & Tile stacking feature. 11 participants explicitly said that they like Stack & Tile, while one participant did not think that Stack & Tile can improve manual window management.

Conclusion

In this paper we investigated the advantages of integrating stacking and tiling features into the traditional desktop metaphor. Stacking and tiling can help to manage windows more effectively, for example by grouping windows by task. We presented Stack & Tile, a window manager which integrates stacking and tiling seamlessly with traditional window management operations.

In a controlled experiment, we found that stacking and tiling features can significantly improve completion times for tasks involving several windows (of the same application as well as of different applications). Furthermore, switching between different tasks was found to be much faster when windows were grouped by task. Setting up a Stack & Tile group is an initial overhead that may prevent users from using these features. However, the potential time savings as well as questionnaire answers indicate that the advantages outweigh this overhead.

In a web survey we investigated how often and how Stack & Tile is used in practice. There was a wide agreement that Stack & Tile can be useful, especially by participants who had used Stack & Tile. The stacking feature was perceived as being slightly more useful and also estimated to be used more than the tiling feature. We found that people were using the stacking and tiling features for a multitude of different use-cases. In a field for general comments many people wrote that they like Stack & Tile and suggested further ideas to integrate it more into the desktop. These ideas include future works such as grouping of windows by their Stack & Tile group in the taskbar and Stack & Tile group persistence.

Fig. 1 .

 1 Fig. 1. Stack & Tile group. On the right side three windows are stacked into a stacking group. Tiled to this group are on the left side a text editor and at the bottom a terminal.

  Stack & Tile offers two simple operations that can be used to connect windows: First, stacking, which makes use of the tab-like appearance of the Haiku OS window title bars; secondly, tiling of windows, which means that windows are arranged beside each other. A Stack & Tile operation can be triggered by holding down the Stack & Tile key, which is by default the Windows key, and dragging a window near to another window (see Figure 2). Releasing the Stack & Tile key or dropping the window finally executes a Stack & Tile operation. The dragged window is called the candidate window, and the window that it is dragged to is called the parent window. In this manner, Stack & Tile groups can be created.

Fig. 2 .

 2 Fig. 2. Moving a window while holding the Stack & Tile key initiates stacking or tiling. Affected window tabs and borders are highlighted in gray. Left: The editor window is going to be stacked on top of the Terminal. Right: MediaPlayer is going to be tiled to the Media folder.

Fig. 3 .

 3 Fig. 3. The instruction window (right) with a question about a picture window (left).

Fig. 4 .

 4 Fig. 4. Results for the Likert-scale questions.

Fig. 5 .

 5 Fig. 5. Used techniques for window management.

Fig. 6 .

 6 Fig. 6. Answers for S1 -S4. Left: users who had not tried Stack & Tile. Right: users who had tried Stack & Tile.

Fig. 7 .Fig. 8 .

 78 Fig. 7. Answers for S6. Fig. 8. Answers for S7 and S8.

  Figure7shows the results for question S6. Here we can see that most people who had tried Stack & Tile before were still using it.Question S7 asked for preferences for the stacking or the tiling feature. There is a trend that the participants feel stacking is more useful than tiling (see Figure8). S9 asked for the usage of the stacking and tiling features. The average estimated percentage of tiling is 45% (σ = 29%) and for stacking 55% (σ = 29%). Stacking is slightly more used than tiling with p wrs = 0.06. This indicates that participants think that stacking is more useful (S7) and consequently use it more (S9). However, keeping in mind that stacking is much more common in today's applications (e.g. tabbed browsing), it is still interesting that the tiling feature is reportedly used that much.S8 targeted the feature that windows in a group stay aligned when resizing one window in the group. Most of the participants judged this to be helpful (see Figure8).Figure9shows the average number of groups when Stack & Tile was used. Most participants used between one and four groups at a time, with the majority using more than one. This is quite interesting because it means they not only used it sporadically for a single task, but seem to have used it for different tasks in parallel.We already analyzed the advantages of Stack & Tile when exchanging data between windows or Stack & Tile groups in the controlled experiment. S11 -S14 targeted the question in how far participants encounter such use-cases in practice (Figure 10). The results are quite similar for S11, S12 and S14. Most people are exchanging data between groups/windows, which indicates that the results from the controlled experiment are relevant for real users. The least frequent data exchange was between Stack & Tile groups (S13), which indicates that Stack & Tile groups are used to group windows of different tasks.

Fig. 9 .

 9 Fig. 9. Answer for S10: Number of S&T groups used at a time.

Fig. 10 .

 10 Fig. 10. Answers for S11 -S14: Exchanging data between windows.

  2. A controlled experiment that shows how Stack & Tile performs for different usecases. 3. A web-based survey that gives insight into how Stack & Tile is used by real users. Section 2 introduces the Stack & Tile window manager. Section 3 describes how Stack & Tile is different from other work on window managers. In Section 4 the experimental evaluation is presented. Section 5 presents the web survey of how Stack & Tile is used. The paper closes with a conclusion in Section 6.

  An interesting question is how much time can be saved using Stack & Tile, and if the time taken to set up a Stack & Tile group is reasonable compared to the time saved. We formulate the following hypotheses about Stack & Tile for this experiment: H1 The task completion time for multi-window tasks is lower with Stack & Tile than with a traditional window manager. H2 Switching between tasks that each involve multiple windows is faster with Stack & Tile than with a traditional window manager. H3 The time necessary for setting up Stack & Tile groups is acceptable compared to the time that can be saved by using Stack & Tile. H4 Users prefer Stack & Tile over a traditional window manager.

Table 1 .

 1 Task I completion times in [s].

		t S&T σ Δt σ	p wrs
	Picture 1	12 5.7 5 11.8	0.01**
	Picture 2	8	2.8 5 5.7 < 0.01**
	Picture 3	8	4.3 3 6.7 < 0.01**
	Picture 4	8	6.5 3 8.8 < 0.01**
	Picture 5	7	3.3 2 4.5 < 0.01**

Table 2 .

 2 Task II completion times in [s].

		t S&T σ Δt σ	p wrs
	Web Page 17 7.7 -1 11.5	0.65
	PDF	10 13.9 5 18.2 < 0.01**
	Text file	9	4.9 8 10.9 < 0.01**

Task II Results (3 Documents in 3 Apps) The results are shown in Table

Table 3 .

 3 Task III completion times in [s].

		t S&T	σ Δt σ	p wrs
	Treasure 1	23 15.6 21 22.7 < 0.01**
	Treasure 2	19	8.6 7 14.5	0.01**
	Treasure 3	15	5.1 5 8.1 < 0.01**

Table 4 .

 4 Task IV: Time in [s] to activate the window groups of the Tasks I-III.

		t S&T σ Δt σ	p wrs
	Group I	6 2.5 12 5.6 < 0.01**
	Group II 8 8.9 9	12 < 0.01**
	Group III 4 1.3 7 4.8 < 0.01**

Table 5 .

 5 Setup times in [s] for the window groups of Tasks I-III.

		Task I	Task II	Task III
	t setup (σ)	29 (15.7) 14 (11.1) 22 (10.9)
	t saved	18	12

Haiku Operating System, www.haiku-os.org

Google Chrome, www.google.com/chrome

KDE Desktop Environment, www.kde.org

Notion Window Manager, http://notion.sourceforge.net

Web-based Survey

Stack & Tile has been available in the Haiku OS for over two years now. An interesting question is how people are actually using Stack & Tile. To answer this question we conducted a web-based survey in the Haiku community. The questions were mainly a mix of Likert-scale questions and open questions.

The survey began with some demographic and general questions: Afterwards the participants were asked to upload screenshots of how they use S&T most frequently and describe them, followed by questions about S&T: S6: How often do you use S&T? S7: I think the stacking feature is more useful than the tiling feature. S8: S&T helps with resizing window groups. S9: Estimate the percentage of how often you use stacking and how often you use tiling. S10: When you use S&T, how many S&T groups do you use on average at the same time? S11: I exchange information between single windows (not in a S&T group). S12: I exchange information within a single S&T group. S13: I exchange information between multiple S&T groups. S14: I exchange information between S&T groups and other single windows. S15: Are there certain tasks where you use S&T? For example, programming or browsing.

S16:

In what other situations are you using S&T?

Finally, participants had the opportunity to make suggestions and comments.

Result

During a period of two month we got 146 responses. The average age of all subjects was 32 (σ = 10). There was only one female participant. The majority of the participants was working in or had a degree in an IT-related field.

There were two groups of participants, distinguished by the general questions at the beginning: the group that had not tried Stack & Tile before (left of Figure 6) and the group that had tried Stack & Tile before (right of Figure 6). Generally both groups were heavy computer users. For the group that had not tried Stack & Tile before, almost half of them had heard about Stack & Tile. Most participants agreed that Stack & Tile is useful and disagreed that there is no need for Stack & Tile. This general opinion was much stronger for the group that had tried Stack & Tile before, indicating that Stack & Tile had made a positive impression.


Dipak Bansal
email: d.bansal143@gmail.com

Samit Bhattacharya
email: samit3k@gmail.com

Semi-supervised Learning Based Aesthetic Classifier for

Keywords: Aesthetics, web page, short video, classification, semi-supervised learning, Co-training

des établissements d'enseignement et de recherche français ou étrangers, des laboratoires publics ou privés.

Introduction

Usability professionals over the years have been working extensively on developing methods and techniques to determine the usefulness of interactive systems. These activities are sought to be augmented in recent years with the studies on measuring perceived usability of the system, which relies heavily on aesthetics [START_REF] Dondis | A Primer of Visual Literacy[END_REF]. Postrel [START_REF] Heines | Screen Design Strategies for Computer-assisted Instruction[END_REF] contented that the 21st century is the "age of aesthetics". The contention may well be true in the context of interactive systems, as the large number of recent works show [START_REF]Aesthetic Approaches to Human-Computer Interaction[END_REF][START_REF] Norman | Introduction to this special section on beauty, goodness, and usability[END_REF][START_REF] Petersen | Introduction to special issue on the aesthetics of interaction[END_REF][START_REF] Tractinsky | Does aesthetics matter in human computer interaction[END_REF][START_REF] Tractinsky | Arguing for aesthetics in human-computer interaction. icom Z. Interakt[END_REF][START_REF] Tractinsky | What is beautiful is usable[END_REF].

Web pages are good examples to consider the importance of aesthetics in interactive system design. Most of the pages contain various types of information, put together using various design patterns. Consequently, the complexity of the interfaces in terms of information content and layout is usually high. Evidently, the aesthetics of the design determines to a great extent its acceptability (and therefore, usability) to the users [START_REF] Lavie | Assessing dimensions of perceived visual aesthetics of web sites[END_REF][START_REF] Lindgaard | An exploration of relations between visual appeal, trustworthiness and perceived usability of homepages[END_REF][START_REF] Pandir | Homepage aesthetics: The search for preference factors and the challenges of subjectivity[END_REF][START_REF] Park | Critical factors for the aesthetic fidelity of web pages: empirical studies with professional web designers and users[END_REF][START_REF] Schaik | Five psychometric scales for online measurement of the quality of human-computer interaction in web sites[END_REF][START_REF] Schmidt | Webpage aesthetics, performance and usability: Design variables and their effects[END_REF].

While the role of aesthetics on usability is clear, the problem lies in measuring it. Usability studies depend on quantifiable measurements. However, development of such measures for evaluating aesthetic quality of an interactive system is still in its infancy, primarily because of the perception that "aesthetics is subjective." While it is true to an extent, it is not impossible to develop quantitative measures of web page aesthetics, as reported in [START_REF] Ngo | Modeling interface aesthetics[END_REF][START_REF] Shyam | A Model to Evaluate Aesthetics of Short Videos[END_REF]. Both these works actually demonstrate the possibility of computational modeling of aesthetics. The advantage of having a computational model is in the ability to evaluate aesthetic quality of an interface automatically, thereby making it possible to integrate the model as a tool in a web page design environment so that the designer can check their design quickly.

In this work, we propose a model to compute aesthetics of short animation videos, which are embedded in many of the web pages nowadays. This work is part of a larger goal of computational modeling of whole web page aesthetics. We base our work on the philosophy that modeling component aesthetics and then combining those models will lead to an overall web page aesthetics model.

We propose a semi-supervised learning model to compute aesthetics of short videos. The model is essentially a Naïve-Bayes classifier, which classifies a video into one of the three classes: good, average and bad with respect to its aesthetic quality. On the basis of a study of 18 web pages and prior work on this field, we identified two feature sets to capture short video characteristics with respect to its aesthetic quality. The feature sets are used in a co-training method to develop the classifier. We validated our model with an empirical study involving 16 videos and 23 participants. The feature sets, the co-training method and the validation study are described in this paper.

The paper is organized as follows. In Section 2, we discuss the related works reported in the literature along with their limitations that we address in this work. The development of the proposed model is detailed in Section 3. The empirical study conducted to evaluate the model performance is reported in Section 4. In Section 5, we discussed the strengths and limitations of the proposed model along with the scope for further works. The paper is concluded in Section 6.

Related Works

Considered as a branch of philosophy that deals with the nature of beauty, art, and taste1 , aesthetic design has been extensively studied in the field of fine and commercial arts [START_REF] Arnheim | Art and Visual Perception[END_REF][START_REF] Dondis | A Primer of Visual Literacy[END_REF]. The importance of aesthetics in human affairs has been elaborated by Maquet [START_REF] Maquet | The Aesthetic Experience[END_REF]. In fact, as early as 1984, the role of aesthetics in determining usability of interactive systems was highlighted [START_REF] Heines | Screen Design Strategies for Computer-assisted Instruction[END_REF], where it was reported that a poorly designed computer screen can hinder communication. The positive effect of good graphic design and attractive displays on the transfer of information has been found by Aspillaga [START_REF] Aspillaga | Screen design: Location of information and its effects on learning[END_REF]. Elements of aesthetic considerations were present in other works as well [START_REF] Reilly | Improved visual design for graphics display[END_REF][START_REF] Tullis | An evaluation of alphanumeric, graphic, and colour information displays[END_REF][START_REF] Tullis | Predicting the Usability of Alphanumeric Displays[END_REF][START_REF] Tullis | Handbook of Human-Computer Interaction[END_REF].

Despite the presence of such early works, only the later part of the 1990s saw a spurt in activities in this area. These works included investigation of the role of aesthetics on interactive system design in general as well as on the effects of aesthetics in specific interaction domains. Researchers argued about the role of aesthetics in interactive system design [START_REF] Tractinsky | Aesthetics and apparent usability: Empirically assessing cultural and methodological issues[END_REF]. Set of guidelines for screen design, keeping in mind the aesthetic aspect, were proposed [START_REF] Galitz | The essential guide to user interface design: an introduction to GUI design principles and techniques[END_REF]. In the context of e-learning, the effect of aesthetically pleasing layouts on the student's motivation to learn has been reported [START_REF] Toh | Cognitive and Motivational Effects of Two Multimedia Simulation Presentation Modes on Science Learning[END_REF]. Szabo and Kanuka [START_REF] Szabo | Effects of violating screen design principles of balance, unity and focus on recall learning, study time, and completion rates[END_REF] found that subjects who used the lesson with good design principles completed the lesson in less time and had a higher completion rate than those who used the lesson with poor design principles.

A typical scenario where aesthetics play important role in the overall usability of the system is the design of web pages. Relationship between visual appeal and perceived usability of web pages was investigated in Lindgaard et al. [START_REF] Lindgaard | An exploration of relations between visual appeal, trustworthiness and perceived usability of homepages[END_REF]. Schmidt et al. [START_REF] Schmidt | Webpage aesthetics, performance and usability: Design variables and their effects[END_REF] found correlation between usability and aesthetics in the context of subjective evaluation, depending on the user's background, goal, task, and application type. Several works concentrated on developing measures to assess aesthetic quality of web pages [START_REF] Lavie | Assessing dimensions of perceived visual aesthetics of web sites[END_REF][START_REF] Moshagen | Facets of visual aesthetics[END_REF].

Aesthetic evaluation of interfaces poses problem due to its subjective nature: an aesthetically pleasing interface may not look so to a different person. Computational aesthetic modeling attempts to overcome this problem by proposing objective measure of aesthetics [START_REF] Lai | Computational models and experimental investigations of effects of balance and symmetry on the aesthetics of textoverlaid images[END_REF][START_REF] Ngo | Modeling interface aesthetics[END_REF][START_REF] Shyam | A Model to Evaluate Aesthetics of Short Videos[END_REF].

One of the early works in this direction was by Ngo et al. [START_REF] Ngo | Modeling interface aesthetics[END_REF]. In the approach, a numerical value is computed from the specification (in terms of elements, their positions, shapes and sizes) of an interface. The value signifies aesthetic of the layout. Aesthetics of two interfaces may be compared on the basis of the computed value. The model assumed a very simplified representation of the interface (i.e. each onscreen element is a rectangle). Aesthetic is determined by the geometric arrangement of the rectangles only. The content of the rectangles are not taken into consideration. Moreover, it considered only static images (i.e. the content does not change over time). Therefore, when we consider short videos embedded in a web page, it is not possible to apply the model, as we have to see "inside the box" (the content inside the rectangles) as well as consider the dynamic nature of the content.

In the context of short animation videos that are typically found embedded in web pages, some of these issues were addressed by Shyam and Bhattacharya [START_REF] Shyam | A Model to Evaluate Aesthetics of Short Videos[END_REF]. In their work, a computational model was proposed to classify a short video into either of the classes good, average and bad, based on the aesthetic quality of the video. The model takes into consideration three factors that characterize a video, namely symmetry, balance and color contrast. We briefly discuss these factors in the following, as we have used them in our work.

The symmetry measure determines the extent to which the interface is symmetrical in vertical, horizontal and diagonal direction. In order to calculate symmetry (Sym) of an interface, Eq. 1 was proposed.

] 1 , 0 [ 3 | | | | | | 1 ∈ + + - = r v h S S S Sym …………………… (1)
In Eq. 1, S h , S v and S r refers to the symmetry in horizontal, vertical and radial directions, respectively. Horizontal symmetry is calculated about a horizontal axis passing through the center of interface (Eq. 2a). Vertical symmetry is defined similarly, with respect to a vertical axis (Eq. 2b). Radial symmetry (Eq. 2c) refers to the symmetry about a diagonal passing through the center. ' ' ' '

LR UR LL UL LR UR LL UL LR UR LL UL LR UR LL UL LR UR LL UL LR UR LL UL h R R R R B B B B H H H H Y Y Y Y X X X X S - + - + - + - + - + - + - + - + - + - + -' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' LR LL UR UL LR LL UR UL LR LL UR UL LR LL UR UL LR LL UR UL LR LL UR UL v R R R R B B B B H H H H Y Y Y Y X X X X S - + - + - + - + - + - + - + - + - + - ' ' ' ' LL UR LR UL LL UR LR UL LL UR LR UL LL UR LR UL LL UR LR UL LL UR LR UL r R R R R B B B B H H H H Y Y Y Y X X X X S - + - + - + - + - + - + - + - + - + - + - + - = θ θ θ θ ……………………… (2c) X' j , Y '
j , H' j , B' j , θ' j and R' j (j = UR/UL/LR/LL) are the normalized values of the corresponding expressions shown in Eq. 3. UR, UL, LR and LL denote upper-right, upper-left, lower-right and lower-left, respectively. (x ij , y ij ) and (x c , y c ) in Eq. 3 refer to the center of each object i in quadrant j and the center of the interface. b ij and h ij are the width and height of the object. n j is the total number of objects in the quadrant.

∑ = - = j n i c ij j x x X 1 | | ……………………….… (3a) ∑ = - = j n i c ij j y y Y 1 | | ……………………….… (3b) ∑ = = j n i ij j h H 1 | | …………………………….… (3c) ∑ = = j n i ij j b B 1 | | …………………………….…. (3d) ∑ = - - = j n i c ij c ij j x x y y 1 | | | | θ ………………………….(3e) ∑ = - + - = j n i c ij c ij j y y x x R 1 2 2 ) ( ) ( ….… (3f)
The balance measure computes the difference between total optical weighting of components on each side of the horizontal and vertical axis. The optical weighting refers to the perception that some objects appear heavier than others. The expression for balance (Bal) is shown in Eq. 4, where B h and B v are the balance measured in the horizontal and vertical directions, respectively. Equation 5shows the expressions to calculate the two components.

] 1 , 0 [ 2 | | | | 1 ∈ + - = v h B B Bal ……. (4) |) | |, max(| B T B T h w w w w B - = …………... (5a) |) | |, max(| R H R H v w w w w B - = …………... (5b)
In the above equations,

∑ = = j n i ij ij j d a w 1 , j=L/R/T/B, L, R, T, B stand for left,
right, top and bottom, respectively, a ij is the area of object i on side j, d ij is the distance between the central lines of the object and the interface and n j is the total number of objects on the side.

The above formulations were for static images. The idea is extended in [START_REF] Shyam | A Model to Evaluate Aesthetics of Short Videos[END_REF] for video that is a sequence of frames. The symmetry and balance for each frame are calculated separately and then weighted averages of these individual values are calculated to get the respective symmetry and balance for the whole video, as shown in Eq. 6, where sym i and bal i are the symmetry and balance values of the i th frame respectively, f is the total number of frames, sd ij is the symmetry difference between consecutive frames and bd ij is the balance difference between consecutive frames.

] 1 , 0 [ | | 1 1 | | 1 ] 1 , 0 [ | | 1 1 | | 1 2 1 , 2 1 , 1 2 1 , 2 1 , 1 ∈ +
× + = ∈ + × + = ∑ ∑ ∑ ∑ = - = - = - = - f i i i f i i i i f i i i f i i i i bd bd bal bal Bal sd sd sym sym Sym …….. (6)
Since the objects may change their position in a video, the above are calculated in terms of either fixed objects (i.e., those objects that don't change their position throughout the entire video) or the center of the frame (if there are no fixed objects).

The color contrast is the difference in visual properties that makes an object (or its representation in an image) distinguishable from other objects and the background. A three-stage approach was reported in [START_REF] Shyam | A Model to Evaluate Aesthetics of Short Videos[END_REF] to calculate color contrast of a video. In the first stage, the video is divided into frames and then each frame is converted to gray image. Next, each gray image is converted to standard color enhanced image by histogram equalization. Finally, the original gray image is compared with the corresponding enhanced image in the third stage, to determine the color contrast of the video. Eq. 7 shows the computation of the color contrast (CC) value.

p org std CC p i i i × - = ∑ = 255 1 ………………………. (7)
Based on these three factors, an expression shown in Eq. 8 was proposed in [START_REF] Shyam | A Model to Evaluate Aesthetics of Short Videos[END_REF] to compute an aesthetic value (AS) for a video. On the basis of the computed value, videos are categorized as good (AS≥0.75), average (0.5≤AS<0.75) or bad (AS<0.5).

CC Bal

Sym AS - + = 2 ………………………. ( 8
)
Although high classification accuracy (about 87%) was reported by Shyam and Bhattacharya [START_REF] Shyam | A Model to Evaluate Aesthetics of Short Videos[END_REF], the model was developed based on several assumptions. These include, (a) the objects in the videos are of regular shapes, (b) they do not change size across frames and (c) the objects follow linear motion paths. In this work, we propose a machine-learning based approach to overcome these limitations.

Proposed Model

We propose a classifier that is trained with a set of training videos (i.e., short videos that are already classified as good, average or bad). As it was difficult to create a large training set, we used the co-training algorithm [START_REF] Blum | Combining Labeled and Unlabeled Data with Co-training[END_REF], which can work on small training set. Co-training is a semi-supervised learning technique that requires two views (represented by two feature sets) of the data. Ideally, the two views are conditionally independent (i.e., the two feature sets are conditionally independent given the class) and each view is sufficient (i.e., the class of an instance can be accurately predicted from each view alone). Co-training first learns a separate classifier for each view using a small set of labeled (training) examples. The most confident prediction of each classifier for an unlabeled data is then used to iteratively construct additional labeled training data. We used the Naive Bayes classifier [START_REF] Mitchell | Machine Learning. Chapter 6[END_REF] to classify data in the co-training method.

Identification of Feature Sets

The first step was the development of feature sets. A feature set denotes a set of features that characterize a short video. For the proposed model, we identified two feature sets, denoted by FS 1 and FS 2 .

The feature set FS 1 contains three features, namely symmetry, balance and color contrast. These are the factors described in [START_REF] Shyam | A Model to Evaluate Aesthetics of Short Videos[END_REF] (discussed in the related works section), each of whose value lies within the range [0, 1].

The feature set FS 2 was determined from a survey of 18 web pages, sampled randomly from the Internet, containing short videos. In the survey, we looked for the shapes (regular/irregular) of the objects in the video, motion pattern (linear/nonlinear) of the objects, presence of fixed objects and change in object size across frames of a video. The observations are summarized in Table 1. From the table, we can conclude that the characteristics object shape, change in size, presence of fixed objects and motion path may have an influence on the perceived beauty (aesthetics) of a video. Along with those, it is also important to take into account the total number of objects in a video, since too many or too few objects may not be pleasing to the eye.

On the basis of the analysis of the survey results, we propose five features that form FS 2 :

1. Total number of objects (N).

2. Fixed objects measure (represented as n f /N, where n f is the number of fixed objects). 3. Measure of size change across frames (represented as n s /N, where n s is the number of objects changing size). 4. Measure of movement path (represented as n l /N, where n l is the number of objects with linear movement). 5. Object shape measure. In order to compute the last feature value (object shape), we used the formulation of Birkhoff [START_REF] Birkhoff | Aesthetic Measure[END_REF], which works for object with polygonal shape 2 . According to the formulation, aesthetic quality (M) of any object can be computed in terms of order (O) and complexity (C) as in Eq. 9.

M=O/C ………………………………….….. [START_REF] Heines | Screen Design Strategies for Computer-assisted Instruction[END_REF] The Complexity C of an object is defined as the number of indefinitely extended straight lines which contain all the sides of the object (i.e., the number of distinct straight lines containing at least one side of the object). The Order O is a composition of five elements, as shown in Eq. 10. O = V+E+R+HV-F ………………………… [START_REF] Lai | Computational models and experimental investigations of effects of balance and symmetry on the aesthetics of textoverlaid images[END_REF] The individual terms on the right hand side of Eq. 10 are briefly described below (see [START_REF] Birkhoff | Aesthetic Measure[END_REF] for more details).

• V stands for vertical symmetry. V=1 if the object posses symmetry about the vertical axis and V=0 otherwise.

• E stands for equilibrium. E=1 if V=1 or if the centre of the object is situated directly above a point P on a horizontal line segment AB supporting the object from below such that |AP| and |BP| > 1/6 of the total horizontal breadth of the object. If the center is above P but the above condition does not hold, E=0. For all other cases, E= -1. • R stands for rotational symmetry. Let 360 o /q be the least degree of rotation which rotates the object into itself. Then, R=min{q/2,q/3} if V=1 for the object or its enclosing polygon, R=1 in any other case when q is even (i.e., in case of central symmetry) and R=0 otherwise. • HV stands for relation of the object to a horizontal-vertical network. It can take the values of 0, 1 or 2 depending on the shape of the object.

• F stands for unsatisfactory form. F=0 if (a) the minimum distance from any vertex to any other vertex or side, or between parallel sides, is not less than 1/10 th the maximum distance between points of the polygonal object or (b) the angle between two non-parallel side is not less than 20 o or (c) there are at most two types of directions or (d) V and R are not both 0 or (e) there is at most one type of niche or (f) there is no unsupported re-entrant type. F=1 if the above conditions are fulfilled with only one exception. F=2 otherwise.

Let a video has f number of frames and M ij is the Birkoff measure of the i th object (i= 1,2...N) in the j th frame (j= 1,2...f). Then, the object shape measure for the j th frame (F j ) is computed as,

N M F N i ij j ∑ = = 1
.……………………………......... [START_REF] Lavie | Assessing dimensions of perceived visual aesthetics of web sites[END_REF] The above equation is for one frame. We calculate for each frame and take the average of all the frames. Hence, the object shape measure for the video is given as,

Object shape measure = f F f j j ∑ =1 …………….. (12)

Creation of the Initial Training Set

The next step in the model development was the creation of a set of short videos that are already classified (i.e., labeled data). These labeled videos served as the initial training set. In order to create this training set, we conducted an empirical study in which we asked participants to rate a set of 18 artificially created short videos. From the participants' ratings, we labeled those 18 videos as good, average or bad. The details of the empirical study are discussed next.

Experimental Setup and Participants. We designed 18 videos using Adobe Flash Professional CS5 TM . The videos were divided into 3 sets of 6 videos each, containing regular shaped objects, irregular shaped objects and combination of both. We considered rectangular and circular shapes as regular. All other shapes were treated as irregular. Each video was displayed on a window of 320×233 resolution, had 40 frames with 2 sec duration (frame rate = 20) and were 2D, that is, the motion of all the objects were on a plane. The number of objects remained fixed in a video, that is, none of the objects were added or removed between the frames. The total number of objects varied between 4 and 6 in each video. Two of the videos in each set contained fixed objects (1 and 3, respectively). One video in each set had 2 objects changing size across frames. The number of objects in linear motion varied between 0 and 4 in each set.

These 18 videos were shown to 17 participants on 17'' widescreen color displays attached to PCs having Intel® Core2 TM Duo processor with 2.00 GHz speed, running Windows XP Professional with SP3. The participants included both male and female. All were either undergraduate or postgraduate students with average age of 21. All of them had normal or corrected-to-normal vision and were regular computer users. None were familiar with screen design concepts. Data Collection Procedure. We created 17 playlists for 17 participants using balanced Latin squares [START_REF] Blandford | Controlled experiments[END_REF] (see Table 2). In Table 2, each row represents a playlist (P i ) shown to the i th participant. The numbers in each cell represent one of the 18 videos. Video numbers 1-6 correspond to the set containing regular objects, 7-12 correspond to the set containing irregular objects and 13-18 correspond to the set containing both types of objects.

The videos were shown to the participants in the sequence shown in Table 2 and they were asked to rate the videos on a scale of 1 (least attractive) -7 (most attractive) as per their perception of the attractiveness of the videos. Figure 1 shows the screenshot of the interface used by the participants to rate the videos. A play button allowed the participant to play the next video in the list, once s/he was finished with the current video. A replay button was also provided to enable the participant replay the current video. In the figure, it can be seen that the entire background screen was covered by the interface while the participant was rating the videos. This was done to avoid distraction. The ratings by the participants are shown in Table 3. We mapped the participants' rating to one of the three classes good, average and bad. We considered a rating of 1, 2 and 3 as bad, 4 and 5 as average and 6 and 7 as good. After the mapping, we took the statistical mode of the classes for each video, which was the final label (class) of the video. In case of a tie (i.e., more than one class occur in equal number), we take the average of the original ratings. The average value was used to assign class (between 1-3 as bad, 4-5 as average and 6-7 as good). The results are summarized in Table 4. From Table 4, it can be seen that three videos were labeled as bad, five were labeled as good and the remaining ten were labeled as average.

Unlabeled Dataset Creation

We designed another set of 24 short videos, which served as the unlabeled dataset (i.e., these were not classified from empirical data), using the same development platform as that of the labeled videos. The resolution, frame rate and duration of the videos were also the same along with the nature of the motion paths of the objects (2D). The purpose of these unlabeled videos was to increase the training set size so as to cover a wide range of values for all the features. The videos were divided into 3 sets of 8 videos each. One set contained videos with regular objects only, one set was having videos with only irregular objects and the third set was having videos containing both regular and irregular objects.

The total number of objects in the videos varied between 2 to 7. The videos contained between 0 (5 videos) and 3 fixed objects. About 50% of the videos [START_REF] Maquet | The Aesthetic Experience[END_REF] contained objects (between 1 and 3) that changed size across frames. Two of the videos did not have any objects following linear motion path. In the remaining 22 videos, objects with linear motion path varied between 1 and 5.

Table 4. Labeling of videos from participants' rating (Table 3). The numbers inside parenthesis in the middle column show the number of participants who rated the video to belong to the corresponding class. A rating of 1, 2 or 3 was mapped to bad, 4 or 5 was mapped to average and 6 or 7 was mapped to good class. The final label is obtained as the statistical mode of the labels given by the participants.

Video

Participant rating Final Label

Implementation of the Training Method

The implementation of the Co-training method was done in MATLAB TM . In order to calculate the feature values in the feature sets FS 1 and FS 2 , we first divided a video into frames or sequence of images. Then, we tracked objects in each frame and found out the coordinates of the center of every tracked object. For tracking the objects in each frame, we first converted the frame to a binary image. Then, we applied the bwmorph function, which shrinks the objects to points. The final frame contains only points representing the number of objects in the frame. The steps are illustrated in Fig. Using the co-training algorithm, we classified the unlabeled videos. Among those videos, 7 were classified as bad, 11 as average and the remaining 6 as good.

Model Validation

We conducted an empirical study to check the accuracy of the model (classifier). In the study, we used the model to classify 16 short videos. The videos were then rated by 23 participants. From the rating, we determined the classes of the videos. The model classifications were then matched with the empirical classification to determine model accuracy. The details of the validation study are described next.

Experimental Setup

All the 16 videos were 2D (i.e., objects moved in 2D), designed using Adobe Flash Professional CS5 TM as before. Other characteristics, namely the frame rate, display resolution, total number of frames and duration were also the same as to that of the videos designed for training the model. None of the objects in a video was added or removed during the running of the video. The feature values were varied at random in the videos.

4.2

Participants and Procedure Among the 23 participants, 10 took part in the previous study and 13 were new. All the participants were undergraduate or postgraduate students with regular computer exposure. Average age of the participants was 21.23 yrs. Among them, 15 were male and the rest were females. All of them had normal or corrected to normal vision. None of them had any experience with screen-design concepts before.

In order to collect data, the procedure we followed was similar to the one we used for labeling of the training videos. We created playlists of the videos for each participant following the Latin square method. The participants were asked to rate the videos using the same interface and rating scale. The ratings were then mapped to one of the classes, leading to the statistical mode based final classification of the videos.

Results

According to the participants' ratings, 4 videos were classified as bad, 4 as good and the remaining 8 as average. The classification we obtained using the model matched 12 of these empirical classes, resulting in 75% accuracy. The results of the study are summarized in Table 5.

Discussion

In this work, we tried to address the limitations in the work reported by Shyam and Bhattacharya [START_REF] Shyam | A Model to Evaluate Aesthetics of Short Videos[END_REF], by proposing a more generalizable classifier, which is trained using the co-training method. The results of the validation study show that the proposed classifier is able to classify short videos according to their aesthetic appeal, with a reasonably high accuracy rate of 75%. The classification helps a designer decide if a video needs to be improved to increase its aesthetic appeal. For videos belonging to the good category, improvements may not be necessary. For average category videos, improvements may help while for videos classified as bad, it is definitely required. As is obvious, this has significant implication from the point of view of usability of web pages, when we consider web pages with embedded videos. We believe the work can be extended for the development of a more generalized aesthetic model for web pages.

An important characteristic of the videos used in the study was that the number of objects remained fixed (i.e., no addition/deletion of objects was considered). Admittedly, the constraint may not characterize some real-world embedded videos. Therefore, it may be necessary to carry out further work to determine the validity of the proposed model for videos that do not have fixed number of objects.

Although the model accuracy was reasonably satisfactory, we feel that further improvements are possible. The feature sets were developed on the basis of a survey of 18 videos sampled from the Internet. A larger sample size may reveal other characteristics, thereby enriching the feature set. Moreover, the initial training set was created with data of 17 participants for 18 videos. There are scopes to improve the initial training set by increasing the number of videos and participants and also by introducing more variations, in terms of age, gender, educational background and so on, to the participants' profile. Finally, the accuracy figure also needs to be corroborated further by considering more videos and larger number of participants with more variations in their profile.

Conclusions

In this paper, we reported a computational model to classify short videos based on their aesthetic quality. The model is a Naïve Bayes classifier, developed using the cotraining method. The model was developed and validated using empirical data.

Experiments show that the model can classify videos with 75% accuracy.

In future, we plan to work on two directions: refinement of the model and using the model to propose an overall computational model for aesthetic evaluation of a web page. We plan to refine the model by carrying out the following tasks.

• Refinement of the feature set by surveying larger number of real-world embedded videos. • Increase the initial training set by increasing the number of videos and a larger set of participants with more varied profile to label those videos.

• Perform more extensive validation experiments with more videos and larger number of participants with more variations in their profile.

Fig 1 .

 1 Fig 1. Screenshot of the rating interface.

  participant), Average (10 participant), Good (3 participant) Average 6 Bad (0 participant), Average (5 participant), Good (12 participant) Good 7 Bad (3 participant), Average (13 participant), Good 8 Bad (6 participant), Average (11 participant), Good (), Average (5 participant), Good (3 participant) Bad 18 Bad (1 participant), Average (5 participant), Good (11 participant) Good

2

 2

Fig 2 .

 2 Fig 2. Illustration of the feature value computation steps. From the frame in (a), a binary image is created (b). It is then converted to points representing objects (c) (shown inside circles).

Table 1 .

 1 Summary of the observations made with 18 web pages with embedded short videos sampled from the Internet.

	Characteristics	Observation
		Videos containing irregular shaped objects: 17 (94.4 %)
	Object shape	Videos containing regular shaped objects: 1 (5.6%)
		Videos containing both regular and irregular shaped objects: 0
		(0%)
	Object size
	changes across
	frames

Videos where objects change their size across frame: 5

[START_REF] Tractinsky | Aesthetics and apparent usability: Empirically assessing cultural and methodological issues[END_REF]

.8%) Videos where objects do not change their size: 13 (72.2%) Fixed objects Number of videos containing at least one fixed object: 7 (37.8%) Number of videos with no fixed objects: 11 (62.2%) Motion paths Videos containing objects with linear motion only: 6 (33.3%) Videos having objects with non-linear motion paths: 12 (66.7%)

Table 2 .

 2 Sequence of the videos in the playlist. Pi -playlist number.

	P 1 1	2	18 3	17 4	16 5	15 6	14 7	13 8	12 9	11 10
	P 2 2	3	1	4	18 5	17 6	16 7	15 8	14 9	13 10 12 11
	P 3 3	4	2	5	1	6	18 7	17 8	16 9	15 10 14 11 13 12
	P 4 4	5	3	6	2	7	1	8	18 9	17 10 16 11 15 12 14 13
	P 5 5	6	4	7	3	8	2	9	1	10 18 11 17 12 16 13 15 14
	P 6 6	7	5	8	4	9	3	10 2	11 1	12 18 13 17 14 16 15
	P 7 7	8	6	9	5	10 4	11 3	12 2	13 1	14 18 15 17 16
	P 8 8	9	7	10 6	11 5	12 4	13 3	14 2	15 1	16 18 17
	P 9 9	10 8	11 7	12 6	13 5	14 4	15 3	16 2	17 1	18
	P 10 10 11 9	12 8	13 7	14 6	15 5	16 4	17 3	18 2	1
	P 11 11 12 10 13 9	14 8	15 7	16 6	17 5	18 4	1	3	2
	P 12 12 13 11 14 10 15 9	16 8	17 7	18 6	1	5	2	4	3
	P 13 13 14 12 15 11 16 10 17 9	18 8	1	7	2	6	3	5	4
	P 14 14 15 13 16 12 17 11 18 10 1	9	2	8	3	7	4	6	5
	P 15 15 16 14 17 13 18 12 1	11 2	10 3	9	4	8	5	7	6
	P 16 16 17 15 18 14 1	13 2	12 3	11 4	10 5	9	6	8	7
	P 17 17 18 16 1	15 2	14 3	13 4	12 5	11 6	10 7	9	8

Table 3 .

 3 Rankings of the videos by participants (in the scale of 1-7). The numbers in the top row denotes the videos and the leftmost column shows the participants.

	1	2	3	4	5	6	7	8	9	10 11 12 13 14 15 16 17 18
	P 1 2	3	5	6	4	7	5	2	5	4	3	7	5	5	7	6	2	5
	P 2 4	4	5	6	5	6	5	5	5	6	5	7	5	5	5	6	5	7
	P 3 2	3	3	5	4	5	2	3	4	4	3	5	4	4	4	5	4	6
	P 4 3	4	5	7	3	7	4	3	5	3	4	6	5	2	5	2	3	4
	P 5 5	5	5	6	2	7	4	4	4	5	3	7	2	4	2	6	3	7
	P 6 5	4	4	5	4	5	3	4	5	5	4	6	4	5	5	6	4	6
	P 7 7	6	4	7	5	6	4	2	3	3	4	4	2	2	3	2	2	3
	P 8 2	4	4	2	4	5	4	4	4	6	2	7	5	5	4	6	1	6
	P 9 3	3	3	5	4	5	4	4	7	5	4	7	4	4	5	5	4	7
	P 10 6	4	4	7	5	6	4	4	3	6	4	5	4	4	5	6	5	6
	P 11 2	4	3	4	3	4	4	4	6	5	5	6	5	6	6	7	7	7
	P 12 4	3	4	5	4	6	4	3	5	5	4	5	3	4	3	4	3	6
	P 13 4	3	5	2	2	7	6	4	3	2	1	3	2	3	4	2	1	6
	P 14 1	3	4	5	7	6	5	4	5	3	6	5	7	5	6	7	6	6
	P 15 4	1	3	2	6	7	2	4	5	7	6	2	1	4	1	2	3	5
	P 16 1	1	2	6	5	7	4	5	3	7	7	3	2	2	1	2	2	5
	P 17 2	4	5	3	6	6	4	3	1	3	4	6	7	5	4	7	6	5

Table 5 .

 5 The comparison of the model prediction to that of the classification from empirical data.

	Video Number Empirical Classification Model Prediction
	1	Bad	Bad
	2	Bad	Bad
	3	Good	Good
	4	Average	Average
	5	Good	Average
	6	Bad	Average
	7	Average	Average
	8	Good	Good
	9	Bad	Bad
	10	Average	Average
	11	Average	Good
	12	Good	Good
	13	Average	Average
	14	Average	Bad
	15	Average	Average
	16	Average	Average

From Wikipedia. See http://en.wikipedia.org/wiki/Aesthetics

We can use this for any object shape in principle since any shape can be approximated with polygonal meshes. Thus, the solution is general, not specific to polygonal objects only.

Acknowledgements. We are thankful to all the participants who volunteered for the empirical studies.