A graphical user interface interaction optimization method and system
Patent Information
- Application Number
- CN202611096730.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2026-07-23
- Publication Date
- 2026-08-21
AI Technical Summary
此类EDA工具面向的用户从首次接触的新手工程师到数万小时经验的资深工程师并存,而工具出厂布局通常采用静态固定配置或基于全局使用频率的统计排序,难以同时兼顾设计阶段的语义流向与不同经验用户的操作习惯,布局优化如何在语义正确性、行为贴合度、多经验用户自适应三者间取得平衡,成为芯片设计类专业软件人机交互的一个技术议题
[0021]基于以上方面,本申请实施例通过构建包含有向语义约束边的第一任务依赖图和行为转移图,并投影至交互原子单元层面形成交互语义拓扑图,结合融合权重与协同增强系数计算综合关联强度,通过拓扑约束的交互流优化器求解布局配置并基于有向语义约束边确定各交互原子单元的可见性,从而兼顾设计阶段的语义流向与用户实际行为习惯,克服了语义与行为割裂的问题;同时通过融合权重针对每一用户自适应学习,基于历史交互数据计算语义遵循度与探索度并动态更新融合权重,且在切换应用场景时重置为相应初始值,使得不同经验用户的布局分别偏向语义引导或行为快捷,实现了跨经验用户的个性化适配,解决了融合权重全局固定的缺陷;此外,通过基于有向语义约束边的权重结合可见性决策确定各交互原子单元的可见性,使得严格依赖对应的前驱在相应阶段必须可见,避免了布局出现反设计阶段先后的反模式,弥补了缺乏语义硬约束的不足。
Smart Images

Figure CN122614366A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of EDA tool optimization, and more specifically to a graphical user interface interaction optimization method and system. Background Technology
[0002] As integrated circuits evolve in scale, chip design increasingly relies on EDA (Electronic Design Automation) tools to complete multi-stage processes from netlist import, constraint setting, placement planning to routing. A single session can often contain hundreds of interactive atomic units, such as panels, menus, shortcuts, and dialog boxes, with directional semantic dependencies between these units determined by the design flow, such as the sequential order of constraint setting and placement planning. These EDA tools cater to users ranging from novice engineers with their first experience to seasoned engineers with tens of thousands of hours of experience. However, factory-installed placements typically use static, fixed configurations or statistical sorting based on global usage frequency, making it difficult to simultaneously consider the semantic flow of the design phase and the operating habits of users with varying experience levels. Achieving a balance between semantic correctness, behavioral fit, and adaptability to multiple user experiences in placement optimization has become a key technical issue in the human-computer interaction of chip design software. Summary of the Invention
[0003] The technical problem to be solved by the present invention is to provide a graphical user interface interaction optimization method and system to achieve a balance among semantic correctness, behavioral fit, and adaptation to multiple experienced users.
[0004] First, the present invention provides a graphical user interface interaction optimization method, wherein for a session of target software, the method includes:
[0005] With tasks as vertices, construct a first task dependency graph containing directed semantically constrained edges. The directed semantically constrained edges represent the dependencies that task i should be completed before task j, and the weights of the directed semantically constrained edges are labeled based on the dependency strength.
[0006] Using the interactive atomic units of the graphical user interface as vertices, a second task dependency graph is constructed, and the directed semantic constraint edges and weights are projected onto the second task dependency graph based on the correspondence between tasks and interactive atomic units.
[0007] Construct a behavior transition graph that shares vertices with the second task dependency graph, with edges being undirected weighted transition edges, and weights obtained based on the transition frequency and time decay of user interactions;
[0008] Construct an interactive semantic topology graph that shares vertices with the second task dependency graph and the behavior transition graph, and contains directed semantic constraint edges and undirected weighted transition edges;
[0009] For any pair of vertices in the interactive semantic topology graph, the comprehensive association strength is calculated by combining the linear combination of the weights of the directed semantic constraint edges and the weights of the undirected weighted transition edges with the interaction terms, along with the fusion weights and the preset collaborative enhancement coefficients. The fusion weights are adaptively learned for each user.
[0010] Based on the interactive semantic topology graph, the optimized layout configuration of the graphical user interface is solved by a topology-constrained interactive flow optimizer and applied to the target software. The topology-constrained interactive flow optimizer performs the following operations in sequence:
[0011] In the first stage, the vertex set is hierarchically clustered to obtain clusters, using the reciprocal of the comprehensive association strength as the distance metric.
[0012] Phase Two: Assign each cluster to the available area of the screen;
[0013] Phase 3 involves sorting the interactive atomic units within the cluster;
[0014] Phase 4: Based on the weights of the directed semantic constraint edges corresponding to the current design phase, the visibility of each interactive atomic unit is determined in conjunction with visibility decisions.
[0015] Second, the present invention also provides a graphical user interface interaction optimization system, comprising:
[0016] The task dependency graph module constructs a first task dependency graph with tasks as vertices, containing directed semantic constraint edges. The directed semantic constraint edges represent the dependency relationship that task i should be completed before task j, and the weights of the directed semantic constraint edges are labeled based on the dependency strength. The second task dependency graph is constructed with interactive atomic units of the graphical user interface as vertices, and the directed semantic constraint edges and weights are projected onto the second task dependency graph based on the correspondence between tasks and interactive atomic units.
[0017] The behavior transition graph module constructs a behavior transition graph that shares vertices with the second task dependency graph. The edges are undirected weighted transition edges, and the weights are obtained based on the transition frequency and time decay of user interactions.
[0018] The interactive semantic topology graph module constructs an interactive semantic topology graph that shares vertices with the second task dependency graph and the behavior transition graph, and contains directed semantic constraint edges and undirected weighted transition edges.
[0019] The association strength calculation module calculates the comprehensive association strength for any pair of vertices in the interaction semantic topology graph based on the linear combination of the weights of the directed semantic constraint edges and the weights of the undirected weighted transition edges, the interaction terms, the fusion weights, and the preset collaborative enhancement coefficients. The fusion weights are adaptively learned for each user.
[0020] The layout solving module, based on the interactive semantic topology graph, solves the optimized layout configuration of the graphical user interface through the interactive flow optimizer with topological constraints, and applies it to the target software.
[0021] Based on the above, this application embodiment constructs a first task dependency graph and a behavior transition graph containing directed semantic constraint edges, and projects them onto the interaction atomic unit level to form an interaction semantic topology graph. It calculates the comprehensive association strength by combining fusion weights and collaborative enhancement coefficients, solves the layout configuration through a topology-constrained interaction flow optimizer, and determines the visibility of each interaction atomic unit based on directed semantic constraint edges. This balances the semantic flow during the design phase with users' actual behavioral habits, overcoming the problem of semantic and behavioral separation. Simultaneously, it adaptively learns for each user through fusion weights, calculates semantic compliance and exploration based on historical interaction data, and dynamically updates the fusion weights. When switching application scenarios, the weights are reset to the corresponding initial values, allowing layouts for users with different experience levels to be biased towards semantic guidance or behavioral shortcuts, achieving personalized adaptation across experience levels and solving the defect of globally fixed fusion weights. Furthermore, by determining the visibility of each interaction atomic unit based on the weights of directed semantic constraint edges combined with visibility decisions, it ensures that strictly dependent predecessors must be visible at the corresponding stage, avoiding anti-patterns in the layout that contradict the design phase sequence, and compensating for the lack of hard semantic constraints. Attached Figure Description
[0022] Figure 1 The execution flowchart of a graphical user interface interaction optimization method of the present invention is shown.
[0023] Figure 2 A schematic diagram of a graphical user interface interaction optimization system according to the present invention is shown. Detailed Implementation
[0024] In this document, the term "embodiment" means that a particular feature, structure, or characteristic described in connection with an embodiment may be included in at least one embodiment of the invention. The appearance of this phrase in various places throughout the specification does not necessarily refer to the same embodiment, nor is it a separate or alternative embodiment mutually exclusive with other embodiments. It will be explicitly and implicitly understood by those skilled in the art that the embodiments described herein can be combined with other embodiments.
[0025] Many specific details are set forth in the following description in order to provide a full understanding of the invention. However, the invention may also be practiced in other ways different from those described herein, and therefore the scope of protection of the invention is not limited to the specific embodiments disclosed below.
[0026] like Figure 1 As shown, this embodiment provides a graphical user interface interaction optimization method, which, for a session of the target software, includes:
[0027] It is necessary to clarify the core concepts involved in this invention and their hierarchical relationships. From the perspective of the topological structure of human-computer interaction semantic tasks, this invention defines a four-layer logical architecture for complex target software, consisting of application domain, design phase, task, and interaction atomic unit.
[0028] The application domain refers to the professional field served by the target software, which has a fixed workflow methodology defined by domain knowledge. This invention primarily uses chip design and electronic design automation as its main implementation, but the conceptual level of this invention is also applicable to other application domains with inherent semantic task topologies, such as building information modeling and medical image analysis. A complete workflow for an application domain consists of one or more design phases arranged in a specific sequence.
[0029] The design phases refer to a set of operations organized within the methodology of an application domain to achieve a relatively independent design milestone. Each design phase has clearly defined input data, output data, and functional objectives, and occupies one or more defined positions in a standard workflow. Taking electronic design automation (EDA) tools for chip design as an example, their complete workflow can be divided into multiple design phases such as "synthesis," "placement planning," "cell placement," "clock tree synthesis," "routing," "physical verification," "timing analysis," "power analysis," and "signal integrity analysis." These design phases have directed dependencies on each other; for example, "routing" can only begin after "cell placement" and "clock tree synthesis" are completed, thus forming a directed acyclic graph.
[0030] The term "task" refers to one or more logically cohesive subsets of operations performed within a design phase to achieve the phase's objectives. A design phase contains at least one task. Tasks are the vertex units that construct the first task dependency graph. For example, the "Physical Verification" design phase might include "Design Rule Check Configuration," "Design Rule Check Execution," and "Layout and Principles." Figure 1 "Compatibility Check Configuration", "Layout and Principles" Figure 1 The system includes multiple tasks such as "conformity check execution". These tasks exhibit two types of dependencies: intra-stage dependencies (e.g., "design rule check configuration" precedes "design rule check execution") and cross-stage dependencies (e.g., the "routing track allocation" task in the "routing" stage precedes the "design rule check execution" task in the "physical verification" stage). The subsequent weighting of this invention will distinguish between these two types of dependencies, assigning a higher first preset value to intra-stage dependencies and a lower second preset value to cross-stage dependencies, thereby finely characterizing the strength of semantic constraints.
[0031] The interactive atomic unit refers to the smallest functional carrier in the target software's graphical user interface that allows a user to perform a complete interactive operation. Interactive atomic units include, but are not limited to, menu items, toolbar buttons, dockable panels, dialog box launchers, and function items bound to shortcut key combinations. Each interactive atomic unit belongs to one or more tasks; when a user activates an interactive atomic unit, it means that the user is performing an operation of its assigned task. A task can be mapped to one or more interactive atomic units. For example, the task "Execute Design Rule Check" can be mapped to multiple interactive atomic units, such as the "Verify - Run Design Rule Check" menu item in the main menu, the "Run Design Rule Check" button on the toolbar, and the shortcut key "Ctrl+D". Conversely, an interactive atomic unit may also serve multiple tasks in different design stages; for example, the "Report" panel may be used in multiple tasks such as "Timing Analysis" and "Power Consumption Analysis".
[0032] Based on the above conceptual hierarchy, the method of this invention first constructs a first task dependency graph at the task level to capture the semantic constraints fixed in the application domain; then, it projects this graph to a finer-grained interaction atomic unit level to construct a second task dependency graph; finally, it merges this graph with a behavior transition graph mined from user behavior logs at the same interaction atomic unit level to form an interaction semantic topology graph. This layered modeling strategy, from coarse to fine and from semantic to behavior, enables this invention to dynamically balance semantic constraints and behavioral adaptability for different users and at different workflow stages within the same framework, thereby achieving personalized adaptive graphical user interface layout optimization.
[0033] Step S100: Using tasks as vertices, construct a first task dependency graph containing directed semantic constraint edges. The directed semantic constraint edges represent the dependencies that task i should be completed before task j, and assign weights to the directed semantic constraint edges based on the dependency strength.
[0034] Design activities with clearly defined semantic boundaries in the target software are abstracted into task vertices. Taking chip design and electronic design automation tools as an example, their design flow can be divided into multiple design stages, such as "placement planning," "cell placement," "clock tree synthesis," "routing," and "design rule checking / layout and schematics." Figure 1 Consistency checks, timing analysis, and power consumption analysis are just some of the tasks involved in each design phase. Each vertex in the first task dependency graph represents one such task.
[0035] Dependencies between tasks can be identified by parsing the execution order of configuration files or the sequence of task calls in the application programming interface (API). For example, parsing the Tcl flow script of Synopsys IC Compiler II reveals that the execution order of the "source floorplan.tcl" command precedes that of "source placement.tcl," indicating a dependency that the "layout planning" task should be completed before the "cell placement" task. Based on this information, a directed edge is constructed from task i to task j, and this directed semantic constraint edge represents the semantic constraint that "task i should be completed before task j."
[0036] Based on the weight of directed semantic constraint edges calibrated by dependency strength, this invention divides the dependency strength between tasks into three levels: strict dependency, non-strict dependency, and semantic independence.
[0037] The strict dependency is defined as follows: if task i cannot start, then task j cannot begin. For strict dependencies, the weight of the directed semantic constraint edge is directly set to 1. For example, in chip design, "wiring" must be performed after "cell placement". In the first task dependency graph, the weight of the directed semantic constraint edge between the vertex corresponding to "cell placement" and the vertex corresponding to "wiring" is 1.
[0038] The term "non-strict dependency" specifically refers to a situation where there is a recommended workflow order between tasks, but it is not a mandatory lock-in. For non-strict dependencies, further distinctions are made based on the design stage to which the tasks belong. If task i and task j belong to the same design stage, the weight of their directed semantic constraint edge is set to a first preset value; if task i and task j belong to different design stages, a second preset value is used. The first preset value is greater than 0.5 and greater than the second preset value. For example, the first preset value can be set to 0.7, indicating a strong semantic association between tasks in the same stage (such as "cell layout" and "layout optimization"); the second preset value can be set to 0.3, indicating a weak semantic association between cross-stage but related tasks (such as "layout planning" and "power consumption analysis").
[0039] Specifically, semantic independence means that if there is no methodological order or association between task i and task j, then the weight of their directed semantic constraint edges is 0.
[0040] Step S200: Construct a second task dependency graph using the interactive atomic units of the graphical user interface as vertices, and project the directed semantic constraint edges and weights onto the second task dependency graph based on the correspondence between tasks and interactive atomic units.
[0041] Step S211: Categorize the interactive atomic units in the graphical user interface of the target software according to their respective tasks.
[0042] By performing functional analysis on the graphical user interface of the target software, each interactive atomic unit is categorized into one or more tasks to which it belongs. The task to which an interactive atomic unit belongs refers to the specific task served when that interactive atomic unit is activated.
[0043] Taking chip design electronic design automation tools as an example, the task "Execute Design Rule Check" can be mapped to several interactive atomic units, including the "Verify - Run Design Rule Check" menu item in the main menu, the "Run Design Rule Check" button on the toolbar, and the function item bound to the shortcut key "Ctrl+D". Conversely, an interactive atomic unit may also belong to multiple different tasks. For example, the dockable panel "Report" is used to view timing reports in both the "Timing Analysis" task and the "Power Analysis" task; therefore, the "Report" panel belongs to both the "Timing Analysis" and "Power Analysis" tasks.
[0044] This classification step establishes a many-to-many mapping table from interactive atomic units to tasks, providing a basis for subsequent edge projection and weight determination.
[0045] Step S212: Based on the correspondence between tasks and interactive atomic units, project the directed semantic constraint edges between tasks in the first task dependency graph onto the vertex set composed of interactive atomic units.
[0046] After obtaining the above mapping relationship, a projection operation from the first task dependency graph to the second task dependency graph is performed. The projection rule is as follows: if there is a directed semantic constraint edge with weight w from task u to task v in the first task dependency graph, then in the second task dependency graph, for all interactive atomic units a belonging to task u and all interactive atomic units b belonging to task v, a directed semantic constraint edge is constructed from a to b, and its weight is also labeled as w.
[0047] For example, in the first task dependency graph, there is a directed semantic constraint edge with a weight of 0.7 between the "Layout Planning" task and the "Unit Layout" task (the two are non-strictly dependent cross-stage relationships, taking the second preset value). In the second task dependency graph, for interactive atomic units belonging to "Layout Planning" (such as the "Create Layout Boundary" button) and interactive atomic units belonging to "Unit Layout" (such as the "Standard Unit Placement" menu item), a directed semantic constraint edge will be constructed from the "Create Layout Boundary" button to the "Standard Unit Placement" menu item, with its weight inherited as 0.7.
[0048] Through this projection operation, the semantic constraints of the application domain contained in the first task dependency graph are completely and without distortion transmitted to the smallest granular level of user interaction, the interactive atomic unit.
[0049] Step S213: When the same interactive atomic unit belongs to multiple tasks, the interactive atomic unit is still a vertex in the second task dependency graph. The directed semantic constraint edges received by the vertex come from the projections of each subordinate task. The multi-task projections of the same vertex pair determine the final weight according to preset rules.
[0050] Step S213 handles a special case during the projection process: since an interactive atomic unit may belong to multiple tasks, during projection, the same pair of vertices may be assigned multiple directed semantic constraint edges with different weights through different task paths. To ensure that there is at most one directed semantic constraint edge between any pair of vertices in the second task dependency graph, the final weight of the edge needs to be determined according to a preset rule.
[0051] The preset rule adopted in this invention is the maximum value rule. Specifically, for a directed semantic constraint edge from vertex a to vertex b in the second task dependency graph, if multiple candidate weights are obtained through projection of multiple task paths, the maximum value among these candidate weights is taken as the final weight of the directed semantic constraint edge.
[0052] For example, suppose the "Report" panel belongs to both the "Timing Analysis" and "Power Analysis" tasks. In the first task dependency graph, there is a strict dependency edge with a weight of 1.0 between the "Rotation" task and the "Timing Analysis" task, and a non-strict dependency edge with a weight of 0.3 between the "Rotation" task and the "Power Analysis" task. During projection, the interactive atomic unit corresponding to the "Rotation" task (such as the "Global Rotation" button) will simultaneously receive candidate weight values of 1.0 and 0.3 towards the vertex of the "Report" panel. According to the maximum value rule, the final weight of the directed semantic constraint edge from the "Global Rotation" button to the "Report" panel is determined to be 1.0.
[0053] The maximum value rule preserves the strictest semantic constraints between the vertex pairs in the application domain, avoiding the weakening of critical dependencies due to the multi-tasking properties of an interactive atomic unit.
[0054] Step S300: Construct a behavior transition graph that shares vertices with the second task dependency graph, with edges being undirected weighted transition edges, and weights obtained based on the transition frequency and time decay of user interactions.
[0055] The behavior transition graph and the second task dependency graph share the exact same vertex set V, meaning both use all the interactive atomic units of the target software as vertices. The edges of the behavior transition graph are undirected weighted transition edges, and their weights reflect the frequency and timeliness of users switching between different interactive atomic units in actual use.
[0056] Step S311: Capture panel activation events, menu click events, and shortcut key events of the graphical user interface via hook injection.
[0057] To obtain user interaction data, an event capture hook needs to be injected into the target software's graphical user interface event system. This event capture hook is implemented by overriding or intercepting the target software's event handling functions, transparently capturing three types of interaction events: panel activation events, menu click events, and shortcut key events, while ensuring that normal functionality is not affected.
[0058] Specifically, the panel activation event is triggered when a user activates a dockable panel by clicking or using a shortcut key, recording the panel's unique identifier, activation method, and timestamp of the activation time. Taking Synopsys IC Compiler II, an electronic design automation tool for chip design, as an example, dockable panels in its interactive atomic cells, such as the "Timing Report Panel" and the "Physical Verification Results Panel," all capture activation behavior through this type of event.
[0059] Specifically, the menu click event is triggered when the user clicks a menu item in the menu bar or right-click context menu, and records the unique identifier of the menu item, the complete menu path, and the timestamp of the click time.
[0060] Specifically, the shortcut key event is triggered when the user presses a predefined shortcut key combination, and records the unique identifier of the function corresponding to the shortcut key combination and the timestamp of the trigger time.
[0061] The above three types of interaction events can comprehensively cover the main ways in which users interact with the target software's graphical user interface. By capturing these three types of interaction events, a complete interaction behavior log can be formed.
[0062] Step S312: Record the switching event of each user's interaction atom unit according to the timestamp within the same session. Each switching event includes the source interaction atom unit, the target interaction atom unit, and the switching time.
[0063] Based on the interactive event stream captured in step S311, the events within a session are arranged in ascending order of timestamps to form an interactive event sequence. A session is defined as the time interval from the start to the shutdown of the target software. In the interactive event sequence, for two adjacent events, if the first event acts on interactive atomic unit A and the second event acts on interactive atomic unit B, and A and B are different, then a switch event from A to B is recorded. Each switch event includes three fields: source interactive atomic unit, target interactive atomic unit, and switch time.
[0064] Specifically, the source interaction atomic unit is the unique identifier of the interaction atomic unit of the user's last interaction before the switch.
[0065] The target interaction atom unit is specifically the unique identifier of the interaction atom unit that the user is currently interacting with after the switch.
[0066] The switching time is specifically the timestamp of the event corresponding to the target interactive atomic unit.
[0067] For example, if a user clicks the "Global Routing" button on the toolbar sequentially within a session (time t1), activates the "Timing Report Panel" (time t2), and presses the shortcut key "Ctrl+D" to perform a design rule check (time t3), two switching events are recorded. The source interaction atomic unit for the first event is the "Global Routing" button, and the target interaction atomic unit is the "Timing Report Panel," with a switching time of t2. The source interaction atomic unit for the second event is the "Timing Report Panel," and the target interaction atomic unit is the function item corresponding to "Ctrl+D," with a switching time of t3. If the same interaction atomic unit is operated on consecutively, no new switching events are generated.
[0068] Step S313: For any pair of source interaction atomic units and target interaction atomic units, the weight of the undirected weighted transfer edge is determined by the ratio of the number of bidirectional switching events of the pair within the session to the total number of switching events, and the time decay factor, wherein the time decay factor decays as the interval between the most recent switching time of the pair and the current time increases.
[0069] After obtaining all the switching events within the most recent sessions, the weight of the undirected weighted transition edge is calculated for any pair of vertices (interaction atom unit i and interaction atom unit j) in the behavior transition graph. Since undirected edges do not distinguish direction, the switching from i to j and the switching from j to i are combined for statistics.
[0070] The total number of switching events from interactive atomic unit i to interactive atomic unit j and from j to i within a few recent sessions is counted as the bidirectional switching count for this vertex pair. Simultaneously, the maximum bidirectional switching count is found across all vertex pairs and taken as the global maximum switching count. The normalized transition frequency is obtained by dividing the bidirectional switching count of vertex pair (i, j) by this global maximum switching count, with a value between zero and one.
[0071] Calculate the time decay factor. This factor ensures that the behavior transition graph reflects the user's current interaction pattern, diminishing the impact of outdated operating habits. The time decay factor is determined by taking the natural constant e as the base, multiplying a negative time decay coefficient λ by the time interval Δt between the most recent switch event and the current time, and calculating the power value. The default value for the time decay coefficient λ is 0.1 / day, and the time interval Δt is in days. When the most recent switch occurred recently, Δt is small, the time decay factor is close to 1, and its impact on the weights is small; as time progresses, this factor gradually decays towards 0, thus significantly reducing the contribution of older switch events.
[0072] Multiplying the normalized transfer frequency by the time decay factor yields the weight of the undirected weighted transfer edge connecting interactive atomic unit i and interactive atomic unit j. This weight combines the significance of the switching frequency with the timeliness of the switching behavior.
[0073] For example, assuming the maximum global switching count within the statistical period is 500 times, and the vertex switches between the "Global Routing" button and the "Timing Report Panel" 80 times, with the most recent switch occurring 5 days ago (midnight), then the normalized transition frequency is 0.16; the time decay factor is... ≈0.951; the final calculated weight of the undirected weighted transition edge is approximately 0.152.
[0074] Step S400: Construct an interactive semantic topology graph that shares vertices with the second task dependency graph and the behavior transition graph, and contains directed semantic constraint edges and undirected weighted transition edges.
[0075] First, determine the vertex set of the interaction semantic topology graph. The vertex set of the interaction semantic topology graph is identical to the vertex set of the second task dependency graph and the behavior transition graph; that is, it uses all the interaction atomic units of the target software as vertices. If an interaction atomic unit exists only in one of the graphs (for example, some interaction atomic units have behavioral data but no semantic constraints, or only semantic constraints but have not yet been used by the user), that interaction atomic unit is also included in the vertex set of the interaction semantic topology graph to ensure the integrity of subsequent processing.
[0076] Secondly, all directed semantic constraint edges and their weights in the second task dependency graph are introduced into the interaction semantic topology graph as is, forming the semantic edge set of that graph. Specifically, if there exists a path in the second task dependency graph from interaction atom unit a to interaction atom unit b with weight ... For a directed semantically constrained edge, a directed edge from a to b is also constructed in the interaction semantic topology graph, and its edge type is marked as "semantic constrained edge", with the edge weight inherited. Semantic constraint edges reflect domain knowledge that "a should be completed before b," and their directionality expresses the order in which tasks are executed.
[0077] Then, all undirected weighted transition edges and their weights in the behavior transition graph are introduced into the interaction semantic topology graph as is, forming the behavior edge set of the graph. Specifically, if there is a weight between interaction atomic unit i and interaction atomic unit j in the behavior transition graph... For the undirected weighted transition edge, in the interaction semantic topology graph, an undirected edge is also constructed between i and j, and its edge type is marked as "behavior transition edge", with the edge weight inherited as... Behavior transition edges reflect the frequency and timeliness of users switching between these two interactive atomic units in actual operation, and their undirectedness reflects the round-trip characteristics of interactive behavior.
[0078] After the above operations, the interactive semantic topology graph forms a dual-graph superposition structure. For any pair of vertices, there may be both a directed semantic constraint edge and an undirected weighted transition edge, or only one type of edge, or neither. For example, in chip design electronic design automation tools, between the vertex "Global Routing" button and "Timing Report Panel," there may be a directed semantic constraint edge with a weight of 1 pointing from "Global Routing" to "Timing Report Panel" due to the projection of the second task dependency graph, and there may also be an undirected weighted transition edge with a weight of 0.152 due to the user's frequent switching between the two. This bilateral coexistence fully describes the strict semantic sequential dependency of this pair of interactive atomic units and the high-frequency back-and-forth switching behavior.
[0079] Step S500: For any pair of vertices on the interactive semantic topology graph, the comprehensive association strength is calculated based on the linear combination of the weights of the directed semantic constraint edges and the weights of the undirected weighted transition edges, the interaction terms, the fusion weights, and the preset collaborative enhancement coefficients. The fusion weights are adaptively learned for each user.
[0080] After constructing the interactive semantic topology graph, the goal of this step is to fuse the two edge weights simultaneously carried by any pair of vertices (interactive atomic unit i and interactive atomic unit j) in the graph to obtain a single, unified value that measures the comprehensive association strength between the two interactive atomic units. The comprehensive association strength is the direct basis for the subsequent hierarchical clustering and layout decisions of the topology-constrained interactive flow optimizer, and its calculation method determines the relative influence of semantic constraints and behavioral patterns in the optimization decision.
[0081] For any pair of vertices in the interactive semantic topology graph, there may be a pair with a weight of . A directed semantic constraint edge and a weight of An undirected weighted transfer edge may exist with only one type of edge. In this case, the weight of the missing edge is considered to be 0, or neither type of edge exists. In this case, there is no need to calculate the overall association strength.
[0082] The overall association strength is obtained by adding the semantic constraint term, the behavioral adaptation term, and the collaborative enhancement term.
[0083] The semantic constraint term is the weight of the fusion weight α and the weight of the directed semantic constraint edge. product The semantic constraint term reflects the contribution of structured semantic knowledge of the application domain to the association strength of the vertex, and its influence is controlled by the fusion weight α.
[0084] The fitness term is the difference between 1 and the fusion weight α, and the weight of the undirected weighted transition edge. product This section reflects the contribution of the user's actual interaction behavior pattern to the strength of the association between the vertex and the user. Its influence is complementary to that of the semantic constraint term. When α is high, the semantic constraint dominates; when α is low, behavioral adaptation dominates.
[0085] The collaborative enhancement term is the difference between the fusion weight α and 1 minus the fusion weight α, and the weight of the directed semantic constraint edge. Weights of undirected weighted transition edges And the product of the preset synergistic enhancement coefficient β, i.e. When a vertex pair simultaneously possesses high semantic constraint weights and high behavioral transition weights—meaning the user's natural operating habits are highly consistent with the domain methodology—the collaborative enhancement term provides additional gain, resulting in a combined association strength for the vertex pair exceeding the value of a simple linear sum. This leads to a more prioritized recommended position in layout optimization. The collaborative enhancement coefficient β controls the magnitude of this gain term, with a recommended value between 0 and 0.5 to avoid excessive... and When all values are close to 1, the overall correlation strength is excessively amplified.
[0086] As another alternative implementation, the collaborative enhancement term can also be adopted as... That is, not explicitly multiplying At this point, the magnitude of the collaborative gain is independent of the fusion weight and is still covered by the claims.
[0087] The sum of the semantic constraint term, behavioral adaptation term, and collaborative enhancement term yields the initial comprehensive association strength of the vertex pair. This calculation traverses all vertex pairs in the interactive semantic topology graph that have at least one edge (either a directed semantic constraint edge or an undirected weighted transition edge), and each vertex pair receives an initial comprehensive association strength value. For vertex pairs that have neither type of edge, their initial comprehensive association strength is directly set to 0 and they are not included in subsequent normalization calculations.
[0088] After obtaining the initial composite association strength of all vertex pairs, a minimum-maximum normalization process is performed. Specifically, the initial composite association strength of all vertex pairs is iterated through, and the maximum and minimum values are found. For each vertex pair, its initial composite association strength is subtracted from the minimum value, and then divided by the difference between the maximum and minimum values. The result is the normalized composite association strength, which ranges from 0 to 1. After normalization, the pair of vertices with the highest composite association strength has a value of 1, the pair with the lowest has a value of 0, and the remaining vertex pairs are distributed proportionally within this range.
[0089] For example, in chip design electronic design automation tools, there exists a directed semantic constraint edge between the vertex pair "Global Routing" button and the "Timing Report Panel" ( ) and an undirected weighted transition edge ( Assume the current user's fusion weight α is 0.6 and the collaborative enhancement coefficient β is 0.2. The semantic constraint term is 0.6 × 1.0 = 0.6; the behavioral adaptation term is (1 - 0.6) × 0.152 = 0.4 × 0.152 ≈ 0.061; and the collaborative enhancement term is 0.2 × 0.6 × 0.4 × 1.0 × 0.152 ≈ 0.007. Adding these three together yields an initial comprehensive association strength of approximately 0.668. Assuming the maximum initial comprehensive association strength for all vertex pairs is 0.85 and the minimum is 0.10, the normalized comprehensive association strength for this vertex pair is... This value will serve as the basis for determining the similarity of this pair of vertices during hierarchical clustering.
[0090] Step S511: Based on the historical interaction data of the user's recent several sessions, calculate the semantic compliance degree and the exploration degree, which are calculated based on the weight threshold of the directed semantic constraint edges.
[0091] The fusion weight α is not a fixed value, but a personalized parameter that is continuously adaptively learned for each user. This step defines the core metrics used to drive α learning: semantic compliance and exploration. Both metrics are calculated based on historical interaction data from the user's most recent several sessions. The number of sessions can be set to the K most recent sessions, such as K being 10.
[0092] Step S5111: The ratio of the number of switching events with a weight greater than 0.5 for the corresponding directed semantic constraint edges in the user's recent sessions to the total number of switching events in the user's recent sessions is used as the semantic compliance degree.
[0093] Semantic compliance measures the degree to which a user adheres to the semantic constraints of the domain methodology paper in actual operation. It involves counting all switching events that occurred for the user in the most recent K sessions. For each switching event, the weights of the directed semantic constraint edges corresponding to the source and target interaction atomic units in the interaction semantic topology graph are obtained. .like If the number of semantic compliance switches exceeds the preset semantic compliance threshold of 0.5, the switch event is considered a semantic compliance switch. The semantic compliance score is calculated by dividing the total number of semantic compliance switches by the total number of switch events in the most recent K sessions. The semantic compliance score ranges from 0 to 1; a higher value indicates that the user is more likely to operate in the order prescribed by the domain methodology.
[0094] Step S5112: The ratio of the number of switching events with a weight of 0 for the corresponding directed semantic constraint edges in the user's recent sessions to the total number of switching events in the user's recent sessions is used as the exploration degree.
[0095] Exploration degree measures the extent to which a user explores non-standard paths during actual operation. It counts all switching events that occurred for the user within the last K sessions. For each switching event, it obtains the weights of the directed semantic constraint edges corresponding to the source and target interaction atomic units in the interaction semantic topology graph. .like If the value equals 0, meaning the vertex pair has no semantic connection, then the switching event is classified as an exploratory switch. The total number of exploratory switches divided by the total number of switching events in the last K sessions gives the exploratory degree. The exploratory degree also ranges from 0 to 1; a higher value indicates that the user is more likely to break the standard process and perform personalized exploratory operations.
[0096] Step S512: Obtain the fusion weight increment by nonlinear mapping the difference between semantic compliance and exploration, and update the fusion weight by exponential moving average.
[0097] Based on the semantic compliance and exploration degree obtained in steps S5111 and S5112 respectively, the difference between the two is calculated. The value of this difference ranges from -1 to 1. When the difference is close to 1, it indicates that the user highly follows the semantic constraints and explores very little, leaning towards a methodological user; when the difference is close to -1, it indicates that the user frequently engages in non-standard exploration and less follows the semantic constraints, leaning towards an exploratory user.
[0098] A nonlinear mapping is applied to this difference to obtain the user's fusion weight observation value for this round, i.e., the fusion weight value calculated in this round. The mapped value is constrained to a range between 0 and 1. In a preferred implementation, an sigmoid function is used, with the difference between semantic compliance and exploration degree as input. =sigmoid(semantic compliance minus exploration) such that the difference approaches 1. When the difference approaches 1, it approaches -1. When the difference approaches 0, ≈0.5. For the definitions of semantic compliance and exploration degree, please refer to steps S5111 and S5112.
[0099] get Then, an exponential moving average is used to calculate the fusion weight for the current user. The following updates will be made:
[0100]
[0101] The smoothing factor γ is set to 0.9 by default to ensure that the adjustment of the fusion weights is smooth and stable and will not change drastically due to the behavior fluctuations of individual sessions.
[0102] Step S513: The fusion weight takes an initial value when used for the first time and is reset to the initial value when the user switches application scenarios. The initial value of the application scenario with strong semantic structure is higher than that of the application scenario with weak semantic structure.
[0103] The initial value of the fusion weight is set based on the semantic structuring level of the target software's application domain. For application scenarios with a high degree of semantic structuring, i.e., where the application domain has clear and strict design methodologies and textual constraints, such as chip design and electronic design automation tools, the initial value of the fusion weight is set to a higher value, such as 0.85, so that the system initially tends to follow semantic constraints. For application scenarios with a low degree of semantic structuring, i.e., where the workflow of the application domain is more flexible, such as general office software or creative design tools, the initial value of the fusion weight is set to a lower value, such as 0.4, so that the system initially tends to adapt to user behavior.
[0104] When a user switches from one application scenario to another, such as from a chip design project to a printed circuit board design project, the system will detect the change in application scenario and reset the user's fusion weights to the initial values corresponding to the new application scenario. This mechanism ensures that the fusion weights always match the semantic characteristics of the current application domain, avoiding cross-domain parameter contamination.
[0105] The weights are fused using the adaptive learning mechanism described in steps S511 to S513. It can continuously track changes in a user's operating style, gradually converging to personalized values that match the user's actual skill level and work habits. Specifically, When the value approaches 1, it indicates that the user is a "methodological user," and the graphical user interface layout will be highly structured and ordered according to semantic topology. When the value approaches 0.5, it indicates that the user is a "balanced user," and the graphical user interface layout will take into account both semantics and behavior. When the value approaches 0, it indicates that the user is an "exploratory user," and the graphical user interface layout will mainly follow the user's behavior. The meaning of the user profile is consistent with the description in step S512.
[0106] Step S600: Based on the interactive semantic topology graph, solve the optimized layout configuration of the graphical user interface through the topology-constrained interactive flow optimizer and apply it to the target software. The topology-constrained interactive flow optimizer executes the following steps S611-S614 in sequence.
[0107] After constructing the interactive semantic topology graph and calculating the comprehensive association strength, the goal of this step is to solve for the optimal graphical user interface layout configuration based on the above results using a topology-constrained interactive flow optimizer, and then apply this layout configuration to the user interface of the target software. The topology-constrained interactive flow optimizer is the core engine responsible for layout decisions in this invention. It operates on the interactive semantic topology graph, using the comprehensive association strength as a measure of the tightness of association between vertices. It sequentially performs four stages of operations: hierarchical clustering, cluster-to-region allocation, intra-cluster sorting, and visibility decision-making, ultimately outputting a personalized graphical user interface layout configuration that simultaneously considers semantic constraints and behavioral adaptation.
[0108] The "topological constraint" referred to in the interactive flow optimizer with topological constraints does not refer to the directed topological structure of the graph directly consumed by the clustering algorithm itself. Instead, it refers to the three-part constraint that incorporates directed semantic constraint edges from the interactive semantic topological graph into the constraint conditions and optimization objectives. The first constraint is the hard semantic constraint in step S6144, which directly consumes the strictly directed dependencies with a weight of 1 in the directed semantic constraint edges. The second constraint is the adaptive learning in step S511, which uses the weight threshold of the directed semantic constraint edges as the criterion for fusion of weight α. The third constraint is the current design stage output by the runtime workflow stage identification. These three parts together constitute the essential carrier of the "topological constraint," while the clustering step itself only consumes the distance metric of the comprehensive association strength and does not directly use the directed edge information.
[0109] By analyzing the interactive atomic units involved in the user's most recent N interactions (e.g., N=10), the tasks to which these interactions belong are counted, and the design stage of the task with the highest frequency of occurrence is taken as the current design stage. This current design stage acquisition process is recalculated each time the interaction flow optimizer is triggered.
[0110] Step S611: Phase 1, using the reciprocal of the comprehensive association strength as the distance metric, perform hierarchical clustering on the vertex set to obtain clusters.
[0111] The goal of Phase 1 is to divide all interactive atomic unit vertices in the interactive semantic topology graph into several clusters according to the degree of their association. This results in tightly linked interactive atomic units within a cluster and relatively loosely linked ones between clusters. The distance metric for clustering is the reciprocal of the overall association strength. Since a higher overall association strength indicates a stronger association between two interactive atomic units, taking its reciprocal results in highly associated vertex pairs being closer together and low-association vertex pairs being farther apart, thus aggregating closely associated vertices into the same cluster.
[0112] Hierarchical clustering employs the Ward minimum variance method. The core idea of the Ward minimum variance method is to merge two clusters at each step, minimizing the sum of squared distances from each vertex of the merged cluster to the cluster center. This method effectively avoids the formation of chain-like clusters or single giant clusters in the clustering results, ensuring a relatively balanced size among the clusters, which is beneficial for the subsequent reasonable allocation of clusters to the available screen area.
[0113] After clustering is completed, the optimal cut point needs to be determined on the dendrogram generated by hierarchical clustering to obtain the final cluster division. First, a preset upper limit for the number of clusters is set, which is the smaller of the number of available screen areas and the upper limit of cognitive load. The upper limit of cognitive load can be set based on research findings in cognitive psychology regarding the number of information chunks that the human brain can process simultaneously, and can be set to 12. Second, without exceeding this upper limit, the inter-cluster separation index corresponding to each possible cut point is calculated, and the cut point that maximizes the inter-cluster separation is selected as the optimal cut point, thereby determining the final number of clusters and the vertices of the interactive atomic units contained in each cluster.
[0114] Step S612: Phase 2, allocate each cluster to the available area of the screen.
[0115] The goal of Phase Two is to allocate the clusters obtained in Phase One to the available screen areas of the target software's graphical user interface. Available screen areas include, but are not limited to, the top toolbar area, the left panel group area, the right panel group area, the bottom status bar area, and floating window areas.
[0116] For each cluster, its semantic center is calculated. The semantic center is the interactive atomic unit in the cluster with the highest directed semantic constraint edge weight. The position of this interactive atomic unit in the default layout is the semantic reference position of the cluster. Each cluster is preferentially assigned to the available screen area closest to its semantic reference position. If the semantic reference positions of multiple clusters point to the same available screen area, they are assigned sequentially according to their size, with larger clusters occupying that area first. The remaining clusters that exceed the capacity of that area are assigned to adjacent available areas.
[0117] Step S613: Stage 3, sort the interactive atomic units within the cluster.
[0118] The goal of Phase 3 is to sort the interactive atomic units within each cluster to determine their display order within the allocated screen area. The sorting employs a multi-level priority strategy, applying the rules sequentially according to the priority order of steps S6131 to S6133, with the next level of rules only activated when a tie occurs in the previous level.
[0119] Step S6131: Sort the interactive atomic units in descending order based on the weights of the directed semantic constraint edges corresponding to the current design stage. If there are no ties, proceed to stage four.
[0120] The first priority sorting rule is to sort in descending order based on the weights of the directed semantic constraint edges corresponding to the current design stage. Specifically, the label of the user's current design stage is obtained, which is obtained by analyzing the user's most recent interactions through the runtime workflow stage identification module. For each interactive atomic unit within a cluster, the weight of its directed semantic constraint edge with the current design stage in the interaction semantic topology graph is obtained. The larger the weight, the higher the semantic relevance of the interactive atomic unit in the current design stage, and the higher it should be ranked. All interactive atomic units are sorted in descending order according to this weight. If all interactive atomic units have different weights after sorting, and there are no ties, the sorting is complete, and the process proceeds directly to step S614.
[0121] Step S6132: If there are ties, the previous interacting atomic unit is used as the reference element. The comprehensive correlation strength between the ties and the reference element is calculated respectively, and the ties are sorted in descending order based on the comprehensive correlation strength. If there are no ties, proceed to stage four.
[0122] If multiple interactive atomic units have the same weight in the sorting result of step S6131, forming a tie, then the second priority sorting rule is activated. The interactive atomic unit where the user last interacted is used as the reference element. For each tied interactive atomic unit, the comprehensive association strength between the interactive atomic unit and the reference element in the interaction semantic topology graph is calculated. The tied interactive atomic units are sorted in descending order according to their comprehensive association strength with the reference element. The design basis of this rule is that the interactive atomic unit that the user just interacted with is the anchor point of the current working context, and the interactive atomic unit with a higher comprehensive association strength with the anchor point is more likely to become the user's next operation target. If all tied items have been separated after sorting by this rule, and there are no new ties, then the sorting is complete, and the process proceeds directly to step S614.
[0123] Step S6133: If there are ties, sort them in descending order according to the single-point activation frequency of each interactive atomic unit in the historical interactive data.
[0124] If multiple interactive atomic units with the same overall correlation strength still exist in the sorting results of step S6132, forming a new parallel structure, then the third priority sorting rule is activated. The total number of times each parallel interactive atomic unit was activated by the user in historical interaction data is counted, i.e., the single-point activation frequency. The units are then sorted in descending order of single-point activation frequency. This rule is based on the classic interaction frequency theory; when semantic relevance and contextual relevance cannot be distinguished, the historical usage frequency determines the sorting priority. Since single-point activation frequency is a discrete statistic, this sorting rule will inevitably break all parallel relationships. Once the sorting is complete, proceed to step S614.
[0125] Step S614: Phase 4, based on the weights of the directed semantic constraint edges corresponding to the current design phase, and combined with visibility decisions, determine the visibility of each interactive atomic unit.
[0126] The goal of Phase Four is to determine the visibility state of each interactive atom unit on the graphical user interface. Visibility states include visible, recommended, and hidden states. This phase combines a threshold determination based on the overall association strength with semantic hard constraints to make visibility decisions.
[0127] Step S6141: Set the interactive atomic units with a comprehensive correlation strength higher than the first threshold to the visible state.
[0128] The first threshold is used to determine whether interactive atomic units should be directly visible. For each interactive atomic unit, its overall association strength with the current user's working context is calculated. If the overall association strength is higher than the first threshold, the interactive atomic unit is set to visible, meaning it is directly displayed in the graphical user interface, and the user can see and interact with it without any additional action.
[0129] The first threshold is set by sorting the overall association strength of all interactive atomic units to be evaluated in the current layout configuration in descending order, and taking the overall association strength value at the first preset percentile after sorting as the benchmark value of the first threshold. The default value of the first preset percentile is 30%, meaning that only the top 30% of interactive atomic units with the highest overall association strength can directly obtain the visible state. In addition, the first threshold must not be lower than a preset absolute lower limit of 0.7 to avoid setting interactive atomic units with actually low association strength to the visible state when the overall overall association strength is generally low. The final value of the first threshold is the larger of the above benchmark value and the absolute lower limit of 0.7. This setting method allows the determination of the visible state to adapt to the distribution of overall association strength in different scenarios, while ensuring the minimum entry threshold for the visible state.
[0130] Step S6142: Set the interactive atomic units with a comprehensive correlation strength higher than the second threshold but not higher than the first threshold as recommended states.
[0131] The second threshold is used to distinguish between the recommended state and the hidden state, and the second threshold is lower than the first threshold. For each interactive atomic unit, if its overall correlation strength is higher than the second threshold but not higher than the first threshold, then the interactive atomic unit is set to the recommended state. The recommended state indicates that the interactive atomic unit has a moderate degree of relevance in the current working context, and its display method is different from the visible state, such as being presented in the form of semi-transparency, a highlighted border, or a floating recommendation bubble, in order to attract the user's attention but not occupy the main visual space.
[0132] The second threshold is set by sorting the overall correlation strength of all interactive atomic units to be evaluated in the current layout configuration in descending order, and taking the overall correlation strength value in the top second preset percentile after sorting as the benchmark value of the second threshold. The default value of the second preset percentile is 60%, meaning that interactive atomic units with an overall correlation strength between the top 30% and top 60% are recommended. In addition, the second threshold must not be lower than a preset absolute lower limit of 0.4 to avoid setting interactive atomic units with a low degree of correlation with the current working context as recommended when the overall correlation strength distribution is relatively concentrated, thus causing redundancy in interface information. The final value of the second threshold is the larger of the above benchmark value and the absolute lower limit of 0.4. This setting method allows the determination of the recommendation state to adapt to the overall correlation strength distribution in different scenarios, while ensuring a minimum entry threshold for the recommendation state, ensuring that the interactive atomic units recommended to users do indeed have at least moderate relevance.
[0133] Step S6143: Set the interactive atomic units with a comprehensive association strength lower than the second threshold as hidden states that need to be accessed through the extended menu.
[0134] For each interactive atomic unit, if its overall correlation strength is lower than the second threshold, it indicates that the interactive atomic unit has a low relevance to the current working context. To save screen space and reduce cognitive load, the interactive atomic unit is set to a hidden state. Interactive atomic units in the hidden state are not visible in the default layout and can only be accessed by the user through the "More" menu, the "Expand" button, or the search function.
[0135] Step S6144: For a pair of vertices with a weight of 1 for a directed semantic constraint edge in the interactive semantic topology graph, if the current design stage is the design stage corresponding to task i in the vertex pair, then the interactive atomic unit mapped to task j is set to the visible state.
[0136] Traverse all pairs of vertices with a weight of 1 for directed semantic constraint edges in the interaction semantic topology graph, i.e., pairs of vertices with strict dependencies. For each such pair, assuming its corresponding directed semantic constraint edge points from task i to task j, if the user's current design stage happens to be the same as the design stage corresponding to task i, then all interaction atomic units mapped to task j are forcibly made visible. This rule ensures that in the standard workflow of the application domain, the interaction atomic units corresponding to the tasks that must be executed next after the current stage is completed will not be hidden due to the sparsity of behavioral data or the low overall correlation strength, thus guaranteeing the availability of critical operations on strictly semantically dependent paths.
[0137] The forced visibility determination in step S6144 has a higher priority than the threshold determination in steps S6141 to S6143. That is, any interactive atomic unit that meets the conditions of this step is directly set to the visible state, regardless of its overall correlation strength.
[0138] Step S615: For the optimized target layout and the currently rendered layout, the proportion of GUI elements whose positions have changed to the total number of currently laid-out GUI elements can be used as the degree of difference. In a preferred implementation, if the degree of difference is greater than 30%, it is applied in batches, that is, the adjustment of the 50% with the largest difference is applied first, and the remaining part is applied after the user adapts; otherwise, the new layout is applied to the target software interface all at once. When applying all at once, a gradual transition animation lasting about 500ms can be used to smoothly move the target element from its current position to the target position to avoid cognitive confusion caused by sudden interface changes.
[0139] like Figure 2 As shown, this embodiment provides a graphical user interface interaction optimization system, including:
[0140] The task dependency graph module constructs a first task dependency graph with tasks as vertices, containing directed semantic constraint edges. The directed semantic constraint edges represent the dependency relationship that task i should be completed before task j, and the weights of the directed semantic constraint edges are labeled based on the dependency strength. The second task dependency graph is constructed with interactive atomic units of the graphical user interface as vertices, and the directed semantic constraint edges and weights are projected onto the second task dependency graph based on the correspondence between tasks and interactive atomic units.
[0141] The behavior transition graph module constructs a behavior transition graph that shares vertices with the second task dependency graph. The edges are undirected weighted transition edges, and the weights are obtained based on the transition frequency and time decay of user interactions.
[0142] The interactive semantic topology graph module constructs an interactive semantic topology graph that shares vertices with the second task dependency graph and the behavior transition graph, and contains directed semantic constraint edges and undirected weighted transition edges.
[0143] The association strength calculation module calculates the comprehensive association strength for any pair of vertices in the interaction semantic topology graph based on the linear combination of the weights of the directed semantic constraint edges and the weights of the undirected weighted transition edges, the interaction terms, the fusion weights, and the preset collaborative enhancement coefficients. The fusion weights are adaptively learned for each user.
[0144] The layout solving module, based on the interactive semantic topology graph, solves the optimized layout configuration of the graphical user interface through the interactive flow optimizer with topological constraints, and applies it to the target software.
Claims
1. A graphical user interface interaction optimization method, characterized in that, For a single session of the target software, the method includes: With tasks as vertices, construct a first task dependency graph containing directed semantically constrained edges. The directed semantically constrained edges represent the dependencies that task i should be completed before task j, and the weights of the directed semantically constrained edges are labeled based on the dependency strength. Using the interactive atomic units of the graphical user interface as vertices, a second task dependency graph is constructed, and the directed semantic constraint edges and weights are projected onto the second task dependency graph based on the correspondence between tasks and interactive atomic units. Construct a behavior transition graph that shares vertices with the second task dependency graph, with edges being undirected weighted transition edges, and weights obtained based on the transition frequency and time decay of user interactions; Construct an interactive semantic topology graph that shares vertices with the second task dependency graph and the behavior transition graph, and contains directed semantic constraint edges and undirected weighted transition edges; For any pair of vertices in the interactive semantic topology graph, the comprehensive association strength is calculated by combining the linear combination of the weights of the directed semantic constraint edges and the weights of the undirected weighted transition edges with the interaction terms, along with the fusion weights and the preset collaborative enhancement coefficients. The fusion weights are adaptively learned for each user. Based on the interactive semantic topology graph, the optimized layout configuration of the graphical user interface is solved by a topology-constrained interactive flow optimizer and applied to the target software. The topology-constrained interactive flow optimizer performs the following operations in sequence: In the first stage, the vertex set is hierarchically clustered to obtain clusters, using the reciprocal of the comprehensive association strength as the distance metric. Phase Two: Assign each cluster to the available area of the screen; Phase 3 involves sorting the interactive atomic units within the cluster; Phase 4: Based on the weights of the directed semantic constraint edges corresponding to the current design phase, the visibility of each interactive atomic unit is determined in conjunction with visibility decisions.
2. The graphical user interface interaction optimization method according to claim 1, characterized in that, The first task dependency graph includes: The target software includes at least one design phase, and each design phase includes at least one task. Based on the execution order of the target software's configuration file or the interface task call sequence of application programming, extract the dependencies and dependency strengths between tasks, and construct directed semantic constraint edges; When the dependency strength between tasks is strict dependency, the weight of the directed semantic constraint edge is 1. When the dependency strength between tasks is not strict, the first preset value is used for tasks in the same design phase, the second preset value is used for tasks across design phases, and 0 is used otherwise. Among them, the first preset value > 0.5 > the second preset value.
3. The graphical user interface interaction optimization method according to claim 1, characterized in that, The second task dependency graph includes: The interactive atomic units in the graphical user interface of the target software are categorized according to their respective tasks; Based on the correspondence between tasks and interactive atomic units, the directed semantic constraint edges between tasks in the first task dependency graph are projected onto the vertex set composed of interactive atomic units. When the same interactive atomic unit belongs to multiple tasks, the interactive atomic unit is still a vertex in the second task dependency graph. The directed semantic constraint edges received by this vertex come from the projections of each subordinate task. The multi-task projections of the same vertex pair determine the final weight according to preset rules.
4. The graphical user interface interaction optimization method according to claim 1, characterized in that, The behavior transition graph includes: Capture panel activation events, menu click events, and shortcut key events in the graphical user interface through hook injection; Record the switching events of each user's interaction atomic unit according to the timestamp within the same session. Each switching event includes the source interaction atomic unit, the target interaction atomic unit, and the switching time. For any pair of source interaction atomic units and target interaction atomic units, the weight of the undirected weighted transfer edge is determined by the ratio of the number of bidirectional switching events of the pair within the session to the total number of switching events, and the time decay factor, wherein the time decay factor decays as the interval between the most recent switching time of the pair and the current time increases.
5. The graphical user interface interaction optimization method according to claim 1, characterized in that, The fusion weights are adaptively learned for each user and include: Based on the user's recent historical interaction data from several sessions, semantic compliance and exploration are calculated, with the semantic compliance and exploration calculated based on the weight threshold of the directed semantic constraint edges. The difference between semantic compliance and exploration is mapped nonlinearly to obtain the fusion weight increment, and the fusion weight is updated by exponential moving average.
6. The graphical user interface interaction optimization method according to claim 5, characterized in that, The fusion weights are initialized upon first use and reset to their initial values when the user switches application scenarios. The initial values for semantically strongly structured application scenarios are higher than those for semantically weakly structured applications.
7. The graphical user interface interaction optimization method according to claim 5, characterized in that, The computation of semantic compliance and exploration degree includes: The semantic compliance is defined as the ratio of the number of switching events in the user's most recent sessions where the weight of the directed semantic constraint edge is greater than 0.5 to the total number of switching events in the user's most recent sessions. The degree of exploration is the ratio of the number of switching events with a weight of 0 for the corresponding directed semantic constraint edges in the user's recent sessions to the total number of switching events in the user's recent sessions.
8. The graphical user interface interaction optimization method according to claim 1, characterized in that, The third stage involves sorting the interactive atomic units within the cluster, including: Based on the weights of the directed semantic constraints corresponding to the current design phase, the interactive atomic units are sorted in descending order. If there are no ties, the process proceeds to phase four. If there are ties, the previous interacting atomic unit is used as the reference element. The comprehensive association strength between the ties and the reference element is calculated respectively, and the ties are sorted in descending order based on the comprehensive association strength. If there are no ties, proceed to stage four. If there are ties, sort them in descending order by the frequency of single-point activation of each interactive atomic unit in the historical interaction data.
9. The graphical user interface interaction optimization method according to claim 1, characterized in that, Phase four, based on the weights of the directed semantic constraint edges and combined with visibility decisions, determines the visibility of each interactive atomic unit, including: Set interactive atomic units with a comprehensive correlation strength higher than the first threshold to the visible state; Interactive atomic units with a comprehensive correlation strength higher than the second threshold but not higher than the first threshold are set to the recommended state; Set interactive atomic units with a comprehensive association strength below the second threshold to a hidden state that requires access via an extended menu; Specifically, for a pair of vertices with a weight of 1 for a directed semantic constraint edge in the interactive semantic topology graph, if the current design stage is the design stage corresponding to task i in the vertex pair, then the interactive atomic unit mapped to task j is set to the visible state.
10. A graphical user interface interaction optimization system, applied to the method described in any one of claims 1 to 9, characterized in that, include: The task dependency graph module constructs a first task dependency graph with tasks as vertices, containing directed semantic constraint edges. The directed semantic constraint edges represent the dependency relationship that task i should be completed before task j, and the weights of the directed semantic constraint edges are labeled based on the dependency strength. The second task dependency graph is constructed with interactive atomic units of the graphical user interface as vertices, and the directed semantic constraint edges and weights are projected onto the second task dependency graph based on the correspondence between tasks and interactive atomic units. The behavior transition graph module constructs a behavior transition graph that shares vertices with the second task dependency graph. The edges are undirected weighted transition edges, and the weights are obtained based on the transition frequency and time decay of user interactions. The interactive semantic topology graph module constructs an interactive semantic topology graph that shares vertices with the second task dependency graph and the behavior transition graph, and contains directed semantic constraint edges and undirected weighted transition edges. The association strength calculation module calculates the comprehensive association strength for any pair of vertices in the interaction semantic topology graph based on the linear combination of the weights of the directed semantic constraint edges and the weights of the undirected weighted transition edges, the interaction terms, the fusion weights, and the preset collaborative enhancement coefficients. The fusion weights are adaptively learned for each user. The layout solving module, based on the interactive semantic topology graph, solves the optimized layout configuration of the graphical user interface through an interactive flow optimizer with topological constraints, and applies it to the target software.