US Pat. No. 10,248,928

SYSTEMS AND METHODS FOR MANAGING AIRPORT LOUNGES

LoungeBuddy, Inc., San F...

1. A system for dynamically managing airport lounge inventory, comprising:an application server comprising:
a processor;
a database, the database comprising:
a plurality of access rules corresponding to access to a corresponding plurality of associated airport lounges, and
an inventory corresponding to an available capacity in each of the plurality of associated airport lounges; and
memory in communication with the processor, the memory storing instructions which are executed by the processor for:
receiving an access request from an associated airport lounge application resident on an associated client device;
receiving at least one access item associated with the access request;
retrieving the plurality of access rules from the database;
determining whether at least one of the plurality of airport lounges is accessible for a user of the associated client device in accordance with the received access request and the at least one access item, and the retrieved access rules;
communicating a response to the access request based upon the accessibility determination;
tracking a location of each of a plurality of associated client devices within at least one of the plurality of airport lounges using local positioning data of the associated client device collected by the application server;
updating the inventory associated with the at least one airport lounge responsive to the tracked locations; and
dynamically updating the at least one set of access rules corresponding to the at least one airport lounge responsive to the updated inventory of the corresponding at least one associated airport lounge;
wherein the memory further stores instructions which are executed by the processor for:
determining, in accordance with the access rules and the at least one access item, a guest access status associated with the user of the associated client device;
receiving, from the associated client device, instructions to transfer the quest access status to a second client device;
determining relative positions of the associated client device and the second client device;
generating routing information specific to each client device, the routing information corresponding to a route to a single physical location;
tracking each client device on route the single physical location; and
updating the route specific to each client device during travel to the single physical location.

US Pat. No. 10,248,927

MULTIFUNCTIONAL SELF-SERVICE SHIPPING AND MAIL PROCESSING SYSTEM

1. A method for finalizing a package including one or more objects prior to its tendering to a package shipping service, the method comprising the steps of:providing a package shipping processing system including a kiosk housing, a computer terminal including a display device, an input device, a data processor, and network data communications module, the computer terminal being disposed in the kiosk housing with the display device and the input device being accessible, the package shipping processing system also including a weighing scale including a platform on which one or more objects for shipment are placed, the weighing scale being in communication with the computer terminal with a measured weight of the one or more objects for shipment placed on the platform being reported to the computer terminal, and an imaging device being disposed in proximity to the weighing scale and positioned to have a field of view extending beyond the platform of the weighing scale, the imaging device being in communication with the computer terminal with captured image data of the object placed on the platform being transmitted to the computer terminal, and wherein the data processor stores a fragility index which includes a listing of a plurality of objects and stores a plurality of insulation densities corresponding to the listing of the plurality of objects;
receiving, on the data processor, weight data from the weighing scale on which the one or more objects for shipment are placed;
capturing an image of the one or more objects for shipment from a fixed position with the imaging device;
receiving depth data for a plurality of locations along the one or more objects for shipment, the plurality of locations being matched to the captured image;
transmitting the image of the one or more objects for shipment and the depth data to the data processor;
generating, on the data processor, dimensional parameters of the one or more objects for shipment along a plurality of axes from the image of the one or more objects for shipment based on the received depth data; and
generating, on the data processor, a set of packaging parameters based on the generated dimensional parameters and the weight data;
inputting, into the input device, a designation of the one or more objects for shipment which is within the data processor's listing of objects;
selecting, by the data processor, an insulation density based upon the fragility index and the designation of the one or more objects for shipment input into the input device; and
packaging the one or more objects for shipment within an insulation filled package wherein the package was selected in accordance with the set of packaging parameters and the insulation was selected in accordance with the selected insulation density.

US Pat. No. 10,248,925

SYSTEMS AND METHODS FOR COMPRESSING SHORTEST PATH MATRICES FOR DELIVERY ROUTE OPTIMIZATION

WALMART APOLLO, LLC, Ben...

1. A system comprising:one or more processors; and
one or more non-transitory storage devices storing computing instructions configured to run on the one or more processors and perform acts of:
preparing an initial shortest path matrix comprising a plurality of elements, an initial number of a plurality of map intersection nodes, and a plurality of full shortest paths between an origination map intersection node and a destination map intersection node, wherein each element of the plurality of elements comprises a full shortest path of the plurality of full shortest paths, and each full shortest path of the plurality of full shortest paths comprises one or more map intersection nodes of the plurality of map intersection nodes;
obtaining a first set of compression rules for compressing, using the one or more processors, the initial shortest path matrix by reducing the plurality of map intersection nodes in the initial shortest path matrix;
using the first set of compression rules and the one or more processors to compress the initial shortest path matrix to form a compressed shortest path matrix comprising a compressed number of the plurality of map intersection nodes that is fewer than the initial number of the plurality of map intersection nodes;
receiving a first delivery order for delivery of a first order at a first location; and
determining a shortest path delivery route for the first delivery order at the first location using the compressed shortest path matrix,
wherein:
using the first set of compression rules and the one or more processors to compress the initial shortest path matrix to form the compressed shortest path matrix comprises using the first set of compression rules and the one or more processors to compress the initial shortest path matrix to form a first compressed shortest path matrix by replacing the full shortest path between the origination map intersection node and the destination map intersection node in each element of the plurality of elements with a single map intersection node of the plurality of map intersection nodes;
the compressed number of the plurality of map intersection nodes that is fewer than the initial number of the plurality of map intersection nodes comprises a first compressed number of the plurality of map intersection nodes that is fewer than the initial number of the plurality of map intersection nodes;
the single map intersection node for a respective element of the plurality of elements comprises a next map intersection node in the full shortest path of the respective element of the plurality of elements; and
determining the shortest path delivery route for the first delivery order at the first location using the compressed shortest path matrix comprises determining the shortest path delivery route using the first compressed shortest path matrix.

US Pat. No. 10,248,923

BUSINESS PROCESS MODELING BASED ON NETWORK TRAFFIC

Cisco Technology, Inc., ...

1. A method comprising:receiving an input of an identifier, wherein the identifier corresponds to a node in a network;
recursively tracing data packets in the network, wherein the identifier is utilized as a seed for the tracing and serves as a beginning of a list of identifiers that grows based on the tracing;
receiving an update to the list of identifiers, the update containing additional identifiers added to the list of identifiers;
reprogramming at least one network switch based on receipt of the update; and
generating an information model of a business process based on the data packets.

US Pat. No. 10,248,922

MANAGING NETWORK PATHS WITHIN A NETWORK OF INVENTORY SPACES

Amazon Technologies, Inc....

1. A computing system comprising:a production system; and
a vehicle management system communicatively coupled with the production system over a data interface and comprising:
a processor; and
a memory comprising instructions that, when executed by the processor, cause the vehicle management system to at least:
receive, from the production system over the data interface, data about consumer demand for items available based at least in part on a network connecting storage buildings via transportation paths and transportation vehicles usable to transport the items between the storage buildings;
access historical data associated with the consumer demand;
generate unconstrained fulfillment options to fulfill the consumer demand based at least in part on the historical data and the network, a fulfillment option comprising a type and a schedule of a transportation vehicle to transport an item from a first storage building to a second storage building based at least in part on a transportation path, the consumer demand to be fulfilled by the production system based at least in part on the item being transported to the second storage building;
evaluate a performance of the network associated with utilizing a subset of the fulfillment options to fulfill the consumer demand, the subset of the fulfillment options comprising the fulfillment option and utilizing a subset of the transportation paths and transportation vehicles, the performance evaluated based at least in part on constraints associated with the network and variables associated with the subset of the transportation paths and transportation vehicles;
select the subset of the fulfillment options to fulfill the consumer demand based at least in part on a comparison of the performance to a second performance of the network indicating an improvement to a utilization of the network, the second performance associated with utilizing a second subset of the fulfillment options to fulfill the consumer demand by the production system, the second performance determined based at least in part on production data that is received from the production system over the data interface and that comprises scheduled network paths and transportation vehicles; and
send, to the production system over the data interface, a recommendation that identifies the subset of the fulfillment options, wherein the production system a deployment system based at least in part on the recommendation by at least changing the scheduled network paths and transportation vehicles and causing the deployment system to deploy the transportation vehicle to transport the item from the first storage building to the second storage building according to the schedule.

US Pat. No. 10,248,920

AUTOMATIC WELLBORE ACTIVITY SCHEDULE ADJUSTMENT METHOD AND SYSTEM

Schlumberger Technology C...

1. A method for controlling wellbore construction activities, comprising:entering a well plan into a computer, the well plan comprising estimated start and stop times for a plurality of activities in a predetermined sequence wherein the activities comprise at least one of tripping in of a drill string and tripping out of a drill string;
measuring progress of selected ones of the plurality of activities during their performance;
in the computer, recalculating an expected ending time of at least one of the plurality of activities based on progress thereof during the at least one of the plurality of activities, wherein the recalculating an expected ending time comprises using a calculated maximum safe pipe movement speed to an end of at least one of the at least one of the plurality of activities, and wherein the calculated maximum safe pipe movement speed is for tripping in of a drill string or tripping out of a drill string;
in the computer, recalculating expected start and stop times for each activity subsequent to the activity in progress based on the recalculated expected ending time wherein, for tripping in of a drill string, the recalculating comprises accounting for surge, and wherein, for tripping out of a drill string, the recalculating comprises accounting for swab; and
controlling at least one of the subsequent activities according to at least one of the recalculated start and stop times.

US Pat. No. 10,248,919

TASK ASSIGNMENT USING MACHINE LEARNING AND INFORMATION RETRIEVAL

1. A method of assigning a task to a developer, comprising:partitioning a list of developers into a plurality of developer clusters, a developer being included in a developer cluster based on a first set of attributes indicative of the developer's experience with software development, and the first set of attributes including at least one of the respective developer's commits, number of commits, or comment on previous commits;
for a plurality of tasks:
identifying a set of developers assigned to the respective task;
identifying a developer cluster including a greater number of developers from the respective set of developers than another developer cluster of the plurality of developer clusters; and
classifying the respective task as belonging to the respective developer cluster;
comparing one or more attributes of one or more classified tasks to a second set of attributes of a new task;
selecting a classified task having a greater number of attributes that match the second set of attributes than another classified task, the classified task belonging to a first developer cluster; and
assigning the new task to one or more developers included in the first developer cluster.

US Pat. No. 10,248,918

BALANCING A WORKLOAD BASED ON COMMITMENTS TO PROJECTS

INTERNATIONAL BUSINESS MA...

1. A method for balancing a workload in responding to incoming messages regarding a specific project with which a group of multiple users is associated, the method comprising, with a server having a network interface for connecting, via a computer network, to an electronic collaboration system that supports a distributed population of collaborating users, performing all of:monitoring messages in the collaboration system;
selecting a number of the users associated with the specific project in the collaboration system to form the group of multiple users, wherein the group comprises at least a first user;
analyzing data associated with the messages to determine which of the messages relate to the specific project;
measuring an amount of time taken by the first user to process a message related to the specific project;
determining a commitment level for each user in the group of multiple users associated with the specific project;
determining a commitment level for the first user based on the amount of time taken by the first user to process the message related to the specific project; and
reassigning a message related to the specific project in the collaboration system from the first user to a different user in the group based on a comparison of the commitment levels of the users in the group of users associated with the specific project to rebalance the workload in responding to incoming messages among the group of users.

US Pat. No. 10,248,915

RISK PROFILING FOR ENTERPRISE RISK MANAGEMENT

INTERNATIONAL BUSINESS MA...

1. A method comprising:by an enterprise risk management (ERM) processor(s) set:
instantiating, within a memory from a risk profile class definition, at least one risk profile instance that compartmentalizes real-time authentication services security risk metrics and real-time user access compliance risk metrics associated with operational real-time authentication services security risk mitigation and real-time user access compliance risk mitigation performed by at least one control instance, where the at least one control instance is instantiated from a control class definition within a policy instance instantiated from a policy hierarchy class definition, where the policy hierarchy class definition associates as subclasses the control class definition and the risk profile class definition that each define accessible attributes that store real-time data values and define executable code segments that may be invoked within the respective instantiated at least one control instance and the instantiated at least one risk profile instance;
updating, by invocation of an object public-interface executable code segment of the at least one risk profile instance, a real-time data value of a risk attribute automatically within the at least one risk profile instance in response to a real-time event associated with the at least one control instance, where the risk attribute represents one or more of the real-time authentication services security risk mitigation and the real-time user access compliance risk mitigation performed by the at least one control instance;
performing real-time control of policy enforcement actions within an ERM system related to network security, where control of policy enforcement actions comprises regulating user operations within a network according to a defined security policy, and where real-time specifies a time frame of sufficiently short duration to perform computational policy decisions contemporaneously with detection of the regulated user operations;
performing, simultaneously within the time frame of performing the real-time control of policy enforcement actions, real-time self-diagnosis of functional code improvements for the ERM system;
where performing the real-time self-diagnosis of the functional code improvements for the ERM system comprises using results of the real-time control of policy enforcement actions to identify network security vulnerabilities capable of being mitigated with code modifications to the control class definition, and further comprises:
determining real-time execution effectiveness of the at least one control instance at operationally mitigating the respective real-time authentication services security risk(s) and the user access compliance risk(s) represented within the updated real-time data value of the risk attribute; and
identifying, using real-time class design feedback from the at least one risk profile instance within the ERM system and the determined real-time execution effectiveness of the at least one control instance, at least one code modification to the control class definition that adjusts one or more real-time operational control aspects of the at least one control instance and improves real-time execution effectiveness and operational capabilities of a new control instance instantiated from an updated control class definition at operationally mitigating the respective real-time authentication services security risk(s) and user access compliance risk(s) within the ERM system; and
the method further comprising performing an automated execution of a test procedure against the new control instance instantiated from the updated control class definition, with a successful test result confirming a functional improvement to the real-time execution effectiveness and operational capabilities of the new control instance.

US Pat. No. 10,248,914

SUSTAINING A FLEET OF CONFIGURATION-CONTROLLED ASSETS

The Boeing Company, Chic...

1. A computer-implemented method for sustaining a fleet of configuration-controlled assets, the method implemented using a sustainment data system (SDS) server including a processor in communication with a memory, the method comprising:integrating a plurality of previously separate computer applications each including specific reusable business transactions associated with managing a fleet of assets, wherein functional capabilities of individual computer applications of the plurality of previously separate computer applications are defined by one or more of the specific reusable business transactions executable therein, wherein the plurality of previously separate computer applications are separate from the assets of the fleet of assets, and wherein a first computer application of the plurality of previously separate computer applications communicates via a first communication format to a first gateway, where the first gateway communicates with the SDS server via a second communication format;
receiving, by the SDS server from an engineering data system, technical data associated with one asset of the fleet of assets, wherein the engineering data system is separate from the one asset of the fleet of assets;
translating, by the SDS server, the received technical data from a third communication format associated with the engineering data system to the second communication format associated with the SDS server;
transmitting, from the SDS server to the first gateway associated with the first computer application, the translated technical data;
converting, by the first gateway, the translated technical data from the second communication format to the first communication format;
transmitting, from the first gateway to the first computer application, the converted technical data, wherein the first computer application is configured to utilize at least one of the specific reusable business transactions, wherein the first computer application is further configured to install the converted technical data, and wherein the first computer application is separate from one asset of the fleet of assets;
receiving, by the SDS server from the at least one asset, sensor data associated with a first mission completed by the at least one asset;
determining, by the SDS server, a work order and a schedule to perform the work order, based on the received sensor data for the at least one asset, an availability of a trained resource to perform the work order, and the technical data;
transmitting, from the SDS server to a computer system associated with a user, the work order and the schedule for display to the user;
planning, by the SDS server, using one or more of the previously separate computer applications, a second mission for the at least one asset; and
transmitting, from the SDS server to the computer system associated with the user, the second mission for display to the user.

US Pat. No. 10,248,912

SYSTEMS AND METHODS FOR DISPLAYING TRAVEL ITINERARIES

GOOGLE LLC, Mountain Vie...

1. A method to display travel itineraries via a computer network, comprising:receiving, by an itinerary engine executing on one or more processors of a data processing system, a search request for a travel itinerary;
identifying, by the itinerary engine using a database storing travel information, a candidate travel itinerary responsive to the search request;
generating, by the itinerary engine, a first coordinate on a first axis of a multidimensional graph corresponding to a departure time of the candidate travel itinerary;
generating, by the itinerary engine, a second coordinate on a second axis of the multidimensional graph corresponding to an arrival time of the candidate travel itinerary, wherein the second axis is perpendicular to the first axis;
determining, by the itinerary engine, a location on the multidimensional graph based on the first coordinate and the second coordinate;
indicating, in the multidimensional graph, a duration slice comprising one or more duration time lines that extend diagonally with respect to the first axis and the second axis, each duration time line indicating a flight duration corresponding to any location on the multidimensional graph falling along the duration time line;
creating, by the itinerary engine, a data structure in memory for the candidate travel itinerary, the data structure indicating the location on the multidimensional graph that indicates the duration of the candidate travel itinerary in the duration slice;
allocating, by the itinerary engine, an icon to the data structure indicating the departure time, the arrival time, and a price of the candidate travel itinerary;
setting, by the itinerary engine, an attribute of the icon of the candidate travel itinerary based on the price of the candidate travel itinerary;
transmitting, by the data processing system to a display device via the computer network, the icon allocated to the data structure and instructions to display the icon with the multidimensional graph comprising the duration slice, wherein the display device displays the icon with the multidimensional graph;
receiving, by the data processing system from the display device, instructions to rotate the multidimensional graph comprising the icon;
in response to receiving the instructions to rotate the multidimensional graph comprising the icon, rotating the multidimensional graph comprising the icon so that the duration slice is horizontal with respect to the first axis; and
transmitting, by the data processing system to the display device via the computer network, the rotated multidimensional graph comprising the icon and instructions to display the rotated multidimensional graph comprising the icon; and
displaying, by the display device, the rotated multidimensional graph comprising the icon.

US Pat. No. 10,248,910

DETECTION MITIGATION AND REMEDIATION OF CYBERATTACKS EMPLOYING AN ADVANCED CYBER-DECISION PLATFORM

Fractal Industries, Inc.,...

1. A system for detection and mitigation of cyberattacks employing an advanced cyber decision platform comprising:a time series data retrieval and storage module stored in a memory of and operating on a processor of a computing device;
a directed computational graph analysis module stored in a memory of and operating on a processor of a computing device;
an action outcome simulation module stored in a memory of and operating on a processor of a computing device; and
an observation and state estimation module stored in a memory of and operating on a processor of a computing device;
wherein the time series data retrieval and storage module: monitors cybersecurity-related data from a plurality of sources; continuously monitors network traffic in real-time on at least one client network; and stores retrieved and monitored data;
wherein the directed computational graph analysis module: retrieves a plurality of data from the time series data retrieval and storage module; analyzes at least a portion of retrieved data for baseline pattern determination; analyzes at least a portion of retrieved data for predetermined anomalous occurrences; performs real-time analysis of the network traffic data collected during the real-time traffic monitoring; generates alerts based on the real-time analysis, and provides relevant data and metadata to the action outcome simulation module;
wherein the action outcome simulation module: receives data and metadata for predictive simulation analysis from the directed computational graph analysis module; performs predictive simulation transformations on data provided by other modules of the advanced cyber decision platform; and provides results of predictive simulation analysis to predetermined modules of advanced cyber decision platform;
wherein the observation and state estimation module formats data received from other modules of the advanced cyber decision platform in ways predesigned to maximize conveyance of included information and data;
wherein at least a portion of the data retrieved by the time series data retrieval and storage module is cybersecurity intelligence data from a plurality of expert sources;
wherein at least a portion of simulations run by the action outcome simulation module comprise predictive discovery of resident network infrastructure vulnerabilities to a plurality of cyberexploits and provide at least one resultant correction recommendation;
wherein at least a portion of simulations run by the action outcome simulation module comprise network traffic sample data from a probable ongoing cyberattack to predict a timeline of progression of the probable ongoing cyberattack and at least one recommendation predicted mitigate effects of the probable ongoing cyberattack;
wherein at least a portion of output formatted by the observation and state estimation module is directed to indicate a focused actionable response from a subset of the set of those participating in cybersecurity response; and
wherein at least a portion of output formatted by the observation and state estimation module provides a specifically segmented subset of the available information for delivery to one or more cyberattack response groups having differing roles in the mitigation and recovery process.

US Pat. No. 10,248,908

ALTERNATIVE LOOP LIMITS FOR ACCESSING DATA IN MULTI-DIMENSIONAL TENSORS

Google LLC, Mountain Vie...

1. A method performed by a computing system for accessing an N-dimensional tensor, comprising:determining that a number of tensor elements of a particular dimension of the N-dimensional tensor is not an exact multiple of a number of individual computing units of the computing system that will be used to determine memory addresses for the tensor elements and in response:
generating a first loop for controlling a number of iterations of a second loop used to traverse the particular dimension;
determining a first loop bound for the second loop and an alternative loop bound for the second loop based on the number of tensor elements of the particular dimension and the number of individual computing units of the computing system, wherein the first loop bound controls a number of iterations of the second loop for one or more first iterations of the first loop and the alternative loop bound controls the number of iterations of the second loop for a final iteration of the first loop such that the number of iterations of the second loop does not exceed a number of tensor elements for which a memory address will be determined during the final iteration of the first loop; and
generating code that has the second loop nested within the first loop;
executing the code to access the N-dimensional tensor, including:
for each of one or more first iterations of the first loop, performing iterations of the second loop that is nested within the first loop until the first loop bound for the second loop is reached, wherein:
for each iteration of the second loop, a computing unit of a plurality of computing units determines a memory address for a tensor element of the N-dimensional tensor, each tensor element including a data value;
after a penultimate iteration of the first loop has completed, performing one or more iterations of the second loop for a final iteration of the first loop until the alternative loop bound is reached, wherein the alternative loop bound is less than the first loop bound; and
outputting data indicating each determined memory address to a processing unit that accesses tensor elements of the N-dimensional tensor using each determined memory address.

US Pat. No. 10,248,906

NEUROMORPHIC CIRCUITS FOR STORING AND GENERATING CONNECTIVITY INFORMATION

Intel Corporation, Santa...

1. A neuromorphic computing system comprising:a synapse core; and
a pre-synaptic neuron, a first post-synaptic neuron, and a second post-synaptic neuron coupled to the synaptic core,
wherein the synapse core is to:
receive a request from the pre-synaptic neuron, and
generate, in response to the request, a first address of the first post-synaptic neuron and a second address of the second post-synaptic neuron, wherein the synapse core is to generate the first address based on a seed number, and
wherein the first address and the second address are not stored in the synapse core prior to receiving the request.

US Pat. No. 10,248,905

SYSTEM FOR TRACKING STUDENTS

1. A system for tracking one or more students throughout a dismissal process comprising:a barcode being assigned to a student;
at least one identification badge having the bar code located thereon and a clip for attaching the at least one identification badge to an object carried by the student;
said at least one identification badge being color coded with a specific color indicating an authorized destination at which the student carrying the at least one identification badge should arrive;
a central online database in communication via a secure server with at least one electronic device possessed by school personnel;
said central online database in communication via the secure server with at least one electronic device possessed by an after school care provider;
said central online database in communication via the secure server with at least one electronic device possessed by a guardian;
the after school care provider being saved as the authorized destination in the central online database;
said bar code being scanned by the at least one electronic device in possession of the school personnel during dismissal of the student from the school to verify that the at least one identification badge provided to the student is heading toward the authorized destination;
said bar code being scanned by the at least one electronic device in possession of the after school care provider;
a determination being made that the at least one identification badge is at the authorized destination;
a time-stamp being created and saved in the central online database; and
said time stamp being sent to the at least one electronic device possessed by the guardian.

US Pat. No. 10,248,902

COUPLING FRAMES FOR RFID DEVICES

1. An RFID device comprising:a transponder chip module (TCM) comprising an RFID chip (IC) and a module antenna (MA); and
a coupling frame (CF) comprising a conductive surface and having an electrical discontinuity comprising a slit (S) or non-conductive stripe (NCS) extending through the surface from an outer edge thereof to an inner position thereof, wherein the coupling frame is disposed so that the slit (S) or non-conductive stripe (NCS) overlaps at least a portion of the module antenna (MA), further comprising a capacitor connected across the slit (S).

US Pat. No. 10,248,901

TWO-PIECE TRANSACTION CARD CONSTRUCTION

Capital One Services, LLC...

1. A transaction card, comprising:a card frame, including:
a first card component;
a second card component, wherein the second card component has a cavity formed therein and is attached to the first card component by an adhesive layer; and
a transaction component disposed between the first card component and the second card component, wherein:
the first card component is separate from the second card component, and the first card component is at least partially insertable into the cavity,
a thickness of the first card component is less than a depth of the cavity such that, when the first card component is inserted into the cavity, a top surface of the first card component sits below flush with a top surface of the second card component, and
a gap is formed around a perimeter of the first card component between a side surface of the first card component and an inner side surface of the cavity.

US Pat. No. 10,248,900

SENSOR ARRAY SYSTEM SELECTIVELY CONFIGURABLE AS A FINGERPRINT SENSOR OR DATA ENTRY DEVICE

IDEX ASA, Fornebu (NO)

1. A system for enrolling a verification template of fingerprint data in a fingerprint-enabled smart card, the system comprising:a non-data-transmitting power source configured to be coupled to the smart card to transmit power to the smart card without transmitting data to or from the smart card, wherein the non-data-transmitting power source comprises a receptacle configured to receive an end of the smart card removably inserted into the receptacle and a power element supported on the receptacle;
a fingerprint sensor comprising one or more sensor elements and associated circuitry for controlling operation of the one or more sensor elements and for processing signals from the one or more sensor elements,
wherein the fingerprint sensor is configured to be installed in the smart card whereby power is transmitted to the fingerprint sensor when the non-data-transmitting power source is coupled to the smart card,
wherein the fingerprint sensor is configured to operate in an enrollment mode when power is transmitted to the fingerprint sensor by the non-data-transmitting power source, and
wherein, when operating in the enrollment mode, the fingerprint sensor is configured to derive and store a verification template of fingerprint data from fingerprint data generated by the one or more sensor elements; and
a finger guide that is removably attachable to the smart card and comprises two or more channels, wherein each channel is configured to position a finger placed thereon to contact the fingerprint sensor at a different orientation.

US Pat. No. 10,248,898

PASSIVE RFID DOOR LOCK

Spectrum Brands, Inc., M...

1. A system comprising:a locking device movable between a locked position and an unlocked position;
a passive radio frequency identification (“RFID”) tag affixed to a housing of the locking device; and
a mobile device comprising a reader, the mobile device configured to:
scan the passive RFID tag;
automatically transmit one or more notifications; and
update a cloud service;
wherein the one or more notifications are automatically transmitted in response to the passive RFID tag being recognized by a software application of the mobile device; and
wherein the cloud service issues one or more additional commands based on the scan of the RFID tag, the one or more additional commands including a command issued from the cloud service to a home automation controller.

US Pat. No. 10,248,897

CONFIGURING A SET OF APPLETS ON A BATTERY-LESS TRANSACTION CARD

Capital One Services, LLC...

1. A transaction card, comprising:one or more memories; and
one or more processors, communicatively coupled to the one or more memories, configured to:
establish a communication with a device;
determine, based on location information associated with the transaction card, that a particular applet is not configured on the transaction card,
the particular applet being associated with completing a transaction with the device;
request the particular applet from another device;
receive, based on the request, the particular applet; and
complete, based on receiving the particular applet, the transaction.

US Pat. No. 10,248,896

DISTRIBUTED CAMERA MODULES SERIALLY COUPLED TO COMMON PREPROCESSING RESOURCES FACILITATING CONFIGURABLE OPTICAL CODE READER PLATFORM FOR APPLICATION-SPECIFIC SCALABILITY

Datalogic USA, Inc., Eug...

1. An optical code reader, comprising:centralized decoding circuitry communicatively couplable to an expandable set of camera modules placed at spaced-apart locations of the optical code reader, a number of and locations for members of the expandable set of camera modules establishing application-specific and scalable read zone coverage formed from multiple fields of view of the members, the centralized decoding circuitry having multiple serial interfaces and a preprocessor-and-processor pair;
a first camera module of the expandable set of camera modules having a first imager and a first serial interface for communicating first image data generated by the first imager according to a first data rate, the first serial interface being integral to the first imager;
a second camera module of the expandable set of camera modules, spaced apart from the first camera module, having a second imager and a second serial interface for communicating second image data generated by the second imager according to the first data rate, the second serial interface being integral to the second imager;
the preprocessor-and-processor pair including a preprocessor providing a serial-to-parallel multiplexer of the pair, a processor providing an optical code decoder of the pair, a first set of serial interfaces of the serial-to-parallel multiplexer, and a second set of parallel interfaces;
the first set of serial interfaces including third and fourth serial interfaces, the third serial interface serially couplable through a first corresponding serial cable to the first serial interface of the first camera module, and the fourth serial interface serially couplable through a second corresponding serial cable to the second serial interface of the second camera module; and
the second set of parallel interfaces including a first parallel interface of the serial-to-parallel multiplexer and a second parallel interface of the optical code decoder, the first and second parallel interfaces communicatively coupled to each other for communicating, at a second data rate different from the first data rate, multiplexed image data generated from the first and second image data by the serial-to-parallel multiplexer for conveying the multiplexed image data to the optical code decoder and thereby facilitating an attempt of the optical code decoder to decode an optical code borne by an item present within the read zone coverage and represented in one or both of the first and second image data.

US Pat. No. 10,248,894

RASTER PIXEL OBJECT IDENTIFICATION MECHANISM

Ricoh Company, Ltd., Tok...

1. A non-transitory machine-readable medium including data that, when accessed by a machine, causes the machine to perform operations comprising:receiving print job data;
performing a rasterization to transform the print job data into a sheetside bitmap having raster bit plane data for each of a plurality of colorants of a device color space, including,
identifying a colorant object type for each colorant of the plurality of colorants corresponding to a pixel, wherein a number of the identified colorant object types is greater than one;
generating object identification (ID) data for the pixel based on a first of the identified colorant object types; and
storing the object ID data in a common buffer;
performing post rasterization processing on the raster bit plane data for each of the plurality of colorants of the pixel using the object ID data; and
transmitting the sheetside bitmap to be printed by a printer.

US Pat. No. 10,248,893

PRINT CONTROL DEVICE FOR TRACKING PRINTING INFORMATION AND METHOD FOR PERFORMING THE SAME

Seiko Epson Corporation, ...

1. A print control device, comprising:a processor configured to acquire print image data from a plurality of storage devices according to a print request and to cause a printer which performs printing based on the print image data to perform the printing,
wherein the processor
acquires operation status information of the storage device storing the print image data, attribute information of the print image data stored in the storage device, and access success/failure information,
enables the operation status information, the attribute information, and a success ratio of access per the storage device based on the access success/failure information to be displayed on a display, and
if one or more pieces of print image data cannot be acquired, displays a choice of whether to perform the printing while excluding the one or more pieces of print image data that cannot be acquired.

US Pat. No. 10,248,892

WEB PROCESSING SYSTEM AND METHOD FOR PROCESSING A BASE WEB

TEXTILMA AG, Stansstaad ...

1. A radio-frequency identification (RFID) label processing system for a base web, the system comprising:a conveyor device configured to feed a base web along a predetermined conveyor path, the base web comprising a sequence of processing segments, each processing segment forming an RFID label;
at least two processing modules arranged adjacent to the conveyor path, the processing modules being spaced apart by a variable distance;
at least one sensor module configured to determine the position of the processing segments on the base web along the predetermined conveyor path and to output a segment position signal; and
a positioning module coupled to at least one of the processing modules and the sensor module, the positioning module being configured to displace the at least one of the processing modules along the predetermined conveyor path depending on the value of the segment position signal.

US Pat. No. 10,248,891

IMAGE PREDICTION

1. A method comprising:receiving, by an image prediction system comprising a processor, a training data set comprising a plurality of training images;
defining, by the image prediction system, N-dimensional feature vectors corresponding to the plurality of training images in the training data set;
parameterizing, by the image prediction system, the N-dimensional feature vectors to obtain a plurality of parameterized curves corresponding to the plurality of training images in the training data set;
obtaining, by the image prediction system, a square root velocity representation for each parameterized curve of the plurality of parameterized curves;
rescaling, by the image prediction system, the plurality of parameterized curves to remove scaling variability among the plurality of parameterized curves
defining, by the image prediction system, a pre-shape space for the plurality of parameterized curves; and
obtaining, by the image prediction system, shape space points pertaining to each parameterized curve of the plurality of parameterized curves on a shape space that inherits a structure from the pre-shape space.

US Pat. No. 10,248,890

PANORAMIC CAMERA SYSTEMS

Facebook, Inc., Menlo Pa...

1. A method comprising:identifying positioning information for each camera in a set of cameras, each camera having a position with respect to an image capture system, an orientation, and an angle of view;
determining a semi-random set of test points external to the image capture system;
initializing a plurality of candidate camera orientation configurations, each camera orientation configuration comprising an orientation of each of the cameras in the set of cameras, each orientation determining a field of view of an environment for the camera based on the camera angle of view and position;
for each of the candidate camera orientation configurations:
determining, for each test point of the set of test points, a number of cameras that view the test point in the camera field of view based on the angle of view, position, and orientation of each camera in the candidate camera orientation configuration;
determining a minimum number of cameras that view any test point in the camera field of view based on the number of cameras that view the test points in set of test points;
calculating, for the candidate camera orientation configuration, a coverage score based on the minimum number of cameras that view any test point; and
modifying the orientation of one or more of the cameras in the candidate camera orientation configuration to improve the coverage score for the candidate camera orientation configuration;
evaluating each of the camera orientation configurations based on a second set of evenly distributed test points;
selecting a camera orientation configuration from the set of candidate camera orientation configurations based on the evaluating; and
orienting one or more cameras of the set of cameras based on the selected camera orientation configuration.

US Pat. No. 10,248,888

CLASSIFYING METHOD, STORAGE MEDIUM, INSPECTION METHOD, AND INSPECTION APPARATUS

CANON KABUSHIKI KAISHA, ...

1. A classifying method of classifying an article into one of a plurality of groups based on an evaluation value for an image of the article, the method comprising:a determining step of determining an evaluation method for obtaining the evaluation value based on sample images, which are images of a plurality of samples each of which has already been classified into one of the plurality of groups;
a first obtaining step of obtaining evaluation values for the sample images by the determined evaluation method;
a first changing step of changing a group for a sample with a sample image having a singular evaluation value for the group;
a second changing step of changing the evaluation method based on the sample images, each of which is being classified into one of the plurality of groups after changing the group; and
a second obtaining step of obtaining the evaluation value for the image of the article using the changed evaluation method, and classifying the article into one of the plurality of groups based on the obtained evaluation value for the image of the article.

US Pat. No. 10,248,886

SYSTEM AND METHOD FOR UNDERWATER DISTANCE MEASUREMENT

PGS Geophysical AS, Oslo...

1. A method comprising:obtaining, at an underwater imaging device, a stream of images of geophysical surveying equipment, wherein the geophysical surveying equipment includes a target pattern, the target pattern having a calibrated image size;
tracking the geophysical surveying equipment using the image stream and the target pattern;
capturing from the image stream, an image from the stream of images of the geophysical surveying equipment, wherein the image comprises an image of the target pattern having an apparent size; and
determining, using a single image captured from the image stream, a distance between the underwater imaging device and the geophysical surveying equipment, the determining based on the calibrated image size and the apparent size of the target pattern in the single image.

US Pat. No. 10,248,881

INFORMATION PROCESSING DEVICE AND RECOGNITION SUPPORT METHOD

NEC Corporation, Tokyo (...

1. An information processing device comprising:at least one processor configured to:
detect a marker from an image captured by an imaging device, the marker being disposed at an arbitrary place within a target area to be recognized, the imaging device capturing an object located within the target area; and
acquire recognition environment information based on image information of the marker itself described in the detected marker, the recognition environment information representing an appearance as an image of a target object to be recognized at the arbitrary place where the marker disposed when the target object locates within the target area and is captured by the imaging device.

US Pat. No. 10,248,879

ITEM TRACKING USING A DYNAMIC REGION OF INTEREST

United States Postal Serv...

1. A system for sorting an item comprising:a primary camera having a field of view comprising a portion of a defined physical area, the primary camera in communication with a central unit, and where the primary camera is configured to identify an item within the defined physical area;
a plurality of secondary cameras in communication with the central unit, each of the plurality of secondary cameras having a field of view comprising a section of the defined physical area; and
wherein the central unit comprises one or more processors configured to:
determine spatial coordinates of a region of interest located on the item within a defined physical area, based on image data received by the primary camera;
identify one or more of the plurality of secondary cameras having a field of view including the determined spatial coordinates;
and cause the identified one or more of the plurality of secondary cameras to capture an image of the region of interest.

US Pat. No. 10,248,878

CHARACTER INPUT METHOD AND SYSTEM AS WELL AS ELECTRONIC DEVICE AND KEYBOARD THEREOF

INTSIG INFORMATION CO., L...

1. A character input method comprising the following steps:step A, inputting a text through an electronic device;
step B, electing a photography input procedure and starting a photographing device during text input on the electronic device;
step C, imaging a text image with the photographing device;
step D, recognizing pointed text in the text image and converting the pointed text into a character text through an optical character recognition module; and
Step E, inputting the converted character text into a current text in process, or inputting modified character text into the current text in process after some modifications;
wherein the photographing device takes the text image, the display unit of the electronic device displays a preview box of the photographing device, wherein the preview box comprises characters to be input;
wherein the optical character recognition module recognizes the pointed text image in the preview box;
wherein the preview box comprises a mark of character direction for marking the direction of characters;
wherein the step C also includes changing the character direction to be a horizontal character layout or a vertical character layout during text input; and
wherein the optical character recognition module recognizes the characters according to the changed character direction.

US Pat. No. 10,248,877

ILLUMINATION DEVICE AND BIOMETRIC AUTHENTICATION APPARATUS

FUJITSU LIMITED, Kawasak...

1. An illumination device comprising:a light source including a plurality of light emitting elements provided on a surface of a substrate and configured to emit light; and
a diffraction optical element having a plurality of diffraction gratings and configured to diffract the light from the light source into illumination light that illuminates an illuminated region of an illuminated target,
wherein each of the plurality of light emitting elements emits light that irradiates two or more diffraction gratings among the plurality of diffraction gratings of the diffraction optical element,
wherein the plurality of light emitting elements are grouped into a plurality of light emitting element groups including at least one light emitting element group that includes two or more light emitting elements,
wherein each of the plurality of diffraction gratings diffracts the light emitted from each of the plurality of light emitting element groups to a corresponding one of a plurality of irradiated regions that are aligned to overlap a position of the illuminated region and are combined to form the illuminated region,
wherein the plurality of irradiated regions have mutually different shapes and sizes, and a shape and a size of the plurality of irradiated regions in an overlapped state are identical to those of the illuminated region, and
wherein the illuminated region is larger than an area occupied by the diffraction optical element and the light source in a top view of the illumination device viewed from above the surface of the substrate, and the area is parallel to the surface of the substrate.

US Pat. No. 10,248,874

BRAKE LIGHT DETECTION

FORD GLOBAL TECHNOLOGIES,...

1. A method comprising:selecting a night mode or a day mode based on a pixel brightness in an image frame; detecting an image region corresponding to a vehicle based on range sensor data when in the night mode or based on camera image data when in the day mode;
converting the range sensor data into luminosity and two-color channel (LAB) color space when in the night mode;
converting the camera image data into hue, saturation, and value (HSV) color space when in the day mode;
determining at least one region of interest within the image region corresponding to a brake light of the vehicle based on the converted range sensor data or the converted camera image data;
classifying the brake light of the vehicle as on or off based on the at least one region of interest to generate a brake light classification; and executing a driving maneuver based on the brake light classification.

US Pat. No. 10,248,873

APPARATUS FOR PRESENTING RESULT OF RECOGNIZING RECOGNITION TARGET

PANASONIC INTELLECTUAL PR...

1. An apparatus comprising:a processor; and
a memory storing thereon a computer program, which when executed by the processor, causes the processor to perform operations including:
detecting a recognition target present within a predetermined range from an autonomous moving body which includes the apparatus; and
emitting, via an emitter on the autonomous moving body, a light to the detected recognition target to alert the recognition target that the autonomous moving body recognizes the recognition target after the recognition target's presence is detected.

US Pat. No. 10,248,872

ESTIMATION OF TIME TO COLLISION IN A COMPUTER VISION SYSTEM

TEXAS INSTRUMENTS INCORPO...

1. A method for estimating time to collision (TTC) of a detected object in a computer vision system, the method comprising:determining a three dimensional (3D) position of a camera in the computer vision system;
determining a 3D position of the detected object based on a 2D position of the detected object in an image captured by the camera and an estimated ground plane corresponding to the image;
computing a relative 3D position of the camera, a velocity of the relative 3D position, and an acceleration of the relative 3D position based on the 3D position of the camera and the 3D position of the detected object, wherein the relative 3D position of the camera is relative to the 3D position of the detected object; and
computing the TTC of the detected object based on the relative 3D position, the velocity of the relative 3D position, and the acceleration of the relative 3D position.

US Pat. No. 10,248,871

AUTONOMOUS LANE DETECTION

QUALCOMM Incorporated, S...

1. A method of lane detection for a vehicle, comprising:receiving, via a wireless receiver of the vehicle, a signal from a first device;
determining, by a processor disposed within the vehicle and in communication with the wireless receiver, a time of the vehicle passing the first device at which a path of the received signal is approximately orthogonal to a direction of travel of the vehicle based on a comparison of a measured received frequency of the received signal to a source frequency of the received signal and to one or more thresholds;
determining, by the processor disposed within the vehicle and in communication with the wireless receiver, a distance from the vehicle to the first device based on at least one of a time of arrival (“TOA”) or a round trip time (“RTT”) of the received signal at or near the determined time of the vehicle passing the first device at which the path of the received signal is approximately orthogonal to the direction of travel of the vehicle; and
determining, by the processor disposed within the vehicle and in communication with the wireless receiver, a lane in which the vehicle is operating based on the determined distance and a lane map.

US Pat. No. 10,248,870

TRAFFIC-COUNTING SYSTEM AND METHOD THEREOF

SHANGHAI XIAOYI TECHNOLOG...

1. A traffic-counting method performed by a processor in communication with an imaging device, comprising:in a view of traffic comprising moving objects, identifying first and second regions of interest (ROIs);
obtaining, from the imaging device, first and second image data respectively representing the first and second ROIs;
analyzing the first and second image data over time; and
based on the analyses of the first and second image data:
counting the moving objects; and
determining moving directions of the moving objects,
wherein the counting and determining comprise:
detecting that a first foreground begins to appear in the first ROI:
when detecting that a second foreground begins to appear in the second ROI within a first amount of time after the first foreground begins to appear, determining whether a color of the first foreground is consistent with a color of the second foreground; and
when it is determined that the colors of the first and second foregrounds are consistent, concluding that one or more moving objects are moving from the first ROI to the second ROI.

US Pat. No. 10,248,869

SCENE PRESET IDENTIFICATION USING QUADTREE DECOMPOSITION ANALYSIS

Omni AI, Inc., Houston, ...

1. A computer-implemented method for identifying a scene preset for a background scene depicted in an image, comprising:receiving the background scene;
generating a quadtree decomposition of the background scene, the quadtree decomposition including a plurality of window portions of the background scene;
determining that a first window portion of the quadtree decomposition of the background scene is one of over-saturated or under-saturated;
discarding the first window portion of the quadtree decomposition of the background scene;
determining if the background scene matches a stored scene preset representing a previously captured background scene, based on the plurality of window portions of the background scene;
updating the stored scene preset when the background scene matches the stored scene preset that represents the previously captured background scene; and
creating a new scene preset when the background scene does not match the stored scene preset that represents the previously captured background scene.

US Pat. No. 10,248,868

INFORMATION PROCESSING APPARATUS, INFORMATION PROCESSING METHOD, AND INFORMATION PROCESSING PROGRAM

NEC CORPORATION, Tokyo (...

1. An information processing apparatus comprising:a memory configured to store:
a type of object to be extracted from a captured video, the type of object being associated with a predetermined event, which is sensed as a trigger to generate query information,
time difference information which designates a time period of video data at least one of before and after the event occurred for which the type of object is to be detected, the time difference information being associated with a type of the event such that the time period varies based on the type of event, and
program instructions;
one or more processors configured to read the program instructions to execute:
a sensor configured to analyze the captured video and senses whether the event occurred,
a designator configured to designate the video data, from which the type of object is to be detected, based on the time difference information and the time the event has occurred,
a detector configured to detect the type of the object from the designated video data, and
a generator configured to generate a feature of the detected object as the query information.

US Pat. No. 10,248,867

SYSTEMS AND METHODS FOR PROVIDING PLAYBACK OF SELECTED VIDEO SEGMENTS

Facebook, Inc., Menlo Pa...

11. A system comprising:at least one processor; and
a memory storing instructions that, when executed by the at least one processor, cause the system to perform:
selecting a subset of video segments out of a set of video segments representing a video, based on an analysis of one or more objects represented in each video segment in the set of video segments; and
generating a list that indicates a playback sequence for the subset of video segments, wherein playback of the subset of video segments is based on the playback sequence indicated via the list.

US Pat. No. 10,248,865

IDENTIFYING PRESENTATION STYLES OF EDUCATIONAL VIDEOS

MICROSOFT TECHNOLOGY LICE...

1. A system for training a video presentation style classifier, comprising:one or more computing devices, said computing devices being in communication with each other via a computer network whenever there is a plurality of computing devices; and
a computer program having program modules executable by the one or more computing devices, the one or more computing devices being directed by the program modules of the computer program to;
receive a training dataset comprising a plurality of videos each of which is labeled with a presentation style identifier specifying the presentation style that is predominately employed in the video, said specified presentation style being a one of the presentation styles in a set of possible presentation styles;
use the training dataset to independently learn a different classifier for each possible unordered pair of presentation styles in the set of possible presentation styles; and
combine the different classifiers using probabilistic fusion, said combination producing the video presentation style classifier.

US Pat. No. 10,248,864

SYSTEMS AND METHODS FOR CONTEXTUAL VIDEO SHOT AGGREGATION

Disney Enterprises, Inc.,...

1. A system comprising:a memory storing an executable code; and
a hardware processor executing the executable code to:
receive a video having a plurality of video shots;
create a plurality of video shot groups based on feature distances between the plurality of video shots, wherein each video shot group of the plurality of video shot groups includes one or more of the plurality of video shots and has different ones of the plurality of video shots than other video shot groups;
create at least one video supergroup including at least one video shot group of the plurality of video shot groups by using a cluster algorithm on the plurality of video shot groups;
divide the at least one video supergroup into a plurality of connected video supergroups, each connected video supergroup of the plurality of connected video supergroups including one or more of the plurality of video shot groups based on interactions among the one or more of plurality of video shots in each of the plurality of video shot groups;
identify one of the plurality of connected video supergroups as an anchor video subgroup based on (a) a screen time of the one of the plurality of connected video supergroups, and (b) an amount of time between a first appearance and a last appearance of the video shots of the one of the plurality of connected video supergroups, wherein the anchor video subgroup includes video shots that are not temporally adjacent; and
assign a category to the video based on the anchor video subgroup of the plurality of connected video supergroups.

US Pat. No. 10,248,863

AUGEMENTED VIDEO ANALYTICS FOR TESTING INTERNET OF THINGS (IOT) DEVICES

International Business Ma...

1. A method of testing a device in an Internet of Things, the method comprising the steps of:a computer receiving first data items indicating visually perceptible physical output of the device during a testing of the device, the first data items being captured on a video by a video camera surveilling the device during the testing, and the video camera being coupled to the computer;
the computer receiving second data items indicating non-visually perceptible physical output of the device during the testing;
the computer receiving an event log from a beacon continuously streamed by the device, the event log generated by an instrumented application being executed in the device;
the computer receiving indications of interactions of one or more humans with the device that occur during the testing, the interactions captured by (1) a wearable device operated by a human during the testing or (2) a sensor that is coupled to the device and that senses the interactions;
based on the first data items indicating visually perceptible physical output, the second data items indicating non-visually perceptible physical output, the event log, and the indications of the interactions, the computer overlaying the first data items, the second data items, entries included in the event log, and the indications of the interactions onto respective frames of the video that include the device, so that timings of the frames are correlated with timestamps of (1) the first data items, (2) the second data items, (3) the entries from the event log, and (4) the indications of the interactions;
based on the video having the overlaid first data items, second data items, entries included in the event log, and the indications of the interactions, the computer detecting performance, functionality, and usability issues and generating respective markers of the issues;
the computer indexing the video with the markers by overlaying the markers on a timeline of the video; and
in response to a selection of one of the markers by a user which indicates an issue included in the issues, the computer locating and displaying a frame of the video that depicts the issue.

US Pat. No. 10,248,862

USE OF CAMERA METADATA FOR RECOMMENDATIONS

eBay Inc., San Jose, CA ...

1. A system comprising:one or more hardware processors, configured to:
receive an image file having image data including camera metadata, the camera metadata indicating a location at which the image file was captured;
analyze the location to determine improvements to image capture aspects associated with the image file;
determine a time of day at which the image file was captured based on the camera metadata; and
determine a position of the sun at the time of day and at the location indicated by the camera metadata; and
generate feedback based on both the camera metadata from the image file, the position of the sun determined based on the time of day and location that were determined based on the camera metadata, and use information that indicates a purpose for which the image file was captured.

US Pat. No. 10,248,860

SYSTEM AND METHOD FOR OBJECT RE-IDENTIFICATION

CANON KABUSHIKI KAISHA, ...

1. A method of identifying, with a camera, an object in an image of a scene, the method comprising the steps of:obtaining relative orientation of a candidate object to the camera;
selecting at least one of a plurality of attributes of the candidate object in accordance with the obtained relative orientation of the candidate object;
determining one of a head, an upper body, legs, and a whole body as a region of interest, the determined region of interest including the selected attribute;
operating a set of at least one of pan, tilt, and zoom corresponding to the determined region of interest so as to observe the selected attribute, and
identifying an object based on the result of the observation of the selected attribute.

US Pat. No. 10,248,857

SYSTEM AND METHOD FOR DETECTING AND ANNOTATING BOLD TEXT IN AN IMAGE DOCUMENT

Wipro Limited, Bangalore...

1. A method for annotating bold text in image documents, the method implemented by a bold text detection and annotation computing device and comprising:processing an image document to derive a digitized textual image;
applying an adaptive edge rounding filter to the digitized textual image to generate a filter image comprising one or more edge rounded structures corresponding to one or more regions of interest within the digitized textual image, wherein applying the adaptive edge rounding filter comprises:
determining a plurality of characters in the digitized textual image;
determining, for each of the plurality of characters, a height of a character, a radius for the character based on a dots per inch (dpi) of the image document and the height of the character;
determining, for each of a plurality of pixels in the character, a plurality of subpixels within the radius of a pixel and a dominant pixel type among the plurality of subpixels; and
setting the pixel to the dominant pixel type;
determining one or more regions of bold text from the one or more regions of interest in the filter image; and
annotating the one or more regions of bold text within the image document.

US Pat. No. 10,248,854

HAND MOTION IDENTIFICATION METHOD AND APPARATUS

BEIJING UNIVERSITY OF POS...

1. A hand motion identification method, comprising:a computing device having one or more processors and a memory storing programs executed by the one or more processors;
obtaining a to-be-identified video;
performing area localization and tracking of a hand for the to-be-identified video;
extracting a red-green-blue (RGB) video and a depth information video of the located and tracked hand;
detecting the RGB video and the depth information video of the hand to obtain a feature point;
representing, by using a 3D Mesh motion scale-invariant feature transform (MoSIFT) feature descriptor, the feature point; and
comparing the 3D Mesh MoSIFT feature descriptor of the feature point with 3D Mesh MoSIFT feature descriptors in positive samples obtained through beforehand training, to obtain a hand motion category in the to-be-identified video,
wherein comparing the 3D Mesh MoSIFT feature descriptor of the feature point with 3D Mesh MoSIFT feature descriptors in positive samples obtained through beforehand training, to obtain a hand motion category in the to-be-identified video comprises:
dimensionally reducing the 3D Mesh MoSIFT feature descriptor of the feature point to a dimension that is the same as that of a 3D Mesh MoSIFT feature descriptor in a positive sample obtained through the beforehand training;
evaluating a Euclidean distance between the 3D Mesh MoSIFT feature descriptor of the feature point after the dimension reduction and the 3D Mesh MoSIFT feature descriptor in the positive sample; and
selecting a category corresponding to the 3D Mesh MoSIFT feature descriptor in one of the positive samples with a minimum Euclidean distance to the 3D Mesh MoSIFT feature descriptor of the feature point, to be used as the hand motion category in the to-be-identified video.

US Pat. No. 10,248,849

TECHNIQUE FOR PROVIDING SECURITY TO AN AREA

Intelligence Based Integr...

1. A method for providing security to an area, the method comprising:providing at least one entry port for persons to enter into a secure area; capturing a photographic image of each person who approaches the at least one entry port seeking entry into the secure area;
comparing the photographic image of each person seeking entry into the secure area to facial images compiled in a database of facial images of persons of interest to detect a likely match; and
alerting at least one of one or more law enforcement officers or one or more security personnel of a detection of a likely match between the photographic image of the person seeking entry into the secure area and a facial image of a person of interest,
wherein the comparing of the photographic image of each person seeking entry into the secure area includes transmitting the photographic image of each person seeking entry into the secure area to the database and, in response, receiving an alert that the person seeking entry into the secure area is the person of interest if the likely match is detected between the photographic image of the person seeking entry into the secure area and the facial image of the person of interest, and
wherein the secure area is controlled by a first party and the database is controlled by a second party.

US Pat. No. 10,248,848

METHOD AND APPARATUS FOR IMPROVED FACIAL RECOGNITION

Nokia Technologies Oy, E...

1. A method comprising:accessing a trained block division trained on a set of facial images of a same subject, wherein the trained block division is trained by iterative evaluation and modification;
receiving a subject facial image;
normalizing the subject facial image and applying the trained block division to the subject facial image by performing:
(a) identifying a plurality of key point pixels in the subject facial image, wherein the plurality of key points are dynamically identified using data comprising distinguishing points on faces according to the trained block division; and
(b) measuring the distance from each of a plurality of pixels P, to each respective key point pixel and assigning each respective pixel P to a block encompassing a closest key point pixel;
determining statistical property measurements for respective pixels in at least one block of the subject facial image;
converting the statistical property measurements into a feature vector; and
identifying, by a processor, at least one characteristic of the subject facial image by comparing the feature vector to a plurality of feature vectors of enrolled images;
wherein training the block division comprises:
receiving a training group of facial images comprising at least a plurality of facial images of the same subject;
applying block division to the training group;
classifying images in the training group following the application of block division;
utilizing results of the classification to determine a learned dimension compression matrix;
receiving an evaluation group of facial images comprising at least a plurality of facial images of the same subject;
applying the block division to the evaluation group;
applying the learned dimension compression matrix to the evaluation group following application of the block division; and
evaluating the block division based on results of applying the learned dimension compression to the evaluation group.

US Pat. No. 10,248,846

INFORMATION PROCESSING DEVICE

SONY INTERACTIVE ENTERTAI...

1. An information processing device comprising:an image obtaining section configured to obtain a captured image from an imaging device;
a registered user information retaining section configured to retain face identifying data of a registered user;
a face authenticating section configured to detect a face image of the registered user present in the captured image and to compare the face image to the face identifying data retained in the registered user information retaining section to authenticate the user;
a login processing section configured to allow the registered user to log in;
a damage determining section configured to determine whether or not the face identifying data retained in the registered user information retaining section is unusable for authenticating the user;
a notifying section configured such that if the face identifying data is determined to be unusable for authenticating the user, the notifying section notifies that the face identifying data is unusable for authenticating the user,
wherein, if the damage determining section determines that the face identifying data of the registered user allowed to log in by the login processing section is unusable for authenticating the user, the notifying section notifies the logged-in registered user that the face identifying data is unusable for authenticating the user; and
a face data generating section configured to perform reregistration processing of the face identifying data following the notification by the notifying section to replace the retained face identifying data.

US Pat. No. 10,248,845

METHOD AND APPARATUS FOR FACIAL RECOGNITION

Samsung Electronics Co., ...

1. A facial recognition method, comprising:identifying a first makeup pattern present in a region of interest (ROI) of a first image obtained from an image sensor, the first image including a face of a user to be recognized;
determining whether a second makeup pattern is present in an ROI of a second image, the ROI of the second image corresponding to the ROI of the first image, the second image including a face of a pre-registered user,
in response to the second makeup pattern not being present in the ROI of the second image, generating a third image by applying the first makeup pattern to the ROI of the second image; and
authorizing the user in the first image as the pre-registered user by recognizing the face of the user included in the first image as the face of the pre-registered user when the third image matches the first image.

US Pat. No. 10,248,839

LOCATING OBJECTS WITHIN DEPTH IMAGES

Intel Corporation, Santa...

1. A method comprising:performing on a computer connected components labelling in both screen dimensions and a depth dimension to label objects in a depth image;
using a contour of said labels to identify an object in the depth image using said computer;
identifying an object within a labeled blob by finding a convex hull that surrounds a blob labelled by said connected components labelling; and
finding a defect in said blob and a closest opposite point on the convex hull and using a line from said defect to said closest opposite point to segment the object to be identified from a remainder of the blob.

US Pat. No. 10,248,835

METHODS AND APPARATUSES FOR AUTHENTICATION USING BIOMETRIC INFORMATION

SAMSUNG ELECTRONICS CO., ...

1. An authentication method, comprising:generating a quality profile of an authentication image, the quality profile of the authentication image indicating a quality of the authentication image, the generating the quality profile including,
determining a first quality value corresponding to a starting position in the authentication image based on a variance of pixels in a window at the starting position,
determining at least one second quality value corresponding to at least one other position in the authentication image by moving the window from the start position to an end position in the authentication image, and
generating the quality profile of the authentication image based on the first quality value and the at least one second quality value;
determining an effective region in the authentication image based on the quality profile, the determining the effective region including,
dividing the authentication image into at least one effective segment and at least one ineffective segment by comparing the quality profile of the authentication image to a threshold,
verifying a quality of the at least one ineffective segment,
determining a final ineffective segment based on a result of the verifying, and
omitting the final ineffective segment from the authentication image to determine the effective region in the authentication image; and
determining whether the authentication image is authenticated based on the effective region in the authentication image to a registered image.

US Pat. No. 10,248,834

DISPLAY PANEL HAVING FINGERPRINT RECOGNITION AND DISPLAY APPARATUS

Shenzhen China Star Optoe...

2. A display panel having a fingerprint recognition function, comprising: a display region and a fingerprint recognition region, the display region comprising a plurality of first pixel unit, the fingerprint identification region comprising a plurality of second pixel units, each of the second pixel units comprising a display unit and a fingerprint identification unit; wherein the pixel aperture area of the first pixel unit is equal to the pixel aperture area of the display unit plus the pixel aperture area of the fingerprint identification unit; by the gray scale voltage compensation of the pixel in the fingerprint recognition region is made in accordance with a ratio of the pixel aperture area of the first pixel unit to the pixel aperture area of the display unit and makes the pixel luminance in the display region and the pixel luminance in the fingerprint identification region is the same;wherein by the compensation of the gray scale voltage of the pixel in the fingerprint identification region, the following formula needs to be satisfied:

wherein, A1 is the pixel aperture area of the pixel in the display region, A2 is the pixel aperture area of the display unit, ? are constants; Vd1 is the gray scale voltage in the display region; Vd2 is the gray scale voltage in the fingerprint identification region; Vth is the threshold voltage of the driving switch T2 to compensate the gray scale voltage of the fingerprint identification region and makes the pixel luminance in the display region and the pixel luminance in the fingerprint identification region is the same.

US Pat. No. 10,248,833

METHOD FOR BIOMETRIC PROCESSING OF IMAGES

1. A method for biometric processing of images of part of the human body having papillary ridges for determining whether an imaged part of the human body is authentic for the detection of fraud, said method comprising:acquiring images of part of the human body having papillary ridges on contact with a surface of a sensor adapted to receive in contact a part of the human body to be imaged, said sensor comprising an automated data-processing system, an emissive screen comprising an array of individually controllable pixels, the states of the pixels defining a display pattern of the emissive screen, and a substrate on which are disposed elements sensitive to light constituting an imager and sharing the orientation of the emissive screen,
wherein the acquiring images further comprises:
displaying, by the emissive screen of the sensor, at least one first display pattern to light said part of the human body, the emissive screen being configured to light said part of the human body to be imaged when said part of the human body is in contact with the surface, and acquiring at least one first image of said part of the human body by the imager;
determining, from this first image, by the automated data-processing system, at least one second display pattern different to the first display pattern, wherein the determination of the second display pattern comprises analysis of the first image to locate a representation of the part of the human body in said first image, and wherein determination of the second display pattern comprises positioning of lighting zones in the second display pattern corresponding to the location of the representation of the part of the human body in the first image, such that the part of the human body in contact with the surface is lit by said lighting zones when the emissive screen displays the second display pattern, the second display pattern comprising luminous geometric figures which are distinct and separate defined by the states of the pixels of the emissive screen; and
displaying, by the emissive screen, at least the second display pattern to light said part of the human body so that said part of the human body in contact with the surface is illuminated by said lighting zones when the emissive screen displays the second display pattern, and acquiring at least one second image of said part of the human body by the imager, and
performing, by the automated data-processing system, biometric processing on a final image constructed from at least the second image, said biometric processing comprising performing a method for fraud detection aimed at determining that the imaged part of the human body is authentic and not a fraud using representations in the second image of projections of the luminous geometric figures of the second display pattern.

US Pat. No. 10,248,832

METHOD OF DETERMINING, IN AN IMAGE, AT LEAST ONE ZONE LIABLE TO REPRESENT AT LEAST ONE FINGER OF AN INDIVIDUAL

1. A method of detecting zones (Z1a, Z1b, Z1c, Z1d, Z2a, Z2b, Z2d, Z3a) liable to contain at least one finger print in an image of at least one portion of hand of an individual, the method comprising:a) a step of acquiring the image of at least one illuminated portion of hand with the aid of an optical sensor and without contact with this hand;
b) a step of determining a plurality of zones (Z1a, Z1b, Z1c, Z1d) of the acquired image, each zone thus determined being a continuous zone of points of the acquired image which each exhibit a luminous intensity level (I) greater than or equal to a luminous intensity threshold value (Vsn, Vs1) selected for the determination of the zone thus determined; and
c) a first selection step for selecting, from among the zones determined, the zones which are liable to represent at least one print of a finger, this selection being carried out with the aid of at least one filtering criterion of a first type, chosen from among a finger shape identification criterion and/or a finger print standard texture identification criterion and/or a finger standard color identification criterion and in which a set of threshold values (Vsn, Vs, Vs2, Vs3) of luminous intensity (I) lying between a minimum threshold value (Vsmin) of intensity (I) and a maximum threshold value (VsMax) of intensity (I) is selected and the step of determining a plurality of zones of the acquired image is carried out with the aid of each of the threshold values (Vs1, Vs2, Vs3) of the set of threshold values (Vsn), and then the plurality of the zones (Z1a, Z1b, Z1c, Z1d, Z2a, Z2b, Z2d, Z3a) of the captured image which have been determined with each of the threshold values (Vs1, Vs2, Vs3) of the set of threshold values (Vsn) is stored.

US Pat. No. 10,248,828

WEARABLE DEVICE HAVING A FINGERPRINT SENSOR

ARM IP Limited, Cambridg...

1. A device configured to be worn by a user when in operation, comprising:a device body having a first surface located adjacent to skin of a user when the device is worn by the user; and
fingerprint sensor circuitry comprising a capacitive fingerprint sensor and associated control circuitry, the capacitive fingerprint sensor having electrodes between which a primary impedance path is established when a user places a finger on the capacitive fingerprint sensor, the associated control circuitry being connected to an electrical ground connection and configured to pass an AC drive signal through the capacitive fingerprint sensor when a user places said finger on the capacitive fingerprint sensor in order to measure a property whose value varies as a function of impedance;
the device body providing a body ground connection which is different from the electrical ground connection;
the body ground connection being arranged such that when the user places said finger on the capacitive fingerprint sensor, a parasitic impedance path is established from the finger through the body of the user and via said first surface of the device body to the body ground connection;
the device further comprising filter circuitry between the body ground connection and the electrical ground connection and configured to decouple the body ground connection from the electrical ground connection in a first frequency range including the frequency of the AC drive signal, and configured to couple the body ground connection to the electrical ground connection in at least one further frequency range, where the first frequency range is different from and lower than one further frequency range of the at least one further frequency range.

US Pat. No. 10,248,827

INTERFERENCE-FREE FINGERPRINT IDENTIFICATION DEVICE

SUPERC-TOUCH CORPORATION,...

1. An interference-free fingerprint identification device, comprising:a thin film transistor substrate;
a thin film transistor layer disposed on one side of the thin film transistor substrate and including plural thin film transistors;
a sensing electrode layer including plural fingerprint sensing electrodes, wherein each fingerprint sensing electrode corresponds to a plurality of the thin film transistors, and is connected to sources or drains of at least two corresponding thin film transistors;
a gate line layer including plural gate lines, wherein at least two gate lines are electrically connected to gates of a plurality of the thin film transistors corresponding to a fingerprint sensing electrode;
a data line layer including plural data lines, wherein each data line is electrically connected to a source or drain of a thin film transistor in a plurality of the thin film transistors corresponding to each of a plurality of fingerprint sensing electrodes; and a first shielding layer disposed between the gate line layer and the data line layer, and electrically connected to a source or drain of a thin film transistor in a plurality of the thin film transistors corresponding to each fingerprint sensing electrode.

US Pat. No. 10,248,826

FINGERPRINT SENSOR WITH PROXIMITY DETECTION, AND CORRESPONDING DEVICES, SYSTEMS, AND METHODS

Motorola Mobility LLC, C...

1. An electronic device, comprising:a housing;
one or more processors;
a fingerprint sensor; and
a proximity sensor component concentrically located with the fingerprint sensor;
the fingerprint sensor comprising a plurality of sensors surrounding the proximity sensor component;
the proximity sensor component to transition the fingerprint sensor from a first mode of operation to a second mode of operation upon receiving an infrared emission from an object external to the housing.

US Pat. No. 10,248,825

IMAGE PROCESSING

Hewlett-Packard Developme...

1. A method of image processing comprising, by at least one processing device:receiving an image;
placing a window across the image;
computing a set of all occurring grayscale values within the window;
computing a threshold value based on the set of all occurring unique grayscale values within the window, including considering every occurring unique grayscale value without considering a number of occurrences of each occurring unique grayscale value within the set; and
determining an output pixel value of at least one pixel from the window based on the threshold value.

US Pat. No. 10,248,823

USE OF SECURITY INK TO CREATE METADATA OF IMAGE OBJECT

International Business Ma...

1. A method, comprising:capturing a first image of a first object with a first imaging technology operating at frequencies within the visual spectrum;
capturing a second image of a second object positioned on the first object with a second imaging technology operating at frequencies outside the visual spectrum, wherein the first imaging technology is different than the second imaging technology and the first object is a different object than the second object;
extracting content from the second image that is invisible in the first image, wherein the content comprises information about the first object;
generating a third image by combining the content as metadata and the first image; and
storing the third image in a non-transitory, computer-readable storage medium.

US Pat. No. 10,248,822

SCANNER ASSEMBLY WITH REMOVABLE SHOCK MOUNT

HAND HELD PRODUCTS, INC.,...

1. An indicia scanning assembly, comprising:a housing having a shock mount receiving space;
a scan engine receiving shock mount positioned in the shock mount receiving space, and having a first end with a scan engine receiving space, and an opposite second end with a scanning window receiving space; and
a scan engine securing cap, positioned at the first end, covering and sealing the scan engine receiving space.

US Pat. No. 10,248,821

TARGET GENERATING STRUCTURE FOR AN ACCESSORY FOR A MOBILE DEVICE

The Code Corporation, Dr...

1. An accessory for a mobile device, the mobile device comprising a processor, a display screen, memory, an illumination torch, and a camera comprising a camera lens and an image sensor, the accessory comprising:a target generating structure for emitting a targeting pattern of illumination into a field of view of the camera of the mobile device, when the accessory is secured to the mobile device, wherein the target generating structure is secured to the accessory such that the target generating structure can be repositioned between a first position aligned with the illumination torch and a second position outside an illumination field of the illumination torch.

US Pat. No. 10,248,820

APPARATUS AND METHODS FOR ENABLING INFORMATION TO BE READ FROM A TOUCH SCREEN APPARATUS

Nokia Technologies Oy, E...

1. An apparatus comprising:a memory element configured to store information; and
a switching element coupled to the memory element;
wherein the switching element is configured to be switched from a first state to a second state in response to an input signal from a capacitive touch screen external to the apparatus and wherein when the switching element is in the second state the memory element is configured to provide at least part of the information in the memory element to the capacitive touch screen external to the apparatus; and
wherein the memory element and the switching element are configured to enable an electrode to be connected to and disconnected from ground.

US Pat. No. 10,248,819

CARD READER AND METHOD OF USE THEREOF

ID TECH, Cypress, CA (US...

25. A method for communicating with a host device comprising the steps of:receiving analog signals by an interfacing circuit from the host device on audio channels of the host device, wherein the audio channels are designed for audio speakers and microphones;
processing the received analog signals from the host device;
adjusting at least one parameter of an interfacing circuit based on the processed signals of the received analog signals from the host device;
sensing data from a magnetic strip of a card;
detecting analog signals that are associated with the sensed data from the magnetic strip of the card; and
transmitting the analog signals that are associated with the sensed data from the magnetic strip of the card on at least one of the audio channels based on the at least one adjusted parameter.

US Pat. No. 10,248,817

READING RFID TAGS IN DEFINED SPATIAL LOCATIONS

HAND HELD PRODUCTS, INC.,...

1. A radio frequency identification (“RFID”) reader of a point-of-sale (POS) system, comprising:a first radio frequency (RF) antenna configured to transmit power in a first spatial zone in order to read a first set of RFID tags disposed within the first spatial zone;
a second RF antenna configured to transmit power in a second spatial zone in order to read the first set of RFID tags, at a second time wherein the second spatial zone is upstream the first spatial zone,
wherein the first set of RFID tags are attached to items to be purchased at a point of sale location of an establishment, wherein the point of sale location comprises the first spatial zone and the second spatial zone, wherein a list of identifiers of cleared RFID tags is produced listing only RFID tags of the first set of RFID tags that indicate that they have been scanned, at a time between said first and second times, by a decodable indicia reading at the point of sale location, wherein the list is produced based on the first set of RFID tags being moved, from the first spatial zone to the second spatial zone based on the readings by the first and second RF antennas at the first and second times, to enable the POS system to identify read RFID tags of the first set of RFID tags that are not listed on the list and trigger an alert.

US Pat. No. 10,248,816

AUTOMATED SYSTEM AND METHOD FOR CONSTRUCTING CARD MULTIPACKS, AND CARD MULTIPACK CONSTRUCTED USING THE SAME

Harvard Label LLC, Wilmi...

1. An automated system for constructing card multipacks, the automated system comprising:a movable conveyor comprising a plurality of tooling plates, each configured to receive a height adjusting member on an upper surface thereof;
a first carrier placing station configured to place a first carrier portion of a carrier on a tooling plate of the plurality of tooling plates;
a first card placing station configured to place a first stored value card on the first carrier portion;
a first data capture station configured to read a first card bar code of the first stored value card in-line in the automated system; and
a software system adapted to verify the first card bar code with a data file,
wherein the height adjusting member is configured to support the first carrier portion thereon.

US Pat. No. 10,248,815

CONTEMPORANEOUS GESTURE AND KEYBOARD FOR DIFFERENT LEVELS OF ENTRY AUTHENTICATION

International Business Ma...

1. A method comprising:receiving a request for a level of access of one of a plurality of levels of access to a restricted access device;
based on the level of access requested, enabling increased access to the restricted access device based upon an animated facial gesture event and receiving a predetermined keyboard entry from a user accessing the restricted access device, wherein the predetermined keyboard entry includes a password requiring multiple keyboard activations and the animated facial gesture event includes at least one change from at least one of a smile, a frown, a straight face, a blink, a wink, an open mouth and a closed mouth to at least one of a smile, a frown, a blink, a wink, an open mouth and a closed mouth; and
increasing a number of keyboard activations in a password based upon the animated facial gesture event being received and a higher level of access requested.

US Pat. No. 10,248,814

MEMORY INTEGRITY MONITORING

HEWLETT PACKARD ENTERPRIS...

1. A system comprising:a first memory module; and
a first memory integrity monitoring processor embedded to the first memory module, the first memory integrity monitoring processor to:
receive, from a second memory integrity monitoring processor coupled to a second memory module, a second hash corresponding to a second memory region of the second memory module, wherein the second hash includes a second sequence number for reconstruction of a final hash value and the second hash is not sequentially a first number in a sequence for reconstruction of the final hash value;
receive, from a third memory integrity monitoring processor coupled to a third memory integrity monitoring processor, a third hash corresponding to a third memory region of the third memory module, wherein the third hash includes a third sequence number for reconstruction of the final hash value ;
determine, based on the second and third sequence numbers, if the second hash can be combined with the third hash;
combine the second hash and third hash into a partial hash; and
reconstruct the final hash value using the partial hash.

US Pat. No. 10,248,813

ORGANIZING KEY-VALUE INFORMATION SETS INTO HIERARCHICAL REPRESENTATIONS FOR EFFICIENT SIGNATURE COMPUTATION GIVEN CHANGE INFORMATION

INTERNATIONAL BUSINESS MA...

1. A method for enabling computation of a signature of an information set given change information by storing information in a hierarchical data structure, the method comprising:utilizing at least one processor to execute computer code that performs the steps of:
receiving change information relating to data represented by a first node within the hierarchical data structure, wherein each node within the hierarchical data structure has a corresponding assigned key and wherein the change information comprises key identification information assigned to the first node;
accessing a database associated with the hierarchical data structure and comprising at least one key, wherein the at least one key comprises a crypto-hash and is assigned to a node within the hierarchical data structure;
identifying a node key within the database that is assigned to the first node, wherein the identifying comprises (i) deriving information related to the location of the first node by applying a transformation to the key identification information and (ii) locating the node key corresponding to the first node by searching the database via a single look-up using the derived information;
computing, from the identified node key, a node crypto-hash for the first node that is based upon the first node being modified using the received change information;
effectuating the received change information within the hierarchical data structure by modifying the first node within the hierarchical data structure using the computed node crypto-hash; and
updating the database with a modified node key generated based upon the effectuated change.

US Pat. No. 10,248,812

USER PERSONALIZATION OF THIRD-PARTY WEBPAGE IMAGES

MICROSOFT TECHNOLOGY LICE...

1. A system for allowing a user to personalize a webpage, comprising:a webpage personalizer comprising one or more computing devices, said computing devices being in communication with each other via a computer network whenever there is a plurality of computing devices, and a computer program having a plurality of sub-programs executable by said computing devices, said computing devices being directed by the sub-programs of the computer program to,
receive a request from a client device of the user to insert a user-selected image into an existing third-party webpage managed by an entity other than the user, the third-party webpage being publicly accessible to client devices over a wide-area network at an initial Uniform Resource Locator that uniquely identifies the third-party webpage, said image insertion request specifying a particular one of a variety of ways that the user-selected image is to be inserted into the third-party webpage,
determine if the user is authorized to personalize the third-party webpage based on a user identifier, and if the user-selected image is appropriate for use on the third-party webpage, said image appropriateness determination being based on one or more image appropriateness criteria,
whenever the user is determined to be authorized to personalize the third-party webpage and the user-selected image is determined to be appropriate for use on the third-party webpage, personalize the third-party webpage by inserting the user-selected image into the third-party webpage according to the particular way that is specified in said image insertion request to obtain a personalized version of the third-party webpage, the user being identified by the user identifier for accessing the personalized version of the third-party webpage over the wide-area network at the initial Uniform Resource Locator, and
generate a version-specific Uniform Resource Locator that uniquely identifies the personalized version of the third-party webpage for sharing access to the personalized version of the third-party webpage.

US Pat. No. 10,248,803

INTERNAL FOLDER SHARING

Intermedia.net, Inc., Mo...

1. A method of sharing a folder in a file system between an owner and a grantee, the method comprising:receiving an indication of a folder to share with a grantee from the owner, the folder to share being a subfolder within a parent folder, the parent folder not shared with the grantee;
storing, with the subfolder itself, sharing permissions indicating a level of access the grantee has to the subfolder;
creating a virtual folder corresponding to the subfolder on a device of the grantee, the virtual folder mapping to all objects within the subfolder and being stored at a level equal to parent folders of a file hierarchy on device of the grantee;
altering permissions of the parent folder to share the parent folder with the grantee; and
creating a virtual folder corresponding to the parent folder on the device of the grantee, the virtual folder corresponding to the parent folder mapping to all objects within the parent folder being stored at a level equal to subfolder on the device of the grantee, without deleting the subfolder on the device of the grantee.

US Pat. No. 10,248,800

SECURE COMPARISON OF INFORMATION

Openeye Scientific Softwa...

1. A method of comparing a first piece of data from a first party and a second piece of data from a second party without revealing the first and second pieces of data themselves, the method comprising:The first party creates a first fingerprint from the first piece of data;
The second party creates a second fingerprint from the second piece of data;
The first party generates a first GM key with associated first public GM key and private GM key;
The second party generates a second GM key with associated second public GM key and private GM key;
The first party encrypts each bit in the first fingerprint with the first public GM key to create a first encrypted first fingerprint;
The second party encrypts each bit in the second fingerprint with the second public GM key to create a second encrypted second fingerprint;
The first party sends the first public GM key to the second party;
The second party sends the second public GM key to the first party;
The first party encrypts each bit in the first fingerprint with the second public GM key to create a second encrypted first fingerprint;
The second party encrypts each bit in the second fingerprint with the first public GM key to create a first encrypted second fingerprint;
The first party sends the first encrypted first fingerprint to the second party;
The second party sends the second encrypted second fingerprint to the first party;
The first party performs an XOR operation on the second encrypted first fingerprint and the first encrypted second fingerprint, thereby creating a second encrypted fingerprint XOR;
The second party performs an XOR operation on the first encrypted first fingerprint and the first encrypted second fingerprint, thereby creating a second encrypted fingerprint XOR;
The first party scrambles the first encrypted fingerprint XOR, thereby creating a scrambled first encrypted fingerprint XOR;
The second party scrambles the second encrypted fingerprint XOR, thereby creating a scrambled second encrypted fingerprint XOR;
The first party generates a first RSA Keys and associated first public RSA key and private RSA key;
The second party generates a second set of RSA key and associated second public RSA key and private RSA key;
The first party then encrypts each bit in the scrambled first encrypted fingerprint XOR with the first public RSA key, thereby creating a doubly scrambled first encrypted fingerprint XOR;
The second party then encrypts each bit in the scrambled second encrypted fingerprint XOR with the second public RSA key, thereby creating a doubly scrambled second encrypted fingerprint XOR;
The first party sends the doubly encrypted first scrambled fingerprint XOR to the second party;
The second party sends the doubly encrypted second scrambled fingerprint XOR to the first party;
The first party sends the first private RSA key to the second party;
The second party sends the second private RSA key to the first party;
The first party decrypts the doubly encrypted second scrambled fingerprint XOR with the second private RSA key, and counts the number of bits in the scrambled second encrypted fingerprint XOR by further decrypting with the first private GM key, thereby learning the level of similarity between the first and second fingerprints; and
The second party decrypts the doubly encrypted first scrambled fingerprint XOR with the first private RSA key, and counts the number of bits in the scrambled first encrypted fingerprint XOR by further decrypting with the second private GM key, thereby independently learning the level of similarity between the first and second fingerprints.

US Pat. No. 10,248,789

FILE CLUSTERING USING FILTERS WORKING OVER FILE ATTRIBUTES

AVAST SOFTWARE S.R.O., P...

1. A method for classifying a file, the method comprising:determining a file event for a file;
in response to the file event, receiving metadata for an attribute of the file;
in response to receiving the metadata, selecting, based at least in part on the metadata, a filter of a plurality of filters, the plurality of filters comprising a filter layer of a classification network;
executing one or more rules in the selected filter to classify the file as belonging to a cluster of files based on the metadata satisfying the executing one or more rules, the cluster of files sharing one or more metadata characteristics; and
in response to classifying the file, activating, based at least in part on the classification, a queue node of a plurality of queue nodes for taking an action to be performed with respect to the file, the plurality of queue nodes comprising a queue layer of the classification network.

US Pat. No. 10,248,783

METHODS AND SYSTEMS FOR IDENTITY CREATION, VERIFICATION AND MANAGEMENT

THOMSON REUTERS (GRC) LLC...

1. A method of providing identity services, the method comprising:receiving, by an identity system at a first interface from an identity provider system, identity data for an individual for which the identity provider has generated an identity, wherein the identity data is validated by the identity provider;
generating, by the identity system, a transaction to store an identifier representing the identity data in a data structure on a blockchain of a distributed system;
sending the transaction to at least one node of the distributed system;
generating, by the identity system, an identity token incorporating the identifier representing the identity data; and
providing, by the identity system at a second interface to a user system of the individual, the generated identity token to the user system.

US Pat. No. 10,248,782

SYSTEMS AND METHODS FOR ACCESS CONTROL TO WEB APPLICATIONS AND IDENTIFICATION OF WEB BROWSERS

Duo Security, Inc., Ann ...

1. A system for controlling access to a web application server, the system comprising:a remote access control platform being implemented by one or more computing servers having non-transitory computer-readable medium storing computer instructions, that when executed by one or more computer processors perform one or more steps including:
receiving, from a requesting web browser, an access request for accessing a web application of a web application computing server;
in response to receiving the access request:
establishing a browser identification assessment session between the requesting web browser and the remote access control platform;
generating a browser identification inspector based on browser identifying data supplied by the requesting web browser, wherein generating the browser identification inspector includes selecting a combination of browser identification tests from a browser identification test bank;
transmitting the generated browser inspector to the requesting web browser for execution, wherein during an execution of the browser identification inspector at the requesting web browser, the browser identification inspector collects runtime environment data of the requesting web browser using the combination of browser identification tests and transmits the collected runtime environment data to the remote access control platform;
using the collected runtime environment data of the requesting web browser as input into a browser identifier module that:
(i) estimates a browser version and a browser type of the requesting web browser,
(ii) determines a browser identification sub-confidence score for each of the combination of browser identification tests, and
(iii) determines an overall browser identification confidence score based on aggregating the browser identification sub-confidence scores from the combination of browser identification tests; and
granting or denying access to the web application based on (a) the estimated browser version and the browser type of the requesting web browser and (b) the overall browser identification confidence score.

US Pat. No. 10,248,770

UNOBTRUSIVE VERIFICATION OF USER IDENTITY

Sensory, Incorporated, S...

1. A method comprising:creating, by a computing device, a first verification model for a user, the first verification model being based upon enrollment data that is collected via an explicit enrollment procedure and including a first set of biometric data for verifying an identity of the user;
verifying, by the computing device, the identity of the user a first time using the first verification model;
unobtrusively collecting, by the computing device, one or more reliable data streams associated with the user, wherein the one or more reliable data streams are collected while the identity of the user is verified the first time using the first verification model;
unobtrusively creating, by the computing device, a second verification model for the user, wherein the second verification model is based upon the one or more reliable data streams that are collected while the identity of the user is verified the first time using the first verification model, wherein the second verification model includes a second set of biometric data for verifying the identity of the user, and wherein the second set of biometric data included in the second verification model comprises biometric data of a different type than the first set of biometric data included in the first verification model;
unobtrusively collecting, by the computing device, one or more verification data streams from the user, the one or more verification data streams being separate from the enrollment data used to create the first verification model, and the one or more reliable data streams used to create the second verification model; and
verifying, by the computing device, the identity of the user a second time by applying the one or more verification data streams to the first and second verification models, wherein verifying the identity of the user the second time comprises:
receiving, by the computing device, a first verification result generated by a server remote from the computing device, the first verification result being generated by the server based on instances of the first and second verification models stored on the server;
comparing, by the computing device, the first verification result with a second verification result generated by the computing device based on instances of the first and second verification models stored on the computing device; and
if the first verification result generated by the server is consistent with the second verification result generated by the computing device, authorizing the user to perform a secured action on the computing device.

US Pat. No. 10,248,768

METHODS AND SYSTEMS FOR PROCESSING CONTENT RIGHTS

Comcast Cable Communicati...

1. A method comprising:receiving, from a license generation service of a plurality of license generation services, a request for an access decision associated with content, wherein the license generation service of the plurality of license generation services is associated with a license generation of a particular format;
determining, based on a compatibility between the content and the particular format and one or more requirements associated with at least one of the content, a user device, or a user associated with the user device, the access decision;
transmitting the access decision to the license generation service of the plurality of license generation services, wherein the access decision facilitates generating a license by the license generation service of the plurality of license generation services when the access decision indicates a granting of access rights, and wherein the access decision facilitates generating a denial of the license by the license generation service of the plurality of license generation services when the access decision indicates a denial of access rights; and
wherein the plurality of license generation services are remotely located from the user device.

US Pat. No. 10,248,767

LEVERAGING A UNIFICATION OF CONTENT HOSTING AND SOCIAL NETWORKING

Google LLC, Mountain Vie...

1. A method for accessing content, the method comprising:determining, using a hardware processor, that media content in a content request received from a first user account associated with a first user is designated as premium media content in which access privileges are needed to access the media content and that the first user account is not associated with the access privileges;
determining, using the hardware processor, that a relationship exists between the first user account associated with the first user and a plurality of additional user accounts associated with other users;
in response to determining that a relationship exists between the first user account associated with the first user and the plurality of additional user accounts associated with the other users, determining, using the hardware processor, whether a second user account associated with a second user from the plurality of additional user accounts has the access privileges needed to access the premium media content; and
causing, using the hardware processor, the premium media content to be presented on a device associated with the first user account associated with the first user in response to the second user account associated with the second user extending the access privileges to the first user account.

US Pat. No. 10,248,765

SYSTEMS, DEVICES, AND METHODS FOR BODILY FLUID SAMPLE COLLECTION, TRANSPORT, AND HANDLING

Theranos IP Company, LLC,...

1. A method for use with a bodily fluid sample from a subject, the method comprising:shipping a plurality of sample containers from a first location to a second location, wherein each of said sample containers contains a microsample of about 500 uL or less and wherein interior volume of each of the sample containers is about 600 uL or less,
wherein shipping of the plurality of samples containers is accomplished using a first frame sized to fit in a shipping container, said first frame comprises a plurality of openings each sized and shaped to engage at least one of the sample containers and hold the sample containers in a desired orientation;
obtaining data from each of the sample containers;
providing a plurality of processing frames at the second location;
using said data from the sample containers to determine which of said processing frames receive which of said sample containers and provide sorting information for the sample containers; and
moving said sample containers from the shipping frame to the processing frame based on data provided by the sample containers and based on said sorting information; and
handling the processing frame to simultaneously process the sample containers in the processing frame.

US Pat. No. 10,248,741

METHOD FOR EQUALIZING THE DISTORTION CAUSED BY LOSSES IN COUPLINGS IN A MICROWAVE FILTER AND A FILTER PRODUCED WITH SAID METHOD

THALES, Courbevoie (FR)

1. A method for producing a microwave filter having an equalized transfer function, the method comprising the steps of:designing with a processor an initial transfer function of a microwave filter,
calculating, with the processor, poles pi of said designed initial transfer function,
modifying, with the processor, values of said poles pi with a predetermined amount ai, so as to produce an asymmetric displacement of the poles along a real axis of a complex plane, said predetermined amount ai being calculated as a function of a quality factor Qk of couplings between adjacent resonators of the microwave filter so as to compensate for an effect of losses in couplings between adjacent resonators of the microwave filter,
calculating with the processor a modified transfer function from said initial transfer function and said modified poles pi-ai, and
producing a microwave filter comprising resonators from said modified transfer function.

US Pat. No. 10,248,730

STATISTICAL METHOD AND APPARATUS FOR WEBPAGE ACCESS DATA

BEIJING GRIDSUM TECHNOLOG...

1. A statistical method for webpage access data, comprising:collecting an initial dataset of page access behaviours of a user, wherein the initial dataset comprising one or more initial page view data, the initial page view data for the user to access the target site data;
extracting first-time access data of the user from the initial dataset;
judging the first-time access data by using a pre-set judgement model to obtain a judgement result;
performing dating-back matching in the initial dataset by using the first-time access data to obtain associated access data when the judgement result is contrary to a pre-set result of the pre-set judgement model; and
splicing and repairing the initial dataset based on the associated access data to obtain a repaired dataset;
wherein performing dating-back matching in the initial dataset by using the first-time access data to obtain the associated access data comprises:
filtering the initial PV (page view) data identical to an Internet Protocol (IP) of the first-time access data and a browser Identifier (ID) from the initial dataset;
comparing initial access time of the initial PV data with first-time access time of the first-time access data;
saving the initial PV data into an access data set if the initial access time is earlier than the first-time access time; and
extracting the initial PV data of which the initial access time is the latest from the access data set, and taking the initial PV data of which the initial access time is the latest as the associated access data;
wherein the step of splicing and repairing the initial dataset based on the associated access data to obtain the repaired dataset comprises:
extracting all initial PV data of the user from the initial dataset;
combining all initial PV data of the user and the associated access data to obtain repaired access data; and
repairing the initial dataset by using the repaired access data to obtain the repaired dataset.

US Pat. No. 10,248,720

SYSTEMS AND METHODS FOR PREPARING RAW DATA FOR USE IN DATA VISUALIZATIONS

Tableau Software, Inc., ...

8. A method of preparing data for use in data visualizations, comprising:at a computing device having one or more processors and memory storing one or more programs configured for execution by the one or more processors:
receiving a first indication from a user that a first data column within a data source contains integer-only values representing unformatted dates;
determining a minimum value and a maximum value of the integer-only values in the first data column;
matching the integer-only values in the first data column to a first date format based on a determination that a range of values associated with the first date format includes the minimum value and the maximum value of the integer-only values in the first data column;
selecting a sample of the integer-only values in the first data column and applying the first date format to each integer-only value within the sample of the integer-only values to produce a respective formatted date;
applying the first date format to each integer-only value of the integer-only values in the first data column to produce a respective formatted date;
storing, in the data source, each formatted date in a first new data column in a respective row corresponding to the respective integer-only value;
displaying a schema information region in a data visualization user interface, wherein the schema information region includes a field name of the first new data column; and
displaying a data visualization in the data visualization user interface including at least one formatted date based on user selection of the field name of the first new data column from the schema information region.

US Pat. No. 10,248,713

TIME SERIES ANALYSIS USING A CLUSTERING BASED SYMBOLIC REPRESENTATION

Business Objects Software...

1. A computer-implemented method performed by at least one processor, the method comprising:receiving, by the at least one processor, time series data that includes a plurality of time series;
determining, by the at least one processor, a time window matrix that includes the plurality of time series each divided into a plurality of subsequences;
executing, by the at least one processor, a clustering algorithm to determine clusters, each of the clusters including a set of subsequences that represent a similar pattern among the subsequences of the plurality of time series;
modifying, by the at least one processor, the time window matrix by replacing one or more data elements of the time window matrix with one or more symbols that each correspond to a cluster; and
employing, by the at least one processor, the modified time window matrix to determine one or more discretized time series with a symbolic representation;
employing, by the at least one processor, the symbolic representation of the one or more time series to determine at least one prediction regarding the time series data.

US Pat. No. 10,248,707

REPLICATING DATABASE UPDATES WITH BATCHING

INTERNATIONAL BUSINESS MA...

1. A computer-implemented method, comprising:determining, by a computer processor, a minimum batching percentage for a source table;
determining, by the computer processor, a change threshold based on the minimum batching percentage;
detecting, by the computer processor, a source update applied to the source table, wherein the source table comprises a plurality of columns, and wherein the source update modifies a first subset of columns of the plurality of columns;
determining, by the computer processor, a second subset of columns of the plurality of columns, wherein the second subset of columns comprises more columns than the first subset of columns and fewer columns than the plurality of columns, wherein the determining the second subset of columns comprises determining which of the plurality of columns were updated most recently, and wherein a respective tracking count of each column in the second subset of columns is less than or equal to the change threshold;
including, by the computer processor, the second subset of columns in a set clause of an update statement for updating a target table, wherein the second subset of columns included in the set clause comprise more columns than the first subset of columns modified by the source update, wherein the second subset of columns comprise fewer columns than the plurality of columns in the source table, and wherein the target table comprises a replica of the source table; wherein the change threshold is a number of times a column that has been updated at least once and is allowed to be unchanged by an update before the column is not included in the set clause; and
updating, by the computer processor, one or more columns of the target table responsive to the source update at the source table by applying the update statement to the target table to achieve at least the minimum batching percentage within a plurality of update statements, wherein the applying the update statement comprises batching the update statement with a set of one or more previous update statements applicable to the target table, and wherein the minimum batching percentage is a guaranteed minimum percentage of update statements batched together when the plurality of update statements are performed in sequence, uninterrupted by other database operations.

US Pat. No. 10,248,704

SYSTEM AND METHOD FOR LOG CONFLICT DETECTION AND RESOLUTION IN A DATA STORE

Amazon Technologies, Inc....

1. A system, comprising:a plurality of computing nodes, each comprising at least one processor and memory, wherein the plurality of computing nodes is configured to implement a data storage service;
wherein the data storage service maintains data on behalf of one or more storage service clients, wherein maintaining the data comprises storing two or more replicas of the data on respective computing nodes in the system, wherein the two or more replicas make up a replica group, wherein at most one of the replicas in the replica group can act as a master replica for the replica group at a time, and wherein replicas in the replica group that are not acting as the master replica act as slave replicas in the replica group;
wherein one of the replicas in the replica group is configured to:
receive a log record to be appended to a log maintained by the replica, wherein the log comprises a plurality of log records, wherein each log record indicates an update to the data being maintained on behalf of the storage service clients or an update to the membership of the replica group, and wherein each log record comprises metadata associated with the update or the replica group that receive log records from the master replica, wherein the metadata comprises:
a sequence number that was assigned to the log record when the log record was generated and that comprises a value in a strictly increasing series; and
a master reign identifier indicating a reign of a particular master replica over the replica group when the log record was generated;
compare metadata for the received log record to metadata for one or more other log records in the log to determine a conflict in master reign between the received log record and the one or more other log records;
determine an action to be taken in response to receiving the log record dependent on results of the comparison, wherein the action resolves the determined conflict; and
take the determined action.

US Pat. No. 10,248,703

SYSTEM AND METHOD FOR CLUSTER-WIDE REPLICATION OF EMBEDDED COMPONENT CONFIGURATION

ORACLE INTERNATIONAL CORP...

1. A system for cluster-wide replication of embedded component configuration, comprising:a computer including a processor;
a host application server that includes a configuration replication logic and deployment interface, and one or more embedded components, each embedded component having an original configuration associated therewith;
wherein the system receives input to modify the original configuration of a particular embedded component provided at the host application server, and cause a configuration state change for the particular embedded component at the host application server;
wherein, at the host application server, the configuration replication logic and deployment interface:
determines, in response to the changed configuration state of the particular embedded component, one or more configuration commands to be executed at a target application server having the particular embedded component, to provide an equivalent change in configuration of the particular embedded component at the target application server, and
packages, within a configuration archive, each of the one or more configuration commands as a command payload, associates the command payloads with an order in which the commands were executed at the host application server, and distributes the configuration archive including the command payloads to the target application server; and
wherein, at the target application server, a listener, upon receipt and deployment of the configuration archive:
extracts the command payloads, and
invokes the associated configuration commands on the particular embedded component at the target application server, in the order the commands were executed at the host server, to modify the configuration of the particular embedded component at the target application server.

US Pat. No. 10,248,702

INTEGRATION MANAGEMENT FOR STRUCTURED AND UNSTRUCTURED DATA

International Business Ma...

1. A computer-implemented method for structured data and unstructured data integration management to provide a valid Java Database Connectivity (JDBC) results-set, the method comprising:receiving, by a database driver, a query, wherein the query is received from an application configured without an unstructured data adapter;
constructing, in a dynamic fashion by the database driver in response to receiving the query, a single data frame having both a set of structured data and a set of unstructured data;
compiling, by the database driver based on the single data frame, a valid JDBC results-set for the query; and
providing, by the database driver, a query response having the valid JDBC results-set wherein the query response is provided to the application configured without the unstructured data adapter.

US Pat. No. 10,248,699

QUESTION ROUTING FOR USER COMMUNITIES

International Business Ma...

1. A system comprising:a computing device having a processor; and
a computer readable storage medium having program instructions embodied therewith, the program instructions readable/executable by the processor to cause the system to perform a method, the method comprising:
determining, for a current question presented by an asking user and for a plurality of existing questions within a plurality of online communities that each has a plurality of users contributing answers to the plurality of existing questions, a plurality of question-to-question similarity values;
determining, for the current question presented by the asking user and of the plurality of users contributing answers, a plurality of question-to-user similarity values, the question-to-user similarity values includes scoring the question-to-user similarity based at least on determining how many communities one or more of the plurality of users are members of;
determining, for the current question presented by the asking user and the plurality of online communities, a plurality of question-to-community similarity values;
selecting one or more of the plurality of online communities based on the plurality of question-to-question similarity values, the plurality of question-to-user similarity values and the plurality of question-to-community similarity values; and
routing the current question presented by the asking user to the selected one or more of the plurality of online communities.

US Pat. No. 10,248,698

NATIVE APPLICATION SEARCH RESULT ADJUSTMENT BASED ON USER SPECIFIC AFFINITY

Google LLC, Mountain Vie...

12. A system, comprising:a data processing apparatus; and
software stored in non-transitory computer readable storage medium storing instructions executable by the data processing apparatus and that upon such execution cause the data processing apparatus to perform operations comprising:
receiving a search query submitted from a user device for a search operation;
accessing application affinity data for the user device from which the query was received, the application affinity data describing, for a plurality of native applications installed on the device, an affinity score for the native application that measures the user's affinity for the native application relative to other native applications, and wherein the application affinity data is received responsive to a reporting process that is separate from the search operation;
receiving a set of search results that each identify a respective resource determined to be responsive to the query, and wherein each of the identified resources has a corresponding search score by which the resource is ranked in responsiveness to the search relative to other resources, and wherein one or more of the search results are a native application search results that each include a deep link to a respective one of the native applications installed on the user device from when the query was received;
for each of the native application search results, determining the affinity score of the native application, the determining the affinity score comprising:
determining, from usage data received from the user device, a first time measure that is inclusive of usage time of a plurality of native applications installed on the user device;
for each native application of the plurality of native applications installed on the user device:
determining, from the reporting data received from the user device, a respective second time measure for the native application on the user device;
determining a relative engagement measure for the native application based on the respective second time measure and the first time measure; and
determining the affinity score of the native application based on the relative engagement measure determined for the native application;
adjusting the search results based on the affinity scores to generate an adjusted set of search results; and
providing, to the user device, the adjusted search results.

US Pat. No. 10,248,697

METHOD AND SYSTEM FOR FACILITATING INTERACTIVE REVIEW OF DATA

RAYTHEON COMPANY, Waltha...

1. A method for facilitating interactive review of image data, comprising:receiving a plurality of examples of a target associated with a set of image data, wherein the image data comprises pixels;
comparing the plurality of examples of the target to the set of image data to identify a plurality of potential matches based upon pixels of the target data and the pixels of the set of image data;
assigning, for each respective potential match, a priority value to the respective potential match based on a comparison of the plurality of examples of the target to the respective potential match;
displaying the plurality of potential matches in a first display area, wherein the first display area organizes the plurality of potential matches according to the priority value assigned to each respective potential match;
receiving a selection of at least one of the plurality of potential matches displayed in the first display area; and displaying, in response to the selection, the selected potential matches in a second display area,
wherein displaying the selected potential matches in the second display area comprises at least one of (i) enlarging the potential matches and displaying the potential matches in the second display area while maintaining a relative spatial relationship between the potential matches, or (ii) displaying any two of the potential matches at a second distance that is shorter than a first distance at which the two potential matches are displayed in the first display area, while maintaining a relative spatial relationship between the potential matches, and
wherein displaying the selected potential matches in the second display area further comprises displaying an image for each selected potential match, receiving a command associated with modifying a display attribute associated with the images, and modifying, in response to the command, the display attribute associated with the images.

US Pat. No. 10,248,696

METHODS AND SYSTEMS FOR SEARCHING ENTERPRISE DATA

Cisco Technology, Inc., ...

1. A method for searching for data, comprising:(a) accessing a data storage unit comprising data, wherein at least a subset of said data is associated with a user that is in an organization;
(b) identifying connections that associate (i) data in said subset with said user, (ii) data in said subset with other data in said data storage unit, which other data is associated with one or more other users that are in said organization, (iii) said user with said one or more other users, and (iv) said user with said other data;
(c) using a computer processor, assigning an initial resistance value to each connection identified in (b), which the initial resistance value is based on and inversely related to a strength of association between data and/or users associated with a given connection among said connections identified in (b);
(d) generating a resistance graph identifying (i) said user, subset of said data, at least a portion of said other data and said one or more other users, and (ii) said connections identified in (b), said resistance graph containing connections in series and parallel;
(e) modifying the initial resistance value of each connection identified in (b) to produce a modified resistance value based on a frequency in which said user accesses said data in said subset, accesses said other data in said data storage unit, and communicates with said one or more other users;
(f) determining an overall resistance value (Req) of each connection based on the resistance graph and the modified resistance values (R1, . . . Rn), wherein the overall resistance value (Req) of connections in series is calculated by the relationship Req=R1+ . . . Rn, and the overall resistance value (Req) of connections in parallel is calculated by the relationship Req=1/{(1/R1)+ . . . (1/Rn)};
(g) conducting a search of said data storage unit directed to search criteria provided by said user; and
(h) providing results of said search, wherein said results are sorted based on said overall resistance values determined in (f).

US Pat. No. 10,248,694

BLOOM FILTER UTILIZATION FOR JOIN PROCESSING

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 storage media, the program instructions comprising:
program instructions to insert a bloom filter creation stage after an inner data source identification stage, wherein a join operation is to be performed to join an outer data source with the inner data source;
program instructions to, responsive to determining a plurality of optimization conditions are satisfied, wherein the plurality optimization conditions at least specify that the join operation does not have any additive stages between the inner data source and a join stage, determine to insert a first bloom filter search stage after an outer data source identification stage;
program instructions to insert the first bloom filter search stage after the outer data source identification stage, wherein each row of data from the outer data source is searched against a first bloom filter for the inner data source during the first bloom filter search stage;
program instructions to initialize a read on the inner data source, wherein a plurality of rows from the inner data source pass through to the join stage;
program instructions to, responsive to determining the bloom filter creation stage is complete, initialize a read on the outer data source against the first bloom filter, wherein the plurality of rows from the inner data source pass through to the bloom filter creation stage; and
program instructions to perform the join operation of the inner data source and the outer data source at the join stage.

US Pat. No. 10,248,693

MULTI-LAYERED ROW MAPPING DATA STRUCTURE IN A DATABASE SYSTEM

SAP SE, Walldorf (DE)

1. A method in a database system comprising a database server in communication with a database, the method comprising:receiving a first query from a client system via a network, the first query comprising a first key and a first operation to be performed on data stored in the database;
scanning an index of the database using the first key to obtain a row identifier for a row to be accessed in the database for the operation to be performed;
converting the row identifier of the row to be accessed in the database into a row address of the row in a first cache memory using a row mapping table comprising a multi-layer data structure stored in a memory of the database server, wherein the first cache memory is configured to store recently accessed rows of the database;
determining whether the row is located in the first cache memory based on the row address; and
performing the operation on the row and storing a result of the operation into the first cache memory at the row address when the row is located in the first cache memory,
wherein converting the row identifier into the row address of the row in the first cache memory comprises:
segmenting the row identifier into at least a first part and a second part;
performing a first comparison at a first layer data structure of the row mapping table, the first comparison comprising comparing bits of the first part of the row identifier with bits of a corresponding first part of the row address stored at the first layer data structure of the row mapping table;
performing a second comparison at a second layer data structure of the row mapping table, the second comparison comprising comparing bits of the second part of the row identifier with bits of a corresponding second part of the row address stored at the second layer data structure of the row mapping table; and
identifying the row address of the row in the first cache memory based on the first comparison and the second comparison.

US Pat. No. 10,248,692

CARDINALITY ESTIMATION OF A JOIN PREDICATE

International Business Ma...

1. A computer-implemented method comprising:receiving, by one or more computer processors, a dimension table and a fact table in a join predicate of one or more SQL statements;
identifying, by one or more computer processors, a majority of records in the fact table that refer to a subset of records in the dimension table;
computing, by one or more computer processors, a filter factor of the join predicate between the dimension table and the fact table, wherein computing the filter factor of the join predicate between the dimension table and the fact table is performed using statistics relating to only the portion of the dimension table referred to by the fact table, and wherein the statistics relating to only the portion of the dimension table referred to by the fact table are maximum and minimum values of a column in the dimension table; and
creating, by one or more computer processors, a statistical view of the dimension table using the maximum and minimum values as a range predicate on the dimension table's join column, and using one or more relevant portions of the dimension table that are referred to by the fact table, wherein the one or more relevant portions of the dimension table include DATE and TIMESTAMP dimensions.

US Pat. No. 10,248,691

READ/WRITE SPLIT DATABASE QUERY ROUTING

PAYPAL, INC., San Jose, ...

1. A database system, comprising:a database application cluster comprising a read-write node and a plurality of read nodes;
a shared memory; and
a multiplexer coupled to the database application cluster and shared memory, and comprising a non-transitory memory and one or more hardware processors coupled to the non-transitory memory and configured to read instructions from the non-transitory memory to cause the multiplexer to perform operations comprising:
receiving a request from a client computing system, wherein the request comprises a database query;
determining that the database query is a read query which is not included in a transaction executing on the read-write node of the database application cluster;
determining, based at least on a lookup in the shared memory and the determination that the database query is a read query not included in a transaction executing on the read-write node, whether the database query can be routed to one of the plurality of read nodes; and
routing the database query to one of the plurality of read nodes for execution if the determination is that the database query can be routed to one of the plurality of read nodes.

US Pat. No. 10,248,690

DECREMENTAL CORRELATION CALCULATION FOR BIG DATA OR STREAMED DATA USING COMPONENTS

1. A computing-system-implemented method for generating a correlation for data elements in two modified computation subsets, the method comprising:initializing, by a computing-device-based computing system, a computation subset size counter n (n?6) which indicates a number of pairs of data elements in two pre-modified computation subsets of one or two data sets on one or more storage media of the computing-device-based computing system or one or two data streams accessible by the computing-device-based computing system, a sum or an average or both for each of the two pre-modified computation subsets, and one or more other components of a correlation for the two pre-modified computation subsets;
accessing or receiving, by the computing-device-based computing system, a pair of data elements to be removed from the two pre-modified computation subsets;
modifying, by the computing-device-based computing system, the two pre-modified computation subsets by:
removing the accessed or received pair of data elements from the two pre-modified computation subsets; and
modifying the computation subset size counter;
decrementally deriving, by the computing-device-based computing system, a sum or an average or both for each of the two modified computation subsets;
directly decrementally deriving, by the computing-device-based computing system and based at least in part on the one or more components of the correlation other than a sum and an average initialized or derived for the two pre-modified computation subsets and/or the computation subset size counter, one or more components of a correlation other than a sum and an average for the two modified computation subsets, wherein the decrementally deriving includes:
accessing the one or more components of the correlation other than a sum and an average initialized or derived for the two pre-modified computation subsets without accessing all data elements in the two modified computation subsets to reduce data accessing latency thereby saving computing resources and reducing the computing-device-based computing system's power consumption; and
removing any contribution of the removed pair of data elements from each of the accessed components mathematically without using all data elements in the two modified computation subsets to reduce the number of operations performed by the computing-device-based computing system thereby increasing calculation efficiency; and
generating, by the computing-device-based computing system, a correlation for the two modified computation subsets based on one or more of the decrementally derived components.

US Pat. No. 10,248,689

SUPPLEMENTING CANDIDATE ANSWERS

International Business Ma...

1. A method for providing candidate answers in a question-answering system, the method further comprising:receiving a first user question at a first point in time;
receiving a second user question at a second point in time;
comparing a set of candidate answers for the first user question from a first question-answering session to one or more indexed question-answer sets of a database;
identifying, using both relationships of the database and natural language analysis of the first user question, a previous question-answer set of the indexed question-answer sets which correlates with a first candidate answer of the set of candidate answers,
wherein the identifying a previous question-answer set includes
identifying a first conceptual entity within the first candidate answer using natural language processing techniques,
identifying a first data point of a knowledge graph which corresponds to the conceptual entity, and
identifying a second data point of the knowledge graph which connects to the first data point based on association data from the natural language analysis, wherein the second data point corresponds to a second conceptual entity from the previous question-answer set;
adding the first user question and the first candidate answer to the database as a first question-answer set;
indexing the first user question and the first candidate answer in the database,
comparing a set of candidate answers for the second user question from a second question-answering session to one or more indexed question-answer sets of a database;
identifying, using both relationships of the database and natural language analysis of the question, the first question-answer set of the indexed question-answer sets as corelative to the second user question;
restructuring the first question-answer set to comprise the question rephrased as a statement, wherein the first candidate answer is embedded within the statement;
identifying elements of the first question-answer set that contain similar concepts to the second user question;
supplementing the statement with the elements; and
provide the supplemented statement to the user.

US Pat. No. 10,248,685

EFFICIENT DETERMINATION OF COMMITTED CHANGES

Oracle International Corp...

1. A method comprising:for a pluggable database that is open on a plurality of instances of a database, identifying a first current timestamp of said pluggable database for a first instance of said plurality of instances, wherein said pluggable database is open on said first instance;
as of said first current timestamp, computing a minimum value of one or more start timestamps that each correspond to an uncommitted transaction of said pluggable database on said first instance;
communicating, from said first instance to a second instance of said plurality of instances, said minimum value and said first current timestamp;
wherein said pluggable database is open on said second instance;
causing comparing said first current timestamp to a second current timestamp of said pluggable database that is open on said second instance:
when said first current timestamp is greater than said second current timestamp, causing said second current timestamp to become equal to said first current timestamp and causing said second instance to store said minimum value,
when said first current timestamp is equal to said second current timestamp, causing said second instance to store said minimum value, and
when said first current timestamp is less than said second current timestamp, causing said second instance to discard said minimum value and advancing said first current timestamp to said second current timestamp; and
wherein said method is performed by one or more computing devices.

US Pat. No. 10,248,684

INTELLIGENT VERIFICATION OF UPDATES TO PROFILE STORES FROM SOURCES OF TRUTH

INTUIT INC., Mountain Vi...

1. A method for managing synchronization between a profile store and a source of truth that is used to update the profile store via a real-time link, comprising:identifying a synchronization issue associated with the profile store due to a loss of communication over the real-time link;
following restoration of communication over the real-time link, selecting a profile for an entity in the profile store for use in verifying the synchronization between the profile store and the source of truth based on an access pattern that defines a set of profiles of the profile store to access based on previous updates to the set of profiles, wherein the profile selected is included in the access pattern;
obtaining, by a catch-up service executing on a processor, over a first network connection with the profile store, a first set of attributes from the profile, wherein the profile is transmitted to a set of remote offerings;
obtaining, by the catch-up service, over a second network connection with the source of truth, a second set of attributes for the entity from the source of truth, wherein the second set of attributes from the source of truth is transmitted to the set of remote offerings;
detecting mismatches between the first and second sets of attributes; and
correcting, via one or more Representational State Transfer (REST) calls, the mismatches between the first set of attributes and the second set of attributes, wherein correcting the mismatches improves subsequent use of the profile in the profile store by the set of remote offerings.

US Pat. No. 10,248,683

APPLICATIONS OF AUTOMATED DISCOVERY OF TEMPLATE PATTERNS BASED ON RECEIVED REQUESTS

Oracle International Corp...

1. A method comprising:in response to receiving a first request, identifying a first node in a model that represents a plurality of ordered template patterns followed by multiple previous requests, wherein the first node corresponds to a first template that represents a normalized version of the first request and one or more other requests, wherein the first request is mapped to the first template by removing one or more data values from the first request;
determining a predicted template pattern based on a probability of transitioning from the first node to one or more other nodes of a plurality of other nodes in the model, wherein the predicted template pattern is a particular ordered template pattern, of the plurality of ordered template patterns, that includes the first template and one or more other templates;
selecting a candidate node from the plurality of other nodes based on the predicted template pattern;
identifying a second template that corresponds to the candidate node, wherein the second template represents a normalized version of at least a second request, wherein the second request maps to the second template by removing one or more data values from the second request;
comparing the first template with at least the second template to determine an estimated cost for completing the first request and one or more other requests that follow the predicted template pattern;
generating an execution plan for the first request, wherein the execution plan is generated based on both the estimated cost for completing the first request and the one or more other requests that follow the predicted template pattern.

US Pat. No. 10,248,681

FASTER ACCESS FOR COMPRESSED TIME SERIES DATA: THE BLOCK INDEX

SAP SE, Walldorf (DE)

1. A computer-implemented method comprising:generating, by one or more processors of a data platform, an index vector based on a table stored in a database of the data platform, the table storing data associated with multiple sources of data provided as consecutive values, the index vector comprising index vector values corresponding to the consecutive values stored in the table;
generating, by the one or more processors, a plurality of blocks based on the index vector, at least one block of the plurality of blocks comprising index vector values corresponding to a range of the consecutive values, the block comprising a block number, a starting position of the block in the index vector, and a starting index vector value for the block;
generating, by the one or more processors, a block index for at least one block of the plurality of blocks, the block index stored in memory of a computing system in uncompressed form, the block index comprising a field start vector and, for an index vector value of the index vector, a list of block numbers containing the index vector value, the field start vector representing a starting position of a field corresponding to a first block that contains the index vector value;
compressing into a single entry, by the one or more processors, one or more fields of the block index based on values of the one or more fields, the compressing reducing size of the block index reducing memory consumption in the computing system;
accessing, by the one or more processors in response to a query to the data platform, the field start vector of the block index to obtain the starting position of the field corresponding to the first block without scanning entirety of the one or more compressed fields of the block index, increasing the computing systems access speed to timestamp data stored in the first block; and
transmitting, by the one or more processors to a source of the query, a response comprising the starting position of the first block that contains the index vector value.

US Pat. No. 10,248,680

INDEX MANAGEMENT

International Business Ma...

1. A computer-implemented method for managing an index associated with an online database, comprising:in response to a data refresh associated with the online database where each old data entry within a plurality of old data entries is deleted, saving the index including a plurality of index information associated with the deleted plurality of old data entries as the base for building a new index, wherein a plurality of nodes in the saved index are marked with a plurality of predefined flags as invalid indicating the plurality of nodes are associated with a plurality of index information of the old data entries that have been deleted from the database;
obtaining the saved index of the database;
selecting a node included in the saved index based on a key value in index information of a new data entry in response to the new data entry being inserted into the database, wherein the selecting the node included in the saved index comprises:
traversing the plurality of nodes based on the key value in the index information of the new data entry; and
selecting the node in response to a range of a parent of the node matching the key value in the index information of the new data entry; and
updating the selected node with the index information of the new data entry to build the new index, wherein a number of data entries associated with the deleted plurality of old data entries is similar to a number of new data entries inserted to build the new index.

US Pat. No. 10,248,678

ENABLING PLACEMENT CONTROL FOR CONSISTENT HASHING-BASED OBJECT STORES

International Business Ma...

1. A method for controlling object placement, comprising:receiving a first request to store a first object in an object store which includes a plurality of nodes, wherein the object store determines a placement of the first object in one of the plurality of nodes based on an object namespace, wherein the object namespace includes a numerical namespace and a lexicographical namespace, wherein each node is assigned a corresponding subspace of the object namespace for storing objects;
upon determining that the first object specifies both a first numerical namespace value and a first lexicographical namespace value:
generating a second object, wherein the second object is a replica of the first object;
storing the first object in a first node of the plurality of nodes based on the first lexicographical namespace value, wherein the first lexicographical namespace value specifies the first node; and
storing the second object in a second node of the plurality of nodes based on the first numerical namespace value;
receiving a second request to store a third object in the object store; and
upon determining that the third object specifies a second numerical namespace value and does not specify a lexicographical namespace value, storing the third object in a third node of the plurality of nodes based on the second numerical namespace value.

US Pat. No. 10,248,677

SCALING AN SSD INDEX ON A DEDUPLICATED STORAGE SYSTEM

EMC IP Holding Company LL...

1. A method for scaling an index on a solid state drive (“SSD”) in a deduplicated storage system, the method comprising:receiving an instruction to write an in-memory hash table to the SSD, wherein the in-memory hash table comprises in-memory hash buckets containing a first set of fingerprint to logical container mappings, each mapping representing an association between a fingerprint and a logical container, wherein the logical container contains a data segment for the fingerprint;
merging the in-memory hash table with a cache hash table on the SSD, wherein the cache hash table comprises cache hash buckets containing a second set of fingerprint to logical container mappings, each cache hash bucket including a capacity limit, wherein the in-memory hash table is non-persistent, the merging further comprising:
determining that a combined capacity of the cache hash buckets in the cache hash table is to reach a predetermined threshold due to the merging of the in-memory hash table with the cache hash table;
determining that additional SSD capacity is available to the deduplicated storage system;
scaling the cache hash table using a scale factor to increase the number of cache hash buckets in the cache hash table;
mapping the in-memory hash buckets to the cache hash buckets in the cache hash table, wherein the mapping includes identifying a corresponding cache hash bucket for each in-memory hash bucket based on an identifier of the in-memory hash bucket, the scale factor, and a hash value for a fingerprint in the in-memory hash bucket, wherein the hash value is different from a hash value used to map the fingerprint to the in-memory hash bucket; and
inserting a fingerprint to logical container mapping into at least one of the cache hash buckets mapped to the in-memory hash buckets; and
writing the cache hash table to the SSD.

US Pat. No. 10,248,675

METHOD AND APPARATUS FOR PROVIDING REAL-TIME MONITORING OF AN ARTIFICAL NEURAL NETWORK

University of Tennessee R...

1. Apparatus for configuring a neuromorphic network comprising an artificial neural network for implementing a solution to one of a control, detection or classification application, the artificial neural network comprising:an artificial neural network configuration structure, an interface and control structure for connecting a two-dimensional array to an external process and the configuration structure and interface and control structure connected to a control and optimizing device for configuring the two-dimensional array, the two-dimensional array comprising addressable circuit elements and the neuromorphic network for optimizing the configuration of the two-dimensional array and for controlling connection to the external process;
the two-dimensional array of interconnected, addressable circuit elements, the two-dimensional array comprising X columns and Y rows of circuit elements where X and Y are integers greater than one, the interconnection of circuit elements of the multi-dimensional array being programmable by a special purpose computer program to implement a solution to one of the control, detection and classification application of the neuromorphic network for use with the external process,
each circuit element having the same components,
each circuit element addressably configured by the configuration structure, interface and control structure and optimizing device responsive to the external process, under special purpose program control, as selectively operating as one of a neuron and a synapse function or used as a pass-thru circuit element or excluded from the artificial neural network,
under special purpose program control, at least one circuit element of the array selectively configured as one of an input neuron and an output neuron at an edge of the two-dimensional array for internal array connection and external process connection, and,
under program control, one to multiple circuit elements of the two-dimensional array selectively operating as the neuron circuit element or the synapse circuit element being connected between the input neuron at the edge of the array or the synapse circuit element and the output neuron at the edge of the array or the synapse circuit element,
the circuit elements formed in an array of rows and columns with signal lines connecting addressably programmable circuit elements oft least two of the Y rows of programmably selected circuit elements and signal lines connecting at least two of the X columns of programmably selected circuit elements to provide monitoring of the selectively configured two-dimensional array of programmably addressed circuit elements having one of a programmable neuron and a programmable synapse function, certain of the programmably addressable circuit elements used as a pass-thru circuit element or others excluded from the artificial neural network comprising the neuromorphic network,
a given addressed circuit element of the neuromorphic network performing one of a neuron and a synapse function at a particular row and column number selectively reporting its output to an output register of a monitoring circuit at the same particular row and column number when a value is stored in a read register of the monitoring circuit for monitoring of the programmably addressed circuit element of the artificial network array of the neuromorphic network of the at least two of the X columns and Y rows of programmably addressed circuit elements interconnected to implement one of a control, detection and classification application responsive to the external process, the programmably addressed circuit elements of the neuromorphic network being configurable to implement either a neuron or a synapse function, the configuration of programmable addressed circuit elements being addressably configurable and optimized by the control and optimizing device.

US Pat. No. 10,248,673

ALLOCATING FREE SPACE IN A DATABASE

International Business Ma...

1. A computer-implemented method for allocating free space in a database table associated with a relation database managed by a relational database management system, the method comprising:receiving statistics associated with records in a database table, including an average record byte size for records stored in the database table;
receiving a database operation, wherein the received database operation comprises an insertion operation, a deletion operation, and an update operation;
determining a primary free space byte size for record updates, wherein determining the primary free space byte size for record updates comprises comparing a preliminary free space byte size to the average record byte size and a byte size of a subject record, and wherein the subject record is subjected to the received database operation;
in response to determining that the received database operation is an insertion operation, increasing the preliminary free space byte size based on a first difference in byte size between the average record byte size and the byte size of the subject record, and wherein the byte size of the subject record is less than the average record byte size;
in response to determining that the received database operation is a deletion operation, decreasing the preliminary free space byte size based on a second difference in byte size between the average record byte size and the byte size of the subject record, and wherein the byte size of the subject record is less than the average record byte size;
in response to determining that the received database operation is an update operation that changes a record byte size, increasing or decreasing the preliminary free space byte size, based on the update increasing or decreasing the record byte size, respectively, based on a third difference in byte size between the average record byte size and the byte size of the subject record, and wherein the byte size of the subject record is less than the average record byte size; and
allocating free space at a page level of the database table based on the primary free space byte size.

US Pat. No. 10,248,671

DYNAMIC MIGRATION SCRIPT MANAGEMENT

Oracle International Corp...

1. A method comprising:receiving one or more indications of a plurality of migration scripts to be executed to perform a migration of a database system from a source server system to a target server system, wherein the source server system is online and processing database requests during the migration of the database system;
determining, based on one or more factors, an execution order in which the plurality of migration scripts are to be initialized for execution;
identifying one or more first migration scripts of the plurality of migration scripts based on the execution order;
initiating execution of the one or more first migration scripts to commence the migration of the database system;
identifying one or more second migration scripts of the plurality of migration scripts scheduled to initiate execution after the one or more first migration scripts based on the execution order;
monitoring one or more processing resources available to the source server system and/or the target server system;
determining that the one or more processing resources are above a first threshold but below a second threshold;
initiating execution of one or more third migration scripts of the plurality of migration scripts out-of-order from the execution order to continue the migration of the database system based on determining that the processing resources are above the first threshold but below the second threshold, the one or more third migration scripts being initiated for execution before the one or more second migration scripts; and
rescheduling the one or more second migration scripts to be initiated for execution after the one or more third migration scripts.

US Pat. No. 10,248,669

METHODS AND DEVICES FOR CUSTOMIZING KNOWLEDGE REPRESENTATION SYSTEMS

PRIMAL FUSION INC., Kitc...

1. A method comprising:using at least one processor to perform:
providing, to a first set of one or more users, access to a first semantic network;
providing, to a second set of one or more users, access to a second semantic network, wherein at least a second subset of the second semantic network has a same topology as at least a first subset of the first semantic network; and
in response to identifying information corresponding to the second set of one or more users, modifying the second semantic network based, at least in part, on the information corresponding to the second set of one or more users by adding to the second semantic network one or more first elements not included in the first semantic network and/or removing from the second semantic network one or more second elements included in the first semantic network,
wherein each of the one or more first and second elements comprises a concept or a relationship, and
wherein the first and second semantic networks are implemented as computer-readable data structures, and wherein modifying the second semantic network is performed by one or more processors executing computer-readable instructions.

US Pat. No. 10,248,667

PRE-FILTERING IN A MESSAGING PLATFORM

TWITTER, INC., San Franc...

1. A computer-implemented method comprising:receiving, from a client device accessing a real-time messaging platform using a first account of a plurality of accounts, one or more signals indicating a request for a message stream, wherein the first account is associated with one or more account features;
identifying a set of two or more candidate messages each associated with one or more message features;
selecting, based on a machine learning model, a subset of features that includes at least one of the one or more message features and at least one of the one or more account features, wherein only message features and account features included in the subset of features are used to preliminarily evaluate the candidate messages in the set of two or more candidate messages, thereby reducing an amount of processing needed to preliminarily select candidate messages for inclusion in the message stream, wherein the subset of features includes fewer features than a total of the one or more account features and the one or more message features;
determining, based on the machine learning model and ranking data representing past rankings of candidate messages for the plurality of accounts, account ranking weights for the at least one of the one or more account features associated with the first account and that are included in the subset of features, the past rankings used to select one or more candidate messages to present in message streams associated with the plurality of accounts;
for each candidate message of the set of two or more candidate messages:
determining, based on the ranking data and the machine learning model, message ranking weights for the at least one of the one or more message features associated with the candidate message that are included in the subset of features;
determining, by a processor, a value representing a likelihood of the candidate message ranking above a ranking threshold for the first account, the likelihood based at least on the message ranking weights and the account ranking weights; and
in response to the determined value being less than a threshold likelihood value, removing the candidate message from the set of two or more candidate messages to generate a set of remaining candidate messages;
selecting at least one of the set of remaining candidate messages for inclusion in a message stream of the first account; and
sending the message stream to the client device for display on the client device, wherein the message stream includes the selected at least one candidate message of the set of remaining candidate messages.

US Pat. No. 10,248,666

CREATION OF HIERARCHICAL DICTIONARY

Hewlett-Packard Developme...

1. A method of creating a hierarchical dictionary comprising, with a processor:extracting, by a processor, a plurality of symbols from a first image;
constructing, by the processor, a plurality of refinement dictionary entries based on the symbols, the plurality of refinement dictionary entries forming a refinement dictionary;
grouping, by the processor, the plurality of refinement dictionary entries into clusters to form a plurality of refinement dictionary entry clusters;
constructing, by the processor, a plurality of direct dictionary entries for each of the refinement dictionary entry clusters, the plurality of direct dictionary entries forming a direct dictionary, wherein the direct dictionary is formed by encoding unmatched refinement dictionary entries using the refinement dictionary;
constructing, by the processor, a stored dictionary by combining the refinement dictionary and the direct dictionary, wherein the refinement dictionary and the direct dictionary are created from a plurality of previous images before a subsequent image;
creating, by the processor, additional dictionary entries for each page within a multi-page document resulting in a larger dictionary for each page;
measuring, by the processor, information redundancy between the dictionary entries; and
combining, by the processor, the direct dictionary, the refinement dictionary, and the stored dictionary.

US Pat. No. 10,248,662

GENERATING DESCRIPTIVE TEXT FOR IMAGES IN DOCUMENTS USING SEED DESCRIPTORS

Google LLC, Mountain Vie...

1. A method performed by data processing apparatus, the method comprising:identifying a set of one or more seed descriptors for a given image in a given document;
for each seed descriptor:
identifying a location of at least one word of the seed descriptor in the given document by comparing each word of the seed descriptor to text included in the given document;
in response to identifying the location of the at least one word of the seed descriptor in the given document, generating one or more templates for the given image and the seed descriptor, each template including:
image location information specifying a location of the given image within the given document;
document structure information specifying a structure of the given document with respect to the given image and the seed descriptor, including a location of a given string of text that includes the at least one word of the seed descriptor within the given document with respect to the location of the given image within the given document;
image feature information specifying one or more feature values for one or more image features of the given image, each feature value representing a respective visual characteristic of the given image or data regarding an image file in which the given image is stored; and
for each generated template:
identifying a set of one or more documents that each have (i) an image that has at least one image feature that matches a corresponding image feature of the given image specified by the generated template and (ii) a string of text in the document that is located at a same location with respect to the image as the location of the given string of text with respect to the given image specified by the generated template; and
for each document in the set of documents:
generating descriptive text for the image of the document using the generated template and the document; and
associating the descriptive text with the image.

US Pat. No. 10,248,658

ANALYTICS AND DEDUPLICATION FOR AIR-GAPPED LOG ANALYSIS

International Business Ma...

1. A computer program product for data storage management, the computer program product comprising a computer readable storage medium having program instructions embodied therewith, the program instructions executable by a processor to cause the device to perform a method comprising:capturing an image of at least one log entry, wherein the image of the at least one log entry is a still image;
encrypting the image of the at least one log entry;
converting text in the image of the at least one log entry to machine-encoded text;
encrypting the machine-encoded text of the at least one log entry;
scanning the machine-encoded text for at least one redundant copy of the at least one log entry;
removing the at least one redundant copy of the at least one log entry;
determining if the at least one log entry is significant, wherein the determining determines that the at least one log entry is significant if a number of the at least one redundant copy of the a least one log entry is greater than a threshold number of redundant copies of log entries in a designated time span;
flagging the at least one log entry if the at least one log entry is significant; and
alerting a user if the at least one log entry is flagged.

US Pat. No. 10,248,656

REMOVAL OF REFERENCE INFORMATION FOR STORAGE BLOCKS IN A DEDUPLICATION SYSTEM

INTERNATIONAL BUSINESS MA...

1. A method for managing data in a data storage having data deduplication, comprising:under control of a processor and memory having executable instructions, performing:
for a back reference data structure incorporating reference information for at least one user data segment to a storage block, removing, by the processor, a user data segment identification (ID) representative of the at least one user data segment from the back reference data structure, the storage block being associated with both a reference counter and the user data segment ID of the back reference data structure; wherein the removal of the user data segment ID is performed in response to determining that the at least one user data segment no longer references the storage block caused by failed data, thereby maintaining the back reference data structure so as to facilitate an efficient search operation for recovering or reclaiming the failed data within the data storage;
configuring the back reference data structure by partitioning the back reference data structure as form type bits specifying a type of the ID representative of the at least one user data segment, and storage bits storing the ID of a representation of the ID thereof;
defining a plurality of form types corresponding to the form type bits;
defining a first form type structure incorporating a full representation of the ID of the at least one user data segment to be stored in the back reference data structure;
storing the defined first form type structure in the back reference data structure;
defining second, intermediate form type structures implementing a hashed form of the at least one user data segment ID to be stored in the back reference data structure;
storing the defined second, intermediate form type structures in the back reference data structure;
defining a third form type structure implementing a representation of the at least one user data segment ID as a bit bucket in a hash table of the at least one user data segment to be stored in the back reference data structure; and
storing the third form type structure in the back reference data structure; wherein a total number of the at least one user data segment ID increases as a bit per ID correspondingly decreases when migrating from the first form type through the second form types to the third form type.

US Pat. No. 10,248,655

FILE STORAGE SYSTEM, CACHE APPLIANCE, AND METHOD

Avere Systems, Inc., Pit...

1. A network file system comprising one or more processors and memory storing executable instructions which, when executed by the one or more processors configure the network file system with an architecture for managing cache appliances used for storing data, wherein the cache appliances are managed using a synchronization mechanism that ensures that all references to a cached file are up-to-date, even when a file is written through multiple cache appliances concurrently, and wherein the configured network file system comprises:a plurality of backend servers in which data is stored;
a plurality of token servers that each control access to the stored data using stored tokens, wherein the tokens are used to ensure cache coherence when data is updated at a cache appliance, and wherein the stored tokens comprise:
a write data token for files stored in the backend server, and wherein the write data token ensures that no two write data tokens are granted over a single byte of any same file;
a write attribute token for files stored in the backend server, and wherein the write attribute token ensures that no two write attribute tokens are granted for the same file;
ownership tokens that allow a given cache appliance to read data from another cache appliance; and
wherein each token server is configured to revoke an already granted write data token or a write attribute token by recalling the granted write data token or write attribute token if a new write data token or a new write attribute token is requested by a cache appliance and is incompatible with the already granted write attribute token or the already granted write data token, so that cache coherence is provided;
a plurality of cache appliances, wherein each cache appliance comprises:
a cache manager module which executes a client request to access stored data, wherein the request is executed by obtaining one or more tokens from a particular token server and accessing cache attributes and cache data in accordance with the one or more obtained tokens;
a token client module which determines the particular token server that is to be accessed when obtaining the tokens in response to the client request for access to the stored data; and
an NFS client module which sends calls for stored data to any of the backend servers, wherein the ownership tokens allow the given cache appliance to read data from another cache appliance associated with any of the backend servers.

US Pat. No. 10,248,654

VIRTUAL MACHINE OBJECT VERSION CONTROL

Nutanix, Inc., San Jose,...

1. A method for implementing a virtual machine snapshot index in a virtualization environment, the method comprising:receiving an initiation signal that initiates sending of at least one quiescence request to at least one user virtual machine;
quiescing the at least one user virtual machine by at least transmitting the at least one quiescence request to the at least one user virtual machine;
confirming that the at least one user virtual machine is quiesced based on at least receipt of an acknowledgement signal from the at least one user virtual machine, the acknowledgement signal indicating that the at least one user virtual machine has quiesced;
requesting and receiving a set of virtual machine attribute values from the at least one user virtual machine while the at least one user virtual machine is quiesced;
generating a volume index data structure comprising at least some of the set of virtual machine attribute values received from the at least one user virtual machine while the at least one user virtual machine is quiesced; and
storing the volume index data structure comprising the at least some of the set of virtual machine attribute values received from the at least one user virtual machine while the at least one user virtual machine is quiesced.

US Pat. No. 10,248,652

VISUAL WRITING AID TOOL FOR A MOBILE WRITING DEVICE

Google LLC, Mountain Vie...

1. A computer-implemented method of providing a visual writing aid in a second language, comprising:obtaining, by one or more computing devices, data descriptive of a first set of information, wherein the first set of information is presented in a first language;
determining, by the one or more computing devices, a translation of the first set of information to a second language;
presenting, by the one or more computing devices, a visual representation of the translation of the first set of information in the second language via a display device;
obtaining, by the one or more computing devices, data descriptive of a second set of information, wherein the second set of information comprises a transcription of at least a portion of the translation of the first set of information in the second language, the transcription generated by a user of a mobile writing device via the mobile writing device; and
determining, by the one or more computing devices, whether the second set of information corresponds to the visual representation of the translation of the first set of information in the second language, whereby user aid in transcribing the translation is promoted.

US Pat. No. 10,248,650

IN-CONTEXT EXACT (ICE) MATCHING

SDL Inc., Wakefield, MA ...

1. A method for determining an in-context exact (ICE) match from context matching levels of a plurality of source texts stored in a translation memory to a lookup segment to be translated, the method comprising:generating a preceding usage context hash code for a preceding segment, based on a text stream for the preceding segment next to the lookup segment;
generating a post usage context hash code for a post segment, based on a text stream for the post segment next to the lookup segment;
determining any exact matches for the lookup segment in the plurality of translation memory source texts;
calculating for each exact match a context matching level based on:
a match between the preceding usage context hash code for the lookup segment and a preceding usage context hash code generated for a segment of a translation memory source text, and
a match between the post usage context hash code for the lookup segment and a post usage context hash code generated for the segment of the translation memory source text; and
determining, for each exact match, if the segment of the translation memory source text providing the exact match is an ICE match for the lookup segment based on the calculated context matching level.

US Pat. No. 10,248,647

STYLE EXTENSIBILITY APPLIED TO A GROUP OF SHAPES BY EDITING TEXT FILES

MICROSOFT TECHNOLOGY LICE...

1. A system for providing style extensibility in a diagram, the system comprising:a semantic model in the form of a text-based tree diagram of lines of text entered by a user that create and define elements in the diagram and hierarchical relationships between each of the elements of the diagram, wherein a hierarchical level for each of the elements within the diagram is based on a position of each line of text entered by the user within the semantic model, and wherein each element that is located on a different line in the semantic model is displayed as a different element within the diagram determined from the semantic model;
a style label assigned to each of the elements of the diagram based on the hierarchical level of each of the elements within the semantic model of the defined hierarchical relationships such that each element at a same hierarchical level is assigned a same style label, wherein the style label associates the elements of the diagram with style definitions independent of a layout definition, and wherein the elements of the diagram comprise: objects, connectors and content; and
a style definition for each object of the diagram generated from the semantic model determined by locating a matching style label within a file that comprises style definitions, wherein the diagram is rendered based on the layout definition and the determined style definitions.

US Pat. No. 10,248,646

TOKEN MATCHING IN LARGE DOCUMENT CORPORA

COGNIGO RESEARCH LTD., T...

1. A method comprising:in a populating stage, receiving a dictionary comprising a plurality of entities, wherein each entity has a length of between 1 and n tokens;
automatically constructing a probabilistic data representation model comprising n Bloom filter (BF) pairs, wherein each BF pair is indexed from 1 to n;
automatically populating said probabilistic data representation model with a data representation of said entities, wherein, with respect to each BF pair indexed i:
(i) a first BF in said BF pair is populated with the first i tokens of all said entities having at least i+1 tokens, and
(ii) a second BF in said BF pair in populated with all said entities having exactly i tokens;
in a matching stage, receiving a text corpus, wherein said text corpus is segmented into tokens; and
automatically matching each token in said text corpus against said populated probabilistic data representation model, wherein said matching comprises sequentially querying each said BF pair in the order of said indexing, to determine a match.

US Pat. No. 10,248,645

MEASURING PHRASE ASSOCIATION ON ONLINE SOCIAL NETWORKS

Facebook, Inc., Menlo Pa...

1. A method comprising, by a computing device:receiving, from a client system of a first user of an online social network, a search query for posts of the online social network, the search query comprising one or more query terms;
retrieving a plurality of posts of the online social network, each post containing each of the one or more query terms in a text of the post;
identifying, from an index of known phrases, one or more known phrases in the text of the one or more retrieved posts, each identified known phrase containing at least one of the one or more query terms, wherein the index of known phrases comprises a plurality of pre-identified phrases having a length less than or equal to a pre-determined maximum length;
filtering the plurality of retrieved posts to generate a filtered set of posts, wherein the filtering comprises removing each post not containing at least one of the identified known phrases;
computing a plurality of features for each of the identified known phrases, each feature measuring a degree of equivalence between the identified known phrase and the one or more query terms included in the identified known phrase;
calculating, for each post in the filtered set of posts, a score for the post based on the plurality of features of the identified known phrases included in the post;
ranking the posts based on the calculated scores; and
sending, to the client system in response to the search query, instructions for generating a search-results interface comprising references to one or more of the posts presented in ranked order.

US Pat. No. 10,248,640

INPUT-MODE-BASED TEXT DELETION

MICROSOFT TECHNOLOGY LICE...

1. A method being performed by one or more computing devices including at least one processor, the method for deleting textual input and comprising:receiving a first text portion via a block-unit input mode;
converting the first text portion into a first typewritten text segment, the first typewritten text segment having character-units that comprise at least a first recognizable block-unit, each block-unit of the at least the first recognizable block-unit having a plurality of character-units;
receiving a second typewritten text segment via a character-based input mode, the second typewritten text segment having character-units that comprise at least a second recognizable block-unit, each block-unit of the at least the second recognizable block-unit having a plurality of character-units;
detecting a location of a boundary between the first typewritten text segment that was input via the block-unit input mode and the second typewritten text segment that was input via the character-based input mode;
visually designating the boundary;
receiving a plurality of delete commands, wherein a first portion of the plurality of delete commands directs deletion of at least a portion of the first typewritten text segment, and wherein a second portion of the plurality of delete commands directs deletion of at least a portion of the second typewritten text segment; and
subsequent to the receiving the plurality of delete commands, deleting at least a portion of the first and second typewritten text segments, wherein the deleting comprises: deleting at least a portion of the first typewritten text segment on a block-unit basis, one block unit being deleted for each of the first portion of the plurality of delete commands; detecting the boundary between the first and second typewritten text segments; and based on the detecting the boundary, altering the delete command so that at least a portion of the second typewritten text segment is deleted on a character by character basis, one character unit being deleted for each of the second portion of the plurality of delete commands.

US Pat. No. 10,248,637

HIGH PERCEPTABILITY INK EFFECTS

MICROSOFT TECHNOLOGY LICE...

1. A method for improving pattern perceptibility as applied to an ink object, comprising:selecting a contrast basis image and, based on the selected contrast basis image, defining a plurality of contrast values to be applied in an enhanced ink effect definition;
selecting a color image and, based on the color image, defining color values to be applied in the enhanced ink effect definition;
defining a contrast filter for each of the defined plurality of contrast values, wherein defining the contrast filter includes isolating a selected portion of the contrast values of the contrast basis image, wherein each of the plurality of contrast filters includes an isolated selected portion of the contrast values that is different from the isolated selected portion of contrast values of the other of the plurality of contrast filters, and wherein the isolated selected portion of contrast values for each of the plurality of contrast filters is selected to include only one of: high-tone contrast values, mid-tone contrast values or low-tone contrast values; and
applying, serially, each of the contrast filters atop the color image and atop any contrast filters previously applied to produce the enhanced ink effect definition.

US Pat. No. 10,248,636

ELECTRONIC DEVICE FOR CONTROLLING DELETION OF CHARACTER INPUT ON CHARACTER INPUT SCREEN, CHARACTER INPUT CONTROL METHOD FOR CONTROLLING DELETION OF CHARACTER INPUT ON CHARACTER INPUT SCREEN, AND STORAGE MEDIUM STORING THEREIN CHARACTER INPUT CONTROL METHO

KYOCERA Document Solution...

1. A character input control method comprising:detecting a character input key being pressed, and in response to the detection of a character input key being pressed, displaying a character corresponding to the character input key at a position of a cursor displayed on a character input screen;
selecting a deletion mode; and
detecting a single press on a character delete key, and in response to detecting a single press on a character delete key, deleting at least one character displayed on the character input screen,
wherein the displaying a character corresponding to the character input key includes:
upon detecting the character input key being pressed, displaying the character corresponding to the character input key as an unconfirmed character on the character input screen, the unconfirmed character being a character input of which is to be confirmed when a confirmation key is pressed;
acquiring and unconfirmed character or a character string of unconfirmed characters displayed on the character input screen;
determining that the unconfirmed character or the character string is not a candidate for any word registered in the word table; and
in response to determining that the unconfirmed character or the character string is not a candidate for any word registered in the word table, acquiring a character input through a character input key just before the determination and storing in storage an unconfirmed character that makes word prediction impossible the acquired character as a deletion start character,
the deleting at least one character includes:
deleting the at least one character in a first deletion mode in which the deletion start character is deleted or the deletion start character and at least one unconfirmed character immediately preceding or following the deletion start character are deleted;
deleting the at least one character in a second deletion mode in which all unconfirmed characters are deleted;
deleting the at least one character in a third deletion mode in which a designated number of characters immediately preceding or following the cursor are deleted; and
deleting the at least one character in a fourth deletion mode in which only one character immediately preceding or following the cursor is deleted, and
the selecting a deletion mode includes selecting one of the first through fourth deletion modes.

US Pat. No. 10,248,634

MODEL-DRIVEN DATA ENTRY VALIDATION

Oracle International Corp...

1. A method comprising:at a computer system having a processor and a memory storing a document readable by an application:
receiving information from an application server specifying a user interface component in response to the application processing the document,
wherein the application includes or is in communication with the application server via a client side component of an application development framework (ADF),
wherein the user interface component is a re-usable component of the ADF linked to an attribute of a data model of the application server to integrate the document with a web-based application developed on the ADF; and
wherein the document is configured to act as a user interface for the web-based application by extending functionality provided by the web-based application to the application, and the user interface comprises the user interface component;
determining, by the client side component, a set of validation rules associated with the user interface component based on the information received from the application server;
receiving, at the computer system, data representing the attribute of the data model from the application server responsive to processing the document;
rendering, using the processor, the document to include the user interface component, the set of validation rules, and the data, wherein the rendering includes configuring, using the processor, the application using the set of validation rules to perform a validation of input that is made within the application via the user interface component;
receiving an input made via the user interface component; and
performing, using the processor, one or more actions by the application in response to the application validating the input made via the user interface component using the set of validation rules.

US Pat. No. 10,248,633

CONTENT BROWSER SYSTEM USING MULTIPLE LAYERS OF GRAPHICS COMMANDS

Amazon Technologies, Inc....

1. A system configured to act as an intermediary between user devices and content servers, the system comprising one or more hardware computing devices, wherein the system is programmed to at least:receive a request for a content page hosted by a content server;
obtain a base file of the content page and a resource referenced by the base file;
generate, using a server-side browser application executing on the one or more computing devices, a first set of hardware-independent graphics commands, wherein the first set of hardware-independent graphics commands instructs a client-side browser application to display a first layer comprising a representation of at least a first text portion of the content page;
generate, using the server-side browser application, a second set of hardware-independent graphics commands, wherein the second set of hardware-independent graphics commands instructs the client-side browser application to display a second layer comprising a representation of at least a second text portion of the content page;
generate, using the server-side browser application, text data regarding text to be graphically represented by at least one of the first or second sets of hardware independent graphics commands, wherein the text data enables a user device to process a user interaction with the first layer independently of the second layer; and
transmit the text data and the first and second sets of hardware-independent graphics commands to the user device over a network.

US Pat. No. 10,248,630

DYNAMIC ADJUSTMENT OF SELECT ELEMENTS OF A DOCUMENT

Microsoft Technology Lice...

1. A computer-implemented method, the method comprising:rendering, at a computing device, a document including a formatting element and text arranged within a boundary of the formatting element, wherein the boundary maintains the text within a viewing area of a display device;
receiving a command to apply a first scale factor to the text of the document;
determining at least one dimension of the boundary of the formatting element of the document based on a second scale factor that is based on an inverse of the first scale factor;
rendering the document, wherein the text is rendered based on the first scale factor, and wherein the at least one dimension of the boundary is rendered based on the second scale factor that is based on the inverse of the first scale factor, wherein a magnitude of the second scale factor is adjusted above the inverse of the first scale factor based on an increase of a magnitude of the first scale factor, and wherein the boundary is rendered to maintain the text within the viewing area of the display device; and
in response to the rendering of the document, displaying the text without requiring a user to scroll horizontally or vertically to view the rendered text.

US Pat. No. 10,248,629

METHOD FOR DETERMINING WIRING RISK AND WIRING RISK DETERMINATION SYSTEM

MITSUBISHI AIRCRAFT CORPO...

1. A method for determining a wiring risk, comprising:identifying a number of connectors to which a target harness identified from a plurality of harnesses is indirectly connected;
determining, based on the identified number of connectors, a first risk that electric wires connected to a plurality of terminal devices are bundled into a single harness;
matching location information of the target harness to an influenced area by a hazard source;
identifying whether the target harness passes through the influenced area; and
determining, based on the matched location information and identification of whether the target harness passes through the influenced area, a second risk that harnesses fail at the same time in a wiring system in which the plurality of harnesses are provided between the plurality of terminal devices and connected via connectors; and
changing at least one of the plurality of harnesses based on the determined first risk or the determined second risk in a manner that reduces the determined first risk or the determined second risk.

US Pat. No. 10,248,628

STATISTICAL APPROACH FOR TESTING MULTIPLE VERSIONS OF WEBSITES

Hybris AG, Zug (CH)

1. A computer-implemented method for selection of a version of a website from multiple versions of the website, the method being executed by one or more processors and comprising:receiving, by the one or more processors, user interaction data representative of user interactions with respective versions of a website;
for each version of the website, determining, by the one or more processors, a posterior distribution as:
f(?i(i=1, . . . ,k)|n1,n2, . . . ,nk,n)=f(n1+?1,n2+?2, . . . ,nk+?k)(?1,?2, . . . ,?k)
where n is the total number of users visiting a respective version k of the website, ? is a shape parameter, and ? is a probability of one or more users visiting the respective version k of the website, and values of ? for the users are determined as:

selecting, by the one or more processors, a version of the website based on the posterior distributions; and
hosting, by the one or more processors, the version of the website on one or more servers.

US Pat. No. 10,248,626

METHOD AND SYSTEM FOR DOCUMENT SIMILARITY ANALYSIS BASED ON COMMON DENOMINATOR SIMILARITY

EMC IP Holding Company LL...

1. A method for document similarity analysis, the method comprising:obtaining a document to be archived;
identifying a document category similar to the document to be archived, based on indexing terms and corresponding term frequencies, comprising:
identifying a document category that includes a plurality of indexing terms that are identical to indexing terms identified in the document to be archived;
obtaining a term frequency vector for the identical indexing terms in the document to be archived;
generating a normalized term frequency vector, from the term frequency vector for the document to be archived;
obtaining a term frequency vector for the identical indexing terms in the identified document category;
generating a normalized term frequency vector, from the term frequency vector for the identified document category;
calculating a common denominator similarity based on the normalized term frequency vector for the document to be archived, the normalized term frequency vector for the identified document category, and a common denominator;
making a determination that the document category is similar to the document to be archived based on the common denominator similarity; and
registering the document to be archived in the document category.

US Pat. No. 10,248,623

DATA DEDUPLICATION TECHNIQUES

EMC IP Holding Company LL...

1. A method of processing data comprising:receiving, using a processor, a plurality of data portions of a logical device;
determining, using a processor, a plurality of hash values for the plurality of data portions, each of the plurality of data portions having a corresponding one of the plurality of hash values;
determining, using a processor, whether a first of the plurality of hash values associated with a first of the plurality of data portions is equal to a hash value of an implied data value; and
if it is determined that the first hash value is equal to the hash value of the implied data value, performing, using a processor, first processing comprising:
determining whether the first data portion has a current data value equal to the implied data value; and
responsive to determining that the first data portion has a current data value equal to the implied data value, performing second processing including updating first metadata for the first data portion with an indicator to denote that the first data portion has said implied data value, wherein the implied data value is a particular data value implied by the indicator and the first data portion is not associated with any storage storing the particular data value implied by the indicator, wherein the indicator is a non-pointer field of the first metadata, wherein an operation to read the first data portion includes determining the particular data value implied by the indicator using only the indicator without accessing a stored value that is the particular data value, and wherein the method is performed as part of data deduplication processing, and wherein no data deduplication is performed for the first data portion and any other ones of the plurality of data portions equal to the implied data value.

US Pat. No. 10,248,622

VARIABLE VIRTUAL SPLIT DICTIONARY FOR SEARCH OPTIMIZATION

SAP SE, Walldorf (DE)

1. A computer implemented method to optimize data searching in an in-memory database stored as a column store, the method comprising:assigning priorities to a plurality of attribute vectors including value identifiers that represent values of corresponding columns of a table of structured data;
basing the priorities for each of the plurality of attribute vectors on a frequency of data access from each respective attribute vector of the plurality of attribute vectors;
a processor of a computer executing a reordering optimization model to reorder the plurality of attribute vectors based on corresponding sequence scores, the corresponding sequence scores computed based on one or more of the assigned priorities, a memory size consumed by each of the plurality of attribute vectors, a historical data access metric, and a query referencing percentage for each of the plurality of attribute vectors;
upon computing the corresponding sequence scores and reordering the plurality of attribute vectors, the processor of the computer executing a partitioning optimization model to logically partition each of the plurality of attribute vectors into a varying optimal number of logical partitions, the partitioning optimization model analyzing a tree bounding model having multiple paths between a root node and a leaf node to determine an optimal path from among the multiple paths;
determining an optimal number of logical partitions for a respective attribute vector of the plurality of attribute vectors based on conditions including the priority of the respective attribute vector and a memory constraint, the memory constraint dependent on the memory size consumed by the respective attribute vector and an amount of memory available to create logical partitions of the respective attribute vector;
based on the partitioning, for each of the plurality of attribute vectors generating one or more attribute vector blocks; and
rearranging value identifiers in the one or more attribute vector blocks to additionally optimize searching for data in the table of structured data.

US Pat. No. 10,248,619

RESTORING A VIRTUAL MACHINE FROM A COPY OF A DATASTORE

EMC IP Holding Company LL...

1. A method to restore a virtual machine comprising:receiving a selection of a point-in-time copy of the virtual machine to restore the selection being made from a plurality of point-in-time copies of virtual machines stored, a point-in-time copy of a datastore comprising the plurality of point-in-time copies of the virtual machines;
retrieving point-in-time copy information, from catalog information, the point-in-time copy information being associated with the point-in-time copy of the virtual machine selected to restore;
enabling the point-in-time copy of the virtual machine to receive I/Os for a host where the virtual machine will be restored;
mounting the datastore on the host;
modifying a virtual machine configuration file path to point to the point-in-time copy of the datastore;
registering the modified virtual machine configuration file path with the host;
determining a snapshot ID of a snapshot of the virtual machine; and
reverting to the snapshot of virtual machine.

US Pat. No. 10,248,616

MONOLITHICALLY INTEGRATED SYSTEM ON CHIP FOR SILICON PHOTONICS

INPHI CORPORATION, Santa...

1. A monolithically integrated system-on-chip device configured for a multi-rate and selected format of data communication, the device comprising:a single silicon substrate member;
a data input/output interface provided on the substrate member and configured for a predefined data rate and protocol;
an input/output block provided on the substrate member and coupled of the data input/output interface, the input/output block comprising a SerDes block, a CDR block, a compensation block, and an equalizer block, the SerDes block being configured to convert a first data stream of N into a second data stream of M, each of the first data stream having a first predefined data rate at a first clock rate and each of the second data stream having a second predefined data rate at a second clock rate;
a signal processing block provided on the substrate member and coupled to the input/output block, the signal processing block configured to the input/output block;
a driver module provided on the substrate member and coupled to the signal processing block, the driver module coupled to the signal processing block;
a driver interface provided on the substrate member and coupled to the driver module and configured to be coupled to a silicon photonics device, the driver interface being configured to transmit output data in either an amplitude modulation format or a combination of phase/amplitude modulation format or a phase modulation format;
a receiver module comprising a TIA block provided on the substrate member and to be coupled to the silicon photonics device using predefined modulation format, and configured to the signal processing block to communicate information to the input/output block for transmission through the data input/output interface;
a laser coupled to the silicon photonics device;
a communication block provided on the substrate member and operably coupled to the input/output block, the signal processing block, the driver block, and the receiver block;
a communication interface coupled to the communication block; and
a control block provided on the substrate member and coupled to the communication block.

US Pat. No. 10,248,613

DATA BUS ACTIVATION IN AN ELECTRONIC DEVICE

QUALCOMM Incorporated, S...

16. An electronic device, comprising:a data bus comprising a clock line and at least one data line;
a host circuit coupled to the data bus and configured to:
determine a cumulative potential representing a cumulative fractional bus activation vote on the at least one data line; and
activate the clock line in response to determining the cumulative potential on the at least one data line being greater than a configurable bus activation threshold; and
a plurality of device circuits coupled to the data bus, wherein at least one selected device circuit among the plurality of device circuits is configured to:
determine a signal strength of an incoming signal;
compare the determined signal strength against one or more predefined signal strength thresholds to determine a selected signal strength threshold among the one or more predefined signal strength thresholds, wherein the selected signal strength threshold is less than the determined signal strength; and
assert at least one fractional potential corresponding to the selected signal strength threshold on the at least one data line in response to determining the selected signal strength threshold, wherein the at least one fractional potential represents at least one fractional bus activation vote in the cumulative fractional bus activation vote.

US Pat. No. 10,248,610

ENFORCING TRANSACTION ORDER IN PEER-TO-PEER INTERACTIONS

MELLANOX TECHNOLOGIES, LT...

1. A method for computing, comprising:receiving in a network interface controller (NIC), which is configured as a first peripheral device in a computer and couples the computer to a packet data network, data transmitted over the network in a remote direct memory access (RDMA) operation;
writing the data in a first bus transaction over a peripheral component bus in the computer from the NIC to a second peripheral device in the computer;
after executing the first bus transaction, submitting a completion notification from the NIC to a central processing unit (CPU);
in response to the completion notification, submitting a command from the CPU to one of the first and second peripheral devices to execute a second bus transaction, subsequent to the first bus transaction, that will flush the data from the peripheral component bus to the second peripheral device;
executing the second bus transaction in response to the command; and
following completion of the second bus transaction, processing the written data in the second peripheral device.

US Pat. No. 10,248,608

CONTROLLER CIRCUIT AND METHOD FOR ESTIMATING TRANSMISSION DELAY

SILICON MOTION, INC., Jh...

1. A controller circuit, comprising:a first signal processing device, configured to process signals;
a second signal processing device, configured to process signals, wherein the first signal processing device and the second signal processing device are disposed on different platforms;
a data bus, coupled between the first signal processing device and the second signal processing device and comprising a plurality of data lines; and
a confirm signal line, coupled between the first signal processing device and the second signal processing device,
wherein the first signal processing device transmits at least one synchronization signal to the second signal processing device via the data bus, the second signal processing device estimates transmission delay on each data line according to the at least one synchronization signal, performs transmission delay compensation according to the transmission delay estimated on each data line and transmits a confirmation signal on the confirm signal line to notify the first signal processing device that the transmission delay compensation on the data lines is complete.

US Pat. No. 10,248,606

I/O MODULE

YOKOGAWA ELECTRIC CORPORA...

1. An input/output (I/O) module, comprising:a base plate comprising a plurality of connection terminals, the connection terminals being electrically connectable to a plurality of field devices;
a plurality of universal circuits associated with the connection terminals, the universal circuits being provided on the base plate, and each of the plurality of universal circuits being configured to receive analog signals from respective one of the plurality of field devices, to output analog signals to the respective one of the plurality of field devices, to receive discrete signals from the respective one of the plurality of field devices, and to output discrete signals to the respective one of the plurality of field devices; and
a plurality of option modules detachably provided on the base plate, each of the option modules being provided between respective one of the connection terminals and respective one of the universal circuits, the respective one of the connection terminals being associated with the respective one of the universal circuits, and each of the option modules comprising a first circuit configured to perform transmitting of signals between the respective one of the connection terminals and the respective one of the universal circuits.

US Pat. No. 10,248,605

BIDIRECTIONAL LANE ROUTING

Hewlett-Packard Developme...

1. An apparatus, comprising:a pass-through module that includes connector pins to connect with at least one active motherboard connector and to separately connect with at least one routing motherboard connector; and
a routing function on the pass-through module to redirect a set of bidirectional lanes from the connector pins connected to the at least one active motherboard connector to the connector pins connected to the at least one routing motherboard connector to enable a connection of the set of bidirectional lanes to at least one other motherboard connector via the at least one routing motherboard connector,
wherein the pass-through module connector pins include an install pin to notify a motherboard controller that the pass-through module is installed and to enable the motherboard controller to reapportion the set of bidirectional lanes to the at least one other motherboard connector.

US Pat. No. 10,248,604

MICROCONTROLLER PROGRAMMABLE SYSTEM ON A CHIP

Cypress Semiconductor Cor...

1. A configurable analog processing circuit, comprising:a plurality of analog circuit blocks, each configured to provide at least one analog function;
a programmable interconnect coupled to the analog circuit blocks, the programmable interconnect configurable to interconnect combinations of at least two of the plurality of analog circuit blocks to one another to perform at least another analog function; and
at least one digital block of a plurality of digital blocks that each provides at least one digital function, and wherein the programmable interconnect is further coupled to the plurality of digital blocks and configurable to interconnect combinations of the plurality of digital blocks to one another,
wherein the circuit is formed in an integrated circuit and wherein the programmable interconnect comprises a plurality of switches coupled between the analog circuit blocks and ports that provide signal connections for the integrated circuit,
wherein the plurality of switches are configured in one or more multiplexer (MUX) circuits, the MUX circuits comprising MUX inputs and MUX outputs coupled to the analog circuit blocks.

US Pat. No. 10,248,603

PCI EXPRESS NETWORK CARD

ACCTON TECHNOLOGY CORPORA...

1. A PCI Express network card, comprising:a circuit board having five ports, each of which is adapted to be electrically connected to a small form-factor pluggable transceiver;
a plate provided on the circuit board near a front edge of the circuit board, wherein the plate has a plurality of openings;
a plurality of integrated circuits provided on a surface of the circuit board, wherein the integrated circuits comprise a first processor and a second processor; the first processor and the second processor are respectively connected to different parts of the ports; the first processor is directly electrically connected to a part of the ports, while the second processor is directly electrically connected to another part of the ports; the first processor and the second processor are staggered on the surface; and
two heat sinks abutting against the first processor and the second processor, respectively, wherein an area of each of the heat sinks is greater than an area of each one of the first processor and the second processor.

US Pat. No. 10,248,602

COMPUTING DEVICES HAVING SLOTS AND COMPONENTS FOR RECEIPT OF DIFFERENT TYPES OF PERIPHERALS

Lenovo Enterprise Solutio...

1. A computing device comprising:a body with a top wall, a side wall, and an interior, wherein the interior comprises a rear wall with a first slot that extends within a first horizontal plane and into the interior and enables a connection with a plurality of peripherals of a first protocol,
wherein the rear wall comprises a plurality of openings that extend within a first vertical plane;
a motherboard comprising a second slot, a third slot, and a rear edge, wherein the second and the third slots are of a same size that extends out of the interior at a second protocol,
wherein the motherboard is housed within the interior of the body and the rear edge of the motherboard is oriented such that the second slot, and the third slot is aligned co-planarly with the first slot; and
a connector, operatively interfaced with the motherboard and positioned at the rear edge of the motherboard, that provides a direct connection to a second plurality of peripherals of the second protocol.

US Pat. No. 10,248,601

REMOTE TERMINAL UNIT (RTU) WITH UNIVERSAL INPUT/OUTPUT (UIO) AND RELATED METHOD

Honeywell International I...

1. An apparatus comprising:a remote terminal unit (RTU) comprising:
input/output (I/O) terminals configured to be coupled to at least one industrial control and automation field device;
one or more first I/O modules comprising one or more first reconfigurable I/O channels, each first reconfigurable I/O channel configured to be coupled to a pair of the I/O terminals, each first reconfigurable I/O channel configurable as an analog input, an analog input supporting digital communication, an analog output, an analog output supporting digital communication, a digital input, a digital output, and a pulse accumulator input for communication through the pair of I/O terminals;
each of the one or more first reconfigurable I/O channel comprises:
a digital logic block configured to control operating states for devices connected to the pair of I/O terminals using logic signals;
an analog common resource block configured to convert digital and analog signals between the digital logic block and the pair of I/O terminals;
a multiplexer block configured to receive a current signal from the analog common resource block and output a voltage signal to the analog common resource block; and
an output circuit block that comprises a plurality of switches and is configured to:
connect the current signal from the analog common resource block to a first I/O terminal of the pair of I/O terminals; and
connect a second I/O terminal of the pair of I/O terminals to an input of the multiplexer block;
a first expansion board coupled to the one or more first I/O modules;
a second expansion board configured to be coupled to one or more second I/O modules comprising one or more second reconfigurable I/O channels, wherein the second expansion board is connected to the first expansion board;
first and second electric paths formed through the first expansion board and the second expansion board, wherein the first and second electric paths meet at a loop after a final expansion board to indicate a lack of any additional I/O modules or additional expansion boards;
at least one processing device configured to control a configuration of each of the one or more first reconfigurable I/O channels and each of the one or more second reconfigurable I/O channels and to control the one or more second reconfigurable I/O channels through the one or more first I/O modules;
a first circuit board coupled to the I/O terminals and the first expansion board, wherein the first circuit board is further coupled to one or more serial interfaces, one or more uplink/downlink ports, and one or more transformers coupled to the first expansion board;
a second circuit board coupled to the at least one processing device, wherein the second circuit board is further coupled to one or more transceivers configured to communicate with the first circuit board; and
a third circuit board coupled to the one or more first I/O modules, wherein the third circuit board is further coupled to a power converter, the power converter configured to convert power received from the second circuit board;
wherein the first circuit board is coupled to the second and third circuit boards.

US Pat. No. 10,248,600

REMOTE CONTROL SYSTEM

INVENTEC (PUDONG) TECHNOL...

1. A remote control system for a microserver, the remote control system comprising:a plurality of computing boards is for processing data of the microserver;
a control board electrically connected to the plurality of computing boards and communicated with a remote control manager, the control board converting network signals transmitted between the plurality of computing boards and the remote control manager, the plurality of computing boards being remote-controlled by the remote control manager through the control board, and the control board comprising:
a first network physical layer protocol conversion chip electrically connected to the remote control manager, and the first network physical layer protocol conversion chip transmitting a first network signal via the remote control, the first network physical layer protocol conversion chip transforming the first network signal to an internal signal or transforming the internal signal to the first network signal;
a network signal switch module electrically connected to the first network physical layer protocol conversion chip and the plurality of computing boards, the network signal switch module receiving the internal signal from the first network physical layer protocol conversion chip, the network signal switch module transforming the internal signal to a second network signal or transforming the second network signal to the internal signal; and
a network signal processing module electrically connected to the network signal switch module, the network signal processing module generating an executive instruction according to the internal signal received by the network signal switch module, and the network signal switch module transmitting the second network signal to at least one of the plurality of computing boards according to the executive instruction,
wherein the network signal processing module comprising a basic input-output unit, a processing unit and a memory unit, the basic input-output unit stores a configuration setting of the remote control system, the processing unit is electrically connected to the basic input-output unit and the network signal switch module, and the processing unit communicates with the plurality of computing boards through the network signal switch module to detect network status of the plurality of computing boards, the processing unit produces and transmits the executive instruction to the network signal switch module according to the configuration setting of the remote control system and the internal signal so that the network signal switch module transmits the second network signal to at least one of the plurality of computing boards according to the executive instruction, the memory unit is electrically connected to the processing unit and temporary saves staged data of the processing unit.

US Pat. No. 10,248,597

USB COMMUNICATION CONTROL MODULE, SECURITY SYSTEM, AND METHOD FOR SAME

Response Technologies, Lt...

1. A USB communication control module comprising:a first USB port that comprises an input power port and is configured for electrical coupling and data communication with an associated USB device;
a first port power controller in communication with the input power port of the first USB port, the first port power controller being operable in one of a power delivery mode and a power interrupt mode, wherein when in the power delivery mode, the first port power controller facilitates delivery of power from a power source to the input power port of the first USB port, and when in the power interrupt mode, the first port power controller facilitates the interruption of power from the power source to the input power port of the first USB port;
a USB switch in data communication with the first USB port via a first communication bus and in control communication with the first port power controller via a first control bus;
a microprocessor in data communication with the USB switch via a second communication bus; wherein:
data communicated between the microprocessor and a USB device is routed over the first communication bus, through the USB switch, over the second communication bus, and through the first USB port;
the USB switch monitors the first communication bus to determine whether communication between the first USB port and the associated USB device is lost;
when communication between the first USB port and the associated USB device is lost, the USB switch facilitates temporary operation of the first port power controller in the power interrupt mode via the first control bus to restart the first USB port; and
the USB switch monitors the delivery of power from the power source to the input power port of the first USB port, and, when abnormal power conditions exist, facilitates temporary operation of the first port power controller in the power interrupt mode to restart the first USB port.

US Pat. No. 10,248,596

SYSTEMS AND METHODS FOR PROVIDING A LOWER-LATENCY PATH IN A VIRTUALIZED SOFTWARE DEFINED STORAGE ARCHITECTURE

Dell Products L.P., Roun...

1. An information handling system, comprising:an accelerator device; and
a processor subsystem having access to a memory subsystem and having access to the accelerator device, wherein the memory subsystem stores instructions executable by the processor subsystem, the instructions, when executed by the processor subsystem, causing the processor subsystem to:
receive an input/output command from an application executing on a virtual machine of a hypervisor, wherein the hypervisor is executing on the processor subsystem;
determine if the input/output command meets a predefined criteria for trapping the input/output command; and
responsive to determining that the input/output command meets a predefined criteria for trapping the input/output command, bypass a storage stack of the hypervisor by passing the input/output command to an endpoint of the accelerator device assigned for access to the hypervisor.

US Pat. No. 10,248,594

PROGRAMMING INTERRUPTION MANAGEMENT

Micron Technology, Inc., ...

1. An apparatus, comprising:a memory array; and
a controller coupled to the memory array, wherein the controller is configured to:
modify a programming operation to program a portion of the memory array to an uncorrectable state in response to detecting an interruption during the programming operation.

US Pat. No. 10,248,592

INTERRUPTED WRITE OPERATION IN A SERIAL INTERFACE MEMORY WITH A PORTION OF A MEMORY ADDRESS

MICRON TECHNOLOGY, INC., ...

1. A method comprising:identifying a first portion of a read command that includes a first portion of a memory address of a memory device, wherein the first portion of the memory address comprises a number of bits of the memory address;
identifying a memory partition of the memory device based at least in part on the number of bits;
determining that a write operation is being performed at the identified memory partition;
interrupting the write operation in response to the determination that the write operation is being performed and identifying the first portion of the read command;
identifying, after a start of the interruption and before a completion of the interruption, a second portion of the read command that includes a second portion of the memory address, wherein the second portion of the memory address comprises a remaining number of bits of the memory address, the remaining number of bits identifying one or more memory cells of the memory partition; and
reading, after the completion of the interruption, the one or more memory cells indicated by the memory address.

US Pat. No. 10,248,591

HIGH PERFORMANCE INTERCONNECT

Intel Corporation, Santa...

1. A processor device comprising:link layer logic, implemented at least in part in hardware, to generate a link layer flow control unit (flit) comprising three slots, wherein each slot is adapted to be encoded with a separate packet header, and a particular one of the slots is designated to be alternatively encoded with a link layer credit message,
wherein the link layer credit message comprises an opcode field to identify that the particular slot is encoded with a link layer credit message, a credit type field to indicate a type of credit refund included in the link layer credit message, a credit return field to indicate a number of credits to be refunded based on the link layer credit message, and at least one acknowledgement field,
wherein format of a payload of the link layer credit message is based on the type of credit refund, and the flit further comprises a field to indicate whether the link layer credit message corresponds to a deadlock free virtual networks of a system or a shared adaptive virtual network of the system.

US Pat. No. 10,248,590

SUPPORTING DIFFERENT TYPES OF MEMORY DEVICES BASED ON SERIAL PRESENSE DETECT

Hewlett-Packard Developme...

1. A computing device for supporting a plurality of different types of memory devices, comprising:a plurality of types of memory device slots on a printed circuit board (PCB) to connect a corresponding number and types of memory devices to the computing device;
a memory voltage regulator coupled to the memory device slots;
a basic input/output system (BIOS) to: determine serial presence detect (SPD) data present on a detected memory device coupled to one of the memory device slots to determine the type of the detected memory device of the number of memory device types; and
initialize the memory voltage regulator to adjust a supply voltage to a voltage required by the detected memory device based on the SPD data; and
a memory controller coupled to the memory device slots, the memory controller to control input/output signals to and from the detected memory device based on the SPD data, wherein the memory controller transmits signals common to all memory device types to the detected memory device via a first transmission line and transmits signals not common to all memory device types to the detected memory device via a second transmission line, the second transmission line being an exclusive transmission line for the type of the detected memory device.

US Pat. No. 10,248,589

INTEGRATED CIRCUIT WITH A SERIAL INTERFACE

Dialog Semiconductor (UK)...

1. An integrated circuit coupled to an external serial bus, the integrated circuit comprisinga serial interface configured to act as a bus slave with regard to the external serial bus and to detect a data address on the external serial bus;
a data cache coupled to the serial interface via an internal bus; and
a prefetch control unit configured to instruct the serial interface to prefetch a data element associated with the detected data address by causing the data element to be read from a target data storage unit associated with the data address and the data element and the data address to be written in the data cache,
wherein the prefetch control unit is configured to not instruct the serial interface to prefetch the data element in case reading data from the target data storage unit by the serial interface involves a turnaround time which is shorter than a predetermined threshold turnaround time; and
wherein the predetermined threshold turnaround time is based on a maximum response time defined by a message protocol of the external serial bus.

US Pat. No. 10,248,584

DATA TRANSFER BETWEEN HOST AND PERIPHERAL DEVICES

Microsoft Technology Lice...

1. A peripheral device comprising:a wireless communication interface arranged to communicate with a host computing device;
an output device;
a memory arranged to store an output data set for output via the output device; and
a processor arranged to:
monitor parameters of a wireless communication link between the host computing device and the peripheral via the wireless communication interface;
detect imminent disconnection of the wireless communication link based on the parameters of the wireless communication link;
trigger, in response to imminent disconnection detection, a data transfer from the host computing device to the peripheral device via the wireless communication interface;
receive, in response to the trigger, the output data set; and
display the output data set via the output device, wherein following disconnection of the wireless communication link the output data set is fixed such that the output data set does not change.

US Pat. No. 10,248,583

SIMULTANEOUS VIDEO AND BUS PROTOCOLS OVER SINGLE CABLE

TEXAS INSTRUMENTS INCORPO...

1. A system comprising:a main switch configured to:
operate in an enhanced mode in which the main switch is configured to simultaneously transfer data from a first data source and a second data source to a cable;
operate in a default mode in which the main switch is configured to transfer data from the second data source to the cable without transferring data from the first data source;
a multipurpose switch, the multipurpose switch coupled to the cable through a first set of switch connections, the multipurpose switch configured to:
operate in a handshake mode in which the multipurpose switch is configured to transport handshake data between the cable and a digital logic, wherein the handshake data is received on the first set of switch connections;
operate in a data mode in which the multipurpose switch is configured to transport bus data between the cable and the second data source, wherein the bus data is received on the first set of switch connections; and
the digital logic coupled to the multipurpose switch through a first switch control;
the digital logic coupled to the main switch through a second switch control, the digital logic programmed to:
drive the first switch control that enables a mode of operation of the multipurpose switch, the mode of operation of the multipurpose switch comprising one of the handshake mode and the data mode; and
drive the second switch control that enables a mode of operation of the main switch, the mode of operation of the main switch comprising one of the enhanced mode and the default mode.

US Pat. No. 10,248,582

PRIMARY DATA STORAGE SYSTEM WITH DEDUPLICATION

NexGen Storage, Inc., Lo...

1. A primary data storage system for use in a computer network and having de-duplication capability, the system comprising:an input/output port configured to receive a block command packet that embodies one of a read block command and a write block command and transmitting a block result packet in reply to a block command packet;
a data store system having at least a first data store and a second data store;
wherein each of the first and second data stores is capable of receiving and storing data in response to a write block command and retrieving and providing data in response to a read block command;
wherein the first data store has a first responsiveness characteristic, the second data store has a second responsiveness characteristics, and the first and the second responsiveness characteristics are different;
a statistics database configured to provide hardware and/or volume statistical data relevant to a potential deduplication of data associated with a write block command; and
a deduplication processor configured to: (a) receive a write block command and statistical data relevant to the received write block command from the statistics database, (b) determine, using the hardware and/or volume statistical data that is relevant to the potential deduplication of data associated with the write block command, if a yet to be performed deduplication operation on the data associated with the received write block command is expected to satisfy a time constraint specifically associated with the processing of the received write block command relative to the data store system, the time constraint being the difference between (i) an allowed amount of time to process the write block command that is specifically associated with the received write block command and reflects a quality of service goal and (ii) an amount of time previously expended in processing the received write block command, (c) if the yet to be performed deduplication on the data associated with the received write block command is expected to satisfy the time constraint specifically associated with the received write block command relative to the data store system, proceeding with the performance of the deduplication operation on the data associated with the received write block command, and (d) if the yet to be performed deduplication operation on the data associated with the received write block command is not expected to satisfy the time constraint specifically associated with the received write block command relative to the data store system, forgoing the performance of the deduplication operation and proceeding with the processing of the received write block command, thereby increasing the possibility that duplicate data is established on the data store system.

US Pat. No. 10,248,581

GUARDED MEMORY ACCESS IN A MULTI-THREAD SAFE SYSTEM LEVEL MODELING SIMULATION

Synopsys, Inc., Mountain...

1. A method for multi-thread system level modeling simulation (SLMS) of a target system on a host system, the target system having a plurality of processor core models that access a memory model of the target system, the method comprising:setting a memory region of the memory model of the target system into guarded mode indicating that the memory region should be locked when the memory region is accessed by one of a plurality of SLMS processes, the plurality of SLMS processes representing functional behaviors of the processor core models;
identifying an access to the memory region by an accessing SLMS process of the plurality of SLMS processes via an interconnect model of the target system, the interconnect model connecting the processor core models to the memory model; and
responsive to the access to the memory region and the memory region being in the guarded mode, acquiring a guard lock for the memory region that allows the accessing SLMS process to access the memory region via the interconnect model while the guard lock is acquired, and wherein the plurality of SLMS processes cannot access the memory region while the guard lock is acquired.

US Pat. No. 10,248,580

METHOD AND CIRCUIT FOR PROTECTING AND VERIFYING ADDRESS DATA

STMICROELECTRONICS (ROUSS...

1. A circuit for protecting memory address data, the circuit comprising:an input data bus configured to receive write data to be written to a memory device;
an input address bus configured to receive a write address associated with the write data;
an output data bus; and
an address protection circuit coupled to said input data, input address, and output data buses and configured to
generate an address protection value based on the write address,
generate modified write data, on said output data bus, the modified write data including both the write data and the address protection value, said output data bus having a width greater than a width of said input data bus, and
generate a modified write address.

US Pat. No. 10,248,579

METHOD, APPARATUS, AND INSTRUCTIONS FOR SAFELY STORING SECRETS IN SYSTEM MEMORY

Intel Corporation, Santa...

1. A processor comprising:a hardware key;
an instruction unit to receive a compare instruction, the the compare instruction having a plaintext input value and a ciphertext input value; and
an encryption unit to, in response to the compare instruction, decrypt the ciphertext input value using the hardware key to generate a plaintext output value and compare the plaintext output value to the plaintext input value.

US Pat. No. 10,248,578

METHODS AND SYSTEMS FOR PROTECTING DATA IN USB SYSTEMS

Microsoft Technology Lice...

1. A system comprising:a processor;
memory;
a USB port;
one or more unsecure client applications stored in the memory;
one or more secure client applications stored in the memory;
an unsecure software stack including at least one unsecure USB driver;
a secure software stack including at least one secure USB driver; and
a USB host controller associated with the secure software stack and the unsecure software stack;
wherein the USB host controller being configured to:
receive a transfer descriptor including instructions for routing data from a communicating USB device, coupled with the USB port, to access the memory,
determine whether the communicating USB device is a secure USB device or an unsecure USB device,
route data to and from the unsecure USB device, based on the instructions in the transfer descriptor, through the unsecure software stack for use by the one or more unsecure client applications in response to determining the communicating USB device is the unsecure USB device, and
route data to and from the secure USB device, based on the instructions in the transfer descriptor, through the secure software stack for use by the one or more secure client applications in response to determining the communicating USB device is the secure USB device.

US Pat. No. 10,248,577

USING A CHARACTERISTIC OF A PROCESS INPUT/OUTPUT (I/O) ACTIVITY AND DATA SUBJECT TO THE I/O ACTIVITY TO DETERMINE WHETHER THE PROCESS IS A SUSPICIOUS PROCESS

International Business Ma...

1. A computer program product for detecting a security breach in a system managing access to a storage, the computer program product comprising a computer readable storage medium having computer readable program code embodied therein that when executed performs operations, the operations comprising:monitoring process Input/Output (I/O) activity of a process accessing data in a storage;
determining a peak I/O rate during a time period which an I/O rate of data access was a highest I/O rate;
determining a timestamp of when the data was last accessed;
characterizing the process initiating the I/O activity as a suspicious process in response to determining a process I/O rate of the process I/O activity as compared to the peak I/O rate of the data satisfies a first condition and a process access time at which the process is accessing the data as compared to the timestamp satisfies a second condition; and
indicating a security breach in response to characterizing the process as the suspicious process.

US Pat. No. 10,248,575

SUSPENDING TRANSLATION LOOK-ASIDE BUFFER PURGE EXECUTION IN A MULTI-PROCESSOR ENVIRONMENT

International Business Ma...

1. A method for operating translation look-aside buffers, TLBs, in a multiprocessor system, the multiprocessor system comprising at least one core each supporting at least one thread, the method comprising:receiving a purge request for purging one or more entries in the TLB;
determining if a thread requires access to an entry of the entries to be purged;
when the thread does not require access to the entries to be purged:
starting execution of the purge request in the TLB;
setting a suspension time window wherein the setting of the suspension time window is performed in response to an address translation request of the thread being rejected due to the TLB purge, wherein setting further comprises providing a level signal having a predefined activation time period during which the level signal is active, wherein the suspension time window is the predefined activation time period, and wherein a rejected address translation request is recycled during a recycling time window, wherein the recycling time window is smaller than the suspension time window;
suspending the execution of the purge during the suspension time window;
executing address translation requests of the thread during the suspension time window wherein the executing of the address translation requests of the thread comprises executing the recycled address translation request;
resuming the purge execution after the suspension window is ended;
when the thread requires access to the entries to be purged:
providing a branch point having two states;
providing a second branch point having two states;
blocking the thread for preventing the thread sending address translation requests to the TLB with firmware instructions, wherein blocking the thread comprises setting the branch point to a first state, setting the second branch point to a third state, and reading the first state of the branch point, and reading the third state of the second branch point, for performing the blocking with firmware instructions;
upon ending the purge request execution,
setting the first branch point to a second state
unblocking the thread and executing the address translation requests of the thread;
wherein the at least one core supporting a second thread, and when a first thread does not require access to the TLB entries to be purged and the second thread requires access to an entry to be purged, before starting the execution of the purge request at the TLB:
blocking both the first and second threads for preventing them sending requests to the TLB; and
when the purge request has started at both the first and second threads, unblocking the first thread.

US Pat. No. 10,248,574

INPUT/OUTPUT TRANSLATION LOOKASIDE BUFFER PREFETCHING

Intel Corporation, Santa...

1. An apparatus comprising:a bridge between an input/output (I/O) side of a system and a memory side of the system, the I/O side to include an interconnect on which a zero-length transaction is to be initiated by an I/O device, the zero-length transaction to include an I/O-side memory address;
an input/output memory management unit (IOMMU) including
address translation hardware to generate a translation of the I/O-side memory address to a memory-side memory address, and
an input/output translation lookaside buffer (IOTLB) in which to store the translation; and
an IOTLB prefetch control unit including prefetch control logic to cause the apparatus to, in response to determining that the memory-side address is inaccessible, emulate completion of the zero-length transaction and to, in response to determining that I/O device prefetching to the IOTLB is not enabled and that the I/O device is not permitted to access a system memory, generate a fault instead of emulating completion of the zero-length transaction.

US Pat. No. 10,248,573

MANAGING MEMORY USED TO BACK ADDRESS TRANSLATION STRUCTURES

INTERNATIONAL BUSINESS MA...

1. A computer program product for facilitating memory management of a computing environment, said computer program product comprising:a computer readable storage medium readable by a processing circuit and storing instructions for execution by the processing circuit for performing a method comprising:
determining whether a block of memory is marked as being used to back an address translation structure used by a guest program for address translation, the block of memory being a block of host memory, wherein the guest program is managed by a virtual machine manager that further manages the host memory, and wherein the determining determines whether the block of memory is actively being used for the address translation structure, the address translation structure used in translating a virtual address to another address; and
performing a memory management action based on whether the block of memory is being used to back the address translation structure, the memory management action controlling availability of the block of memory for further use, wherein memory management within the computing environment is facilitated, enhancing system performance.

US Pat. No. 10,248,572

APPARATUS AND METHOD FOR OPERATING A VIRTUALLY INDEXED PHYSICALLY TAGGED CACHE

ARM Limited, Cambridge (...

1. An apparatus, comprising:processing circuitry to perform data processing operations on data;
a cache storage to store data for access by the processing circuitry, the cache storage having a plurality of cache entries, and each cache entry arranged to store data and an associated physical address portion, the cache storage being accessed using a virtual address portion of a virtual address in order to identify a number of cache entries whose stored physical address portions are to be compared with a physical address derived from the virtual address in order to detect whether a hit condition exists; and
snoop request processing circuitry, responsive to a snoop request specifying a physical address, to determine a plurality of possible virtual address portions for the physical address, and to perform a snoop processing operation in order to determine whether the hit condition is detected for a cache entry when accessing the cache storage using the plurality of possible virtual address portions, and on detection of the hit condition to perform a coherency action in respect of the cache entry causing the hit condition.

US Pat. No. 10,248,571

SAVING POSITION OF A WEAR LEVEL ROTATION

Hewlett Packard Enterpris...

1. A system comprising:a wear level handler to start a current rotation of a wear level algorithm through a plurality of cache line addresses in a region of memory, wherein the wear level algorithm alternates between an even rotation and an odd rotation, the even rotation characterized by a first value of the metadata and the odd rotation characterized by a second value of the metadata;
a location storer to store a rotation count corresponding to a cache line address belonging to the plurality;
a data mover to move a cache line from a selected cache line address to a gap cache line address corresponding to an additional cache line address,
a metadata setter to:
set a metadata of the gap cache line address to a value corresponding to the current rotation, wherein the first cache line address becomes the current gap cache line address after the data has been copied and the metadata has been set,
set the value of the metadata to the first value if the current rotation is the even rotation,
set the value of the metadata to second value if the current rotation is the odd rotation; and
a current position determiner to determine, based on the value of at least one metadata and the rotation count, a current position of the current rotation after a power loss event.

US Pat. No. 10,248,570

METHODS, SYSTEMS AND APPARATUS FOR PREDICTING THE WAY OF A SET ASSOCIATIVE CACHE

Intel Corporation, Santa...

1. A method for fetching a cache line of a far taken branch instruction and a cache line of a target of the far taken branch instruction, the method comprising:determining a hit at a first way of an instruction cache for the far taken branch instruction;
determining a target address from an information cache based on the first way;
determining a second way from a shadow cache tag structure based on the target address; and
fetching the far taken branch instruction from the instruction cache based on the first way and the target of the far taken branch instruction from a shadow cache based on the second way.

US Pat. No. 10,248,569

PATTERN BASED PRELOAD ENGINE

Futurewei Technologies, I...

1. A method for a processing unit executing an application, the method comprising:determining, by the processing unit, that the application has reached a specific location and state;
obtaining, by the processing unit, a trigger instruction responsive to determining the application has reached the specific location and state, wherein the trigger instruction includes an index into a preload engine offset table and a base address, wherein the preload engine offset table includes a plurality of distinct offsets associated with the base address;
accessing a memory by a preload engine coupled to the processing unit to obtain the preload engine offset table based on the index and base address to determine the plurality of distinct offsets relative to the base address, the plurality of distinct offsets being specific to the application location and state; and
prefetching data by the preload engine into a cache memory, for use by the processing unit executing the application, the data prefetched into the cache memory using addresses generated using the base address and each of the plurality of distinct offsets.

US Pat. No. 10,248,568

EFFICIENT DATA TRANSFER BETWEEN A PROCESSOR CORE AND AN ACCELERATOR

Intel Corporation, Armon...

1. A method comprising:writing input data to a first cache line of a cache shared by a processor and an accelerator, wherein the input data is ready to be operated on by the accelerator; and
writing instructions to one or more cache lines, the one or more cache lines designated as a queue for the accelerator, wherein the instructions indicate a first operation to be performed by the accelerator and a virtual pointer to the input data in the cache.

US Pat. No. 10,248,566

SYSTEM AND METHOD FOR CACHING VIRTUAL MACHINE DATA

Western Digital Technolog...

14. A method for caching data from a plurality of virtual machines, the method comprising:identifying, using a cache management component, a first virtual machine, of the plurality of virtual machines, which is operating;
allocating a portion of a cache storage to the first virtual machine;
performing caching of data to handle an input/output (I/O) request of the first virtual machine, wherein data written to the cache storage is written to a top of the cache storage and existing data in the cache storage is pushed down the cache storage;
identifying a second virtual machine, of the plurality of virtual machines, which is not operating based at least in part on a determination that second virtual machine data I/O does not appear in a register of the cache storage;
determining whether a number of virtual machines that use the cache storage exceeds a threshold number of virtual machines; and
in response to determining that the number of virtual machines that use the cache storage exceeds the threshold number of virtual machines:
moving data cached by the second virtual machine in the cache storage to a bottom of the cache storage; and
invalidating a portion of the cache storage associated with the second virtual machine by writing over data at the bottom of the cache storage as data is added to the top of the cache storage.

US Pat. No. 10,248,565

HYBRID INPUT/OUTPUT COHERENT WRITE

QUALCOMM Incorporated, S...

1. A method of implementing a hybrid input/output (I/O) coherent write request on a computing device, comprising:receiving an I/O coherent write request;
generating a first hybrid I/O coherent write request and a second hybrid I/O coherent write request by duplicating the I/O coherent write request;
sending the first hybrid I/O coherent write request and I/O coherent write data of the I/O coherent write request to a shared memory; and
sending the second hybrid I/O coherent write request duplicated from the I/O coherent write request to a coherency domain without sending the I/O coherent write data of the I/O coherent write request to the coherency domain.

US Pat. No. 10,248,564

CONTENDED LOCK REQUEST ELISION SCHEME

Advanced Micro Devices, I...

1. A method comprising:storing a plurality of data blocks at a home node of a plurality of nodes;
receiving a request at the home node from a first node, the request being a request for access to a given data block of the plurality of data blocks;
maintaining a count of a number of read requests at the home node for the given data block;
in response to determining both the given data block is currently stored at a second node and the count has exceeded a threshold, the home node:
requesting a copy of the given data block from the second node;
storing the copy of the given data block at the home node responsive to receiving the given data block from the second node; and
forwarding the copy of the given data block from the home node to the first node.

US Pat. No. 10,248,563

EFFICIENT CACHE MEMORY HAVING AN EXPIRATION TIMER

International Business Ma...

1. A method, comprising:selectively invalidating data stored in at least one cache line of a cache memory of a processor in response to a determination that a predetermined amount of time has passed since the at least one cache line was last accessed, the predetermined amount of time being shorter than an average round-trip time for the processor to process a plurality of blocks of data stored sequentially to a ring buffer.

US Pat. No. 10,248,562

COST-BASED GARBAGE COLLECTION SCHEDULING IN A DISTRIBUTED STORAGE ENVIRONMENT

Microsoft Technology Lice...

1. A computer system comprising:one or more processors; and
one or more computer-readable storage media having stored thereon computer-executable instructions that are executable by the one or more processors to cause the computer system to schedule garbage collection in a distributed environment that includes a plurality of partitions that point to a plurality of data blocks that store data objects, the garbage collection scheduling being based on a cost to reclaim one or more of the data blocks for further use, the computer-executable instructions including instructions that are executable to cause the computer system to perform at least the following:
determining a reclaim cost for one or more data blocks of one or more of the plurality of partitions during a garbage collection operation;
determining a byte constant multiplier that is configured to modify the reclaim cost to account for the amount of data objects that may be rewritten during the garbage collection operation;
accessing one or more of a baseline reclaim budget and a baseline rewrite budget, the baseline reclaim budget specifying an acceptable amount of data blocks that should be reclaimed by the garbage collection operation and the baseline rewrite budget specifying an upper limit on the amount of data objects that may be rewritten during the garbage collection operation;
iteratively varying one or more of the baseline reclaim budget, the baseline rewrite budget, and byte constant multiplier to determine an effect on the reclaim cost; and
generating a schedule for garbage collection, the schedule including those data blocks that at least partially minimize the reclaim cost based on the iterative varying.

US Pat. No. 10,248,561

STATELESS DETECTION OF OUT-OF-MEMORY EVENTS IN VIRTUAL MACHINES

ORACLE INTERNATIONAL CORP...

1. A method of modifying memory allocations of virtual machines executing within a computing system, comprising:executing one or more virtual machines, including a first virtual machine, on a computing system, wherein each said virtual machine is allocated an amount of heap memory from the computer system,
performing a plurality of garbage collection processes on the computing system during execution of the first virtual machine on the computer system;
determining, by the computing system, using one or more processors of the computing system, one or more execution metrics for each of the plurality of garbage collection processes performed, the execution metrics including an execution duration for each of the plurality of garbage collection process,
using a sequential-analysis technique to analyze, by the computing system, the execution metrics for each of the plurality of garbage collection processes for stateless detection of a memory usage trend for the first virtual machine, based on the execution durations for the plurality of garbage collection processes; and
in response to detecting an upward memory usage trend for the first virtual machine based on the analysis of the execution durations for the plurality of garbage collection processes, modifying, by the computing system, the amount of heap memory allocated to the first virtual machine.

US Pat. No. 10,248,560

STORAGE DEVICE THAT RESTORES DATA LOST DURING A SUBSEQUENT DATA WRITE

Toshiba Memory Corporatio...

1. A storage device connectable to a host device, the storage device comprising:a plurality of nonvolatile memories each including first memory cells connected to a first word line and second memory cells connected to a second word line that is adjacent to the first word line; and
a controller configured to:
maintain parity data in a memory area of the host device for data that has been written to the first memory cells,
write data to the second memory cells, and
upon detecting a failure in the writing of data to the second memory cells, restore, using the parity data from the memory area of the host device, the data previously written to the first memory cells.

US Pat. No. 10,248,558

MEMORY LEAKAGE POWER SAVINGS

QUALCOMM Incorporated, S...

1. A system, comprising:a cache memory, wherein a processor accesses the cache memory;
a multiplexer configured to selectively couple a first supply rail or a second supply rail to the cache memory;
a controller configured to instruct the multiplexer to couple the first supply rail to the cache memory if the processor is in a first performance mode, and to instruct the multiplexer to couple the second supply rail to the cache memory if the processor is in a second performance mode; and
a trigger device configured to detect gating of a clock signal to the cache memory or the processor, and, upon detecting gating of the clock signal, to instruct the controller to switch the cache memory from the second supply rail to the first supply rail if the cache memory is currently coupled to the second supply rail,
wherein the trigger device is configured to receive a signal indicating whether the second supply rail is being power collapsed, and to refrain from instructing the controller to switch the cache memory from the second supply rail to the first supply rail if the signal indicates that the second supply rail is being power collapsed.