Virtual job fair immersive interaction method and system based on AI intelligent matching
Patent Information
- Application Number
- CN202611092733.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2026-07-22
- Publication Date
- 2026-10-16
AI Technical Summary
一方面,基于静态特征或浅层语义的匹配方式难以刻画候选人、岗位及交互行为之间的多维关联关系,无法随候选人实时行为变化动态调整匹配结果,容易导致推荐结果僵化、匹配准确性不足
本发明通过在虚拟招聘会场景中引入候选人节点、岗位节点、展位节点与交互事件节点的异构关联建模方式,将候选人静态信息、岗位需求信息与候选人在虚拟场景中的真实交互行为统一纳入结构化计算体系,克服了现有技术中仅基于简历特征或关键词匹配、无法反映候选人与岗位真实关联关系的问题,使匹配结果能够体现候选人与岗位之间的结构上下文关联强度,从而显著提升岗位匹配的准确性与一致性。
Smart Images

Figure CN122928284A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the fields of information processing and human-computer interaction technology, and in particular to an immersive interactive method and system for virtual job fairs based on AI intelligent matching. Background Technology
[0002] With the development of digital recruitment and virtual reality technology, virtual job fairs have gradually become an important form of talent recruitment for enterprises. Existing solutions typically achieve remote and large-scale operation of recruitment activities by building online booths, displaying job information, and supporting candidates to submit resumes or conduct basic interactions online. In such scenarios, the matching relationship between candidates and positions largely relies on resume keyword search, tag rule filtering, or simple recommendation models, combined with a preset process to guide candidates to the corresponding booth to complete the interaction.
[0003] Existing virtual recruitment technologies still have significant shortcomings in accurately matching candidates and positions and in providing immersive interactive collaboration. On the one hand, matching methods based on static features or shallow semantics are unable to depict the multidimensional relationships between candidates, positions, and interactive behaviors, and cannot dynamically adjust the matching results according to changes in candidates' real-time behavior, which can easily lead to rigid recommendation results and insufficient matching accuracy.
[0004] Therefore, how to provide an immersive interactive method and system for virtual job fairs based on AI intelligent matching is a problem that urgently needs to be solved by those skilled in the art. Summary of the Invention
[0005] This invention proposes an immersive interactive method for virtual job fairs based on artificial intelligence structure perception matching. It adopts a combination of multi-node association modeling and stable matching algorithm to perform unified modeling and dynamic analysis of candidate information, job information and interactive behavior.
[0006] The immersive interactive method and system for virtual job fairs based on AI intelligent matching according to embodiments of the present invention includes the following steps: Construct a 3D virtual job fair scene, generate job booth entities and candidate digital identity nodes, and load basic scene resources; Collect candidate resume information, job requirement information, and candidate interaction behavior data in a virtual scene to construct a heterogeneous graph structure containing candidate nodes, job nodes, booth nodes, and interaction event nodes; Based on the heterogeneous graph structure, the SimRank algorithm is used to calculate the structural context similarity between candidate nodes and job nodes, and generate a structural similarity score. Based on the structural similarity score, candidate preference sequences and job preference sequences are generated, and the preference sequences are input into the Gale–Shapley stable matching model to calculate the one-to-one matching relationship between candidates and jobs. Based on the matching relationship, a binding mapping is established between the candidate's digital identity and the job booth, and the corresponding interaction path is generated in the virtual job fair scenario, loading the digital human interaction instance associated with the booth; Monitor changes in candidates' behavioral events in a virtual scene, identify node updates that cause adjustments to the heterogeneous graph structure, recalculate the structural similarity scores between affected nodes, and reconstruct the corresponding preference sequences; Perform a local stable matching update operation, map the updated matching results to the new binding relationship, and synchronously update the interaction path and the state of the digital human instance.
[0007] Optionally, the SimRank algorithm is used to calculate the structural context similarity between candidate nodes and job nodes, generating a structural similarity score including: Based on the heterogeneous graph structure, a similarity initialization structure between candidate nodes and job nodes is constructed. Based on the similarity propagation principle of the SimRank algorithm, a basic propagation relationship between node pairs is constructed. The basic propagation relationship is based on the set of incoming neighbor nodes of candidate nodes and job nodes. The propagation pair set is formed by combining incoming neighbor node pairs, and a damping factor is set to control the similarity propagation amplitude. At the same time, a similarity convergence threshold is set as the iteration termination condition. Assuming the SimRank basic propagation structure has been completed, perform the following steps: Based on the heterogeneous graph structure, starting with candidate nodes and job nodes respectively, the path is traversed along the preset node type order of candidate node—booth node—interaction event node—job node, and the sequence of node type and edge type that appear in sequence during the traversal is recorded to form a structure traversal record. The structure traversal records are merged to form the same structure projection unit. Each structure projection unit is assigned a projection unit identifier, and the number of times the structure projection unit appears during the traversal is recorded. The structural projection units generated on the candidate node side and the job node side are divided into equivalence classes respectively. When the node type sequence, edge type sequence and traversal length of the two structural projection units are the same, they are divided into the same structural equivalence class, and a unique equivalence class identifier is assigned to each structural equivalence class. A structural equivalence class similarity initialization matrix is constructed based on the structural equivalence class identifier. For equivalence class pairs with the same structural equivalence class identifier, their similarity is initialized to a preset initial value. For equivalence class pairs with different structural equivalence class identifiers, their similarity is initialized to zero. Similarity propagation calculation is performed at the structural equivalence class level. In each round of propagation, for any candidate node and the position node, the structural equivalence class similarity is updated based on the structural equivalence class similarity value of the previous round and the proportion of the corresponding structural projection unit in their respective nodes. Repeat the similarity propagation calculation at the structural equivalence class level until the similarity change of each equivalence class pair in the structural equivalence class similarity matrix is lower than the convergence threshold in two consecutive rounds, then terminate the similarity propagation calculation. Based on the final structural equivalence class similarity matrix, the similarity results at the structural equivalence class level are reflected back to the candidate node and job node level. According to the proportion of the structural projection units contained in the candidate node and job node in the corresponding structural equivalence class, the structural equivalence class similarity is weighted and summarized to generate the structural context similarity score between the candidate node and job node.
[0008] Optionally, generate a one-to-one match between candidates and job positions: Obtain the structural context similarity score between candidate nodes and job nodes, and for each candidate node, select job nodes that have structural projection association with it as a candidate matching set; For each candidate node, only within the corresponding candidate matching set, the job nodes are sorted from high to low according to the structural context similarity score, generating a job preference sequence corresponding to the candidate node, and recording the ranking of each job in the sequence; For each job node, based on the structural context similarity score, candidate nodes that have a structural projection association with the job node are selected as a candidate matching set, and within the set, they are sorted from high to low according to the similarity score to generate the candidate preference sequence corresponding to the job node. The generated candidate preference sequence and job preference sequence are written into the matching input table respectively. Each record in the matching input table contains the candidate number, job number and corresponding preference ranking, and only contains candidate-job combinations that have structural projection relationship. Based on the matching input table, the Gale–Shapley stable matching model is called to perform one-to-one matching calculation. During the matching process, each candidate node and the job node are limited to participating in at most one matching relationship, and a stable matching result is output. The stable matching results are recorded as a matching result table, which includes at least the candidate number, the job number, and the matching confirmation identifier.
[0009] Optionally, the Gale–Shapley stable matching model includes: Based on the matching input table, a set of candidate IDs and a set of job IDs are generated respectively. For each candidate ID, the job preference sequence is read, and for each job ID, the candidate preference sequence is read. Convert the candidate preference sequence into a candidate ranking table, and convert the job preference sequence into a job ranking table. Initialize the candidate status table, and write a proposal pointer and the currently matched job number to each candidate number in the candidate status table. The proposal pointer is initialized to point to the first position in the job preference sequence, and the currently matched job number is initialized to empty. Initialize the job status table, and write the currently provisional candidate number to each job number in the job status table. The currently provisional candidate number is initialized to empty. The steps for constructing the candidate proposal set are as follows: Retrieve the number of interaction event records by candidate number and job number, and combine this with a check to see if there are corresponding records for candidate number and job number in the input table. Generate a table of eligible proposal tags that satisfies the following conditions: ; in, Number the candidates. For job positions, Candidate number in the event log table With job number The corresponding number of interaction event records, To match the available candidate-job combinations in the input table, Mark as a proposal-ready tag; Initialize the queue of unmatched candidates by writing the candidate IDs from the candidate status table that are currently empty for the matched job position to the queue of unmatched candidates. Retrieve a candidate ID from the unmatched candidate queue, and read the job ID pointed to by the proposal pointer in the corresponding job preference sequence; when the job preference sequence has been read completely, remove the candidate ID from the unmatched candidate queue; when the job preference sequence has not been read completely, query the available proposal flag table. The value of , if Then move the proposal pointer to the next position and continue reading the next job number until the proposal is found. The job number or sequence terminates; When the read satisfies When the job number is determined, a proposal record is generated and submitted to that job number. The proposal record must contain at least the candidate number, job number, and proposal position. At the same time, the proposal pointer for that candidate number is moved to the next position. After receiving the proposal record for the job number, the current provisional candidate number for that job number is read from the job status table. When the current provisional candidate number is empty, the proposal candidate number is written into the job status table as the current provisional candidate number, and the job number is written into the candidate status table as the current matching job number for that candidate. When the current provisional candidate number is not empty, read the "Job Number - Proposal Candidate Number - Rank" and "Job Number - Current Provisional Candidate Number - Rank" in the job ranking table. If the proposal candidate's rank takes precedence over the current provisional candidate's rank, replace the current provisional candidate number in the job status table with the proposal candidate's rank, and write the job number into the candidate status table as the current matching job number for the proposal candidate. At the same time, set the current matching job number of the replaced candidate to null and write it back to the unmatched candidate queue. If the proposal candidate's rank is inferior to the current provisional candidate's rank, keep the job status table unchanged and write the proposal candidate's rank back to the unmatched candidate queue. The process of "candidate reads available positions - generates proposal - position is temporarily set / replaced" is executed repeatedly until the queue of unmatched candidates is empty, or all candidates in the queue of unmatched candidates have reached the end of the position preference sequence and no more proposal records can be generated. Execute the matching confirmation output step: After the queue terminates, generate an initial set of matching pairs based on the candidate status table and the job status table. For each job number, take its current provisional candidate number to form a matching record and write it into the matching result table. Perform stability and consistency checks on the matching result table: for any candidate number With any job number Furthermore, if the two do not form a matching pair in the matching result table, the candidate-to-job ranking in the candidate ranking table and the job-to-candidate ranking in the job ranking table are read separately, and the following "blocking pair" judgment conditions are applied for verification: ; in, This represents the candidate number in the matching results table. The corresponding job title number, This indicates the job number in the matching results table. The corresponding matching candidate number, The ranking of candidates is given by the ranking table. The ranking given in the job position ranking table; When there are candidate numbers that do not meet the above criteria. With job number At that time, number the candidate. Rewrite the unmatched candidate queue, and set the current matched job number of the candidate in the candidate status table to null. At the same time, set the current provisional candidate number of the job number associated with it in the job status table to null. Then, re-execute the process of "candidate reads available job positions - generates proposal - provisional / replacement of job position" until the matching result table meets the above judgment conditions for all unmatched pairs. Output the final matching result table, which should contain at least the candidate number, job number, and confirmation flag, representing a stable one-to-one matching relationship between candidates and jobs.
[0010] Optionally, generating the interaction path and loading the digital human interaction instance includes: Map each candidate number and job number matching pair in the matching results table to the booth space identifier to generate a candidate-booth binding table. Read the spatial coordinates and interactive area identifier of the booth node in the virtual scene, generate a path point sequence from the candidate to the target booth based on the candidate's digital identity and current position in the scene, and write the path point sequence into the interactive path table; Configure an interaction trigger point at the end of the interaction path, and set the trigger condition as the candidate node enters the interaction boundary or executes the entry command. After triggering, retrieve the booth number and job number corresponding to the candidate in the binding table. The system searches for job-related information based on booth number, loads the corresponding digital human template from the job interaction configuration, loads candidate resume summary data using candidate number as index, and combines them to generate a set of input parameters for digital human instance. Deploy the loaded digital human instance to the corresponding booth node, assign a session identifier to the interactive instance, and write the candidate number, job number and instance identifier into the interactive session table. When a candidate's digital identity node enters the interactive area of the target booth, an event listening channel is established between the candidate and the digital human instance. The candidate's behavior is mapped to digital human interactive input events, and the digital human is driven to respond by generating language output and action feedback. The binding table, interaction path table, and interaction session table are used together to control the candidate interaction process status, and support the scheduling, reuse, and termination control of interaction instances, so as to realize the dynamic interaction mapping between candidates and booths in the virtual recruitment fair scenario.
[0011] Optionally, reconstructing the corresponding preference sequence includes: Establish a candidate behavior event monitoring channel to write key candidate behavior events in the virtual job fair scenario into the behavior event log; parse the newly added behavior event records to extract the candidate number, target booth number, event type and timestamp; In a heterogeneous graph structure, identify the candidate nodes and booth nodes involved, determine whether to generate new interactive event nodes or update the original edge attributes based on the event type, and adjust the graph structure accordingly. Locate the structural path containing the update event node to form a set of affected candidate-job node pairs; call the local SimRank algorithm to recalculate the structural similarity of the node pairs in this set to obtain the updated structural similarity score; Based on the scoring results, the candidate preference sequence and job preference sequence are locally updated to generate new preference sequence entries.
[0012] Optionally, perform a locally stable matching update operation, including: Identify the affected candidate IDs and their related job IDs, and construct a local matching input table; call the Gale–Shapley stable matching model, and perform matching calculations only on the affected subset of candidates and job subsets to generate an updated set of matching pairs; Based on the matching pairs in this set, update the binding relationship between candidate digital identity and job booth in the binding mapping table; for the changed binding relationship, recalculate the path point sequence from the candidate to the new target booth, replace the corresponding path item in the interaction path table, and redeploy the interaction trigger point at the end of the new path; For the bound booths, load the corresponding digital human instances, assign new interactive session identifiers, and update the mapping relationship between candidate numbers and instance identifiers in the interactive session table; If a candidate has already established an interactive instance with another booth, the original instance identifier will be deregistered, resources will be released, and the event listener channel status will be updated to complete the synchronous update of the local binding mapping and the virtual interactive state.
[0013] The beneficial effects of this invention are: This invention introduces a heterogeneous association modeling approach for candidate nodes, job nodes, booth nodes, and interactive event nodes in a virtual job fair scenario. It integrates candidate static information, job requirement information, and the candidate's real interactive behavior in the virtual scenario into a structured computing system. This overcomes the problem in existing technologies that rely solely on resume features or keyword matching and cannot reflect the true relationship between candidates and jobs. The matching results can reflect the strength of the structural contextual association between candidates and jobs, thereby significantly improving the accuracy and consistency of job matching.
[0014] This invention generates bidirectional preference sequences based on structural context similarity and introduces a stable matching calculation mechanism to perform one-to-one constraint matching between candidates and positions. This avoids the matching conflicts, many-to-many competition, or frequent changes caused by the independent output of recommendation models in existing virtual recruitment systems, thus forming a stable and sustainable binding relationship between candidates and positions and ensuring the certainty and controllability of the position allocation process in virtual recruitment fairs. Attached Figure Description
[0015] The accompanying drawings are provided to further illustrate the invention and form part of the specification. They are used in conjunction with embodiments of the invention to explain the invention and do not constitute a limitation thereof. In the drawings: Figure 1 The flowchart shows the immersive interactive method and system for virtual job fairs based on AI intelligent matching proposed in this invention. Figure 2 This is a schematic diagram of the SimRank algorithm processing flow proposed in this invention. Detailed Implementation
[0016] The present invention will now be described in further detail with reference to the accompanying drawings. These drawings are simplified schematic diagrams, illustrating only the basic structure of the invention, and therefore only show the components relevant to the invention.
[0017] refer to Figure 1 - Figure 2 An immersive interactive method and system for virtual job fairs based on AI intelligent matching includes the following steps: The virtual space deployment module constructs a 3D virtual job fair scene that supports multi-user access, creates job booth entities and candidate digital identity nodes, and loads basic environmental resources; The data fusion modeling module collects candidate resume information, job requirement information, and interaction records between candidates and booths, and generates a heterogeneous graph structure containing candidate nodes, job nodes, booth nodes, and interaction event nodes. The structural preference generation module receives a heterogeneous graph structure, performs SimRank model calculations on candidate nodes and job nodes to obtain structural similarity scores, and generates candidate preference sequences and job preference sequences based on the scores. The stable matching and binding module receives candidate preference sequences and job preference sequences, executes the Gale–Shapley stable matching algorithm, outputs matching pairs, and establishes a binding mapping relationship between candidate digital identities and booth entities based on the matching pairs. The interactive session generation module receives the binding mapping relationship, generates an interactive path for each binding relationship in the virtual space, and loads the digital human interactive instance corresponding to the booth entity to form an interactive access channel after the candidate enters the booth. The structure update monitoring module detects structural changes related to interaction event nodes in the heterogeneous graph. When a change occurs, it updates the structural similarity score between the corresponding candidate node and the job node and reconstructs the affected preference sequence. The matching result scheduling module locally updates the stable matching results based on the reconstructed preference sequence and inputs the updated binding mapping as a parameter to the interactive session generation module.
[0018] In this embodiment, the modules are interconnected using the following method: Construct a 3D virtual job fair scene, generate job booth entities and candidate digital identity nodes, and load basic scene resources; Collect candidate resume information, job requirement information, and candidate interaction behavior data in a virtual scene to construct a heterogeneous graph structure containing candidate nodes, job nodes, booth nodes, and interaction event nodes; Based on the heterogeneous graph structure, the SimRank algorithm is used to calculate the structural context similarity between candidate nodes and job nodes, and generate a structural similarity score. Based on the structural similarity score, candidate preference sequences and job preference sequences are generated, and the preference sequences are input into the Gale–Shapley stable matching model to calculate the one-to-one matching relationship between candidates and jobs. Based on the matching relationship, a binding mapping is established between the candidate's digital identity and the job booth, and the corresponding interaction path is generated in the virtual job fair scenario, loading the digital human interaction instance associated with the booth; Monitor changes in candidates' behavioral events in a virtual scene, identify node updates that cause adjustments to the heterogeneous graph structure, recalculate the structural similarity scores between affected nodes, and reconstruct the corresponding preference sequences; Perform a local stable matching update operation, map the updated matching results to the new binding relationship, and synchronously update the interaction path and the state of the digital human instance.
[0019] In this implementation, the generation of job booth entities and candidate digital identity nodes, and the loading of basic scene resources include: A global spatial coordinate system for the virtual job fair scenario is determined, and venue topology data is generated according to preset functional zoning rules. The venue topology data includes at least zoning identifiers, zoning spatial boundaries, connectivity relationships between zoning zones, and a set of entry points, which are used to define the booth deployment area, candidate passage area, and interaction trigger area. Based on the venue topology data, a set of booth anchor points is generated within the booth deployment area. A unique anchor point identifier is assigned to each booth anchor point, and the corresponding job identifier, spatial coordinates, orientation information and interaction boundary range are written in, generating a job booth entity that corresponds one-to-one with the job data. For each job booth entity, a booth object structure is constructed. The booth object structure includes at least spatial location data, interaction boundary data, and interaction event triggering identifiers. The booth object structure is then registered as a booth node instance in the heterogeneous graph. A digital identity node is generated for each candidate. The digital identity node includes at least an identity identifier, a role model index, a behavior record identifier, and a node association identifier. The digital identity node is then registered as a candidate node instance in the heterogeneous graph. Based on digital identity nodes and job booth entities, a sequence of spatial path points that candidates can walk on is generated in the virtual job fair scenario, and interactive trigger points are configured within the booth interaction boundary. When a digital identity node enters the interaction boundary or triggers a preset interactive action, a corresponding interactive event record is generated. The interactive event record is used to form an interactive event node. Load the basic environment resources associated with the job booth entity and digital identity node. The basic environment resources include at least scene geometric model, rendering resources, interactive scripts and event listening components, and bind the resource index with the corresponding booth node instance or candidate node instance. Complete the unified registration of job booth entities, candidate digital identity nodes, and interactive event nodes, forming an object instance table, a node registry table, and an event log table.
[0020] In this embodiment, a heterogeneous graph structure including candidate nodes, job posting nodes, booth nodes, and interactive event nodes is constructed, including the following steps: Extract the candidate ID, skill keywords, career experience sequence, and historical job posting ID from the candidate's resume information, and generate a candidate node based on the candidate ID. Write the candidate ID, skill keyword list, and experience code sequence as the attribute values of the node. Extract the job number, skill requirement list, and job tag from the job requirements information, generate a job node based on the job number, and write the job number, skill requirement list, and tag code into the attribute value of the job node; Based on the booth deployment results, obtain the booth anchor point number, and generate booth nodes by mapping the booth anchor point to the job number. Write the booth number, associated job number, booth location coordinates and booth status identifier into the booth node. Collect candidate interaction logs in the virtual scene, filter out booth access actions and their corresponding candidate number, booth number, access timestamp and interaction type, generate interaction event nodes according to the event record order, and write event number, initiating node number, target node number and interaction action type to each interaction event node; In a graph structure, establish edge connections between nodes, where: Based on the intersection of candidate skill keywords and job skill requirements keywords, a matching edge is created between the candidate node and the job node, and the weight of the matching edge is the degree of skill overlap between the two. Based on the frequency of candidates' visits to the booth, an access edge is created between the candidate node and the booth node, and the number of visits is used as the edge weight; For each interactive event node, an event connection edge is established between the node and the candidate node, booth node, or job node to form an interactive behavior path. The generated candidate nodes, job nodes, booth nodes, and interactive event nodes, along with their edge connections, are all written into a graph structure object to complete the construction of the heterogeneous graph structure.
[0021] In this embodiment, the SimRank algorithm is used to calculate the structural context similarity between candidate nodes and job nodes, generating a structural similarity score including: Based on the heterogeneous graph structure, a similarity initialization structure between candidate nodes and job nodes is constructed, which specifically includes: enumerating the set of node pairs formed by candidate nodes and job nodes, and setting the initial similarity value of node pairs other than the node itself to zero; and determining the set of incoming neighbor nodes corresponding to each candidate node and job node based on the incoming edge relationship of nodes in the heterogeneous graph. Based on the similarity propagation principle of the SimRank algorithm, a basic propagation relationship between node pairs is constructed. The basic propagation relationship is based on the set of incoming neighbor nodes of candidate nodes and job nodes. The propagation pair set is formed by combining incoming neighbor node pairs, and a damping factor is set to control the similarity propagation amplitude. At the same time, a similarity convergence threshold is set as the iteration termination condition. Assuming the SimRank basic propagation structure has been completed, execute: Based on the heterogeneous graph structure, starting with candidate nodes and job nodes respectively, the path is traversed along the preset node type order of candidate node—booth node—interaction event node—job node, and the sequence of node type and edge type that appear in sequence during the traversal is recorded to form a structure traversal record. The structure traversal records are merged to form the same structure projection unit. Each structure projection unit is assigned a projection unit identifier, and the number of times the structure projection unit appears during the traversal is recorded. The structural projection units generated on the candidate node side and the job node side are divided into equivalence classes respectively. When the node type sequence, edge type sequence and traversal length of the two structural projection units are the same, they are divided into the same structural equivalence class, and a unique equivalence class identifier is assigned to each structural equivalence class. A structural equivalence class similarity initialization matrix is constructed based on the structural equivalence class identifier. For equivalence class pairs with the same structural equivalence class identifier, their similarity is initialized to a preset initial value. For equivalence class pairs with different structural equivalence class identifiers, their similarity is initialized to zero. Similarity propagation calculation is performed at the structural equivalence class level. In each round of propagation, for any candidate node and the position node, the structural equivalence class similarity is updated based on the structural equivalence class similarity value of the previous round and the proportion of the corresponding structural projection unit in their respective nodes. Repeat the similarity propagation calculation at the structural equivalence class level until the similarity change of each equivalence class pair in the structural equivalence class similarity matrix is lower than the convergence threshold in two consecutive rounds, then terminate the similarity propagation calculation. Based on the final structural equivalence class similarity matrix, the similarity results at the structural equivalence class level are mapped back to the candidate node and job node level. According to the proportion of the structural projection units contained in the candidate node and job node in the corresponding structural equivalence class, the structural equivalence class similarity is weighted and summarized to generate the structural context similarity score between the candidate node and job node. The generated structural context similarity score is used to construct candidate preference sequences and job preference sequences for subsequent stable matching steps.
[0022] In this embodiment, the structural context similarity score calculation process is based on the well-known SimRank algorithm framework in the field of graph similarity calculation, and improvements are made to the structural propagation path and propagation unit hierarchy. The basic calculation process of the SimRank algorithm is as follows: After the heterogeneous graph is constructed, all node pairs whose similarity is to be calculated are first initialized, and a similarity scoring matrix is constructed. In this process, the initial similarity between any two distinct nodes is set to zero, and the similarity between a node and itself is set to one. The in-neighbor set of all nodes in the graph is then obtained, denoted as […]. and , respectively corresponding to nodes With nodes The set of incoming adjacent points.
[0023] In each iteration, for any pair of distinct nodes and Based on the similarity scores between node pairs in its in-neighbor set from the previous round, the similarity value for the current round is updated by averaging. The iterative formula is as follows: ; in, Indicates the first Nodes during round iteration and Similarity score, The decay factor is used to control the rate of similarity decay. The above iterative update is performed on all node pairs until all score changes are less than the preset convergence threshold, and the final node pair similarity matrix is obtained.
[0024] In this embodiment, constructing the structural projection unit includes: Starting from the candidate node or job node, traverse the heterogeneous graph structure along the preset path pattern of candidate node—booth node—interaction event node—job node, record the node type sequence and edge type sequence on the traversal path, and form a structure traversal record. Merge structure traversal records with the same node type sequence and edge type sequence to generate structure projection units, assign a unique identifier to each structure projection unit, and record the number of times the projection unit appears; The structural projection units associated with each candidate node or job node are stored and used for subsequent structural equivalence class partitioning and similarity propagation operations.
[0025] In this embodiment, performing similarity propagation calculation at the structural equivalence class level includes: The structural projection units of nodes are divided according to the node type sequence, edge type sequence, and traversal length to generate structural equivalence classes. Each structural equivalence class has a unique identifier. Construct an initial similarity matrix between structural equivalence classes, and in each round of propagation, update the similarity value between structural equivalence classes in the current round based on the similarity value of the previous round and the proportion of structural projection units appearing in their respective nodes; When the change in structural equivalence class similarity is less than the preset threshold for two consecutive rounds, the iteration is terminated, and the structural equivalence class similarity results are reflected back to the similarity score between candidate nodes and job nodes.
[0026] In this implementation, a one-to-one matching relationship between candidates and job positions is generated: Obtain the structural context similarity score between candidate nodes and job nodes, and for each candidate node, select job nodes that have structural projection association with it as a candidate matching set; For each candidate node, only within the corresponding candidate matching set, the job nodes are sorted from high to low according to the structural context similarity score, generating a job preference sequence corresponding to the candidate node, and recording the ranking of each job in the sequence; For each job node, based on the structural context similarity score, candidate nodes that have a structural projection association with the job node are selected as a candidate matching set, and within the set, they are sorted from high to low according to the similarity score to generate the candidate preference sequence corresponding to the job node. The generated candidate preference sequence and job preference sequence are written into the matching input table respectively. Each record in the matching input table contains the candidate number, job number and corresponding preference ranking, and only contains candidate-job combinations that have structural projection relationship. Based on the matching input table, the Gale–Shapley stable matching model is called to perform one-to-one matching calculation. During the matching process, each candidate node and the job node are limited to participating in at most one matching relationship, and a stable matching result is output. The stable matching results are recorded as a matching result table, which includes at least the candidate number, job number, and matching confirmation identifier, and is used as the input basis for subsequent virtual booth binding and interactive instance generation.
[0027] In this embodiment, the Gale–Shapley stable matching model includes: Based on the matching input table, a set of candidate IDs and a set of job IDs are generated respectively. For each candidate ID, the job preference sequence is read, and for each job ID, the candidate preference sequence is read. Convert the candidate preference sequence into a candidate ranking table, and convert the job preference sequence into a job ranking table. The candidate ranking table is written in the format of "candidate number - job number - ranking", and the job ranking table is written in the format of "job number - candidate number - ranking". Initialize the candidate status table, and write a proposal pointer and the currently matched job number to each candidate number in the candidate status table. The proposal pointer is initialized to point to the first position in the job preference sequence, and the currently matched job number is initialized to empty. Initialize the job status table, and write the currently provisional candidate number to each job number in the job status table. The currently provisional candidate number is initialized to empty. The steps for constructing the candidate proposal set are as follows: Based on the event record table of claim 4, the number of interaction event records is retrieved by candidate number and job number, and a table of proposeable tags is generated by matching whether there are corresponding records for candidate number and job number in the input table, satisfying the following: ; in, Number the candidates. For job positions, Candidate number in the event log table With job number The corresponding number of interaction event records, To match the available candidate-job combinations in the input table, Mark as a proposal-ready tag; Initialize the queue of unmatched candidates by writing the candidate IDs from the candidate status table that are currently empty for the matched job position to the queue of unmatched candidates. Retrieve a candidate ID from the unmatched candidate queue, and read the job ID pointed to by the proposal pointer in the corresponding job preference sequence; when the job preference sequence has been read completely, remove the candidate ID from the unmatched candidate queue; when the job preference sequence has not been read completely, query the available proposal flag table. The value of , if Then move the proposal pointer to the next position and continue reading the next job number until the proposal is found. The job number or sequence terminates; When the read satisfies When the job number is determined, a proposal record is generated and submitted to that job number. The proposal record must contain at least the candidate number, job number, and proposal position. At the same time, the proposal pointer for that candidate number is moved to the next position. After receiving the proposal record for the job number, the current provisional candidate number for that job number is read from the job status table. When the current provisional candidate number is empty, the proposal candidate number is written into the job status table as the current provisional candidate number, and the job number is written into the candidate status table as the current matching job number for that candidate. When the current provisional candidate number is not empty, read the "Job Number - Proposal Candidate Number - Rank" and "Job Number - Current Provisional Candidate Number - Rank" in the job ranking table. If the proposal candidate's rank takes precedence over the current provisional candidate's rank, replace the current provisional candidate number in the job status table with the proposal candidate's rank, and write the job number into the candidate status table as the current matching job number for the proposal candidate. At the same time, set the current matching job number of the replaced candidate to null and write it back to the unmatched candidate queue. If the proposal candidate's rank is inferior to the current provisional candidate's rank, keep the job status table unchanged and write the proposal candidate's rank back to the unmatched candidate queue. The process of "candidate reads available positions - generates proposal - position is temporarily set / replaced" is executed repeatedly until the queue of unmatched candidates is empty, or all candidates in the queue of unmatched candidates have reached the end of the position preference sequence and no more proposal records can be generated. Execute the matching confirmation output step: After the queue terminates, generate an initial set of matching pairs based on the candidate status table and the job status table. For each job number, take its current provisional candidate number to form a matching record and write it into the matching result table. Perform stability and consistency checks on the matching result table, specifically: for any candidate number (c) and any job number Furthermore, if the two do not form a matching pair in the matching result table, the candidate-to-job ranking in the candidate ranking table and the job-to-candidate ranking in the job ranking table are read separately, and the following "blocking pair" judgment conditions are applied for verification:
[0028] in, Represents the candidate number in the matching results table. The corresponding job title number, This indicates the job number in the matching results table. The corresponding matching candidate number, The ranking of candidates is given by the ranking table. The ranking given in the job position ranking table; When there are candidate numbers that do not meet the above criteria. With job number At that time, number the candidate. Rewrite the unmatched candidate queue, and set the current matched job number of the candidate in the candidate status table to null. At the same time, set the current provisional candidate number of the job number associated with it in the job status table to null. Then, re-execute the process of "candidate reads available job positions - generates proposal - provisional / replacement of job position" until the matching result table meets the above judgment conditions for all unmatched pairs. Output the final matching result table, which contains at least the candidate number, job number, and confirmation identifier to represent a stable one-to-one matching relationship between candidates and jobs. Pass the matching result table to subsequent binding mapping steps.
[0029] In this embodiment, the proposal marking formula The initial source of this is the indicator function / logic decision in mathematics (set theory and discrete mathematics), used to map "whether a certain condition is true" to a binary result; the derivation made by this application on this basis is to concretize the condition "whether the candidate-position is allowed to enter the Gale-Shapley proposal domain" into a logical AND of two verifiable conditions: one is the count from the event log table. (The number of interaction event records, in "records", is a discrete count), and secondly, the available combinatorial membership relations from the matching input table. (Set membership determination, binary), thus obtaining The expression consists of dimensionless Boolean / integer values on both sides: the right side is determined by the logical expression of "count comparison + set member judgment", which is then mapped to 0 / 1, with consistent dimensions.
[0030] Blocking decision The initial source belongs to the definition of "blocking pair" in the classic Gale–Shapley stable matching theory: if there exists a pair of unmatched pairs... If both parties prefer each other to their current matched partners, then the match is unstable; where... , The position function derived from the preference sequence (discrete mathematics / sorting theory). , Derived from the matching map (standard notation of matching theory); the "modification" of this application is not in the original decision formula for blocking pairs itself, but in the process of making this decision an explicit consistency check constraint for the matching confirmation output step: checking the blocking pairs of all unmatched pairs in the output matching result table, and triggering a rollback and repropagation if a blocking pair is found; the dimensions of the left and right sides of the formula are also consistent: The output is a dimensionless integer place value, and the comparisons on both sides are Boolean values. , It is still a Boolean logic operation, and the whole thing is a dimensionless truth / false judgment, which is in line with common sense.
[0031] In this embodiment, generating the interaction path and loading the digital human interaction instance includes: Map each candidate ID and job ID matching pair in the matching results table to the booth space identifier to generate a candidate-booth binding table. The binding table records the candidate's digital identity identifier, the target booth number, and the corresponding job ID. Read the spatial coordinates and interactive area identifier of the booth node in the virtual scene, generate a path point sequence from the candidate to the target booth based on the candidate's digital identity and current position in the scene, and write the path point sequence into the interactive path table; Configure an interaction trigger point at the end of the interaction path, and set the trigger condition as the candidate node enters the interaction boundary or executes the entry command. After triggering, retrieve the booth number and job number corresponding to the candidate in the binding table. The system searches for job-related information based on booth number, loads the corresponding digital human template from the job interaction configuration, loads candidate resume summary data using candidate number as index, and combines them to generate a set of input parameters for digital human instance. Deploy the loaded digital human instance to the corresponding booth node, assign a session identifier to the interactive instance, and write the candidate number, job number and instance identifier into the interactive session table to identify the exclusive interactive channel between the candidate and the job. When a candidate's digital identity node enters the interactive area of the target booth, an event listening channel is established between the candidate and the digital human instance. The candidate's behavior is mapped to digital human interactive input events, and the digital human is driven to respond by generating language output and action feedback. The binding table, interaction path table, and interaction session table are used together to control the candidate interaction process status, and support the scheduling, reuse, and termination control of interaction instances, so as to realize the dynamic interaction mapping between candidates and booths in the virtual recruitment fair scenario.
[0032] In this embodiment, structural similarity recalculation and preference sequence reconstruction are performed, including: Establish a candidate behavior event monitoring channel to write key behavior events of candidate nodes in the virtual scene into the behavior event log. Key behavior events include booth visits, digital human dialogues, job collections, and behavior interruptions. Incremental parsing is performed on newly added records in the behavior event log to extract candidate number, target booth number, event type and event timestamp, and to generate an incremental event dataset. Based on the candidate ID and target booth ID in the incremental event dataset, locate the affected candidate node and booth node in the heterogeneous graph structure, and determine whether to generate new interactive event nodes or update the edge attributes of existing interactive event nodes based on the behavior event type. If it is determined that a new interactive event node will be generated, a new event node will be created between the candidate node and the booth node, and a behavior edge from the candidate node to the event node and a trigger edge from the event node to the booth node will be added to the heterogeneous graph. After the update is completed, locate all structural paths containing the interactive event node, mark the candidate nodes and job nodes in the path, and form a set of affected node pairs; For the affected node pair set, perform local recalculation of structural context similarity, call the SimRank algorithm process, and perform propagation calculation only for node pairs involving this set to obtain the updated structural similarity score; Based on the updated structural similarity scores, the corresponding candidate preference sequences and job preference sequences are locally reordered, and job or candidate entries involving score changes are updated first, generating updated preference sequence table entries and writing them into the preference sequence table.
[0033] In this embodiment, a local stable matching update operation is performed, mapping the updated matching results to new binding relationships, and synchronously updating the interaction path and the digital human instance state, including: Receive the generated updated candidate preference sequence and job preference sequence, extract the candidate ID set and job ID set involved in the preference sequence change, and construct a local matching input subset; Call the Gale-Shapley stable matching calculation process on the local matching input subset to regenerate the local matching result table. The matching result table should at least contain the candidate number, job number and matching status identifier. Compare the partial matching result table with the original matching result table, identify the changed matching pairs, extract the candidate number and job number combination before and after the change, and generate a matching change mapping table; Based on the matching change mapping table, update the candidate-booth binding table, write the newly added matching pairs into the binding table, and mark the invalid binding pairs as invalid, forming the latest binding status record; For newly added binding pairs, a new path point sequence is generated based on the booth space coordinates and the candidate's current location, the interaction path table is updated, and an interaction trigger point and a candidate behavior event listener are configured for the destination booth; Load the newly added binding to the corresponding job interaction configuration and candidate resume summary data, generate a new digital human interaction instance, assign a session identifier, write it to the interaction session table, and activate the interaction channel; For invalid bindings, perform state recycling operations on the corresponding digital human interaction instance, close the associated event listeners and language generation channels, and update its session identifier status to "terminated". Finally, the updated binding table, interaction path table, and interaction session table are pushed to the virtual job fair control engine to drive the dynamic updating of interaction instances and resource scheduling between candidates and booths in the virtual space.
[0034] Example: To illustrate the specific implementation of the AI-based intelligent matching-based immersive interactive method and system for virtual job fairs described in this invention, the invention is applied to a large-scale online virtual job fair environment. This virtual job fair is open simultaneously to multiple industry sectors, with numerous employers and candidates participating. The job fair is presented in a three-dimensional virtual space, where candidates enter the virtual venue with digital identities, browsing job postings, visiting booths, and engaging in interactive communication. Because such job fairs typically involve a large number of job postings, a large number of candidates, and complex and frequently changing interactive behaviors, traditional virtual recruitment systems based on static resume screening or keyword recommendations struggle to accurately depict the true matching relationship between candidates and job postings, easily leading to inaccurate job recommendations, frequent booth switching by candidates, and excessively high communication costs for employers.
[0035] In this embodiment, the virtual job fair platform first deploys a virtual space construction module on the server side to generate a 3D virtual job fair scene that supports multiple users online simultaneously. This scene is pre-divided into booth deployment areas, candidate access areas, and interaction trigger areas, with each job posting corresponding to a unique job booth entity. The job booth entity exists in the system as a structured object, containing at least a job identifier, spatial coordinate information, interaction boundary parameters, and interaction event trigger configuration. Simultaneously, the system generates a unique digital identity node for each candidate entering the job fair. This digital identity node contains at least an identity identifier, a behavior record index, and a node association identifier, used for continuous tracking and modeling of candidates within the system.
[0036] During the virtual job fair, the data fusion and modeling module continuously collects and processes data from multiple sources. Candidate resume information is written into candidate node attributes in structured field format, while job requirement information is written into job node attributes in job attribute format. Candidate behavior data in the virtual space is captured as events. When a candidate enters the interaction boundary of a job booth, interacts with a digital avatar, or saves a job posting, the system instantly generates corresponding interaction event records. Each interaction event is instantiated as an interaction event node in the system and associated with candidate nodes through behavior edges and with corresponding job booth nodes through trigger edges, thus gradually building a heterogeneous structure containing candidate nodes, job nodes, booth nodes, and interaction event nodes.
[0037] After the heterogeneous structure is constructed, the structure preference generation module begins to perform structural context similarity calculation. This module internally calls the SimRank calculation process, using candidate nodes and job postings as the calculation objects. The system first initializes the similarity matrix between candidate and job postings and determines the set of incoming neighbors for each node based on the incoming edge relationships in the heterogeneous structure. During similarity propagation, the system limits the propagation path to follow the node type order of candidate nodes, booth nodes, interactive event nodes, and job postings, traversing the structural paths between candidate and job postings. Paths with the same node type sequence and edge type sequence are grouped into structural projection units, and similarity propagation calculation is performed at the structural equivalence class level until the similarity result meets the convergence condition. The final structural context similarity score is reflected back to the candidate and job posting level to characterize the strength of the association between candidates and jobs in the current recruitment fair state.
[0038] After obtaining the structural context similarity score, the system further generates candidate preference sequences and job preference sequences. For each candidate node, the system generates a job preference sequence only from the set of job nodes with which it has a structural projection association, ranked from high to low according to the structural similarity score. For each job node, the system generates a candidate preference sequence in the same way. These preference sequences are written into the matching input table as input data for subsequent stable matching calculations.
[0039] After reading the matching input table, the stable matching binding module calls the Gale-Shapley stable matching calculation process to perform one-to-one matching. Internally, the system maintains candidate status tables and job status tables, and performs proposal, provisional, and replacement operations based on preference sequences. During the matching process, the system limits each candidate node and job node to at most one matching relationship, and avoids blocking matching pairs through stability consistency checks. The final generated stable matching results are recorded in a matching result table, which represents the stable binding relationship between candidates and jobs.
[0040] After the matching results are generated, the interactive session generation module establishes a binding mapping relationship between the candidate's digital identity and the job booth based on the matching result table. The system automatically generates a path point sequence from the candidate's current location in the virtual space to the target booth's spatial coordinates, and loads the corresponding job's digital human interactive instance at the path's endpoint. Once the candidate enters the booth, the system maps the candidate's behavior to digital human interactive input through an event listening channel, thus forming a continuous and stable immersive interactive process.
[0041] During the job fair, the structure update monitoring module continuously listens for changes in candidate behavior. When a candidate visits a new booth, experiences a significant change in interaction frequency, or adds a post to their favorites, the system instantly updates the interaction event nodes in the heterogeneous structure and identifies the affected candidate and job posting sets. For this set, the system only performs local structural similarity recalculation and performs local stable matching updates based on the updated preference sequence, thus avoiding the system burden caused by global recalculation.
[0042] The above description is only a preferred embodiment of the present invention, but the scope of protection of the present invention is not limited thereto. Any equivalent substitutions or modifications made by those skilled in the art within the scope of the technology disclosed in the present invention, based on the technical solution and inventive concept of the present invention, should be covered within the scope of protection of the present invention.
Claims
1. An immersive interactive virtual job fair system based on AI intelligent matching, characterized in that: include: The virtual space deployment module constructs a three-dimensional virtual job fair scene, creates physical job booths and digital identity nodes for candidates, and loads basic environmental resources; The data fusion modeling module collects candidate resume information, job requirement information, and interaction records between candidates and booths to generate a heterogeneous graph structure. The structural preference generation module receives heterogeneous graph structures, performs SimRank model calculations to obtain structural similarity scores, and generates candidate preference sequences and job preference sequences. The stable matching and binding module receives candidate preference sequences and job preference sequences, executes the Gale–Shapley stable matching algorithm, outputs matching pairs, and establishes a binding mapping relationship between candidate digital identities and booth entities. The interactive session generation module receives the binding mapping relationship, generates the interactive path, and loads the digital human interactive instance corresponding to the booth entity to form the interactive access channel after the candidate enters the booth. The structure update monitoring module detects structural changes related to interaction event nodes in the heterogeneous graph and reconstructs the affected preference sequence. The matching result scheduling module locally updates the stable matching results based on the reconstructed preference sequence and inputs the updated binding mapping as a parameter to the interactive session generation module.
2. An immersive interactive method for virtual job fairs based on AI intelligent matching, characterized in that: The modules are connected in the following way: Construct a 3D virtual job fair scene, generate job booth entities and candidate digital identity nodes, and load basic scene resources; Collect candidate resume information, job requirement information, and candidate interaction behavior data in a virtual scene to construct a heterogeneous graph structure containing candidate nodes, job nodes, booth nodes, and interaction event nodes; Based on the heterogeneous graph structure, the SimRank algorithm is used to calculate the structural context similarity between candidate nodes and job nodes, and generate a structural similarity score. Based on the structural similarity score, candidate preference sequences and job preference sequences are generated, and the preference sequences are input into the Gale–Shapley stable matching model to calculate the one-to-one matching relationship between candidates and jobs. Based on the matching relationship, a binding mapping is established between the candidate's digital identity and the job booth, and the corresponding interaction path is generated in the virtual job fair scenario, loading the digital human interaction instance associated with the booth; Monitor changes in candidates' behavioral events in a virtual scene, identify node updates that cause adjustments to the heterogeneous graph structure, recalculate the structural similarity scores between affected nodes, and reconstruct the corresponding preference sequences; Perform a local stable matching update operation, map the updated matching results to the new binding relationship, and synchronously update the interaction path and the state of the digital human instance.
3. The immersive interactive method for virtual job fairs based on AI intelligent matching according to claim 2, characterized in that, The SimRank algorithm is used to calculate the structural context similarity between candidate nodes and job nodes, generating a structural similarity score including: Based on the heterogeneous graph structure, a similarity initialization structure between candidate nodes and job nodes is constructed. Based on the similarity propagation principle of the SimRank algorithm, a basic propagation relationship between node pairs is constructed. The basic propagation relationship is: based on the set of incoming neighbor nodes of candidate nodes and job nodes, a propagation pair set is formed by combining incoming neighbor node pairs, and a damping factor is set to control the similarity propagation amplitude. At the same time, a similarity convergence threshold is set as the iteration termination condition. Assuming the SimRank basic propagation structure has been completed, perform the following steps: Based on the heterogeneous graph structure, starting with candidate nodes and job nodes respectively, the path is traversed along the preset node type order of candidate node—booth node—interaction event node—job node, and the sequence of node type and edge type that appear in sequence during the traversal is recorded to form a structure traversal record. The structure traversal records are merged to form the same structure projection unit. Each structure projection unit is assigned a projection unit identifier, and the number of times the structure projection unit appears during the traversal is recorded. The structural projection units generated on the candidate node side and the job node side are divided into equivalence classes respectively. When the node type sequence, edge type sequence and traversal length of the two structural projection units are the same, they are divided into the same structural equivalence class, and a unique equivalence class identifier is assigned to each structural equivalence class. A structural equivalence class similarity initialization matrix is constructed based on the structural equivalence class identifier. For equivalence class pairs with the same structural equivalence class identifier, their similarity is initialized to a preset initial value. For equivalence class pairs with different structural equivalence class identifiers, their similarity is initialized to zero. Similarity propagation calculation is performed at the structural equivalence class level. In each round of propagation, for any candidate node and the position node, the structural equivalence class similarity is updated based on the structural equivalence class similarity value of the previous round and the proportion of the corresponding structural projection unit in their respective nodes. Repeat the similarity propagation calculation at the structural equivalence class level until the similarity change of each equivalence class pair in the structural equivalence class similarity matrix is lower than the convergence threshold in two consecutive rounds, then terminate the similarity propagation calculation. Based on the final structural equivalence class similarity matrix, the similarity results at the structural equivalence class level are reflected back to the candidate node and job node level. According to the proportion of the structural projection units contained in the candidate node and job node in the corresponding structural equivalence class, the structural equivalence class similarity is weighted and summarized to generate the structural context similarity score between the candidate node and job node.
4. The immersive interactive method for virtual job fairs based on AI intelligent matching according to claim 2, characterized in that, Generate a one-to-one matching relationship between candidates and positions: Obtain the structural context similarity score between candidate nodes and job nodes, and for each candidate node, select job nodes that have structural projection association with it as a candidate matching set; For each candidate node, only within the corresponding candidate matching set, the job nodes are sorted from high to low according to the structural context similarity score, generating a job preference sequence corresponding to the candidate node, and recording the ranking of each job in the sequence; For each job node, based on the structural context similarity score, candidate nodes that have a structural projection association with the job node are selected as a candidate matching set, and within the set, they are sorted from high to low according to the similarity score to generate the candidate preference sequence corresponding to the job node. The generated candidate preference sequence and job preference sequence are written into the matching input table respectively. Each record in the matching input table contains the candidate number, job number and corresponding preference ranking, and only contains candidate-job combinations that have structural projection relationship. Based on the matching input table, the Gale–Shapley stable matching model is called to perform one-to-one matching calculation. During the matching process, each candidate node and the job node are limited to participating in at most one matching relationship, and a stable matching result is output. The stable matching results are recorded as a matching result table, which includes at least the candidate number, the job number, and the matching confirmation identifier.
5. The immersive interactive method for virtual job fairs based on AI intelligent matching as described in claim 4, characterized in that, The Gale–Shapley stable matching model includes: Based on the matching input table, a set of candidate IDs and a set of job IDs are generated respectively. For each candidate ID, the job preference sequence is read, and for each job ID, the candidate preference sequence is read. Convert the candidate preference sequence into a candidate ranking table, and convert the job preference sequence into a job ranking table. Initialize the candidate status table, and write a proposal pointer and the currently matched job number to each candidate number in the candidate status table. The proposal pointer is initialized to point to the first position in the job preference sequence, and the currently matched job number is initialized to empty. Initialize the job status table, and write the currently provisional candidate number to each job number in the job status table. The currently provisional candidate number is initialized to empty. The steps for constructing the candidate proposal set are as follows: Retrieve the number of interaction event records by candidate number and job number, and combine this with a check to see if there are corresponding records for candidate number and job number in the input table. Generate a table of eligible proposal tags that satisfies the following conditions: ; in, Number the candidates. For job positions, Candidate number in the event log table With job number The corresponding number of interaction event records, To match the available candidate-job combinations in the input table, a proposal-ready tag is created; Initialize the queue of unmatched candidates by writing the candidate IDs from the candidate status table that are currently empty for the matched job position to the queue of unmatched candidates. Retrieve a candidate ID from the unmatched candidate queue, and read the job ID pointed to by the proposal pointer in the corresponding job preference sequence; when the job preference sequence has been completely read, remove the candidate ID from the unmatched candidate queue; when the job preference sequence has not been completely read, query the values in the proposeable flag table, if... Then move the proposal pointer to the next position and continue reading the next job number until the proposal is found. The job number or sequence terminates; When the read satisfies When the job number is determined, a proposal record is generated and submitted to that job number. The proposal record must contain at least the candidate number, job number, and proposal position. At the same time, the proposal pointer for that candidate number is moved to the next position. After receiving the proposal record for the job number, the current provisional candidate number for that job number is read from the job status table. When the current provisional candidate number is empty, the proposal candidate number is written into the job status table as the current provisional candidate number, and the job number is written into the candidate status table as the current matching job number for that candidate. When the current provisional candidate number is not empty, read "Job Number - Proposal Candidate Number - Rank" and "Job Number - Current Provisional Candidate Number - Rank" from the job ranking table. If the proposal candidate's rank takes precedence over the current provisional candidate's rank, replace the current provisional candidate number in the job status table with the proposal candidate's rank, and write the job number into the candidate status table as the current matching job number for the proposal candidate. At the same time, set the current matching job number of the replaced candidate to null and write it back to the unmatched candidate queue. If the proposal candidate's rank is inferior to the current provisional candidate's rank, keep the job status table unchanged and write the proposal candidate's rank back to the unmatched candidate queue. The process of "candidate reads available positions - generates proposal - position is temporarily set / replaced" is executed repeatedly until the queue of unmatched candidates is empty, or all candidates in the queue of unmatched candidates have reached the end of the position preference sequence and no more proposal records can be generated. Execute the matching confirmation output step: After the queue terminates, generate an initial set of matching pairs based on the candidate status table and the job status table. For each job number, take its current provisional candidate number to form a matching record and write it into the matching result table. Perform stability and consistency checks on the matching result table: for any candidate number With any job number Furthermore, if the two do not form a matching pair in the matching result table, the candidate-to-job ranking in the candidate ranking table and the job-to-candidate ranking in the job ranking table are read separately, and the following "blocking pair" judgment conditions are applied for verification: ; in, This represents the candidate number in the matching results table. The corresponding job title number, This indicates the job number in the matching results table. The corresponding matching candidate number, The ranking of candidates is given by the ranking table. The ranking given in the job position ranking table; When there are candidate numbers that do not meet the above criteria. With job number At that time, number the candidate. Rewrite the unmatched candidate queue, and set the current matched job number of the candidate in the candidate status table to null. At the same time, set the current provisional candidate number of the job number associated with it in the job status table to null. Then, re-execute the process of "candidate reads available job positions - generates proposal - provisional / replacement of job position" until the matching result table meets the above judgment conditions for all unmatched pairs. Output the final matching result table, which should contain at least the candidate number, job number, and confirmation flag, representing a stable one-to-one matching relationship between candidates and jobs.
6. The immersive interactive method for virtual job fairs based on AI intelligent matching according to claim 2, characterized in that, The generation of interactive paths and loading of digital human interactive instances include: Map each candidate number and job number matching pair in the matching results table to the booth space identifier to generate a candidate-booth binding table. Read the spatial coordinates and interactive area identifier of the booth node in the virtual scene, generate a path point sequence from the candidate to the target booth based on the candidate's digital identity and current position in the scene, and write the path point sequence into the interactive path table; Configure an interaction trigger point at the end of the interaction path, and set the trigger condition as the candidate node enters the interaction boundary or executes the entry command. After triggering, retrieve the booth number and job number corresponding to the candidate in the binding table. The system searches for job-related information based on booth number, loads the corresponding digital human template from the job interaction configuration, loads candidate resume summary data using candidate number as index, and combines them to generate a set of input parameters for digital human instance. Deploy the loaded digital human instance to the corresponding booth node, assign a session identifier to the interactive instance, and write the candidate number, job number and instance identifier into the interactive session table. When a candidate's digital identity node enters the interactive area of the target booth, an event listening channel is established between the candidate and the digital human instance. The candidate's behavior is mapped to digital human interactive input events, and the digital human is driven to respond by generating language output and action feedback. The binding table, interaction path table, and interaction session table are used together to control the candidate interaction process status, and support the scheduling, reuse, and termination control of interaction instances, so as to realize the dynamic interaction mapping between candidates and booths in the virtual recruitment fair scenario.
7. The immersive interactive method for virtual job fairs based on AI intelligent matching according to claim 2, characterized in that, The reconstructed corresponding preference sequence includes: Establish a candidate behavior event monitoring channel to write key candidate behavior events in the virtual job fair scenario into the behavior event log; parse the newly added behavior event records to extract the candidate number, target booth number, event type and timestamp; In a heterogeneous graph structure, identify the candidate nodes and booth nodes involved, determine whether to generate new interactive event nodes or update the original edge attributes based on the event type, and adjust the graph structure accordingly. Locate the structural path containing the update event node to form a set of affected candidate-job node pairs; call the local SimRank algorithm to recalculate the structural similarity of the node pairs in this set to obtain the updated structural similarity score; Based on the scoring results, the candidate preference sequence and job preference sequence are locally updated to generate new preference sequence entries.
8. The immersive interactive method for virtual job fairs based on AI intelligent matching according to claim 2, characterized in that, Perform locally stable matching update operations, including: Identify the affected candidate IDs and their related job IDs, and construct a local matching input table; call the Gale–Shapley stable matching model, and perform matching calculations only on the affected subset of candidates and job subsets to generate an updated set of matching pairs; Based on the matching pairs in this set, update the binding relationship between candidate digital identity and job booth in the binding mapping table; for the changed binding relationship, recalculate the path point sequence from the candidate to the new target booth, replace the corresponding path item in the interaction path table, and redeploy the interaction trigger point at the end of the new path; For the bound booths, load the corresponding digital human instances, assign new interactive session identifiers, and update the mapping relationship between candidate numbers and instance identifiers in the interactive session table; If a candidate has already established an interactive instance with another booth, the original instance identifier will be deregistered, resources will be released, and the event listener channel status will be updated to complete the synchronous update of the local binding mapping and the virtual interactive state.