Patents by Inventor Michael Colena

Michael Colena 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: 10104170
    Abstract: A system and method of assigning resource consumers to resources using constraint programming is disclosed. The resource consumers are to be assigned to the resources in a way that achieves one or more particular objectives, such as resiliency, load balancing, and network embedding criteria. A data model, for application to a constraint programming solver, formulates the assignment problem as a set of constraints for a solution to be found. The data model includes a first set of data model elements corresponding to pairs of resources, each pair having two resources in different failure domains. The data model includes a second set of data model elements corresponding to the resource consumers. The data model includes a constraint that limits assignment of the resource consumers to the resources to: assigning the resource consumers respectively to the pairs of resources.
    Type: Grant
    Filed: January 5, 2016
    Date of Patent: October 16, 2018
    Assignee: Oracle International Corporation
    Inventors: Samir Sebbah, Michael Colena
  • Patent number: 10007538
    Abstract: Techniques for assigning applications to virtual machines (VMs) using constraint programming are disclosed. The applications are associated with application groups. The assignment problem requires that each application of a particular application group be assigned to a VM hosted by a same machine. A data model, for application to a constraint programming solver, formulates the assignment problem as a set of constraints for a solution to be found. The data model includes a set of data model elements corresponding to the applications to be processed. The data model includes a set of data model elements corresponding to the VMs. The data model includes a set of constraints that limits assignment of any particular application to a VM corresponding to a tenant associated with the particular application. The set of constraints further limits assignment of applications corresponding to a same application group to VMs executing on a same machine.
    Type: Grant
    Filed: July 15, 2016
    Date of Patent: June 26, 2018
    Assignee: Oracle International Corporation
    Inventors: Serdar Kadioglu, Michael Colena, Samir Sebbah, Mirza Mohsin Beg
  • Publication number: 20170220364
    Abstract: Techniques for assigning applications to virtual machines (VMs) using constraint programming are disclosed. The applications are associated with application groups. The assignment problem requires that each application of a particular application group be assigned to a VM hosted by a same machine. A data model, for application to a constraint programming solver, formulates the assignment problem as a set of constraints for a solution to be found. The data model includes a set of data model elements corresponding to the applications to be processed. The data model includes a set of data model elements corresponding to the VMs. The data model includes a set of constraints that limits assignment of any particular application to a VM corresponding to a tenant associated with the particular application. The set of constraints further limits assignment of applications corresponding to a same application group to VMs executing on a same machine.
    Type: Application
    Filed: July 15, 2016
    Publication date: August 3, 2017
    Applicant: Oracle International Corporation
    Inventors: Serdar Kadioglu, Michael Colena, Samir Sebbah, Mirza Mohsin Beg
  • Publication number: 20170195410
    Abstract: A system and method of assigning resource consumers to resources using constraint programming is disclosed. The resource consumers are to be assigned to the resources in a way that achieves one or more particular objectives, such as resiliency, load balancing, and network embedding criteria. A data model, for application to a constraint programming solver, formulates the assignment problem as a set of constraints for a solution to be found. The data model includes a first set of data model elements corresponding to pairs of resources, each pair having two resources in different failure domains. The data model includes a second set of data model elements corresponding to the resource consumers. The data model includes a constraint that limits assignment of the resource consumers to the resources to: assigning the resource consumers respectively to the pairs of resources.
    Type: Application
    Filed: January 5, 2016
    Publication date: July 6, 2017
    Inventors: Samir Sebbah, Michael Colena
  • Patent number: 9588819
    Abstract: A data model for application to a constraint programming solver is generated. The data model includes a set of data model elements. A particular data model element corresponds to a particular request. The particular data model element also corresponds to one or more resources that may be assigned to the request. The data model also includes a set of constraints. One or more sort/search algorithms may be applied with the data model to the constraint programming solver. The sort/search algorithms may direct the constraint programming solver to output certain preferred assignments of resources to requests.
    Type: Grant
    Filed: July 24, 2015
    Date of Patent: March 7, 2017
    Assignee: Oracle International Corporation
    Inventors: Serdar Kadioglu, Michael Colena
  • Publication number: 20160306671
    Abstract: A data model for application to a constraint programming solver is generated. The data model includes a set of data model elements. A particular data model element corresponds to a particular request. The particular data model element also corresponds to one or more resources that may be assigned to the request. The data model also includes a set of constraints. One or more sort/search algorithms may be applied with the data model to the constraint programming solver. The sort/search algorithms may direct the constraint programming solver to output certain preferred assignments of resources to requests.
    Type: Application
    Filed: July 24, 2015
    Publication date: October 20, 2016
    Inventors: Serdar Kadioglu, Michael Colena
  • Patent number: 9442965
    Abstract: A method of efficiently representing ranged data sets may include storing a data structure representing a first data set. The data structure may include one or more nodes each representing distinct portions of the data set, and the first data set may include a range of multiple values bounded by an upper bound and a lower bound. A first node may represent the range of multiple values by storing the upper bound and the lower bound. The method may also include receiving a second data set to add to the first data set. The intersection of the first data set and the second data may include at least one value.
    Type: Grant
    Filed: August 21, 2013
    Date of Patent: September 13, 2016
    Assignee: ORACLE INTERNATIONAL CORPORATION
    Inventor: Michael Colena
  • Patent number: 9443210
    Abstract: A product configurator comprises a constraint network having a plurality of nodes. The configurator allows a modeler to designate that one of more nodes of a configuration are input-required nodes. During an interactive session, the configurator may receive a request for an auto-completion of the configuration. The configurator will determine if an input has been received for the input-required nodes, and prohibit the auto-completion if the input has not been received.
    Type: Grant
    Filed: November 24, 2008
    Date of Patent: September 13, 2016
    Assignee: Oracle International Corporation
    Inventors: Claire M. Bagley, David J. Kulik, Joyce Ng, Martin P. Plotkin, Gao Chen, Michael Colena
  • Publication number: 20130339402
    Abstract: A method of efficiently representing ranged data sets may include storing a data structure representing a first data set. The data structure may include one or more nodes each representing distinct portions of the data set, and the first data set may include a range of multiple values bounded by an upper bound and a lower bound. A first node may represent the range of multiple values by storing the upper bound and the lower bound. The method may also include receiving a second data set to add to the first data set. The intersection of the first data set and the second data may include at least one value.
    Type: Application
    Filed: August 21, 2013
    Publication date: December 19, 2013
    Applicant: ORACLE INTERNATIONAL CORPORATION
    Inventor: MICHAEL COLENA
  • Patent number: 8521785
    Abstract: Embodiments of the present invention describe using a data structure to represent variable domains in solving a constraint problem. The data structure includes nodes that are configured to represent ranges of values in order to save memory space and processor power. Ranges of values and single values may be both added to and removed from the data structure such that the data structure does not include duplicate values. Operations may include detecting multiple nodes with adjacent or overlapping ranges that may be combined into a single node, and adding or removing all the values in the structure that are beyond a threshold value. In one embodiment the data structure may be a balanced binary tree. Constraint solvers may either add values to the data structure as the values are eliminated from the solution, or they may remove those values.
    Type: Grant
    Filed: January 3, 2012
    Date of Patent: August 27, 2013
    Assignee: Oracle International Corporation
    Inventor: Michael Colena
  • Patent number: 8504501
    Abstract: A system for solving a dynamic constraint satisfaction problem comprises a constraint network of variables and constraints. The system creates a first sub-problem model that includes a first model type, one or more first variables and zero or more first constraints. The system propagates the first constraints through the constraint network and determines if a first conflict is detected from propagating the first constraints. If the first conflict is detected, the system restores the constraint network variables to a first previous state before the first constraints were propagated. The system creates a first sub-problem set that includes a second model type and one or more sub-problem models. The system connects the first sub-problem model to the first sub-problem set via a second constraint and propagates the second constraint through the constraint network.
    Type: Grant
    Filed: November 13, 2008
    Date of Patent: August 6, 2013
    Assignee: Oracle International Corporation
    Inventors: Michael Colena, Claire M. Bagley, Gao Chen
  • Publication number: 20130173665
    Abstract: Embodiments of the present invention describe using a data structure to represent variable domains in solving a constraint problem. The data structure includes nodes that are configured to represent ranges of values in order to save memory space and processor power. Ranges of values and single values may be both added to and removed from the data structure such that the data structure does not include duplicate values. Operations may include detecting multiple nodes with adjacent or overlapping ranges that may be combined into a single node, and adding or removing all the values in the structure that are beyond a threshold value. In one embodiment the data structure may be a balanced binary tree. Constraint solvers may either add values to the data structure as the values are eliminated from the solution, or they may remove those values.
    Type: Application
    Filed: January 3, 2012
    Publication date: July 4, 2013
    Applicant: Oracle International Corporation
    Inventor: Michael Colena
  • Patent number: 8464156
    Abstract: An interactive product configurator includes a constraint network having a plurality of nodes. The configurator receives a new user choice after previously asserting one or more default decisions. The configurator then retracts the previously asserted default decisions before asserting the new user choice. The default decisions are then reasserted.
    Type: Grant
    Filed: August 8, 2008
    Date of Patent: June 11, 2013
    Assignee: Oracle International Corporation
    Inventors: Claire M. Bagley, Martin P. Plotkin, Michael Colena
  • Patent number: 8458050
    Abstract: A product configurator includes a constraint based network that includes a plurality of nodes. The configurator receives one or more user selections and generates one or more automatic selections to form a complete configuration. The configurator receives a request to change the configuration after forming the complete configuration, and retracts the automatic selections. For each of the retracted automatic selections, the configurator determines if the retracted automatic selection is a configuration-defining selection and reasserts the configuration-defining selections.
    Type: Grant
    Filed: November 13, 2008
    Date of Patent: June 4, 2013
    Assignee: Oracle International Corporation
    Inventors: Claire M. Bagley, Martin P. Plotkin, David J. Kulik, Michael Colena, Gao Chen, Joyce Ng
  • Patent number: 8335987
    Abstract: A product configurator is based on a constraint network having a plurality of nodes. The product configurator, when it receives a user choice, determines which nodes in the constraint network are affected by the user choice. For each affected node, the product configurator stores the prior domain state of the node and associates the stored prior domain state with the user choice. Therefore, the nodes can be restored to their prior state if the user choice is later removed for any reason.
    Type: Grant
    Filed: August 7, 2008
    Date of Patent: December 18, 2012
    Assignee: Oracle International Corporation
    Inventors: Claire M. Bagley, Martin P. Plotkin, Michael Colena
  • Patent number: 8209276
    Abstract: A constraint based system solves a network that includes a first variable node having a first integer domain, a second variable node having a second integer domain, and a constraint for the first variable node and the second variable node. The system retrieves a first integer domain representation of the first integer domain and a second integer domain representation of the second integer domain and determines from the first and second integer domain representations if the first integer domain or second integer domain has at least one excluded value. The system then determines a type of constraint consistency checking based on whether the integer domains have at least one excluded value.
    Type: Grant
    Filed: October 27, 2008
    Date of Patent: June 26, 2012
    Assignee: Oracle International Corporation
    Inventors: Michael Colena, Joyce Ng, Claire M. Bagley
  • Patent number: 8170970
    Abstract: A constraint solver solves a constraint satisfaction problem (“CSP”) that includes a network of variables and constraints. The solver receives a sub-expression and determines if the sub-expression is an internal constraint of the CSP. The internal constraint has a supporting operator expression. If the sub-expression is an internal constraint, the solver determines any or all top constraint expressions associated with the supporting operator expression.
    Type: Grant
    Filed: June 24, 2009
    Date of Patent: May 1, 2012
    Assignee: Oracle International Corporation
    Inventors: Claire M. Bagley, Joyce Ng, Michael Colena, Gao Chen
  • Patent number: 8165981
    Abstract: A dynamic constraint solver for solving a constraint satisfaction problem model receives a request for a current solving session to recreate a first solving session for the model. The solver then collects a deferred port list comprising one or more ports in the model that need a sub-problem and creates one or more runtime constraints for the model. For each of the created runtime constraints, the solver propagates the constraint and determines if the propagation generates a conflict. If the propagation generates a conflict, the solver dismisses the constraint and reverts the model to a state before the constraint was propagated.
    Type: Grant
    Filed: April 27, 2009
    Date of Patent: April 24, 2012
    Assignee: Oracle International Corporation
    Inventors: Michael Colena, Claire M. Bagley
  • Patent number: 8065255
    Abstract: A solver solves a dynamic constraint satisfaction problem that is modeled as a constraint network of variables and constraints. The solver generates a dynamic sub-problem facility that includes one or more sub-problem pools that each comprises a sub-problem type, one or more sub-problems for the sub-problem type, and one or more clients for the sub-problem type. The solver generates a sub-problem set domain that comprises zero or more included sub-problems and zero or more excluded sub-problems. The solver synchronizes the sub-problem set domain with the dynamic sub-problem facility.
    Type: Grant
    Filed: November 13, 2008
    Date of Patent: November 22, 2011
    Assignee: Oracle International Corporation
    Inventors: Michael Colena, Gao Chen
  • Publication number: 20100332435
    Abstract: A constraint solver solves a constraint satisfaction problem (“CSP”) that includes a network of variables and constraints. The solver receives a sub-expression and determines if the sub-expression is an internal constraint of the CSP. The internal constraint has a supporting operator expression. If the sub-expression is an internal constraint, the solver determines any or all top constraint expressions associated with the supporting operator expression.
    Type: Application
    Filed: June 24, 2009
    Publication date: December 30, 2010
    Applicant: Oracle International Corporation
    Inventors: Claire M. BAGLEY, Joyce NG, Michael COLENA, Gao CHEN