# US 2021/0241231 A1 · Automatic Assignment of Tasks to Users in Collaborative Projects

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2021/0241231 A1
- Document ID: US20210241231A1
- Status: Published application
- Kind: A1
- Application number: 16/778,142
- Filed: 2020-01-31
- Published: 2021-08-05
- Earliest claimed: 2020-01-31
- Assignees: RSA Security Inc.
- Applicants: RSA Security LLC
- Inventors: Brian C. Mullins; Kevin D. Bowers; Victor Malchikov
- Web page: https://patentgrep.com/patent/US20210241231A1

## CPC

- G06Q 10/103: {Workflow collaboration or project management}
- G06F 40/216: using statistical methods
- G06F 40/284: Lexical analysis, e.g. tokenisation or collocates
- G06F 40/30: Semantic analysis
- G06N 20/00: Machine learning
- G06Q 10/063112: {Skill-based matching of a person or a group to a task}
- G06Q 10/063114: {Status monitoring or status determination for a person or group}
- G06Q 10/063118: {Staff planning in a project environment}
- G06Q 10/06398: {Performance of employee with respect to a job function}
- G06Q 10/105: Human resources
- G06Q: INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- G06N: COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS

## Abstract

Techniques are provided for automatically assigning tasks of a collaborative project, such as questions within a risk assessment, to users. One method comprises obtaining a description of multiple tasks of a collaborative project; obtaining a first vector representation of a context of at least one of the tasks; obtaining a second vector representation of a context of at least one user; determining a similarity between one or more first vector representations and one or more second vector representations using one or more similarity criteria. The first and second vector representations may be obtained using natural language processing techniques, word embeddings that translate words into at least one vector, term frequency-inverse document frequency vectorization techniques, and/or a bag-of-words model.

## Claims

### Claim 1

A method, comprising:
obtaining a description of a plurality of tasks of a collaborative project;
obtaining a first vector representation of a context of at least one of the plurality of tasks;
obtaining a second vector representation of a context of at least one user;
determining a similarity between one or more first vector representations and one or more second vector representations using one or more similarity criteria; and
assigning the at least one task to the at least one user based at least in part on the similarity,
wherein the method is performed by at least one processing device comprising a processor coupled to a memory.

### Claim 2 (depends on 1)

The method of claim 1, wherein the first vector representation of the context of each of the plurality of tasks and the second vector representation of the context of the at least one user are obtained using one or more of natural language processing techniques, word embeddings that translate one or more words into at least one vector, term frequency-inverse document frequency vectorization techniques, and a bag-of-words model.

### Claim 3 (depends on 1)

The method of claim 1, wherein the context of a given task of the plurality of tasks is obtained from one or more of the description of the given task and additional text in the collaborative project.

### Claim 4 (depends on 1)

The method of claim 1, wherein the context of a given user of the at least one user is obtained from one or more of: (i) a knowledge of the given user, (ii) one or more skills of the given user, (iii) one or more credentials of the given user, (iv) a social media profile of the given user, (v) a resume of the given user, (vi) a biography of the given user, (vii) an employment history of the given user, (viii) an education history of the given user, and (ix) a job title of the given user.

### Claim 5 (depends on 1)

The method of claim 1, wherein the context of a given user of the at least one user is obtained from one or more of: (i) previously assigned portions of a collaborative project, (ii) previously assigned tasks of a collaborative project, (iii) previously assigned tasks of a collaborative project that remain incomplete, (iv) voluntary assignment or removal from previously assigned tasks of a collaborative project, (v) previously assigned tasks of a collaborative project completed by the given user, and (vi) a time to complete a previously assigned task.

### Claim 6 (depends on 1)

The method of claim 1, wherein the context of the at least one user is obtained from one or more clusters of similar users.

### Claim 7 (depends on 1)

The method of claim 1, wherein the assigning to the at least one user employs one or more of machine learning techniques, text classification, at least one recommender system and a statistical analysis.

### Claim 8 (depends on 1)

The method of claim 1, wherein the assigning to the at least one of the at least one user is further based at least in part on one or more of a user velocity indicating a number of tasks that a given user of the at least one user can process in a time window, a change in the user velocity of the given user over time, a number of outstanding tasks of the given user, an average duration of the given user to complete a given task, a deadline for a given task, and an availability of one or more of the at least one user.

### Claim 9 (depends on 1)

The method of claim 1, wherein a given user assigned to a given task can one or more of delegate the given task to at least one other user and automatically request assistance from at least one other user to complete the given task.

### Claim 10 (depends on 9)

The method of claim 9, wherein the given user is notified of one or more of an availability and a capacity of the at least one other user.

### Claim 11

An apparatus comprising:
at least one processing device comprising a processor coupled to a memory;
the at least one processing device being configured to implement the following steps:
obtaining a description of a plurality of tasks of a collaborative project;
obtaining a first vector representation of a context of at least one of the plurality of tasks;
obtaining a second vector representation of a context of at least one user;
determining a similarity between one or more first vector representations and one or more second vector representations using one or more similarity criteria; and
assigning the at least one task to the at least one user based at least in part on the similarity.

### Claim 12 (depends on 11)

The apparatus of claim 11, wherein the first vector representation of the context of each of the plurality of tasks and the second vector representation of the context of the at least one user are obtained using one or more of natural language processing techniques, word embeddings that translate one or more words into at least one vector, term frequency-inverse document frequency vectorization techniques, and a bag-of-words model.

### Claim 13 (depends on 11)

The apparatus of claim 11, wherein the context of the at least one user is obtained from one or more clusters of similar users.

### Claim 14 (depends on 11)

The apparatus of claim 11, wherein the assigning to the at least one of the at least one user employs one or more of machine learning techniques, text classification, at least one recommender system and a statistical analysis.

### Claim 15 (depends on 11)

The apparatus of claim 11, wherein a given user assigned to a given task can one or more of delegate the given task to at least one other user and automatically request assistance from at least one other user to complete the given task.

### Claim 16

A non-transitory processor-readable storage medium having stored therein program code of one or more software programs, wherein the program code when executed by at least one processing device causes the at least one processing device to perform the following steps:
obtaining a description of a plurality of tasks of a collaborative project;
obtaining a first vector representation of a context of at least one of the plurality of tasks;
obtaining a second vector representation of a context of at least one user;
determining a similarity between one or more first vector representations and one or more second vector representations using one or more similarity criteria; and
assigning the at least one task to the at least one user based at least in part on the similarity.

### Claim 17 (depends on 16)

The non-transitory processor-readable storage medium of claim 16, wherein the first vector representation of the context of each of the plurality of tasks and the second vector representation of the context of the at least one user are obtained using one or more of natural language processing techniques, word embeddings that translate one or more words into at least one vector, term frequency-inverse document frequency vectorization techniques, and a bag-of-words model.

### Claim 18 (depends on 16)

The non-transitory processor-readable storage medium of claim 16, wherein the context of the at least one user is obtained from one or more clusters of similar users.

### Claim 19 (depends on 16)

The non-transitory processor-readable storage medium of claim 16, wherein the assigning to the at least one of the at least one user employs one or more of machine learning techniques, text classification, at least one recommender system and a statistical analysis.

### Claim 20 (depends on 16)

The non-transitory processor-readable storage medium of claim 16, wherein a given user assigned to a given task can one or more of delegate the given task to at least one other user and automatically request assistance from at least one other user to complete the given task.
