US Pat. No. 10,216,993

INTELLIGENT DOCUMENT ELEMENTS HARVEST AND PRESENTATION SYSTEM AND METHOD

1. A non-transitory computer readable medium storing a program causing a computer to execute a parsing process, said parsing process comprising:(a) extracting one or more figure descriptions from a first entity of a document to result in a first number of figure descriptions from the first entity;
(b) extracting one or more drawing pages from a second entity of the document to result in a second number of drawing pages each disposed on an output page;
(c) generating a list of figure descriptions for said each output page, said generating step comprises calculating a start index and an end index of said list of figure descriptions, wherein said start index is a function of a result of dividing said first number by said second number and said end index is a function of the sum of said start index and the product of a bandwidth and said first number and assembling said list of figure descriptions from said one or more figure descriptions corresponding to the range from said start index to said end index; and
(d) combining said list of figure descriptions with said each output page,whereby a user of said each output page can look up a figure description of a figure on said each output page in said list of figure descriptions.

US Pat. No. 10,216,991

AUTOMATICALLY EDITING PRINT JOB BASED ON STATE OF THE DOCUMENT TO BE PRINTED

KONICA MINOLTA LABORATORY...

1. A method for processing print jobs implemented on a print system, the system comprising a server which executes a workflow and a client which executes an editor program, the method comprising:by the client,
(a) receiving a user selection of a workflow to be executed by the server for a document the selected workflow including one or more editing processes for automatically editing the document or its associated print job ticket based on setting parameters of the selected workflow and either predefined key phrases contained in pages of the document or bookmarks associated with pages of the document or both;
(b) editing the document by the editor program, including displaying the document and emulating effects of the selected workflow using a plug-in program corresponding to the selected workflow, wherein the plug-in program is configured to automatically change a display effect of the document by emulating effects of the selected workflow based on setting parameters of the selected workflow and either predefined key phrases contained in the document or bookmarks associated with the document or both;
(c) outputting the edited document, the edited document having associated data that specifies the plug-in program used for emulation in step (b);
by the server,
(d) obtaining a print job to be input to a present workflow, the print job including the edited document and an associated job ticket;
(e) based on the associated data of the edited document, determining whether the plug-in program used for emulation when the document was edited by the editor program is consistent with the present workflow;
(f) when it is determined that the plug-in program used for emulation when the document was edited by the editor program is not consistent with the present workflow, notifying the determination result to a user; and
(g) when it is determined that the plug-in program used for emulation when the document was edited by the editor program is consistent with the present workflow, executing the present workflow on the document to automatically edit the document or its associated print job ticket based on setting parameters of the present workflow and either predefined key phrases contained in pages of the document or bookmarks associated with pages of the document or both, and submitting the automatically edited print job to a printing device to be printed.

US Pat. No. 10,216,990

SELECTION OF MACHINE-READABLE LINK TYPE

Hewlett-Packard Developme...

1. An article comprising at least one non-transitory machine-readable storage medium comprising instructions executable by a processing resource of a computing device to:acquire, via a network interface device, a document in an electronic format;
select, based whether the document is a textual-type or an image-type document, one of an overt type and a covert type of machine-readable link for evaluation;
determine, with the computing device, characteristics of the content of the document, including a tonal distribution for the content when the selected type is a digital watermark;
decide whether the characteristics satisfy an evaluation metric for use of the selected type of machine-readable link;
based on satisfaction of the evaluation metric, determine to produce a first linked version of the document using a machine-readable link of the selected type embodied in the first linked version; and
based at least in part on non-satisfaction of the least one evaluation metric, determine to produce a second linked version of the document using a machine-readable link of the non-selected type embodied in the second linked version.

US Pat. No. 10,216,989

PROVIDING ADDITIONAL INFORMATION FOR TEXT IN AN IMAGE

Amazon Technologies, Inc....

1. One or more server devices comprising:at least one processor;
at least one memory comprising instructions that, when executed by the at least one processor, cause the one or more server devices to:
receive digital data from a client device in communication with the one or more server devices via a network, the digital data corresponding to a first image displayed on a screen associated with the client device and including image data representing the first image;
perform optical character recognition on the image data to produce recognized text data;
identify text data included in the recognized text data;
determine a first potential definition of the text data;
determine a second potential definition of the text data;
determine, based at least in part on a portion of the digital data, that the first potential definition is more relevant than the second potential definition;
identify a source of additional information corresponding to the first potential definition;
send, via the network, an indication to the client device that additional information associated with the text data is available;
receive, via the network, a request from the client device for the additional information; and
send, via the network and based at least in part on receiving the request, the additional information to the client device so as to cause the additional information to be displayed on the screen.

US Pat. No. 10,216,988

INFORMATION PROCESSING DEVICE, INFORMATION PROCESSING METHOD, AND COMPUTER PROGRAM PRODUCT

KABUSHIKI KAISHA TOSHIBA,...

1. An information processing device comprising:a memory configured to store therein accumulated information containing entry information and category information accumulated by form type and entry field, the entry information being based on information that is written, when a form is written, to the entry field of the form by a user, the category information representing a category of the entry information, the category information being stored in association with the entry information; and
one or more processors configured to:
receive a form;
recognize entry information entered in the form received;
calculate a reliability of the form type based on whether or not the entry information recognized is contained in the accumulated information, a proportion of the entry information recognized that is contained in the accumulated information, and a proportion of entry information in a same category as the entry information recognized that is contained in the accumulated information; and
specifying multiple form types in a descending order of the reliabilities.

US Pat. No. 10,216,987

IMAGE PROCESSING DEVICE AND IMAGE PROCESSING METHOD

SONY INTERACTIVE ENTERTAI...

1. An image processing device comprising:a contour line acquisition unit configured to acquire a contour line of an object from an image frame that constitutes a moving image;
a target part identification unit configured to identify the position of a predetermined part of the object based on the contour line of the object acquired by the contour line acquisition unit;
a processing unit configured to create a processed image in which predetermined processing is performed on an area, which is determined based on the position of the predetermined part identified by the target part identification unit, in the image frame;
an output unit configured to output data of the moving image having, as the image frame, the processed image generated by the processing unit; and
a storage unit configured to store data of a three-dimensional graphics image of a fingernail with nail art, wherein
the contour line acquisition unit acquires the contour line of a human hand, which is the object,
the target part identification unit identifies an area of the fingernail based on the position of a fingertip in the contour line, and
the processing unit combines the image of the fingernail with nail art such that the image of the fingernail with nail art selected by a user is overlapped with the area of the fingernail, and
the contour line acquisition unit acquires, by adjusting through, matching score computation, a set of coefficients occurring when a parameter of a B-spline curve that defines the contour line of the hand is represented in a linear combination of a parameter that defines the contour line of a plurality of reference shapes defined in advance.

US Pat. No. 10,216,986

GUIDANCE SYSTEM, DETECTION DEVICE, AND POSITION ASSESSMENT DEVICE

NIKON CORPORATION, Tokyo...

1. A detection device comprising:a first image capture that captures an image containing a subject person from a first direction;
a second image capture that is separate from the first image capture and captures an image containing the subject person from the first direction;
an adjuster that adjusts at least one of the first image capture and the second image capture so that a predetermined subject can be contained in a region in which an image capturing region of the first image capture and an image capturing region of the second image capture overlap each other;
a detector that detects a size of an image corresponding to a head of the subject person by way of image capturing performed by at least one of the first image capture and the second image capture; and a determiner that determines a postural state of the subject person based on (i) a relation between a height of the subject person and the size of the image corresponding to the head of the subject person, (ii) identification information of the subject person, and (iii) a change in the size of the image corresponding to the head of the subject person.

US Pat. No. 10,216,985

SESSIONS AND GROUPS

NIKE, Inc., Beaverton, O...

1. A computer-implemented method comprising:automatically initiating a first time clock for measuring, by a first device worn by a first user, athletic activity during a first predetermined time period;
receiving movement data from one or more sensors of the first device during the first predetermined time period;
initiating calculation of an energy expenditure value for the first user for the first predetermined time period based on at least the movement data received from the one or more sensors, an activity factor indicating an energy requirement for the athletic activity, and an activity intensity factor;
after initiating the calculating of the energy expenditure values for the first predetermined time period, initiating a second time clock for measuring athletic activity during a second non-predetermined time period that is within the first predetermined time period;
initiating a session for the first user based on second movement data received from the one or more sensors of the first device during the second non-predetermined time period;
receiving locational data of the first user during the second non-predetermined time period;
determining that the session is associated with a first activity type based on the locational data for the first user;
receiving, from a second device associated with the first user, additional data;
determining, based on an analysis of the additional data received from the second device associated with the first user, that the first user has remained stationary; and
responsive to determining, based on the additional data received from the second device associated with the first user, that the first user has remained stationary, pausing the session.

US Pat. No. 10,216,983

TECHNIQUES FOR ASSESSING GROUP LEVEL COGNITIVE STATES

GENERAL ELECTRIC COMPANY,...

1. A method, comprising:receiving data related to one or more individuals from one or more cameras in an environment;
executing one or more agent-based simulators that each operate to generate a model of behavior of a respective individual, wherein an output of each model is symbolic sequences representative of internal experiences of the respective individual during simulation; and
predicting a subsequent behavior for each of the respective individuals when the symbolic sequences match a query symbolic sequence for a query behavior;
wherein each model uses particle filtering and each particle includes recurrent neural networks that iteratively estimates temporal evolution of the symbolic sequences based on the data.

US Pat. No. 10,216,982

PROJECTING A VIRTUAL COPY OF A REMOTE OBJECT

Microsoft Technology Lice...

1. A system for projecting a virtual copy of a remote object comprising:a processor to:
calibrate the system, the calibration comprising collecting environment data corresponding to a local environment in which the system is located;
receive the virtual copy of a remote object corresponding to a remote user in a remote environment;
detect a viewpoint of a local user in the local environment; and
project the virtual copy of the remote object in the local environment based on the viewpoint of the local user, the virtual copy of the remote object to be positioned in the local environment by taking into account geometry of local objects in the local environment, wherein the virtual copy of the remote object is to be projected against fixed surfaces in the local environment, wherein the virtual copy of the remote object comprises modified mesh data based on an orientation of the remote user.

US Pat. No. 10,216,979

IMAGE PROCESSING APPARATUS, IMAGE PROCESSING METHOD, AND STORAGE MEDIUM TO DETECT PARTS OF AN OBJECT

Canon Kabushiki Kaisha, ...

1. An image processing apparatus comprising:one or more processors; and
a memory storing instructions that, when executed by the one or more processors, cause the image processing apparatus to perform operations including:
acquiring an image that includes a target object having a posture and a plurality of parts in an attitude relationship to each other, and acquiring a previously learned model,
detecting, as a first detection using the previously learned model, a candidate region of each of the plurality of parts of the target object included in the acquired image,
selecting, from among the plurality of parts and based on the candidate region detected by the first detection, a first part having a first reliability that is high and a second part having a second reliability that is low relative to the high first reliability, and
correcting the previously learned model by changing a position of the low reliability second part based on the selected first part having the high reliability,
wherein, after correcting the previously learned model, positions of the plurality of parts of the target object are detected using the corrected previously learned model, even in a case where a partial region cannot be sufficiently selected from the uncorrected previously learned model.

US Pat. No. 10,216,976

METHOD, DEVICE AND MEDIUM FOR FINGERPRINT IDENTIFICATION

XIAOMI INC., Haidian Dis...

1. A method for fingerprint identification, the method comprising:detecting whether the number of damaged pixel units in a fingerprint identification sensor reaches a preset threshold value, the damaged pixel units being physically damaged pixel units in the fingerprint identification sensor and being determined according to a pixel feature of each of the pixel units acquired in a preset photographic environment, wherein the pixel feature at least includes a brightness value and/or a contrast; and
stopping identifying a fingerprint image acquired by the fingerprint identification sensor if the number of the damaged pixel units reaches the preset threshold value.

US Pat. No. 10,216,973

METHOD FOR IMPROVING IMAGES APPLICABLE TO FINGERPRINT IMAGES

1. Method for processing a finger image acquired by a fingerprint sensor of direct view type and comprising at least one fingerprint in order to implement an authentication or identification of an individual by comparison of fingerprints, said finger image comprising a set of pixels, each pixel being associated with a grey level, the method comprising a step of segmentation of the finger image to generate a modified image only containing regions of the finger image having an alternation of bright zones and dark zones at a frequency greater than a minimum frequency, said step of segmentation comprising:a. the allocation, to each pixel of the finger image, of a frequency response level, corresponding to a frequency of alternations of bright zones and dark zones in the vicinity of the pixel, by evaluating the variabilities of the grey levels of the pixels contained in a window of determined size positioned around each pixel,
b. the definition of regions of the finger image by grouping together neighbouring pixels of same frequency response level previously allocated to each pixel,
c. the determination of a threshold frequency response level,
d. selection, from the regions of the finger image defined previously by grouping together neighbouring pixels of same frequency response level, of regions of which the pixels have a frequency response level greater than or equal to the threshold frequency response level, and
e. the generation of the modified image only comprising, among the regions of the finger image defined previously by grouping together neighbouring pixels of same frequency response level, regions of which the pixels have a frequency response level greater than or equal to the threshold frequency response level,
f. a step of authentication or identification of an individual by comparison of fingerprints on the basis of the modified image.

US Pat. No. 10,216,971

DISPLAY DEVICE INCLUDING SENSOR SCREEN AND METHOD OF DRIVING THE SAME

LG Display Co., Ltd., Se...

1. A display device, comprising:a display panel including a first display area and a second display area that are adjacent to each other, the display panel including a first touch sensor disposed in the first display area;
a sensor screen disposed on the display panel, the sensor screen including a fingerprint sensor and a second touch sensor at a location corresponding to the second display area of the display panel;
a display touch integrated circuit (IC) configured to drive:
pixels of the first and second display areas during a display period included in one frame period; and
the first touch sensor during a touch period included in the one frame period; and
a fingerprint touch IC configured to:
drive the fingerprint sensor in a portion of the one frame period, in which the first touch sensor is not driven; and
drive the second touch sensor in the portion of the one frame period, in which the first touch sensor is not driven,
wherein the sensor screen includes a first transparent substrate and a second transparent substrate that are sequentially disposed on the display panel, and
wherein the fingerprint sensor and the second touch sensor are between the first transparent substrate and the second transparent substrate.

US Pat. No. 10,216,970

PROGRAMMABLE CONTROL SYSTEM OF OPTICAL READING DEVICE

1. A programmable control system of an optical reading device, which comprises:an instruction printed matter which has at least one instruction pattern thereon, wherein a corresponding encoded data is printed on the instruction pattern;
an optical reading device used to read the encoded data on the instruction pattern; and
a programming processing device which is coupled with the optical reading device and has a program code database unit saving at least one program code;
wherein the program code is corresponded to an encoded data on the instruction pattern; and the programming processing device reads at least one encoded data of the instruction patterns via the optical reading device and stores the program code content corresponding to the encoded data in the reading order into a main program register unit or a function register unit;
wherein the programming processing device will combine the sequenced program codes in the main program register unit and the function register unit into a program code sequence after the optical reading device has read an instruction of startup, and the program code sequence will be transmitted to a programmable control equipment through a program code output unit to proceed the manipulation.

US Pat. No. 10,216,969

ILLUMINATOR FOR DIRECTLY PROVIDING DARK FIELD AND BRIGHT FIELD ILLUMINATION

HAND HELD PRODUCTS, INC.,...

1. An illuminator comprising:a support frame;
an optical diffuser connected to the support frame;
a first plurality of light emitting diodes (LEDs) connected to the support frame, the first plurality of LEDs configured to provide dark field illumination at a high angle of incidence with respect to an object, the first plurality of LEDs further configured to provide illumination to the object without the use of a light pipe, diffuser, or reflector;
a second plurality of LEDs connected to the support frame, the second plurality of LEDs configured to provide bright field illumination at a low angle of incidence with respect to the object, the second plurality of LEDs further configured to provide illumination to the object without the use of a light pipe, diffuser, or reflector; and
a third plurality of LEDs connected to the support frame, the third plurality of LEDs configured to provide bright field illumination through the optical diffuser without the use of a light pipe or reflector.

US Pat. No. 10,216,968

CARD READER

NIDEC SANKYO CORPORATION,...

1. A card reader comprising:a data signal pattern formed to transmit at least one of a data signal read from a card and a data signal to be recorded to the card;
a breakage detection pattern formed to detect at least one of its own disconnection and its own short-circuit;
a first printed circuit board in a plate shape or a film shape which is formed with the breakage detection pattern and is disposed on a front face side of the card reader;
a second printed circuit board in a plate shape or a film shape which is formed with the breakage detection pattern and is disposed on a rear face side of the card reader;
a third printed circuit board in a plate shape or a film shape which is formed with the breakage detection pattern and is disposed on one side in a thickness direction of the card inserted into the card reader;
a fourth printed circuit board in a plate shape or a film shape which is formed with the breakage detection pattern and is disposed on the other side in the thickness direction of the card;
a fifth printed circuit board in a plate shape or a film shape which is formed with the breakage detection pattern and is disposed on one side in a width direction of the card which is perpendicular to a front and rear direction of the card reader and the thickness direction of the card; and
a sixth printed circuit board in a plate shape or a film shape which is formed with the breakage detection pattern and is disposed on the other side in the width direction of the card;
wherein the data signal pattern is disposed within a protected region that is a region surrounded from all directions by the breakage detection pattern;
wherein a region which is surrounded by the breakage detection pattern formed in the first printed circuit board, the breakage detection pattern formed in the second printed circuit board, the breakage detection pattern formed in the third printed circuit board, the breakage detection pattern formed in the fourth printed circuit board, the breakage detection pattern formed in the fifth printed circuit board, and the breakage detection pattern formed in the sixth printed circuit board is the protected region;
the first printed circuit board is structured of two pieces of the first printed circuit board which are disposed in a separated state with a predetermined distance therebetween in the thickness direction of the card, and
the card is passed between the two pieces of the first printed circuit board in the thickness direction of the card.

US Pat. No. 10,216,967

VOLATILE MEMORY-BASED DATA-TRANSFER DEVICE WITH AUTOMATIC AND USER-INITIATED ANTI-TAMPER PENALTIES

The United States of Amer...

13. A removable, volatile memory-based USB data transfer device, comprising:a housing having an integral serial protocol plug, wherein said serial protocol plug is adapted to removably attach to an external computer and, when attached to the external computer, draw electrical power from the external computer, receive data from the external computer, and transfer data to the external computer;
a volatile memory module integral with said housing and adapted to store data received through the serial protocol plug from the external computer when supplied with electrical power;
an onboard power storage device integral with said housing and configured to receive and store a finite supply of electrical power drawn through the serial protocol plug from the external computer and, when the serial protocol plug is not attached to the external computer, selectively supply stored electrical power to the volatile memory module;
an electrical switch integral with said housing and configured to interrupt the supply of electrical power from the onboard power storage device to the volatile memory module in response to manual actuation; and
a storage controller integral with said housing and adapted to direct the supply of electrical power from the onboard power storage device to the volatile memory module when the serial protocol plug is not attached to the external computer, wherein said storage controller is additionally adapted to interrupt the supply of electrical power from the onboard power storage device to the volatile memory module after a predetermined time period from at least one of data received through the serial protocol plug being stored on the volatile memory module and the serial protocol plug being disconnected from the external computer.

US Pat. No. 10,216,966

PERTURB KEY TECHNIQUE

NetApp, Inc., Sunnyvale,...

10. A system comprising:a storage system coupled to a storage array;
a storage I/O stack executing on a processor of the storage system, the storage I/O stack configured to:
receive first and second extents, the first extent different from the second extent;
apply a hash function to generate first key and second keys associated respectively with the first extent and second extents, the first key mapping to a first hash bucket selected from among a set of hash buckets, the second key mapping to a second hash bucket selected from among the set of hash buckets;
determine whether the second key collides with the first key;
in response to determining that the second key collides with the first key, perturb the second key by a deterministic function selected from one of addition and subtraction of an integer multiple of a number of hash buckets included in the set of hash buckets to generate a candidate key such that the first hash bucket is identical to the second hash bucket and associating the candidate key with the second extent; and
storing the first and second extents on the storage array.

US Pat. No. 10,216,964

SEMICONDUCTOR INTEGRATED CIRCUIT AND SYSTEM

Renesas Electronics Corpo...

1. A semiconductor integrated circuit comprising:a non-volatile memory configured to store a value encrypted using a predetermined cryptographic key;
a unique code generator; a cryptographic processor;
a database which holds a correction parameter in association with the semiconductor integrated circuit, and supplies the correction parameter to the semiconductor integrated circuit; and
an SRAM,
wherein the unique code generator is configured to generate a unique code, which is a multi-bit digital value specifically determined by a state of a memory cell of the SRAM when powered on,
wherein the cryptographic processor is configured to calculate a cryptographic key on the basis of the correction parameter and the generated unique code and, using the calculated cryptographic key, decrypt the encrypted value read out from the non-volatile memory,
wherein the correction parameter is preliminarily calculated at an outside of the semiconductor integrated circuit, on the basis of an initial unique code generated from the unique code generator after production of the semiconductor integrated circuit, and the predetermined cryptographic key,
wherein the cryptographic key used for encryption of the value stored in the non-volatile memory is defined as a first cryptographic key and the correction parameter is defined as a first correction parameter,
wherein the system comprises a management integrated circuit including the database and an authentication unit, wherein the management integrated circuit holds, in the database, the first correction parameter and a second correction parameter associated with the semiconductor integrated circuit, and holds, in the authentication unit, challenge data and a challenge data expected value obtained by encrypting the challenge data by using a second cryptographic key corresponding to the second correction parameter, and supplies the second correction parameter and the challenge data to the semiconductor integrated circuit,
wherein, in the semiconductor integrated circuit, the cryptographic processor generates the second cryptographic key, on the basis of the supplied second correction parameter and the unique code, encrypts the supplied challenge data by using the second cryptographic key, and returns the challenge data to the management integrated circuit,
wherein the management integrated circuit compares the encrypted and returned challenge data with the challenge data expected value held in the authentication unit, and in the case of a match, supplies the first correction parameter to the semiconductor integrated circuit, and
wherein the semiconductor integrated circuit calculates the first cryptographic key, on the basis of the supplied first correction parameter and the unique code, and decrypts the encrypted value read out from the non-volatile memory by using the calculated first cryptographic key.

US Pat. No. 10,216,962

SYSTEMS AND METHODS FOR MANAGING AUTHORITY DESIGNATION AND EVENT HANDLING FOR HIERARCHICAL GRAPHICAL USER INTERFACES

Apple Inc., Cupertino, C...

16. A graphics management system, comprising:a memory;
one or more programmable control devices operable to interact with the memory, and to perform operations comprising:
receiving, at a graphics management system and from a first process, a request to create a graphical user interface (GUI) element, wherein the GUI element corresponds to a sub-region of a window;
transmitting, by the graphics management system, a response to the request, wherein the response includes information for referencing the GUI element;
receiving, at the graphics management system and from the first process, at least one instruction message to restrict hosting of the GUI element to a second process;
receiving one or more messages, at the graphics management system and from the second process, indicative that the second process has received the information; and
validating, at the graphics management system, whether the second process is allowed to reference the GUI element based on the one or more messages received from the second process.

US Pat. No. 10,216,961

ENFORCING RESTRICTIONS RELATED TO A VIRTUALIZED COMPUTER ENVIRONMENT

VMware, Inc., Palo Alto,...

1. A method, comprising:distributing a complete installation package for a virtual computer system to each of multiple user physical computer systems, wherein the complete installation package is installable on each of the user physical computer systems to provide a virtual machine (VM) with restricted access to the VM, the complete installation package including the VM and enforcer software for enforcing one or more restrictions related to operation of the VM, wherein the enforcer software is configured to execute on the user physical system on which the VM runs but not within any VM on which the one or more restrictions are enforced and not within any virtualization software; and
on each of the multiple user physical computer systems:
installing the complete installation package including the VM and the enforcer software;
executing the VM, the VM giving a user access to guest software on the VM via virtualization software that emulates virtual system hardware for the VM, the VM being executed using the virtualization software and a virtual disk for storing data accessible to the guest software;
determining whether an action violates the one or more restrictions related to operation of the VM; and
in response to determining that the action violates the one or more restrictions, enforcing the one or more restrictions using the enforcer software by intercepting the action relating to operation of the VM that violates the one or more restrictions and restricting the action relating to the operation of the VM that violates the one or more restrictions.

US Pat. No. 10,216,960

DATA MASKING SYSTEMS AND METHODS

1. A method for data masking, comprising:receiving, by a data masking component computer system, a data set including unmasked data for a first and a second attributes, the data masking component including a first data masking method and a second data masking method;
generating a shuffled dataset of the unmasked data for the first and the second attributes;
repeating the generation of the shuffled dataset so that a unique indexing is created for the unmasked data in the shuffled dataset;
splitting the unmasked data into a first unmasked subset based on a first subset field definition and a second unmasked subset based on a second subset field definition;
generating parallelly, by the data masking component computer system,
(a) a first masked subset for the first attribute for the first unmasked subset, by applying the first masking method to the unmasked data for the first attribute;
(b) a second masked subset for the second attribute for the second unmasked subset, by applying the second masking method to the unmasked data for the second attribute; and
merging the first masked subset with the second masked subset.

US Pat. No. 10,216,959

METHOD AND SYSTEMS USING PRIVACY-PRESERVING ANALYTICS FOR AGGREGATE DATA

Mitsubishi Electric Resea...

1. A method for transmitting aggregated data to a third party, such that a privacy of the aggregated data is protected, while analytical usefulness of the aggregated data is preserved, comprising:receiving, using a transceiver, aggregated data including time-series data collected over a period of time;
selecting, from a memory, a mapping for transforming a segment of the aggregated data of a predetermined size; partitioning the aggregated data into a multiple data segments, each data segment is of the predetermined size;
transforming each data segment using the mapping to produce multiple transformed data segments, wherein each data segment is transformed by the mapping independently from other data segments, and each mapped data segment of the aggregated data modifies the data segment such that the privacy of the data segment is protected, while analytical usefulness of the data segment is preserved;
and transmitting, using the transceiver, the multiple transformed data segments to a third party over a communication channel, wherein steps of the method are performed by a processor operatively connected with the memory and the transceiver;
wherein the mapping further comprises: collecting a training set of the aggregated data; determining a statistical model fitting the training set of the aggregated data; and determining the mapping using the statistical model by optimizing a balance between a criteria for protecting privacy of the transformed aggregated data and a criteria of analytical usefulness of the transformed aggregated data, wherein the criteria of analytical usefulness is above a threshold criteria to allow for third party analytics of the transformed aggregated data by the third party.

US Pat. No. 10,216,957

METHODS AND SYSTEMS FOR MANAGING DATA AND/OR SERVICES FOR DEVICES

Elwha LLC, Bellevue, WA ...

1. A system, comprising:circuitry configured for implementing one or more protected portions of a user device, the one or more protected portions including at least some protected data not transmitted from the user device without a user grant of access by an application to the one or more protected portions;
circuitry configured for facilitating presentation of an offer to provide at least one service accessible through at least one application on the user device in exchange for at least one user permission for the at least one application to transmit the at least some protected data from the user device while the at least one service is being carried out, including at least:
circuitry configured for facilitating the presentation of the offer to provide at least one fitness tracker service accessible through at least one application available for installation on the user device in exchange for at least one user permission for the at least one application to transmit, from the user device and to at least one computing device associated with the at least one fitness tracker service, health-related data personal to the user of the user device while the at least one fitness tracker service is being carried out, wherein the health-related data personal to the user is restricted from being transmitted by the user device without the at least one user permission;
circuitry configured for enabling the at least one application on the user device to have access to the one or more protected portions of the user device in response to receiving the at least one user permission for the at least one application to transmit the at least some protected data from the user device while the at least one service is being carried out;
circuitry configured for detecting that the at least one application has finished carrying out the at least one service and that the at least one application maintains the access to the one or more protected portions of the user device;
circuitry configured for facilitating presentation of an option to discontinue the access of the at least one application to the one or more protected portions of the user device; and
circuitry configured for discontinuing the access of the at least one application to the one or more protected portions of the user device in response to receiving an indication of a selection of the option to discontinue the access of the at least one application to the one or more protected portions of the user device.

US Pat. No. 10,216,956

VIRTUALIZATION INPUT COMPONENT

Oath Inc., New York, NY ...

1. A system, comprising:a processor comprising hardware; and
memory comprising processor-executable instructions that when executed by the hardware processor cause implementation of a virtualization input component, hosted by a first device comprising personal information of a user, configured to:
establish a communication connection between the first device and a second device;
identify, on the first device, a user interface element and a second user interface element within a user interface of the second device, wherein the first device is a virtualized input device to the second device;
responsive to the user interface element having a visible text property and the personal information having a non-display privacy setting, determine that the user interface element is not a personal information input field for the personal information;
responsive to the second user interface element having a hidden text property and the personal information having the non-display privacy setting, determine that the second user interface element is the personal information input field identified for the personal information;
generate, on the first device, an input event comprising the personal information in response to determining the identified personal information input field of the second user interface element; and
send the input event over the established communication connection from the first device to the second device in association with the second user interface element, the input event invoking the second device to fill in the personal information input field with the personal information.

US Pat. No. 10,216,933

SYSTEMS AND METHODS FOR DETERMINING WHETHER MALICIOUS FILES ARE TARGETED

Symantec Corporation, Mo...

1. A computer-implemented method for determining whether malicious files are targeted, at least a portion of the method being performed by a computing device comprising at least one processor, the method comprising:applying, at a first moment in time, a first set of data points to a malware detection structure, the first set of data points having a first portion in which each data point was generated from a malicious file known to be targeted and a second portion in which each data point was generated from a malicious file known to be non-targeted;
applying, at a second moment in time, a second set of data points to the malware detection structure, the second set of data points having a first portion in which each data point was generated from a malicious file known to be targeted and a second portion in which each data point was generated from a malicious file known to be non-targeted;
identifying boundaries within the malware detection structure for each of the first and second portions of the first and second sets;
determining that there is no difference between the boundaries of the first portions of the first and second sets and that there is a difference between the boundaries of the second portions of the first and second sets;
in response to the determining, establishing a policy to classify malicious files as non-targeted if the malicious files are associated with new data points that fall outside of previously identified boundaries;
after establishing the policy, receiving a new data point, generated from a malicious file encountered by a client device, and determining that the new data point falls outside of the previously identified boundaries;
in accordance with the policy, classifying the malicious file as non-targeted in response to determining that the new data point falls outside of the previously identified boundaries; and
using the classification to protect the client device against an infection from the malicious file.

US Pat. No. 10,216,915

AUTHENTICATION METHOD AND APPARATUS THEREOF

TENCENT TECHNOLOGY (SHENZ...

1. An authentication method, comprising:obtaining, by a processor, data received from a user to be processed;
generating, by the processor, a character sequence based on the received data, wherein each character in the character sequence corresponds to a specific physiological feature information of the user, and a location of each character in the generated character sequence corresponds to a specific order in the generated character sequence on how the specific physiological feature information of the user are to be received as prompted sequential inputs;
receiving by the processor, the specific physiological feature information sequentially inputted by the user as prompted response to the generated character sequence from the priorly received data; and
determining, by the processor, whether every piece of the specific physiological feature information according to the input sequence matches with each and every of the corresponding characters according to the specific order in the generated character sequence, such that unauthorized authentication due to misuse of biometric data is prevented.

US Pat. No. 10,216,914

SYSTEM, METHOD, AND APPARATUS FOR PERSONAL IDENTIFICATION

1. A traits-based personal identification system comprising:a device having at least two sensors suitable for providing sensory inputs in real-time;
software running on a processor produces and stores a plurality of machine learning event first artifact values derived from the sensory inputs over a period of one or more days, the learning event first artifact values indicative of human traits of a first user of the device;
a perpetual software process running on the processor produces and updates the plurality of machine learning first event artifact values with a second set of artifact values derived from the sensory inputs representing the human traits of the first user in actual possession of the device;
the perpetual software process provisioned with the plurality of machine learning first event artifact values running on the processor captures and processes, in real-time, inputs from the at least two sensors to derive predictions of similarity between the first sensory inputs used to the produce with the plurality of machine learning first event artifact values and newly captured sensory inputs;
said software calculating a probability indicative of a current user of the device being the first user; and
said software producing a personal identification code by amalgamation of said probability with a session identification token and device identifiers.

US Pat. No. 10,216,913

MOBILE DEVICE WITH BUILT-IN ACCESS CONTROL FUNCTIONALITY

1. A mobile device with built-in access control functionality comprising:an access control unit that includes
a storage module to which access is to be controlled, and
a control module storing
a permissions table configured to record a reference user identification (ID), and a user authority that corresponds to the reference user ID and that specifies what operation is allowed on said storage module, and
an ID-password table configured to record the reference user ID and a reference user password that corresponds to the reference user ID;
a memory unit that is configured to store an application program; and
a processing unit that is electrically connected to said access control unit and said memory unit, and that is configured to execute instructions of the application program so as to transmit credential information associated with the application program to said access control unit in an attempt to gain access to said storage module;
wherein when it is verified by said control module that the application program is authentic based on the credential information, said control module allows said processing unit to create data connection with said control module;
wherein said processing unit which executes the instructions of the application program is configured to transmit an asserted user ID and an asserted user password to said control module;
wherein said control module is configured
to look up in the permissions table the user authority based on the asserted user ID,
to enable, when it is determined by the control module that the asserted user ID and the asserted user password conform respectively to the reference user ID and the reference user password in the ID-password table, said processing unit to perform the operation allowed on said storage module based on the user authority,
to arrange storage spaces of a hidden area in said storage module,
to enable said processing unit to establish, via said control module, a plurality of private spaces in said hidden area,
to enable said processing unit to access said hidden area of said storage module when it is determined by said control module that the user authority thus looked up allows access to said hidden area and that the asserted user ID and the asserted user password conform respectively to the reference user ID and the reference user password in the ID-password table, and
to enable, when it is determined by said control module that the user authority thus looked up allows access to at least one of said plurality of private spaces and that the asserted user ID and the asserted user password conform respectively to the reference user ID and the reference user password in the ID-password table, said processing unit to access said at least one of said plurality of private spaces, such that said control module is capable of encrypting data obtained from said processing unit and storing the data thus encrypted in said at least one of said plurality of private spaces, and is capable of decrypting data obtained from said at least one of said plurality of private spaces and transmitting the data thus decrypted to said processing unit.

US Pat. No. 10,216,912

CONTEXTUAL USE AND EXPIRATION OF DIGITAL CONTENT

EMPIRE TECHNOLOGY DEVELOP...

9. A method to provide temporary-use digital content item to a receiving computing device, the method comprising:publishing, by a sponsoring device, digital content item information that identifies one or more temporary-use digital content items;
receiving, by the sponsoring device, a request for a selected temporary-use digital content item; and
sending, by the sponsoring device, the requested temporary-use digital content item to the receiving computing device associated with the received request, wherein the requested temporary-use digital content item comprises:
a first set of instructions for an authenticator of the receiving computing device to detect a relationship property, wherein the relationship property defines a relationship between the receiving computing device and the sponsoring device;
a second set of instructions for the authenticator to allow or disallow, based on the detected relationship property, display of digital content item at the receiving computing device; and
the digital content item that is displayable at the receiving computing device based on the second set of instructions, when the relationship property indicates that the receiving computing device is one or more of:
directly connected to the sponsoring device;
connected to a local area network (LAN) that includes the sponsoring device; or
within a particular maximum distance from the sponsoring device,
wherein the digital content item is not displayable at the receiving computing device when the relationship property indicates that the receiving computing device is one or more of:
not directly connected to the sponsoring device;
not connected to the LAN that includes the sponsoring device; or
not within the particular maximum distance from the sponsoring device.

US Pat. No. 10,216,911

PHYSICS-BASED COMPUTATIONAL METHODS FOR PREDICTING COMPOUND SOLUBILITY

1. A method for identifying soluble compounds, comprising:visualizing, using a computer model, an aggregate comprising multiple units of an initial compound in a solvent, the initial compound being insoluble in the solvent;
identifying molecular features of the initial compound that reduces its solubility based on the visualization of the aggregate in the solvent;
establishing a plurality of different candidate compounds based on the visualization of the initial compound, the structure of each of the candidate compounds being variants of the initial compound;
determining a free energy of solubility of each of the candidate compounds according to the following steps:
calculating a free energy of solubility for a compound in a solvent by computer operations which include the following steps:
(i) establishing, using a computer model, an initial state for a system comprising an aggregate of multiple molecules of the compound in a solvent;
(ii) establishing, using the computer model, a final state of the system comprising a single molecule from the aggregate fully solvated in the solvent and separate from a transformed aggregate;
(iii)transforming, using the computer model, the system from the initial state to the final state, via removing a first molecule of the compound from the aggregate to form the transformed aggregate and replacing the first molecule with solvent at the site of the first molecule; and
calculating the free energy of the transformation between the initial and the final states, which determines the free energy of solubility for the compound;
selecting one or more of the candidate compounds for synthesis based on the determined free energy of solubility of each of the candidate compounds; and
measuring an actual solubility of each of the synthesized candidate compounds and identifying which of the synthesized candidate compounds are soluble in the solvent.

US Pat. No. 10,216,910

SIMULATED CARBON AND PROTON NMR CHEMICAL SHIFTS BASED BINARY FINGERPRINTS FOR VIRTUAL SCREENING

1. A method to identify NMR chemical shift based binary fingerprints for virtual high throughput screening in drug discovery comprising:a) subjecting an in silico designed molecule to verification for bad contacts, correct valency, charge and for hybridization to provide a verified in silico designed molecule;
b) adding hydrogens to the verified in silico designed molecule, computing frequency of occurrence of peaks in ppm to assign multiplicity in the fingerprints, and obtaining carbon chemical shifts, proton chemical shifts and number of atoms;
c) generating a computed binary fingerprints of a 1024 bit length to accommodate the entire region of known proton and carbon chemical shift values, wherein functional group variation in the in silico designed molecule is reflected in the computed binary fingerprints;
d) assigning 4 bits to each ppm block in the computed binary fingerprint by using the number of peaks (hydrogen/carbon) and intensity of the spectrum in that region;
e) generating cumulative spectra; and
f) calculating the similarity score to determine class specific fingerprints.

US Pat. No. 10,216,909

HEALTH MONITORING

INTERNATIONAL BUSINESS MA...

1. A system for monitoring a health of a user, the system comprising:an image capture device configured to capture multispectral images;
a memory; and
a processor coupled with the memory and the image capture device, wherein the processor is configured to:
in response to an occurrence of a scheduled activity time of the user:
determine a geographic location of the user; and
select a first exercise routine for the user from a list of exercise routines that is specifically populated for the user based on a health record of the user, the first exercise routine is selected based on a key performance indicator of the first exercise routine being the maximum among the exercise routines from the list of exercise routines, the key performance indicator based on the geographic location;
receive activity-tracking data of the user from a wearable computing device;
determine a calorie outtake of the user based on the activity-tracking data, which includes calories used for the first exercise routine;
in response to an occurrence of a scheduled eating time of the user:
determine a geographic location of the user;
determine a number of calories to be consumed by the user based on the calorie outtake of the user; and
identify an eating place for the user within a predetermined vicinity of the geographic location, the eating place serving a food-item with the number of calories to be consumed by the user;
capture a multispectral image of a food-item;
determine a caloric-value of the food-item based on the multispectral image of the food-item;
output the caloric-value of the food-item as calorie-intake of the user;
access a current image of the user that comprises a picture of a body of the user;
generate a modified image of the user, wherein the modified image of the user reflects a predicted change in the body of the user based on the calorie-intake caused by consuming the food-item using a metabolic model of the user based on health records of the user; and
display the modified image of the user.

US Pat. No. 10,216,905

HEALTH STATE TRENDS FOR A CONSISTENT PATIENT SITUATION

Google LLC, Mountain Vie...

1. A computer-implemented method comprising:detecting, using one or more sensing devices of a sensing milieu contained in a bedroom, an automobile, a bathroom, an office, or a workplace, a first instance of an activity of a patient that is within a normal course of life of the patient, wherein said detecting is passive in that no explicit patient interaction with any of said one or more sensing devices is required, wherein said sensing devices are part of a color-sensing mirror, a pressure and electrical sensing mat, an ultrasonic bathtub, or an automobile rear-view minor and sense in a first modality, wherein said detecting is non-invasive, and wherein said activity that is within the normal course of life of the patient is walking, eating, working, exercising, driving, or talking;
responsive to said detecting said first instance of the activity, monitoring, using a radar-based monitoring device that senses in a second modality that is other than the first modality, said patient to detect a first health state of the patient associated with said activity, wherein said monitoring is carried out in temporal proximity to said first instance of the activity, wherein said monitoring is non-invasive, and wherein said monitoring is passive in that no explicit patient interaction with said radar-based monitoring device is required;
subsequently detecting, using said one or more sensing devices, multiple subsequent instances of said activity of the patient that is within said normal course of life of the patient, said subsequently detecting being passive and non-invasive;
subsequently monitoring, for each of said detected subsequent instances of said activity, said patient using said radar-based monitoring device to detect subsequent respective health states of the patient associated with said activity, wherein said subsequent monitoring is carried out in temporal proximity to said subsequent instances of the activity, respectively, and wherein said subsequent monitoring is non-invasive and passive;
processing said first and subsequent health states of the patient to determine a health state trend of the patient for said activity; and
providing the health state trend for said activity.

US Pat. No. 10,216,903

MEDICAL ADHERENCE TRACKING FRAMEWORK

ORACLE INTERNATIONAL CORP...

1. A non-transitory computer readable medium having instructions stored thereon that, when executed by a processor, cause the processor to implement a medical adherence tracker framework for a user provided with a workflow, the implementing comprising:receiving, from one of a plurality of user devices over a network, a workflow definition including a plurality of nested objects that represents tasks to be completed by the user;
serializing the workflow definition, including splitting the plurality of nested objects into a plurality of separate objects, and linking the plurality of separate objects using one or more identifiers;
persisting the workflow definition, including converting the plurality of linked objects into an object graph having a plurality of nodes, each node including one of the linked objects, and assigning a unique object identifier (OI) to each node of the object graph;
synchronizing the workflow definition among the user devices, including transmitting the object graph to the user devices over the network;
receiving, from one of the user devices over the network, an updated workflow definition having an updated portion;
updating the workflow definition, including updating one of the nodes of the object graph to incorporate the updated portion of the updated workflow definition;
synchronizing the updated workflow definition among the user devices, including transmitting the updated node to the user devices over the network;
receiving, from one of the user devices over the network, user activity data generated by a tracking device connected to the user device, the tracking device having a sensor configured to capture user activity related to the tasks, the user activity data including one or more of steps taken, distance traveled, calories burned, activity intensity, sleep duration, sleep patterns, weight, body mass index (BMI), or percentage of body fat;
updating the workflow definition, including updating one of the nodes of the object graph to incorporate the user activity data to reflect progress towards completion of the tasks;
automatically synchronizing the updated workflow definition among the user devices, including transmitting the updated node to the user devices over the network;
generating a reminder to complete one or more tasks based on the updated workflow definition; and
transmitting the reminder to the user devices over the network,
wherein, when the updated node of the object graph is updated for a first time, a unique numeric object update identifier (OUI) is assigned to the updated node, and, when the updated node of the object graph is updated after the first time, the unique numeric OUI of the updated node is incremented.

US Pat. No. 10,216,902

METHODS AND SYSTEMS FOR IMPROVING CONNECTIONS WITHIN A HEALTHCARE ECOSYSTEM

General Electric Company,...

1. A method to facilitate dynamic interface definition and configuration via an integration platform, the method comprising:storing, using a particularly configured processor, a plurality of reusable interface and route definitions to translate and exchange data messages between source and target systems in a healthcare ecosystem;
monitoring, using the processor, message exchanges and message patterns in the healthcare environment via a machine learning system to predict traffic and utilization patterns in the healthcare ecosystem;
tracking, using the processor, metadata regarding connections involving the source and target systems and storing the metadata in a graph database;
suggesting, using the processor, connections between the source and target systems based on the monitored message exchanges and message patterns and metadata from the graph database using graph analytics; and
provisioning, using the processor, an interface between the source system and the target system based on a suggested connection, the interface provisioned from the plurality of reusable interface and route definitions based on the suggested connection.

US Pat. No. 10,216,900

MONITORING INFORMATION PROVIDING DEVICE AND METHOD

KONINKLIJKE PHILIPS N.V.,...

1. A monitoring information providing device comprising:a plurality of sensors configured to measure a plurality of physiological signs of a monitored patient;
a bedside patient monitor configured to control the sensors to measure each of the plurality of the physiological signs with a selected measurement frequency;
a drug label reader configured to obtain drug administration data identifying a drug administered to a patient and a time of administration of the drug to a patient; and
one or more processors configured to:
retrieve medical data of the monitored patient from a patient database,
determine drug information of the identified drug, said drug information including drug side effects, and/or drug-drug interactions and/or drug-disease contraindications, and/or drug-food interactions,
determine how the potential drug side effects, and/or the drug-drug interactions, and/or the drug-disease contraindications and/or the drug-food interactions are expected to cause changes of physiological signs, to which extent changes are expected and/or how critical the respective changes are,
determine changes in the monitored physiological signs that are expected due to the administered drug,
determine at what time changes of physiological signs due to the administered drug are expected,
compare the measured physiological signs with corresponding thresholds to determine how critical the respective changes in the monitored physiological signs are, and
control the patient monitor to dynamically adapt at least one of the thresholds and the selected measurement frequency for a time based on the determined time at which the physiological signs are expected and based on the expected changes, the criticality of the respective changes, drug-drug interactions, drug-disease contraindications and/or drug-food interactions.

US Pat. No. 10,216,899

SENTENCE CONSTRUCTION FOR DNA CLASSIFICATION

HEWLETT PACKARD ENTERPRIS...

1. A method comprising:obtaining, from a deoxyribonucleic acid (DNA) sequence, a DNA bin that comprises a number of consecutive DNA elements in the DNA sequence equal to a bin length parameter;
constructing sentences from the DNA bin to form a constructed sentence set that includes a number of sentences equal to a size parameter, wherein:
each sentence of the constructed sentence set includes overlapping DNA elements with other sentences of the constructed sentence set and starts with a different DNA element of the DNA bin; and
each sentence of the constructed sentence set is constructed by partitioning the DNA bin into a number of words, each word comprising a number of DNA elements equal to the size parameter, and
using the constructed sentence set to train a classifier; and
determining a DNA classification for an unclassified DNA subsequence through the classifier trained using the constructed sentence set.

US Pat. No. 10,216,892

SYSTEM AND METHOD FOR INTERACTIVE VEHICLE DESIGN UTILIZING PERFORMANCE SIMULATION AND PREDICTION IN EXECUTION OF TASKS

Honda Motor Co., Ltd., T...

1. A computer-implemented method for determining the feasibility of a vehicle occupant package design model using an interactive vehicle package design system, the method comprising:receiving at a computer processor and from a peripheral device, a high-level description of a task to be executed, wherein the task to be executed is a physical task to be accomplished through motion by a virtual human subject within a task space boundary of the vehicle occupant package design model, and the high-level description of the task to be executed is entered as a user input at the peripheral device;
receiving at the computer processor, vehicle occupant package design model data based on the high-level description of the task, wherein the vehicle occupant package design model data is entered as user input at the peripheral device, retrieved from a database or memory of the peripheral device, or determined by a design analysis systems of the peripheral device;
receiving at the computer processor, parameters defining the virtual human subject, the parameters being for executing the task based on the high-level description of the task, and including physical parameters of the virtual human subject and physiological parameters of the virtual human subject, wherein the virtual human subject includes a plurality of degrees of freedom, and wherein the parameters are entered as user input at the peripheral device, retrieved from the database or the memory, or determined by the design analysis system;
receiving at the computer processor, a set of constraints based on the high-level description of the task, the set of constraints limiting the motion of the virtual human subject within the task space boundary while accomplishing the task, and including a dynamic consistency constraint that preferences a solution to a degree of freedom vector minimizing energy required to complete the task with diagonal coefficients corresponding to diagonal elements of a joint space inertia matrix and ensuring that the virtual human subject is dynamically balanced while accomplishing the task, wherein the set of constraints is determined by a posture initialization system of the peripheral device;
calculating via a design analysis system of the peripheral device, a plurality of motion descriptors of the virtual human subject including calculating a manipulation over time of the plurality of degrees of freedom of the virtual human subject during accomplishment of the task;
calculating via the design analysis system, a physical performance metric index quantifying a capability of the virtual human subject to accomplish the task based on the physical parameters of the virtual human subject and the plurality of motion descriptors;
calculating via the design analysis system, a physiological performance metric index quantifying a capability of the virtual human subject to accomplish the task based on the physiological parameters of the virtual human subject and the plurality of motion descriptors;
calculating via the design analysis system, a performance index based on the physical performance metric index and the physiological performance metric index;
generating via the design analysis system, a visual representation of the vehicle occupant package design model data and the virtual human subject executing the task based on the plurality of motion descriptors and the performance index;
displaying the visual representation on a display of the peripheral device;
evaluating via the design analysis system and based on the performance index, a feasibility of the virtual human subject accomplishing the task in the vehicle occupant package design model;
graphically representing the feasibility on the display as part of the visual representation;
receiving via the computer processor, a modification of at least one of the vehicle occupant package design model data, the task, the set of constraints, or the parameters describing the virtual human subject, wherein the modification is made by modifying the visual representation using an input/output device of the peripheral device; and
updating the visual representation according to the modification.

US Pat. No. 10,216,889

IC LAYOUT PATTERN MATCHING AND CLASSIFICATION SYSTEM AND METHOD

INTERNATIONAL BUSINESS MA...

1. A method for classifying patterns in a set of layout patterns, comprising:decomposing each of a plurality of pattern windows of an integrated circuit layout into a low frequency and a high frequency component using a wavelet analysis;
computing a plurality of moments for each of the plurality of pattern windows of the integrated circuit layout using the low frequency component as an approximation;
classifying the plurality of pattern windows into pattern classes using a distance computation for respective moments of the plurality of pattern windows by comparing the distance computation to an error value to determine similarities between the plurality of pattern windows, the classifying including generating a preferred set of integrated circuit layout designs for a particular technology node; and
fabricating one or more integrated circuit chips using one or more of the generated preferred set of integrated circuit layout designs.

US Pat. No. 10,216,888

CONSTRAINT VALIDATION PROCESS

Cadence Design Systems, I...

1. A computer-implemented method for constraint validation in an electronic design comprising:receiving, at one or more computing devices, an electronic design at an electronic design automation application;
analyzing at least a portion of the electronic design at a constraint validation tool configured to analyze one or more physical constraints in a design layout associated with the electronic design;
specifying a topological pattern associated with, but not part of, the electronic design, wherein the topological pattern includes guidelines provided by a foundry, formulated by a designer community, or provided by a design team;
applying one or more programmable electrical rule check (“PERC”) rules and one or more constraints to the electronic design, wherein the one or more PERC rules are configured to perform one or more electrical rule checks, wherein the one or more constraints include virtual constraints and wherein the virtual constraints include at least one net or device associated with the topological pattern that does not exist in the electronic design.

US Pat. No. 10,216,887

METHODS, SYSTEMS, AND COMPUTER PROGRAM PRODUCTS FOR IMPLEMENTING AN ELECTRONIC DESIGN WITH TIME VARYING RESISTORS IN POWER GATING ANALYSIS

Cadence Design Systems, I...

1. A computer implemented method for implementing an electronic design with power gate analyses using one or more time-varying circuit component models, comprising:implementing, at an electronic design implementation module including or functioning in conjunction with the at least one processor of and stored at least partially stored in a non-transitory computer readable storage medium, an electronic design or a portion thereof at least by including a power gate in the electronic design or the portion;
generating first stage electrical characteristic values representing a set of electrical characteristics of the electronic design or the portion thereof at least by performing a first stage electrical analysis on a reduced representation of the electronic design or the portion thereof;
identifying a time-varying model that represents at least one circuit component for the power gate in the electronic design, wherein
an electrical characteristic represented in the time-varying model comprises an electrical resistance and corresponds to one or more constant values in a first plurality of time periods and varies with time in a second plurality of time periods;
generating second stage electrical characteristic values representing the set of electrical characteristics of the electronic design or the portion thereof at least by performing a second stage electrical analysis on a parasitic injected representation of the electronic design or the portion thereof with the time-varying model for the power gate, wherein
the first stage electrical analysis or the second stage electrical analysis is performed on the electronic design or the portion thereof, without requiring one or more iterative processes involving a conductance data structure that represents the electronic design; and
implementing the electronic design or the portion thereof based in part or in whole upon the first stage electrical characteristic values and the second stage electrical characteristic values of the set of characteristics.

US Pat. No. 10,216,885

ADJUSTING SCAN CONNECTIONS BASED ON SCAN CONTROL LOCATIONS

International Business Ma...

1. A method comprising:receiving a circuit design comprising an input scan chain comprising a plurality of latches connected by one or more scan connections;
determining a number of scan controls for the plurality of latches;
placing the determined scan controls in selected locations, wherein the selected location for each scan control corresponds to a location where the cumulative distance from the scan control to each latch is minimized; and
adjusting the scan connections based on the scan control location; and
altering an integrated circuit corresponding to the circuit design according to the adjusted scan connections.

US Pat. No. 10,216,884

SIGNAL VIA POSITIONING IN A MULTI-LAYER CIRCUIT BOARD USING A GENETIC VIA PLACEMENT SOLVER

INTERNATIONAL BUSINESS MA...

1. A method comprising:identifying, by a via placement tool executing on a processor of a circuit design system, a plurality of via groups each comprising a ratio of a plurality of signal vias to one ground via based on a design file defining a layout of a multi-layer circuit board;
iteratively evaluating, by a genetic via placement solver, a plurality of potential placement solutions that adjust a placement of one or more of the signal vias until at least one solution is identified that meets one or more placement criteria of the signal vias, wherein the potential placement solutions comprise shifting one or more of the signal vias closer to the ground via in a same group or a different group such that a distance between the at least one shifted signal via position and the ground via is less than a minimum separation between the signal vias subject to back-drilling;
performing, by the genetic via placement solver, a mutation and recombination of one or more solutions that do not meet the one or more placement criteria and re-evaluating the one or more solutions that do not meet the one or more placement criteria;
modifying the design file to include at least one shifted signal via position based on identifying the at least one solution that meets the one or more placement criteria; and
fabricating the multi-layer circuit board based on the modified design file.

US Pat. No. 10,216,883

INTEGRATED CIRCUIT AND METHOD OF DESIGNING INTEGRATED CIRCUIT

Samsung Electronics Co., ...

1. A method of manufacturing an integrated circuit (IC), the method comprising:generating a layout of the IC; and
manufacturing the IC conforming to the layout,
wherein the generating of the layout includes:
allocating a plurality of colors to a plurality of patterns of a first cell, the first cell being a multi-height cell wherein the patterns of the multi-height cell occupy a plurality of rows, and the patterns of the multi-height cell correspond to IC patterns that are to be formed in one layer of the IC by a multi-patterning technology (MPT);
generating a plurality of shift cells for the multi-height cell according to instructions executed by a processor,
the shift cells comprising a first shift cell including a remapped form of the patterns of the multi-height cell that occupy one of the plurality of rows along with the colors allocated thereto with an original form of the patterns of the multi-height cell that occupy another of the plurality of rows along with the colors allocated thereto being retained in the first shift cell, and a second shift cell including a remapped form of the patterns of the multi-height cell that occupy said another of the plurality of rows along with the colors allocated thereto; and
storing a cell set including the first cell and the plurality of shift cells in a standard cell library of an electronic memory.

US Pat. No. 10,216,882

CRITICAL PATH STRAIGHTENING SYSTEM BASED ON FREE-SPACE AWARE AND TIMING DRIVEN INCREMENTAL PLACEMENT

INTERNATIONAL BUSINESS MA...

1. A physical synthesis system, comprising:a path straightening module including a computer hardware processor that identifies at least one meandering critical path of a circuit, and generates a reference curve based on dimensions of the critical path, wherein the critical path includes at least one gate coupled thereto that defines an initial slack timing value;
an ideal critical point identification (ID) module including a hardware computer processor that identifies at least one critical point on the reference curve;
a free-space ID module including a hardware computer processor that identifies at least one free-space to receive the gate with respect to the at least one critical point, wherein the at least one free-space indicates an available space on the circuit;
a free-space selector module including a hardware computer processor that determines a modified slack timing value based on relocating the at least one gate to the at least one free-space;
a gate modification module including a hardware computer processor that moves the at least one gate to the at least one free-space when the modified slack timing value is greater than the initial slack timing value, wherein the free-space ID module identifies a plurality of free-spaces to receive the gate, and wherein the free-space selector module determines a slack timing benefit of each free-space among the plurality of free-spaces; and
a output interface that outputs a physical implementation of the circuit and causes the circuit to be fabricated.

US Pat. No. 10,216,881

PHASE ALGEBRA FOR ANALYSIS OF HIERARCHICAL DESIGNS

International Business Ma...

1. A computer-implemented method for evaluating, by a circuit evaluator operating via one or more processors, a circuit design having a compact representation of waveforms without simulating individual waveforms, the method comprising:determining, by the circuit evaluator operating via the one or more processors, a first mapping associated with a first instance of a first module of a machine readable circuit design and a second mapping associated with a second instance of the first module, wherein
the first mapping is for mapping a first input sequence of signal transition representations received by the first instance to a common sequence of signal transition representations, and
the second mapping is for mapping a second input sequence of signal transition representations received by the second instance to the common sequence;
determining, by the circuit evaluator operating via the one or more processors, whether the first instance and the second instance share a common usage associated with a result sequence of signal transition representations that was generated by a previous propagation of the common sequence through the common usage, and
each signal transition representation represents a non-deterministic transition from a previous signal state to a set of one or more possible signal states; and
in response to determining that the first instance and the second instance share the common usage, mapping the result sequence of signal transition representations to an output sequence of signal transition representations for the second instance using the second mapping.

US Pat. No. 10,216,880

SYSTEMS AND METHODS FOR POWER EFFICIENT FLOP CLUSTERING

Cadence Design Systems, I...

1. A computer-implemented method comprising:receiving, by a computer, a netlist file comprising a plurality of device records of a plurality of devices for a circuit design, the plurality of devices comprising a plurality of flops, a plurality of tapping-points, and a plurality of clock-gaters;
generating, by the computer, from a first set of flops containing at least one of the plurality of flops wired to a first clock-gater according to the netlist file, a first subset of flops based upon a threshold boundary that defines the first subset of flops;
determining, by the computer, based upon the plurality of device records of the netlist file, a first force value associated with the first subset of flops and a first tapping-point, and a second force value associated with the first subset of flops and a second tapping-point;
in response to the computer determining that the first force value exceeds the second force value:
updating, by the computer, in the netlist file, the device records of the first subset of flops to indicate that the first subset of flops is wired to the first tapping-point;
in response to the computer determining that the second force value exceeds the first force value:
updating, by the computer, in the netlist file, the device records of the first subset of flops to indicate that the first subset of flops is wired to the second tapping-point; and
causing, by the computer, a fabrication of an integrated circuit using the updated netlist file.

US Pat. No. 10,216,879

METHOD FOR ESTABLISHING AGING MODEL OF DEVICE AND ANALYZING AGING STATE OF DEVICE WITH AGING MODEL

TAIWAN SEMICONDUCTOR MANU...

1. A method for establishing an aging model of a device, the method comprising:measuring the device to obtain degradation information of the device under an operating condition, wherein the device is a physical device;
partitioning the degradation information into a permanent degradation portion and an impermanent degradation portion;
differentiating the impermanent degradation portion by time to obtain a differential value; and
obtaining the aging model according to the differential value,
wherein when the differential value is greater than zero, a degradation of the device increases over time, and when the differential value is less than zero, the degradation of the device decreases over time.

US Pat. No. 10,216,878

CROSS-CURRENT POWER MODELLING USING LOGIC SIMULATION

International Business Ma...

1. A computer program product comprising a computer readable storage medium having program instructions embodied therewith, the program instructions executable by a processor to cause the processor to perform a method comprising:identifying two VT-Types in a transistor level design library, each VT-Type corresponding to transistors with a different threshold voltage, the VT-Types including a first VT-Type and a second VT-Type, the first VT-Type corresponding to transistors with a first threshold voltage, the second VT-Type corresponding to transistors with a second threshold voltage;
determining that the transistor level design library includes at least one cell in a stacked base configuration and at least one cell in an inverter base configuration, wherein a cell is in an inverter base configuration when all transistors in the cell are connected to a power supply through their source or drain terminals, wherein the at least one cell in the stacked base configuration comprises at least two transistors of the same type, wherein one transistor of the at least two transistors is stacked on another transistor of the at least two transistors;
generating a set of distinctive stages for the transistor level design library, each distinctive stage corresponding to a different combination of VT-Type and base configuration, the set of distinctive stages including a first distinctive stage and a second distinctive stage;
generating, using circuit simulation and for each distinctive stage in the set of distinctive stages, a cross-current effective capacitance model parameterized by stage boundary conditions and physical conditions, wherein cross-current is crowbar current, the stage boundary conditions including a slew, a load, and a supply voltage, the physical conditions including a threshold voltage of transistors in the distinctive stage, a process of the transistors, and a temperature of the transistors;
receiving a transistor level IC design to be modeled;
determining that the transistor level IC design has two stages by identifying one or more boundary nets, the one or more boundary nets being nets that are driven by a drain of one or more field-effect transistors (FETs) and drive a gate of one or more FETs, the one or more boundary nets separating the two stages, the two stages including a first stage and a second stage;
determining that the first stage includes one or more transistors with the first VT-Type and one or more transistors with the second VT-Type;
determining that the first VT-Type is a dominant VT-Type of the first stage because the first VT-Type corresponds to a lower threshold voltage than the second VT-Type;
determining a base configuration of the first stage;
mapping the first stage to the first distinctive stage based on the base configuration of the first stage and the dominant VT-Type of the first stage;
identifying characteristics of the second stage, the characteristics including a base configuration of the second stage and a VT-type of the second stage;
mapping the second stage to the second distinctive stage based on the characteristics of the second stage;
determining stage boundary conditions for the first and second stages;
determining physical conditions for the first and second stages;
determining the cross-current effective capacitance of the first and second stages using the cross-current effective capacitance models for the first and second distinctive stages, the physical conditions for the first and second stages, and the boundary conditions for the first and second stages;
weighting the cross-current effective capacitances for the first and second stages using logic simulation based statistics for the one or more boundary nets that separate the first and second stages, the logic simulation based statistics including a toggle count for the one or more boundary nets; and
determining a cross-current effective capacitance for the transistor level IC design by adding the weighted cross-current effective capacitances for the first and second stages,
wherein the transistor level IC design is provided for fabrication of integrated circuits.

US Pat. No. 10,216,877

SMART DIAGNOSIS OF INTEGRATED CIRCUITS INCLUDING IP CORES WITH ENCRYPTED SIMULATION MODELS

Altera Corporation, San ...

1. A method for utilizing an encrypted simulation model that includes a plurality of probes, comprising:activating probes of the plurality of probes in the encrypted simulation model based on a debug option;
collecting data selected by the probes of the plurality of probes in the encrypted simulation model during a simulation of an IP core by generating check points that monitor simulation signals when performing the simulation of the IP core and generating variations of the simulation signals that anticipate potential error conditions;
performing smart diagnosis of the data in the encrypted simulation model based on a set of rules;
generating feedback messages based on the smart diagnosis
editing the IP core in response to the diagnosis;
generating a program file that includes the edited IP core; and
programming a programmable logic device with the program file to transform programmable resources to implement the edited IP core.

US Pat. No. 10,216,876

SIMULATION SYSTEM ESTIMATING SELF-HEATING CHARACTERISTIC OF CIRCUIT AND DESIGN METHOD THEREOF

Samsung Electronics Co., ...

1. A method, executed by a computer, of designing a semiconductor circuit using a circuit simulation tool, the method comprising:applying the circuit simulation tool to an electric netlist in a first simulation of the semiconductor circuit's operation to calculate power consumptions of elements of the semiconductor circuit;
creating a thermal netlist about the semiconductor circuit, based on the power consumptions and geometry information of each of the elements, by replacing an electrical resistance of each of the elements within the electric netlist with a thermal resistance or a thermal capacitance;
applying the circuit simulation tool to the thermal netlist in a second simulation of the semiconductor circuit's operation to detect a temperature of each of the elements during the second simulation of the semiconductor circuit's operation;
generating a revised electric netlist of the semiconductor circuit by revising the electric netlist based on the temperature of each of the elements of the semiconductor circuit;
applying the circuit simulation tool to the revised electric netlist in a third simulation of the semiconductor circuit's operation to determine a simulation result of the semiconductor circuit's operation with respect to both the power consumptions and temperatures of the elements of the semiconductor circuit; and
modifying the semiconductor circuit, based upon the simulation result, to create a modified semiconductor circuit having improved performance with respect to self-heating than the semiconductor circuit, wherein
the thermal netlist includes thermal capacitance information of each of the elements.

US Pat. No. 10,216,875

LEVERAGE CYCLE STEALING WITHIN OPTIMIZATION FLOWS

International Business Ma...

1. A method of implementing timing adjustments in an integrated circuit, the method comprising:calculating an input timing slack at an input to a latch by subtracting an input arrival time to the latch from an input required arrival time of the latch;
calculating an output timing slack at an output to the latch by subtracting an output arrival time of the latch from an output required arrival time from the latch;
performing cycle stealing to improve the output timing slack by modifying the input required arrival time of the latch and the output arrival time;
reducing the output timing slack by a pessimism amount;
performing optimization by making design modifications in the integrated circuit to improve the input timing slack and the output timing slack until a desired slack goal is achieved;
increasing the output timing slack by the pessimism amount; and
generating a final integrated circuit based on the final power recovery and creating a semiconductor chip based on the final integrated circuit.

US Pat. No. 10,216,874

ROBOT SIMULATION DEVICE

FANUC CORPORATION, Yaman...

1. A robot simulation device configured to simulate a behavior of a wire-shaped member arranged on a robot, comprising:a processing unit comprising
a model generation unit which generates a three-dimensional model of the wire-shaped member from a plurality of mass points set along a longitudinal direction of the wire-shaped member so as to define an outer circumferential surface of the wire-shaped member and a plurality of spring elements connecting the plurality of mass points together;
a focus point setting unit which sets, on the three-dimensional model of the wire-shaped member, a plurality of focus points to grasp a torsioned state of the wire-shaped member; and
a simulation unit which performs a simulation of the behavior of the wire-shaped member associated with operation of the robot using the three-dimensional model of the wire-shaped member and executes the simulation so that a position of at least one mass point is changed over time; and
a display unit which displays focus point images representing the focus points, together with wire-shaped member images representing a profile of the wire-shaped member, using time- series position data of the plurality of mass points and time-series position data of the plurality of focus points obtained via the simulation performed by the simulation unit, wherein
the plurality of focus points are part of the plurality of mass points and are set on part in a circumferential direction of the wire-shaped member in line along a longitudinal direction of the three-dimensional model of the wire-shaped member, and
the simulation unit calculates a maximum torsion amount of the wire-shaped member based on the time-series position data of the plurality of focus points, calculates an arrangement orientation of the wire-shaped member so as to decrease the maximum torsion amount of the wire-shaped member to prevent the wire-shaped member from being broken or damaged, and applies the calculated arrangement orientation of the wire-shaped member to control the robot.

US Pat. No. 10,216,872

FLY-HEIGHT INTERACTION SIMULATION

International Business Ma...

1. A computer program product for providing simulation results of an interaction between a transducer head and a magnetic medium the computer program product comprising:one or more non-transitory computer readable storage media and program instructions stored on the one or more computer readable storage media, the program instructions comprising:
program instructions to identify a first raster scan of a sample via a scanning probe microscope, wherein the sample is a magnetic medium;
program instructions to generate a topography image based on the first raster scan of the sample, wherein the topography image based on the first raster scan is a pseudo color image representing a surface topography of the sample based on a measurement of intensity values of received forces between the probe of the scanning probe microscope and the sample;
program instructions to identify one or more a high intensity values that corresponds to low heights within the created topography image based on the first raster scan;
program instructions to identify one or more low intensity values that corresponds to high heights within the created topography image based on the first raster scan;
program instructions to select one or more identified high intensity values within the topography image based on the first raster scan;
program instructions to select one or more identified low intensity values within the topography image based on the first raster scan;
program instructions to identify two or more reference features within the created topography image based on the selected one or more identified high intensity values and the selected one or more identified low intensity values;
program instructions to display the generated topography image to a user;
program instructions to receive one or more selections of the identified two or more reference features within the generated topography image from the user, wherein the one or more selections includes one or more rectangles placed by the user, around the identified two or more reference features;
program instructions to calculate an average height based on the received one or more selections of the identified two or more reference features;
program instructions to determine a lift distance associated with a probe of the scanning probe microscope wherein the lift distance is an additional offset above the identified two or more reference features that simulates the sample flying over a transducer head;
program instructions to calculate an actual fly-height wherein the actual fly-height combines the calculated average height and the determined lift distance;
program instructions to calculate a lift distance for each data point within the topography image based on the first raster scan of the sample based on the calculated actual fly-height, wherein the lift distance for each data point identifies a difference between the height of each data point and the actual fly-height to maintain the uniform plane;
program instructions to define a uniform plane based on the calculated average height and the determined lift distance;
program instructions to perform a second raster scan of the sample based on the defined uniform plane;
program instructions to generate a fly-height image based on the second raster scan;
program instructions to provide simulation results based at least in part on the second raster scan;
program instructions to display the topography image and the fly-height image; and
program instructions to identify one or more failures based on a comparison of sensitivity values of the topography image and the fly-height image to identify variations.

US Pat. No. 10,216,870

METHODOLOGY TO PREVENT METAL LINES FROM CURRENT PULSE DAMAGE

INTERNATIONAL BUSINESS MA...

1. A computer-implemented method for evaluating a circuit design to protect a plurality of metal connections from peak current damage, the method comprising:receiving a circuit design including the plurality of metal connections;
evaluating a peak current of one or more of the plurality of metal connections;
determining a peak current threshold for the plurality of metal connections based on physical characteristics of the plurality of metal connections;
responsive to determining that the peak current of the one or more of the plurality of metal connections exceeds the peak current threshold, performing a peak current design modification to modify the plurality of metal connections in the circuit design; wherein the performing the peak current design modification comprises:
defining a metal connection type in the circuit design by width and height;
determining a peak current factor from a metal connection width and thickness matrix associated with the plurality of metal connections having the peak current;
selecting the peak current factor based on the defined metal connections type;
applying the selected peak current factor to the plurality of metal connections and repeating a check for peak current damage to determine if peak current damage still exists in the circuit design;
updating the plurality of metal connections in the circuit design based on the determined peak current factor;
wherein the selecting the peak current factor begins with the smallest peak current factor of the metal connection width and thickness matrix for the defined connection type and selecting a next highest peak current factor in the matrix until peak current damage no longer exists; and
operating a circuit based at least in part on the circuit design using the determined peak current factor.

US Pat. No. 10,216,869

SYSTEM AND METHOD FOR SIMULATING MULTIPLE BACNET DEVICES AND OBJECTS

TRANE INTERNATIONAL INC.,...

1. A semi-empirical or an empirical computer simulation system for designing a building automation and control (BAC) system, comprisinga processor;
a non-transitory computer-readable memory in communication with the processor, wherein the non-transitory computer-readable memory has stored thereon a simulation configuration data of one or more simulation model(s) of one or more building automation and control network (BACnet) device(s) of the BAC system; and
a network interface in communication with the processor,
wherein the processor is configured to communicate via the network interface with one or more real BACnet device(s) of a real existing BAC system,
the processor is configured to receive real data from the one or more real BACnet device(s),
the processor is configured to store the real data onto the non-transitory computer-readable memory, wherein the non-transitory computer-readable memory has stored thereon the real data, and
the processor is configured to modify the one or more simulation model(s) of the one or more BACnet device(s) based on the real data to construct the semi-empirical or the empirical simulation model(s) of the one or more BACnet device(s) by adding a new simulation configuration data, which includes a property value based on the real data, to the one or more simulation model(s) of the one or more BACnet device(s) of the BAC system, and by deleting a default simulation configuration data from the one or more simulation model(s) of the one or more BACnet device(s) of the BAC system based on the real data, and
the processor is configured to execute a simulation of the semi-empirical or the empirical computer simulation model of the BAC system and to output a result of the simulation.

US Pat. No. 10,216,868

IDENTIFYING COMBINATIONS OF ARTIFACTS MATCHING CHARACTERISTICS OF A MODEL DESIGN

International Business Ma...

1. A method comprising:receiving a model image;
detecting a first plurality of objects in the model image, wherein the first plurality of objects comprise a first object and a second object;
determining, by one or more processors, a first set of characteristics corresponding to the first object and a second set of characteristics corresponding to the second object;
correlating the first object to a first node in an ontology of objects based, at least in part, on the first set of characteristics corresponding to the first object; and
correlating the second object to a second node in the ontology of objects based, at least in part, on the second set of characteristics corresponding to the second object.

US Pat. No. 10,216,864

FAULT-CAPABLE SYSTEM MODELING AND SIMULATION

The MathWorks, Inc., Nat...

1. A method, comprising:associating different subsets of sub-blocks, included in a block, with a plurality of modes of the block,
the block being included in a model,
the block representing a function corresponding to a simulation,
the plurality of modes of the block providing different functionalities when the model is executed,
the plurality of modes comprising a standard operational mode of the block and a fault mode of the block,
the fault mode of the block including at least one of:
a first mode including a dysfunctional mode of operation that is conditional upon one or more simulated operating conditions, or
a second mode including a dysfunctional mode of operation that is imposed upon the simulation by user selection,
a different subset of sub-blocks being executed when the block operates in the fault mode than when the block operates in the standard operational mode to generate different results based on a same input into the block,
where the associating the different subsets of the sub-blocks is performed by a computing device;
associating each of a plurality of scenarios, corresponding to the model, with a respective mode of the plurality of modes, of the block,
a first scenario, of the plurality of scenarios, being associated with the standard operational mode of the block,
a second scenario, of the plurality of scenarios, being associated with the fault mode of the block, and
where the associating the plurality of scenarios is performed by the computing device;
converting the model into an executable form of the model,
where the converting is performed by the computing device; and
executing the executable form of the model to simulate the plurality of scenarios within at least one of a technical computing environment, a simulation environment, or a target environment,
the block operating in the standard operational mode by executing a first subset of the sub-blocks associated with the standard operational mode when the first scenario is simulated, the block operating in the fault mode by executing a second subset of the sub-blocks associated with the fault mode when the second scenario is simulated, and
where the executing is performed by the computing device; and
where executing the executable form of the model includes, at a time of simulation, at least one:
identifying a user defined probability that a particular scenario occurs during simulation at a model level or a component level, selecting to simulate the second scenario, associated with the fault mode of the block, based on the user defined probability, and operating the block in the fault mode based on selecting to simulate the second scenario; or
detecting an operational behavior during the simulation, selecting to operate the block in the fault mode based on the operational behavior detected during the simulation, and operating the block in the fault mode during the simulation.

US Pat. No. 10,216,862

PREDICTIVE ESTIMATION FOR INGESTION, PERFORMANCE AND UTILIZATION IN A DATA INDEXING AND QUERY SYSTEM

SPLUNK INC., San Francis...

1. A method comprising:receiving, by a data intake and query system, user input specifying that a first data source is to be a subject of a storage related estimate;
receiving, by the data intake and query system, raw data generated by the first data source;
parsing, by the data intake and query system, the raw data generated by the first data source into a first plurality of events;
generating the storage related estimate, by the data intake and query system, based on at least some of the first plurality of events, the storage related estimate being an estimate of an amount of storage space that would be needed for the data intake and query system to index, including to persistently store, all data received by the data intake and query system from the first data source for a time period;
causing an indication of the storage related estimate to be output to a user of the data intake and query system; and
completing, by the data intake and query system, an indexing of only a sample of the received first plurality of events based on a sampling criterion, the sample being fewer than all of the first plurality of events, and not completing indexing of a remainder of the first plurality of events in the absence of a user input indicative that the first data source should be indexed, wherein completing indexing includes committing data being indexed or to be indexed to persistent storage.

US Pat. No. 10,216,861

AUTONOMIC IDENTIFICATION AND HANDLING OF AD-HOC QUERIES TO LIMIT PERFORMANCE IMPACTS

International Business Ma...

1. A computer-implemented method for processing a database query, comprising:receiving a first database query to be executed according to a first processing profile;
determining whether the first database query is likely to be an ad hoc query, wherein the determining of whether the first database query is likely to be an ad hoc query is based on a first likelihood score;
generating, without input from a user, a second processing profile and a third processing profile before executing the first database query in response to determining that the first database query is likely to be an ad hoc query;
running the first database query using the second processing profile, wherein the second processing profile is selected over the third processing profile in response to determining that the first likelihood score is greater than a first confidence threshold and less than a second confidence threshold;
optimizing the second processing profile according to the running of the first database query;
saving the first database query, the second processing profile, and the third processing profile as a persistent storage object;
receiving a second database query;
determining the second database query is likely to be an ad hoc query similar to the first database query based on a second likelihood score, wherein the second likelihood score is greater than the first likelihood score;
invoking, in response to determining the second database query is likely to be an ad hoc query similar to the first database query, the persistent storage object; and
running the second database query using the third processing profile, wherein the third processing profile is selected over the second processing profile in response to determining that the second likelihood score is greater than the second confidence threshold.

US Pat. No. 10,216,859

HANDLING USER INTERFACE COMPONENTS

Facebook, Inc., Menlo Pa...

1. A method comprising:by a client computing device, sending a request for content from two or more categories of content for display in a user interface, wherein:
content from a first category of content of the two or more categories is received after a first delay;
content from a second category of content of the two or more categories is received after a second delay that is longer than the first delay; and
the content from the second category is displayed adjacent to the content from the first category;
by the client computing device, determining a space requirement for the content from the second category, wherein the determining is based at least in part on information in the request and information stored on the client computing device; and
by the client computing device, allocating, based on the space requirements, space for the content from the second category; and
by the client computing device, displaying content from the first category simultaneously with displaying a substantially blank space that corresponds to the content from the second category before the content from the second category is received.

US Pat. No. 10,216,856

MOBILIZING AN EXISTING WEB APPLICATION

International Business Ma...

1. A method for adjusting a web application to comply with user interface capabilities of a device type, the method comprising:monitoring, by one or more processors, usage patterns of a web application by a user utilizing internal and external analytics techniques, wherein:
the usage patterns comprise device type and an alternate first usage pattern, and
the monitoring further comprises externally monitoring, using a Java application programming interface for RESTful Web Services (JAX-RS)/servlet filter, usage of a representational state transfer (REST) resource of the web application, including input network communication data and output network communication data of the REST resource of the web application;
converting, by one or more processors, a set of data from the monitored input network communication data and the monitored output network communication data of the REST resource to Extensible Markup Language Schema (XSD);
updating, by one or more processors, documentation of the REST resource of the web application with the converted set of data;
receiving, by one or more processors, user interface capabilities of the device type;
retrieving, by one or more processors, a set of one or more rules associated with the device type including a first rule to adjust the at least one user interface element based on a corresponding first usage pattern identified during a specified time of access of the web application, wherein the specified time is a time of day;
analyzing, by one or more processors, the web application for compatibility with the user interface capabilities of the device type based on, at least, the set of one or more rules;
analyzing, by one or more processors, the web application for the corresponding first usage pattern during the specified time of access of the web application corresponding to the first rule;
determining, by one or more processors, at least one user interface element to be modified within presentation of the web application on the device type based on the analyzed compatibility of the web application with the user interface capabilities of the device type and the analyzed corresponding first usage pattern during the specified time of access of the web application corresponding to the first rule, wherein:
the at least one user interface element to be modified comprises a list including a plurality of items, and
the at least one user interface element to be modified within presentation of the web application on the device type comprises organizing the plurality of items of the list based on hit frequency of each of the plurality of items over a period of time, and adjusting a number of items to display within the list; and
generating, by one or more processors, a version of the web application compatible with the user interface capabilities of the device type that includes the modified at least one user interface element.

US Pat. No. 10,216,855

MOBILIZING AN EXISTING WEB APPLICATION

International Business Ma...

1. A computer program product for adjusting a web application to comply with user interface capabilities of a device type, the computer program product comprising:one or more computer readable storage media and program instructions stored on the one or more computer readable storage media, the program instructions comprising:
program instructions to monitor usage patterns of a web application by a user utilizing internal and external analytics techniques, wherein:
the usage patterns comprise device type and an alternate first usage pattern, and
the monitoring further comprises program instructions to monitor, using a Java application programming interface for RESTful Web Services (JAX-RS)/servlet filter, usage of a representational state transfer (REST) resource of the web application, including input network communication data and output network communication data of the REST resource of the web application;
program instructions to convert a set of data from the monitored input network communication data and the monitored output network communication data of the REST resource to Extensible Markup Language Schema (XSD);
program instructions to update documentation of the REST resource of the web application with the converted set of data;
program instructions to receive user interface capabilities of the device type;
program instructions to retrieve a set of one or more rules associated with the device type including a first rule to adjust the at least one user interface element based on a corresponding first usage pattern identified during a specified time of access of the web application, wherein the specified time is a time of day;
program instructions to analyze the web application for compatibility with the user interface capabilities of the device type based on, at least, the set of one or more rules;
program instructions to analyze the web application for the corresponding first usage pattern during the specified time of access of the web application corresponding to the first rule;
program instructions to determine at least one user interface element to be modified within presentation of the web application on the device type based on the analyzed compatibility of the web application with the user interface capabilities of the device type and the analyzed corresponding first usage pattern during the specified time of access of the web application corresponding to the first rule, wherein:
the at least one user interface element to be modified comprises a list including a plurality of items, and
the at least one user interface element to be modified within presentation of the web application on the device type comprises organizing the plurality of items of the list based on hit frequency of each of the plurality of items over a period of time, and adjusting a number of items to display within the list; and
program instructions to generate a version of the web application compatible with the user interface capabilities of the device type that includes the modified at least one user interface element.

US Pat. No. 10,216,854

OPTIMIZED PAGE SCRIPT DOWNLOADS IN A COMPONENT BASED ARCHITECTURE

International Business Ma...

1. A method for optimized downloading of scripts in a component-based architecture, the method comprising:receiving in a Web browser for rendering, both a page including an embedded script and also a compact form of a dependency graph constructed for a multiplicity of Javascript modules upon which the script depends, the graph comprising one or more nodes, each node of the one or more nodes including a unique index, a module identifier referencing a corresponding one of the modules, a uniform resource indicator (URI), and a list of immediate child dependencies; and,
hooking a module initialization call for the embedded script with a module initialization supplement, the module initialization supplement performing as the Web browser loads the page:
parsing the compact form of the dependency graph received with the page to determine which of the modules already have been loaded and which of the modules remain to be loaded;
assembling in a single list, those of the modules yet to be loaded to be incorporated in a request to retrieve the modules from the server and requesting each of the modules in the list in a single request;
receiving from the server in a single stream the subset of the modules that have yet to be loaded;
loading each of the modules in the subset in conjunction with rendering the page; and,
modifying the compact form of the dependency graph to indicate that each of the modules has been loaded as each of the modules are initialized for use in the page.

US Pat. No. 10,216,852

INDEXING ACCESS LIMITED NATIVE APPLICATIONS

Google LLC, Mountain Vie...

1. A computer-implemented method performed by data processing apparatus comprising one or more computers in data communication, the method comprising:determining that a native application limits access to the native application using account credential requirements, the native application generating an application environment for display on a user device within the native application and operating independent of a browser application that can operate on the user device;
in response to determining that the native application limits access to the native application using account credential requirements, obtaining, for an automated crawler, a set of account credentials for indexing environment instances of the native application, wherein the account credentials are robot account credentials for the automated crawler that is not a human user and is not specific to a human user, and the robot account credentials are generated specifically for the automated crawler and specific to the native application and different from robot account credentials for other native applications;
instantiating the native application with the set of account credentials; and
accessing environment instances of the native application, and for each of the environment instances:
generating environment instance data describing content of the environment instance, the content described by the environment instance data including text that a user device displays on the environment instance when the user device displays the environment instance, wherein the content described by the environment instance data in the native application instantiated using the robot account credentials is content that is not specific to any particular human user; and
indexing the environment instance data for the native application in an index that is searchable by a search engine.

US Pat. No. 10,216,851

SELECTING CONTENT USING ENTITY PROPERTIES

Google LLC, Mountain Vie...

1. A method of selecting content for display on a user device via a computer network, comprising:receiving, from a content provider associated with a content item and by a data processing system having one or more processors, an indication of an online document;
generating, by the data processing system and using the online content, content selection criteria specifying types of queries that make the content item eligible to be selected for display along with search results responsive to queries matching the specified types of queries;
generating, using a data structure that links related entities to each other, a content selection criteria structure that includes an entry for the content selection criteria, an entry for two or more entities that are related to the content selection criteria through a link in the data structure but do not appear in the generated content selection criteria, and a connection between each pair of related entities in the content selection criteria structure, the generated content selection criteria structure being separate from the data structure;
receiving, by the data processing system, a search query provided via a user device;
generating a query structure that includes an entry for the search query, an entry for two or more entities that are related to the search query through a link in the data structure but do not appear in the search query, and a connection between each pair of related entities in the query structure, the generated query structure being separate from the content selection criteria structure and the data structure;
matching a topology and content of the content selection criteria structure to a topology and content of the query structure; and
selecting the content item as a candidate for display on the user device based on the match between the content selection criteria structure and the query structure.

US Pat. No. 10,216,850

SENTIMENT-MODULES ON ONLINE SOCIAL NETWORKS

Facebook, Inc., Menlo Pa...

1. A method comprising, by one or more computing devices:accessing, by the one or more computing devices, a plurality of communications authored by one or more users of an online social network, each communication being associated with a particular content item and comprising a text of the communication;
calculating, for each of the plurality of communications, one or more sentiment-scores corresponding to one or more sentiments, respectively, wherein at least one of the sentiment-scores is based on an output of a first classifier function, wherein the output of the first classifier function is calculated based on:
a degree to which one or more n-grams of the text of the communication match one or more sentiment-words associated with the one or more sentiments, and
a context determined to be associated with the particular content item, wherein the context is determined based on one or more n-grams associated with the particular content item;
determining, for each of the plurality of communications, an overall sentiment for the communication based on the calculated sentiment-scores for the communication;
calculating, by the one or more computing devices, one or more sentiment levels for the particular content item corresponding to one or more sentiments, respectively, each sentiment level being based on a total number of communications determined to have the overall sentiment of the sentiment level; and
generating, by the one or more computing devices, a sentiments-module comprising one or more sentiment-representations corresponding to one or more overall sentiments having sentiment levels greater than a threshold sentiment level.

US Pat. No. 10,216,845

METHOD AND APPARATUS FOR PREDICTIVE ENRICHMENT OF SEARCH IN AN ENTERPRISE

1. A computer implemented enterprise search apparatus, comprising:a recommendation engine, in communication with a search engine and a database, receiving information from the database in response to a customer query entered into the search engine, where the information received from the database includes:
information related to the customer, and metadata of chats of the customer;
a refinement engine configured to refine the customer query based customer responses to a list of questions;
a summarization engine configured to fetch chat and voice transcripts from conversations with the one or more customers, and social media, blog, forum transcripts from said one or more repositories; and
a processor executing the refinement, summarization and recommendation engines;
said recommendation engine probabilistically predicting a customer issue type based upon both of the information related to the customer fetched from the database and the customer query;
wherein said summarization engine is configured to text mine transcripts of chats with the customer and generate a summary content using Natural Language Processing based summarization techniques, the summary content is automatically applied to a knowledge repository across all customers, wherein the knowledge repository is filtered using structured attributes comprising any of highest recommendation score, highest customer satisfaction score (CSAT), and highest resolution score for a given issue type, the knowledge repository used by the search engine in responding to queries;
said recommendation engine executing an algorithm for predicting a probability that a given issue is an issue of interest for the customer and returning results to the customer related to said issue of interest; and wherein, upon receiving a response from the customer, said refinement engine further refines the customer query and sends said refined search query to said search engine.

US Pat. No. 10,216,844

GRAPHICAL INTERFACE PRESENTATION OF SEARCH RESULTS

EXCALIBUR IP, LLC, Sunny...

1. A method of graphical interface presentation, comprising:receiving a search string;
generating a search result series, comprising a first search result and a second search result, based upon the search string; and
responsive to determining that the search string was received from a client device of a mobile touch-sensitive type:
generating a set of cards for the search result series, the generating a set of cards comprising:
generating a first card, comprising a first title of the first search result and a first summary of the first search result, for the first search result;
generating a first tab, comprising the first title of the first search result included in the first card, for the first search result;
generating a second card, comprising a second title of the second search result and a second summary of the second search result, for the second search result; and
generating a second tab, comprising the second title of the second search result included in the second card, for the second search result;
defining a reorder gesture, corresponding to a defined motion of the client device, for navigation through the set of cards; and
presenting the search result series in a card-based graphical interface to a user on the client device responsive to the receiving, the presenting the search result series comprising:
concurrently presenting, at a first time, (i) a single card for a single search result comprising the first card for the first search result and (ii) the second tab for the second search result, without presenting the first tab for the first search result;
detecting the reorder gesture at a second time after the first time; and
responsive to the detecting the reorder gesture, concurrently presenting, at a third time after the second time, (i) a single second card for a single second search result comprising the second card for the second search result and (ii) the first tab for the first search result, without presenting the second tab for the second search result.

US Pat. No. 10,216,843

METHOD AND COMPUTER READABLE MEDIUM FOR PROVIDING, VIA CONVENTIONAL WEB BROWSING, BROWSING CAPABILITY BETWEEN REMOTE/VIRTUAL WINDOWS AND FROM REMOTE/VIRTUAL WINDOWS TO CONVENTIONAL HYPERTEXT DOCUMENTS

1. A computer-implemented method comprising:providing a server computing device configured to run a Remoting Engine hosting a remote graphical computer desktop, remote graphical application window, or remote graphical windowing user session;
modifying a navigational link, which includes a destination URL or URI, on the server computing device, to generate a pop-out link, wherein the pop-out link includes an identifier in addition to the destination URL or URI of the pop-out link;
providing a client computing device configured to run a Remoting Engine client, which utilizes a client web browser to request and render content at a given URL or URI;
establishing a remote graphical computer desktop, remote graphical application window, or remote graphical windowing user session between the client computing device and the server computing device wherein the established remote graphical computer desktop, remote graphical application window, or remote graphical windowing user session is displayed to a user within a top level container of the client web browser;
upon a navigation action on the pop-out link by a user browsing the established first remote graphical computer desktop, remote graphical application window, or remote graphical windowing user session;
parsing, by a processor, navigation event data including the identifier and URL or URI from the pop-out link;
passing, by the processor, the pop-out link navigation event data to the Remoting Engine on the server computing device;
in response to the identifier passed to the Remoting Engine on the server computing device, reloading, by the processor, the top level container of the client web browser with content provided at the destination URL or URI.

US Pat. No. 10,216,842

METHOD FOR CLUSTERING RESULTS FROM A SAME CHANNEL

GOOGLE LLC, Mountain Vie...

1. A method comprising:providing a user interface to enable a user to submit a search query pertaining to a topic of interest;
obtaining, by a processing device, an initial plurality of search results based on the search query pertaining to the topic of interest, the initial plurality of search results are obtained in an order defined by a relation of each of the plurality of search results to the topic of interest;
determining, by the processing device, whether to perform clustering on the initial plurality of search results, wherein determining whether to perform clustering comprises determining whether the initial plurality of search results comprises at least a first result associated with a channel of a plurality of channels and a second result associated with the channel of the plurality of channels, wherein the channel comprises a plurality of media items, wherein the first and second results pertain to first and second media items of the plurality of media items of the channel, and wherein the initial plurality of search results comprises one or more third results comprising one or more videos that are not associated with any of the plurality of channels;
upon determining not to perform clustering on the initial plurality of search results, providing, by the processing device, a modified user interface including the initial plurality of search results ordered based on a relation of each of the initial plurality of search results to the topic of interest; and
upon determining to perform clustering on the initial plurality of search results, providing, by the processing device, a modified user interface including a modified plurality of search results comprising the first result and the second result that are associated with the channel, and the one or more videos that are not associated with any of the plurality of channels, the modified user interface including the modified plurality of search results ordered based at least in part on a relation of each of the modified plurality of search results to the channel, in order to enable the user to ascertain which of the modified plurality of search results are associated with the channel, and to select any media items corresponding to the search results associated with the channel,
wherein the user interface is to position the first result in the modified plurality of search results adjacent to a location of the second result in the modified plurality of search results, in order to visually illustrate that both the first result and the second result are part of a cluster related to the channel, and wherein the user interface is also to position the one or more videos at a location that visually illustrates that the one or more videos are not part of any cluster related to any of the plurality of channels.

US Pat. No. 10,216,839

RELATION EXTRACTION USING CO-TRAINING WITH DISTANT SUPERVISION

International Business Ma...

1. A computer implemented method for, updating an electronically stored knowledge graph of a knowledge domain, comprising:receiving a natural language text comprising sentences;
splitting the sentences into at least a first portion and a second portion;
identifying pairs of concepts in the sentences of the first portion;
determining, for a first sentence corresponding to at least one sentence in the first portion having a concept pair, a likelihood that the first sentence exhibits an existing relation between concepts of the concept pair, wherein the determined likelihood represents a first confidence value;
determining, for a second sentence corresponding to at least one sentence in the second portion having the concept pair, a likelihood that a word or phrase connecting concepts of the concept pair exhibits the existing relation, wherein the determined likelihood represents a second confidence value and is based, in part, on the first confidence value;
determining, for a third sentence corresponding to at least one sentence in the first portion having the concept pair, a likelihood that the third sentence exhibits the existing relation, wherein the determined likelihood represents a third confidence value, and is based, in part, on the second confidence value;
iteratively determining successive likelihoods according to the first, second, and the third confidence values, by alternating between sentences of the first portion and sentences of the second portion until the successive likelihoods reach corresponding threshold confidence values,
wherein determining, for at least one sentence in the first portion having a concept pair, a likelihood that the sentence is an instance of the concepts in the concept pair exhibiting an existing relation, is based on identifying one or more concept pairs in the at least one sentence, the identifying comprising:
comparing words of the at least one sentence in the first portion to elements of a knowledge graph;
identifying matching words as concepts; and
pairing at least two of the identifying concepts with one another to form a concept pair; and
updating the reference knowledge graph to include relations between concepts whose corresponding confidence scores exceed a threshold value; and
using the updated reference knowledge graph in an analysis of additional natural language text.

US Pat. No. 10,216,838

GENERATING AND APPLYING DATA EXTRACTION TEMPLATES

Google LLC, Mountain Vie...

1. A computer-implemented method for generating and applying data extraction templates to extract transient content from structured communications created automatically using templates, comprising:grouping a corpus of structured communications into a plurality of clusters based on one or more patterns shared among one or more structured communications within the corpus;
identifying, from structured communications of a particular cluster, a set of structural paths;
classifying a first structural path of the set of structural paths, associated with a first segment of text, as a first transient structural path in response to a determination that a count of occurrences of the first segment of text across the particular cluster satisfies a criterion;
classifying the first transient structural path as a first semantic data type based on one or more signals related to the structured communications of the particular cluster;
classifying a second structural path of the set of structural paths, associated with a second segment of text, as a second transient structural path in response to a determination that a count of occurrences of the second segment of text across the particular cluster satisfies the same criterion or a different criterion;
classifying the second transient structural path as a second semantic data type based at least in part on the first semantic data type;
generating a data extraction template to extract, from one or more subsequent structured communications, one or more segments of text associated with the first transient structural path;
associating a subsequent structured communication with the particular cluster based on one or more patterns shared between the subsequent structured communication and one or more structured communications of the corpus; and
applying the data extraction template associated with the particular cluster to the subsequent structured communication to extract one or more segments of text associated with the first transient structural path.

US Pat. No. 10,216,837

SELECTING PATTERN MATCHING SEGMENTS FOR ELECTRONIC COMMUNICATION CLUSTERING

GOOGLE LLC, Mountain Vie...

1. A system comprising one or more processors operably coupled with non-transitory memory that stores instructions that, in response to execution of the instructions by the one or more processors, cause the one or more processors to:identify a set of pattern matching segments that match at least one of a corpus of email addresses;
determine a measure of coverage of each of the set of pattern matching segments across the corpus of email addresses;
determine one or more measures of flexibility associated with each of the set of pattern matching segments based on a count of wildcard characters within each pattern matching segment relative to a count of fixed text characters within each pattern matching segment;
determine, based on the measure of coverage and the one or more measures of flexibility associated with each of the set of pattern matching segments, a score associated with each pattern matching segment;
select, based on scores associated with the pattern matching segments, one or more of the pattern matching segments that satisfy one or more thresholds that are automatically adjusted;
group a corpus of emails into a plurality of clusters based on a comparison of the one or more selected pattern matching segments to email addresses associated with the corpus of emails;
analyze emails of a given cluster of the plurality of clusters grouped based on a given pattern matching segment to identify content that is transient among the emails of the given cluster;
generate, for the given cluster, a data extraction template that is usable to extract transient content from subsequent emails that include sender email addresses that match the given pattern matching segment; and
apply the data extraction template to a subsequent email having a sender address that matches the given pattern matching segment to extract transient data from a subject or body of the subsequent email, wherein the extracted transient data is output to a user via an output device of a computing device operated by the user.

US Pat. No. 10,216,836

PROTOCOL BASED USER DATA MANAGEMENT

International Business Ma...

1. A computer system for data management, the computer system comprising:one or more processors, one or more computer-readable memories, one or more computer-readable tangible storage devices, and program instructions stored on at least one of the one or more tangible storage devices for execution by at least one of the one or more processors via at least one of the one or more memories, the program instructions comprising:
program instructions to receive a login token and instruction from a user device, wherein the login token is associated with a user of the user device, and wherein the instruction comprises a command selected from the group consisting of: reading profile data belonging to the user and writing profile data belonging to the user, and wherein the login token and the instruction is received from a file system located on a network attached storage device, and wherein the login token and the instruction is received in response to an action of the user selected from the group consisting of: logging on the user device and logging off the user device;
based on the received login token, program instructions to determine whether a user profile container exists for the user, wherein determining whether the user profile container exists for the user comprises scanning the file system located on the network attached storage device for a profile container associated with the received login token;
based on determining that the user profile container does not exist, program instructions to create the user profile container for the user, wherein creating the user profile container for the user comprises:
program instructions to identify profile data belonging to the user located in a plurality of locations within a local file system on the user device, wherein identifying profile data belonging to the user comprises scanning file metadata within the local file system for a file associated with the received login token, and wherein identified profile data belonging to the user corresponds to a user profile characteristic, and wherein the local file system and the file system located on the network attached storage device utilize an application-layer network communication protocol; and wherein the application-layer network communication protocol utilized by the local file system and the file system located on the network attached storage device is the same;
program instructions to transmit identified profile data belonging to the user within to a single binary large object, wherein the single binary large object is stored within the file system located on the network attached storage device; and
program instructions to execute the received instruction, wherein executing the received instruction comprises transmitting profile data identified as belonging to the user to the file system located on the network attached storage device.

US Pat. No. 10,216,835

GENERATING WORD CLOUDS

International Business Ma...

1. A computer system comprising:one or more computer processors;
one or more computer readable storage devices; and
program instructions stored on the computer readable storage devices for execution by at least one of the one or more computer processors, the program instructions comprising:
program instructions to identify an information resource, said information resource comprising text information, said information resource comprising a contribution from an entry source, said entry source being associated with a profile, said profile comprising a plurality of profile information items that describes said entry source, said plurality of profile information items comprising at least an age, a gender, a location, and an amount of contribution;
program instructions to generate a first word cloud, said first word cloud being based on one or more words used within said text information, said first word cloud comprising a first plurality of words, wherein said first plurality of words is based on a topic, said topic being for said words used within said text information;
program instructions to generate a second word cloud, said second word cloud being based on said plurality of profile information items, said second word cloud comprising a second plurality of words;
program instructions to present said first word cloud and second word cloud via a common viewport;
program instructions to identify a first target word, said first target word being of said first plurality of words:
program instructions to identify one or more entry sources, each of said one or more entry sources being associated with a profile, each of said profile comprising at the plurality of profile information items that describes each of said entry source, said first target word being associated with a contribution from each of said identified entry sources;
program instructions to update said second word cloud based on said identified entry sources;
program instructions to identify a second target word, said second target word being of said second plurality of words:
program instructions to identify one or more items of text information, said text information being of said one or more items of text information, each of said identified items of text information comprising a contribution from one or more entry sources, each of said one or more entry sources being associated with said second target word; and
program instructions to update said first word cloud based on said identified items of text information.

US Pat. No. 10,216,834

ACCURATE RELATIONSHIP EXTRACTION WITH WORD EMBEDDINGS USING MINIMAL TRAINING DATA

International Business Ma...

1. A processor-implemented method to improve the technical field of word relationship extractions using word embedding by lessening of an overhead and training period, the method comprising:generating a plurality of smoothed transition vectors from a plurality of training data wherein the training data includes one or more sets of information, wherein each set of the one or more sets of information is related to different part of multi-part analogies;
receiving a plurality of text and a query, wherein the text is a digital document in a natural language, and wherein the query is a targeted question;
converting the plurality of received text to a word embedding space, wherein each word of the plurality of received text is a set of coordinates in the word embedding space;
converting the received query to a set of coordinates from the word embedding space and a set of the plurality smoothed transition vectors;
determining a plurality of candidate answers based on adding the set of the smoothed transition vectors to the set of coordinates in the word embedding space;
determining an answer to the received query based on determining a multivariate normal distribution (MVN) value of each of the plurality of candidate answers, after applying, in succession, a type filtering, conflicting type filtering, and an equivalence filtering on the plurality of candidate answers to remove incorrect candidate answers, and ranking the plurality of candidate answers after removing the incorrect candidate answers based on an MVN distribution, wherein the type filtering removes each candidate answer within the plurality of candidate answers based on the determined MVN value associated with a candidate answer not being within a first threshold value, wherein the conflicting type filtering removes each candidate answer within the plurality of candidate answers based on a difference between the determined MVN value associated with the candidate answer and an MVN value of a transition vector not being within a second threshold value, and wherein the equivalence filtering removes each candidate answer within the plurality of candidate answers based on the MVN value of the calculated difference between each candidate answer and the transition vector not being within a third threshold value; and
displaying the determined answer.

US Pat. No. 10,216,833

ASSOCIATING CONTENT ITEMS WITH DOCUMENT SECTIONS

MICROSOFT TECHNOLOGY LICE...

1. A method comprising:receiving, via a computer system, a plurality of computer-readable sections of a document, wherein each section is associated with a first plurality of concept phrases;
receiving, via the computer system, a plurality of computer-readable content items, wherein each content item is associated with a plurality of queries, wherein each of the plurality of queries were previously submitted by at least one user and wherein the plurality of content items were provided in a set of search results generated in response to the plurality of queries previously submitted by at least one user;
for each content item, associating, via the computer system, the content item with a second plurality of concept phrases, wherein the second plurality of concept phrases is based on the queries previously submitted by the at least one user that the content item was provided in response to;
for each content item of the plurality of content items, selecting, via the computer system, a subset of the sections that covers the content item based on the subset of the sections being associated in the computer system with one or more of the first plurality of concept phrases and the content item being associated in the computer system with one or more of the second plurality of concept phrases, with the selection of the subset of the sections comprising a trade-off between increasing coverage of the content item by the subset and decreasing numbers of sections in the subset, with the trade-off comprising:
favoring selection of sections that increase coverage of the content item by the subset, with the coverage of the content item being increased by selection of sections that are associated with concept phrases of the first plurality of concept phrases that match a greater number of concept phrases of the second plurality of concept phrases with which the content item is associated; and
penalizing selection of greater numbers of sections for inclusion in the subset; and
for at least one of the content items, generating, via the computer system, one or more computer-readable associations, with the one or more computer-readable associations associating the at least one content item with the selected subset of sections of the document, and with the generating of the one or more computer-readable associations using results of the selecting of the subset of the sections.

US Pat. No. 10,216,831

SEARCH RESULTS SUMMARIZED WITH TOKENS

Excalibur IP, LLC, New Y...

1. A method comprising:receiving, at a computing device, one or more signals, the one or more signals comprising:
search results comprising links to one or more documents identified in response to a first search query; and
a first set of tokens for a first document, of the one or more documents, comprising one or more tokens determined based, at least in part, on:
a relationship for individual ones of the first set of tokens with respect to the first search query and the first document based, at least in part, on a measure of importance with respect to the first document wherein the measure of importance for a particular token is determined based, at least in part on at least one of:
a population of a particular location at least partially in response to determining that the particular token refers to the particular location,
a relative recency of an occurrence of a particular event at least partially in response to determining that the particular token refers to the particular event,
a level of fame of a particular person at least partially in response to determining that the particular token refers to the particular person, or any combination thereof;
wherein the individual ones of the first set of tokens comprise one or more words or numbers extracted from content displayed for the first document or from other content relating to the content displayed for the first document;
displaying, via a display device, a link to the first document and the first set of tokens based, at least in part, on one or more represented concepts or one or more levels of relevance with respect to the first document, wherein at least one token of the first set of tokens is visually distinguished from other tokens of the first set of tokens via at least one characteristic;
transmitting an interaction between a user and an individual one of the first set of tokens; and
constructing a second search query comprising the first search query and the one of the tokens with which the user has engaged in the interaction, identifying one or more second documents for the second search query, determine a second set of tokens for the second documents, and processing one or more links to the second documents and an associated second sets set of tokens received for display to the user.

US Pat. No. 10,216,830

MULTICOMPUTER PROCESSING OF CLIENT DEVICE REQUEST DATA USING CENTRALIZED EVENT ORCHESTRATOR AND LINK DISCOVERY ENGINE

Bank of America Corporati...

1. A computing platform, comprising:at least one processor;
a communication interface communicatively coupled to the at least one processor; and
memory storing computer-readable instructions that, when executed by the at least one processor, cause the computing platform to:
receive, via the communication interface, from a first client computing device, first event definition information defining a first event;
receive, via the communication interface, from a first recipient computing device associated with the first event, a first request for a recipient-selection user interface;
based on receiving the first request for the recipient-selection user interface from the first recipient computing device associated with the first event, mine first alias data associated with a first unique alias linked to the first recipient computing device associated with the first event, wherein mining the first alias data associated with the first unique alias linked to the first recipient computing device associated with the first event comprises loading recipient profile information associated with the first unique alias linked to the first recipient computing device associated with the first event;
generate one or more first relational user interface elements comprising first relational content mined from the first alias data associated with the first unique alias linked to the first recipient computing device associated with the first event;
send, via the communication interface, to the first recipient computing device associated with the first event, a first delivery selection user interface, the first delivery selection user interface comprising the one or more first relational user interface elements comprising the first relational content mined from the first alias data associated with the first unique alias linked to the first recipient computing device associated with the first event;
receive, via the communication interface, from the first recipient computing device associated with the first event, first delivery selection information;
based on receiving the first delivery selection information from the first recipient computing device associated with the first event, generate, based on the first delivery selection information, one or more first event orchestration commands directing a first event processor to execute one or more actions associated with the first event; and
send, via the communication interface, to the first event processor, the one or more first event orchestration commands directing the first event processor to execute the one or more actions associated with the first event.

US Pat. No. 10,216,827

PARTICIPANT GROUPING FOR ENHANCED INTERACTIVE EXPERIENCE

PRESIDENT AND FELLOWS OF ...

1. A method of grouping participants in an activity, the participants each having a handheld device, the method comprising:determining a value associated with one or more behavioral characteristics associated with the participants, the value of the one or more behavioral characteristics determined from a reaction time to a conceptual question or a percentage of positive feedback from other participants;
receiving one or more statistical models defining a relationship between the value of the one or more behavioral characteristics and conversational productivity between participants in a group of participants associated with a same behavioral characteristic for a different participant in the group of participants;
determining the group of participants, wherein the determined group will generate a productive conversation between the participants based in part on the one or more statistical models; and
transmitting a communication to the handheld device of at least one of the participants in the determined group, wherein the communication includes an identification of another participant in the determined group.

US Pat. No. 10,216,826

DATABASE QUERY SYSTEM

Salesforce.com, Inc., Sa...

1. A system for querying a database, comprising:a plurality of data records stored in a computer-readable medium;
a statement mapping database storing a plurality of first database query statements executable on a first database and not on a second database, and a plurality of second database query statements executable on a second database and not the first database;
a display;
a processor; and
one or more stored sequences of instructions which, when executed by the processor, cause the processor to:
receive, from a user device, a user query for execution at the first database, the user query comprising at least one second database query statement;
generate at least one first database query statement mapped to the at least one second database query statement received from the user by parsing the second database query statement and transforming the parsed second database query statement into a tree representation of the second database query statement, and generating the first database query statement from the tree representation of the second database query statement, wherein the processor further displays on the display in real-time with each keystroke portions of the first database query statement while the first database query statement is being determined by unparsing the tree representation of the second database query statement;
receive from the statement mapping database the at least one first database query statement mapped to the at least one second database query statement received from the user; and
execute the generated first database query statement within the first database.

US Pat. No. 10,216,825

READING MATERIAL SUGGESTIONS BASED ON READING BEHAVIOR

Amazon Technologies, Inc....

1. A user device comprising:a display;
a data store to store an electronic publication;
an optical sensor; and
a processor, connected to the display and the data store, the processor to:
display passages of the electronic publication on the display;
determine a duration of time that the passages of the electronic publication were displayed;
track eye movement of a user using the optical sensor while displaying the passages on the display;
determine a user behavior based at least in part on the duration of time that the passages of the electronic publication were displayed and at least in part on the eye movement;
determine additional reading material based on the user behavior and content included in one or more of the displayed passages; and
provide a suggestion of the additional reading material.

US Pat. No. 10,216,824

EXPLANATORY ANIMATION GENERATION

SAP SE, Walldorf (DE)

1. A method comprising:presenting a user interface, the user interface comprising a canvas portion within which data items are received and presented as nodes and a sequence portion;
receiving, within the canvas portion, data representative of at least two data items stored in a data storage system, each data item to be presented as a node displayed at the canvas portion, wherein the receiving comprises:
receiving an indication that a first representation of a first data item of the at least two data items is selected and dragged to the canvas portion; and
receiving an indication that a second representation of a second data item of the at least two data items is selected and dragged to the canvas portion;
discovering, in the data storage system, a relationship between the at least two data items, wherein the discovering comprises:
identifying at least one other data item involved in the relationship, the at least one other data item to be presented as a node displayed at the canvas portion;
identifying a shortest path of relation between the at least two data items; and
deriving a visualization sequence from a relationship between nodes of the at least two data items and the node of the at least one other data item, wherein the visualization sequence includes the shortest path;
generating a text-script descriptive of each of a number of nodes of the visualization sequence;
generating, at the canvas portion, a visualization with a synchronized voiceover based on the visualization sequence and the text-script, the visualization comprising a first node for the first data item, a second node for the second data item, and a third node for a third data item of the at least one other data item, each node with a synchronized voiceover, the visualization also graphically indicating a relationship between at least two of the first node, the second node, and the third node;
displaying at the sequence portion a representation of the first node, the second node, and the third node in an order according to the visualization sequence; and
storing the visualization on a data storage device.

US Pat. No. 10,216,821

METHODS AND SYSTEMS FOR BULK UPLOADING OF DATA IN AN ON-DEMAND SERVICE ENVIRONMENT

salesforce.com, inc., Sa...

1. A method in a host organization having at least a processor and a memory therein, wherein the method comprises:receiving a bulk transaction request from a client device communicatively interfaced to the host organization at a web-server interface of the host organization executing via the processor and memory of the host organization, wherein the bulk transaction request specifies a plurality of database transactions to be processed against a database system of the host organization;
sending a response to the client device having submitted the bulk transaction request from the web-server interface of the host organization, wherein the response provides at least: (a) an indication of successful receipt of the bulk transaction request and (b) an acknowledgement that the bulk transaction request is queued for processing or queued for asynchronous processing;
determining a current computational load of the database system based on a plurality of real-time transaction requests and a plurality of bulk transaction requests awaiting processing via the database system; and
processing a subset of the plurality of database transactions specified by the bulk transaction request against the database system when the current computational load is below a threshold, wherein the plurality of real-time transaction requests are assigned a higher priority than the plurality of bulk transaction requests and are selected for processing against the database system based on the higher priority and further wherein the plurality of bulk transaction requests are assigned a lower priority than the plurality of real-time transaction requests and are selected for processing against the database system based on the lower priority and based further on the determined current computational load of the database system.

US Pat. No. 10,216,819

AUTOMATED IDENTIFICATION OF COMPLEX TRANSFORMATIONS AND GENERATION OF SUBSCRIPTIONS FOR DATA REPLICATION

8. A computer program product for data replication comprising a computer readable storage medium having computer readable program instructions embodied therewith, the computer readable program instructions, when executed by a processor, cause the processor to:identify one or more complex data transformations within database statements from source code files of installed software products on a target system, wherein the source code files on the target system are updated versions relative to corresponding ones of a source system, wherein the identified one or more complex data transformations are stored in an order reflecting an order of installation of the source code files on the target system, and wherein the one or more complex data transformations include one or more from a group of: moving data from plural table columns to a common table column, moving data from plural database tables to a common database table, and changing column data using a formula;
create a subscription for each complex data transformation, the subscription containing generated instructions executable on the target system for transforming data within the source system into a form compatible with the target system according to the complex data transformation; and
execute the instructions of the subscriptions within the target system during data replication from the source system to the target system to perform the complex data transformations in the order reflecting the order of installation of the source code files and transform source data of the source system into a form compatible with the target system.

US Pat. No. 10,216,818

PRODUCT SEARCH APPARATUS, METHOD, AND SYSTEM

FUJIFILM Corporation, To...

1. A product search apparatus using a product database for storing a plurality of images corresponding to a plurality of respective products and a physical amount of the images of the products in association with each other, the product search apparatus comprising:a processor configured as:
a physical amount acquisition unit that acquires a physical amount of an image of a specific product from the product database;
a first conversion unit that converts the acquired physical amount of the image of the specific product into information indicating a specific-product sensibility block that is a block corresponding to the image of the specific product among a plurality of blocks in a sensibility space in which a plurality of sensibility words representing sensibility of a person are arranged;
a block-of-interest selection unit that selects, as a block of interest, a block different from the specific-product sensibility block from among the plurality of blocks in the sensibility space based on information indicating the specific-product sensibility block obtained by the first conversion unit;
a second conversion unit that converts information indicating the block of interest in the sensibility space into information indicating a range of a physical amount of an image corresponding to the block of interest; and
a search unit that searches for an image corresponding to the block of interest from the product database based on the information indicating the range of the physical amount obtained by the second conversion unit.

US Pat. No. 10,216,817

CREATING XML DATA FROM A DATABASE

International Business Ma...

1. A method for converting a first character string in a database element to an extensible markup language (XML) format while automatically preventing a double entity reference error, the method comprising:determining, for the first character string being formatted according to a first format, the presence of only actual values and no character reference within the first character string by parsing, with an XML parsing function, the first character string;
responsive to determining the presence of only actual values and no character reference, automatically calling an XML publishing function, the XML publishing function:
escaping the first character string; and
generating a set of XML formatted data by converting the first character string from the first format to the XML format;
replacing the first character string in the database element with the set of XML formatted data;
wherein:
the database element is within a table column;
a type of the table column is a member of the group consisting of:
a) variable character column (VARCHAR); and
b) character large object (CLOB); and
the first format is an unknown format.

US Pat. No. 10,216,816

SHIPPING OF DATA THOUGH ETL STAGES

International Business Ma...

1. A computer program product comprising one or more computer-readable tangible storage media and program instructions stored on at least one of the one or more computer-readable tangible storage media, the program instructions executable by a processor to cause the processor to perform a method of shipping data between stages of an extract, transform, and load (ETL) process, wherein the method comprising:receiving, by a stage of a plurality of stages associated with the ETL process, column data;
ascertaining, by the stage, a size of the received column data; and
in response to determining, by the stage, that the size of the received column data exceeds a predefined threshold:
saving, by the stage, the column data;
creating, by the stage, a data locator associated with the column data, wherein the created data locator is a data structure that includes metadata comprising (i) a hash key, (ii) a source indicator, and (iii) a timestamp, wherein the hash key corresponds to the saved column data associated with the data locator, the source indicator corresponds to the stage, and the timestamp indicates when the column data was received in the stage,
advancing the created data locator through each of a plurality of successive downstream stages;
receiving, at the stage, an indication that a respective downstream stage requires the column data based on the data locator received at the respective downstream stage;
determining, by the respective successive stage and based on the received data locator, whether the saved column data is a latest version;
in response to determining that the saved column data is the latest version, forwarding the saved column data directly from the stage to the respective downstream stage; and
in response to determining that the saved column data is not the latest version, forwarding the latest version of the column data directly to the respective downstream stage from an upstream stage, different than the stage, containing the latest version of the column data.

US Pat. No. 10,216,815

SHIPPING OF DATA THROUGH ETL STAGES

International Business Ma...

1. A computer system comprising one or more processors, one or more computer-readable memories, one or more computer-readable tangible storage media, and program instructions stored on at least one of the one or more computer-readable tangible storage media for execution by at least one of the one or more processors via at least one of the one or more computer-readable memories, wherein the computer system is capable of performing a method of shipping data between stages of an extract, transform, and load (ETL) process, wherein the method comprising:receiving, by a stage of a plurality of stages associated with the ETL process, column data;
ascertaining, by the stage, a size of the received column data; and
in response to determining, by the stage, that the size of the received column data exceeds a predefined threshold:
saving, by the stage, the column data;
creating, by the stage, a data locator associated with the column data, wherein the created data locator is a data structure that includes metadata comprising (i) a hash key, (ii) a source indicator, and (iii) a timestamp, wherein the hash key corresponds to the saved column data associated with the data locator, the source indicator corresponds to the stage, and the timestamp indicates when the column data was received in the stage,
advancing the created data locator through each of a plurality of successive downstream stages;
receiving, at the stage, an indication that a respective downstream stage requires the column data based on the data locator received at the respective downstream stage;
determining, by the respective successive stage and based on the received data locator, whether the saved column data is a latest version;
in response to determining that the saved column data is the latest version, forwarding the saved column data directly from the stage to the respective downstream stage; and
in response to determining that the saved column data is not the latest version, forwarding the latest version of the column data directly to the respective downstream stage from an upstream stage, different than the stage, containing the latest version of the column data.

US Pat. No. 10,216,814

SUPPORTING COMBINATION OF FLOW BASED ETL AND ENTITY RELATIONSHIP BASED ETL

ORACLE INTERNATIONAL CORP...

1. A method for generating a data integration scenario between a data source and a data target using a combination of a data flow extract-transform-load (ETL) and an entity relationship extract-transform-load (ETL), the method comprising:receiving, at one or more computer systems, a set of extract-transform-load (ETL) entity relationships defined via a component of a logical design of the data integration scenario, the set of ETL entity relationships having a relationship defined between one or more attributes of a first entity in a dataset and one or more attributes of a second entity in the dataset;
automatically determining, with one or more processors associated with the one or more computer systems, an extract-transform-load (ETL) data flow model using the set of ETL entity relationships, wherein the ETL data flow model is configured to provide semantic definitions for the logical design, wherein the semantic definitions define entity relationships in the dataset that identify how columns of the data target are populated from attributes of the data source and from one of the one or more attributes of the first entity in the dataset and the one or more attributes of the second entity in the dataset; and
generating, with the one or more processors associated with the one or more computer systems, information indicative of the ETL data flow model in a view of the logical design, wherein a set of attributes are exposed to downstream components of the logical design that includes the one or more attributes of the first entity and the one or more attributes of the second entity.

US Pat. No. 10,216,812

APPLICATION PROGRAMMABLE INTERFACE (API) DISCOVERY

Hewlett Packard Enterpris...

9. A method, comprising:searching, by a processor, a plurality of storage environments of an enterprise to discover application programing interfaces (APIs) associated with an enterprise by employing a plurality of different search strategies;
classifying, by the processor, the discovered APIs according to a taxonomy of API contexts and storing at least a portion of the classified APIs in an API information repository;
grouping, by the processor, duplicate APIs of the discovered APIs that are assessed to perform similar functions;
analyzing, by the processor, the duplicate APIs to determine a usage of each API of the duplicate APIs; and
providing, by the processor, user devices with authorized access to the classified APIs in the API information repository via an API gateway.

US Pat. No. 10,216,811

COLLABORATING USING DIFFERENT OBJECT MODELS

Palantir Technologies Inc...

1. A system comprising:one or more processors; and
memory storing instructions that, when executed by the one or more processors, cause the system to perform:
receiving input data corresponding to one or more source objects of a plurality of source objects, the plurality of source objects being stored in a first source object model, each of the plurality of source objects being associated with a respective source entity, and each of the plurality of source objects including information describing the respective source entity;
receiving a query, the query being based on the input data and one or more predefined rules, the query including a plurality of alias keywords corresponding to one or more alias properties of the one or more source objects, and the one or more predefined rules being configured to define a query match based on a threshold number of intervening terms between at least a first of the alias keywords and a second of the alias keywords;
determining, based on the query, information matches between the respective information of the one or more source objects of the plurality of source objects and respective information of one or more target objects of a plurality of target objects stored in a target object model of a datastore, the target object model being different from the source object model, the information matches comprising one or more respective electronic documents, each of the one or more respective electronic documents including the plurality of alias keywords within the one or more respective electronic documents according to the one or more predefined rules defining a query match;
ranking, in response to determining the information matches, the one or more source objects of the plurality of source objects based on the number of target objects matching the respective information of the one or more source objects;
providing, in response to the ranking, a list of the ranked one or more source objects through an interface, the interface indicating a respective number of matching target objects for each of the ranked one or more source objects, and the interface indicating one or more respective locations of the plurality of alias keywords within at least one of the electronic documents of the information matches;
consolidating, in response to determining the information matches, the one or more source objects and at least one of the matched target objects of the plurality of target objects, the consolidating creating a consolidated data object, the consolidated data object including the respective information of the one or more source objects of the plurality of source objects and the respective information of the one or more matched target objects of the plurality of target objects;
replacing the first target object in the target object model with the consolidated data object; and
replacing the one or more source objects in the source object model with the consolidated data object.

US Pat. No. 10,216,810

CONTENT ITEM-CENTRIC CONVERSATION AGGREGATION IN SHARED FOLDER BACKED INTEGRATED WORKSPACES

DROPBOX, INC., San Franc...

1. A method of associating communications and content items with a shared-folder backed workspace in an online content management system comprising:receiving, by the online content management system, a plurality of messages associated with the shared-folder backed workspace in the online content management system, the plurality of messages comprising first messages associated with a content item, the content item being associated with the shared-folder backed workspace, wherein the first messages are from a plurality of sources;
generating, by the online content management system, a first graphical user interface (GUI) to display a message stream for the shared-folder backed workspace, the message stream comprising the plurality of messages;
sending, by the online content management system, the first GUI to a remote client device for display;
receiving, by the online content management system, a request to view messages associated with the content item;
aggregating, by the online content management system, the first messages into a content item-specific message thread for the content item;
generating, by the online content management system, a second GUI that displays the content-item specific message thread for the content item, such that the content-item specific message thread is included in the message stream; and
sending, by the online content management system, the second GUI to the client device for display.

US Pat. No. 10,216,809

MOBILE EXPLORER

MicroStrategy Incorporate...

1. A method executed on one or more computers, the method comprising:configuring, by the one or more computers, a user interface to provide data to be displayed using the one or more computers, the user interface having a structure comprising a template for visualization of data, a visualization panel for selecting data visualizations associated with the template, and a filter path for filtering data;
receiving, by the one or more computers, a first query through the user interface;
obtaining, by the one or more computers, first data based on the first query;
displaying, using the template in the user interface and a touch-screen display of the one or more computers, a first graphical representation of the first data through which the first data is represented by one or more geometric objects;
receiving a touch input in a particular region of the first graphical representation displayed on the touch-screen display, the touch input corresponding to a second query associated with the first data;
in response to receiving the touch input corresponding to the second query:
updating, by the one or more computers, the template and the filter path based on the received second query;
obtaining by the one or more computers, second data based on the second query and the updated filter path;
selecting, by the one or more computers and from among a plurality of visualizations that are provided by the visualization panel and associated with the updated template, one or more second visualizations to display the second data; and
displaying, on the touch-screen display of the one or more computers, (I) a second graphical representation of the second data according to the updated template and the selected one or more second visualizations, (II) the updated filter path applied to filter the second data, and (III) a data enrichment panel including one or more indicators indicating data in the second data provided in response to the second query and not provided in response to the first query.

US Pat. No. 10,216,808

MULTI SENDER AND SOURCE RECOMMENDATION AGGREGATION AND PROMPTING SYSTEM

GOOGLE LLC, Mountain Vie...

1. A method, comprising:receiving a plurality of recommendations for content items from a plurality of sending users for a recipient user through a plurality of sources;
selecting, for the recipient user, a subset of the plurality of recommendations for content items that is pertinent to the recipient user, wherein the selecting comprises:
determining that the recipient user is interested in viewing recommendations for content items from a first sending user of the plurality of sending users based on interactions by the recipient user with prior recommendations for content items from the first sending user; and
determining the subset of the plurality of recommendations for content items that has originated from the first sending user; and
generating, by a processing device, a first sending user playlist for the recipient user, the first sending user playlist including the subset of the plurality of recommendations for content items from the first sending user but not from other sending users of the plurality of sending users.

US Pat. No. 10,216,806

COMPUTATION OF SIMILAR TITLES BASED ON POSITION TRANSITION DATA IN A SOCIAL NETWORKING SERVICE

Microsoft Technology Lice...

1. A system comprising:a non-transitory computer-readable medium having instructions stored thereon, which, when executed by a processor, cause the system to:
determine a granularity of title similarity, wherein the granularity of title similarity is a level at which social networking data should be filtered to identify titles similar to a target title;
construct a weighted graph of titles at the granularity of title similarity, wherein each node in the weighted graph is a title and a directed edge exists in the weighted graph between a first node and a second node if the social networking data, at the granularity of title similarity, indicates that a transition occurred wherein a member who held a position with a title corresponding to the first node transitioned to a position with a title corresponding to the second node, wherein each directed edge contains a weight indicating a strength of relationship between nodes; and
traverse the weighted graph of locations from a node corresponding to the target title in order to identify titles similar to the target title, wherein the traversing including finding a node corresponding to the target title and following edges for any edge having a weight greater than a threshold value to find a similar title at another end of the followed edge;
retrieve, from an external data source, one or more confidential data values having been entered on screens of a first set of one or more graphical user interfaces and encrypted on the external data source, the one or more confidential data values having attributes matching the identified titles similar to the target title; and
present information corresponding to the retrieved one or more confidential data values in a second set of one or more graphical user interfaces.

US Pat. No. 10,216,805

DYNAMICALLY GENERATING PRE-AGGREGATED DATASETS

Google LLC, Mountain Vie...

1. A computer-implemented method performed by one or more data processing apparatus, comprising:receiving one or more requests for a first type of performance measure that is calculated based on a proper subset of data in a data set;
creating a pre-aggregated data set that includes the proper subset of data from the data set based on a first amount of time required to determine the first type of performance measure using the pre-aggregated data set being less than a second amount of time required to determine the first type of performance measure using the data set;
storing, over a period of time, more data in the pre-aggregated data set;
monitoring, over the period of time, a change in the first amount of time required to determine the first type of performance measure using the pre-aggregated data set;
splitting, into two or more subsets, the pre-aggregated data set when the change in the first amount of time meets a specified level, wherein each of the two or more subsets of the pre-aggregate data set includes less data than the pre-aggregated data set, and wherein the combination of the two or more subsets of the pre-aggregated data set includes the entirety of the proper subset of data from the data set;
determining the first type of performance measure using at least one of the two or more subsets of the pre-aggregated data set;
generating, by a graphical user interface generator, presentation data that represents a value of the first type of performance measure calculated using at least one of the two or more subsets of the pre-aggregated data set; and
providing, to a user device for display on a graphical user interface, the generated presentation data.

US Pat. No. 10,216,804

PROVIDING ANSWERS TO QUESTIONS USING HYPOTHESIS PRUNING

International Business Ma...

1. A system for generating answers to questions, comprising:a computer device comprising at least one distinct software module, each distinct software module being embodied on a tangible computer readable medium; a memory; and at least one processor coupled to the memory and operative for:
receiving an input query;
obtaining a plurality of candidate answers from text data, wherein each of the candidate answers is found in associated data content;
applying context independent scorers to the candidate answers to determine a content independent score for each of the candidate answers independent of the data content in which said each candidate answer is found;
filtering out a subset of the plurality of candidate answers based on the content independent scores;
directing the remainder candidate answers through a supporting passage retrieval process, including retrieving supporting passages for the remainder candidate answers;
omitting the filtered out subset of the candidate answers from the supporting passage retrieval process;
after retrieving the supporting passages for the remainder candidate answers, applying content dependent scorers on the remainder candidate answers; and
returning one or more candidate answers to the input query based on generated scores.

US Pat. No. 10,216,803

RANKING AND FILTERING COMMENTS BASED ON AUTHOR AND CONTENT

Facebook, Inc., Menlo Pa...

1. A method, comprising:by one or more computer systems, retrieving a plurality of comments associated with a content object on a social-networking system;
by the one or more computer systems, determining a score for each of the comments, wherein the score is based on one or more signals associated with the comment, and wherein the signals are related to the identity of an author of the comment or content of the comment,
wherein at least one of the signals is based on an originality level of the content of the comment, and the originality level is determined based on a comparison of text of the comment to one or more clusters of similar text in a corpus of text associated with the social networking system;
by the one or more computer systems, ordering the comments based on the respective scores; and
by the one or more computer systems, presenting one or more of the ordered comments to a target user.

US Pat. No. 10,216,802

PRESENTING ANSWERS FROM CONCEPT-BASED REPRESENTATION OF A TOPIC ORIENTED PIPELINE

International Business Ma...

1. A method for generating an answer in a question answering system, the method comprising:receiving a question;
identifying a candidate answer from a corpus;
determining a plurality of sentences based on the identified candidate answer;
calculating a similarity value for each sentence within the plurality of sentences based on comparing the plurality of sentences to the candidate answer and the received question;
generating a subgraph based on the plurality of sentences and the candidate answer, wherein the subgraph has a plurality of edges and a plurality of nodes corresponding to the plurality of sentences and the candidate answer;
adding a first node to the subgraph corresponding to the received question;
assigning an edge weight to each edge within the plurality of edges based on the calculated similarity value for each sentence within the plurality of sentences;
determining metadata associated with each sentence within the plurality of sentences, wherein the metadata includes a paragraph identifier and a document identifier;
identifying at least one sentence within the plurality of sentences based on determining the assigned edge weight of the identified at least one sentence exceeds a threshold value; and
presenting the answer, wherein the answer comprises the plurality of sentences, the candidate answer, and the determined metadata.

US Pat. No. 10,216,801

GENERATING DATA CLUSTERS

PALANTIR TECHNOLOGIES INC...

1. A computer-implemented method comprising:by one or more hardware computer processors configured with specific computer executable instructions:
accessing one or more electronic data stores, the one or more electronic data stores storing a plurality of data entities and respective data entity attributes;
applying a clustering strategy to generate a data entity cluster by at least:
designating a seed data entity, from the plurality of data entities, as the data entity cluster;
accessing, based on the clustering strategy, one or more search protocols;
performing first growth of the data entity cluster by executing at least a first of the one or more search protocols on the one or more electronic data stores to identify one or more data entities related to the seed data entity;
adding the one or more data entities to the data entity cluster;
performing second growth of the data entity cluster by executing at least a second of the one or more search protocols on the one or more electronic data stores to identify one or more additional data entities related to the one or more added data entities, the second search protocol different than the first search protocol; and
adding the one or more additional data entities to the data entity cluster; and
storing the data entity cluster in at least one of the one or more electronic data stores.

US Pat. No. 10,216,799

FEDERATED DATABASE SYSTEM

Telefonaktiebolaget LM Er...

1. A query handling device in a federated database system, the query handling device being configured to receive database queries directed towards a group of databases from several applications and comprising:an initiation module configured to assign, at application deployment, the applications to data-stores of said databases,
a query scheduler module configured to receive the database queries from the several applications, investigate the queries, where the investigation comprises prioritising between at least some queries according to a query prioritisation scheme, and send the investigated queries to the databases, where queries having been prioritised are sent according to the query prioritisation scheme and
a query handling evaluation module configured to investigate the processing capability of system elements handling the query of an application, compare the processing capability with a capability criterion and inform the query scheduler module of the result, wherein the query handling evaluation module monitors one or more processing capability parameters of the system elements handling the query,
wherein the query scheduler module is further configured to allow the query to be immediately sent to the assigned database and immediately performed if the capability criterion is fulfilled and otherwise to apply prioritisation according to the query prioritisation scheme, and
wherein the query scheduler module comprises a clustering unit configured to cluster queries based on query execution time, assign cluster priorities to clusters based on the execution times of the queries of the clusters, a ranking unit configured to rank the applications and a selection unit configured to select queries for execution based on query priority and application rank, and wherein, for an individual query, the query scheduler module is configured to select a database from among the group of databases and to send the individual query to the selected database based on the investigation of the query by the query scheduler module and the result output by the query handling evaluation module.

US Pat. No. 10,216,798

TECHNICAL LANGUAGE PROCESSOR

BANK OF AMERICA CORPORATI...

1. A computerized system for technical language processing, wherein the computerized system provides a technical language processor configured for establishing technical and categorical context associated with data regarding information technology operational activities, comprising:a computer apparatus including at least one processor, at least one memory device, and a network communication device; and
technical language processor module stored in the at least one memory device comprising computer readable instructions, that when executed by the at least one processor, cause the at least one processor to:
retrieve a first record regarding a first information technology operational activity from an activity record database, wherein the first record comprises a plurality of technology elements associated with the first information technology operational activity, wherein the first record is associated with at least one technology resource;
parse the first record to identify at least one technology motivator, wherein the technology motivator is associated with initiating the first information technology operational activity regarding the at least one technology resource;
determine one or more technology actions that are associated with the at least one technology resource and the at least one technology motivator, wherein each of the one or more technology actions is associated with at least one action term;
determine at least one technology action of the one or more technology actions associated with the first record, based on identifying the at least one action term associated with the at least one technology action in the first record;
determine a categorical context associated with the first information technology operational activity based on the at least one technology resource, the at least one technology motivator, and the at least one technology action, wherein determining the categorical context further comprises mapping the first record to the plurality of technology identifiers retrieved from the categorical context database, wherein the mapping comprises:
determining a plurality of data fields that are required for the new activity record, wherein each data field is associated with one or more aspects of the first information technology operational activity;
extracting data associated with one or more technology elements from the first record, wherein the one or more technology elements are associated with the plurality of data fields; and
associating the extracted data from the first record with the plurality of technology identifiers retrieved from the categorical context database;
construct a new activity record associated with the first information technology operational activity, wherein the new activity record comprises a plurality of data fields associated with a plurality of technology identifiers retrieved from a categorical context database; and
store the new activity record associated with the first information technology operational activity in the activity record database.

US Pat. No. 10,216,797

INTERACTIVE SEARCH RESULTS PAGE

MICROSOFT TECHNOLOGY LICE...

1. A method comprising,presenting a graphical user interface (GUI) on a display in response to receipt of a user query, wherein the GUI comprises:
a first subset of messages identified from amongst a plurality of messages as being relevant to the user query, wherein the plurality of messages are generated by at least one social networking application;
an interactive graphical object, wherein the interactive graphical object comprises a selectable phrase that is included in a message in the first subset of messages; and
responsive to the selectable phrase in the interactive graphical object being selected, presenting a second GUI on the display, wherein the second GUI comprises a second subset of messages from the first subset of messages, each message in the second subset of messages comprises the phrase from the selectable phrase selected from the interactive graphical object.

US Pat. No. 10,216,795

FIELD-PROGRAMMABLE GATE ARRAY CARDS IN A STREAMING ENVIRONMENT

International Business Ma...

1. A method comprising:receiving a stream of tuples to be processed by a plurality of processing elements operating on one or more computer processors;
identifying, by monitoring one or more stream operators in an operator graph, a first stream operator that is configured to perform a first operation on the received stream of tuples;
determining that the first stream operator is a target operator;
determining that a field-programmable-gate-array (FPGA) card is configurable to perform the first operation;
determining that the FPGA card is available to perform the first operation;
adding the FPGA card to the operator graph;
identifying a second stream operator in the operator graph that is configured to perform a second operation on a second stream of tuples;
determining that the FPGA card is available to perform the second operation;
configuring the FPGA card to perform the second operation;
removing the FPGA card from the operator graph;
adding, in response to the removing the FPGA card from the operator graph, the first stream operator into the operator graph;
removing, in response to the adding the first stream operator into the operator graph, the second stream operator from the operator graph; and
re-adding, in response to the removing the second stream operator from the operator graph, the FPGA card into the operator graph.

US Pat. No. 10,216,794

TECHNIQUES FOR EVALUATING QUERY PREDICATES DURING IN-MEMORY TABLE SCANS

Oracle International Corp...

1. A method comprising:maintaining, in a database, a first table that includes a particular column;
prior to receiving a query with a particular predicate, performing the steps of:
dividing data from the first table into a plurality of chunks;
generating a plurality of in-memory compression units by compressing each chunk of the plurality of chunks into an in-memory compression unit;
loading each in-memory compression unit of the plurality of in-memory compression units into volatile memory of a respective host node assigned to host the in-memory compression unit;
wherein each in-memory compression unit of the plurality of in-memory compression units includes a respective compressed columnar unit for the particular column;
wherein the plurality of in-memory compression units includes a particular in-memory compression unit that includes a particular compressed columnar unit for the particular column;
in response to receiving the query with the particular predicate, performing:
generating, from the particular predicate, a condition to evaluate against data from the particular column;
without decompressing the particular compressed columnar unit, determining whether values in the particular compressed columnar unit satisfy the condition; and
generating a result set for the query based, at least in part, on whether values in the particular compressed columnar unit satisfy the condition;
wherein:
the particular column is a first column;
the query is a join query;
the particular predicate specifies a join between the first column of the first table and a second column of a second table;
generating the condition comprises creating a filter based on values from the second column of the second table; and
determining whether values in the particular compressed columnar unit satisfy the condition comprises determining whether values in the particular compressed columnar unit satisfy the filter;
wherein the method is performed by one or more nodes.

US Pat. No. 10,216,793

OPTIMIZATION OF CONTINUOUS QUERIES IN HYBRID DATABASE AND STREAM PROCESSING SYSTEMS

SAP SE, Walldorf (DE)

1. A computerized method for query optimization performed by one or more processors, the method comprising:identifying a continuous query executed at a stream processing engine, the continuous query including a plurality of operators;
determining an optimal plan for execution of the identified continuous query at the stream processing engine;
for each of the plurality of operators in the determined optimal plan, determining an optimized placement decision for executing a particular operator in the stream processing engine or at a database system;
generating an optimized continuous query from the identified continuous query based on the determined optimal placement decisions for each of the plurality of operators in the determined optimal plan, wherein generating the optimized continuous query from the identified continuous query based on the determined optimal placement decisions for each of the plurality of operators in the determined optimal plan comprises:
generating a migration wrapper associated with a subtree of operators determined to be migrated to the database system; and
replacing the subtree of operators with the generated migration wrapper in the optimized continuous query at the stream processing engine; and
executing the generated optimized continuous query at the stream processing engine and the database system.

US Pat. No. 10,216,791

SYSTEM, METHOD AND COMPUTER PROGRAM PRODUCT FOR ADJUSTING A DATA QUERY

salesforce.com, San Fran...

1. A computer-implemented method comprising:storing, by a multi-tenant system for managing customer services, one or more case objects, the system associated with a plurality of tenants, wherein each case object represents a customer service interaction between a customer and one of the plurality of tenants, the case object storing attributes of the customer service interaction including one or more of: a subject of the customer service interaction, a textual description of the customer service interaction, and a type of the customer service interaction;
wherein the multi-tenant system comprises a multi-tenant database including a set of case objects for each of the plurality of tenants and a set of articles for each of the plurality of tenants, wherein each set of case objects and set of articles per tenant are logically separate from sets of case objects and sets of articles of other tenants;
displaying via a user interface, information describing a case representing a customer service interaction between a particular customer and the tenant, wherein the case is associated with a first tenant;
determining that the case displayed via the user interface is new; and
responsive to detecting that the case is newly created, performing autosuggestion of articles relevant to the case, comprising:
extracting attributes describing the case;
generating a query based on the extracted attributes of the case, the generating comprising, determining keywords to be searched by the query based on the extracted attributes of the case, wherein the generated query is configured to retrieve articles relevant to the case from the set of articles associated with the first tenant;
redirecting the user interface to an intermediate page to execute the generated query as a background search;
executing the generated query as a background search upon the set of articles associated with the first tenant;
determining whether the background search returns one or more relevant articles for the case; and
responsive to determining that the background search returns one or more relevant articles, displaying the one or more relevant articles.

US Pat. No. 10,216,785

DYNAMICALLY-SORTED CONTACT INFORMATION

Facebook, Inc., Menlo Pa...

1. A method comprising:by one or more computing devices, accessing for a first user contact information of a plurality of second users, wherein the first and second users are users of a social-networking system comprising a graph comprising a plurality of nodes and edges connecting the nodes, the nodes comprising user nodes that each correspond to a user of the social-networking system, there being a node in the graph corresponding to the first user, there being a node in the graph corresponding to each of the second users;
by at least one of the one or more computing devices, determining a current use by the first user of an application for accessing contact information;
by at least one of the one or more computing devices, determining, for at least one of the second users, a current use by the second user of the application;
by at least one of the one or more computing devices, determining a current location of the first user and a current location of the second user;
by at least one of the one or more computing devices, determining that at least one of the second users is not a contact of the first user;
by at least one of the one or more computing devices, dynamically sorting the contact information of the second users by giving preference to contact information of:
at least one second user for whom a current use of the application occurs during a time that the second user is determined to be at the same location as the first user, and
the at least one second users determined not to be a contact of the first user;
by at least one of the one or more computing devices, re-sorting the contact information of the second users in response to a determination that at least one of:
at least one second user's current use of the application;
at least one second user's location;
the first user's current use of the application; or
the first user's location
changed by a predetermined amount; and
by at least one of the one or more computing devices, providing the contact information of the second users as sorted for display to the first user.

US Pat. No. 10,216,783

SEGMENTING DATA WITH INCLUDED SEPARATORS

Microsoft Technology Lice...

1. A computer implemented method, comprising:receiving data entry inputs of a string of characters that includes at least one separator character;
segmenting a string of characters into an initial segmentation of segments with corresponding segment values based on the at least one separator character;
selecting a first segment in the initial segmentation;
validating a first segment value in the initial segmentation to identify it as found or unfound;
if the first segment value is identified as unfound;
determining whether any more segments in the initial segmentation have yet processed;
if more segment(s) in the initial segmentation have yet to be processed, appending a next separator character and a next segment of the initial segmentation to the first segment and thus generating a concatenated segment value, and then returning to the validating step;
if no more segment(s) in the initial segmentation have yet to be processed, outputting only the first segment as a non-found segment and removing only the first segment from the initial segmentation, then determining whether one or more segments in the initial segmentation have yet to be processed;
if more segment(s) in the initial segmentation have yet to be processed, returning to the selecting step;
if no more segment(s) in the initial segmentation have yet to be processed, generating a final segmentation list and outputting the final segmentation list;
if the segment value or the concatenated segment value is identified as found:
outputting the first segment value or the concatenated segment value as a found segment and then removing the found segment from the initial segmentation;
determining whether one or more segments in the initial segmentation have yet to be processed;
if more segment(s) have yet to be processed, returning to the selecting step;
if no more segment(s) have yet to be processed, generating a final segmentation list and outputting the final segmentation list.

US Pat. No. 10,216,782

PROCESSING OF UPDATES IN A DATABASE SYSTEM USING DIFFERENT SCENARIOS

SAP SE, Walldorf (DE)

1. A method comprising:determining, by a computing device, one or more records that are added, updated, or deleted for an entity;
analyzing, by the computing device, one or more effective from dates for the one or more records and a last effective from date for the entity in a database table for the entity to classify the one or more records in one or more scenarios in a plurality of scenarios;
selecting, by the computing device, a scenario in the plurality of scenarios based on the one or more effective from dates for the one or more scenarios and the last effective from date for the entity; and
performing, by the computing device, an update process associated with the scenario to update a portion of records in the database table using the one or more records.

US Pat. No. 10,216,781

MAINTAINING CROSS-NODE COHERENCE OF AN IN-MEMORY DATABASE OBJECT IN A MULTI-NODE DATABASE CLUSTER

Oracle International Corp...

1. A method comprising:maintaining, in a persistent storage, a database that is accessible to a plurality of database server instances;
wherein the database includes a table that is physically organized in a plurality of units, wherein each unit of the plurality of units is stored in persistent storage and comprises one or more contiguous rows of the table stored in row-major format;
generating, in a first volatile memory local to a first database server instance of the plurality of database server instances, a first in-memory copy of a first chunk of the table;
wherein the first in-memory copy of the first chunk of the table comprises one or more columns from one or more units of the plurality of units in column-major format;
acquiring, by the first database server instance, a first lock that covers a particular unit of the one or more units;
receiving, at the first database server instance, a first request to release the first lock;
in response to receiving the first request, releasing the first lock, and
in response to releasing the first lock, storing, in the first volatile memory, a first indication that, within the first in-memory copy of the first chunk, data that is generated from the particular unit covered by the first lock is invalid;
the first database server instance responding to requests to read data from the first chunk by:
accessing the first indication;
obtaining data items, that belong to the first chunk and that are not identified as invalid by the first indication, from the first in-memory copy; and
obtaining data items, that belong to the first chunk and that are identified as invalid by the first indication, from a source other than the first in-memory copy;
wherein the method is performed by one or more computing devices.

US Pat. No. 10,216,780

METHOD AND APPARATUS FOR TABLE AGING IN A NETWORK SWITCH

Cavium, LLC, Santa Clara...

31. A non-transitory computer-readable medium storing a table aging element, the table aging element including both mask bit values and an age memory bit value for each entry of each of a plurality of search tables in a central aging memory pool, wherein each of the age memory bit values indicate whether a corresponding one of the entries has been subject to a search hit since a previous aging process, wherein the table aging element,determines if a request aging indicator of a table search request indicates that aging is disabled for the table search request, wherein at least one of the entries is hit by the table search request;
refrains from updating the age memory bit values of the at least one of the entries when the request aging indicator indicates that aging is disabled for the table search request even if an aging configuration indicator value of the search table storing the at least one of the entries indicates that aging is enabled;
identifies both the mask bit value of one or more of the entries and the aging configuration indicator value of the search table storing the one or more of the entries; and
based on both the aging configuration indicator value of the search table storing the one or more of the entries and the mask bit values of the one or more of the entries, refrains from aging the one or more of the entries, regardless of the age memory bit values of the one or more entries, if the aging configuration indicator value of the search table storing the one or more of the entries indicates that the search table storing the one or more of the entries should be aged, but the mask bit values indicate that the one or more of the entries should not be aged.

US Pat. No. 10,216,779

EXPIRATION OF PERSISTENT DATA STRUCTURES THAT SATISFY SEARCH QUERIES

Splunk Inc., San Francis...

1. A method, comprising:receiving raw data from one or more sources in an information technology environment;
segmenting the raw data into a plurality of events by determining a beginning and an ending of each event in the plurality of events in the raw data, wherein each event in the plurality of events includes a portion of the raw data, wherein each event represents one or more lines of data among a plurality of lines of data in the raw data;
associating a time stamp with each event in the plurality of events;
indexing each time stamped event in the plurality of events;
creating a plurality of persistent data structures that are used to perform lookups in a search process, store the raw data of each event with its segmentation, and store metadata related to the indexed events;
wherein each persistent data structure in the plurality of persistent data structures is immutable and corresponds to a specific time interval, wherein events stored in a particular persistent data structure have associated time stamps that fall within a particular time interval corresponding to the particular persistent data structure;
wherein a process periodically wakes up and tests the plurality of persistent data structures to determine whether information associated with a persistent data structure meets expiration criteria, wherein the persistent data structure is tested upon reaching a user defined fill capacity and is not accepting further events;
in response to determining that information associated with the persistent data structure meets the expiration criteria, relocating the persistent data structure to offline storage and moving the persistent data structure out of active status.

US Pat. No. 10,216,778

INDEXING AND SEARCHING HETEROGENOUS DATA ENTITIES

INTERNATIONAL BUSINESS MA...

1. A computer program product for performing a search of heterogeneous data based on an input query, the computer program product comprising a non-transitory computer readable storage medium having program code embodied therewith, the program code executable by a processor, to perform method steps comprising instructions for:generating an index comprising at least two hash tables, where each hash table corresponds to a different data domain of the heterogeneous data and comprises hash code sets, where at least one of the hash code sets is mapped to a hash code set of another one of the tables;
performing a hash on the input query to generate a hash code;
by referring to the index, determining a first hash code set that the generated hash code belongs to, and determining a second hash code set that the determined first hash code set is mapped to; and
providing at least one result based on the determined second hash code set,
wherein a first one of the data domains is user data identifying a plurality of users and a second one of the data domains comprises posts by users on the WEB.

US Pat. No. 10,216,777

SCALABLE INDEX BUILD TECHNIQUES FOR COLUMN STORES

Microsoft Technology Lice...

1. A computing device, comprising:a memory and a processor that are respectively configured to store and execute instructions, including instructions for causing the computing device to perform operations, the operations comprising:
receiving a request to execute a query;
selecting a segment size for partitions corresponding to the requested query;
creating an index based on the selected segment size; and
processing segments according to the index based on a resource optimization determined at an execution time of the requested query.

US Pat. No. 10,216,774

MULTIPLE VERSIONS OF TRIGGERS IN A DATABASE SYSTEM

International Business Ma...

1. A method for managing multiple versions of triggers in a database system, comprising:receiving a first command to create a first version of a trigger to apply a first set of actions in response to a triggering event, the triggering event comprising a delete, insert or update operation on a database object;
based on the first command, creating the first version of the trigger to apply the first set of actions in response to the triggering event, comprising:
creating a first package for the first version of the trigger, the first package comprising the first set of actions;
linking the first package to the database object; and
setting the first package as a current version of the trigger;
receiving a second command to create a second version of the trigger to apply a second set of actions in response to the triggering event;
based on the second command, creating the second version of the trigger to apply the second set of actions in response to the triggering event, without deleting the first version of the trigger, comprising:
creating a second package for the second version of the trigger, the second package comprising the second set of actions; and
linking the second package to the database object;
receiving a third command to set the current version of the trigger to the second version;
in response to receiving the third command, setting the second package version as the current version of the trigger;
determining that the triggering event of the trigger occurs;
in response to determining that the triggering event occurs, determining that the second version is the current version of the trigger;
in response to determining that the second version is the current version of the trigger, retrieving the second set of actions comprised in the second package; and
executing the second set of actions.

US Pat. No. 10,216,772

ENTERPRISE MIGRATION PLANNING INFORMATION REPOSITORY

Accenture Global Services...

1. A method of implementing a data migration project for migrating a set of applications from a source data storage system to a destination data storage system, the method comprising:receiving, at a controller, a set of data migration rules;
grouping, by the controller, a first group of applications on the source data storage system into a first bundle unit according to the data migration rules;
grouping, by the controller, a second group of applications on the source data storage system into a second bundle unit according to the data migration rules;
generating, by the controller, a migration schedule for migrating the set of applications according to the set of data migration rules, the migration schedule including scheduling for the first bundle unit and the second bundle unit;
generating an entity graph based on the set of data migration rules and the generated migration schedule, wherein the entity graph comprises sequencing of a migration of the first bundle unit and the second bundle unit;
monitoring a subsequent migration of the set of applications from the source data storage system to the destination data storage system to determine whether the migration is being conducted according to the entity graph;
halting the migration in response to determining that the migration is not being conducted according to the entity graph;
reorganizing a sequence of migrating the set of applications based on the entity graph in response to halting the migration; and
resuming the migration of the set of applications according to the reorganized sequence.

US Pat. No. 10,216,771

CREATING AND HANDLING IDENTIFICATION FOR A RESOURCE IN A CONFIGURATION DATABASE

INTERNATIONAL BUSINESS MA...

1. A method of creating and handling identification for a resource in a configuration database, comprising:discovering said resource;
creating, by a processing circuit, for said resource, a resource representation comprising properties of said resource;
determining one or more defined naming rules for said configuration database, the one or more defined naming rules each corresponding to the resource and comprising a respective naming rule identification, a respective priority, and a respective at least one attribute, each attribute of the at least one attribute having a respective attribute name;
for each naming rule of the one or more naming rules, extracting from the resource representation at least one attribute value for each attribute name of the at least one attribute of the naming rule;
for each naming rule of the one or more naming rules, creating a corresponding complex identity object containing the naming rule identification of the naming rule and a list of attribute names and corresponding attribute values, for each attribute name of the list, extracted from the resource representation, wherein the creating produces one or more created complex identity objects;
for each created complex identity object of the one or more created complex identity objects, setting an authority flag of the complex identity object based on whether a given provider of attribute value data is able to obtain a complete set of attribute values; and
processing through the one or more complex identity objects according to priority of said one or more naming rules corresponding to the one or more created complex identity objects, wherein, in processing each complex identity object of the one or more complex identity objects, a respective one or more aliases for the resource are generated based on a Cartesian product of the naming rule identification of the complex identity object and the attribute values corresponding to the attribute names in said list of attribute names of the processed complex identity object, and wherein the respective one or more aliases generated based on processing each complex identity object produces a set of aliases as candidates to associate with a master identification for the resource.

US Pat. No. 10,216,770

SCALING STATEFUL CLUSTERS WHILE MAINTAINING ACCESS

Amazon Technologies, Inc....

1. A distributed storage system, comprising:a first plurality of storage nodes implemented via respective processors and memory that together implement a storage cluster that stores data for a client, wherein the data is segmented across the plurality of storage nodes;
a control plane for the distributed storage system, implemented via one or more processors and memory to:
detect a scaling event for the storage cluster;
in response to the detection of the scaling event:
adjust the storage cluster to include an adjusted number of storage nodes that is different than the first plurality of storage nodes according to the scaling event;
provide an indication of the scaling event to a leader node for the storage cluster;
the leader node for the storage cluster, implemented via one or more processors and memory to:
receive the indication of the scaling event;
in response to the receipt of the scaling event,
logically reassign responsibility for processing access requests for the data across the adjusted number of storage nodes in the adjusted storage cluster according to a monotone distribution scheme before the data is moved to the adjusted number of storage nodes;
at least one of the adjusted number of storage nodes in the adjusted storage cluster to physically redistribute the data, comprising:
obtain, in response to receipt of an access request distributed according to the logically reassigned responsibility, a portion of data from at least one of the first plurality of storage nodes that maintains a segment of the data in order to process the access request; and
store the obtained portion of the data;
the adjusted storage cluster to process access requests for the data at the number of storage nodes in the adjusted storage cluster according to the monotone distribution scheme, wherein prior to making the adjusted storage cluster available, the plurality of storage nodes are available to process other access requests for the data as segmented across the plurality of storage nodes.

US Pat. No. 10,216,768

TABLE AND INDEX COMMUNICATIONS CHANNELS

AMAZON TECHNOLOGIES, INC....

6. A computer-implemented method comprising:storing, by one or more processors of one or more computers, one or more messages in a first buffer, the one or more messages indicative of one or more updates to a plurality of items stored on a first table partition, the first buffer associated with a first communications channel between a first table partition and a first index partition;
suspending, by the one or more processors, transmission of the one or more messages over the first communications channel; and
forming, by the one or more processors, a second communications channel between the table partition and a second index partition formed from the first index partition, the second index partition selected from a plurality of index partitions to receive messages from the first table partition, the second index partition comprising a second index of a subset of the plurality of items.

US Pat. No. 10,216,767

MANAGEMENT METHOD AND SYSTEM FOR IMPLEMENTATION, EXECUTION, DATA COLLECTION, AND DATA ANALYSIS OF A STRUCTURED COLLECTION PROCEDURE WHICH RUNS ON A COLLECTION DEVICE

Roche Diabetes Care, Inc....

1. A system to perform a structured collection procedure, the system comprising a collection device, one or more processors, a memory communicatively coupled to the one or more processors, and machine readable instructions stored in the memory that, when executed by the one or more processors, cause the one or more processors to:with the collection device, initiate a collection procedure comprising one or more data event instances occurring according to a schedule of events, wherein each said data event instance comprises a data collection for a biomarker, said data collection to be performed according to one or more conditions of an adherence criteria pre-selected for each data event instance;
perform a data collection for at least one of said one or more data event instances;
after each data event instance, determine that a successful data collection has been performed in response to the data collection being actually performed and at least one condition of the pre-selected adherence criteria for the data event instance being met, and otherwise, determine that the data collection for the data event instance is an unsuccessful data collection;
generate contextual information for each successful data collection, said contextual information comprising at least a date and time of performing the data collection;
generate a data file for the collection procedure and store said data file in a first memory of the memory, said data file comprising a record for each data event instance comprising data of the successful data collection corresponding to the data event instance including the contextual information of the successful data collection;
for each data event instance having an unsuccessful data collection, determine availability of substitute data from a data collection performed separately from the collection procedure and stored with corresponding contextual information in the first memory or a second memory, wherein availability of the substitute data is determined according to whether the substitute data meets at least one condition of the pre-selected adherence criteria for the corresponding data event instance; and
in response to availability of substitute data being determined, select the substitute data for inclusion in the data file record of the corresponding data event instance such that the data file is configured to be complete for analysis of the collection procedure through inclusion of the substitute data.

US Pat. No. 10,216,764

IMAGE SEARCH APPARATUS, IMAGE SEARCH METHOD, AND SYSTEM

Canon Kabushiki Kaisha, ...

1. An image search apparatus which searches for an image containing an object requested from a distribution destination apparatus, comprising:a processor; and
a memory storing a program which, when executed by the processor, causes the image search apparatus to function as:
a management unit configured to manage a first associated information in which an object of an image owned by the image search apparatus is associated with a category and a second associated information in which a user of the distribution destination apparatus is associated with a category, respectively;
a reception unit configured to receive, from the distribution destination apparatus, user information about the user of the distribution destination apparatus, and object information about the requested object;
a user category determination unit configured to determine, based on the user information received by the reception unit and the second associated information, a distribution destination user category to which the user of the distribution destination apparatus belongs;
an object category determination unit configured to determine, based on the object information received by the reception unit and the first associated information, an object category to which the object requested from the distribution destination apparatus belongs;
a comparison unit configured to determine whether the distribution destination user category coincides with the object category; and
an image search unit configured to search for an image based on a search condition as the requested object from the distribution destination apparatus in case where the distribution destination user category coincides with the object category, and not to search for the image based on the requested object in case where the distribution destination user category does not coincide with the object category,
wherein the reception unit is capable of receiving one user information and a plurality of object information from the distribution destination apparatus,
the object category determination unit determines the object category for each of the object information in case where the plurality of object information are received,
the comparison unit determines whether each of the object categories determined by the object category determination unit coincides with the distribution destination user category corresponding to the one user information, and
the image search unit searches for the image in accordance with the determination result of the comparison unit.

US Pat. No. 10,216,762

CONTROL METHOD AND NON-TRANSITORY COMPUTER-READABLE RECORDING MEDIUM FOR COMPARING MEDICAL IMAGES

Panasonic Corporation, O...

1. A control method for controlling an information terminal for access to a case search system that searches for a medical image with reference to a medical image database having medical images registered therein, the information terminal including a display and a computer, wherein a target medical image that is a medical image to be interpreted is displayed on the display, the target medical image being selected from among candidate medical images to be interpreted, the control method comprising:causing the computer of the information terminal to detect designation information indicating a region of interest included in the target medical image;
causing the computer of the information terminal to receive from the case search system, in accordance with the region of interest indicated by the designation information, a plurality of similar medical images each having a feature value having a predetermined similarity to a feature value of the region of interest, each of the plurality of similar medical images including a corresponding region of interest which corresponds to the region of interest;
causing the computer of the information terminal to display a display screen on the display, the display screen being a screen on which a number of similar medical images that is less than or equal to a predetermined value among the received plurality of similar medical images are displayed, the display screen including a number of display frames that is equal to the predetermined value to display the similar medical images;
causing the computer of the information terminal to, in response to detection of an instruction for enlarging the similar medical images being displayed on the display screen, enlarge and display the corresponding regions of interest included in the similar medical images while maintaining sizes of the display frames unchanged on the display screen; and
causing the computer of the information terminal to, in response to detection of an instruction for causing a selected similar medical image selected from among the enlarged and displayed similar medical images to move within a corresponding display frame among the display frames, cause an unselected similar medical image other than the selected similar medical image to move synchronously with the movement of the selected similar medical image within a display frame corresponding to the unselected similar medical image among the display frames in a movement direction identical with a movement direction in which the selected similar medical image moves,
wherein a ratio of a movement distance by which the selected similar medical image moves to a movement distance by which the unselected similar medical image moves corresponds to a ratio of an area of the corresponding region of interest included in the selected similar medical image to an area of the corresponding region of interest included in the unselected similar medical image.

US Pat. No. 10,216,759

HETEROGENEOUS FILE OPTIMIZATION

Microsoft Technology Lice...

1. A method comprising:assigning a plurality of optimization designations to a plurality of respective regions of a file based on a plurality of access patterns that is associated with the plurality of respective regions, each optimization designation indicating an extent to which the respective region is to be optimized, at least one optimization designation of the plurality of optimization designations indicating the extent to which the respective region is to be optimized in accordance with at least one of a specified compression technique, which is selected from a plurality of compression techniques that are capable of compressing the respective region based on the access pattern that is associated with the respective region, or a specified data de-duplication technique, which is selected from a plurality of data de-duplication techniques that are capable of de-duplicating the respective region based on the access pattern that is associated with the respective region, each access pattern at least one of indicating or describing at least one of the following:
(a) one or more accesses to the respective region with which the respective access pattern is associated,
(b) one or more modifications to the respective region with which the respective access pattern is associated; and
optimizing, using at least one of (A) one or more processors or (B) hardware logic/electrical circuitry, each region to the extent that is indicated by the respective optimization designation that is assigned to that region.

US Pat. No. 10,216,758

MULTI-TENANT PRODUCTION AND TEST DEPLOYMENTS OF HADOOP

VMWARE, INC., Palo Alto,...

1. A method for executing a distributed computing application within a virtualized computing environment for a plurality of tenants, the method comprising:instantiating a first plurality of virtual machines (VMs) on a plurality of hosts, wherein each of the first plurality of VMs is configured as a data-only node of a first distributed file system, and has a virtual disk;
storing an input data set in the first distributed file system by storing the input data set in a plurality of data blocks of the virtual disks of the first plurality of VMs;
instantiating a second plurality of VMs on the plurality of hosts, wherein each of the second plurality of VMs is configured as a data-only node of a second distributed file system storing the same input data set, and comprises a linked clone that references a virtual disk of a corresponding VM in the first plurality of VMs; and
instantiating a third plurality of VMs, wherein each of the third plurality of VMs is configured as a compute-only node, the compute-only nodes including a first set of compute only nodes that are configured to process the input data set in the first distributed file system for a first tenant and to process the input data set in the second distributed file system for a second tenant.

US Pat. No. 10,216,755

MULTI-MASTER TEXT SYNCHRONIZATION USING DELTAS

MICROSOFT TECHNOLOGY LICE...

1. A computer-implemented method for resolving conflicts to co-edited text, comprising:receiving, at a server that is hosting a master version of the co-edited text, difference notifications from clients that are hosting client versions of the co-edited text, wherein each difference notification of the difference notifications indicates a difference in the co-edited text between a given client version of the co-edited text and the master version of the co-edited text as determined by a given client;
in response to receiving the difference notifications, selecting, at the server, a policy to determine a sole difference notification of the difference notifications to select to process;
selecting, at the server, the sole difference notification of the difference notifications received from the clients to process based on the selected policy;
updating, at the server, the master version of the co-edited text with the selected difference notification to provide an updated master version of the co-edited text reflecting the sole difference notification;
sending an update notification to the clients reflecting the selected difference notification;
receiving, at the server from a conflicted client of the clients, an updated difference notification, wherein the conflicted client transmitted an unselected difference notification to update the master version of the co-edited text that was not selected by the server for provision in the updated master version of the co-edited text, and wherein the updated difference notification reflects a conflict resolution process executed by the conflicted client to reconcile the unselected difference notification and the selected difference notification in a client version of the co-edited text hosted by the conflicted client; and
updating, at the server, the updated master version of the co-edited text to reflect the updated difference notification to provide a reconciled master version of the co-edited text.

US Pat. No. 10,216,753

DATA FRAGMENTATION TUNING AND CANDIDACY PERSISTENCE

International Business Ma...

1. A processor-implemented method for implementing a first manager and a second manager for defragmenting a data area comprising:determining, by the first manager, based on an occurrence of a data change event for the data area, whether the data area has exceeded a defragment threshold based on a defragment threshold value,
wherein the defragment threshold value is a pre-determined number that has been added to a set of pre-existing properties that define the data area, wherein the set of pre-existing properties dynamically change based on a defragmentation tuning that modifies the defragment threshold value based on a frequency of a plurality of changes associated with the data area, the defragmentation tuning comprising a collection of information including, but not limited to, how often the data area is read, how often the data area is written to, how often the data area is added to, how often the data area is deleted from, how often the data area is defragmented, and an average size of data fragments associated with the data area,
wherein determining the data area has exceeded the defragment threshold comprises calculating a logical size of the data area, calculating a number of physical blocks in use, calculating the defragment threshold value, and calculating the defragment threshold,
wherein calculating the defragment threshold comprises:
calculating the defragment threshold at a time associated with the occurrence of the data change event by subtracting the calculated defragment threshold value from 1 to compute a first answer,
multiplying the computed first answer by a physical block size to compute a second answer, and
dividing the calculated logical size of the data area by the computed second answer to obtain the calculated defragment threshold;
adding the data area to a candidacy list, by the first manager, in response to determining the data area exceeded the defragment threshold, such that defragmentation is performed more often based on the candidacy list without conducting extensive searches for fragmented data areas;
determining, by the second manager, whether the data area has exceeded the defragment threshold based on the defragment threshold value;
defragmenting, by the second manager, only the data area added to the candidacy list and determined by the second manager to have exceeded the defragment threshold without defragmenting less fragmented data areas; and
removing the data area, by the second manager, from the candidacy list following the determination.

US Pat. No. 10,216,752

DEFINING SOFTWARE INFRASTRUCTURE USING A PICTURE

Amazon Technologies, Inc....

1. A non-transitory computer-readable storage medium having computer-executable instructions stored thereupon which, when executed by a computer, cause the computer to:receive, from a computing device associated with a user of a service provider network, a picture that depicts an infrastructure that operates in the service provider network;
detect resources that are depicted as graphical shapes in the picture that are provided by the service provider network, wherein detecting the resources includes to
analyze the picture to identify a first graphical shape in the picture,
identify a first resource that is provided by the service provider network based, at least in part, on the first graphical shape,
analyze the picture to identify a second graphical shape in the picture, wherein the second graphical shape is different from the first graphical shape, and
identify a second resource that is provided by the service provider network based, at least in part, on the second graphical shape;
analyze the picture to detect connections between the resources, wherein the connections are depicted as graphical lines in the picture;
determine that one or more parameters associated with the infrastructure are undetermined after analyzing the picture to identify one or more of the first graphical shape, the second graphical shape, or the connections between the resources;
providing a user interface that provides functionality for obtaining the one or more parameters;
generate configuration data that describes a configuration of the infrastructure within the service provider network, the configuration data generated at least, in part, on the detected resources, the detected connections, and the one or more parameters; and
perform one or more actions using the configuration data.

US Pat. No. 10,216,751

INFORMATION PROCESSING APPARATUS, METHOD FOR CONTROLLING THE SAME, AND STORAGE MEDIUM

Canon Kabushiki Kaisha, ...

1. An information processing apparatus comprising:a user interface;
a memory for storing a computer program; and
at least one processor for executing the computer program to perform:
specifying, among a plurality of folders based on a user's instruction received at the user interface, a folder into which a file is to be stored;
generating a plurality of character string candidates from a folder path of the specified folder by dividing the folder path of the specified folder into the plurality of character string candidates;
displaying, within the user interface, a list of the generated plurality of character string candidates for setting a new file name of the file;
selecting, based on a user's selecting operation received at the user interface, at least one character string candidate from the list of the plurality of character string candidates displayed within the user interface; and
setting, to the file stored in the specified folder, the new file name which is generated based on the selected at least one character string candidate by sorting the selected at least one character string candidate in an order that the user selected the at least one character string candidate from the list of the plurality of character string candidates displayed within the user interface.

US Pat. No. 10,216,750

ANNOTATED GEOMETRY

Microsoft Technology Lice...

1. A method for improving computer functionality when providing a visualization of data by associating geometry with contextual information, comprising:receiving data comprising a data series;
computing geometry to graphically represent the data series in the visualization based on a selected layout;
annotating the geometry with a plurality of escapes to produce annotated geometry, wherein each escape comprises an annotation that provides metadata context to add functionality to the geometry in the visualization, wherein the functionality provided by the plurality of escapes is based on a layout type of the visualization;
associating the annotated geometry with the data series; and
transmitting the annotated geometry to a client for processing to render and display the visualization, wherein at least one escape in the annotated geometry can be ignored by the client.

US Pat. No. 10,216,749

PERFORMING ACTIONS ASSOCIATED WITH POSITIVE FEEDBACK EVENTS

Microsoft Technology Lice...

1. A method comprising:accessing information associated with one or more positive feedback events for one or more members of a social network service, wherein a plurality of the positive feedback events comprise endorsements, by a first set of members, of content provided to the social network service by a second set of members, the content provided via a feed or content stream of the social network service, the endorsements by the first set of members resulting from the first set of members selecting a “like” button presented in association with content published in the feed or content stream of the social network service;
identifying one or more types of the content provided by the second set of members, wherein the one or more types of the content are associated with more than a threshold number of positive feedback events performed by the first set of members of the social network service;
subsequent to said identifying step, determining that a particular member, not included in the first and second sets of members, has provided less than a threshold number of items of the one or more types of content that are associated with more than the threshold number of positive feedback events performed by the first set of members of the social network service;
in response to the determination, recommending to the particular member that the particular member provides more items of the one or more types of content; and
in response to a positive feedback event associated with an item of content provided by the particular member of the social network service, updating a dashboard, for the particular member of the social network service, that contains information identifying an aggregation of positive feedback events associated with the particular member.

US Pat. No. 10,216,744

DATA MIGRATION TO A CLOUD COMPUTING SYSTEM

Microsoft Technology Lice...

1. A computing system, comprising:at least one processor; and
memory storing instructions executable by the at least one processor, wherein the instructions, when executed, configure the computing system to provide:
a migration queue system configured to:
expose a source-independent application programming interface that is invoked by a migration request to migrate information, stored in source data store of a source system, to a destination system that is remote from the source system; and
queue a work item corresponding to the migration request in a work item queue;
a manifest accessing component configured to:
access a manifest of the information to be migrated; and
based on the manifest, identify content objects, from the source data store of the source system, to be migrated to the destination system; and
an import component configured to:
import the identified content objects by storing the identified content objects to a destination data store in the destination system,
wherein the manifest accessing component is configured to:
update a migration log in the manifest, the updated migration log identifying that the content objects have been stored to the destination data store.

US Pat. No. 10,216,743

FORMAT MANAGEMENT FOR A CONTENT REPOSITORY

International Business Ma...

1. A computer-implemented method for file conversion upon format expiration, the method comprising:receiving, by a computing system and based upon a first schedule, a command to perform a format expiration check;
evaluating, by the computing system, a risk of expiration of a first format associated with a first format object, wherein the first format object contains information which allows the computing system to analyze respective content of respective files in the first format, and the evaluating includes evaluating a market share of one or more applications that support the first format, evaluating a release frequency of one or more applications that support the first format, and evaluating a number of applications that support the first format;
determining, by the computing system, if the risk of expiration is above a threshold;
identifying, by the computing system by querying a record of associations comprised of key-value pairs between files and formats using format objects and in response to determining the risk of expiration is above the threshold, one or more files stored in the first format for conversion by selecting a subset of the files stored in the first format based on one or more importance values associated with the files;
identifying, by the computing system, a second format based on information stored in the first format object and information stored in a second format object associated with the second format;
converting, by the computing system and on a second schedule automatically selected by the computing system based upon system usage, one or more files stored in the first format to the second format;
saving, by the computing system, the one or more files in the second format by overwriting the one or more files stored in the first format; and
outputting, to a user interface, an indication that the one or more files were successfully converted and saved in the second format, and the indication comprises, for respective successfully converted and saved files, a respective file name, the first format, and the second format.

US Pat. No. 10,216,742

CONVERTING DATA SETS IN A SHARED COMMUNICATION ENVIRONMENT

Honeywell International I...

1. A method for implementing a data converter program for converting data sets in a shared communication environment, the method comprising:providing at least one data provider device (DPD) and at least one controller coupled for performing data transmissions between said DPD and said controller, said controller or an interface device positioned between said DPD and said controller including a processor connected to a memory device (memory) that stores a data converter program, an earlier in time descriptive data set having an earlier data set format and a different later in time descriptive data set having a later data set format, said earlier in time descriptive data set and said later in time descriptive data set being acquired from said DPD, wherein said interface device or said controller is programmed to implement said data converter program to execute:
initializing said interface device including loading said data converter program and retrieving an earlier data set definition file and a later data set definition file,
identifying several parameters within the received data set definition files including at least one of a field size, a version identifier, a text identifier, a binary identifier, and a data type,
determining if a format associated with a received DPD data set definition file is said later data set format by matching the parameters of the later data set definition file to the parameters of the received DPD data set; and
in response to determining that a data set definition file format associated with said received DPD data set is said later data set definition file format, converting said received DPD data set into a converted data set having said earlier data set format and transmitting the converted data set to the controller.

US Pat. No. 10,216,741

MANAGING A COMPUTERIZED DATABASE USING A VOLATILE DATABASE TABLE ATTRIBUTE

International Business Ma...

1. A non-transitory computer-readable media having stored thereon an executable computer program for managing a computerized database, executable computer program instructs at least one computer system to perform actions comprising:storing at least one respective volatility attribute for each of at least one database table of said computerized database, each volatility attribute expressing volatility of at least a portion of a respective database table of said computerized database, said volatility of at least a portion of a respective database table being a property of the respective database table that is a function of changes to data recorded in said at least a portion of the respective database table with respect to time;
selectively determining whether to maintain at least one metadata structure, each metadata structure of the at least one metadata structure containing respective metadata describing data in at least a first database table of said at least one database table, the determining whether to maintain at least one metadata structure being performed using at least one volatility attribute expressing volatility of at least a portion of the first database table, wherein maintaining the at least one metadata structure comprises updating the metadata in the at least one metadata structure responsive to changes to the data in the at least a first database table; and
responsive to determining to maintain a first metadata structure of the at least one metadata structure, maintaining the first metadata structure, wherein maintaining the first metadata structure comprises updating the metadata in the first metadata structure responsive to changes to the data in the at least a first database table.

US Pat. No. 10,216,739

ROW-BASED ARCHIVING IN DATABASE ACCELERATORS

International Business Ma...

1. A method comprising:receiving a request to transfer a row of data from a source table of a source database system, to a target table of a target database system, wherein the row of data is a subset of a first partition of the source table and the target database system is an online analytical processing (OLAP) database;
responsive to receiving the request:
creating a second partition in an intermediate table of the source database system,
transferring the row of data to the second partition,
copying the row of data to a backup partition on a backup database system,
storing an image copy of the backup partition,
copying the second partition to the target table, to create an archive partition in the target table,
deleting the row of data from the source table, and
purging the second partition from the intermediate table of the source database system.

US Pat. No. 10,216,738

VIRTUAL REALITY INTERACTION WITH 3D PRINTING

SONY INTERACTIVE ENTERTAI...

1. A system for accessing virtual reality (VR) representations in a virtual universe, the system comprising:memory that stores a plurality of VR data sets, each VR data set defining a VR representation of a different location within a virtual universe, including associated 3D data strings;
one or more VR data servers, wherein each VR data server accesses and transmits one of the VR data sets;
a domain server that provides domain data regarding a selected location within the virtual universe, the domain data including a network address of the VR data server identified as storing the respective VR representation and the respective 3D data strings for the selected location;
a client host that:
receives a selection of a location within the virtual universe,
receives the network address of the VR data server associated with the VR data set defining the VR representation of the selected location within the virtual universe,
communicates with the VR data server at the received network address regarding access to the VR data set for the selected location,
generates a display of the VR representation of the selected location within the virtual universe using the VR data set,
receives a request to print the display of the generated VR representation of the selected location in 3D, and
queries one or more online sources based on the 3D data strings associated with the VR data set for the selected location, wherein at least one 3D data file is retrieved based on the queries;
a 3D printing device that produces a physical representation of the selected location based on the 3D data file, wherein the 3D printing device produces the physical representation using 3D printing.

US Pat. No. 10,216,737

SUBSCRIBE TO PEOPLE IN VIDEOS

GOOGLE LLC, Mountain Vie...

1. A computer-implemented method comprising:maintaining subscription data that is stored in a subscription data store, the subscription data specifying a plurality of entities subscribed to by a plurality of users, each of the plurality of entities being a tagged entity associated with a tag, wherein the tagged entity is subscribed to by a particular user of the plurality of users in response to a subscription recommendation provided to the particular user with respect to the tagged entity;
identifying a media item associated with one or more tagged entities of the plurality of entities, wherein the tagged entities are depicted in the media item;
determining, based on the subscription data, a user of the plurality of users that is subscribed to the depicted tagged entities of the media item;
providing, for presentation to the user, the media item associated with the one or more depicted tagged entities of the media item, wherein the user is subscribed to the one or more depicted tagged entities;
identifying a channel of media items that includes the media item associated with the one or more depicted tagged entities to which the user is subscribed; and
recommending to the user viewing the media item that the user subscribe to the channel that includes the media item associated with the one or more depicted tagged entities to which the user is subscribed.

US Pat. No. 10,216,736

SOCIAL NETWORKING RESPONSE MANAGEMENT SYSTEM

International Business Ma...

1. A system for managing electronic social networking, the system comprising:a computer system comprising: a computer processor, a computer-readable storage medium, and program instructions stored on the computer-readable storage medium being executable by the processor, to cause the computer system to perform a method, comprising:
analyzing content from a first user for communication to other users on an electronic social networking system, the electronic social networking systems including one or more of: a blog, a community, a news feed, and a forum, the first user and the other users using a device, respectively, including a computer, the device including one or more of: a laptop, a mobile device, a personal data assistant, a cell phone, and a notebook, the computer having a computer readable storage medium having program instructions embodied therewith, and the program instructions being executable by the computer, the electronic social networking system including one or more of: a communications system using a remote server, the Internet, and text messaging, email, and a post;
applying natural language processing (NLP) and analytic analysis to the content to identify a workflow for accessing and responding to the content by the first user and the other users;
defining a set of rules as part of the workflow for controlling access and responses to the content, the set of rules including user actions for defining a level of permission for each user of the other users in relation to the workflow;
the defining of the set of rules including identifying a plurality of areas of interest to the users in relation to the workflow using the analytic analysis by analyzing information from the social networking system, the areas of interest can include one or more of: an activity, an expertise, work experience, a current project, a skill, a relationship between users;
reviewing the defined content by the first user before sending the content to the other users;
reviewing the workflow by the first user using an interface on the device;
controlling the access and the responding to the content by the first user and the other users based on the defined set of rules for the workflow which includes the areas of interest to the other users;
the controlling the access and the responding to the content including:
allowing a first group of one or more specified responders of the other users to respond to the content based on the defined set of rules for the workflow;
blocking a second group of one or more specified responders of the other users from responding to the content based on the defined set of rules for the workflow;
allowing a first sub-group of the first group to replace the content based on the defined set of rules for the workflow;
allowing a second sub-group of the first group to edit and/or replace the content after a period of time has elapsed, based on the defined set of rules for the workflow; and
allowing the second group of the one or more specified responders of the other users to respond to the content, in response to the first group of the one or more specified responders of the other users completing a response.

US Pat. No. 10,216,735

SOCIAL NETWORKING RESPONSE MANAGEMENT SYSTEM

International Business Ma...

1. A computer program product for managing electronic social networking, the computer program product comprising a computer readable storage medium having program instructions embodied therewith, wherein the computer readable storage medium is not a transitory signal per se, the program instructions executable by a computer to cause the computer to perform a method, comprising:analyzing content from a first user for communication to other users on an electronic social networking system, the electronic social networking systems including one or more of: a blog, a community, a news feed, and a forum, the first user and the other users using a device, respectively, including a computer, the device including one or more of: a laptop, a mobile device, a personal data assistant, a cell phone, and a notebook, the computer having a computer readable storage medium having program instructions embodied therewith, and the program instructions being executable by the computer, the electronic social networking system including one or more of: a communications system using a remote server, the Internet, and text messaging, email, and a post;
applying natural language processing (NLP) and analytic analysis to the content to identify a workflow for accessing and responding to the content by the first user and the other users;
defining a set of rules as part of the workflow for controlling access and responses to the content, the set of rules including user actions for defining a level of permission for each user of the other users in relation to the workflow;
the defining of the set of rules including identifying a plurality of areas of interest to the users in relation to the workflow using the analytic analysis by analyzing information from the social networking system, the areas of interest can include one or more of: an activity, an expertise, work experience, a current project, a skill, a relationship between users;
reviewing the defined content by the first user before sending the content to the other users;
reviewing the workflow by the first user using an interface on the device;
controlling the access and the responding to the content by the first user and the other users based on the defined set of rules for the workflow which includes the areas of interest to the other users;
the controlling the access and the responding to the content including:
allowing a first group of one or more specified responders of the other users to respond to the content based on the defined set of rules for the workflow;
blocking a second group of one or more specified responders of the other users from responding to the content based on the defined set of rules for the workflow;
allowing a first sub-group of the first group to replace the content based on the defined set of rules for the workflow;
allowing a second sub-group of the first group to edit and/or replace the content after a period of time has elapsed, based on the defined set of rules for the workflow; and
allowing the second group of the one or more specified responders of the other users to respond to the content, in response to the first group of the one or more specified responders of the other users completing a response.

US Pat. No. 10,216,734

COMPLEMENTARY AND SHADOW CALENDARS

Microsoft Technology Lice...

1. A method for enabling a computing device to construct a complementary calendar for a user of a user device, the method comprising:receiving schedule data from a primary calendar;
identifying a user signal associated with the user of the user device, based on data received from the user device, wherein the user signal comprises a user activity performed by the user and one or more of time data, or location data, associated with the user activity performed by the user;
evaluating a device context of the device to identify the activity of the user as the user signal;
automatically generating an entry based on one or more inferences derived from the user signal comprising the user activity performed by the user, data received from the primary calendar, and one or more of the time data, or the location data, associated with the user activity performed by the user;
populating the complementary calendar, wherein the complementary calendar is automatically populated with the entry based on the user signal; and
generating a notification to the user based upon the automatically-generated entry in the complementary calendar.

US Pat. No. 10,216,733

SMART COMMENTING SOFTWARE

1. A computer system for generating comments to a document, the system comprising:one or more computer devices, the computer system configured to:
electronically communicate with a database, which database is embodied on a computer-readable medium configured to store at least a first phrase and a first comment related to the first phrase, wherein the first comment comprises a request to modify at least a portion of the language of the first phrase, and
the computer system programmed via executable instructions at least to enable a first user to:
acquire a document as or on behalf of a first party to the document, wherein the document comprises an agreement between at least two parties to the document, wherein the document was at least one of prepared or selected by a second user as or on behalf of a second party to the document, wherein the first phrase and the first comment were prepared before the document was at least one of prepared or selected by the second user, wherein the first user is different than the second user, and wherein the first party is different than the second party,
compare content of the document with content of the database,
identify the first phrase as relevant to a phrase in the document,
after the first phrase is identified as relevant to a phrase in the document, receive the first comment from the database,
after the first comment is received from the database:
associate the first comment with the relevant phrase in the document, and
make the first comment available for editing by the first user,
after the first comment has been associated with the relevant phrase in the document and made available for editing by the first user, make comment format options available to the first user, and
after the comment format options have been made available to the first user, make the first comment available for transmission to at least one of the second user or the second party in at least one of the optional comment formats.

US Pat. No. 10,216,730

TRANSLATING LANGUAGE CHARACTERS IN MEDIA CONTENT

Microsoft Technology Lice...

1. A method comprising:displaying, on a display device, an image that includes one or more words in a first language, wherein at least one word of the one or more words is displayed at a non-horizontal angle with respect to an edge of the display device;
receiving, by an input device, a gesture selecting a first portion of the image that includes a part of at least one word of the one or more words, the gesture comprising a swipe gesture performed at approximately the non-horizontal angle;
determining one or more boundaries of a second portion of the image based at least in part on the first portion of the image, the second portion of the image including the first portion;
sending the second portion of the image to a server;
receiving, from the server, one or more translated words in a second language, the one or more translated words corresponding to a translation of the one or more words in the first language; and
displaying, on the display device, the one or more translated words.

US Pat. No. 10,216,729

TERMINAL DEVICE AND HANDS-FREE DEVICE FOR HANDS-FREE AUTOMATIC INTERPRETATION SERVICE, AND HANDS-FREE AUTOMATIC INTERPRETATION SERVICE METHOD

ELECTRONICS AND TELECOMMU...

1. A user terminal for hands-free automatic interpretation service, comprising:one or more units which are executed by a processor using programs associated with least one non-transitory storage device, the one or more units comprising:
an interpretation environment initialization unit configured to perform pairing with a headset in response to a first pairing request from the headset, and to initialize an interpretation environment information;
an interpretation intermediation unit configured to send first interpretation results obtained by interpreting voice information of a first user in a first language received from the headset to a counterpart terminal of a second user, and to receive second interpretation results in the first language obtained by interpreting voice information of the second user in a second language from the counterpart terminal; and
an interpretation processing unit configured to synthesize the second interpretation results in the first language of the second user into synthesized voice information in the first language based on the initialized interpretation environment information when the second interpretation results are received from the counterpart terminal, and to send the synthesized voice information in the first language to the headset;
wherein the interpretation environment initialization unit performs a second pairing request to the counterpart terminal according to an interpretation request of the headset,
performs pairing with the counterpart terminal when receiving a pairing approval from the counterpart terminal in response to the second pairing request,
receives information about the second language of the second user from the counterpart terminal, and
sets the interpretation environment information with the counterpart terminal to perform the hands-free automatic interpretation service based on the information about the second language of the second user,
wherein the first interpretation results obtained by interpreting the first user's voice information include one or more of interpretation data, corresponding to the voice information interpreted in a text or voice form, and interpretation error correction data; and
wherein the error correction data includes one or more of similarly intended sentences and N-best recognition data.

US Pat. No. 10,216,727

VISUALLY DIFFERENTIATING STRINGS FOR TESTING

Microsoft Technology Lice...

1. A computing device, comprising:at least one processor; and
at least one memory storing computer executable instructions that when executed by the at least one processor cause the computing device to:
determine that at least a subset of a plurality of data strings has changed;
calculate a localization test status for at least the subset of data strings, comprising:
calculate a first localization test status indicating that a first data string has been translated into a local language and is ready to be localization tested for translation quality; and
calculate a second localization test status indicating that a second data string has been translated into a local language and has been localization tested for translation quality;
provide a visual marker overlaid atop each data string of at least the subset of data strings indicating the localization test status, wherein a first visual marker indicates the first localization test status and a second visual marker indicates the second localization test status, wherein the first visual marker is different from the second visual marker to enable a user to visually distinguish between at least the first data string having the first localization test status and the second data string having the second localization test status; and
change a secondary characteristic of at least one of the first visual marker or the second visual marker when a string error history describing previous errors that have occurred involving one of the first data string or the second data string indicates that an error is present in one of the first data string or the second data string.

US Pat. No. 10,216,726

APPARATUS AND METHOD FOR DETERMINING TRANSLATION WORD

Samsung Electronics Co., ...

1. An apparatus for determining a translation word, the apparatus comprising:one or more processors configured to:
generate a word vector, corresponding to an input text word of a first language, in a first language word vector space predefined with respect to the first language;
determine, using a trained matching model that considers the generated word vector, a resulting target word vector in a second language word vector space predefined with respect to a second language, the trained matching model being trained and generated in advance through machine learning by using language resources that define a relation between the first and second languages; and
determine a translation word of the second language, based on the determined resulting target word vector of the second language,
wherein the generating of the word vector in the first language vector space further includes generating one or more word vectors, in the first language vector space, for respective input text words that respectively do not have predefined correspondences in the second language,
wherein the determining of the resulting target word vector in the second language vector space further includes determining one or more respective resulting target word vectors, in the second language vector space, corresponding to the generated one or more word vectors, and
wherein the determining of the translation word further includes determining translation words of the second language for the respective input text words, including determining one or more translation words for the one or more respective target word vectors that are vectors of the second language vector space without correspondence to a word in the second language.

US Pat. No. 10,216,721

SPECIALIZED LANGUAGE IDENTIFICATION

Hewlett-Packard Developme...

1. A system comprising:multiple engines that are each to produce output representative of a summary of the document, wherein each one of the multiple engines applies a different type of engine selected from a group of engines comprising an extractive type of engine, an abstractive type of engine, and a frequency type of engine, wherein the output from each of the multiple engines varies between the multiple engines in accordance with a respective type of engine;
a composite engine to generate a filtered set of content in a single output to reduce a size of the output produced by the multiple engines, wherein the filtered set of content comprises different combinations of the output from the multiple engines that have different densities of specialized word usage;
an identification engine to:
apply a weighting mechanism to the different combinations of the output in the filtered set of content;
obtain a value corresponding to the different combinations of the output in the filtered set of content;
identify specialized language from the different combinations of the output in the filtered set of content, wherein the value corresponding to the different combinations of the output in the filtered set of content reaching at least a particular threshold indicates specialized language within that output; and
index the document based on the specialized language that is identified to identify other documents salient to the document based on the specialized language.

US Pat. No. 10,216,720

COMPARATOR ASSOCIATED WITH DICTIONARY ENTRY

Hewlett Packard Enterpris...

1. A circuit comprising:a dictionary entry storing a dictionary word;
a register storing an input word; and
a hardware comparator associated with the dictionary entry to compare the dictionary word and the input word, based on a bit-by-bit comparison, the comparator having an output line on which to output a signal as the bit-by-bit comparison occurs, the signal indicating if the dictionary word is, based on a number of bits that the hardware comparator has thus far compared, less than the input word, equal to the input word, greater than the input word, or indeterminate, wherein indeterminate means the comparison is not yet complete,
wherein the circuit is a sorting circuit is to sort a plurality of dictionary words including the dictionary word stored by the dictionary entry by utilizing a content-addressable memory that indicates whether the dictionary word is greater than or less than the input word when adding the input word to a sorted order of the dictionary words, including determining a location of the input word stored by the register within the sorted order of the dictionary words in a length of time having an upper-bounded limit irrespective of a number of the dictionary words.

US Pat. No. 10,216,719

RELATION EXTRACTION USING QANDA

International Business Ma...

1. A computer-implemented method of extracting entity relations, the method comprising:associating, by a computer, one or more preprogrammed questions with one or more first entity types;
associating, by the computer, one or more second entity types with one or more answers to the one or more preprogrammed questions;
identifying, by the computer, an entity annotated within a document;
extracting, by the computer, a portion of content in a proximity to the entity;
determining, by the computer, whether the entity corresponds to at least one of the one or more first entity types;
based on determining that the entity corresponds to the at least one of the one or more first entity types, determining, by the computer, the one or more answers to the one or more questions based on the extracted portion of content, wherein the determined one or more answers describe a relation between the identified entity and one or more other entities included within the portion of content;
weighting, by the computer, the determined one or more answers;
ranking, by the computer, the determined one or more answers based on the weighting;
determining, by the computer, whether a first ranked answer of the determined one or more answers is correct by comparing an entity type corresponding to the first ranked answer to the one or more second entity types associated with the determined one or more answers to the one or more questions;
based on determining that the first ranked answer is incorrect, rewording, by the computer, the one or more questions;
determining, by the computer, one or more second answers to the one or more reworded questions based on the extracted portion of content; and
associating, by the computer, the one or more second answers to the one or more reworded questions with the entity.

US Pat. No. 10,216,718

MAINTAINING CONVERSATIONAL CADENCE IN AN ONLINE SOCIAL RELATIONSHIP

International Business Ma...

1. A method for maintaining conversational cadence, comprising:determining, by a processor, a conversational cadence associated with a user in a social network;
detecting, by the processor, a reduction in the conversational cadence of the user, wherein detecting the reduction in the conversational cadence of the user comprises at least one of detecting a reduction in an average number of messages transmitted by the user over a preset time period during a selected time duration being less than a predetermined limit and detecting an absence of messages from the user for more than a predetermined time period;
providing, by the processor, in response to detecting the reduction in the conversational cadence of the user, a set of fill-in messages to a communications device of another user in the social network that creates an appearance to the other user in the social network of no reduction in the conversational cadence, wherein providing the set of fill-in messages comprises retroactively automatically distributing a portion of the set of fill-in messages to the other user over at least an earlier preset time period corresponding to when the reduction in the conversational cadence occurs, wherein the portion of the set of fill-in messages are retroactively automatically distributed over the earlier preset time period that corresponds to the reduction in conversational cadence of the user by automatically predating the set of fill-in messages by the processor to correlate with the conversational cadence associated with the user and each message of the portion of the set of fill-in messages indicating a time separation that correlates to the conversational cadence associated with the user; and
identifying the fill-in messages as being provided by a system on behalf of the user by including an indication or obvious notification in the fill-in messages that the fill-in messages are provided by a system or machine and not the actual user.

US Pat. No. 10,216,717

ACTIONABLE EMAIL DOCUMENTS

Microsoft Technology Lice...

1. A storage media comprising instructions that, when executed, cause a computing device to modify a spreadsheet document, comprising:sending an email document comprising one or more table-to-email linkage identifiers to a recipient, wherein the email document is operable to collect data from the recipient as collected data using one or more data fields associated with the one or more table-to-email linkage identifiers, wherein the email document further comprises one or more table-to-email linkage identifiers for automatically mapping the collected data to the spreadsheet document;
receiving the collected data from the recipient;
automatically mapping the collected data to at least one field of the spreadsheet document using the one or more table-to-email linkage identifiers, wherein the at least one field is associated with a syntactic constraint; and
automatically inserting the collected data into the spreadsheet document based on the mapping, wherein the collected data is validated prior to insertion into the at least one field of the spreadsheet document using one or more syntactic checks to verify that the collected data is the expected data type for the at least one field.

US Pat. No. 10,216,714

TEXT CHARACTER AND FORMATTING CHANGES IN COLLABORATIVE CONTEXTS

APPLE INC., Cupertino, C...

1. A processor-implemented method for processing collaborative data inputs, comprising:on a local electronic device, receiving an initial input to trigger generation of a forward action, a detail action, and an inverse action generated by a remote electronic device, wherein the detail action comprises one or more steps for implementing the forward action on the local electronic device and the inverse detail action comprises an opposite action of the detail action;
updating a first field of a data structure with the forward action;
updating a second field of the data structure with the detail action;
changing a local version of a collaborative document by executing the detail action;
updating a third field of the data structure with the inverse detail action;
updating the first field of the data structure based on the inverse detail action; and
updating a fourth field of the data structure with the forward action.

US Pat. No. 10,216,713

GENERATING DOCUMENTS USING TEMPLATES

MICROSOFT TECHNOLOGY LICE...

1. A method performed by a computing device, the method comprising:detecting an input that is associated with a user;
based on the input, selecting a template associated with a first computing program;
based on a programmatic search of the template, identifying a scripting language node in the template that corresponds to a document data field and includes a programmatic script defining a data retrieval operation associated with the document data field;
based on execution of the programmatic script to perform the data retrieval operation, retrieving data from a data store associated with a second computing program that is different than the first computing program; and
generating, by the first computing program, a document according to the template, the document including the document data field with the retrieved data.

US Pat. No. 10,216,711

INFORMATION COLLECTION METHOD AND APPARATUS

Xiaomi Inc., Beijing (CN...

1. A method for collecting information, comprising:receiving, at a terminal device having a user account in a social group that is established by a communication service, a trigger message that is sent by a specific user account of the social group to members of the social group, the trigger message comprising a prompt text and a jump instruction to a page for collecting specific information;
generating a text link associated with the jump instruction based on the prompt text;
displaying the text link on an interface page for the communication service;
detecting a trigger event with respect to the text link;
executing the jump instruction to display the page for collecting the specific information in response to detecting the trigger event;
providing, via the page, a first option to access stored information within a data storage at the terminal device, wherein the stored information includes the specific information;
receiving a user selection of a subset of the stored information from within the data storage;
transmitting the subset of the stored information to a server that is configured to compile a plurality of information including the subset of the stored information and provide the compiled plurality of information for access to each one of a plurality of user accounts that transmitted to the server the respective specific information of the plurality of information,
wherein the compiled plurality of information including the subset of the stored information further includes a plurality of subsets of stored information acquired from the plurality of user accounts,
wherein contents of the plurality of subsets of stored information are accessible via a target page that is configured to display the plurality of compiled information in a form of a plurality of links to a plurality of subpages that are each associated with a corresponding one of the plurality of subsets of stored information, and
wherein the contents of the plurality of subsets of stored information are viewable by each one of the plurality of user accounts via the plurality of subpages that are accessible via the target page.

US Pat. No. 10,216,710

COMBINING AND DISPLAYING MULTIPLE DOCUMENT AREAS

International Business Ma...

1. A device for combining and displaying a plurality of areas of a document, the device comprising computer hardware components configured to perform a method comprising:storing, in response to a user marking an area of the document, information on the marked area, wherein the area of the document is marked by the user selecting a start point and an end point using a pointer of a pointing device;
displaying an icon representing the marked area, wherein a shape of the icon is determined according to the content of the area, and wherein the icon continues to be displayed when the area is not within a window displaying the document, and wherein a connecting line connects the icon to an upper side or lower side of the window when the area is not within the window;
conducting the storing operation and the displaying operation for a different area of the document; and
forming, in response to an operation by the user for arranging two or more icons to be in contact with each other, a joined icon by joining the icons together, wherein the joined icon is created according to the relative orientation and position of the two or more icons as arranged by the user;
combining marked areas represented by the two or more respective icons, according to a state of contact; and
changing the joined icon and changing a combining state of the marked areas in response to an operation by the user for rotating the joined icon.

US Pat. No. 10,216,709

UNIFIED MESSAGING PLATFORM AND INTERFACE FOR PROVIDING INLINE REPLIES

Microsoft Technology Lice...

1. A system comprising:at least one hardware processing unit; and
at least one memory storing computer executable instructions that, when executed by the at least one processing unit, cause the system to:
receive a message, wherein the message includes first text content;
scan the message to identify a structure of the first text content, the structure identifying at least one element of the first text content, the one element having a location within the first text content;
receive an indication of a selection of the one element identified by the structure within the first text content of the message;
identify the location of the indication within the structure of the first text content based on the selection of the one element;
launch a reply interface for receiving reply text content via a new message input field at the identified location within the first text content based on the selection;
receive the reply text content into the reply interface at the location via the new message input field; and
send a reply to the message, wherein a reply comprises the reply text content integrated into the message at the location.

US Pat. No. 10,216,708

PAGINATED VIEWPORT NAVIGATION OVER A FIXED DOCUMENT LAYOUT

Adobe Systems Incorporate...

1. A computer-implemented method comprising:defining a logical flow of multiple content regions in a web page according to a hierarchy that organizes the content regions in the web page, the defining comprising associating authored indications of viewability with respective ones of the multiple content regions, wherein:
the hierarchy organizes a first content region and a second content region of the web page in a first level of the hierarchy,
the hierarchy further organizes content sub-regions of the first content region in a deeper level of the hierarchy, the deeper level starting from the first content region in the first level,
the logical flow specifies a navigation from the first content region to the second content region based on a first association between the first level of the hierarchy and a first navigation input from a computing device, and
the logical flow further specifies a navigation between the content sub-regions based on a second association between the deeper level of the hierarchy and a second navigation input from the computing device;
initiating, in response to a request for the web page, display of the web page in a window on a display screen of the computing device, wherein the first content region and the second content region are presented in a single view within the window based on the first level of the hierarchy, and wherein the content sub-regions are presented in the single view within the first content region based on the deeper level of the hierarchy;
initiating, in response to a navigation input display of the first content region in the window, wherein the first content region is resized to fit the window according to a first zoom level; and
in response to receiving an additional navigation input to display a next content region following the display of the first content region:
identifying the second content region and an authored indication of viewability associated therewith, the second content region identified by at least determining that (i) the additional navigation input matches the first navigation input associated with the first level of the hierarchy and that (ii) the logical flow specifies a display of the second region following the display of the first content region based on the first association;
analyzing parameters of the second content region, parameters of the authored indication of viewability, and parameters of the window on the display screen, the analyzing including determining a second zoom level for displaying the second content region in the window by resizing the second content region to fit the window, wherein the second zoom level is different from the first zoom level; and
initiating the display of the second content region in the window according to the second zoom level.

US Pat. No. 10,216,707

METHODS AND SYSTEMS FOR CALCULATING UNCERTAINTY

Clarkson University, Pot...

1. A computing system for calculating uncertainty without a fatal division-by-zero error or a square-root-of-an-imaginary-number error, the computing system comprising:a memory including computer executable instructions stored therein that are configured to calculate a number result and an associated resultant error;
a user interface device configured for inputting a numeric value and an error value associated with said numeric value;
a processor in communication with said memory and said user interface device, wherein said processor utilizes said computer executable instructions to perform the steps:
a) converting said numeric value and said error value into a trans-imaginary input dual, wherein said trans-imaginary input dual is a hybrid of numeric and geometric information having a real number input component representing said numeric value and a complex number input component representing said error value;
b) performing a dual calculation operation using said trans-imaginary input dual to generate a trans-imaginary output dual having a real number output component representing said number result and a complex number output component representing said resultant error; and
c) rendering said trans-imaginary output dual, wherein said real number output component generates said number result as a real number and said complex number output component generates said associated resultant error as a real number error range,
wherein steps a)-c) avoid the fatal division-by-zero error or the square-root-of-an-imaginary-number error through first converting said numeric value and said error value to said trans-imaginary input dual and then rendering said output dual to generate said number result and said associated resultant error.

US Pat. No. 10,216,705

PERMUTING IN A MATRIX-VECTOR PROCESSOR

Google LLC, Mountain Vie...

1. A circuit comprising:an input register configured to receive an input vector of input elements;
a control register configured to receive a control vector of control elements, wherein each control element of the control vector corresponds to a respective input element of the input vector, and wherein each control element of the control vector specifies a permutation of a corresponding input element of the input vector, the permutation specifying a number of positions to rotate the corresponding input element of the input vector; and
a permute execution circuit configured to generate an output vector of output elements corresponding to a permutation of the input vector, wherein generating each output element of the output vector comprises:
accessing, at a particular position of the input register, a particular input element of the input vector;
accessing, at the control register, a particular control element of the control vector corresponding to the particular input element of the input vector;
selecting a particular position of the output vector based on (i) the particular position of the particular input element in the input register and (ii) a number of positions to rotate the particular element of the input vector specified by the particular control element of the control vector; and
outputting the particular input element of the input vector as an output element at the particular position of the output vector.

US Pat. No. 10,216,701

IMAGE-BASED POINT-SPREAD-FUNCTION MODELLING IN TIME-OF-FLIGHT POSITRON-EMISSION-TOMOGRAPHY ITERATIVE LIST-MODE RECONSTRUCTION

The Regents of the Univer...

1. A method of performing time-of-flight (TOF) list-mode reconstruction of a positron-emission tomography (PET) image, the method comprising:detecting gamma rays by a PET detector;
generating count data based on the detected gamma rays;
determining a TOF geometric projection matrix G including effects of object attenuation;
estimating an image-blurring matrix R in image space;
obtaining a diagonal matrix D that includes TOF-based normalization factors;
calculating a system matrix H as H=DGR; and
reconstructing the PET image from the count data using the calculated system matrix.

US Pat. No. 10,216,698

ANALYSIS DEVICE INCLUDING A MEMS AND/OR NEMS NETWORK

California Institute of T...

1. A device for analyzing a fluid, comprising:only one sensor layer including a plurality of sensors of MEMS or NEMS to generate information associated with a chemical composition of the fluid, each sensor of the plurality of sensors including at least one mobile component that reacts to one or more characteristic stimuli of the fluid, the mobile component being suspended relatively to a fixed component, and each mobile component configured to move independently from mobile components of other sensors of the plurality of sensors;
a processing circuitry layer including processing circuitry configured to process the information transmitted by the sensors, the processing circuitry being electrically connected to the sensors; and
a distribution layer positioned on the only one sensor layer on a side of a face including the sensors, the distribution layer including a distributor to spatially and temporally distribute stimulus or stimuli to the sensors, the distributor comprising a plurality of channels to bring onto each sensor or group of sensors independently the stimulus or the stimuli simultaneously or quasi simultaneously or one channel to bring onto each sensor or group of sensors the stimulus or the stimuli successively, the only one sensor layer, the processing circuitry layer, and the distribution layer being arranged in a stacked fashion with the only one sensor layer being between the distribution layer and the processing circuitry layer.

US Pat. No. 10,216,695

DATABASE SYSTEM FOR TIME SERIES DATA STORAGE, PROCESSING, AND ANALYSIS

PALANTIR TECHNOLOGIES INC...

1. A system comprising:a communications interface configured to receive time series data including measurements captured by one or more data measurement sensors;
one or more storage devices configured to store:
a first database storing a plurality of sets of time series data including at least a first set of time series data received via the communications interface stored on a first storage device and a second set of time series data received via the communications interface stored on a second storage device;
a second database storing metadata related to the plurality of sets of time series data, the metadata including information for locating and accessing particular sets of time series data from the first database and also including at least one of:
indications of types of measurements included in the respective sets of time series data,
indications of locations of data measurement sensors used to generate the measurements included in the sets of time series data,
indications of properties of devices associated with the data measurement sensors, or
timing information indicating when the measurements included in the respective sets of time series data were generated; and
one or more processors configured to:
receive an indication of metadata filter criteria, wherein the metadata filter criteria includes at least one of: a type of measurement, a location of a data measurement sensor, a property of a device, or timing information;
in response to receiving the indication of the metadata filter criteria, access the second database to identify, based on the stored metadata, one or more sets of time series data that satisfy the metadata filter criteria;
transmit an indication of a quantity of sets of time series data included in the one or more sets of time series data satisfying the metadata filter criteria;
receive an instruction including an indication of a computation to perform on the one or more sets of time series data in the first database that satisfy the metadata filter criteria;
access the second database to determine, from the metadata, information for locating and accessing the one or more sets of time series data from the first database;
locate and access, from the first database and using the information for locating and accessing the one or more sets of time series data from the first database, at least a portion of the one or more sets of time series data; and
perform the computation using at least the portion of the one or more sets of time series data accessed from the first database;
whereby the one or more sets of time series data that satisfy the metadata filter criteria are identified via the metadata stored in the second database without accessing each of the plurality of sets of time series data from the first database.

US Pat. No. 10,216,694

GENERIC SCHEDULING

GOOGLE LLC, Mountain Vie...

1. A method for setting a schedule of a crawl of a content from a social network, the method comprising:parsing, by a processor, the content from the social network into a first portion and a second portion, the first portion categorized as a post category, the second portion being categorized as an engagement category, the post category being associated with a content in a post to the social network, the engagement category being associated with a content produced in response to the post;
causing, by the processor, a first thread to obtain a first endpoint object from a data source object, the data source object related to the post to the social network;
causing, by the processor, a second thread to obtain a second endpoint object from an active engagement object, the active engagement object related to the content produced in response to the post;
determining, by the processor whether the social network is a first type of social network or a second type of social network;
updating, by the processor and in response to a determination that the social network is the first type of social network, a data source endpoint record for the first thread with a next fetch time;
updating, by the processor and in response to the determination that the social network is the first type of social network, an active engagement table for the second thread with a value that causes the processor to refrain from fetching the content produced in response to the post until the processor updates the next fetch time in response to a determination that a new content produced in response to the post is available;
rescheduling, by the processor and in response to a determination that the social network is the second type of social network, the crawl of the content from the social network in accordance with a check rate; and
setting, by the processor, the schedule of the crawl of the content from the social network according to a type of the social network, the type being the first type or the second type.

US Pat. No. 10,216,693

COMPUTER WITH HYBRID VON-NEUMANN/DATAFLOW EXECUTION ARCHITECTURE

Wisconsin Alumni Research...

1. A computer with improved function comprising:a general computer processor providing:
(a) a memory interface for exchanging data and instructions with an electronic memory;
(b) an arithmetic logic unit receiving input data and instructions from the memory interface to process the same and to provide output data to the memory interface; and
(c) a program counter identifying instructions for execution by the arithmetic logic unit;
a dataflow computer processor providing:
(a) a memory interface for exchanging data and instructions with electronic memory;
(b) multiple functional units interconnected to receive input data from the memory interface or other functional units and provide output data to the memory interface or other functional units, including interconnections between functional units allowing conditional branches to either of two functional units, wherein the functional units execute in a sequence determined by the availability of data, and
(c) an interconnection control circuit controlling the interconnection of the multiple functional units to exchange data according to the dataflow description; and
a transfer interface operating to transfer the execution of an application program between the general purpose computer processor and the dataflow computer processor:
(a) at a beginning of a set of instructions of the application program identified as executable on the dataflow computer processor, switching execution from the general computer processor to the dataflow computer processor and providing to the dataflow computer processor a dataflow description of the set of instructions; and
(b) at a completion of execution of the set of instructions by the dataflow computer processor, returning execution to the general computer processor.

US Pat. No. 10,216,690

SINGLE-WIRE INTERFACE BUS TRANSCEIVER SYSTEM BASED ON I2C-BUS, AND ASSOCIATED METHOD FOR COMMUNICATION OF SINGLE-WIRE INTERFACE BUS

NXP B.V., Eindhoven (NL)...

1. A single-wire interface bus transceiver system comprising:an I2C master, a master transceiver, a signal wire, a slave transceiver and an I2C slave, wherein:
the master transceiver is adapted to encode master data SDA and master clock SCL received from the I2C master using Manchester code, generate a Manchester coded master single wire signal and transfer the Manchester encoded master data SDA and master clock SCL of the single wire signal to the slave transceiver through the signal wire;
the master transceiver is also adapted to decode Manchester-encoded slave signal received from the signal wire and transfer the decoded slave data to I2C master;
the slave transceiver is adapted to encode slave data received from I2C slave using Manchester code, generate slave single wire signal and transfer it to the master transceiver through the signal wire; and
the slave transceiver is also adapted to decode Manchester-encoded master signal received from the signal wire, generate the recovered master clock and transfer the decoded master data and recovered master clock to I2C slave.

US Pat. No. 10,216,689

COORDINATING MULTIPLE REAL-TIME FUNCTIONS OF A PERIPHERAL OVER A SYNCHRONOUS SERIAL BUS

Intel Corporation, Santa...

1. A system controller, comprising:a microcontroller to generate a first message, the first message to comprise a flag to indicate a type of a first action, and a payload including an action code for the first action, with a first deadline time when the first action is of a timing-critical type, or without a deadline time when the first action is of a timing-noncritical type, the first deadline time is expressed as a system time, and wherein when the first action is of a timing-critical type, the first action is to be performed based on the first deadline time by a peripheral device coupled with the microcontroller via a serial bus; and
a time protocol engine coupled to the microcontroller to convert the first deadline time from the system time to a first number of bus-clock cycles.

US Pat. No. 10,216,687

SUBSCRIBER STATION FOR A BUS SYSTEM, AND METHOD FOR INCREASING THE DATA RATE OF A BUS SYSTEM

Robert Bosch GmbH, Stutt...

1. A subscriber station, the subscriber station comprising:a transmit/receive device configured to be directly connected to a communication bus for communication with a plurality of additional subscriber stations connected directly to the communication bus, the transmit/receive device being configured to:
receive a message transmitted from one subscriber station in the plurality of additional subscriber stations;
identify a bit pattern corresponding to an identifier contained in the message;
hide the message in response to the bit pattern not corresponding to a predetermined bit pattern associated with an identifier of the subscriber station;
check the message for errors based on a cyclical redundancy check (CRC) in response to the bit pattern corresponding to the predetermined bit pattern associated with the identifier of the subscriber station: and
transmit an error message through the communication bus to the plurality of additional subscriber stations indicating an error in response to the message containing an error.

US Pat. No. 10,216,686

METHOD AND APPARATUS FOR FULL DUPLEX TRANSMISSION BETWEEN ELECTRONIC DEVICES

Samsung Electronics Co., ...

1. An electronic device, comprising:an interface for supporting a connection with another electronic device;
a plurality of communication paths operating according to different standards; and
a controller configured to:
control first data communication for first data based on a first communication path according to a first standard between electronic devices connected through the interface,
control second data communication for second data based on a second communication path according to a second standard during the first data communication,
compare first data information on the first data and second data information on the second data, and
control full duplex communication for the first data and the second data based on a result of the comparison.

US Pat. No. 10,216,684

OPERATING SYSTEM CARD FOR MULTIPLE DEVICES

Google LLC, Mountain Vie...

1. A system comprising:a main printed circuit board (PCB) card configured to be interchangeably interfaced with multiple types of shell computing devices, wherein a width of the main PCB card is less than forty millimeters, the main PCB card including:
a card connector;
a System on a Chip (SoC) configured to run an operating system on the main PCB card; and
an antenna; and
a shell computing device of the multiple types of shell computing devices, the shell computing device included in a dashboard of an automobile, the shell computing device including:
a slot configured to accommodate the main PCB card allowing the main PCB card to be included inside of the shell computing device; and
a mating connector, the card connector configured to be plugged into the mating connector.

US Pat. No. 10,216,683

MULTIMEDIA COMMUNICATION APPARATUS AND CONTROL METHOD FOR MULTIMEDIA DATA TRANSMISSION OVER STANDARD CABLE

MSTAR SEMICONDUCTOR, INC....

1. A multimedia communication apparatus, suitable for a first multimedia apparatus, electrically connectable to a standard connector, the standard connector adapted to be non-reversibly or reversibly connected to a plug of a standard cable and comprising a plurality of pins, the pins comprising a plurality of differential signal pins, a power pin, a first polarity pin, a second polarity pin, a first data pin and a ground pin, the differential signal pins serving as a plurality of multimedia channels, the power pin serving as a power line, the multimedia communication apparatus comprising:a control logic, checking a first connection polarity of the standard cable through the first polarity pin and the second polarity pin to identify whether the standard cable is non-reversibly or reversibly connected to the standard cable; and
a multimedia signal processor, electrically connectable to the standard connector, transmitting or receiving multimedia data to/from a second multimedia apparatus through the multimedia channels, and power handshaking or exchanging information with the second multimedia apparatus through the first data pin, wherein the information is for controlling a multiplexer to switch the multimedia channels.

US Pat. No. 10,216,681

SYSTEM AND METHOD FOR MANAGING WORKLOADS AND HOT-SWAPPING A CO-PROCESSOR OF AN INFORMATION HANDLING SYSTEM

Dell Products, LP, Round...

1. An information handling system, comprising:a host processing complex to instantiate a hosted processing environment and including a first general-purpose processing unit (GPU) and a GPU hot-plug module that enables a hot-plug operation to replace the first GPU with a second GPU while power is provided to the host processing complex, wherein the hosted processing environment includes a plurality of workloads that can be instantiated on the first GPU, the plurality of workloads including a first workload and a second workload, and wherein the hosted processing environment instantiates the first workload on the first GPU; and
a wireless management system that operates out of band from the hosted processing environment, that directs the hosted processing environment to halt the first workload, and that directs the GPU hot-plug module to perform the hot-plug operation, and directs the hosted processing environment to launch the second workload on the second GPU after the GPU hot-plug module performs the hot-plug operation;
wherein the hosted processing environment provides a list of the workloads to the wireless management system.