Patents by Inventor Utkarsh Milind DESAI

Utkarsh Milind DESAI has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Patent number: 11847443
    Abstract: Methods, systems, and computer program products for constraints-based refactoring of monolith applications through attributed graph embeddings are provided herein.
    Type: Grant
    Filed: September 7, 2021
    Date of Patent: December 19, 2023
    Assignee: International Business Machines Corporation
    Inventors: Srikanth Govindaraj Tamilselvam, Utkarsh Milind Desai, Sambaran Bandyopadhyay
  • Patent number: 11836538
    Abstract: One embodiment provides a method, including: receiving information describing an application to be split into a plurality of microservices; identifying, utilizing a microservices advisor application, application elements of the application; generating, utilizing the microservices advisor application and from the application elements, a heterogenous graph, wherein each node within the heterogenous graph represents an application element and wherein each edge within the heterogenous graph represents a relationship between two nodes connected by the edge; identifying, based upon user input identifying preferences of relationships between nodes, groups of nodes within the heterogenous graph sharing a common attribute; and providing, from the microservices advisor application, a recommendation, based upon the identified groups of nodes, for splitting the application into microservices, wherein the recommendation includes a number of microservices for the application and application elements that should be included
    Type: Grant
    Filed: October 11, 2021
    Date of Patent: December 5, 2023
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Srikanth Govindaraj Tamilselvam, Utkarsh Milind Desai, Sambaran Bandyopadhyay, Alex Mathai
  • Patent number: 11782704
    Abstract: By analyzing transaction data of an executing application, an application graph is constructed, the application graph comprising a plurality of nodes and a plurality of edges connecting pairs of the plurality of nodes, a node in the application graph corresponding to a module of the application. The plurality of nodes is clustered into a set of clusters. Formation of a cluster in the set of clusters is analyzed, the analyzing identifying a central node of the cluster, a feature importance in placing a node into the cluster, and an edge importance in placing the node into the cluster. Responsive to a confidence value in the cluster being above a threshold confidence value, using the central node of the cluster, the application is refactored into a set of microservices, the cluster corresponding to a microservice, the central node of the cluster corresponding to a component of the microservice.
    Type: Grant
    Filed: June 21, 2022
    Date of Patent: October 10, 2023
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Srikanth Govindaraj Tamilselvam, Alex Mathai, Utkarsh Milind Desai
  • Patent number: 11768679
    Abstract: Methods, systems, and computer program products for identifying microservices from a monolith application through static code analysis are provided herein. A method includes performing a static code analysis to extract multiple features of a monolith application; partitioning code elements of the monolith application into multiple groups using an agglomerative clustering process, wherein the agglomerative clustering process is based on the extracted multiple features and a set of clustering metrics; obtaining at least one weight corresponding to one or more of: at least one of the multiple features and at least one of the multiple groups; adjusting the groups based on the at least one weight; generating a list of candidate microservices for the monolith application, wherein each candidate microservice in the list corresponds to a different one of the adjusted multiple groups; and outputting the list of candidate microservices to at least one of a system and a user.
    Type: Grant
    Filed: November 30, 2021
    Date of Patent: September 26, 2023
    Assignee: International Business Machines Corporation
    Inventors: Srikanth Govindaraj Tamilselvam, Utkarsh Milind Desai, Amith Singhee
  • Publication number: 20230177337
    Abstract: Methods, systems, and computer program products for multi-objective driven refactoring of a monolith application using reinforcement learning are provided herein. A computer-implemented method includes obtaining multiple code modules of a monolith application and a plurality of conflicting metrics for determining a set of microservices for the monolith application; performing a reinforcement learning-based clustering process that iteratively generates a plurality of clusters comprising the code modules based at least in part on feedback provided for the plurality of conflicting metrics at each iteration; generating candidate microservices for the monolith application, wherein each candidate microservice corresponds to a different one of the plurality of clusters; and outputting the generated candidate microservices to at least one of a system and a user.
    Type: Application
    Filed: December 6, 2021
    Publication date: June 8, 2023
    Inventors: Utkarsh Milind Desai, Srikanth Govindaraj Tamilselvam, Sai Koti Reddy Danda
  • Publication number: 20230168887
    Abstract: Methods, systems, and computer program products for identifying microservices from a monolith application through static code analysis are provided herein. A method includes performing a static code analysis to extract multiple features of a monolith application; partitioning code elements of the monolith application into multiple groups using an agglomerative clustering process, wherein the agglomerative clustering process is based on the extracted multiple features and a set of clustering metrics; obtaining at least one weight corresponding to one or more of: at least one of the multiple features and at least one of the multiple groups; adjusting the groups based on the at least one weight; generating a list of candidate microservices for the monolith application, wherein each candidate microservice in the list corresponds to a different one of the adjusted multiple groups; and outputting the list of candidate microservices to at least one of a system and a user.
    Type: Application
    Filed: November 30, 2021
    Publication date: June 1, 2023
    Inventors: Srikanth Govindaraj Tamilselvam, Utkarsh Milind Desai, Amith Singhee
  • Patent number: 11651627
    Abstract: Embodiments determine an optimized maintenance schedule for a maintenance program that includes multiple levels, each level including at least one asset (i.e., asset type) and at least one of the levels including a plurality of assets. Embodiments receive historical failure data for each of the assets, the historical failure data generated at least in part by a sensor network. For each asset, embodiments generate a probability density function (“PDF”) using kernel density estimation (“KDE”). For each asset, based on a reliability rate threshold, embodiments determine a cumulative density function (“CDF”) using the PDF. For each asset, embodiments determine an optimized time to failure (“TTF”) using the CDF. Embodiments then create the schedule for each level that includes a minimum TTF for the assets at each level.
    Type: Grant
    Filed: November 28, 2019
    Date of Patent: May 16, 2023
    Assignee: Oracle International Corporation
    Inventors: Amit Vaid, Neha Tomar, Utkarsh Milind Desai, Vijayalakshmi Krishnamurthy, Goldee Udani
  • Publication number: 20230111379
    Abstract: One embodiment provides a method, including: receiving information describing an application to be split into a plurality of microservices; identifying, utilizing a microservices advisor application, application elements of the application; generating, utilizing the microservices advisor application and from the application elements, a heterogenous graph, wherein each node within the heterogenous graph represents an application element and wherein each edge within the heterogenous graph represents a relationship between two nodes connected by the edge; identifying, based upon user input identifying preferences of relationships between nodes, groups of nodes within the heterogenous graph sharing a common attribute; and providing, from the microservices advisor application, a recommendation, based upon the identified groups of nodes, for splitting the application into microservices, wherein the recommendation includes a number of microservices for the application and application elements that should be included
    Type: Application
    Filed: October 11, 2021
    Publication date: April 13, 2023
    Inventors: Srikanth Govindaraj Tamilselvam, Utkarsh Milind Desai, Sambaran Bandyopadhyay, Alex Mathai
  • Publication number: 20230084685
    Abstract: Methods, systems, and computer program products for constraints-based refactoring of monolith applications through attributed graph embeddings are provided herein.
    Type: Application
    Filed: September 7, 2021
    Publication date: March 16, 2023
    Inventors: Srikanth Govindaraj Tamilselvam, Utkarsh Milind Desai, Sambaran Bandyopadhyay
  • Patent number: 11526790
    Abstract: Embodiments determine anomalies in sensor data generated by a sensor by receiving an evaluation time window of clean sensor data generated by the sensor. Embodiments receive a threshold value for determining anomalies. When the clean sensor data has a cyclic pattern, embodiments divide the evaluation time window into a plurality of segments of equal length, wherein each equal length comprises the cyclic pattern. When the clean sensor data does not have the cyclic pattern, embodiments divide the evaluation time window into a pre-defined number of plurality of segments of equal length. Embodiments convert the evaluation time window and each of the plurality of segments into corresponding curves using Kernel Density Estimation (“KDE”). For each of the plurality of segments, embodiments determine a Kullback-Leibler (“KL”) divergence value between corresponding curves of the segment and the evaluation time window to generate a plurality of KL divergence values.
    Type: Grant
    Filed: September 27, 2019
    Date of Patent: December 13, 2022
    Assignee: Oracle International Corporation
    Inventors: Karthik Gvd, Utkarsh Milind Desai, Vijayalakshmi Krishnamurthy
  • Patent number: 11354108
    Abstract: Methods, systems, and computer program products for assisting dependency migration are provided herein. A computer-implemented method includes determining differences between a first version of a dependency used by a software application and each of a plurality of upgrade candidates, the plurality of upgrade candidates comprising at least one of: (i) one or more newer versions of the dependency and (ii) a substitute dependency; identifying, based on the determined differences for a given one of the upgrade candidates, one or more sections of code of the software application that need to be patched in order to be compatible with the given upgrade candidate; and generating a modified version of the software application for the given upgrade candidate that comprises one or more patches for at least a portion of the identified one or more sections of code.
    Type: Grant
    Filed: March 2, 2020
    Date of Patent: June 7, 2022
    Assignee: International Business Machines Corporation
    Inventors: Giriprasad Sridhara, Utkarsh Milind Desai, Srikanth Govindaraj Tamilselvam, Senthil Kumar Kumarasamy Mani
  • Publication number: 20220113989
    Abstract: One embodiment provides a computer implemented computer implemented method, including: receiving information describing an application to be split into a plurality of modules to be hosted on a remote services environment; identifying a plurality of possible sets of modules for splitting the application; providing a visualization of the application split into modules, wherein the visualization displays different possible sets of modules as different layers within the visualization; and splitting, responsive to receiving user input within the visualization selecting one of the different layers, the application into one of the different possible sets of modules based upon the one of the different layers.
    Type: Application
    Filed: October 13, 2020
    Publication date: April 14, 2022
    Inventors: Srikanth Govindaraj Tamilselvam, Amith Singhee, Shivali Agarwal, Utkarsh Milind Desai, Raunak Sinha
  • Publication number: 20210271466
    Abstract: Methods, systems, and computer program products for assisting dependency migration are provided herein. A computer-implemented method includes determining differences between a first version of a dependency used by a software application and each of a plurality of upgrade candidates, the plurality of upgrade candidates comprising at least one of: (i) one or more newer versions of the dependency and (ii) a substitute dependency; identifying, based on the determined differences for a given one of the upgrade candidates, one or more sections of code of the software application that need to be patched in order to be compatible with the given upgrade candidate; and generating a modified version of the software application for the given upgrade candidate that comprises one or more patches for at least a portion of the identified one or more sections of code.
    Type: Application
    Filed: March 2, 2020
    Publication date: September 2, 2021
    Inventors: Giriprasad Sridhara, Utkarsh Milind Desai, Srikanth Govindaraj Tamilselvam, Senthil Kumar Kumarasamy Mani
  • Publication number: 20210264283
    Abstract: One embodiment provides a method, including: receiving a training dataset to be utilized for training a deep-learning model; identifying a plurality of aspects of the training dataset, wherein each of the plurality of aspects corresponds to one of a plurality of categories of operations that can be performed on the training dataset; measuring, for each of the plurality of aspects, an amount of variance of the aspect within the training dataset; creating additional data to be incorporated into the training dataset, wherein the additional data comprise data generated for each of the aspects having a variance less than a predetermined amount, wherein the data generated for an aspect results in the corresponding aspect having an amount of variance at least equal to the predetermined amount; and incorporating the additional data into the training dataset.
    Type: Application
    Filed: February 24, 2020
    Publication date: August 26, 2021
    Inventors: Srikanth Govindaraj Tamilselvam, Senthil Kumar Kumarasamy Mani, Jassimran Kaur, Utkarsh Milind Desai, Shreya Khare, Anush Sankaran, Naveen Panwar, Akshay Sethi
  • Patent number: 11060885
    Abstract: Embodiments determine anomalies in sensor data generated by a sensor. Embodiments receive a first time window of clean sensor data generated by the sensor, the clean sensor data including anomaly free data, and determine if the clean sensor data includes a cyclic pattern. When the clean sensor data has a cyclic pattern, embodiments divide the first time window into a plurality of segments of equal length, where each equal length includes the cyclic pattern. Embodiments convert the first time window and each of the plurality of segments into corresponding curves using Kernel Density Estimation (“KDE”). For each of the plurality of segments, embodiments determine a Kullback-Leibler (“KL”) divergence value between corresponding curves of the segment and the first time window to generate a plurality of KL divergence values.
    Type: Grant
    Filed: September 30, 2019
    Date of Patent: July 13, 2021
    Assignee: Oracle International Corporation
    Inventors: Karthik Gvd, Utkarsh Milind Desai, Vijayalakshmi Krishnamurthy, Goldee Udani
  • Publication number: 20210166499
    Abstract: Embodiments determine an optimized maintenance schedule for a maintenance program that includes multiple levels, each level including at least one asset (i.e., asset type) and at least one of the levels including a plurality of assets. Embodiments receive historical failure data for each of the assets, the historical failure data generated at least in part by a sensor network. For each asset, embodiments generate a probability density function (“PDF”) using kernel density estimation (“KDE”). For each asset, based on a reliability rate threshold, embodiments determine a cumulative density function (“CDF”) using the PDF. For each asset, embodiments determine an optimized time to failure (“TTF”) using the CDF. Embodiments then create the schedule for each level that includes a minimum TTF for the assets at each level.
    Type: Application
    Filed: November 28, 2019
    Publication date: June 3, 2021
    Inventors: Amit VAID, Neha TOMAR, Utkarsh Milind DESAI, Vijayalakshmi KRISHNAMURTHY, Goldee UDANI
  • Publication number: 20210097416
    Abstract: Embodiments determine anomalies in sensor data generated by a sensor by receiving an evaluation time window of clean sensor data generated by the sensor. Embodiments receive a threshold value for determining anomalies. When the clean sensor data has a cyclic pattern, embodiments divide the evaluation time window into a plurality of segments of equal length, wherein each equal length comprises the cyclic pattern. When the clean sensor data does not have the cyclic pattern, embodiments divide the evaluation time window into a pre-defined number of plurality of segments of equal length. Embodiments convert the evaluation time window and each of the plurality of segments into corresponding curves using Kernel Density Estimation (“KDE”). For each of the plurality of segments, embodiments determine a Kullback-Leibler (“KL”) divergence value between corresponding curves of the segment and the evaluation time window to generate a plurality of KL divergence values.
    Type: Application
    Filed: September 27, 2019
    Publication date: April 1, 2021
    Inventors: Karthik GVD, Utkarsh Milind DESAI, Vijayalakshmi Krishnamurthy
  • Publication number: 20210095996
    Abstract: Embodiments determine anomalies in sensor data generated by a sensor. Embodiments receive a first time window of clean sensor data generated by the sensor, the clean sensor data including anomaly free data, and determine if the clean sensor data includes a cyclic pattern. When the clean sensor data has a cyclic pattern, embodiments divide the first time window into a plurality of segments of equal length, where each equal length includes the cyclic pattern. Embodiments convert the first time window and each of the plurality of segments into corresponding curves using Kernel Density Estimation (“KDE”). For each of the plurality of segments, embodiments determine a Kullback-Leibler (“KL”) divergence value between corresponding curves of the segment and the first time window to generate a plurality of KL divergence values.
    Type: Application
    Filed: September 30, 2019
    Publication date: April 1, 2021
    Inventors: Karthik GVD, Utkarsh Milind DESAI, Vijayalakshmi KRISHNAMURTHY, Goldee UDANI
  • Publication number: 20200242511
    Abstract: Embodiments implement a machine learning prediction model with dynamic data selection. A number of data predictions generated by a trained machine learning model can be accessed, where the data predictions include corresponding observed data. An accuracy for the machine learning model can be calculated based on the accessed number of data predictions and the corresponding observed data. The accessing and calculating can be iterated using a variable number of data predictions, where the variable number of data predictions is adjusted based on an action taken during a previous iteration, and, when the calculated accuracy fails to meet an accuracy criteria during a given iteration, a training for the machine learning model can be triggered.
    Type: Application
    Filed: July 1, 2019
    Publication date: July 30, 2020
    Inventors: Someshwar Maroti KALE, Vijayalakshmi KRISHNAMURTHY, Utkarsh Milind DESAI