Patents by Inventor Mohsen Agsen
Mohsen Agsen 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: 12131522Abstract: In one embodiment, a method includes receiving a first user input from a first user, wherein the first user input comprises a partial request, presenting one or more suggested intent auto-completions corresponding to the partial request, receiving a selection by the first user of a first suggested intent auto-completion of the suggested intent auto-completions and a second user input, presenting one or more suggested slot auto-completions corresponding to one or more candidate slot-hypotheses corresponding to the second user input, respectively, wherein each of the candidate slot-hypotheses comprise a slot-suggestion, and wherein each suggested slot auto-completion comprises the second user input and the corresponding candidate slot-hypothesis, receiving a selection by the first user of a first suggested slot auto-completion of the suggested slot auto-completions, and presenting execution results of one or more tasks corresponding to the first suggested intent auto-completion and the first suggested slot autoType: GrantFiled: October 22, 2020Date of Patent: October 29, 2024Assignee: Meta Platforms, Inc.Inventors: Jiedan Zhu, Fuchun Peng, Benoit F. Dumoulin, Xiaohu Liu, Rajen Subba, Mohsen Agsen, Michael Robert Hanson
-
Patent number: 11086858Abstract: In one embodiment, a method includes, by one or more computing systems, receiving, from a client system associated with a user, an initial portion of a user input, wherein the initial portion comprises a partial request, and wherein the initial portion is received while the user is continuing to provide further input, generating, responsive to receiving the initial portion of the user input, one or more speculative queries based on the partial request and a machine-learning predictive model, wherein each speculative query is a predicted complete request based on the partial request, calculating a confidence score for each speculative query based on the predictive model, ranking the one or more speculative queries based on their respective confidence scores and associated costs, executing one or more of the speculative queries based on their ranks, and caching one or more results of the executed one or more speculative queries.Type: GrantFiled: December 17, 2018Date of Patent: August 10, 2021Assignee: Facebook, Inc.Inventors: Emmanouil Koukoumidis, Michael Robert Hanson, Mohsen Agsen
-
Patent number: 11055314Abstract: Techniques for a database-driven messaging user interface are described. In one embodiment, an apparatus may comprise a database access component operative to determine that a local messaging database of a messaging client on a client device has been updated; and examine the local messaging database to determine a set of database queries to rerun for a plurality of local user interface components; and the local user interface components operative to refresh based on running the set of database queries against the local messaging database. Other embodiments are described and claimed.Type: GrantFiled: December 31, 2018Date of Patent: July 6, 2021Assignee: FACEBOOK, INC.Inventors: Jason Curtis Jenks, Joshua Scott Evenson, Mohsen Agsen, Jeremy David Fein, Philippe Vincent Ajoux
-
Patent number: 11025576Abstract: Techniques for backend-specific cursor tracking are described. In one embodiment, an apparatus may comprise a local database synchronization component operative to initiate a client update at a messaging client on a client device, the client update associated with a specific backend service for a messaging system; retrieve an opaque backend-specific update cursor for the specific backend service; and store an updated opaque backend-specific update cursor for the messaging client; and a local network component operative to send the opaque backend-specific update cursor to the messaging system in association with a client update request; and receive an update package at the messaging client on the client device, the update package comprising the updated opaque backend-specific update cursor. Other embodiments are described and claimed.Type: GrantFiled: December 31, 2018Date of Patent: June 1, 2021Assignee: FACEBOOK, INC.Inventors: Jason Curtis Jenks, Joshua Scott Evenson, Mohsen Agsen, Jeremy David Fein, Philippe Vincent Ajoux
-
Patent number: 10979500Abstract: Techniques for directive-based messaging synchronization are described. In one embodiment, an apparatus may comprise a local network component operative to receive a directive package at a messaging client on a client device; and a local database synchronization component operative to execute the directive package with a messaging-sync virtual machine to modify a local messaging database of the messaging client; and refresh a user interface component of the messaging client in response to modifying the local messaging database of the messaging client. Other embodiments are described and claimed.Type: GrantFiled: December 31, 2018Date of Patent: April 13, 2021Assignee: FACEBOOK, INC.Inventors: Jason Curtis Jenks, Joshua Scott Evenson, Mohsen Agsen, Jeremy David Fein, Philippe Vincent Ajoux
-
Publication number: 20210042136Abstract: In one embodiment, a method includes receiving a first user input from a first user, wherein the first user input comprises a partial request, presenting one or more suggested intent auto-completions corresponding to the partial request, receiving a selection by the first user of a first suggested intent auto-completion of the suggested intent auto-completions and a second user input, presenting one or more suggested slot auto-completions corresponding to one or more candidate slot-hypotheses corresponding to the second user input, respectively, wherein each of the candidate slot-hypotheses comprise a slot-suggestion, and wherein each suggested slot auto-completion comprises the second user input and the corresponding candidate slot-hypothesis, receiving a selection by the first user of a first suggested slot auto-completion of the suggested slot auto-completions, and presenting execution results of one or more tasks corresponding to the first suggested intent auto-completion and the first suggested slot autoType: ApplicationFiled: October 22, 2020Publication date: February 11, 2021Inventors: Jiedan Zhu, Fuchun Peng, Benoit F. Dumoulin, Xiaohu Liu, Rajen Subba, Mohsen Agsen, Michael Robert Hanson
-
Patent number: 10853103Abstract: In one embodiment, a method includes receiving a user input including a partial request from a client system of a first user, analyzing the user input to generate one or more candidate hypotheses based on a personalized language model where each of the candidate hypotheses includes one or more of an intent-suggestion or a slot-suggestion, sending instructions for presenting one or more suggested auto-completions corresponding to one or more of the candidate hypotheses, respectively, to the client system, where each suggested auto-completion comprises the partial request and the corresponding candidate hypothesis, receiving an indication of a selection by the first user of a first suggested auto-completion of the suggested auto-completions from the client system, and executing one or more tasks based on the first suggested auto-completion selected by the first user via one or more agents.Type: GrantFiled: October 2, 2018Date of Patent: December 1, 2020Assignee: Facebook, Inc.Inventors: Jiedan Zhu, Fuchun Peng, Benoit F. Dumoulin, Xiaohu Liu, Rajen Subba, Mohsen Agsen, Michael Robert Hanson
-
Patent number: 10855761Abstract: Techniques for in-place directive execution are described. In one embodiment, an apparatus may comprise a local network component operative to receive a directive package at a messaging client on a client device, the directive package formatted according to a serialized directive schema; and store the directive package in a memory of the client device in the serialized directive schema; and a local database synchronization component operative to execute the directive package using in-place access of the directive package in the memory of the client device. Other embodiments are described and claimed.Type: GrantFiled: December 31, 2018Date of Patent: December 1, 2020Assignee: FACEBOOK, INC.Inventors: Jason Curtis Jenks, Joshua Scott Evenson, Mohsen Agsen, Jeremy David Fein, Philippe Vincent Ajoux
-
Publication number: 20190324780Abstract: In one embodiment, a method includes receiving a user input including a partial request from a client system of a first user, analyzing the user input to generate one or more candidate hypotheses based on a personalized language model where each of the candidate hypotheses includes one or more of an intent-suggestion or a slot-suggestion, sending instructions for presenting one or more suggested auto-completions corresponding to one or more of the candidate hypotheses, respectively, to the client system, where each suggested auto-completion comprises the partial request and the corresponding candidate hypothesis, receiving an indication of a selection by the first user of a first suggested auto-completion of the suggested auto-completions from the client system, and executing one or more tasks based on the first suggested auto-completion selected by the first user via one or more agents.Type: ApplicationFiled: October 2, 2018Publication date: October 24, 2019Inventors: Jiedan Zhu, Fuchun Peng, Benoit F. Dumoulin, Xiaohu Liu, Rajen Subba, Mohsen Agsen, Michael Robert Hanson
-
Patent number: 9300737Abstract: Systems and methods for providing data replication and/or synchronization across multiple processor-based devices. Data objects (e.g., image files, video files, audio files) may exist in a plurality of forms (e.g., original, preview, thumbnail). The systems and methods utilize object device links (ODLs) and needs/has flags which are replicated to multiple processor-based devices to provide partial or full object replication between multiple processor-based devices. Some implementations provide complete replica backups of objects. Some implementations provide temporary protection of original forms of objects, for example, when a user is traveling. Some implementations provide for relaying and shuttling of objects across multiple devices via one or more networks and/or via peer-to-peer wired or wireless communications also allowing for offsite and remote location backup of objects. Some implementations provide support for container and individual object replication policies with inheritance.Type: GrantFiled: June 23, 2015Date of Patent: March 29, 2016Assignee: Mylio, LLCInventors: Mohsen Agsen, Deon Brewis, David de Regt, Momin Al-Ghosien, Jean Pierre Duplessis, Craig Symonds
-
Patent number: 9189147Abstract: Ink lag compensation techniques are described. In implementations, an input is recognized by a computing device as an ink stroke to be rendered on a display device of the computing device. An extension is predicted, by the computing device, to be applied to the ink stroke that is likely to be subsequently input in conjunction with the ink stroke. The ink stroke and the extension are output for concurrent display on the display device of the computing device.Type: GrantFiled: June 22, 2010Date of Patent: November 17, 2015Assignee: Microsoft Technology Licensing, LLCInventors: Yasser Asmi, Scott R. Marison, Mohsen Agsen
-
Publication number: 20130063460Abstract: An integrated development environment includes a visual shader designer engine that enables a user to create a pixel shader embodied as a directed acyclic graph. The directed acyclic graph contains nodes, where each node is associated with an operation that is used to generate a color characteristic of a final rendered model. The visual shader designer engine displays a rendered image at each node that is the result of the node's operation during development of the directed acyclic graph. An error texture is rendered in a node when an erroneous condition is detected in rendering a node's operations.Type: ApplicationFiled: September 8, 2011Publication date: March 14, 2013Applicant: Microsoft CorporationInventors: Scott Marison, Jean-Pierre Duplessis, Mohsen Agsen, Tito Pagan
-
Publication number: 20110310118Abstract: Ink lag compensation techniques are described. In implementations, an input is recognized by a computing device as an ink stroke to be rendered on a display device of the computing device. An extension is predicted, by the computing device, to be applied to the ink stroke that is likely to be subsequently input in conjunction with the ink stroke. The ink stroke and the extension are output for concurrent display on the display device of the computing device.Type: ApplicationFiled: June 22, 2010Publication date: December 22, 2011Applicant: MICROSOFT CORPORATIONInventors: Yasser Asmi, Scott R. Marison, Mohsen Agsen
-
Publication number: 20110072036Abstract: A page-based content storage system may be provided by a method of managing content which includes generating, from a plurality of electronic files containing displayable content, a plurality of viewpages, where each viewpage contains one or more portions of the displayable content and each viewpage is displayable in a single-page view. The method further includes assembling the viewpages into a journal to provide a page-based storage structure configured to enable individual, selective management of the viewpages based on properties associated with the one or more portions of the displayable content. The method further includes visually presenting the viewpages as single-page views accessible via a page-based user interface of a computing system.Type: ApplicationFiled: January 27, 2010Publication date: March 24, 2011Applicant: MICROSOFT CORPORATIONInventors: Mohsen Agsen, Georg Petschnigg, Yasser Asmi, Justin Goshi
-
Publication number: 20100325527Abstract: A user input is received as a digital annotation, and the digital annotation is maintained as at least part of an overlay layer. The digital annotation is displayed, and if information from a program is being displayed then the digital annotation is displayed concurrently with the information from the program. Interaction between the overlay layer and the application layer can also be allowed.Type: ApplicationFiled: June 18, 2009Publication date: December 23, 2010Applicant: MICROSOFT CORPORATIONInventors: Julio Estrada, Mohsen Agsen, Yasser Asmi
-
Publication number: 20090319993Abstract: Software architectures may include many types of elements, such as classes, functions, databases, queries, and users. An architecture may be the subject of many types of analysis, such as discovery of architecture features and design choices, rendering according to (e.g.) a visual layout or as a hierarchical data set, validation and testing of a chosen design, and evaluation by systems analysis tools. However, the information documenting the software architecture is often organized in a disjointed manner, such as in a set of release documentation, inline comments in source code, notes recorded in version control systems, and contact databases. Instead, the software architecture may be represented as a set of nodes of various node categories interconnected by links of different types. The representation may then be utilized in many types of analysis, such as visualization, transformation, and element analysis by complex systems analysis tools.Type: ApplicationFiled: June 24, 2008Publication date: December 24, 2009Applicant: MICROSOFT CORPORATION,Inventors: Allen Wayne Denver, Mohsen Agsen, Craig Joseph Symonds, Jacob Meyer, Scott Marison
-
Publication number: 20090222762Abstract: In one or more embodiments, a cascading item and action browser enables items and associated actions to be displayed. In at least some embodiments, items are presented in a column and can be selected by a user. Responsive to selecting a particular item or items, actions that can be performed on or relative to a selected item or items can be presented in a second adjacent column. From here, users can select one or more actions that can be performed on items presented in the first-mentioned column. Results of the action or actions being performed, at least some of which can include additional items, can then be presented in a next-adjacent column. Navigation through the items and actions displayed in their respective columns can then continue in a cascaded fashion.Type: ApplicationFiled: February 29, 2008Publication date: September 3, 2009Applicant: MICROSOFT CORPORATIONInventors: Allen Denver, Mohsen Agsen, Craig Symonds, Tracey Trewin, Jean-Pierre Duplessis, Chris Lovett, Jacob I. Meyer, Scott R. Marison
-
Publication number: 20090204912Abstract: Expanding and contracting a display screen container. Data is stored in a computer readable medium. The data represents a screen container such as a graphical desktop user interface displayable to a user on a computer display of a computing device. Data is stored representing artifacts, including one or more application graphical user interface artifacts for applications that are instantiated on the computing device. Information is stored specifying locations where each of the artifacts should be graphically located in the screen container. The graphical size of screen container is determined by the locations of the artifacts. Based on user input, a portion of the screen container is displayed to the user on the computer display of the computing device. The screen container may be expanded or contracted based on opening or closing graphical user interface artifacts, adding or removing artifacts, or repositioning artifacts.Type: ApplicationFiled: February 8, 2008Publication date: August 13, 2009Applicant: MICROSOFT CORPORATIONInventors: Bradford H. Lovering, Mohsen Agsen, Randy Kimmerly, Douglas Purdy, Christopher L. Anderson, Vijaye Raji, Vikram Bapat, Steven J. Clarke, Bryan J. Tiller, Florian Voss, Stephen M. Danton, Andrew C. Wassyng, Laurent Mollicone, James R. Flynn, Arwen E. Pond, Robert A. DeLine, Gina D. Venolia
-
Publication number: 20050149953Abstract: A component-based framework includes system services and component integration interfaces that provide a run-time environment for component-based server application in which server application components have control over the duration of their state independent of client action. The framework provides functions that a server application component calls to indicate its work for a client is complete, and its state is to be destroyed. On the component's return from the client's method call, the framework destroys the component's state thus releasing any server computer resources held by the component. This allows the server application components to be programmed so as to minimize the duration that their state remains in memory consuming server computer resources, and which enhances scalability of the server application.Type: ApplicationFiled: February 15, 2005Publication date: July 7, 2005Applicant: Microsoft CorporationInventors: Rodney Limprecht, Patrick Helland, Mohsen Agsen
-
Publication number: 20050144590Abstract: A component-based framework includes system services and component integration interfaces that provide a run-time environment for component-based server application in which server application components have control over the duration of their state independent of client action. The framework provides functions that a server application component calls to indicate its work for a client is complete, and its state is to be destroyed. On the component's return from the client's method call, the framework destroys the component's state thus releasing any server computer resources held by the component. This allows the server application components to be programmed so as to minimize the duration that their state remains in memory consuming server computer resources, and which enhances scalability of the server application.Type: ApplicationFiled: February 15, 2005Publication date: June 30, 2005Applicant: Microsoft CorporationInventors: Rodney Limprecht, Patrick Helland, Mohsen Agsen