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.
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.
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.
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.
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.
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.
In accordance with another example embodiment, data corresponding to a user's habits, tastes or preferences is used to anticipate the user's needs.
Various embodiments will become better understood with regard to the following description, appended claims and accompanying drawings wherein:
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's historic interaction with devices, which can be the actual device being used, as well as the user's interaction with local or remote devices or sensors. This information is used to improve and augment the user's experience in a future man/machine interfacing. Ongoing man/machine interactions reveal much about a user's preferences and habits, facilitating predictive control of devices which may be subject to a user'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.
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.
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).
Turning now to
Also illustrated in data communication with network 100 in the example embodiment of
The example embodiment of
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.
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'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'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's eating habits, sleep habits, travel habits, shopping habits and the like.
Turning now to
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.
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.
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.
Turning now to
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.
Turning to the example of
In the example illustration of
Turning now to
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.
Turning now to
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.
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.
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.