[go: up one dir, main page]

WO2012166071A1 - Apparatus, systems and methods for optimizing graphical user interfaces based on user selection history - Google Patents

Apparatus, systems and methods for optimizing graphical user interfaces based on user selection history Download PDF

Info

Publication number
WO2012166071A1
WO2012166071A1 PCT/UA2011/000043 UA2011000043W WO2012166071A1 WO 2012166071 A1 WO2012166071 A1 WO 2012166071A1 UA 2011000043 W UA2011000043 W UA 2011000043W WO 2012166071 A1 WO2012166071 A1 WO 2012166071A1
Authority
WO
WIPO (PCT)
Prior art keywords
gui
interest
function element
optimized
function
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
PCT/UA2011/000043
Other languages
French (fr)
Inventor
Andrey Kuplevakhsky
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Dish Ukraine LLC
Original Assignee
EchoStar Ukraine LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by EchoStar Ukraine LLC filed Critical EchoStar Ukraine LLC
Priority to PCT/UA2011/000043 priority Critical patent/WO2012166071A1/en
Publication of WO2012166071A1 publication Critical patent/WO2012166071A1/en
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/4508Management of client data or end-user data
    • H04N21/4532Management of client data or end-user data involving end-user characteristics, e.g. viewer profile, preferences
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/0482Interaction with lists of selectable items, e.g. menus
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/4104Peripherals receiving signals from specially adapted client devices
    • H04N21/4126The peripheral being portable, e.g. PDAs or mobile phones
    • H04N21/41265The peripheral being portable, e.g. PDAs or mobile phones having a remote control device for bidirectional communication between the remote control device and client device
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/422Input-only peripherals, i.e. input devices connected to specially adapted client devices, e.g. global positioning system [GPS]
    • H04N21/42204User interfaces specially adapted for controlling a client device through a remote control device; Remote control devices therefor
    • H04N21/42206User interfaces specially adapted for controlling a client device through a remote control device; Remote control devices therefor characterized by hardware details
    • H04N21/42208Display device provided on the remote control
    • H04N21/42209Display device provided on the remote control for displaying non-command information, e.g. electronic program guide [EPG], e-mail, messages or a second television channel
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/485End-user interface for client configuration
    • H04N21/4854End-user interface for client configuration for modifying image parameters, e.g. image brightness, contrast

Definitions

  • GUI graphical user interface
  • GUIs have a very large number of user-selectable function elements. Thus, navigation about such GUIs may be cumbersome and time consuming. Further, there are some types of GUIs that are repeatedly accessed by the user. Often, the user is repeatedly navigating to and selection of a particular one or two of the plurality of user-selectable function elements that are presented in the GUI. Accordingly, there is a need in the arts to provide enhanced GUIs that are more user friendly.
  • An exemplary embodiment presents an initial GUI on a display, wherein the initial GUI presents a plurality of user-selectable function elements in initial predefined presentation locations, and wherein the initial GUI is configured to modify at least one of an operation and a function of at least one of a media device and a media presentation device; receives a user selection of a function element of interest selected from the plurality of user-selectable function elements presented on the initial GUI; stores information corresponding to a number of times that the function element of interest is selected; repeats the presenting, the receiving, and the storing until a predetermined number of times of selection of the function element of interest occurs; and generates an optimized GUI, wherein a presentation location of the function element of interest is changed from its respective initial presentation location to an optimized presentation location.
  • GUIs graphical user interfaces
  • FIGURES 1A-1C are block diagrams of an embodiment of an exemplary graphical user interface (GUI) optimizing system implemented in a media device;
  • GUI graphical user interface
  • FIGUREs 2A-2C are block diagrams of an embodiment of an exemplary graphical user interface (GUI) optimizing system reorganizing a language selection GUI;
  • GUI graphical user interface
  • FIGURE 3 is a block diagram of an exemplary media device
  • FIGURE 4 illustrates an embodiment of a smart phone having the optimized GUI presented on its display
  • FIGURE 5 illustrates an embodiment of a lap top portable computing device having the optimized GUI presented on its display.
  • FIGUREs 1A-1C are block diagrams of an embodiment of an exemplary graphical user interface (GUI) optimizing system 100 implemented in a media device 102.
  • GUI graphical user interface
  • Embodiments of the GUI optimizing system 100 may be implemented in various types of media devices that have displays, or that are coupled to display devices.
  • Exemplary media devices 102 include, but not are limited to, a set top box (STB), a television (TV), a digital video disc (DVD) player, a digital video recorder (DVR), a game playing device, a cellular smart phone, a personal computer (PC), an electronic tablet, or the like.
  • the exemplary media device 102 comprises a processor system 104 and a memory 106.
  • the memory 106 comprises portions that are configured to store the media device logic 108, a plurality of defined GUIs in the GUI templates 110, the function element logic 112, and the function element history 114.
  • the media device logic 108 and the function element logic 112 may be integrated together, and/or may be integrated with other logic.
  • some or all of these memory and other data manipulation functions may be provided by and using remote server or other electronic devices suitably connected via the Internet or otherwise to a client device.
  • Other media devices may include some, or may omit some, of the above-described media processing components. Further, additional components not described herein may be included in alternative embodiments.
  • the exemplary media device 102 is configured to communicate information, such as a media content event or a GUI, to a media presentation device 1 16 with a display 1 18. The received media content event or GUI is then presented on the display 118.
  • the media device 102 and the media presentation device 116 may be an integrated electronic device with its own display 118.
  • an exemplary initial GUI 120 is presented on the display 1 18.
  • the media device 102 senses various input generated from a user interface. Some inputs are configured to invoke a particular type of functional GUI which permits the user to change the operation of media device 102 and/or the media presentation device 11 . That is, invoking by the user initiates operation of a program or the like that is configured to modify an operation or function of the media device 102 and/or the media presentation device 116. Part of the process performed by the invoked program causes a presentation of the initial GUI 120 to the user so that the user may select their modifications.
  • the initial GUI 120 is retrieved from the GUI templates 110 portion of the memory 106.
  • the initial GUI 120 (and/or the information used to construct the initial GUI 120) may be saved elsewhere, such as with the associated program that generates the initial GUI 120.
  • Embodiments of the GUI optimizing system 100 are configured to optimize presentation of an initial GUI 120 based on previous selection behaviors of the user. That is, after the user has repeatedly used a particular initial GUI 120, and has selected a particular function element of that initial GUI 120, embodiments of the GUI optimizing system 100 reformat an initial GUI to place the repeatedly selected function element in a more conveniently accessible presentation location on the GUI when the GUI is later accessed by the user. That is, the previous user selections of a particular function element on the initial GUI is used to generate an optimized GUI.
  • the exemplary initial GUI 120 comprises a plurality of conceptual function elements (FE 1 through FE 9) that are user-selectable function elements. Presentation of the initial GUI 120 is initiated by a user request or the like.
  • the user-selectable function elements are configured, upon selection by the user, to perform an associated operation or effect an associated function that pertains to the media device 102 and/or the media presentation device 1 16.
  • the user provides an input to navigate about a presented initial GUI 120 using a suitable user interface device.
  • the user interface is a remote control 122 having a plurality of controllers 124 on its surface. Any suitable user interface may be used.
  • the controllers 124 may be in the form of a plurality of touch-sensitive buttons or switches that the user actuates.
  • the controllers 124 may be virtual controllers presented on a suitable touch sensitive display communicatively coupled to the processor system, wherein the touch sensitive display is configured to receive the request to modify based on at least one user touch on the touch sensitive display, and is configured to present the initial GUI 120.
  • a mouse or a keyboard are other non-limiting examples of user interfaces.
  • the user actuates one or more of the controllers 124 on the exemplary remote control 122 or another suitable user interface.
  • the remote control 122 may include thereon a plurality of navigation keys, such as, but not limited to, an "up” key ( ⁇ ), a “down” key (j ), a “right” key ( ⁇ ), and a “left” key ( ⁇ -).
  • ) may also be provided on the remote control 122.
  • the function element to the right becomes the current (or focused) function element.
  • the currently active function element is selected such that its respective function is implemented by the media device 102 and/or the media presentation device 116.
  • GUI templates 110 of memory 106 are retrieved and is presented to the user on the display 1 18.
  • a first function element (FE 1) is illustrated as being located in an initial active presentation location corresponding to the upper left hand side of the initial GUI 120.
  • the first function element (FE 1) is illustrated as being active when the initial GUI 120 is initially presented on the display 118.
  • a user input is required to activate a first function element.
  • the function associated with the first function element (FE 1) will be implemented by the media device 102 and/or the media presentation device 116.
  • the active status, or focused status, of the first function element (FE 1) is conceptually illustrated by the bold line size of the illustrated box representing the first function element (FE 1).
  • the user may be interested in the ninth function element (FE 9), illustrated as being located in the lower right hand side of the initial GUI 120.
  • the user will have to actuate one or more of the navigation-type controllers 124 on the exemplary remote control 122 to navigate from the first function element (FE 1) to the desired ninth function element (FE 9).
  • the user would have to actuate the "right" key (- ⁇ ⁇ ) two times, followed by actuation of the "down" key (J) two times, to navigate to the ninth function element (FE 9), as illustrated by the arrow 126 shown in FIGURE IB.
  • the ninth function element (FE 9) Once the ninth function element (FE 9) has been navigated to, the ninth function element (FE 9) becomes active (as indicated by the bold line size of the illustrated box representing the ninth function element (FE 9) in FIGURE IB).
  • ) controller 124 on the remote control 122 Upon actuation of the select function key (
  • Embodiments of the GUI optimizing system 100 are configured to track user selection history over time.
  • a history of user selections made via a repeatedly presented initial GUI 120 is generated and is stored in the function element history 114 portion of the memory 106.
  • the ninth function element FE 9
  • information identifying the selection of the ninth function element FE 9
  • the information corresponding to the user function selection history may be stored using any suitable format.
  • the presented function elements on the next presented initial GUI 120 are rearranged such that the ninth function element (FE 9) may be selected by the user with fewer required actuations of the controllers 124 on the remote control 122.
  • FIGURE 1C conceptually illustrates a rearranged order of the function elements presented in an optimized GUI 128.
  • ordering of the presented function elements are rearranged so that the ninth function element (FE 9) is moved to an initial active presentation location in the optimized GUI 128. That is, the initial presentation location of the ninth function element (FE 9) is changed from its respective initial presentation location to a new optimized presentation location illustrated in FIGURE 1C.
  • the optimized GUI 128 may be generated after the user has selected the ninth function element (FE 9) a predefined number of times. Alternatively, the optimized GUI 128 may be generated when the user next invokes a next use of the program to modify the operation or function associated with the previously used initial GUI 120.
  • the new presentation location is a new initial active location of the optimized GUI 128 that is immediately selectable upon an initial presentation of the optimized GUI 128. Accordingly, when a next invocation is received to modify an operation or function associated with the initial GUI 120, the optimized GUI 128 is presented in response to the next invocation.
  • the optimized GUI 128 may not have an initially active user-selectable function element when initially presented. However, such an optimized GUI 128 will have an initial starting location on the presented optimized GUI 128, wherein a first actuation of one of the controllers 124 will cause selection of one of the user-selectable function elements as the initial active function element.
  • the new location of the user-selectable function element is configured to become active after an initial actuation of a navigation-type controller 124 ["up” key ( ⁇ ), a “down” key (
  • a movie channel guide GUI may present a plurality of selectable sources of movies, such as a plurality of premium program provider channels.
  • the user by actuating the "down" key (I) one time, may cause the first movie channel to become highlighted, and thus active so that it is immediately selectable.
  • embodiments may rearrange the order of presentation of the available movie channels in the optimized GUI 128. That is, the movie channel at the top of the list becomes the initial active location for that type of optimized GUI 128.
  • Other types of similar functioning GUIs are contemplated by the various embodiments.
  • the reordering of the function elements is based on the information in the function element history 114 portion of memory 106.
  • the optimized GUI 128 is generated based upon the user's repeated navigation to, and the attendant selection of, the ninth function element (FE 9).
  • Embodiments of the GUI optimizing system 100 have relocated the repeatedly selected ninth function element (FE 9) to a new initial presentation location at the upper left hand corner of the optimized GUI 128.
  • the initial presentation locations of the other function elements FE 1 through FE 8 have also been reordered, or changed, on the optimized GUI 128. In this exemplary embodiment, their respective presentation locations on the GUI 128 have been shifted by one position.
  • the non-selected function elements may be arranged in any desirable order.
  • the first function element (FE 1) and the ninth function element (FE 9) may exchange presentation locations.
  • the function elements may be relocated based on frequency of selection by the user.
  • user selection of a second function element of interest selected from the plurality of user-selectable function elements presented on the initial GUI is received.
  • Information corresponding to a number of times that the second function element of interest is selected is stored.
  • the presenting, the receiving, and the storing is repeated until a predetermined number of selections of the second function element of interest occurs.
  • a revised optimized GUI is generated, wherein a presentation location of the second function element of interest is changed from its respective initial presentation location to another optimized presentation location.
  • the ninth function element (FE 9) has been selected five times, the first function element (FE 1) has been selected three times, then the first function element (FE 1) is placed in close proximity to the presentation location of the ninth function element (FE 9). That is, some embodiments are configured to define presentation locations of a plurality of function elements of interest, wherein the particular presentation location order is based on the historical selections made by the user.
  • presentation locations of the selectable function elements are changed from their respective initial presentation locations on the initial GUI 120 to an adjacent presentation location on the optimized GUI 128. That is, the presentation location of the function elements are simply shifted to accommodate the new location of the function element of interest that has been repeatedly selected by the user.
  • the optimized GUI 128 is saved into the GUI templates 1 10 of memory 106, is saved into another location of the memory 106, or is saved in another suitable memory medium. Accordingly, when that particular functional GUI is later invoked, the optimized GUI 128 may be retrieved and presented to the user. [0036] Further, the ninth function element (FE 9) is now initially active when the optimized GUI 128 is initially presented on the display 1 18.
  • the function associated with the ninth function element (FE 9) will be implemented by the media device 102 and/or the media presentation device 116. Accordingly, the user is able to implement the function of the ninth function element (FE 9) with actuation of a single controller 124 on the remote control 122.
  • FIGUREs 2A-2C are block diagrams of an embodiment of an exemplary GUI optimizing system 100 reorganizing a language selection initial GUI 202.
  • FIGURE 2 A illustrates a presented initial GUI 202.
  • Some types of media devices 102 and/or the media presentation devices 1 16 are configurable by the user to present text and/or audio information in different languages. The user is able to select a preferred language using the initial GUI 202. Accordingly, the initial GUI 120 may be configured to present a choice of languages in which subsequent textual information and/or audio information will be presented to the user.
  • the exemplary initial GUI 202 comprises a column 204 of selection boxes and a column 206 of associated non-selectable language specification boxes that includes a caption, such as text or the like, that identifies the selectable language.
  • Each selection box and associated language specification box form a selectable box and caption pair.
  • the exemplary initial GUI 202 indicates that the English language has been designated as the current language. The English language may have been previously selected by the user or may have been set as a default native language.
  • the English language is indicated as being the current language by the highlighting of the English language box (as indicated by the bold line size) and/or by a marker 208 (conceptually shown as an "X") that resides in the selection box that is adjacent to the English language box (wherein the association between the marked selection box and the English language box is intuitively apparent to the user in view of their proximity to each other).
  • the marker 208 and its associated the language specification box cooperatively operate as a user-selectable function element.
  • the user's native language may be Russian, and accordingly, the user may want to change the current language to Russian. From time to time, the user may choose to alternate between the English language and the Russian language.
  • FIGURE 2B illustrates that to select the Russian language, the marker 208 must be moved down to the Russian language box (as indicated by the arrow 210).
  • the current language is changed from English to Russian.
  • the user would have to actuate the "down" key Q) four times, and then actuate the select function key (] ).
  • the user may change the current language back to the English language by moving the marker 208 back up to the appropriate presentation location on the initial GUI 202, and then by actuating the select function key (
  • the select function key to select the English language.
  • the user would have to actuate the "up” key ( ⁇ ) four times, and then actuate the select function key (
  • the presented language choices on the next presented optimized GUI 212 are rearranged such that the Russian language may be selected by the user with fewer required actuations of the controllers 124 on the remote control 122 or by operation of other suitable user interfaces.
  • FIGURE 2C conceptually illustrates a rearranged order of the native language choices presented in the optimized GUI 212 that is generated based upon the user's repeated navigation to, and the attendant selection of, the Russian language.
  • Embodiments of the GUI optimizing system 100 have relocated the repeatedly selected Russian language box to the upper portion of the optimized GUI 212.
  • the presentation location of the other language boxes have also been changed on the optimized GUI 212. Accordingly, when a next invocation is received to modify the native language associated with the initial GUI 202, the optimized GUI 212 is presented in response to the next invocation.
  • the user may select the Russian language as the current native language by simply selecting the marker 208 that is initially presented adjacent to the Russian language box. That is, the user is able to change the current language to the Russian language by a single actuation of the select function key (
  • the optimized GUI 212 (or information used to generate the optimized GUI 128) is saved into the GUI templates 1 10 of memory 106, or is saved into another suitable memory medium. Accordingly, when that particular functional GUI is subsequently invoked, the optimized GUI 212 may be retrieved and presented to the user.
  • FIGURE 3 is a block diagram of an exemplary media device 102.
  • the non-limiting exemplary media device 102 comprises a program content stream interface 302, a processor system 104, a memory 106, a program buffer 304, an optional digital video recorder (DVR) 306, a presentation device interface 308, and a remote interface 310.
  • Other media devices may include some, or may omit some, of the above-described media processing components. Further, additional components not described herein may be included in alternative embodiments.
  • a media content provider provides program content that is received in a media content stream 312.
  • the media content stream 312 is communicated to the media device 102 from a media system sourced from a remote head end facility (not shown) operated by the media content provider.
  • media systems include satellite systems, cable system, and the Internet.
  • the media device 102 is configured to receive one or more broadcasted satellite signals detected by an antenna (not shown).
  • the media content stream 312 can be received from one or more different sources, such as, but not limited to, a cable system, a radio frequency (RF) communication system, or the Internet.
  • RF radio frequency
  • the media content stream 312 is received by the program content stream interface 302.
  • One or more tuners 314 in the program content stream interface 302 selectively tune to one of a plurality of media content events communicated via the media content stream 312 in accordance with instructions received from the processor system 104.
  • the processor system 104 executing the media device logic 108 and based upon a request for a program of interest specified by a user, parses out program content associated with the program of interest.
  • the program of interest is then assembled into a stream of video and/or audio information which may be stored by the program buffer 304 such that the program content can be streamed out to the media presentation device 1 16, such as the illustrated television, via the presentation device interface 308.
  • the parsed out program content may be saved into the DVR 306 for later presentation.
  • the DVR 306 may be directly provided in, locally connected to, or remotely connected to, the media device 102.
  • the exemplary media device 102 is configured to receive commands from the user via a remote control 122.
  • the remote control 122 includes one or more of the controllers 124.
  • the user by actuating one or more of the controllers 124, causes the remote control 122 to generate and transmit commands, via a wireless signal 316, to the media device 102.
  • the commands control the media device 102 and/or control the media presentation device 116.
  • the wireless signal 316 may be an infrared signal or an RF signal.
  • the media device 102 may present the optimized GUI 318 when the user next invokes and/or uses that particular GUI. That is, after a sufficient number of selections of a particular function element has been detected and stored into the function element history 1 14, a user history is available to predict which particular function element is likely to be selected upon invocation of a particular GUI.
  • GUIs 120 may be presented to the user so that the user may adjust operating functions of the media device 102 and/or the media presentation device 116.
  • an exemplary initial GUI 120 may present a series of function elements that are configured to control the input signal source of the media device 102 and/or the media presentation device 1 16.
  • Another initial GUI 120 may be configured to control the presentation characteristics of the display 118, such as a color, a brightness, a resolution, and/or a hue of presented images.
  • Embodiments of the GUI optimizing system 100 may be configured to operate on any suitable initial GUI 120 that is frequently accessed by the user.
  • some media devices 102 employ a plurality of different screen resolutions that are used to present images on the display 1 18.
  • a screen resolution selection GUIs may be configured to permit the user to specify a native screen resolution.
  • Some screen resolutions may employ a 720 format (e.g., 720x480i, 720x480p, etc.), while other selectable screen resolutions may employ a 1280 format (e.g., 1280x720p, 1280x768p, 1280xl024p, etc.).
  • the screen resolution selection GUI may be available to the user to specify a particular screen resolution to enhance presentation of a media content event received in a media content stream 312. Accordingly, in the event that the user repeatedly selects a particular screen resolution (via a function element presented on a GUI), embodiments of the GUI optimizing system 100 may generate an optimized GUI so that the user may more conveniently select their preferred screen resolution.
  • Embodiments of the GUI optimizing system 100 may be implemented in a variety of electronic devices.
  • FIGURE 4 illustrates an embodiment of a smart phone 402 having the optimized GUI 128 presented on its display 118.
  • FIGURE 5 illustrates and embodiment of a lap top type portable computing device 502 having the optimized GUI 128 presented on its display 1 18.
  • Such electronic devices may include various logic and components (not shown) that enable operation of the electronic device for their intended purposes.
  • Such devices when repeatedly presenting GUIs to the user, may track user selections and generate a user selection history such that an optimized GUI may be defined and later presented to the user.
  • the optimized GUI is saved into the GUI templates 110 of memory 106, is saved into another location of the memory 106, or is saved in another suitable memory medium. Alternatively, or additionally, information that is used to construct the optimized GUI may be saved.
  • Selected ones of the GUIs, or even all of the GUIs may be reconfigured based on a user's repeated selection of particular function elements on the GUI. That is, selected GUIs may be configured to be optimized, while other GUIs may be configured in a fixed format. Accordingly, embodiments of the media device 102 may generate and store multiple optimized GUIs. Further, an optimized GUI may be later reconfigured based on changes in the historical selection of function elements by the user, or by different users.
  • Any tracking system may be employed by the various embodiments of the GUI optimizing system 100 to generate the historical information that is used to define an optimized GUI.
  • information corresponding to a number of times that the function element of interest is selected is stored in the function element history 1 14 portion of memory 106, is stored into another location of the memory 106, or is stored in another suitable memory medium. Accordingly, the previous user selections of a particular function element on the initial GUI is used to generate the optimized GUI.
  • the optimized GUI may be generated when the number of times that the function element of interest has been previously selected is at least equal to a threshold. Each time the particular GUI is invoked, the number of times that the function element of interest has been previously selected is compared with a threshold.
  • the threshold may be predefined. In some embodiments, different thresholds may be used for different GUIs.
  • the GUI optimizing system 100 may then generate and save a corresponding optimized GUI. For example, but not limited to, selection of a particular function element particular function element five times may cause the optimized GUI to be generated. Any suitable predefined number of repeated selections may be used.
  • Some embodiments may require the repeated selection of the function element the predefined number of times in a row (without selection of other function elements).
  • the optimized GUI may be generated after the user consecutively selects the same function element five times in a row.
  • the optimized GUI may be generated after the user selects the same function element a predetermined number of times.
  • the optimized GUI may be generated after the user selects the same function element twenty- five times, even if the user does not consecutively select the same function element. Any suitable threshold may be used.
  • GUI GUI
  • information corresponding to a total number of times of user invocations to modify at least one operation and/or function may be stored.
  • Information corresponding to a number of times that the function element of interest is selected is also stored.
  • a ratio between the number of times that the function element of interest has been previously selected with the total number of invocations is determined.
  • the optimized GUI 128 is may then be generated and/or presented when the ratio is at least equal to a threshold. For example, if the user selects a particular function element fifty percent (50%) of the time, embodiments may generate an optimized GUI. Any suitable threshold may be used.
  • Some embodiments may concurrently employ multiple tests to track repeated user selection of a particular function element. For example, if the user concurrently selects a particular function element five times, or selects the same function element a total of twenty-five times, the optimized GUI may be generated. Any suitable combination of tests may be used by the various embodiments.
  • Any suitable statistical method or metric may be used by the various embodiments to identify a repeatedly selected function element of interest. Once the function element of interest has been identified, the optimized GUI may be generated for subsequent presentation upon receiving a next invocation to modify the operation and/or the function of the media device 102 and/or the media presentation device 1 16.
  • the GUI optimizing system 100 may generate two or more different optimized GUIs based on other factors and/or characteristics. For example, some native languages read textual characters from the left to the right, such as English or Russian. Accordingly, a preferred function element may be located in a particular part of the optimized GUI. However, other cultures read textual characteristics from right to left, bottom to top, or the like. Thus, when the optimized GUI is presented based on the language of the other culture, the presentation location of the preferred function element may be different in the presented optimized GUI.
  • the display 118 is an integrated component of the media device 102, such as a touch sensitive display.
  • the touch sensitive display 118 is also the user interface. Accordingly, the touch sensitive display 118 is communicatively coupled to the processor system 104, wherein the touch sensitive display 1 18 is configured to receive the request to modify based on at least one user touch on the touch sensitive display 1 18, and is configured to present the optimized GUI.

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Human Computer Interaction (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

Systems and methods are operable to optimize graphical user interfaces (GUIs) based on repeated user selection of a function element of interest. An exemplary embodiment presents an initial GUI on a display of user-selectable function elements in initial predefined presentation locations, and wherein the initial GUI modifies an operation or function of a media device or a media presentation device; receives a user selection of a function element of interest selected from the plurality of user-selectable function elements presented on the initial GUI; stores information corresponding to a number of times that the function element of interest is selected; repeats the presenting, the receiving, and the storing until a predetermined number of times of selection of the function element of interest occurs; and generates an optimized GUI, wherein a presentation location of the function element of interest is changed from its respective initial presentation location to an optimized presentation location.

Description

APPARATUS, SYSTEMS AND METHODS FOR OPTIMIZING GRAPHICAL USER INTERFACES BASED ON USER SELECTION HISTORY
BACKGROUND
[0001] Media devices with displays, or coupled to displays, are often configured to present a graphical user interface (GUI) with a plurality of available function elements that are user selectable. The user, by navigating about the GUI, is able to highlight and then select a particular function element of interest.
[0002] However, some of the GUIs have a very large number of user-selectable function elements. Thus, navigation about such GUIs may be cumbersome and time consuming. Further, there are some types of GUIs that are repeatedly accessed by the user. Often, the user is repeatedly navigating to and selection of a particular one or two of the plurality of user-selectable function elements that are presented in the GUI. Accordingly, there is a need in the arts to provide enhanced GUIs that are more user friendly.
SUMMARY
[0003] Systems and methods of optimizing graphical user interfaces (GUIs) based on repeated user selection of a function element of interest are disclosed. An exemplary embodiment presents an initial GUI on a display, wherein the initial GUI presents a plurality of user-selectable function elements in initial predefined presentation locations, and wherein the initial GUI is configured to modify at least one of an operation and a function of at least one of a media device and a media presentation device; receives a user selection of a function element of interest selected from the plurality of user-selectable function elements presented on the initial GUI; stores information corresponding to a number of times that the function element of interest is selected; repeats the presenting, the receiving, and the storing until a predetermined number of times of selection of the function element of interest occurs; and generates an optimized GUI, wherein a presentation location of the function element of interest is changed from its respective initial presentation location to an optimized presentation location.
BRIEF DESCRIPTION OF THE DRAWINGS
[0004] Preferred and alternative embodiments are described in detail below with reference to the following drawings: [0005] FIGURES 1A-1C are block diagrams of an embodiment of an exemplary graphical user interface (GUI) optimizing system implemented in a media device;
[0006] FIGUREs 2A-2C are block diagrams of an embodiment of an exemplary graphical user interface (GUI) optimizing system reorganizing a language selection GUI;
(0007] FIGURE 3 is a block diagram of an exemplary media device;
[0008] FIGURE 4 illustrates an embodiment of a smart phone having the optimized GUI presented on its display; and
[0009] FIGURE 5 illustrates an embodiment of a lap top portable computing device having the optimized GUI presented on its display.
DETAILED DESCRIPTION
[0010] FIGUREs 1A-1C are block diagrams of an embodiment of an exemplary graphical user interface (GUI) optimizing system 100 implemented in a media device 102. Embodiments of the GUI optimizing system 100 may be implemented in various types of media devices that have displays, or that are coupled to display devices. Exemplary media devices 102 include, but not are limited to, a set top box (STB), a television (TV), a digital video disc (DVD) player, a digital video recorder (DVR), a game playing device, a cellular smart phone, a personal computer (PC), an electronic tablet, or the like.
[0011] The exemplary media device 102 comprises a processor system 104 and a memory 106. The memory 106 comprises portions that are configured to store the media device logic 108, a plurality of defined GUIs in the GUI templates 110, the function element logic 112, and the function element history 114. In some embodiments, the media device logic 108 and the function element logic 112 may be integrated together, and/or may be integrated with other logic. In other embodiments, some or all of these memory and other data manipulation functions may be provided by and using remote server or other electronic devices suitably connected via the Internet or otherwise to a client device. Other media devices may include some, or may omit some, of the above-described media processing components. Further, additional components not described herein may be included in alternative embodiments.
[0012] The exemplary media device 102 is configured to communicate information, such as a media content event or a GUI, to a media presentation device 1 16 with a display 1 18. The received media content event or GUI is then presented on the display 118. In some embodiments, the media device 102 and the media presentation device 116 may be an integrated electronic device with its own display 118.
[0013] To conceptually facilitate explanation of an exemplary embodiment of the GUI optimizing system 100, an exemplary initial GUI 120 is presented on the display 1 18. The media device 102 senses various input generated from a user interface. Some inputs are configured to invoke a particular type of functional GUI which permits the user to change the operation of media device 102 and/or the media presentation device 11 . That is, invoking by the user initiates operation of a program or the like that is configured to modify an operation or function of the media device 102 and/or the media presentation device 116. Part of the process performed by the invoked program causes a presentation of the initial GUI 120 to the user so that the user may select their modifications.
[0014] At some point in the process of modifying the operation or the function, the initial GUI 120 is retrieved from the GUI templates 110 portion of the memory 106. Alternatively, or additionally, the initial GUI 120 (and/or the information used to construct the initial GUI 120) may be saved elsewhere, such as with the associated program that generates the initial GUI 120.
[0015] Embodiments of the GUI optimizing system 100 are configured to optimize presentation of an initial GUI 120 based on previous selection behaviors of the user. That is, after the user has repeatedly used a particular initial GUI 120, and has selected a particular function element of that initial GUI 120, embodiments of the GUI optimizing system 100 reformat an initial GUI to place the repeatedly selected function element in a more conveniently accessible presentation location on the GUI when the GUI is later accessed by the user. That is, the previous user selections of a particular function element on the initial GUI is used to generate an optimized GUI.
[0016] The exemplary initial GUI 120 comprises a plurality of conceptual function elements (FE 1 through FE 9) that are user-selectable function elements. Presentation of the initial GUI 120 is initiated by a user request or the like. The user-selectable function elements are configured, upon selection by the user, to perform an associated operation or effect an associated function that pertains to the media device 102 and/or the media presentation device 1 16.
[0017] The user provides an input to navigate about a presented initial GUI 120 using a suitable user interface device. In an exemplary embodiment, the user interface is a remote control 122 having a plurality of controllers 124 on its surface. Any suitable user interface may be used. For example, if the media device 102 is a smart phone, the controllers 124 may be in the form of a plurality of touch-sensitive buttons or switches that the user actuates. Alternatively, or additionally, the controllers 124 may be virtual controllers presented on a suitable touch sensitive display communicatively coupled to the processor system, wherein the touch sensitive display is configured to receive the request to modify based on at least one user touch on the touch sensitive display, and is configured to present the initial GUI 120. A mouse or a keyboard are other non-limiting examples of user interfaces.
[0018] To navigate about a presented initial GUI 120, the user actuates one or more of the controllers 124 on the exemplary remote control 122 or another suitable user interface. For example, the remote control 122 may include thereon a plurality of navigation keys, such as, but not limited to, an "up" key (†), a "down" key (j ), a "right" key (→), and a "left" key (<-). Further, a select function key (| ) may also be provided on the remote control 122. When one or more of the navigation keys are actuated, a current active (or focused) one of the function elements of the initial GUI 120 is changed. For example, if the "right" key (→) is actuated, then the function element to the right becomes the current (or focused) function element. Upon actuation of the selected function key, the currently active function element is selected such that its respective function is implemented by the media device 102 and/or the media presentation device 116.
[0019] In practice, when a user wishes to change an operating characteristic of the media device 102, the user causes an invocation of a particular GUI that permits a change to the operating characteristic of interest. Initially, a predefined initial GUI stored in the GUI templates 110 of memory 106 is retrieved and is presented to the user on the display 1 18.
[0020] In the presented exemplary initial GUI 120 of FIGURE 1, a first function element (FE 1) is illustrated as being located in an initial active presentation location corresponding to the upper left hand side of the initial GUI 120. The first function element (FE 1) is illustrated as being active when the initial GUI 120 is initially presented on the display 118. In some embodiments, a user input is required to activate a first function element.
[0021] If the user selects the first function element (FE 1) by actuating the select function key (I ) controller 124 on the remote control 122, the function associated with the first function element (FE 1) will be implemented by the media device 102 and/or the media presentation device 116. The active status, or focused status, of the first function element (FE 1) is conceptually illustrated by the bold line size of the illustrated box representing the first function element (FE 1).
[0022] However, the user may be interested in the ninth function element (FE 9), illustrated as being located in the lower right hand side of the initial GUI 120. To access the ninth function element (FE 9) of interest, the user will have to actuate one or more of the navigation-type controllers 124 on the exemplary remote control 122 to navigate from the first function element (FE 1) to the desired ninth function element (FE 9). In the exemplary initial GUI 120, the user would have to actuate the "right" key (-→) two times, followed by actuation of the "down" key (J) two times, to navigate to the ninth function element (FE 9), as illustrated by the arrow 126 shown in FIGURE IB. Once the ninth function element (FE 9) has been navigated to, the ninth function element (FE 9) becomes active (as indicated by the bold line size of the illustrated box representing the ninth function element (FE 9) in FIGURE IB). Upon actuation of the select function key (| ) controller 124 on the remote control 122, the associated function of the ninth function element (FE 9) is implemented by the media device 102 and/or the media presentation device 116. In this conceptual example, the user is required to actuate the various controllers 124 five different times to navigate to and select the ninth function element (FE 9).
[0023] Embodiments of the GUI optimizing system 100 are configured to track user selection history over time. A history of user selections made via a repeatedly presented initial GUI 120 is generated and is stored in the function element history 114 portion of the memory 106. In the example of FIGURES 1A-1 C, each time the user selects the ninth function element (FE 9), information identifying the selection of the ninth function element (FE 9) is saved into the function element history 114 by the processor system 104 under management of the function element logic 112. The information corresponding to the user function selection history may be stored using any suitable format.
[0024] In an exemplary embodiment, after the user has selected the ninth function element (FE 9) a predefined number of times from the presented initial GUI 120 of FIGURE 1A, the presented function elements on the next presented initial GUI 120 are rearranged such that the ninth function element (FE 9) may be selected by the user with fewer required actuations of the controllers 124 on the remote control 122.
[0025] FIGURE 1C conceptually illustrates a rearranged order of the function elements presented in an optimized GUI 128. Here, ordering of the presented function elements are rearranged so that the ninth function element (FE 9) is moved to an initial active presentation location in the optimized GUI 128. That is, the initial presentation location of the ninth function element (FE 9) is changed from its respective initial presentation location to a new optimized presentation location illustrated in FIGURE 1C. The optimized GUI 128 may be generated after the user has selected the ninth function element (FE 9) a predefined number of times. Alternatively, the optimized GUI 128 may be generated when the user next invokes a next use of the program to modify the operation or function associated with the previously used initial GUI 120.
[0026] In an exemplary embodiment, the new presentation location is a new initial active location of the optimized GUI 128 that is immediately selectable upon an initial presentation of the optimized GUI 128. Accordingly, when a next invocation is received to modify an operation or function associated with the initial GUI 120, the optimized GUI 128 is presented in response to the next invocation.
[0027] In an alternative embodiment, the optimized GUI 128 may not have an initially active user-selectable function element when initially presented. However, such an optimized GUI 128 will have an initial starting location on the presented optimized GUI 128, wherein a first actuation of one of the controllers 124 will cause selection of one of the user-selectable function elements as the initial active function element. In such optimized GUIs 128, the new location of the user-selectable function element is configured to become active after an initial actuation of a navigation-type controller 124 ["up" key (†), a "down" key (|), a "right" key (-→), and a "left" key (*—)] on a user interface, such that the function element of interest is selectable by a next actuation of a select function key (] ) controller 124.
[0028] For example, a movie channel guide GUI may present a plurality of selectable sources of movies, such as a plurality of premium program provider channels. The user, by actuating the "down" key (I) one time, may cause the first movie channel to become highlighted, and thus active so that it is immediately selectable. Here, embodiments may rearrange the order of presentation of the available movie channels in the optimized GUI 128. That is, the movie channel at the top of the list becomes the initial active location for that type of optimized GUI 128. Other types of similar functioning GUIs are contemplated by the various embodiments.
[0029] The reordering of the function elements is based on the information in the function element history 114 portion of memory 106. In the various embodiments, the optimized GUI 128 is generated based upon the user's repeated navigation to, and the attendant selection of, the ninth function element (FE 9). Embodiments of the GUI optimizing system 100 have relocated the repeatedly selected ninth function element (FE 9) to a new initial presentation location at the upper left hand corner of the optimized GUI 128.
[0030] Further, the initial presentation locations of the other function elements FE 1 through FE 8 have also been reordered, or changed, on the optimized GUI 128. In this exemplary embodiment, their respective presentation locations on the GUI 128 have been shifted by one position.
[0031] In other embodiments, the non-selected function elements may be arranged in any desirable order. For example, the first function element (FE 1) and the ninth function element (FE 9) may exchange presentation locations.
[0032] Alternatively, or additionally, the function elements may be relocated based on frequency of selection by the user. In an exemplary embodiment, user selection of a second function element of interest selected from the plurality of user-selectable function elements presented on the initial GUI is received. Information corresponding to a number of times that the second function element of interest is selected is stored. The presenting, the receiving, and the storing is repeated until a predetermined number of selections of the second function element of interest occurs. Then, a revised optimized GUI is generated, wherein a presentation location of the second function element of interest is changed from its respective initial presentation location to another optimized presentation location.
[0033] For example, if the ninth function element (FE 9) has been selected five times, the first function element (FE 1) has been selected three times, then the first function element (FE 1) is placed in close proximity to the presentation location of the ninth function element (FE 9). That is, some embodiments are configured to define presentation locations of a plurality of function elements of interest, wherein the particular presentation location order is based on the historical selections made by the user.
[0034] In some embodiments, presentation locations of the selectable function elements are changed from their respective initial presentation locations on the initial GUI 120 to an adjacent presentation location on the optimized GUI 128. That is, the presentation location of the function elements are simply shifted to accommodate the new location of the function element of interest that has been repeatedly selected by the user.
[0035] Once the optimized GUI 128 with the new initial presentation location of the repeatedly selected function elements has been defined by embodiments of the GUI optimizing system 100, the optimized GUI 128 is saved into the GUI templates 1 10 of memory 106, is saved into another location of the memory 106, or is saved in another suitable memory medium. Accordingly, when that particular functional GUI is later invoked, the optimized GUI 128 may be retrieved and presented to the user. [0036] Further, the ninth function element (FE 9) is now initially active when the optimized GUI 128 is initially presented on the display 1 18. If the user selects the ninth function element (FE 9) by actuating the select function key (| ) controller 124 on the remote control 122, the function associated with the ninth function element (FE 9) will be implemented by the media device 102 and/or the media presentation device 116. Accordingly, the user is able to implement the function of the ninth function element (FE 9) with actuation of a single controller 124 on the remote control 122.
[0037] As another non-limiting example of operation of an embodiment of the GUI optimizing system 100, FIGUREs 2A-2C are block diagrams of an embodiment of an exemplary GUI optimizing system 100 reorganizing a language selection initial GUI 202. FIGURE 2 A illustrates a presented initial GUI 202. Some types of media devices 102 and/or the media presentation devices 1 16 are configurable by the user to present text and/or audio information in different languages. The user is able to select a preferred language using the initial GUI 202. Accordingly, the initial GUI 120 may be configured to present a choice of languages in which subsequent textual information and/or audio information will be presented to the user.
[0038] The exemplary initial GUI 202 comprises a column 204 of selection boxes and a column 206 of associated non-selectable language specification boxes that includes a caption, such as text or the like, that identifies the selectable language. Each selection box and associated language specification box form a selectable box and caption pair. The exemplary initial GUI 202 indicates that the English language has been designated as the current language. The English language may have been previously selected by the user or may have been set as a default native language. Further, the English language is indicated as being the current language by the highlighting of the English language box (as indicated by the bold line size) and/or by a marker 208 (conceptually shown as an "X") that resides in the selection box that is adjacent to the English language box (wherein the association between the marked selection box and the English language box is intuitively apparent to the user in view of their proximity to each other). The marker 208 and its associated the language specification box cooperatively operate as a user-selectable function element.
[0039] However, the user's native language may be Russian, and accordingly, the user may want to change the current language to Russian. From time to time, the user may choose to alternate between the English language and the Russian language. FIGURE 2B illustrates that to select the Russian language, the marker 208 must be moved down to the Russian language box (as indicated by the arrow 210). Upon selection of the marker 208, such as by actuation of the exemplary select function key (| ) on the remote control 122, the current language is changed from English to Russian. To effect the selection of the Russian language as illustrated, the user would have to actuate the "down" key Q) four times, and then actuate the select function key (] ).
[0040] At a later time, the user may change the current language back to the English language by moving the marker 208 back up to the appropriate presentation location on the initial GUI 202, and then by actuating the select function key (| ) to select the English language. To effect the re-selection of the English language, the user would have to actuate the "up" key (†) four times, and then actuate the select function key (| ).
[0041] In an exemplary embodiment, after the user has selected the Russian language using the initial GUI 202 a predefined number of times, the presented language choices on the next presented optimized GUI 212 are rearranged such that the Russian language may be selected by the user with fewer required actuations of the controllers 124 on the remote control 122 or by operation of other suitable user interfaces.
[0042] FIGURE 2C conceptually illustrates a rearranged order of the native language choices presented in the optimized GUI 212 that is generated based upon the user's repeated navigation to, and the attendant selection of, the Russian language. Embodiments of the GUI optimizing system 100 have relocated the repeatedly selected Russian language box to the upper portion of the optimized GUI 212. The presentation location of the other language boxes have also been changed on the optimized GUI 212. Accordingly, when a next invocation is received to modify the native language associated with the initial GUI 202, the optimized GUI 212 is presented in response to the next invocation.
[0043] In the conceptual optimized GUI 212 presenting the Russian language at the top of the list of selectable native languages, the user may select the Russian language as the current native language by simply selecting the marker 208 that is initially presented adjacent to the Russian language box. That is, the user is able to change the current language to the Russian language by a single actuation of the select function key (| ) of the remote control 122. Accordingly, the user is able to change to the Russian language with fewer actuations of the controllers 124 on the remote control 122.
[0044] Further, if the user wishes to change the current native language back to the English language, the user only needs to actuate the "down" key (J,) one time, and actuate the select function key (I ) one time. Accordingly, the user is able to change back to the English language with fewer actuations of the controllers 124 on the remote control 122. [0045] Once the optimized GUI 212 has been defined by embodiments of the GUI optimizing system 100, the optimized GUI 212 (or information used to generate the optimized GUI 128) is saved into the GUI templates 1 10 of memory 106, or is saved into another suitable memory medium. Accordingly, when that particular functional GUI is subsequently invoked, the optimized GUI 212 may be retrieved and presented to the user.
[0046] FIGURE 3 is a block diagram of an exemplary media device 102. The non-limiting exemplary media device 102 comprises a program content stream interface 302, a processor system 104, a memory 106, a program buffer 304, an optional digital video recorder (DVR) 306, a presentation device interface 308, and a remote interface 310. Other media devices may include some, or may omit some, of the above-described media processing components. Further, additional components not described herein may be included in alternative embodiments.
[0047] The functionality of the media device 102, here a set top box, is now broadly described. A media content provider provides program content that is received in a media content stream 312. The media content stream 312 is communicated to the media device 102 from a media system sourced from a remote head end facility (not shown) operated by the media content provider. Non-limiting examples of such media systems include satellite systems, cable system, and the Internet. For example, if the media content provider provides programming via a satellite-based communication system, the media device 102 is configured to receive one or more broadcasted satellite signals detected by an antenna (not shown). Alternatively, or additionally, the media content stream 312 can be received from one or more different sources, such as, but not limited to, a cable system, a radio frequency (RF) communication system, or the Internet.
[0048] The media content stream 312 is received by the program content stream interface 302. One or more tuners 314 in the program content stream interface 302 selectively tune to one of a plurality of media content events communicated via the media content stream 312 in accordance with instructions received from the processor system 104. The processor system 104, executing the media device logic 108 and based upon a request for a program of interest specified by a user, parses out program content associated with the program of interest. The program of interest is then assembled into a stream of video and/or audio information which may be stored by the program buffer 304 such that the program content can be streamed out to the media presentation device 1 16, such as the illustrated television, via the presentation device interface 308. Alternatively, or additionally, the parsed out program content may be saved into the DVR 306 for later presentation. The DVR 306 may be directly provided in, locally connected to, or remotely connected to, the media device 102.
[0049] The exemplary media device 102 is configured to receive commands from the user via a remote control 122. The remote control 122 includes one or more of the controllers 124. The user, by actuating one or more of the controllers 124, causes the remote control 122 to generate and transmit commands, via a wireless signal 316, to the media device 102. The commands control the media device 102 and/or control the media presentation device 116. The wireless signal 316 may be an infrared signal or an RF signal.
[0050] After a particular GUI has been accessed a number of times such that the media device 102 can predict the user's preferences towards a particular user selectable function element, the media device 102 may present the optimized GUI 318 when the user next invokes and/or uses that particular GUI. That is, after a sufficient number of selections of a particular function element has been detected and stored into the function element history 1 14, a user history is available to predict which particular function element is likely to be selected upon invocation of a particular GUI.
[0051] Many different types of GUIs 120 may be presented to the user so that the user may adjust operating functions of the media device 102 and/or the media presentation device 116. For example, an exemplary initial GUI 120 may present a series of function elements that are configured to control the input signal source of the media device 102 and/or the media presentation device 1 16. Another initial GUI 120 may be configured to control the presentation characteristics of the display 118, such as a color, a brightness, a resolution, and/or a hue of presented images. Embodiments of the GUI optimizing system 100 may be configured to operate on any suitable initial GUI 120 that is frequently accessed by the user.
[0052] As another non-limiting example, some media devices 102 employ a plurality of different screen resolutions that are used to present images on the display 1 18. A screen resolution selection GUIs may be configured to permit the user to specify a native screen resolution. Some screen resolutions may employ a 720 format (e.g., 720x480i, 720x480p, etc.), while other selectable screen resolutions may employ a 1280 format (e.g., 1280x720p, 1280x768p, 1280xl024p, etc.). The screen resolution selection GUI may be available to the user to specify a particular screen resolution to enhance presentation of a media content event received in a media content stream 312. Accordingly, in the event that the user repeatedly selects a particular screen resolution (via a function element presented on a GUI), embodiments of the GUI optimizing system 100 may generate an optimized GUI so that the user may more conveniently select their preferred screen resolution.
[0053] Embodiments of the GUI optimizing system 100 may be implemented in a variety of electronic devices. FIGURE 4 illustrates an embodiment of a smart phone 402 having the optimized GUI 128 presented on its display 118. FIGURE 5 illustrates and embodiment of a lap top type portable computing device 502 having the optimized GUI 128 presented on its display 1 18. Such electronic devices may include various logic and components (not shown) that enable operation of the electronic device for their intended purposes. Such devices, when repeatedly presenting GUIs to the user, may track user selections and generate a user selection history such that an optimized GUI may be defined and later presented to the user.
[0054] In the various embodiments, once an optimized GUI has been defined, the optimized GUI is saved into the GUI templates 110 of memory 106, is saved into another location of the memory 106, or is saved in another suitable memory medium. Alternatively, or additionally, information that is used to construct the optimized GUI may be saved.
[0055] Selected ones of the GUIs, or even all of the GUIs, may be reconfigured based on a user's repeated selection of particular function elements on the GUI. That is, selected GUIs may be configured to be optimized, while other GUIs may be configured in a fixed format. Accordingly, embodiments of the media device 102 may generate and store multiple optimized GUIs. Further, an optimized GUI may be later reconfigured based on changes in the historical selection of function elements by the user, or by different users.
[0056] Any tracking system may be employed by the various embodiments of the GUI optimizing system 100 to generate the historical information that is used to define an optimized GUI. In the various embodiments, information corresponding to a number of times that the function element of interest is selected is stored in the function element history 1 14 portion of memory 106, is stored into another location of the memory 106, or is stored in another suitable memory medium. Accordingly, the previous user selections of a particular function element on the initial GUI is used to generate the optimized GUI.
[0057] In the various embodiments, the optimized GUI may be generated when the number of times that the function element of interest has been previously selected is at least equal to a threshold. Each time the particular GUI is invoked, the number of times that the function element of interest has been previously selected is compared with a threshold. The threshold may be predefined. In some embodiments, different thresholds may be used for different GUIs. [0058] In some embodiments, after the user has repeatedly selected the same particular function element from a presented GUI a predefined number of times, the GUI optimizing system 100 may then generate and save a corresponding optimized GUI. For example, but not limited to, selection of a particular function element particular function element five times may cause the optimized GUI to be generated. Any suitable predefined number of repeated selections may be used.
[0059] Some embodiments may require the repeated selection of the function element the predefined number of times in a row (without selection of other function elements). For example, the optimized GUI may be generated after the user consecutively selects the same function element five times in a row.
[0060] Alternatively, or additionally, the optimized GUI may be generated after the user selects the same function element a predetermined number of times. For example, the optimized GUI may be generated after the user selects the same function element twenty- five times, even if the user does not consecutively select the same function element. Any suitable threshold may be used.
[0061] Alternatively, or additionally, other metrics may be used to track user selection of a particular function element using a presented GUI. In an exemplary embodiment, information corresponding to a total number of times of user invocations to modify at least one operation and/or function may be stored. Information corresponding to a number of times that the function element of interest is selected is also stored. When an invocation is received to modify the operation and/or the function of the media device 102 and/or the media presentation device 116, a ratio between the number of times that the function element of interest has been previously selected with the total number of invocations is determined. The optimized GUI 128 is may then be generated and/or presented when the ratio is at least equal to a threshold. For example, if the user selects a particular function element fifty percent (50%) of the time, embodiments may generate an optimized GUI. Any suitable threshold may be used.
[0062] Some embodiments may concurrently employ multiple tests to track repeated user selection of a particular function element. For example, if the user concurrently selects a particular function element five times, or selects the same function element a total of twenty-five times, the optimized GUI may be generated. Any suitable combination of tests may be used by the various embodiments.
[0063] Any suitable statistical method or metric may be used by the various embodiments to identify a repeatedly selected function element of interest. Once the function element of interest has been identified, the optimized GUI may be generated for subsequent presentation upon receiving a next invocation to modify the operation and/or the function of the media device 102 and/or the media presentation device 1 16.
[0064] Further, the GUI optimizing system 100 may generate two or more different optimized GUIs based on other factors and/or characteristics. For example, some native languages read textual characters from the left to the right, such as English or Russian. Accordingly, a preferred function element may be located in a particular part of the optimized GUI. However, other cultures read textual characteristics from right to left, bottom to top, or the like. Thus, when the optimized GUI is presented based on the language of the other culture, the presentation location of the preferred function element may be different in the presented optimized GUI.
[0065] In some embodiments, the display 118 is an integrated component of the media device 102, such as a touch sensitive display. The touch sensitive display 118 is also the user interface. Accordingly, the touch sensitive display 118 is communicatively coupled to the processor system 104, wherein the touch sensitive display 1 18 is configured to receive the request to modify based on at least one user touch on the touch sensitive display 1 18, and is configured to present the optimized GUI.
[0066] It should be emphasized that the above-described embodiments of the GUI optimizing system 100 are merely possible examples of implementations of the invention. Many variations and modifications may be made to the above-described embodiments. All such modifications and variations are intended to be included herein within the scope of this disclosure and protected by the following claims.

Claims

A method of optimizing graphical user interfaces (GUIs), comprising:
presenting an initial GUI on a display configured to modify at least one of an operation and a function of at least one of a media device and a media presentation device, wherein the initial GUI presents a plurality of user-selectable function elements in initial predefined presentation locations;
receiving a user selection of a function element of interest selected from the plurality of user-selectable function elements presented on the initial GUI;
storing information corresponding to a number of times that the function element of interest is selected;
repeating the presenting, the receiving, and the storing until a predetermined number of times of selection of the function element of interest occurs; and
generating an optimized GUI, wherein a presentation location of the function element of interest is changed from its respective initial presentation location in the initial GUI to an optimized presentation location in the optimized GUI.
The method of Claim 1, wherein generating the optimized GUI further comprises:
changing the initial presentation location of the function element of interest to an initial active location on the optimized GUI,
wherein the initial active location is a location that is immediately selectable upon an initial presentation of the optimized GUI.
The method of Claim 1, wherein generating the optimized GUI further comprises:
changing the initial presentation location of the function element of interest to a new location on the optimized GUI,
wherein the new location is configured to become active after an initial actuation of a navigation-type controller on a user interface, such that the function element of interest is selectable by a next actuation of a select function controller.
The method of Claim 1, further comprising:
comparing a number of times that the function element of interest has been previously selected with a threshold, wherein the optimized GUI is generated when the number of times that the function element of interest has been previously selected is at least equal to the threshold.
5. The method of Claim 1 , further comprising:
storing information corresponding to a total number of times of user invocations to modify at least one operation and function;
storing information corresponding to a number of times that the function element of interest is selected; and
determining a ratio between the number of times that the function element of interest has been previously selected with the total number of invocations;
wherein the optimized GUI is generated when the ratio is at least equal to a threshold.
6. The method of Claim 1 , wherein after generation of the optimized GUI, the method further comprising:
receiving a next invocation to modify an operation or function associated with the initial GUI,
wherein the optimized GUI is presented in response to the next invocation.
7. The method of Claim 6, further comprising:
receiving a next user selection of the function element of interest presented on the optimized GUI; and
modifying at least one of the operation and the function in accordance with the user selection of the function element of interest.
8. The method of Claim 1 , further comprising:
receiving, after the predetermined number of times of selection of the function element of interest has occurred, a user invocation to modify at least one of the operation and the function of the at least one of the media device and the media presentation device; and
generating the optimized GUI in response to receiving the user invocation.
9. The method of Claim 1, wherein a presentation location of at least one of the other of the plurality of selectable function elements is changed from its respective initial presentation location on the initial GUI to the initial presentation location of the selected function element of interest when presented on the optimized GUI.
10. The method of Claim 1, wherein presentation locations of other ones of the plurality of selectable function elements are changed from their respective initial presentation locations on the initial GUI to an adjacent presentation location on the optimized GUI.
11. The method of Claim 1, wherein the function element of interest is a first function element of interest, and further comprising:
receiving a user selection of a second function element of interest selected from the plurality of user-selectable function elements presented on the initial GUI;
storing information corresponding to a number of times that the second function element of interest is selected;
repeating the presenting, the receiving, and the storing until a predetermined number of selections of the second function element of interest occurs; and
generating a revised optimized GUI, wherein a presentation location of the second function element of interest is changed from its respective initial presentation location to another optimized presentation location.
12. The method of Claim 1 1 , further comprising:
receiving a next user selection of a second function element of interest selected from the plurality of user-selectable function elements presented on the revised optimized GUI; and
modifying at least one of a second operation and a second function in accordance with the user selection of the second function element of interest from the revised optimized GUI.
13. A system configured to modify at least one of an operation and a function based on user selection of a function element of interest presented on a graphical user interface (GUI), comprising:
a user interface configured to receive a request to modify the at least one operation and function; a memory configured to store at least one initial GUI, and configured to store a history comprising a number of times that the function element of interest has been previously selected after the request to modify; and
a processor system communicatively coupled to the user interface and the memory, wherein the processor system is configured to:
store information in the memory corresponding to the number of times that the function element of interest is selected;
repeat the information storing until a predetermined number of times of selection of the function element of interest occurs;
compare the number of times that the function element of interest has been previously selected with a threshold; and
generate an optimized GUI when the number of times that the function element of interest has been previously selected is at least equal to the threshold, wherein a presentation location of the function element of interest is changed from its respective initial presentation location to an optimized presentation location.
14. The system of Claim 13, wherein the user interface comprises:
a remote interface configured to receive a wireless signal from a remote control, wherein the wireless signal comprises information corresponding to the request to modify the at least one operation and function and information corresponding to a selection of the function element of interest.
15. The system of Claim 13, further comprising:
a display communicatively coupled to the processor system, wherein the optimized GUI is presentable on the display.
16. The system of Claim 13, wherein the user interface comprises:
a touch sensitive display communicatively coupled to the processor system, wherein the touch sensitive display is configured to receive the request to modify based on at least one user touch on the touch sensitive display, and is configured to present the optimized GUI.
17. The system of Claim 13, further comprising: a presentation device interface communicatively coupled to the processor system and configured to communicatively couple to a media presentation device with a display, wherein the presentation device interface is configured to communicate the optimized GUI to the media presentation device for presentation on the display.
18. A method of optimizing graphical user interfaces (GUIs), comprising:
receiving a plurality of invocations to modify at least one of an operation and a function of at least one of a media device and a media presentation device;
receiving a plurality of user selections corresponding to a selection of a function element of interest presented on an initial GUI, wherein the selected function element of interest is presented at an initial presentation location on the initial GUI, and wherein a plurality of other function elements are presented at other presentation locations on the initial GUI;
tracking a number of times that the function element of interest is selected; and generating an optimized GUI after the tracked number of times of the selection of the function element of interest reaches a threshold, wherein a presentation location of the function element of interest is changed from its respective initial presentation location to an optimized presentation location.
19. The method of Claim 18, further comprising:
receiving a next invocation to modify after generation of the optimized GUI; and presenting the optimized GUI, wherein the optimized presentation location of the function element of interest is initially active in the presented GUI.
20. The method of Claim 18, further comprising:
receiving a next invocation to modify; and
comparing the tracked number of times that the function element of interest has been previously selected with a threshold,
wherein the optimized GUI is generated when the tracked number of times is at least equal to the threshold.
PCT/UA2011/000043 2011-05-31 2011-05-31 Apparatus, systems and methods for optimizing graphical user interfaces based on user selection history Ceased WO2012166071A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/UA2011/000043 WO2012166071A1 (en) 2011-05-31 2011-05-31 Apparatus, systems and methods for optimizing graphical user interfaces based on user selection history

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/UA2011/000043 WO2012166071A1 (en) 2011-05-31 2011-05-31 Apparatus, systems and methods for optimizing graphical user interfaces based on user selection history

Publications (1)

Publication Number Publication Date
WO2012166071A1 true WO2012166071A1 (en) 2012-12-06

Family

ID=44675797

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/UA2011/000043 Ceased WO2012166071A1 (en) 2011-05-31 2011-05-31 Apparatus, systems and methods for optimizing graphical user interfaces based on user selection history

Country Status (1)

Country Link
WO (1) WO2012166071A1 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014107598A1 (en) * 2013-01-04 2014-07-10 Qualcomm Mems Technologies, Inc. System and method to display contextual information on a handheld device having a secondary ambient display
WO2015006581A3 (en) * 2013-07-12 2015-05-07 Alibaba Group Holding Limited Providing history-based data processing
EP3509311A1 (en) * 2018-01-09 2019-07-10 Samsung Electronics Co., Ltd. Electronic apparatus, user interface providing method and computer readable medium
CN115828881A (en) * 2022-12-02 2023-03-21 中国工商银行股份有限公司 Data template generation method, device, electronic device and storage medium

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0891066A2 (en) * 1997-07-09 1999-01-13 Nokia Mobile Phones Ltd. Adaptable menu-controlled man-machine interface.
EP2028587A1 (en) * 2007-08-24 2009-02-25 Coeno GmbH & Co KG Method and device for navigating a graphical user interface
EP2177979A2 (en) * 2008-10-14 2010-04-21 Samsung Electronics Co., Ltd. Display apparatus and user interface display method thereof

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0891066A2 (en) * 1997-07-09 1999-01-13 Nokia Mobile Phones Ltd. Adaptable menu-controlled man-machine interface.
EP2028587A1 (en) * 2007-08-24 2009-02-25 Coeno GmbH & Co KG Method and device for navigating a graphical user interface
EP2177979A2 (en) * 2008-10-14 2010-04-21 Samsung Electronics Co., Ltd. Display apparatus and user interface display method thereof

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
AL-OMAR K ET AL: "Comparison of Adaptive, Adaptable and Mixed-Initiative Menus", CYBERWORLDS, 2009. CW '09. INTERNATIONAL CONFERENCE ON, IEEE, PISCATAWAY, NJ, USA, 7 September 2009 (2009-09-07), pages 292 - 297, XP031542018, ISBN: 978-1-4244-4864-7 *
DANIEL LIM AB SATHISH KS KUAH BEE LENG ONG BENG KEE: "REAL-TIME MENU HIERARCHY ORDER SETTING FOR A MOBILE PHONE", IP.COM JOURNAL, IP.COM INC., WEST HENRIETTA, NY, US, 6 April 2001 (2001-04-06), XP013000331, ISSN: 1533-0001 *
JEFFREY MITCHELL ET AL: "DYNAMIC VERSUS STATIC MENUS : AN EXPLORATORY COMPARISON", SIGCHI BULLETIN, VOLUME 20, NUMBER 4, APRIL 1989, 1 April 1989 (1989-04-01), pages 33 - 37, XP055028637, Retrieved from the Internet <URL:http://delivery.acm.org/10.1145/70000/67247/p33-mitchell.pdf?ip=145.64.134.242&acc=ACTIVE SERVICE&CFID=85502802&CFTOKEN=40639194&__acm__=1338472325_d3055a77212f71b89ba5a0fc90f4b258> [retrieved on 20120531] *
YOUNG JIN RO ET AL: "Dynamic pull-down menu organization in run-time by analyzing menu selection behaviors", COMPUTER AND INFORMATION TECHNOLOGY, 2008. CIT 2008. 8TH IEEE INTERNATIONAL CONFERENCE ON, IEEE, PISCATAWAY, NJ, USA, 8 July 2008 (2008-07-08), pages 730 - 735, XP031302712, ISBN: 978-1-4244-2357-6 *

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014107598A1 (en) * 2013-01-04 2014-07-10 Qualcomm Mems Technologies, Inc. System and method to display contextual information on a handheld device having a secondary ambient display
WO2015006581A3 (en) * 2013-07-12 2015-05-07 Alibaba Group Holding Limited Providing history-based data processing
US9588648B2 (en) 2013-07-12 2017-03-07 Alibaba Group Holding Limited Providing history-based data processing
KR101747676B1 (en) * 2013-07-12 2017-06-15 알리바바 그룹 홀딩 리미티드 Providing history-based data processing
US20170193510A1 (en) * 2013-07-12 2017-07-06 Alibaba Group Holding Limited Providing history-based data processing
TWI640888B (en) * 2013-07-12 2018-11-11 香港商阿里巴巴集團服務有限公司 Method and device for providing data processing mode list through communication network
US10748152B2 (en) 2013-07-12 2020-08-18 Alibaba Group Holding Limited Providing history-based data processing
EP3509311A1 (en) * 2018-01-09 2019-07-10 Samsung Electronics Co., Ltd. Electronic apparatus, user interface providing method and computer readable medium
CN115828881A (en) * 2022-12-02 2023-03-21 中国工商银行股份有限公司 Data template generation method, device, electronic device and storage medium

Similar Documents

Publication Publication Date Title
US11733834B2 (en) Methods, systems, and media for navigating a user interface using directional controls
US10423324B2 (en) Remote control device and method of controlling other devices using the same
KR101344173B1 (en) Techniques for implementing a cursor for televisions
US20110219395A1 (en) Pointing Capability and Associated User Interface Elements for Television User Interfaces
US20070067798A1 (en) Hover-buttons for user interfaces
KR20120088730A (en) Apparatus and method for grid navigation
WO2006125133A2 (en) Global navigation objects in user interfaces
US9013637B2 (en) Set-top box receiver soft control system and method
KR20130131410A (en) Method and system for providing media recommendations
CN103270482A (en) Method and apparatus for inhibiting user operations when applied to a card or window
US20140130116A1 (en) Symbol gesture controls
US20130127754A1 (en) Display apparatus and control method thereof
EP2329643B1 (en) Systems and methods for graphical control of user interface features provided by a television receiver
WO2012166071A1 (en) Apparatus, systems and methods for optimizing graphical user interfaces based on user selection history
CN101540850A (en) System and method for selecting television programs
US10536662B2 (en) Method for zapping contents and display apparatus for implementing the same
KR101177453B1 (en) User interface method activating a clickable object and apparatus providing user interface method thereof
US20140344682A1 (en) Methods and systems for customizing tactilely distinguishable inputs on a user input interface based on available functions
US20090183118A1 (en) Method and apparatus for displaying input element selection information
KR102303286B1 (en) Terminal device and operating method thereof
US20160349945A1 (en) Display apparatus and method for controlling the same
KR102330475B1 (en) Terminal and operating method thereof

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 11760882

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 11760882

Country of ref document: EP

Kind code of ref document: A1