Abstract:
Document interfaces for control of operation of systems or devices can be cumbersome, and users must issue complete device instructions each time, often using interfaces that are not user friendly. A system and method for man-machine interfacing receives natural language input from one or more users. The natural langue input identified relative to a user, and passed to extract information such as instructions to control a device. Incoming user instructions are compared against prior instructions from the same user, and a determination is made as to whether prior information is usable in connection with the current instructions. The system thus anticipates a user&#39;s needs based on prior activities of that user. Input from other devices associated with the same user, which can be used to gauge a user&#39;s habits, can be used to further refine proposed device activity to enhance a user&#39;s experience.

Description:
TECHNICAL FIELD 
       [0001]    Example embodiments of this application relates generally to human control of devices or operations. The application has particular utility in connection with natural language device control operations. 
       BACKGROUND 
       [0002]    Computing power of digital devices continues to increase at a rapid pace, as has the sophistication and capability of software that runs on them. Early computers were best suited for pure mathematical calculations. As computing power increased, devices were enabled to play, record and manipulate audio data, more recently in real time. Further increases in computing power allowed for migration of these capabilities into video. 
         [0003]    A particular problem associated with operation of computers and devices has been the man/machine interface. Earliest control was accomplished by switches which merely toggled power to devices or components between on and off. Earliest digital inputs were accomplished similarly by manually setting bit values. Interfaces evolved into more sophisticated electro-mechanical human interaction through punch cards, paper tape and digital keyboards. Hardware and software advances facilitated use of pointing devices such as mice, trackballs and light pens, and even more recently, touchscreens. 
         [0004]    Today, hardware and software allows for verbal or natural language inputs to computing devices. Speech-to-text and speech control are becoming common. Apple, Inc. introduced voice control of its smartphones with its introduction of Siri. Siri uses a voice interface to answer questions, make recommendations and perform actions by delegating requests to a set of Web services with limited capabilities, functionality, and usability. 
       SUMMARY 
       [0005]    Document interfaces for control of operation of systems or devices can be cumbersome, and users must issue complete device instructions each time, often using interfaces that are not user friendly. 
         [0006]    In accordance with an example embodiment of the subject application, natural language input is received from a user desiring to interact with a device. Natural language input is used to identify users associated with an input session. Received natural language is parsed to extract instructions. Received instructions are compared with previous instructions received from in identified user, and the result of this comparison generates an output instruction for control of an associated device. 
         [0007]    In accordance with another example embodiment, data corresponding to a user&#39;s habits, tastes or preferences is used to anticipate the user&#39;s needs. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0008]    Various embodiments will become better understood with regard to the following description, appended claims and accompanying drawings wherein: 
           [0009]      FIG. 1  illustrates an example embodiment of a network; 
           [0010]      FIG. 2  is block diagram of an example embodiment of a document processing device; 
           [0011]      FIG. 3  is a block diagram of an example embodiment of a document processing device functionality; 
           [0012]      FIG. 4  is a first example embodiment of a user-machine dialog session; 
           [0013]      FIG. 5  is a second example embodiment of a user-dialog session; 
           [0014]      FIG. 6  is a third example embodiment of a user-dialog session; 
           [0015]      FIG. 7  is a fourth example embodiment of a user-dialog session; 
           [0016]      FIG. 8  is a fifth example embodiment of a user-dialog session; 
           [0017]      FIG. 9  is a sixth example embodiment of a user-dialog session; 
           [0018]      FIG. 10  is a seventh example embodiment of a user-dialog session; 
           [0019]      FIG. 11  is an eighth example embodiment of a user-dialog session; 
           [0020]      FIG. 12  is a diagram of an example embodiment of an intelligent interface utilizing user data obtained via a network; 
           [0021]      FIG. 13  is a block diagram of an example embodiment of operation of a natural language interface for device interaction; and 
           [0022]      FIG. 14  is a flowchart of an example embodiment of operation of a predictive, natural language device operation system. 
       
    
    
     DETAILED DESCRIPTION 
       [0023]    Example embodiments described herein facilitate natural language man/machine interfaces suitable for textual or audio input. In further example embodiments, machine capabilities monitor a user&#39;s historic interaction with devices, which can be the actual device being used, as well as the user&#39;s interaction with local or remote devices or sensors. This information is used to improve and augment the user&#39;s experience in a future man/machine interfacing. Ongoing man/machine interactions reveal much about a user&#39;s preferences and habits, facilitating predictive control of devices which may be subject to a user&#39;s confirmation of machine-proposed activity. Such function and capability is applicable to many areas. In a particular example embodiment, such a system is employed in connection with document processing devices. 
         [0024]    Suitable document processing devices include scanners, copiers, printers, plotters and fax machines. More recently, two or more of these functions are contained in a single device or unit, referred to as a multifunction peripheral (MFP) or multifunction device (MFD), which may also serve as an e-mail or other information routing gateway. As used herein, MFP includes any device having one or more document processing functions such as those noted above. While example embodiments described herein refer to MFPs, it will be appreciated that they may be also applied to single use devices, such as a printer. 
         [0025]    MFPs can be expensive, particularly when multiple devices are required for service. In addition to unit costs, MFPs may consume resources, such as paper, toner, ink or power. It is therefore advantageous to share one or more MFPs among multiple users, via workstations, notebook computers, tablets, smartphones, or any other suitable computing device. Interaction between users and MFPs, between MFPs and servers, or between computing devices, can occur over any wired or wireless data infrastructure, such as local area networks (LANs), wide area networks (WANs) such enterprise WANS or the Internet, or point-to-point communication paths, such as universal serial bus (USB), infrared, Bluetooth, or near field communication (NFC). 
         [0026]    Turning now to  FIG. 1 , illustrated is an example embodiment of a network  100 . Network  100  is suitably comprised of any data transfer infrastructure, such as those described above. In the illustrated example embodiment, network  100  includes a wide-area network  104 , such as the Internet. Network  100  provides data connection to one or more document processing devices, such as MFP  110 . MFP  110  includes a user interface, example embodiments of which will be detailed below. One or more servers, such as those illustrated by servers  112  and  114  are also in data communication with the network  100 . User interaction is suitably provided locally or remotely with any suitable data device, such as computers, tablets, PDAs, smartphones, or the like. By way of example, a user suitably interfaces via a computer  118  or tablet  120 . 
         [0027]    Also illustrated in data communication with network  100  in the example embodiment of  FIG. 1  is network interface  130  which suitably provides a gateway to monitored or intelligent environmental devices, such as a lighting control system  132 , a heating/ventilation/air-conditioning control system  134 , or devices such as thermostats, humidistats, thermometers, barometers or the like. Also suitably in data communication with network  100  is information obtained from a retailer or financial institution that provides additional, historic information. 
         [0028]    The example embodiment of  FIG. 1  also illustrates a network interface  150  represented as a wireless access point. Network interface  150  suitably provides a local area network having data connection with entertainment systems, computers or appliances. In the example, these devices include an entertainment system, such stereo system  160 , a television  162  and appliances, such as washer  164  and dryer  168 . It is understood that any suitable device may be implemented, either locally or remotely, such as stoves, ovens, microwaves, alarms, refrigerators or the like. Device connectivity, such as described above, has recently been described using the term: “the Internet of Things”. 
         [0029]    Generally, devices can connected to the wide-area network  104  via any suitable means as would be understood in the art. For example, as illustrated, a point of sale terminal  130  is shown as being connected to the wide-area network  104 . 
         [0030]    As will be understood further below, devices in the example network  100  have a common ability to detect and report user activity associatively with user identity. In one example embodiment, relative to MFP  110 , information is suitably obtained about a user&#39;s history of number of copies made, document finishing choices, e-mail destinations, file types, media types, storage preferences, destination devices, document selections, payment processing, and the like. By way of particular example, further user histories or propensities can be gleaned from entertainment systems which may report a user&#39;s taste in music or movies, appliances with may report cooking habits, thermostats which report environmental preferences, point of sale terminals which report purchase history and other devices that report on things such as a user&#39;s eating habits, sleep habits, travel habits, shopping habits and the like. 
         [0031]    Turning now to  FIG. 2 , illustrated is an example of a digital processing system  200  suitably comprised within MFP  110 . Included are one or more processors, such as that illustrated by processor  202 . Each processor is suitably associated with non-volatile memory, such as ROM  204 , and random access memory (RAM)  206 , via a data bus  212 . 
         [0032]    Processor  202  is also in data communication with a storage interface  208  for reading or writing to a storage  216 , suitably comprised of a hard disk, optical disk, solid-state disk, cloud-based storage, or any other suitable data storage as will be appreciated by one of ordinary skill in the art. 
         [0033]    Processor  202  is also in data communication with a network interface  210  which provides an interface to a network interface controller (NIC)  214 , which in turn provides a data path to any suitable wired or physical network connection via network interface connection (NIC)  214 , or to a wireless data connection via wireless network interface  218 . Example wireless connections include cellular, Wi-Fi, Bluetooth, NFC, wireless universal serial bus (wireless USB), satellite, and the like. Example wired interfaces include Ethernet, USB, IEEE 1394 (FireWire), telephone line, or the like. NIC  214  and wireless network interface  218  suitably provide for connection to an associated network  220 . 
         [0034]    Processor  202  is also in data communication with a user input/output (I/O) interface  220  which provides data communication with user peripherals, such as displays, keyboards, mice, track balls, touch screens, or the like. Also in data communication with data bus  212  is a document processor interface  222  suitable for data communication with MFP functional units. In the illustrate example, these units include copy hardware  224 , scan hardware  226 , print hardware  228  and fax hardware  230  which together comprise MFP functional hardware  232 . It will be understood than functional units are suitably comprised of intelligent units, including any suitable hardware or software platform. 
         [0035]    Turning now to  FIG. 3 , illustrated is an example embodiment of functional components  300  of a suitable MFP, such as MFP  110  of  FIG. 1 . Controller  302  functions as the computing capabilities of the MFP. The controller interfaces with functions including print  304 , fax  306 , scan  308  and e-mail  310 . Jobs associated with these functions are suitably processed via job queue  312 , which in turn outputs jobs for appropriate processing. By way of example, jobs may be interfaced with a raster image processor/page description language interpreter  316  for output on tangible media. Jobs may also enter the job queue  312  via job parser  318  which suitably interfaces with client devices services  322 , or via network services  314  which suitably interfaces with client network services  320 . 
         [0036]    Controller  302  also suitably interfaces with a language parser  340  operable to parse language, such as natural language in text form or from captured audio. Controller  302  also communicates with user interface  350  which suitably provides human interaction. By way of example, human input is suitably electro-mechanical, such was with keyboard  334 , or audible, such as with microphone  338 . It will be appreciated that any suitable input may be used, such as a mouse, trackball, light pen, touch screen, gesture sensors, or the like. A visible rendering of text or graphical output is suitably output to video display terminal  340 . Also, remote interfaces, such as with smartphone  344  allow for interfacing with the controller  302 . 
         [0037]      FIGS. 4-10  illustrate example embodiments of human-device interaction in connection with the teachings herein. In the example of  FIG. 4 , a user interacts with an MFP via a natural language interface in a dialog  400 . As illustrated with the dialog, the MFP is enabled to receive a user request for a document processing operation comprising printing an employment resume, and soliciting required information to complete the operation and update the user relative to progress. The MFP solicits and remembers the user&#39;s credentials and print settings to complete the operation in the example. The next time that the user solicits a print operation for an employment resume&#39; in dialog  500  of  FIG. 5 , the MFP recalls background information supplied earlier, solicits any additional information needed, and proceeds to complete the operation with minimal instruction and inconvenience to the user. 
         [0038]    Turning to the example of  FIG. 6 , similar natural language instruction is associated with a wire transfer payment in dialog  600 .  FIG. 7  illustrates dialog  700  wherein expedited processing is accomplished for the user during a subsequent, analogous operation. 
         [0039]      FIG. 8  illustrates another example embodiment dialog  800 . In the example, a user provides information as to “R” being shorthand for an employment resume&#39;. In  FIG. 9 , a subsequent dialog  900  facilitates printing of an employment resume&#39; using the now-established shorthand. 
         [0040]      FIG. 10  illustrates an example dialog  1000  wherein a user requests a document processing operation for a book printing, and wherein the MFP inquires further as to particulars of the print operation. The document processing operation is commenced with the user&#39;s instruction and the MFP provides processing time information to the user in a user-friendly manner. 
         [0041]    In the example illustration of  FIG. 11 , dialog  1100  includes a user request for a document processing operation which results in the MFP informing the user of problems associated with processing. In the illustration, human intervention is required to address a paper jam, and the user&#39;s assistance is requested. 
         [0042]    Turning now to  FIG. 12 , illustrated is an example embodiment of user/device interaction  1200  wherein data obtained from home or office equipment associated with a user is used by an MFP to better service that user. In the illustrated example, user  1202  engages in a natural language dialog with MFP  1210  for completion of one or more tasks. MFP  1210  has external data relative to the user  1202  available to it, suitably obtained via a wide-area network, such as the Internet, illustrated by data cloud  1220 . Data available to the MFP  1210  via data cloud  1220  is suitably obtained from any remote location associated with the user  1202 , such as from home  1230  or office  1240 . Any or all relevant data thus obtained by MFP  1210  is suitably used in conjunction with servicing a user&#39;s request  1240  to provide enhanced ease and efficiency, with a better user experience. 
         [0043]      FIG. 13  is block diagram of an example embodiment illustrating machine processing  1300  for realizing the forgoing. An interface  1310  is suitably enabled with functionality set  1312 , suitably including a cross-language interface for accommodating voice input in different languages or dialects, a voice catalog interface to ascertain a user&#39;s identity, and an interactive interface to allow for device control and dialog such as is illustrated in the examples above. Interface  1310  is suitably voice-based, and can include voice recognition, such as via voice print identification or generation. However, it is understood that any suitable input may be implemented. Suitable output may be audible, such as verbal, or may be text based on an associated display. Input is also suitably obtained in text format, or from any suitable format employing an application program interface. 
         [0044]    Interface  1310  facilitates input to facilitate machine thinking  1330 , suitably comprised of logical or artificial intelligence-based analysis  1332 . Data  1340 , available from different areas as detailed above, is suitably subject to processing  1342 . Data  1340  includes functionality for parsing of syntax, parsing of semantics, and analysis of people, things, times and places. This facilitates distinction between action and emotion, by way of example. Machine thinking  1330  includes functionality for obtaining information for various, associated elements, suitably through application of artificial intelligence. Self-learning, conjecture and assumptions further enhance the user experience. Self-learning suitably comprises active self-learning of things such as user habits and preferences, as well as passive self-learning, wherein the user inputs or selections are accepted and retained. 
         [0045]    Turning now to  FIG. 14 , illustrated is a flowchart of an example embodiment of device operation  1400  corresponding to that detailed above. The process commences at block  1410 , and proceeds to block  1414  wherein a natural language input stream is received. Next, at block  1416 , an identity of a speaker is determined, suitably via voiceprint analysis. If a speaker cannot be identified, a new entry and associated voiceprint for that user are suitably made for future use. Next, at block  1418 , historical data, if any, is obtained for an identified speaker. The speaker&#39;s speech is parsed at block  1420  and input, such as instructions, are accumulated into an instruction set at block  1422 . Next, at block  1424 , received instructions or other input are analyzed relative to historical data, if any, from prior interaction with that user. 
         [0046]    If there is no acceptable match between prior and current instructions determined at block  1430 , a check is made at block  1432  to determine if more user input is forthcoming. If so, progress returns to block  1420 . If not, then the new instructions are added to the historical data set at block  1440  and these instructions are implemented at block  1444 . Then, the operation is suitably terminated at  1446 . 
         [0047]    If an acceptable match between current and prior instructions are determined at block  1430 , proposed instructions are generated accordingly at block  1450 . Next, the user is prompted with these proposed instructions at block  1452 . If the user does not confirm the proposed instructions at block  1460 , operation returns to block  1432  to progress as detailed above. If the user confirms the proposed instructions at block  1460 , the proposed instruction set is adopted at  1462 , and the system proceeds to block  1444  for execution, and then operation terminates at block  1446 . 
         [0048]    While certain embodiments have been described, these embodiments have been presented by way of example only, and are not intended to limit the scope of the inventions. Indeed, the novel embodiments described herein may be embodied in a variety of other forms. Furthermore, various omissions, substitutions and changes in the form of the embodiments described herein may be made without departing from the spirit of the inventions. The accompanying claims and their equivalents are intended to cover such forms or modifications as would fall within the spirit and scope of the inventions.