KR102243819B1 - Terminal and method for adaptive menu navigation based on user behavior using the same - Google Patents

Terminal and method for adaptive menu navigation based on user behavior using the same Download PDF

Info

Publication number
KR102243819B1
KR102243819B1 KR1020180167917A KR20180167917A KR102243819B1 KR 102243819 B1 KR102243819 B1 KR 102243819B1 KR 1020180167917 A KR1020180167917 A KR 1020180167917A KR 20180167917 A KR20180167917 A KR 20180167917A KR 102243819 B1 KR102243819 B1 KR 102243819B1
Authority
KR
South Korea
Prior art keywords
screen
prediction
user
current
candidate
Prior art date
Application number
KR1020180167917A
Other languages
Korean (ko)
Other versions
KR20200078224A (en
Inventor
이문상
김범수
김택희
Original Assignee
주식회사 케이티
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 주식회사 케이티 filed Critical 주식회사 케이티
Priority to KR1020180167917A priority Critical patent/KR102243819B1/en
Publication of KR20200078224A publication Critical patent/KR20200078224A/en
Application granted granted Critical
Publication of KR102243819B1 publication Critical patent/KR102243819B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72469User interfaces specially adapted for cordless or mobile telephones for operating the device by selecting functions from two or more displayed items, e.g. menus or icons
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72403User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M2201/00Electronic components, circuits, software, systems or apparatus used in telephone systems
    • H04M2201/34Microprocessors

Landscapes

  • Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

단말이 사용자가 이용할 다음 화면을 예측하여 제공하는 방법으로서, 실행 중인 응용 프로그램에서 제공하는 현재 화면의 식별 정보를 수집하면, 현재 화면의 식별 정보, 현재 화면으로 이동해 온 이전 화면들에 대한 이동 경로, 그리고 각 화면의 상태 정보를 포함하는 화면 예측 테이블을 토대로, 현재 화면에서 다음 제공될 대상 화면을 예측한다. 예측한 대상 화면으로 이동할 수 있도록, 현재 화면에서 대상 화면으로 이동할 수 있는 객체를 통해 예측 결과를 제공한다.As a method for the terminal to predict and provide the next screen to be used by the user, when the identification information of the current screen provided by the running application is collected, the identification information of the current screen, the movement path to the previous screens moved to the current screen, Then, based on the screen prediction table including the state information of each screen, a target screen to be provided next from the current screen is predicted. In order to move to the predicted target screen, prediction results are provided through objects that can move from the current screen to the target screen.

Description

단말 및 이를 이용한 사용자 행위 기반 적응적 화면 예측 방법{Terminal and method for adaptive menu navigation based on user behavior using the same}Terminal and method for adaptive menu navigation based on user behavior using the same}

본 발명은 단말 및 이를 이용한 사용자 행위 기반 적응적 화면 예측 방법에 관한 것이다.The present invention relates to a terminal and a user behavior-based adaptive screen prediction method using the same.

스마트폰에서 실행되는 앱, 웹 서버에서 제공되는 웹 페이지, 통신사에서 인프라를 관리하는데 사용하는 EMS(Element Management System) 등 다양한 분야에서 실행되는 응용 프로그램 또는 서비스들은 사용자에게 인터페이스 화면을 노출하고, 상기 화면에서 사용자로부터 키보드 입력값, 마우스 클릭, 또는 터치 입력을 수신하여 화면을 전환한다.Applications or services running in various fields such as apps running on smartphones, web pages provided by web servers, and EMS (Element Management System) used to manage infrastructure in telecommunications companies expose interface screens to users, and the screen Switches the screen by receiving a keyboard input value, a mouse click, or a touch input from the user.

각 사용자 화면에는 다수개의 아이콘이나 메뉴가 복잡하게 나열되어 있다. 따라서, 자주 사용해서 익숙해진 화면이 아니라면 사용자는 원하는 기능을 수행할 아이콘이나 메뉴를 찾기 위해 화면을 유심히 관찰해야 하고, 이로 인한 피로감은 사용성을 저해하는 원인이 된다. 특히, 수많은 네트워크 장치들을 통합하여 관리하고 각 네트워크 장치의 복잡한 설정들을 변경하는데 사용되는 EMS처럼, 응용 프로그램에서 제공되는 기능이 많고 복잡도가 높은 경우에는 복잡한 사용자 화면이 네트워크 운용자의 피로도를 증가시켜 자칫 대형 장애를 유발할 수 있는 위험요소를 갖고 있다.In each user screen, a number of icons or menus are intricately arranged. Therefore, unless the screen is used frequently and is not familiar, the user must carefully observe the screen to find an icon or menu to perform a desired function, and the resulting fatigue is a cause that hinders usability. In particular, in the case of an application program with many functions and high complexity, such as EMS, which is used to integrate and manage numerous network devices and change the complex settings of each network device, the complex user screen increases the fatigue of the network operator, causing a large size. It has a risk factor that can cause disability.

따라서, 본 발명은 현재의 사용자 화면에서 이동 가능한 복수의 다음 화면들 중, 사용자에 의해 선택될 가능성이 가장 높은 화면을 미리 예측하여 가시적으로 제공하는 단말 및 이를 이용한 사용자 행위 기반 적응적 화면 예측 방법을 제공한다.Accordingly, the present invention provides a terminal that predicts and visually provides a screen with the highest possibility to be selected by a user among a plurality of next screens that can be moved on the current user screen, and a user behavior-based adaptive screen prediction method using the same. to provide.

상기 본 발명의 기술적 과제를 달성하기 위한 본 발명의 하나의 특징인 사용자 단말이 사용자가 이용할 다음 화면을 예측하여 제공하는 방법으로서, As a method for predicting and providing a next screen to be used by a user by a user terminal, which is one characteristic of the present invention for achieving the technical problem of the present invention,

실행 중인 응용 프로그램에서 제공하는 현재 화면의 식별 정보를 수집하는 단계, 상기 현재 화면의 식별 정보, 상기 현재 화면으로 이동해 온 이전 화면들에 대한 이동 경로, 그리고 각 화면의 상태 정보를 포함하는 화면 예측 테이블을 토대로, 상기 현재 화면에서 다음 제공될 대상 화면을 예측하는 단계, 그리고 상기 예측한 대상 화면으로 이동할 수 있도록, 상기 현재 화면에서 상기 대상 화면으로 이동할 수 있는 객체를 통해 예측 결과를 제공하는 단계를 포함한다.A screen prediction table including the step of collecting identification information of the current screen provided by the running application program, the identification information of the current screen, a movement path for previous screens moved to the current screen, and state information of each screen And predicting a target screen to be provided next from the current screen, and providing a prediction result through an object that can move from the current screen to the target screen to move to the predicted target screen. do.

상기 예측 결과를 제공하는 단계 이후에, 상기 현재 화면에서 이동 가능한 적어도 하나의 후보 화면 중, 상기 대상 화면 및 예측되지 않은 나머지 후보 화면의 상태 값을 갱신하는 단계를 포함할 수 있다.After the step of providing the prediction result, updating state values of the target screen and the remaining unpredicted candidate screens among at least one movable candidate screen on the current screen.

상기 예측 결과를 제공하는 단계는, 상기 대상 화면의 썸네일을 상기 현재 화면의 미리 지정된 위치에 표시하는 단계를 포함할 수 있다.Providing the prediction result may include displaying a thumbnail of the target screen at a predetermined position on the current screen.

상기 예측 결과를 제공하는 단계는, 상기 현재 화면에 포함되어 있으며, 다음 화면으로 이동할 수 있는 적어도 하나의 다음 화면 이동 객체들 중 상기 대상 화면으로 이동할 수 있는 이동 객체에 시각적인 변화를 제공할 수 있다.In the providing of the prediction result, a visual change may be provided to a moving object that can move to the target screen among at least one next screen moving object that is included in the current screen and can move to the next screen. .

상기 예측하는 단계는, 상기 이전 화면들의 식별 정보, 상기 현재 화면의 식별 정보, 상기 화면 예측 테이블의 크기 정보의 해시 값을 구하여, 상기 대상 화면을 예측할 수 있다.In the predicting, the target screen may be predicted by obtaining a hash value of identification information of the previous screens, identification information of the current screen, and size information of the screen prediction table.

상기 예측 결과를 제공하는 단계 이후에, 상기 화면 예측 테이블을 화면 예측 테이블 스토리지에 백업하는 단계, 그리고 상기 응용 프로그램이 재실행되면, 상기 화면 예측 테이블 스토리지에 백업된 상기 학습 예측 테이블을 복원하여, 다음 화면을 예측할 수 있다.After the step of providing the prediction result, backing up the screen prediction table to a screen prediction table storage, and when the application is re-executed, the learning prediction table backed up in the screen prediction table storage is restored, and the next screen Can be predicted.

상기 본 발명의 기술적 과제를 달성하기 위한 본 발명의 또 다른 특징인 사용자 단말이 사용자가 이용할 다음 화면을 예측하여 제공하는 방법으로서,As a method for predicting and providing a next screen to be used by a user by a user terminal, which is another feature of the present invention for achieving the technical problem of the present invention,

실행 중인 응용 프로그램을 통해 제공되는 현재 화면에서 다음에 제공될 수 있는 모든 후보 화면들 각각에 대한 화면 상태 정보를 확인하는 단계, 상기 후보 화면들 각각의 화면 상태 정보의 MSB(Most Significant Bit)가 미리 정의된 정보로 설정되어 있는 적어도 하나의 후보 화면들을 확인하는 단계, 그리고 상기 확인한 적어도 하나의 후보 화면들 중 어느 하나의 후보 화면이 대상 화면으로 결정되면, 상기 후보 화면들 각각에 대한 화면 상태 정보를 갱신하는 단계를 포함한다.Checking screen status information for each of all candidate screens that can be provided next in the current screen provided through the running application program, MSB (Most Significant Bit) of the screen status information of each of the candidate screens is previously Checking at least one candidate screen set as the defined information, and if any one of the checked at least one candidate screen is determined as a target screen, screen state information for each of the candidate screens is provided. And updating.

상기 화면 상태 정보는 2비트의 값으로 표현되며, 상기 미리 정의된 정보는 2비트의 값 중 MSB가 1로 표시되어 있는 후보 화면을 선택하는 것으로 정의될 수 있다. The screen state information is expressed as a value of 2 bits, and the predefined information may be defined as selecting a candidate screen in which the MSB is displayed as 1 among the values of 2 bits.

본 발명에 따르면, 특정 사용자 화면에서 이동 가능한 다음 화면들 중 가장 가능성이 높은 화면을 미리 예측하여 사용자에게 가시적으로 제공하기 때문에, 사용자가 손쉽게 다음 작업 화면으로 전환할 수 있다.According to the present invention, since the screen with the highest probability among the next screens that can be moved on a specific user screen is predicted in advance and provided to the user, the user can easily switch to the next work screen.

또한, 복잡한 화면 구성에서 유발되는 피로감을 제거하고 사용성을 개선할 수 있다.In addition, it is possible to eliminate fatigue caused by complex screen composition and improve usability.

도 1은 일반적인 사용자 화면에 대한 예시도이다.
도 2는 본 발명의 실시예에 따른 단말의 구조도이다.
도 3은 본 발명의 실시예에 따른 적응적으로 화면을 예측하는 방법에 대한 흐름도이다.
도 4는 본 발명의 실시예에 따른 화면간 이동 경로를 나타낸 예시도이다.
도 5는 본 발명의 실시예에 따른 상태 값 갱신에 대한 예시도이다.
도 6는 본 발명의 실시예에 따른 화면 이동 경로를 나타낸 예시도이다.
도 7은 본 발명의 실시예에 따른 화면 전환에 따라 계산된 인덱스의 예시도이다.
1 is an exemplary diagram for a general user screen.
2 is a structural diagram of a terminal according to an embodiment of the present invention.
3 is a flowchart of a method for adaptively predicting a screen according to an embodiment of the present invention.
4 is an exemplary view showing a moving path between screens according to an embodiment of the present invention.
5 is an exemplary diagram for updating a state value according to an embodiment of the present invention.
6 is an exemplary view showing a screen movement path according to an embodiment of the present invention.
7 is an exemplary diagram of an index calculated according to a screen change according to an embodiment of the present invention.

아래에서는 첨부한 도면을 참고로 하여 본 발명의 실시예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings so that those of ordinary skill in the art may easily implement the present invention. However, the present invention may be implemented in various different forms and is not limited to the embodiments described herein. In the drawings, parts irrelevant to the description are omitted in order to clearly describe the present invention, and similar reference numerals are attached to similar parts throughout the specification.

명세서 전체에서, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다. Throughout the specification, when a part "includes" a certain component, it means that other components may be further included rather than excluding other components unless specifically stated to the contrary.

본 명세서에서 단말(terminal)은, 이동국(Mobile Station, MS), 이동 단말(Mobile Terminal, MT), 가입자국(Subscriber Station, SS), 휴대 가입자국(Portable Subscriber Station, PSS), 사용자 장치(User Equipment, UE), 접근 단말(Access Terminal, AT) 등을 지칭할 수도 있고, 이동 단말, 가입자국, 휴대 가입자 국, 사용자 장치 등의 전부 또는 일부의 기능을 포함할 수도 있다.In the present specification, a terminal is a mobile station (MS), a mobile terminal (MT), a subscriber station (SS), a portable subscriber station (PSS), and a user device (User Equipment, UE), an access terminal (AT), and the like, and may include all or part of functions such as a mobile terminal, a subscriber station, a mobile subscriber station, and a user device.

이하, 도면을 참조로 하여 본 발명의 실시예에 따른 사용자 행위 기반 적응적 화면 예측 시스템 및 방법에 대해 상세히 설명한다. 본 발명의 실시예에 대해 설명하기 앞서, 도 1을 참조로 일반적인 사용자 화면 전환에 대해 먼저 설명한다.Hereinafter, a user behavior-based adaptive screen prediction system and method according to an embodiment of the present invention will be described in detail with reference to the drawings. Before describing an embodiment of the present invention, a general user screen switching will be first described with reference to FIG. 1.

도 1은 일반적인 사용자 화면에 대한 예시도이다.1 is an exemplary diagram for a general user screen.

도 1에 도시된 바와 같이, 각 사용자 화면은 다양한 아이콘 및 메뉴 버튼을 포함하여 디스플레이 된다. 그리고, 사용자가 사용자 화면을 통해 디스플레이 되는 아이콘들이나 메뉴 버튼들 중 어느 하나를 선택하면, 스크린에 표시할 다음 사용자 화면이 결정된다. As shown in FIG. 1, each user screen is displayed including various icons and menu buttons. In addition, when the user selects one of icons or menu buttons displayed through the user screen, the next user screen to be displayed on the screen is determined.

각 사용자 화면에는 복수의 아이콘들이나 메뉴들이 복잡하게 나열되어 있다. 따라서, 사용자가 자주 사용하여 익숙한 화면이 아닌 경우라면, 사용자는 원하는 기능을 수행할 아이콘이나 메뉴를 찾기 위하여 화면을 유심히 관찰해야 한다. 이에 따라 화면의 관찰을 통한 피로감이 발생하고, 피로감은 각 사용자 화면의 사용성을 저해하는 원인이 된다. A plurality of icons or menus are complexly arranged on each user screen. Therefore, if the screen is not used by the user frequently and is not familiar, the user must carefully observe the screen to find an icon or menu to perform a desired function. Accordingly, a feeling of fatigue occurs through observation of the screen, and the feeling of fatigue becomes a cause of hindering the usability of each user's screen.

특히, EMS와 같은 시스템은 수많은 네트워크 장치들을 통합하여 관리하고, 각 네트워크 장치의 복잡한 설정들을 변경하는데 사용된다. 응용 프로그램에서 제공되는 기능들이 많고 복잡도가 높은 경우 복잡한 사용자 화면이 제공되기 때문에, 네트워크 운용자의 피로도를 증가시켜 대형 장애를 유발할 수 있는 위험요소를 갖게 된다. In particular, systems such as EMS are used to integrate and manage numerous network devices, and to change complex settings of each network device. If there are many functions provided by the application program and the complexity is high, since a complex user screen is provided, there is a risk factor that may cause a large failure by increasing the fatigue of the network operator.

따라서, 본 발명의 실시예에서는 사용자 화면 전환에 대한 과거 이력 및 패턴을 동적으로 분석하여, 임의의 사용자 화면 다음에 어떤 사용자 화면으로 갈 것인지 미리 예측한다. 그리고 사용자에게 예측된 결과를 가시적으로 제공하여, 사용자가 연관성이 높은 일련의 작업들을 순차적으로 수행하는데 도움을 줄 수 있다. Accordingly, in an embodiment of the present invention, by dynamically analyzing the past history and pattern of the user screen change, it predicts in advance which user screen to go after any user screen. In addition, by providing the predicted result to the user visually, it is possible to help the user to sequentially perform a series of tasks with high relevance.

즉, 운용자가 네트워크 인프라를 관리하기 위해 사용하는 응용 프로그램은 운용자 매뉴얼에 명시되어 있는 일련의 작업순서 및 규칙에 따라 실행된다. 따라서, 일련의 사용자 화면 전환은 운용자 매뉴얼에 따라 수행되는 프로그램의 순차적인 실행 관점으로 이해할 수 있다. 그리고, 프로그램의 실행 이력을 관리함으로써 작업 A 이후에 수행될 작업 B를 예측하여 사용자 화면에 예측된 작업 B의 화면을 표시할 수 있다. That is, the application program used by the operator to manage the network infrastructure is executed according to a series of work order and rules specified in the operator's manual. Therefore, a series of user screen switching can be understood from the viewpoint of sequential execution of programs executed according to the operator's manual. In addition, by managing the execution history of the program, it is possible to predict the task B to be performed after the task A and display the predicted task B screen on the user screen.

이를 위해, 각 작업을 수행하는 사용자 화면에 식별 정보(ID)를 부여하고, ID를 인덱스로 가지는 화면 예측 테이블에 목적 화면 정보를 관리한다. 이를 통해, 특정 패턴의 화면 이동 경로를 가지는 경우에 대해, 현재 화면으로부터 이동할 다음 화면을 예측할 수 있다. To this end, identification information (ID) is assigned to a user screen performing each task, and target screen information is managed in a screen prediction table having an ID as an index. Through this, in the case of having a screen movement path of a specific pattern, the next screen to be moved from the current screen may be predicted.

이와 같이 사용자 행위를 기반으로 하여 적응적으로 다음 화면을 예측하여 제공하는 프로그램이 설치된 단말(100)에 대해 도 2를 참조로 설명한다. 본 발명의 실시예에서는 단말(100)로 지칭하여 설명하나, 서버의 형태가 아닌 클라이언트인 단말에 설치된 프로그램 또는 어플리케이션일 수 있다.In this way, the terminal 100 in which a program that adaptively predicts and provides the next screen based on user behavior is installed will be described with reference to FIG. 2. In the embodiment of the present invention, the description is referred to as the terminal 100, but it may be a program or application installed in a terminal that is a client rather than a server type.

도 2는 본 발명의 실시예에 따른 단말의 구조도이다.2 is a structural diagram of a terminal according to an embodiment of the present invention.

도 2에 도시된 바와 같이, 단말(100)은 인터페이스(110), 프로세서(120), 메모리(130), 그리고 디스플레이(140)를 포함한다. 그리고, 단말(100)은 화면 예측 테이블 스토리지(200)와 연동한다.As shown in FIG. 2, the terminal 100 includes an interface 110, a processor 120, a memory 130, and a display 140. In addition, the terminal 100 interlocks with the screen prediction table storage 200.

사용자가 단말(100)을 이용하여 임의의 응용 프로그램을 실행한 후 사용자 화면을 제공받고, 사용자 화면을 통해 제공되는 화면상의 복수의 아이콘들 또는 메뉴들을 선택하여 임의의 사용자 화면으로 이동하면, 인터페이스(110)는 현재 제공되는 임의의 사용자 화면에 대한 화면 식별 정보를 수집한다. 인터페이스(110)가 화면 식별 정보를 수집하는 방법은 다양한 방법으로 실행할 수 있으므로, 본 발명의 실시예에서는 상세한 설명을 생략한다. 그리고, 본 발명의 실시예에서는 사용자에게 제공되는 모든 사용자 화면들에 각각 식별 정보가 부여되어 있는 것을 예로 하여 설명하며, 식별 정보의 형태를 어느 하나로 한정하지 않는다.When a user executes an application program using the terminal 100, is provided with a user screen, and moves to a user screen by selecting a plurality of icons or menus on the screen provided through the user screen, the interface ( 110) collects screen identification information for an arbitrary user screen currently provided. Since the method of collecting the screen identification information by the interface 110 can be executed in various ways, detailed descriptions are omitted in the embodiment of the present invention. In addition, in the exemplary embodiment of the present invention, identification information is given to all user screens provided to the user as an example, and the type of identification information is not limited to any one.

메모리(130)는 모든 사용자 화면들 각각에 대한 식별 정보들, 그리고 사용자가 사용자 화면을 선택하여 사용자 화면이 변경되면 이동한 사용자 화면의 상태 정보, 사용자가 선택하지 않은 미 선택 사용자 화면의 상태 정보, 미리 설정된 길이의 화면 예측 테이블이 저장되어 있다. 여기서, 사용자 화면이 선택되어 사용자에게 디스플레이 되었는지 여부를 나타내는 정보인 상태 정보는 2비트로 저장, 관리된다.The memory 130 includes identification information for each of all user screens, status information of a user screen that has moved when the user screen is changed by selecting a user screen, status information of an unselected user screen that the user has not selected, A screen prediction table of a preset length is stored. Here, status information, which is information indicating whether a user screen has been selected and displayed to the user, is stored and managed in 2 bits.

또한, 메모리(130)는 사용자가 현재 화면을 확인하기 위해 거쳐 온 과거 화면들의 이동 경로를 저장, 관리한다. 또한, 메모리(130)는 화면 예측 테이블의 인덱스 계산에 사용할 과거 이력 개수와 화면 예측 테이블의 크기 정보를 각각 저장 관리한다. 여기서, 화면 예측 테이블은 화면의 상태 정보를 관리하기 위한 테이블로서, 화면 예측 테이블의 크기나 과거 이력 개수를 어느 하나의 수치로 한정하지 않는다. In addition, the memory 130 stores and manages the moving paths of past screens that the user has gone through to check the current screen. In addition, the memory 130 stores and manages the number of past histories to be used for index calculation of the screen prediction table and size information of the screen prediction table, respectively. Here, the screen prediction table is a table for managing state information of a screen, and does not limit the size of the screen prediction table or the number of past histories to any one value.

화면 예측 테이블에 매핑된 인덱스를 토대로, 단말(100)은 A라는 화면에서 다음으로 제공될 B 화면을 예측할 수 있다. 이에 대해서는 이후 상세히 설명한다. Based on the index mapped to the screen prediction table, the terminal 100 may predict screen B to be provided next from the screen A. This will be described in detail later.

프로세서(120)는 인터페이스(110)로부터 전달되는 화면 식별 정보와 화면 예측 테이블의 상태 정보, 그리고 이동 경로 정보를 토대로 현재 화면에서 이동 가능한 적어도 하나의 후보 화면들을 확인한다. 그리고 확인한 후보 화면들의 상태 정보와 현재 화면으로 이동해 온 이전 화면들에 대해 미리 정해진 경로 개수를 토대로 현재 화면에서 다음에 제공될 대상 화면을 예측한다. 프로세서(120)는 다음 화면을 예측하면, 디스플레이(140)를 통해 사용자가 다음 화면으로 손쉽게 이동할 수 있도록, 화면 디스플레이를 제어한다.The processor 120 checks at least one candidate screen that can be moved on the current screen based on the screen identification information transmitted from the interface 110, the state information of the screen prediction table, and the moving path information. Then, the target screen to be provided next from the current screen is predicted based on the status information of the checked candidate screens and the number of predetermined paths to the previous screens that have moved to the current screen. When the processor 120 predicts the next screen, the processor 120 controls the screen display so that the user can easily move to the next screen through the display 140.

예를 들어, 프로세서(120)는 현재 화면에 존재하는 다음 화면 이동용 객체들(예를 들어, 버튼, 아이콘, 링크 등) 중에서, 대상 화면으로 이동할 수 있는 객체에 깜빡임, 테두리 추가, 객체 확대 등의 시각적인 방법을 통해 화면 예측 결과를 제공한다. 또한, 프로세서(120)는 현재 화면의 특정 위치에 예측된 대상 화면의 썸네일이 표시되도록 제어하여, 사용자가 상기 썸네일을 선택할 경우 대상 화면으로 이동할 수 있도록 제공할 수 있다.For example, the processor 120 may flicker, add a border, or enlarge an object that can move to the target screen among the next screen movement objects (eg, buttons, icons, links, etc.) existing on the current screen. Screen prediction results are provided through a visual method. In addition, the processor 120 may control to display a thumbnail of the predicted target screen at a specific location of the current screen, and provide the user to move to the target screen when the user selects the thumbnail.

이와 동시에, 프로세서(120)는 메모리(130)에 저장되어 있는 화면 예측 테이블에 저장되어 있는 대상 화면과 후보 화면들 각각의 상태 값을 갱신한다. 여기서, 단말(100)이 현재 화면에서 다음 이동할 대상 화면을 예측하기 위해, 프로세서(120)는 현재 화면에서 이동 가능한 복수의 후보 화면들의 화면 상태 값을 확인한다. 그리고, 확인한 후보 화면들의 화면 상태 값들 중 MSB(Most Significant Bit)가 미리 정의된 정보로 설정되어 후보 화면이 있는지 확인한다. 본 발명의 실시예에서는 미리 정의된 정보는 MSB가 1로 설정된 경우를 예로 하여 설명한다.At the same time, the processor 120 updates the state values of each of the target screen and the candidate screens stored in the screen prediction table stored in the memory 130. Here, in order for the terminal 100 to predict a target screen to move from the current screen to the next, the processor 120 checks screen state values of a plurality of candidate screens that can be moved from the current screen. In addition, among the screen state values of the checked candidate screens, the MSB (Most Significant Bit) is set as predefined information, and it is checked whether there is a candidate screen. In the embodiment of the present invention, the predefined information will be described with an example in which the MSB is set to 1.

만약 MSB가 미리 정의된 정보인 1로 설정되어 있는 후보 화면이 한 개 있다고 가정하면, 해당 후보 화면이 대상 화면으로 설정된다. 그러나, 후보 화면이 적어도 두 개 이상 존재한다고 가정하면, 프로세서(120)는 화면 예측 테이블을 토대로 응용 프로그램을 실행한 사용자가 과거 어떠한 경로로 현재 화면에서 대상 화면으로 이동하였는지 판단할 수 있다. If it is assumed that there is one candidate screen in which the MSB is set to 1, which is predefined information, the corresponding candidate screen is set as the target screen. However, assuming that there are at least two candidate screens, the processor 120 may determine which path the user executing the application program has moved from the current screen to the target screen in the past based on the screen prediction table.

즉, 메모리(130)에 임시 저장되어 있는 화면 예측 테이블은 복수의 사용자 또는 동일한 사용자가 응용 프로그램을 실행한 후 화면 이동을 통해 학습된 테이블이다. 따라서, 프로세서(120)는 학습된 화면 예측 테이블을 이전 화면들에 대한 이동 경로로써 판단하고, 복수의 후보 화면 중 해당 사용자가 주로 이용한 화면을 대상 화면으로 설정한다. 프로세서(120)가 학습된 화면 예측 테이블을 이용하여 하나의 대상 화면을 판별하는 방법은 다양한 방법으로 실행될 수 있으므로, 본 발명의 실시예에서는 어느 하나의 판별 방법으로 한정하지 않는다.That is, the screen prediction table temporarily stored in the memory 130 is a table learned through screen movement after a plurality of users or the same user executes an application program. Accordingly, the processor 120 determines the learned screen prediction table as a moving path for previous screens, and sets a screen mainly used by a corresponding user among a plurality of candidate screens as a target screen. A method of determining one target screen by using the learned screen prediction table by the processor 120 may be executed in various ways, and thus the method is not limited to any one discrimination method in the embodiment of the present invention.

화면 예측 테이블 스토리지(200)는 메모리(130)에 임시 저장되어 있는 화면 예측 테이블을 파일 형태로 저장, 관리한다. 여기서 화면 예측 테이블 스토리지(200)에 저장되는 화면 예측 테이블의 파일 형태를 어느 하나로 한정하지 않는다. The screen prediction table storage 200 stores and manages the screen prediction table temporarily stored in the memory 130 in the form of a file. Here, the file format of the screen prediction table stored in the screen prediction table storage 200 is not limited to any one.

화면 예측 테이블 스토리지(200)에 저장된 화면 예측 테이블은, 메모리(130)에서 학습된 화면 예측 테이블에 해당한다. 화면 예측 테이블에 대응하는 응용 프로그램의 실행이 종료되더라도 메모리(130)에서 화면 예측 테이블이 삭제되지 않고, 화면 예측 테이블 스토리지(200)에 백업(backup)된다. The screen prediction table stored in the screen prediction table storage 200 corresponds to the screen prediction table learned in the memory 130. Even when execution of the application program corresponding to the screen prediction table is terminated, the screen prediction table is not deleted from the memory 130 and is backed up to the screen prediction table storage 200.

따라서 향후 동일한 응용 프로그램이 실행되더라도 화면 예측 테이블 스토리지(200)에 백업되어 저장된 화면 예측 테이블을 복원하여, 현재 디스플레이 되는 화면의 이후 화면을 예측하여 사용자에게 제공할 수 있다. 그리고, 화면 예측 테이블 스토리지(200)에 저장된 화면 예측 테이블의 파일을 다른 사용자에게 제공할 경우, 다른 사용자가 해당 화면 예측 테이블을 이용하여 다음 화면을 예측하는 서비스를 이용할 수 있다.Accordingly, even if the same application program is executed in the future, the screen prediction table backed up and stored in the screen prediction table storage 200 may be restored, and a subsequent screen of the currently displayed screen may be predicted and provided to the user. In addition, when the file of the screen prediction table stored in the screen prediction table storage 200 is provided to another user, the other user may use a service for predicting the next screen by using the corresponding screen prediction table.

이러한 단말(100)을 통해 사용자에게 사용자 행위 기반으로 다음 화면을 예측하여 제공하는 방법에 대해 도 3을 참조로 설명한다.A method of predicting and providing the next screen based on user behavior to the user through the terminal 100 will be described with reference to FIG. 3.

도 3은 본 발명의 실시예에 따른 적응적으로 화면을 예측하는 방법에 대한 흐름도이다.3 is a flowchart of a method of adaptively predicting a screen according to an embodiment of the present invention.

도 3에 도시된 바와 같이, 사용자가 임의의 사용자 화면을 선택하여 디스플레이(140)를 통해 제공받고 있다고 가정하면, 단말(100)은 현재 사용자에게 제공되고 있는 현재 화면의 식별 정보를 수집한다(S100). 그리고 수집한 현재 화면의 식별 정보와 미리 정해진 경로 개수, 그리고 메모리(130)에 임시로 저장되어 있는 화면 예측 테이블을 토대로 다음에 사용자에게 제공될 대상 화면을 예측한다(S110). As shown in FIG. 3, assuming that the user selects a user screen and is provided through the display 140, the terminal 100 collects identification information of the current screen that is currently being provided to the user (S100). ). Then, based on the collected identification information of the current screen, a predetermined number of paths, and a screen prediction table temporarily stored in the memory 130, a target screen to be provided to the user next is predicted (S110).

단말(100)은 S110 단계에서 예측한 대상 화면으로 이동할 수 있는 개체가 현재 화면에 있다면, 해당 객체에 시각적 효과를 제공하여 사용자가 용이하게 다음 화면으로 이동할 수 있도록 한다(S120). 본 발명의 실시예에서는 객체에 시각적 효과를 제공하는 것을 예로 하여 설명하나, 다음 화면에 대한 썸네일을 현재 화면의 미리 정해진 위치에 제공하고, 사용자가 썸네일을 선택함으로써 대상 화면으로 이동할 수 있도록 구현할 수도 있다.If the object that can move to the target screen predicted in step S110 is on the current screen, the terminal 100 provides a visual effect to the object so that the user can easily move to the next screen (S120). In the embodiment of the present invention, a visual effect is provided to an object as an example, but a thumbnail for the next screen may be provided at a predetermined position on the current screen, and the user may select a thumbnail to move to the target screen. .

단말(100)은 S120 단계에서 제공된 시각적 효과를 토대로 사용자가 객체를 선택하여 대상 화면으로 이동하면, 현재 화면에서 이동 가능한 모든 화면들의 상태 값을 갱신한다(S130). 즉, 현재 화면을 소스 화면으로, 이동 가능한 모든 화면들을 목적지 화면으로 하여, 소스 화면/목적지 화면의 상태 값이 10이거나 11인 목적지 화면을 대상 화면으로 선택한다. When the user selects an object and moves to the target screen based on the visual effect provided in step S120, the terminal 100 updates state values of all screens that can be moved on the current screen (S130). That is, the current screen is used as the source screen and all movable screens are used as the destination screen, and a destination screen with a status value of 10 or 11 of the source screen/destination screen is selected as the target screen.

그리고, 사용자의 입력에 의해 대상 화면으로 실제로 이동하면, 이하 설명할 도 5에 따라 소스 화면/목적지 화면의 상태값을 11로 갱신한다. 그러나 사용자가 대상 화면으로 이동하지 않으면, 도 5에 따라 소스 화면/목적지 화면의 상태값을 10 또는 00으로 갱신한다. 현재 화면에서 이동 가능한 화면들 중 대상 화면으로 선택되지 않은 화면들에 대해서도 도 5에 따라 상술한 방법으로 소스 화면/목적지 화면의 상태값을 갱신한다.Then, when actually moving to the target screen by the user's input, the state value of the source screen/destination screen is updated to 11 according to FIG. 5 to be described below. However, if the user does not move to the target screen, the state value of the source screen/destination screen is updated to 10 or 00 according to FIG. 5. For screens not selected as the target screen among the screens that can be moved in the current screen, the state values of the source screen/destination screen are updated in the manner described above according to FIG. 5.

상태 값의 갱신 방법을 포함하여 단말(100)이 적응적으로 사용자에게 제공할 화면을 예측하여 제공하는 실시예에 대해 도 4 내지 도 7을 참조로 설명한다. 본 발명의 실시예에서는 설명의 편의를 위하여 사용자에게 제공되는 화면의 수가 총 4개인 경우에 대해 설명하나, 반드시 이와 같이 한정되는 것은 아니다.An embodiment in which the terminal 100 adaptively predicts and provides a screen to be provided to the user, including a method of updating a state value, will be described with reference to FIGS. 4 to 7. In the embodiment of the present invention, for convenience of explanation, a case where the number of screens provided to the user is a total of 4 is described, but the present invention is not limited as such.

도 4는 본 발명의 실시예에 따른 화면간 이동 경로를 나타낸 예시도이다.4 is an exemplary view showing a moving path between screens according to an embodiment of the present invention.

도 4에 도시된 바와 같이, 각 화면에서 이동 가능한 다음 화면이 화살표로 표시되어 있다. 예를 들어, 사용자가 화면 2에서 선택하는 아이콘에 따라, 화면 2에서는 화면 3 또는 화면 4 중 하나로 이동할 수 있다. As shown in FIG. 4, the next screen that can be moved in each screen is indicated by an arrow. For example, according to an icon selected by the user on screen 2, screen 2 may move to one of screen 3 or screen 4.

만약, 이전에 '화면 1 → 화면 2 → 화면 4 → 화면 3 → 화면 1'로 빈번한 화면 이동이 발생하였다고 가정한다. 그러면, 사용자가 화면 1 → 화면 2 → 화면 4라는 화면 이동 경로를 거쳐 화면 3에 도달했을 때, 사용자에게 화면 1로 이동하는 아이콘을 시각적으로 강조해서 보여줄 수 있다. 또는, 화면 내 특정 위치에 화면 1의 썸네일(Thumbnail)을 보여주고 사용자가 상기 썸네일을 선택할 경우 화면 1로 이동하는 아이콘을 선택했을 때와 동일하게 화면 1로 화면을 이동시킬 수 있다. If, in the past, it is assumed that frequent screen movement has occurred to'screen 1 → screen 2 → screen 4 → screen 3 → screen 1'. Then, when the user reaches screen 3 through the screen movement path of screen 1 → screen 2 → screen 4, the icon moving to screen 1 can be visually emphasized to the user. Alternatively, when a thumbnail of screen 1 is displayed at a specific location on the screen and the user selects the thumbnail, the screen may be moved to screen 1 in the same manner as when the icon moving to screen 1 is selected.

또 다른 예로, 사용자가 화면 1 → 화면 3의 화면 이동 경로를 통해 화면 3에 도달했고, 화면 1 → 화면 3 → 화면 4 → 화면 1로 이동한 과거 패턴이 빈번하게 발생하였다면, 화면 4로 이동하는 아이콘을 시각적으로 강조해서 보여주거나, 화면 3 내의 특정 위치에 화면 4의 썸네일을 보여주고, 사용자가 썸네일을 선택할 경우 화면 4로 이동하는 아이콘을 선택했을 때와 동일하게 화면 4로 화면을 이동시킬 수도 있다. As another example, if the user reaches screen 3 through the screen movement path of screen 1 → screen 3, and the past pattern moving to screen 1 → screen 3 → screen 4 → screen 1 occurs frequently, the user moves to screen 4 You can also visually highlight the icon or display the thumbnail of screen 4 at a specific location within screen 3, and if the user selects the thumbnail, the screen can be moved to screen 4 in the same way as when the icon to move to screen 4 was selected. have.

다음은 각 화면의 상태 값을 갱신하는 예에 대해 도 5를 참조로 설명한다.Next, an example of updating the status value of each screen will be described with reference to FIG. 5.

도 5는 본 발명의 실시예에 따른 상태 값 갱신에 대한 예시도이다.5 is an exemplary diagram for updating a state value according to an embodiment of the present invention.

도 5에 도시된 바와 같이, 모든 사용자 화면에는 2비트의 상태 값이 부여되어 있다. 각각의 사용자 화면의 상태 값을 토대로, 단말(100)은 다음 화면으로의 이동 가능 여부를 판단할 수 있다.As shown in FIG. 5, a 2-bit status value is assigned to all user screens. Based on the state value of each user screen, the terminal 100 may determine whether to move to the next screen.

이를 위해, 본 발명의 실시예에서는 95% 이상의 분기 예측(Branch Prediction) 정확도를 보이는 최신 CPU들이 각 분기 명령어의 과거 패턴을 기록하고, 과거 패턴에 기반하여 다음 분기 명령어를 예측하는 2-Bit 상태 다이어그램(State Diagram)을 예로 하여 설명한다. 2-Bit 상태 다이어그램을 활용하여 특정 화면에서 이동 가능한 다음 화면들에 대해 2-Bit 상태 값을 각각 관리함으로써, 특정 화면에서 이동할 수 있는 복수의 후보 화면들 중 어떤 화면이 대상 화면으로 선택될지 예측하는데 활용할 수 있다. To this end, in an embodiment of the present invention, the latest CPUs showing branch prediction accuracy of 95% or more record the past pattern of each branch instruction, and a 2-Bit state diagram that predicts the next branch instruction based on the past pattern. It will be described using (State Diagram) as an example. By using the 2-Bit status diagram to manage the 2-Bit status values for the next screens that can be moved on a specific screen, it is used to predict which screen will be selected as the target screen among a plurality of candidate screens that can be moved on a specific screen. Can be utilized.

예를 들어, 상기 도 4의 화면 2에서 이동 가능한 후보 화면은 화면 3과 화면 4가 된다. 화면 3과 화면 4에 대해 도 5에 도시된 2-Bit의 상태 값이 각각 할당되어 있고, 사용자가 화면 2에서 화면 3 또는 화면 4로 이동하는 패턴이 발생할 때마다 화면 3과 화면 4에 해당하는 상태 값들을 갱신한다. 이후에 사용자가 다시 화면 2에 도달했을 때, 후보 화면인 화면 3과 화면 4에 해당하는 2-Bit의 상태 값 중 11(Strongly Taken) 또는 10(Weakly Taken) 값을 가지는 화면을 대상 화면으로 예측하게 된다. 즉, 화면의 2-Bit 상태 값 중 MSB(Most Significant Bit)가 1인 경우 선택(Taken)으로 예측된다.For example, candidate screens that can be moved in screen 2 of FIG. 4 are screen 3 and screen 4. For screen 3 and screen 4, the status values of 2-Bit shown in Fig. 5 are each assigned, and each time a pattern of the user moving from screen 2 to screen 3 or screen 4 occurs, the corresponding screen 3 and screen 4 Update state values. Later, when the user reaches screen 2 again, the screen with a value of 11 (Strongly Taken) or 10 (Weakly Taken) among the status values of 2-Bit corresponding to screen 3 and screen 4, which are candidate screens, is predicted as the target screen. It is done. That is, if the MSB (Most Significant Bit) of the 2-Bit status value of the screen is 1, it is predicted to be taken.

상기 도 4와 도 5에 도시된 예를 통해 본 발명의 실시예에 따라 화면 이동 시 갱신되는 상태 값과 화면 예측의 예에 대해 도 6을 참조로 설명한다.An example of a state value updated when a screen is moved and a screen prediction according to an exemplary embodiment of the present invention will be described with reference to FIG. 6 through the examples illustrated in FIGS. 4 and 5.

도 6는 본 발명의 실시예에 따른 화면 이동 경로를 나타낸 예시도이다.6 is an exemplary view showing a screen movement path according to an embodiment of the present invention.

도 6의 (a)에 도시된 바와 같이, 사용자가 최초 화면 1에서 시작하여 화면 2 → 화면 4 → 화면 3 → 화면 1 → 화면 2 → 화면 4 → 화면 3 → 화면 1의 순서로 이동한다고 가정한다. 각각의 화면의 초기 상태 값은 00으로 주어진다고 가정한다. As shown in (a) of FIG. 6, it is assumed that the user starts from the first screen 1 and moves in the order of screen 2 → screen 4 → screen 3 → screen 1 → screen 2 → screen 4 → screen 3 → screen 1 . It is assumed that the initial state value of each screen is given as 00.

도 6의 (b)에 도시된 바와 같이 사용자가 화면 1에서 화면 2로 이동하면, 단말(100)은 화면 예측 테이블에 화면 1 → 화면 2 이동 이력을 상기 도 5에 언급한 방법에 따라, 상태 값을 00에서 01로 갱신한다. 즉, 소스 화면인 화면 1(src(1))에서 목적지 화면인 화면 2(dst(2))로 이동할 경우, 화면 예측 테이블[src(1), dst(2)]의 상태 값을 최초 00에서 01로 갱신한다.As shown in (b) of FIG. 6, when the user moves from screen 1 to screen 2, the terminal 100 displays the screen 1 → screen 2 movement history in the screen prediction table according to the method mentioned in FIG. Update the value from 00 to 01. That is, when moving from the source screen, screen 1 (src(1)) to the destination screen, screen 2 (dst(2)), the state value of the screen prediction table [src(1), dst(2)] is changed from the first 00. It is updated to 01.

여기서, 사용자는 화면 1에서 화면 3으로도 이동할 수 있으나, 실제 화면 2로 이동하였기 때문에, 화면 예측 테이블의 [src(1), dst(3)]에 해당하는 상태 값은 도 5에 의해 00에서 00으로 변경된다. 따라서 최초 상태 값인 00을 유지하게 된다.Here, the user can also move from screen 1 to screen 3, but since the user has moved to the actual screen 2, the state values corresponding to [src(1), dst(3)] of the screen prediction table are at 00 as shown in FIG. It is changed to 00. Therefore, the initial state value of 00 is maintained.

그리고 도 6의 (c)에 도시된 바와 같이, 사용자가 화면 2에서 화면 4로 이동할 경우, 단말(100)은 화면 예측 테이블에 화면 2 → 화면 4 이동 이력을 반영하기 위하여 화면 예측 테이블 [src(2), dst(4)]의 상태 값을 00에서 01로 갱신한다. 이와 마찬가지로 도 6의 (d)에 도시된 바와 같이 사용자가 화면 4에서 화면 3으로 이동할 경우, 단말(100)은 화면 예측 테이블 [src(4), dst(3)]의 상태 값을 00에서 01로 갱신한다.And as shown in (c) of FIG. 6, when the user moves from screen 2 to screen 4, the terminal 100 displays the screen prediction table [src( 2), dst(4)] is updated from 00 to 01. Similarly, when the user moves from screen 4 to screen 3 as shown in (d) of FIG. 6, the terminal 100 changes the state value of the screen prediction table [src(4), dst(3)] from 00 to 01. Update to.

또한, 도 6의 (e)에 도시된 바와 같이, 사용자가 화면 3에서 다시 화면 1로 이동하였기 때문에, 화면 예측 테이블 [src(3), dst(1)]의 상태 값도 00에서 01로 갱신된다. 이처럼 최초 모든 화면 예측 테이블의 상태 값이 00인 상황에서 화면 1에서 화면 2, 화면 4, 화면 3을 거쳐 다시 화면 1로 이동할 경우 도 6의 (e)에 도시된 바와 같이 상태 값이 갱신된다.In addition, as shown in (e) of FIG. 6, since the user moves from screen 3 to screen 1 again, the state values of the screen prediction tables [src(3), dst(1)] are also updated from 00 to 01. do. As described above, in a situation where the state values of all the screen prediction tables are 00, when moving from screen 1 to screen 2, screen 4, and screen 3 again to screen 1, the state values are updated as shown in (e) of FIG. 6.

본 발명의 실시예에서는 해당 화면 이동을 한 번 더 수행하는 것을 예로 하여 설명하고 있으므로, 도 6의 (f)에 도시된 바와 같이 최종 화면 예측 테이블이 갱신된다. 즉, 상태 값이 01인 경우 선택 가능 상태 값은 도 5에 도시된 바와 같이 11이 되기 때문에, [src(1), dst(2)], [src(2), dst(4)], [src(4), dst(3)], 그리고 [src(3), dst(1)]의 상태 값이 모두 11로 갱신되어 있음을 알 수 있다.In the embodiment of the present invention, since the corresponding screen movement is performed once more as an example, the final screen prediction table is updated as shown in FIG. 6F. That is, when the state value is 01, the selectable state value becomes 11 as shown in FIG. 5, so [src(1), dst(2)], [src(2), dst(4)], [ It can be seen that the state values of src(4), dst(3)], and [src(3), dst(1)] are all updated to 11.

이상에서 설명한 화면 이동 경로인 '화면 1 → 화면 2 → 화면 4 → 화면 3 → 화면 1 → 화면 2 → 화면 4 → 화면 3 → 화면1'을 지난 이후에 도 6의 (g)와 같이 '화면 1 → 화면 3 → 화면 4'로 이동이 발생하였다고 가정한다. 그러면, 도 6의 (a) 내지 (f)의 사용자 패턴으로 학습된 화면 예측 테이블이 도 6의 (g)와 같이 오염이 발생할 수 있다. After passing through the screen movement path described above,'Screen 1 → Screen 2 → Screen 4 → Screen 3 → Screen 1 → Screen 2 → Screen 4 → Screen 3 → Screen 1', as shown in Fig. 6(g),'Screen 1 → It is assumed that a shift to screen 3 → screen 4'has occurred. Then, the screen prediction table learned with the user pattern of FIGS. 6A to 6F may be contaminated as shown in FIG. 6G.

즉, 화면 3에서 이동할 다음 화면을 예측하는 경우를 예로 들면, 화면 4를 경유하여 화면 3에 도달한 후 화면 1로 이동하는 경우와, 화면 1을 경유하여 화면 3에 도달한 후 화면 4로 이동하는 경우가 혼재된다. 따라서, 화면 3에서 이동할 다음 화면을 예측하는 상태 값이 오염되고, 다음 화면을 정확하게 예측하는데 방해가 되는 간섭 현상이 발생한다. In other words, when predicting the next screen to move on screen 3, for example, moving to screen 1 after reaching screen 3 via screen 4, and moving to screen 4 after reaching screen 3 via screen 1 There are mixed cases. Accordingly, the state value predicting the next screen to be moved in screen 3 is contaminated, and an interference phenomenon that interferes with accurately predicting the next screen occurs.

이러한 간섭 현상을 제거하고 특정 화면에서 이동 가능한 다음 화면을 예측할 때, 특정 화면에 도달할 때까지 경유해 온 과거 화면들을 함께 반영함으로써 보다 정확한 다음 화면 예측이 가능하다. 예를 들어, 현재 화면 3에서 이동할 다음 화면을 예측할 때, 현재 화면에 도달하기 바로 직전 화면이 화면 1이었다면 화면 4로 예측한다. 반면 바로 직전 화면이 화면 4였다면, 화면 1로 예측함으로써 다음 화면 예측을 보다 정확하게 수행할 수 있다. When this interference phenomenon is eliminated and the next screen that can be moved from a specific screen is predicted, the past screens that have passed through until reaching the specific screen are reflected together, so that a more accurate prediction of the next screen is possible. For example, when predicting the next screen to be moved from the current screen 3, if the screen immediately before reaching the current screen was screen 1, it is predicted as screen 4. On the other hand, if the immediately preceding screen was screen 4, prediction of the next screen can be performed more accurately by predicting with screen 1.

즉, 각 화면의 상태 값을 관리하는 화면 예측 테이블에 대한 인덱스를 현재 화면인 소스 화면(src)뿐만 아니라 최근에 거쳐온 화면들도 함께 포함시켜 간섭 현상을 제거할 수 있다. That is, the interference phenomenon may be eliminated by including not only the source screen (src), which is the current screen, but also the recently passed screens, as well as the index for the screen prediction table that manages the state values of each screen.

만약, Hz → … → Hm → … → H2 → H1 → Pi 와 같은 경로를 거쳐 현재 화면 Pi에 도달한 경우, 최근 경로 m개를 반영하여 Hm → … → H2 → H1의 상태 값을 화면 예측 테이블 인덱스에 활용할 수 있다. 예를 들어, 상태 값을 관리하는 테이블 크기가 N이라고 가정할 경우, Hash(Hm,…, H2, H1, Pi) % N으로 화면 예측 테이블의 인덱스를 구할 수 있다. 이에 대해 도 7을 참조로 설명한다.If, H z →… → H m →… → H 2 → H 1 → When reaching the current screen Pi through the same path as P i , H m →… reflecting m recent paths. → H 2The state value of H 1 can be used for the prediction table index. For example, assuming that the size of the table managing the state value is N, the index of the picture prediction table can be obtained with Hash(H m ,..., H 2 , H 1 , P i)% N. This will be described with reference to FIG. 7.

도 7은 본 발명의 실시예에 따른 화면 전환에 따라 계산된 인덱스의 예시도이다.7 is an exemplary diagram of an index calculated according to a screen change according to an embodiment of the present invention.

'화면 1 → 화면 2 → 화면 4 → 화면 3 → 화면 1 → 화면 2 → 화면 4 → 화면 3 → 화면 1 → 화면 3 → 화면 4 → 화면 1 → 화면 3'과 같은 화면 전환이 발생하였다고 가정한다. 그리고, 도 7의 (a)에 도시된 바와 같이, 순차적인 화면 이동 경로와 현재 화면의 ID를 접합(Concatenation)한 해시 함수(Hash Function)를 사용하여, 화면 예측 테이블의 인덱스 계산에 사용할 과거 이력의 개수(m)와 미리 정의되어 있는 화면 예측 테이블의 크기(N)을 각각 m=1과 N=16으로 가정한다. It is assumed that a screen change such as'Screen 1 → Screen 2 → Screen 4 → Screen 3 → Screen 1 → Screen 2 → Screen 4 → Screen 3 → Screen 1 → Screen 3 → Screen 4 → Screen 1 → Screen 3'occurred. And, as shown in (a) of Fig. 7, using a hash function that concatenates the sequential screen movement path and the ID of the current screen, the past history to be used for the index calculation of the screen prediction table It is assumed that the number (m) of and the size (N) of a predefined screen prediction table are m = 1 and N = 16, respectively.

m과 N 값은 화면 예측을 적용할 응용 프로그램 종류에 따라 다양한 값으로 설정하여 사용할 수 있다. 또한, 화면 예측 테이블의 인덱스 계산에 사용되는 해시 함수는 접합으로 한정하는 것이 않고, 배타적 논리합(XOR), 메시지 다이제스트(MD5) 등 다양한 해시 기법을 적용할 수 있다. The m and N values can be used by setting various values according to the type of application to which the screen prediction is applied. In addition, the hash function used to calculate the index of the picture prediction table is not limited to junctions, and various hash techniques such as exclusive OR (XOR) and message digest (MD5) can be applied.

도 7의 (b)에 도시된 바와 같이, 화면 4를 경유하여 화면 3에 도달한 경우에는 화면 1을 다음 화면으로 예측한다. 그리고 화면 1을 경유하여 화면 3에 도달한 경우에는, 화면 4를 다음 화면으로 예측할 수 있다. 따라서, 간섭 현상이 제거되어 보다 정확한 다음 화면을 예측할 수 있다. As shown in (b) of FIG. 7, when screen 3 is reached via screen 4, screen 1 is predicted as the next screen. In addition, when the screen 3 is reached via screen 1, screen 4 may be predicted as the next screen. Accordingly, the interference phenomenon is eliminated, and a more accurate next screen can be predicted.

현재 화면에 존재하는 다음 화면 이동용 객체들(예를 들어, 버튼, 아이콘, 링크 등) 중에서 화면 예측 테이블을 참조하여 예측된 화면과 목적 화면이 일치하는 객체는, 깜빡임, 테두리 추가, 객체 확대 등의 시각적인 방법으로 사용자에게 예측 결과를 알릴 수 있다. 또한, 현재 화면의 특정 위치에 예측된 목적 화면 썸네일을 표시하고, 사용자가 상기 썸네일을 선택할 경우 상기 목적 화면으로 이동할 수 있다.Among the objects for moving the next screen (for example, buttons, icons, links, etc.) existing on the current screen, objects whose predicted screen and target screen match with reference to the screen prediction table are: The prediction result can be communicated to the user in a visual way. In addition, the predicted target screen thumbnail may be displayed at a specific location of the current screen, and when the user selects the thumbnail, the target screen may be moved to the target screen.

또한, 본 발명의 실시예에서는 단말(100)이 학습된 다음 화면 예측 테이블은 화면 예측 테이블 스토리지(200)에 파일로 저장할 수 있다. 저장된 파일은 추후 응용 프로그램이 재실행될 때 단말(100)으로 복원되어, 이미 학습된 예측 테이블에 기반하여 다음 화면을 예측하는데 활용될 수 있다. In addition, in an embodiment of the present invention, the screen prediction table after the terminal 100 is trained may be stored as a file in the screen prediction table storage 200. The stored file may be restored to the terminal 100 when the application program is re-executed later, and may be used to predict the next screen based on the already learned prediction table.

이를 통해, 특정 사용자는 자신이 자주 사용하는 패턴을 일일이 기억할 필요 없이 다음에 수행할 작업을 미리 알려주는 보조 수단으로 활용할 수 있다. 또한, 복잡한 네트워크 운용을 수행하는 응용 프로그램의 경우, 네트워크 운용 전문가가 수행한 운용 이력으로 학습된 화면 예측 테이블을 초보 운용자에게 전달하고, 초보 운용자가 네트워크 운용을 위한 응용 프로그램을 실행할 때 전달받은 화면 예측 테이블을 복원함으로써, 네트워크 운용 전문가의 실시간 가이드라인처럼 활용할 수 있다. Through this, a specific user can use it as an auxiliary means for notifying the next task to be performed in advance without having to remember the patterns that they frequently use. In addition, in the case of an application program that performs complex network operation, the screen prediction table learned from the operation history performed by the network operation expert is transmitted to the novice operator, and the screen prediction received when the novice operator runs the application program for network operation. By restoring the table, it can be used as a real-time guideline for network operation experts.

이상에서 본 발명의 실시예에 대하여 상세하게 설명하였지만 본 발명의 권리범위는 이에 한정되는 것은 아니고 다음의 청구범위에서 정의하고 있는 본 발명의 기본 개념을 이용한 당업자의 여러 변형 및 개량 형태 또한 본 발명의 권리범위에 속하는 것이다.Although the embodiments of the present invention have been described in detail above, the scope of the present invention is not limited thereto, and various modifications and improvements by those skilled in the art using the basic concept of the present invention defined in the following claims are also provided. It belongs to the scope of rights.

Claims (10)

사용자 단말이 사용자가 이용할 다음 화면을 예측하여 제공하는 방법으로서,
실행 중인 응용 프로그램에서 제공하는 현재 화면에 부여된 식별 정보를 수집하는 단계,
수집한 상기 현재 화면의 식별 정보, 상기 현재 화면으로 이동해 온 복수의 이전 화면들에 대한 이동 경로, 그리고 상기 현재 화면과 복수의 이전 화면들의 선택 여부에 따라 갱신된 상태 정보를 포함하는 화면 예측 테이블을 토대로, 상기 현재 화면에서 다음 제공될 대상 화면을 예측하는 단계, 그리고
상기 예측한 대상 화면으로 이동할 수 있도록, 상기 현재 화면에서 상기 대상 화면으로 이동할 수 있는 객체를 통해 예측 결과를 제공하는 단계
를 포함하는 화면 예측 방법.
As a method for the user terminal to predict and provide the next screen to be used by the user,
Collecting identification information given to the current screen provided by the running application,
A screen prediction table including the collected identification information of the current screen, a moving path for a plurality of previous screens moved to the current screen, and status information updated according to whether the current screen and the plurality of previous screens are selected. Based on the current screen, predicting a target screen to be provided next,
Providing a prediction result through an object that can move from the current screen to the target screen so as to move to the predicted target screen
Screen prediction method comprising a.
제1항에 있어서,
상기 예측 결과를 제공하는 단계 이후에,
상기 현재 화면에서 이동 가능한 적어도 하나의 후보 화면 중, 상기 대상 화면 및 예측되지 않은 나머지 후보 화면의 상태 값을 갱신하는 단계
를 더 포함하는 화면 예측 방법.
The method of claim 1,
After the step of providing the prediction result,
Updating state values of the target screen and the remaining unpredicted candidate screens among at least one movable candidate screen on the current screen
Screen prediction method further comprising a.
제2항에 있어서,
상기 예측 결과를 제공하는 단계는,
상기 대상 화면의 썸네일을 상기 현재 화면의 미리 지정된 위치에 표시하는 단계
를 포함하는 화면 예측 방법.
The method of claim 2,
Providing the prediction result,
Displaying the thumbnail of the target screen at a predetermined location of the current screen
Screen prediction method comprising a.
제3항에 있어서,
상기 예측 결과를 제공하는 단계는,
상기 현재 화면에 포함되어 있으며, 다음 화면으로 이동할 수 있는 적어도 하나의 다음 화면 이동 객체들 중 상기 대상 화면으로 이동할 수 있는 이동 객체에 시각적인 변화를 제공하는 화면 예측 방법.
The method of claim 3,
Providing the prediction result,
A screen prediction method for providing a visual change to a moving object that can move to the target screen among at least one next screen moving object that is included in the current screen and can move to the next screen.
제1항에 있어서,
상기 예측하는 단계는,
상기 이전 화면들의 식별 정보, 상기 현재 화면의 식별 정보, 상기 화면 예측 테이블의 크기 정보의 해시 값을 구하여, 상기 대상 화면을 예측하는 화면 예측 방법.
The method of claim 1,
The predicting step,
A screen prediction method for predicting the target screen by obtaining a hash value of identification information of the previous screens, identification information of the current screen, and size information of the screen prediction table.
제5항에 있어서,
상기 예측 결과를 제공하는 단계 이후에,
상기 화면 예측 테이블을 화면 예측 테이블 스토리지에 백업하는 단계, 그리고
상기 응용 프로그램이 재실행되면, 상기 화면 예측 테이블 스토리지에 백업된 상기 화면 예측 테이블을 복원하여, 다음 화면을 예측하는 단계
를 더 포함하는 화면 예측 방법.
The method of claim 5,
After the step of providing the prediction result,
Backing up the screen prediction table to a screen prediction table storage, and
When the application program is re-executed, restoring the screen prediction table backed up in the screen prediction table storage to predict the next screen
Screen prediction method further comprising a.
사용자 단말이 사용자가 이용할 다음 화면을 예측하여 제공하는 방법으로서,
실행 중인 응용 프로그램을 통해 제공되는 현재 화면에서 다음에 제공될 수 있는 모든 후보 화면들 각각에 대해 복수의 비트들로 구성된 화면 상태 정보를 확인하는 단계,
각 후보 화면의 화면 상태 정보에서 상기 복수의 비트들 중 MSB(Most Significant Bit)가 미리 정의된 값으로 설정되어 있는 적어도 하나의 후보 화면들을 확인하는 단계, 그리고
상기 확인한 적어도 하나의 후보 화면들 중 어느 하나의 후보 화면이 대상 화면으로 결정되면, 상기 후보 화면들 각각에 대한 화면 상태 정보를 갱신하는 단계
를 더 포함하는 화면 예측 방법.
As a method for the user terminal to predict and provide the next screen to be used by the user,
Checking screen status information composed of a plurality of bits for each of all candidate screens that may be provided next in the current screen provided through the running application program,
Checking at least one candidate screen in which the MSB (Most Significant Bit) among the plurality of bits is set to a predefined value in the screen state information of each candidate screen, and
If any one of the checked at least one candidate screen is determined as a target screen, updating screen state information for each of the candidate screens
Screen prediction method further comprising a.
제7항에 있어서,
상기 후보 화면들을 확인하는 단계는,
상기 MSB가 1로 표시되어 있는 후보 화면을 선택하는 것으로 정의되어 있는 화면 예측 방법.
The method of claim 7,
The step of checking the candidate screens,
A picture prediction method defined as selecting a candidate picture in which the MSB is indicated as 1.
제8항에 있어서,
상기 화면 상태 정보는 00, 01, 10, 11 중 어느 하나의 값으로 표현되고,
화면 상태 정보를 갱신하는 단계는,
복수의 후보 화면들 중 선택된 대상 화면의 화면 상태 정보가 11 또는 10 중 어느 하나의 값이면, 11로 화면 상태 값이 갱신되고,
복수의 후보 화면들 중 선택되지 않은 화면의 화면 상태 정보가 11이면 10으로 화면 상태 값이 갱신되며,
상기 선택되지 않은 화면의 화면 상태 정보가 00, 01, 또는 10 중 어느 하나이면, 상기 MSB가 0인 화면 상태 값 중 어느 하나로 갱신되는 화면 예측 방법.
The method of claim 8,
The screen status information is expressed as any one of 00, 01, 10, 11,
The step of updating the screen status information,
If the screen status information of the selected target screen among the plurality of candidate screens is any one of 11 or 10, the screen status value is updated to 11,
If the screen status information of the screen that is not selected among the plurality of candidate screens is 11, the screen status value is updated to 10,
If the screen state information of the unselected screen is any one of 00, 01, or 10, the screen prediction method is updated to any one of the screen state values in which the MSB is 0.
제9항에 있어서,
상기 화면 상태 정보를 갱신하는 단계 이후에,
상기 화면 상태 정보를 포함하는 화면 예측 테이블을 화면 예측 테이블 스토리지에 백업하는 단계, 그리고
상기 응용 프로그램이 재실행되면, 상기 화면 예측 테이블 스토리지에 백업된 상기 화면 예측 테이블을 복원하여, 다음 화면을 예측하는 단계
를 더 포함하는 화면 예측 방법.
The method of claim 9,
After the step of updating the screen state information,
Backing up a screen prediction table including the screen state information to a screen prediction table storage, and
When the application program is re-executed, restoring the screen prediction table backed up in the screen prediction table storage to predict the next screen
Screen prediction method further comprising a.
KR1020180167917A 2018-12-21 2018-12-21 Terminal and method for adaptive menu navigation based on user behavior using the same KR102243819B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180167917A KR102243819B1 (en) 2018-12-21 2018-12-21 Terminal and method for adaptive menu navigation based on user behavior using the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180167917A KR102243819B1 (en) 2018-12-21 2018-12-21 Terminal and method for adaptive menu navigation based on user behavior using the same

Publications (2)

Publication Number Publication Date
KR20200078224A KR20200078224A (en) 2020-07-01
KR102243819B1 true KR102243819B1 (en) 2021-04-22

Family

ID=71602128

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180167917A KR102243819B1 (en) 2018-12-21 2018-12-21 Terminal and method for adaptive menu navigation based on user behavior using the same

Country Status (1)

Country Link
KR (1) KR102243819B1 (en)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0239259A (en) * 1988-07-28 1990-02-08 Nec Corp High-speed display system for screen
KR101100113B1 (en) * 2009-10-12 2011-12-29 이용석 The connection display system for a continuation business transaction
KR102151457B1 (en) * 2014-08-25 2020-09-03 삼성전자 주식회사 Method and apparatus for reducing page load time in a communication system
KR101975101B1 (en) * 2017-05-24 2019-05-03 연세대학교 산학협력단 Prefetching apparatus and method using learning, and medium thereof

Also Published As

Publication number Publication date
KR20200078224A (en) 2020-07-01

Similar Documents

Publication Publication Date Title
CN108139861B (en) Computer-readable medium, electronic device, system, and control method for predicting touch object based on operation history
EP2774053A1 (en) User interface for translation webpage
WO2003032139A3 (en) A method and device for modifying a pre-existing graphical user interface
JP6094593B2 (en) Information system construction device, information system construction method, and information system construction program
JPWO2010067618A1 (en) Operation support method, operation support system, operation support apparatus, and operation support program
CN114972594B (en) Data processing method, device, equipment and medium for meta universe
US8516097B2 (en) Server managing apparatus and server managing method
CN109656384A (en) Character string input method and device
CN111832648A (en) Key point marking method and device, electronic equipment and storage medium
CN104793844B (en) Plug-in achieving method and device based on host program on mobile terminal
CA2884010A1 (en) Computer installation for the management of a set of files, method, program and computer medium associated therewith
KR102243819B1 (en) Terminal and method for adaptive menu navigation based on user behavior using the same
KR100308634B1 (en) Component mounting apparatus and method
KR20160148771A (en) Files batch processing method and digital device executing a program complying with the method
KR101490984B1 (en) Providing method for event information, Integrated control system performing the same, Computer program for the same, and Recording medium storing computer program thereof
CN116719456A (en) Icon style switching method and device, electronic equipment and storage medium
CN105677331A (en) Task execution method and device
CN109885250A (en) A kind of interface alternation method and apparatus
EP3762821B1 (en) Neural network systems and methods for application navigation
US20210042007A1 (en) Navigable tooltip
CN106951327B (en) The detection method and mobile terminal of a kind of application program to systematic influence
EP3200057B1 (en) Short cut links in a graphical user interface
CN113360666A (en) Data dictionary management method and device, electronic equipment and storage medium
JP2009169628A (en) Construction device, construction method and program for monitoring control system
JP7014595B2 (en) Monitoring device, monitoring method, and monitoring program

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant