Data collection from a subject using a sensor apparatus
Using various embodiments, methods, systems, and apparatuses are disclosed for data collection from a subject using a sensor apparatus. In one embodiment, an apparatus for use by a subject, the sensor apparatus is disclosed, comprising a sensor configured to capture and transmit data related to movements by the subject and a computing device coupled to the sensor to receive sensor data transmitted by the sensor, save the data in a track in a data file. The data file can have a plurality of tracks, each track saving data of a different sensor. The data thus saved can then be processed by another computing device.
The present application is a continuation of, and claims priority from, co-pending U.S. patent application Ser. No. 14/815,624, filed on Jul. 31, 2015, and titled “Data Collection From Living Subjects And Controlling An Autonomous Robot Using The Data.” The contents thereof are incorporated herein by reference for all purposes to the extent that such subject matter is not inconsistent herewith.FIELD OF THE INVENTION
Embodiments of the present invention relates generally to the field of autonomous robots. More particularly, embodiments of the invention relate to data collection to be used for the purpose of teaching autonomous robots tasks that can be performed by humans.BACKGROUND OF THE INVENTION
Robots have been used by mankind to perform relatively simplistic tasks for years, Typically, a robot is programmed to perform the relatively simplistic task (e.g., assembling a portion of a car), by the displacement or movement of a mechanical appendage using a programmable controller. Robots can also be programmed to perform other simplistic tasks like moving, hindering obstacle avoiding, etc.
In such systems, the need to perform tasks requires the controller to be programmed in advanced or controlled by a user. Further, Artificial Intelligence (AI) techniques can be implemented to reduce the reliance of a human operator or the need to re-configure or reprogram the controller. However, a known limitation in AI research includes providing the robot with generalized intelligence (in a controlled environment) so that the robot can perform actions similar to a living subject. Thus, what are needed are methods, systems, devices, and apparatuses using which data can be collected in a controlled environment. Further, such data, when provided to an AI program or algorithm, should be able to provide an autonomous robot with general intelligence in the controlled environment.SUMMARY OF THE DESCRIPTION
Using various embodiments, methods, apparatuses, systems and techniques, data for motions and movements, changes in posture, changes in position, vocalizations, gestures, grasping, gait, and other bodily dynamics of living subjects are captured using sensors. Using the resulting sensor data, a supervised learning algorithm or program (AI program) implemented in a machine-learning computer program can be programmed to control an autonomous robot in a substantially similar manner as the living subject. Further, in one embodiment, the data from the controlled autonomous robot can also be collected and iteratively provided to the AI program to further facilitate learning and refinement of the robot's actions.
In one embodiment, data is periodically (e.g., every microsecond, millisecond, second, etc.) collected from the living subject in a controlled environment. The data collected from the living subject and its surrounding environment can then be provided to an AI program using which an autonomous robot can perform substantially similar actions as performed by the living subject. In one embodiment, the data collected from the living subject includes the moment to moment state and dynamics of the living subject's body to supply all of the information needed for the movement of the autonomous robot situated in a similar environment as the living subject. In one embodiment, a sensor apparatus is provided using which numerous sensors measurement sessions with living subjects are collected in order to provide enough data to produce a suitably trained machine-learning program that can effectively control an autonomous robot, providing generalized intelligence needed to perform similar tasks/actions as were performed by the living subject in the controlled environment.
After training the machine-learning program and during everyday operation, the robot is can behave very much like the living subjects did in the settings where the sensor measurement sessions were carried out. The robot is expected to move around the setting and perform the same sorts of tasks in it as did the living subjects during the sensor measurement sessions, and to respond to actions and events in a similar way. In the case of sensor data recorded from human subjects the robot can also eventually speak and understand spoken speech, although this can be limited to speech that occurred frequently in the sensor measurement sessions.
To capture the data, in one embodiment, a sensor apparatus is used for periodically gathering data from a living subject for use by an autonomous robot. The apparatus includes a covering material configured to cover at least a portion of the living subject, the covering material including at least one of garments, harnesses, straps, belts, hats, caps, headgear, helmets, shoes, boots, footwear, gloves, mitts, simulated grippers, or hosiery. The sensor apparatus further includes sensors to gather measurements of motions, movements, change in posture, change in position, of the living subject or the immediate environment of the living subject, in the controlled environment, coupled to the covering material. To gather such data, the sensor apparatus can, in one embodiment, include, an accelerometer, bend sensor, stretch sensor, pressure sensor, or proximity sensor, wherein the sensors can measure movements, bending, rotations, or angular displacement of the body of the living subject including the limbs, joints, and extremities of the living subject in a controlled environment. Further, the sensor apparatus includes, a data computing device connected to the one or more sensors, where the data computing device can periodically capture and save the data generated from the one or more first sensors in a data file on a storage medium. The data, once saved, can be retrieved from the storage medium and processed for use by the autonomous robot, where the autonomous robot, based on the processed data, can exhibit substantially the same movement or actions exhibited by the living subject while the data was being captured.
In another embodiment, the sensor apparatus can also include sensors coupled to the covering material, where the sensors can be video cameras that can provide a plurality of views of the surroundings around the living subject in the controlled environment. In one embodiment, the data generated by the one or more second sensors includes data related to gestures, grasping, gait, or other bodily dynamics and multi-media recordings of the living subject and the immediate environment of the living subject.
In yet another embodiment, the sensor apparatus can include sensors coupled to the covering material to capture auditory sounds signals (e.g., microphone) transmitted from or around the living subject in the controlled environment, where the data relates to vocalizations of the living subject and the immediate environment of the living subject. In another embodiment, the sensor apparatus can include sensors coupled to the covering material, where the sensors can be a temperature sensor, humidity sensor, barometric pressure sensor, radioactivity detector, magnetic field detector, electromagnetic radiation detector, or airborne chemical detectors from or around the living subject in the controlled environment, where the data generated by sensors includes data related to the environment around the living subject.
In one embodiment, the data computing device, at each periodic capture of data, uniquely tags the data generated from the one or more sensors with an identification code, each tag identifying the sensor from which the data was generated. In another embodiment, the data generated at each periodic capture is saved in a track or channel in the data file.
The data processing device of the sensor apparatus can detect a signal transmitted from any sensor of the sensor apparatus, and based on the detection, receive data from the sensor, and store it to a storage medium.
The present invention is illustrated by way of example and not limitation in the figures of the accompanying drawings in which like references indicate similar elements.
Various embodiments and aspects of the inventions can be described with reference to details discussed below, and the accompanying drawings can illustrate the various embodiments. The following description and drawings are illustrative of the invention and are not to be construed as limiting the invention. Numerous specific details are described to provide a thorough understanding of various embodiments of the present invention. However, in certain instances, well-known or conventional details are not described in order to provide a concise discussion of embodiments of the present inventions.
Reference in the specification to “one embodiment” or “an embodiment” or “another embodiment” means that a particular feature, structure, or characteristic described in conjunction with the embodiment can be included in at least one embodiment of the invention. The appearances of the phrase “in one embodiment” in various places in the specification do not necessarily all refer to the same embodiment. The processes depicted in the figures that follow are performed by processing logic that comprises hardware (e.g., circuitry, dedicated logic, etc.), software, or a combination of both. Although the processes are described below in terms of some sequential operations, it should be appreciated that some of the operations described can be performed in a different order. Moreover, some operations can be performed in parallel rather than sequentially.
The sensor pods described herein can include but are not limited to multi-axis acceleration sensors each capable of detecting at its mounting point the tilt, orientation, and motion including static acceleration of gravity as well as dynamic acceleration resulting from motion, shock, or vibration; microphones; video cameras; proximity sensors; bend sensors; pressure sensors; temperature, humidity, and barometric pressure sensors; radiation detectors; multi-spectral video; subsonic or ultrasonic sound sensors, etc. In one embodiment, sensor pods 101 can be coupled to a headpiece of the covering material to capture head movement, rotation, or orientation. In another embodiment, the covering material of the headpiece can be coupled or embedded with pressure, bend, stretch, proximity, or other sensors in the headpiece material 102 of the covering material. In one embodiment, the headpiece pod 103 can be coupled with video and/or audio capture devices as well as other sensors. In another embodiment, goggles 104 can be used by living subject to view video captured by headpiece video cameras during sensor data capture sessions. In yet another embodiment, headset 105 (with microphone or any audio capturing device) can be used to capture vocalizations made by living subject and headphones to provide audio feedback from selected sensors, or microphones.
In another embodiment, sensor pods 106 can be coupled to any major body region to capture the region's movement, rotation, orientation, etc. Similarly, in another embodiment, sensor pods 107 can be coupled or connected to the limbs and extremities to capture their movement, rotation, orientation, etc. In one embodiment, seams 108 in the covering material can be introduced for size adjustment and for embedding sensors, electrical conductors, communications cables, etc. As illustrated, in one embodiment, thickened regions 109 of the covering material can be created where larger devices, sensors, cables, etc. may be embedded into the thickened regions 109. In one embodiment, sensor pods 110 on footwear to capture their movement, rotation, orientation, external object proximity, etc. In one embodiment, seams 111 in the headpiece of the covering material can be introduced for size adjustment and for embedding sensors, electrical conductors, communications cables, etc. Further, in one embodiment, the sensor apparatus garment can also have at least one of attached fixtures 112 to include computer systems, storage systems, battery systems, or any larger devices that cannot be conveniently embedded in the material of the garment itself.
In another embodiment covering material 113 of the sensor apparatus can comprise pressure, bend, stretch, proximity, or other sensors embedded in the garment material. In yet another embodiment, the sensor apparatus can have at least one fixture 114 to contain computer systems, storage systems, battery systems, or any smaller devices that cannot be conveniently embedded in the material of the garment itself attached to at least one of belts or harnesses. In another embodiment, thickened regions 115 can be introduced at hand-pieces where devices, sensors, cables, etc. can be embedded. Sensor pods 116, in another embodiment, on the hand-pieces can be placed to capture the movement, rotation, orientation, external object proximity, etc. of the hands. In yet another embodiment, sensors on finger or gripper regions 117 can be placed to detect grasping force and other measurements when the handpiece manipulates objects.
In one embodiment, the living subject wears the sensor apparatus described herein, and as the living subject moves and speaks, a data processing unit of the sensor apparatus can periodically capture and store at least one objective measurement of the living subject's motions and movements, changes in posture, changes in position, vocalizations, gestures, grasping, gait, or other bodily dynamics, as well as real-time video and audio of what is occurring around and in front of the living subject.
In one embodiment, the data processing unit of sensor apparatus can store the data generated by the sensors to a storage medium, in a format that can be retrieved and processed by another computing device for use by an autonomous robot in a manner, such that the autonomous robot can exhibit substantially the same movement or action exhibited by the living subject while the data was being captured.
In one embodiment, sensor pods 125 can be positioned on the limbs and extremities to capture their movement, rotation, orientation, etc., similarly, sensor pods 126 can be placed in footwear to capture their movement, rotation, orientation, external object proximity, etc. Sensor pods 127 and 130 can be placed on major body regions to capture their movement, rotation, orientation, etc. In one embodiment, the covering material at the back side 128 of the non-human living subject can also include pressure, bend, stretch, proximity, and other sensors embedded in the garment material. Seams 129 in covering material can be introduced for size adjustment and for embedding sensors, electrical conductors, communications cables, etc. Openings and exposed areas in covering material 131 allow for tail as well as reproductive and excretory parts of the anatomy to move freely and have unrestricted functionality; the sensor apparatus' covering material can have at least one attached fixtures 132 to contain computer systems, storage systems, battery systems, or any larger devices that cannot be conveniently embedded in the material of the garment itself. In one embodiment, thickened regions 133 can be introduced on the covering material to embed larger devices, sensors, cables, etc.
In one embodiment, the sensor apparatus comprises is a snug-fitting jumpsuit-style garment worn by a living subject as the covering material, as illustrated in
In an embodiment, a living subject wears the sensor apparatus garment during sessions in which the living subject's bodily movements and/or speech are captured by the sensors and microphones of the sensor apparatus garment while details of the surrounding environment are captured by at least one video camera and/or microphone. Many sensor measurement sessions are performed with the living subject. In all of them the subject is playing a role that the robot can eventually play on its own in an autonomous manner.
In order for the machine-learning approach to be effective, the behaviors being captured should pertain to a relatively well-defined range of human activities. This can provide a finite variety of behaviors that are repeated over and over again with small or large variations. The spoken language of the living subject can naturally also be confined to the range of verbal exchanges with human subjects present in the training sessions but who are not necessarily wearing a sensor apparatus. These human subjects will, as a class, comprise the future clients of the behavior-generating robot, the consumers of its services. By having more than one living subject wear a sensor apparatus during such training sessions, it is possible to gather data to train autonomous robots to interact and collaborate with both living subjects and other autonomous robots.
As an example, in one embodiment, the living subject can be an experienced barista at a chain of cafes, and a robot is desired that can perform the basic activities of a human barista. Every workday, the subject wears a sensor apparatus garment during working hours and her activities and surrounding environment are recorded as she actually performs her duties at a real cafe with real human customers. As an example, it is presumed, she has been selected for sensor measurement because she is an expert. She does her job well, knows how to perform all of the day to day tasks, knows where all of the equipment and materials are, knows how to operate and maintain all of the equipment, is able to improvise when necessary, interacts and communicates well with her co-workers, and helps train newer and less experienced co-workers. Her behavior encompasses a relatively narrow and well-defined range of tasks compared to the universe of all possible behaviors that can be exhibited by a typical person, but the day to day work of a barista is nonetheless complex and varied, and requires a significant degree of knowledge, skill, resourcefulness and ability to improvise. She performs her duties in a generally reproducible and consistent way, and deftly deals with unexpected circumstances. The chain of cafes intends to deploy in its cafes one or more robots that exhibit the human barista's skills to the greatest possible extent.
Thus, when the barista wears or adorns the sensor apparatus as illustrated in
In this embodiment the sensor apparatus garment also has a headpiece that covers the neck and part of the head in order to capture head and neck movement. It also has accelerometers, video cameras, and microphones mounted on either side (and possibly elsewhere) in order to capture stereophonic audio surrounding the head and stereoscopic video of what is occurring in front of and around the living subject. An audio channel dedicated to capturing mainly the voice of the living subject is also present. In another embodiment, there can be a variety of other detectors on the suit for specialized applications or activities without departing from the scope of the present invention.
Gloves, mitts, or simulated grippers can sense hand movement, orientation, rotation, grasping, etc. They can capture the movement of each finger individually, or they may have fewer pockets or chambers where two or more fingers are enclosed together. The living subject, however, must be able to wear a replica of it on her hands and move it around and use it comfortably in the same way as the robot eventually will. Like the rest of the sensor apparatus, it is also covered in a patchwork of sensors to detect motion, rotation, orientation, bending, grasping force, contact with other objects, and possibly temperature or other data. The exact form, function, and sensor configuration of this hand-piece may vary depending on the tasks being performed without departing from the scope of the present invention. The barista can perform all of her hand manipulations of objects while wearing this hand-piece, and it can serve to capture grasping force and other sensor data at various points on the hand-piece along with detailed motion and orientation data.
The sensor apparatus garment can, in another embodiment, also have sensor-laden leg garments and footwear to detect foot and leg dynamics as well as proximity or contact with other objects, bending, movement, rotation, orientation, and other data to gather information needed to allow the robot to eventually walk and detect objects that come in proximity or contact with its legs and feet.
In one embodiment, the video cameras record everything that occurs in front of her with enough resolution to allow written text to appear clearly if it is in focus by the cameras and is larger than a predetermined size. Having at least two cameras, the stereoscopic recordings also implicitly record data about the barista's spatial environment. These multi-channel video channels encode in great detail the actual physical space the living barista moves around in, the many dynamic objects moving around in it, and the many things that are constantly occurring in it. Since the audio recordings are also stereophonic (or better), they also encode a great deal of implicit spatial data. The video and audio data can be highly correlated with each other, since they are both recording the same objects and events. Both can also be highly correlated with the body motion data and speech, since the body's movement and the barista's speech at any given moment are directly dependent on and determined by the information coming in about the world through the multimedia channels. This high degree of numerical correlation can help the machine-learning process converge towards a reliable system for mapping inputs to outputs.
According to one embodiment, the human subject's line of work, wearing sensor apparatus 100A is that of a professional sensor measurement subject. In the barista example, she first learns the details of working as a barista and acquires a great deal of expertise by actually being a barista. The company that employs her is the robotics company that can build the barista robot. The robotics company has been hired by the chain of cafes to develop such a robot. Part of the contractual agreement between the two firms entails having one or more of the robotics company's professional motion capture subjects trained as baristas, and performing the duties of a real barista at real customer retail cafes providing real products and services to real customers. This project might last months or years, until a robot has been developed that can carry out the duties of the human barista to a level acceptable to the chain of cafes. Some professional subjects might continue the project indefinitely, so that the robotics company can continually refine the behavior of the robot, provide bug fixes, software updates, new features, integrate new practices implemented by the chain of cafes, and for any other ongoing business reasons. These professional sensor measurement subjects can eventually be transferred to other customers of the robotics company. They can learn some other business practice and the process can be repeated. Over the course of their careers, such professional sensor measurement subjects may become experts in a variety of businesses or industries, as well as be skilled, reliable, and productive as professional sensor measurement subjects.
In another embodiment, the human subject is an employee of the client company, and assumes additional duties as a living subject for sensor measurement. In the barista example, the subjects are existing cafe employees selected for their great expertise gained over years of training and experience. These subjects assume the additional duty of having their sensor measurements captured using a sensor apparatus, and are presumably offered additional compensation in exchange.
In one embodiment, the data (objective measurement) from each sensor is stored in a time-ordered manner by the data processing unit of the sensor apparatus. Each sensor has a unique and unambiguous label or identifier, and each data point is associated with the time at which it was obtained. Data from each sensor are stored in a track or a channel, each labeled with the particular sensor's unique identifier. The data file is written as a series of time points, each time point containing the data for each track of sensor data corresponding to that labeled time interval. When this file is read from the storage medium, by another processing device, it can be parse into consecutive time intervals of sensor data, as organized within the file. In one embodiment, for illustrative purposes only, the data can be saved in XML format, although any format known to a person of ordinary skill in the art can be used.
As an example, the following snippet of XML represents a schematic snippet of sensor data for a data capture session labeled “barista 25” which took place on Jul. 7, 2015.
As shown in the XML snippet, there are two time points, 2015-07-07 14:30:25.10 and 2015-07-07 14:30:25.20. They are consecutive and one tenth of a second apart. Each time point has a set of data tracks enclosed in “track” XML elements. Each track has a unique identifier meaningful primarily to the software that generates or uses the data as well as a class to indicate what kind of device it corresponds to. In the example, each time point has two sensor tracks, “accel sensor” and “gyro sensor.” In this example, the “accel sensor” is an ST Microelectronics LSM-303 3 axis accelerometer and compass, the “gyro sensor” is an ST Microelectronics L3D 3 axis digital gyroscope. This information is in the “type” element of each track. This information is useful both for human readability as well as for converting from the raw data units of the sensors to scaled data for storage and machine learning purposes. The sensor data shown are raw, and require post-processing specific to each kind of measurement.
The “data” element can contain one or more pieces of information. The “accel sensor” shown can provide x, y, and z axis measurements of both acceleration and magnetic field, the latter useful for determining the sensor's orientation in the earth's magnetic field. The “gyro sensor” provides measurements of rotational speed around its x, y, and z axes.
In one embodiment, sensor apparatus 301 can include any of the following sensors connected or coupled to the data processing unit 305: an accelerometer 501, bend sensor 503, stretch sensor 505, pressure sensor 507 (to measure pressure applied on the covering material where the sensor is located), proximity sensor 509, video sensor 511, audio sensor 513, temperature sensor 515, barometric pressure sensor 517, humidity sensor 519, radioactivity detector 521, electromagnetic radiation detector 523, airborne chemical detector 525, or magnetic field detectors 527. It should be noted, the sensors described herein are not discussed in a restrictive sense, thus, a person of ordinary skill in the art can add other sensors not described herein, as needed.
This process can be done continuously during the entire time the robot is in operation. In the example, for illustrative purposes only, the number of time intervals used to calculate each time interval's worth of robot control signals is 4. In practice, this is likely to be substantially more. It may be necessary to use tens, hundreds, thousands, or even more time intervals to compute each succeeding time interval's worth of robot control signals.
The number of time intervals per second needed to achieve smooth and acceptable operation can also vary according to specific applications and can depend on the computing and communications capabilities of the materials and devices used to construct the robot, as well as the number, type, location and organization of the sensors in the sensor apparatus, without departing from the scope of the present invention.
In an embodiment, the data from the sensor apparatus can be used as inputs for the machine-learning program, which can in turn generate the control signal data that can be used to drive the robot's motion generating mechanisms. For this to be possible, the machine-learning program must already be at least minimally trained with a significant repository of input and output training examples that cover its full range of movement and audio generation. A bootstrapping data set must be created for this purpose before sensor measurement data from living subjects can be used.
To generate an initial data set, the robot is driven directly over the entire practical range of motion of its mechanical components, and its movements are captured with the sensor apparatus that comprises its outer covering. This is achieved by developing a set of software tools that can produce the encoded control signals that can cause the robot to move in ways that roughly cover the ranges of motion and audio generation that can be performed during normal operation. The robot can be made to stand and sit, to walk, to move its limbs, to open and shut its hands, to grasp and manipulate objects, to emit vocalizations, and any other combinations of movements that the robot builders can conceive. In at least one embodiment a video game-like interface can be used to have a human operator drive the robot and perform correct movements based on the video and audio data coming in from the sensor apparatus, such as pointing the head at a person who is speaking or performing tasks with its arms and hands. In other embodiments it can be scripted or otherwise partially or completely predefined. These motions do not necessarily need to be accurate imitations of human gait or other natural movements. They only need to move the robot's body, limbs, extremities, grippers, etc. through the same ranges of motion that can be found in the sensor measurement sessions with the living subject. For example, the software can raise and lower arms at different speeds and bend them to different degrees over the same natural range that a human arm would perform those movements, even if the movements don't really look natural. The object is to drive the robot through those motions and have its sensor apparatus generate a corresponding data set. That can produce the inputs for the machine-learning algorithm, as well as their correct corresponding outputs.
In one embodiment, the software tools produce robot motion control and audio generating signals can be generated simultaneously while the sensor apparatus gathers data from its sensors, and the time stamp for that interval is the same for both the sensor data and the robot control signal data. This means that they are synchronized in time with each other, and that stored sensor data and control signals can be retrieved from their respective computer data storage systems to compile training examples as described herein.
In one embodiment, such time-synchronized data can be conveniently stored by means of, but not limited to, the ISO Base Media File Format and the subsequent MP4 file format (ISO/IEC 14496-12:2003(E), and ISO/IEC 14496-12:2005, respectively) developed by the Moving Picture Experts Group (MPEG) of the International Organization for Standardization (ISO) and the International Electrotechnical Commission (IEC). The object-based design of these file formats defines a set of data layout standards that govern the binary coded representation of individual audiovisual objects, text, graphics, and other digital objects and is described in detailed discussing
The machine-learning mechanism is initially trained with the input and output examples generated via the robot driving process. Once the machine-learning program has undergone some amount of training, if sensor apparatus data from the living subject are used as inputs, the machine-learning algorithm can use the internal representation resulting from that training to generate robot motion signals that can make the robot perform the corresponding movements and vocalizations. With an extensively trained machine-learning program, these behaviors can closely resemble those of the living subject. After only preliminary training, however, they can be approximate and flawed since the machine-learning program's internal representation is still crude and approximate.
In one embodiment of the method, the living subject can first have to perform very simple tasks to produce sensor measurements. Some of those tasks can be variations of the same movements and vocalizations that are generated by the robot driving software tools. As in the robot driving sessions, the living subject can perform them over and over, thereby incorporating the many major and minor variations that are inevitable in the behaviors of living beings. She would also perform gradually more extensive variations of those tasks in order to enrich the training data set with training examples similar to the ones generated by the robot driving software but with an increasingly significant amount of variation.
In an iterative process, the machine-learning program can be trained with batches of training examples derived from the robot driving sessions. Sensor data from living subjects can then be supplied to the robot's machine-learning program, robot control signals can be produced and stored, and the robot's resulting movements and vocalizations can generate test sensor data. Both the robot control signals and the robot's resulting sensor data can be curated by editing, manual or software-assisted correcting or smoothing, or otherwise altering them for use as improved training examples. The machine-learning program is further trained with these altered training examples, and the process can be repeated.
At any time in this process, training data that are deemed to be too flawed for continued use are removed from the repository. Also, at any time the machine-learning program instance being trained can be abandoned, and a new one trained using the curated training data, and used thereafter for further training. In this way, one or more constantly improving machine-learning program instances can be in preparation at any given time. Eventually, the internal representation of one or more such instances can stabilize enough for the robot to acceptably emulate a range of behaviors, if only in the narrow range represented in the training example repository.
The computer files corresponding to the machine-learning program's internal representations can be accumulated in much the same way improved software releases are accumulated by software developers. These files are installable in a robot machine-learning program in such a way that they fully replace the program's existing internal representation. In this way the training process need only occur on one or a few training systems, and the resulting trained internal representations distributed to any number of actual autonomous robots as needed to correct defects or add new capabilities.
In an alternative embodiment, to result in autonomous operation of the robot, the robot motion control and audio generating signals can be generated via a bootstrap data generation mechanism. In this embodiment, instead of using the machine learning program, a suite of motion, audio, and visual software tools 804 are used. The suite of computer software tools 804 can be used to generate such signals based on heuristics, formulas, manual operation by one or more human operators, use of interactive software tools by one or more human operators, edited or curated data from living subjects, edited or curated data from previous attempts at training the machine-learning program, or any other arbitrary strategies or criteria known to those skilled in the art, or any combination thereof, in order to cause the robot to produce motion and sound. This can be done for the initial training of a new, untrained machine-learning program instance. The software tools 804 generate the desired encoded motion and audio data; the generated data can be processed directly by computer interface 805 that converts the encoded motion and audio data into the proper electrical signals 806 that can cause the robot's motion and audio generating systems to execute their activities and therefore robot motion and audio vocalizations can be produced. The encoded motion and audio data can then be stored in the motion and audio generating system data storage mechanism.
In one embodiment, the computer interface 805 that converts the encoded motion and audio data into proper electrical signals 806 is a part of the robot itself. At any given time, only one of the two alternative signal generation methods described above can be used to drive the robot. Either the robot is operating autonomously under the control of the machine-learning program, or it is being driven directly by means of the software tools, however, not both at once.
In one embodiment, the robot can be adorned with the sensor apparatus 808 while it is performing the actions governed by either the machine learning algorithm 803, or the suite of motion, audio, and visual software tools 804. Once the data generated by sensor apparatus 808 worn by the autonomous robot is generated and stored in data storage 802, the process can be repeated, and a new signal set can be created with the newly generated data.
Thus, an identical sensor apparatus 808 adorned/worn by a user illustrated in
In one embodiment, the robot control signals, to control an autonomous robot, are stored in the same way as consecutive time intervals of data tracks. Each motor, actuator, audio device, or other controllable robotic element has its own track or channel with a unique and unambiguous identifier. The signals are written to the file as they are generated and used, in the same manner as the sensor data. Eventually, when there are both signal data and robot control data for the same data capture session, the two can be merged into the same file for both long term storage and for convenient generation of training examples. Such a file can contain both input and output data for the supervised learning algorithm, easily retrievable as consecutive time intervals of complete data sets.
Thus, referring back to the schematic snippet for a data capture session labeled “barista 25” which took place on Jul. 7, 2015, the sensor and control data can, in one embodiment, be represented as the following:
Thus, the complete XML schematic representation can disclose each time point with the two sensor tracks, “accel sensor” and “gyro sensor,” as well as two control signal tracks, both of class “stepper motor.” Each stepper motor controls the movement of the robot based on the data collected from the “accel sensor” and the “gyro sensor.” It is up to the software to determine which is sensor data and which is control signal data based on these class names. As discussed herein, the “stepper motors” are Intec 42 mm 42STH34-1004A stepper motors. The stepper motors shown only need one piece of data, the rpm rate at which they should spin during the next tenth of a second. A positive value means spin in the forward direction, whereas a negative value indicates spinning in the reverse direction.
In one embodiment, an autonomous robot described herein can be driven by motion generating mechanisms such as, but not limited to, any kind of electric motor, pneumatic or hydraulic system, internal combustion motor, pulleys, chains, cables, motorized linear actuators, moving pistons, or any kind of mechanism capable of producing mechanical movements as described herein. The required form and shape of the robot, as well as changes therein suitable for mimicking such forms, shapes, and changes found in living subjects, can be achieved by means such as, but not limited to, any of these motion generating mechanisms individually or in combination, possibly encased in rigid or flexible materials known to those skilled in the robotic and animatronic arts. Robots making use of any of these components can be used without departing from the scope of the present invention.
In another embodiment, the behavior of a living subject can be captured with a sensor apparatus garment on a daily basis for an open-ended period of time as part of the living subject's regular job activities. Periodic digests or releases of the sensor data can be created and archived for use in training robots with versioned and possibly curated data. As recording sessions are accumulated, unit tasks such as taking an order, fulfilling it or having it fulfilled, and successfully charging the customer can have been captured thousands of times. The sensor apparatus data can contain numerous variations of each one. The diverse yet generally consistent dynamics of movement and vocalizations associated with them can be represented implicitly in the growing library of sensor apparatus data files. The many often subtle but more or less stereotyped variants encode the human subject's ability to generate appropriate body movements and vocalizations based on the barrage of sensor apparatus data coming in at every moment and to improvise in an acceptable manner when necessary.
The robot can be running a machine-learning program that can generate the next moment's movements and speech using sensor apparatus data from the most recent predetermined time span. A common way to perform such a mapping is to use a machine-learning algorithm that can be trained to associate the recent sensor apparatus data to the data for the next moment's robot control signals. There is a variety of choices involving supervised learning. Supervised learning consists of providing a machine-learning algorithm with a large repository of known training examples. In each example there is a list of numbers that constitute the input example, and another that constitutes a known correct output example. Specific algorithms vary, but in general these training examples are repeatedly supplied to the algorithm until it has “learned” them, which in practice means that when presented with one of the input examples it can correctly produce an accurate approximation of the corresponding output example. It cannot always produce the exact outputs present in the training examples because the machine-learning process usually involves error reduction strategies that minimize but do not entirely eliminate noise in the data or in the algorithm's internal representation of the data. Usually the learning process is repeated iteratively until the error converges to an arbitrary level of acceptability, not to absolute correctness. Further training can also occur with new training examples. Such methods and practices are known to those with skill in the artificial intelligence and machine-learning arts.
For the purposes of an autonomous robot, a “good enough” approximation can be adequate in which the actual movements and vocalizations of the autonomous robot match those of the living subject to an arbitrarily acceptable degree. Also, during normal operation of the robot the inputs received from the sensor apparatus can rarely if ever be exactly the same as any in the training examples. They can be similar, but not the same. The machine-learning algorithm can generate a best guess approximation of the outputs that is consistent with its prior supervised learning. This, too, should be good enough if the training example repository has been rich and extensive enough and the robot's operating environment closely matches the environments represented in the repository. Hence an open-ended duration of sensor apparatus measurement sessions, even after the autonomous robot's performance has been deemed acceptable enough for it to be deployed and already operating in the field. As with most computer software, corrections and updates can be made available through time as needed.
As data sets are trained into the robot's machine-learning program over time, its ability to operate continuously and autonomously can increase. With a suitably large and varied training example repository derived from one or more living subjects, and with enough iterations of the processes described above, the goal of continuous unsupervised operation of the autonomous robot can be achieved. Given sufficiently powerful hardware, it is likely that some semblance of intelligent and articulate use of language, proficiency in the physical skills represented in the training sets, and practical problem solving strategies can emerge in the robot.
In the course of normal day to day operation, the autonomous robot can continue to store both its sensor apparatus data as well as the signals generated for movement and speech. Training examples for further training into its internal representation can be derived from these everyday experiences, thus allowing some sort of ongoing learning from its own experience. These training examples can also be used to train other machine-learning program instances in other autonomous robots, thereby sharing such learning across multiple autonomous robots.
The preceding descriptions contain a number of specificities, but these should not be construed as limitations of scope, but rather as examples of several possible embodiments. For example, many other variations are possible, such as training robots with data derived from human experts skilled at such diverse activities as elder care, nursing, housemaids, general retail and food service tasks, information kiosk attendants, receptionists, security and surveillance, working in hazardous environments inhospitable to humans, agriculture, pet care, and tour guides, to name a few. The behavior of close friends and relatives can be captured on an ongoing basis for a period of time and that behavior can be reproduced in their absence by trained robots. Individuals who live alone can use trained robots for companionship and loneliness mitigation when they are unable or unwilling to be in the company of their fellows. By using highly trained animals as living subjects, specialized service robots, robotic beasts of burden, surveillance and exploration robots, and other specialized autonomous robots can also be developed and distributed in size and shape formats different from their humanoid counterparts.
The embodiments as described herein can serve as general purpose training platforms to develop autonomous robots that can express lifelike behaviors. Given sufficient training with a large and varied enough training example repository a wide variety of robotic applications become available. Since autonomous operation is central to this method, the robots can be deployed to the field with a high degree of flexibility. An expanding market of opportunities for proficient animal trainers and highly skilled professional sensor measurement subjects can gradually appear to provide training data for specialized robots.
Training individual machine-learning program instances with training data obtained from numerous living subjects, particularly living subjects that have acquired great knowledge and expertise in specific realms of knowledge or endeavor, who are skilled at using such expertise in the creation of new products, services or intellectual property, and who are skilled at providing advice and assistance to others in need of such specialized expertise can cause the machine-learning program to gradually express knowledge and expertise that for practical purposes is equal to or greater than that of any single living subject that contributed to its training example repository. Such a machine-learning program instance constitutes an artificial general intelligence. It is of practical utility for that instance to be reproducible in an unlimited number of autonomous robots.
The techniques shown in the figures can be implemented using computer program instructions (computer code) and data stored and executed on one or more electronic systems (e.g., computer systems, etc.). Such electronic systems store and communicate (internally and/or with other electronic systems over a network) code and data using machine-readable media, such as machine-readable non-transitory storage media (e.g., magnetic disks; optical disks; random access memory; dynamic random access memory; read only memory; flash memory devices; phase-change memory). In addition, such electronic systems typically include a set of one or more processors coupled to one or more other components, such as one or more storage devices, user input/output devices (e.g., a keyboard, a touchscreen, and/or a display), and network connections. The coupling of the set of processors and other components is typically through one or more busses and bridges (also termed as bus controllers). The storage device and signals carrying the network traffic respectively represent one or more machine-readable storage media and machine-readable communication media. Thus, the storage device of a given electronic device typically stores code and/or data for execution on the set of one or more processors of that electronic device.
It should be apparent from this description that aspects of the present invention may be embodied, at least in part, in software. That is, the techniques may be carried out in a computer system or other computer system in response to its processor, such as a microprocessor, executing sequences of instructions contained in memory, such as a ROM, DRAM, mass storage, or a remote storage device. In various embodiments, hardware circuitry may be used in combination with software instructions to implement the present invention. Thus, the techniques are not limited to any specific combination of hardware circuitry and software nor to any particular source for the instructions executed by the computer system. In addition, throughout this description, various functions and operations are described as being performed by or caused by software code to simplify description. However, those skilled in the art can recognize what is meant by such expressions is that the functions result from execution of the code by a processor.
For example, computing system 1000 may represents any of data processing systems described above performing any of the processes or methods described above. System 1000 can include many different components. These components can be implemented as integrated circuits (ICs), portions thereof, discrete electronic devices, or other modules adapted to a circuit board such as a motherboard or add-in card of the computer system, or as components otherwise incorporated within a chassis of the computer system. Note also that system 1000 is intended to show a high level view of many components of the computer system. However, it is to be understood that additional or fewer components may be present in certain implementations and furthermore, different arrangement of the components shown may occur in other implementations. System 1000 may represent a desktop, a laptop, a tablet, a server, a mobile phone, a programmable logic controller, a personal digital assistant (PDA), a personal communicator, a network router or hub, a wireless access point (AP) or repeater, a set-top box, an embedded computer, a general-purpose computer on graphics processing units (GPGPU), or a combination thereof.
In one embodiment, system 1000 includes processor 1001, memory 1003, and devices 1005-1008 via a bus or an interconnect 1022. Processor 1001 may represent a single processor or multiple processors with a single processor core or multiple processor cores included therein. Processor 1001 may represent one or more general-purpose processors such as a microprocessor, a central processing unit (CPU), or the like. More particularly, processor 1001 may be a complex instruction set computing (CISC) microprocessor, reduced instruction set computing (RISC) microprocessor, very long instruction word (VLIW) microprocessor, or processor implementing other instruction sets, or processors implementing a combination of instruction sets. Processor 1001 may also be one or more special-purpose processors such as an application specific integrated circuit (ASIC), a cellular or baseband processor, a field programmable gate array (FPGA), a digital signal processor (DSP), a network processor, a graphics processor, a network processor, a communications processor, a cryptographic processor, a co-processor, an embedded processor, or any other type of logic capable of processing instructions.
Processor 1001, which may be a low power multi-core processor socket such as an ultra low voltage processor, may act as a main processing unit and central hub for communication with the various components of the system. Such processor can be implemented as a system on chip (SoC). In one embodiment, processor 1001 may be an Intel® Architecture Core™-based processor such as an i3, i5, i7 or another such processor available from Intel Corporation, Santa Clara, Calif. However, other low power processors such as available from Advanced Micro Devices, Inc. (AMD) of Sunnyvale, Calif., an ARM-based design from ARM Holdings, Ltd. or a MIPS-based design from MIPS Technologies, Inc. of Sunnyvale, Calif., or their licensees or adopters may instead be present in other embodiments.
Processor 1001 is configured to execute instructions for performing the operations and methods discussed herein. System 1000 further includes a graphics interface that communicates with graphics subsystem 1004, which may include a display controller and/or a display device.
Processor 1001 may communicate with memory 1003, which in an embodiment can be implemented via multiple memory devices to provide for a given amount of system memory. As examples, the memory can be in accordance with a Joint Electron Devices Engineering Council (JEDEC) low power double data rate (LPDDR)-based design such as the current LPDDR2 standard according to JEDEC JESD 207-2E (published April 2007), or a next generation LPDDR standard to be referred to as LPDDR3 that can offer extensions to LPDDR2 to increase bandwidth. As examples, 2/4/8 gigabytes (GB) of system memory may be present and can be coupled to processor 1001 via one or more memory interconnects. In various implementations the individual memory devices can be of different package types such as single die package (SDP), dual die package (DDP) or quad die package (QDP). These devices can in some embodiments be directly soldered onto a motherboard to provide a lower profile solution, while in other embodiments the devices can be configured as one or more memory modules that in turn can couple to the motherboard by a given connector.
Memory 1003 can be a machine readable non-transitory storage medium such as one or more volatile storage (or memory) devices such as random access memory (RAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), static RAM (SRAM), or other types of storage devices such as hard drives and flash memory. Memory 1003 may store information including sequences of executable program instructions that are executed by processor 1001, or any other device. For example, executable code and/or data of a variety of operating systems, device drivers, firmware (e.g., input output basic system or BIOS), and/or applications can be loaded in memory 1003 and executed by processor 1001. An operating system can be any kind of operating systems, such as, for example, Windows® operating system from Microsoft®, Mac OS®/iOS® from Apple, Android® from Google®, Linux®, Unix®, or other real-time or embedded operating systems such as VxWorks.
System 1000 may further include IO devices such as devices 1005-1008, including wireless transceiver(s) 1005, input device(s) 1006, audio IO device(s) 1007, and other IO devices 1008. Wireless transceiver 1005 may be a WiFi transceiver, an infrared transceiver, a Bluetooth transceiver, a WiMax transceiver, a wireless cellular telephony transceiver, a satellite transceiver (e.g., a global positioning system (GPS) transceiver), or other radio frequency (RF) transceivers, network interfaces (e.g., Ethernet interfaces) or a combination thereof.
Input device(s) 1006 may include a mouse, a touch pad, a touch sensitive screen (which may be integrated with display device 1004), a pointer device such as a stylus, and/or a keyboard (e.g., physical keyboard or a virtual keyboard displayed as part of a touch sensitive screen). For example, input device 1006 may include a touch screen controller coupled to a touch screen. The touch screen and touch screen controller can, for example, detect contact and movement or break thereof using any of a plurality of touch sensitivity technologies, including but not limited to capacitive, resistive, infrared, and surface acoustic wave technologies, as well as other proximity sensor arrays or other elements for determining one or more points of contact with the touch screen.
Audio IO device 1007 may include a speaker and/or a microphone to facilitate voice-enabled functions, such as voice recognition, voice replication, digital recording, and/or telephony functions. Other optional devices 1008 may include a storage device (e.g., a hard drive, a flash memory device), universal serial bus (USB) port(s), parallel port(s), serial port(s), a printer, a network interface, a bus bridge (e.g., a PCI-PCI bridge), sensor(s) (e.g., a motion sensor such as an accelerometer, gyroscope, a magnetometer, a light sensor, compass, a proximity sensor, etc.), or a combination thereof. Optional devices 1008 may further include an imaging processing subsystem (e.g., a camera), which may include an optical sensor, such as a charged coupled device (CCD) or a complementary metal-oxide semiconductor (CMOS) optical sensor, utilized to facilitate camera functions, such as recording photographs and video clips. Certain sensors may be coupled to interconnect 1007 via a sensor hub (not shown), while other devices such as a keyboard or thermal sensor may be controlled by an embedded controller (not shown), dependent upon the specific configuration or design of system 1000.
To provide for persistent storage of information such as data, applications, one or more operating systems and so forth, a mass storage (not shown) may also couple to processor 701. In various embodiments, to enable a thinner and lighter system design as well as to improve system responsiveness, this mass storage may be implemented via a solid state device (SSD). However in other embodiments, the mass storage may primarily be implemented using a hard disk drive (HDD) with a smaller amount of SSD storage to act as a SSD cache to enable non-volatile storage of context state and other such information during power down events so that a fast power up can occur on RE-initiation of system activities. Also a flash device may be coupled to processor 1001, e.g., via a serial peripheral interface (SPI). This flash device may provide for non-volatile storage of system software, including a basic input/output software (BIOS) as well as other firmware of the system.
Note that while system 1000 is illustrated with various components of a data processing system, it is not intended to represent any particular architecture or manner of interconnecting the components; as such details are not germane to embodiments of the present invention. It can also be appreciated that network computers, handheld computers, mobile phones, and other data processing systems which have fewer components or perhaps more components may also be used with embodiments of the invention.
Thus, methods, apparatuses, and computer readable medium to train an autonomous robot using a sensor apparatus are described herein. Although the present invention has been described with reference to specific exemplary embodiments, it can be evident that various modifications and changes may be made to these embodiments without departing from the broader spirit and scope of the invention as set forth in the claims. Accordingly, the specification and drawings are to be regarded in an illustrative rather than a restrictive sense.
1. A sensor apparatus for use by a subject, the sensor apparatus comprising:
- a sensor configured to capture and transmit sensor data related to an action performed by the subject, wherein the sensor further transmits a unique identifier associated with its location on the sensor apparatus, and wherein the sensor data includes information that identifies characteristics related to the action performed by the subject, the characteristics including a sensor measurement, date and time of the sensor measurement, the location of the sensor measurement, an identification of the subject, and an activity performed by the subject that generated the sensor measurement; and
- a computing device, wherein the computing device is configured to: receive the sensor data and unique identifier transmitted by the sensor, associate the sensor data with the unique identifier and save the sensor data in a sensor data file, wherein the sensor data is saved in a track in the sensor data file, and wherein a plurality of tracks can be saved in the sensor data file.
2. The sensor apparatus of claim 1, wherein the data file is further written as a series of time points, each time point comprising sensor data for at least one track corresponding to a time interval, and wherein the sensor data is processed by another computing device.
3. The sensor apparatus of claim 1, wherein the sensor measurement includes objective measurements of motions, movements, auditory signals, visual signals, change in posture, or change in position, of the subject.
4. The sensor apparatus of claim 1, wherein the sensor apparatus is included within a suit, and wherein the subject can be a living being or an autonomous robot.
5. The sensor apparatus of claim 1, wherein the sensor can capture at least visual or auditory sensor data to provide a view or audio of the surrounding of the subject.
6. The sensor apparatus of claim 1, wherein the sensor data can be processed by a machine learning algorithm to generate signals to train an autonomous robot.
7. The sensor apparatus of claim 1, wherein the sensor data is curated by manual or software-assisted correcting or smoothing.
8. A system to generate sensor data capturing the behavior of a subject, comprising:
- a sensor apparatus comprising at least one sensor configured to: capture and transmit sensor data related to an action performed by the subject, wherein the at least one sensor further transmits a unique identifier associated with its location on the sensor apparatus, and wherein the sensor data includes information that identifies characteristics related to the action performed by the subject, the characteristics including a sensor measurement, date and time of the sensor measurement, the location of the sensor measurement, an identification of the subject, and an activity performed by the subject that generated the sensor measurement;
- a computing device, wherein the computing device is configured to: receive the sensor data and unique identifier transmitted by the at least one sensor, associate the sensor data with the unique identifier and save the sensor data in a sensor data file, wherein the sensor data is processed by a machine learning algorithm to generate processed control signals to train an autonomous robot.
9. The system of claim 8, wherein the machine-learning algorithm produces as its outputs information that encodes a set of first control signals needed to generate a set of second control signals for the next time interval of the autonomous robot.
10. The system of claim 8, wherein the autonomous robot can be configured to vocally communicate using the processed sensor data.
11. The system of claim 8, wherein the autonomous robot control signals can be generated via a bootstrap sensor data generation mechanism.
12. The system of claim 8, further comprising another sensor apparatus, the another sensor apparatus similar to the sensor apparatus and wherein the another sensor apparatus is adorned by another subject.
13. The system of claim 12, wherein the another subject is the autonomous robot, and wherein the another sensor apparatus receives the processed control signals from the another computing device, and wherein sensor data from the another sensor data generated due to the processed control signals are saved to a sensor data file.
14. The system of claim 13, wherein the another sensor data is saved in a track in the sensor data file, and wherein a plurality of tracks can be saved in the sensor data file, and wherein the sensor data file is further written as a series of time points, each time point comprising sensor data for at least one track corresponding to a time interval.
15. The system of claim 8, wherein the sensor apparatus is included within a suit, and wherein the subject can be a living being or an autonomous robot.
16. The system of claim 8, wherein the at least one sensor can capture at least visual or auditory sensor data to provide a view or audio of the surrounding of the subject.
17. The system of claim 8, wherein the sensor data is curated by manual or software-assisted correcting or smoothing.
18. The system of claim 8, wherein the autonomous robot can be driven by motion generating mechanisms including at least one of an electric motor, pneumatic or hydraulic system, an internal combustion motor, a pulley, a chain, a cables, a motorized linear actuators, or a moving piston.
19. The system of claim 8, wherein the autonomous robot is trained to perform actions in a field related to at least one of elder care, nursing, housemaid, general retail, information kiosk attendant, receptionist, security and surveillance, hazardous environment inhospitable to humans, agriculture, pet care, or tour guide.
|5673367||September 30, 1997||Buckley|
|6070269||June 6, 2000||Tardif|
|6377281||April 23, 2002||Rosenbluth|
|6834436||December 28, 2004||Townsend et al.|
|7024276||April 4, 2006||Ito|
|7664571||February 16, 2010||Gonzalez-Banos|
|7981057||July 19, 2011||Stewart|
|8078321||December 13, 2011||Iba|
|8083589||December 27, 2011||Kavars|
|8106911||January 31, 2012||Gordon|
|8224652||July 17, 2012||Wang|
|8265791||September 11, 2012||Song|
|8315740||November 20, 2012||Hasegawa|
|8347710||January 8, 2013||Scott|
|8593286||November 26, 2013||Razoumov|
|8626472||January 7, 2014||Solinsky|
|8744627||June 3, 2014||Wieland|
|8751041||June 10, 2014||Moon|
|8781624||July 15, 2014||Hodgins|
|8843236||September 23, 2014||Barajas|
|8909370||December 9, 2014||Stiehl|
|8925392||January 6, 2015||Esposito|
|9266233||February 23, 2016||Kornbluh|
|9351900||May 31, 2016||Walsh|
|9358685||June 7, 2016||Meier|
|9681827||June 20, 2017||Huang|
|20030174579||September 18, 2003||Rioux|
|20050150697||July 14, 2005||Altman|
|20070108109||May 17, 2007||Erlandsson-Warvelin|
|20070233318||October 4, 2007||Lei|
|20080009771||January 10, 2008||Perry|
|20080258921||October 23, 2008||Woo|
|20090072962||March 19, 2009||Hitchin|
|20090132088||May 21, 2009||Taitler|
|20100103106||April 29, 2010||Chui|
|20100135119||June 3, 2010||Paget|
|20100298976||November 25, 2010||Sugihara|
|20110118870||May 19, 2011||Sugihara|
|20120191229||July 26, 2012||Woo|
|20130040763||February 14, 2013||Davidson|
|20130054021||February 28, 2013||Murai|
|20130054028||February 28, 2013||Lee|
|20130145530||June 13, 2013||Mitra|
|20130211587||August 15, 2013||Stephens|
|20130211594||August 15, 2013||Stephens|
|20130245824||September 19, 2013||Barajas|
|20130345875||December 26, 2013||Brooks|
|20140065586||March 6, 2014||Gabbai|
|20140199672||July 17, 2014||Davidson|
|20140371871||December 18, 2014||Farina|
|20140371906||December 18, 2014||Barajas|
|20150051734||February 19, 2015||Zheng|
|20150057984||February 26, 2015||Nicoletti|
|20150075303||March 19, 2015||Hericks|
|20150094855||April 2, 2015||Chemouny|
|20150158175||June 11, 2015||Kim|
|20150196800||July 16, 2015||Macri|
|20150212521||July 30, 2015||Pack|
|20150217444||August 6, 2015||Asada|
|20150290795||October 15, 2015||Oleynik|
|20150336268||November 26, 2015||Payton|
|20160151917||June 2, 2016||Faridi|
- Koenemann, Real-time Imitation of Human Whole-Body Motions by Humanoids, URL: http://www2.informatik.uni-freiburg.de/˜burgetf/pub/koenemann14icra.pdf.
- Billard, Robot learning by demonstration, URL: http://www.scholarpedia.org/article/Robot_learning_by_demonstration.
- Liu, Imitation control for biped robot using wearable motion sensor, Journal of Mechanisms and Robotics, v 2, n 2, p. 1-6, May 2010 URL: http://www.mech.kochi-tech.ac.jp/liutao/ASME-2.pdf.
- https://www.xsens.com/company/ (Author unknown).
- Teleoperation of a humanoid robot using full-body motion capture, example movements, and machine learning http://www.araa.asn.au/acra/acra2012/papers/pap126.pdf.
- Automated detection of gait initiation and termination using wearable sensors http://www.robolab.si/fileadmin/user_upload/Publications/publications/2013/novak_ME%26P_13.pdf.
- Robots that imitate humans https://courses.cs.washington.edu/courses/cse481c/11au/papers/robotsThatImitateHumans.pdf.
International Classification: B25J 9/16 (20060101); G06F 3/01 (20060101); B25J 11/00 (20060101); G06N 3/00 (20060101);


text:
Over the last 20 years The Historical Novels Review (the society’s print magazine for our members) has published reviews of some 18,000 historical fiction books. Become a member to get exclusive early access to our latest reviews too!
Browse our magazines
Submit your novel for review
Our features are original articles from our print magazines (these will say where they were originally published) or original articles commissioned for this site. If you would like to contribute an article for the magazine and/or site, please contact us.
Our online member directory allows visitors to view members’ profiles, their latest website/blog posts and links to their Facebook, Twitter and Goodreads accounts. It is also where our staff first look for news and features for the site.
Our membership is worldwide, but we still like to meet up - and many members travel thousands of miles to do so. Here you can find out about our conferences and chapter meetings, and can check the important dates for our Awards and magazine.
By Prince Michael of Greece -
One expects certain things in novels about the Romanovs: a glittering backdrop of immense wealth and privilege, impossibly beautiful protagonists, and, of course, ...Read Review
By Susan Vreeland -
In Paris of 1876, a young father reluctantly accompanies his wife and four-year-old daughter, Mimi, to his sister’s garden party in Montmartre. Reluctantly, ...Read Review
By Richard S. Wheeler -
On May 17, 1876, Colonel George Custer led the Seventh Cavalry out of Fort Abraham Lincoln with orders to seek out and subdue one of ...Read Review
By Kate Kingsbury -
The English villagers of Sitting Marsh do not want a munitions factory ruining their town and making them targets of the Luftwaffe. With ...Read Review
By Howard Frank Mosher -
This reissue of Mosher’s 1978 story collection was my introduction to the author’s work; it deserves a much wider audience outside New ...Read Review
By Peter Rushforth -
Published 2004Published 2005
For some people, a love of reading becomes a grand passion. Alice Pinkerton, housebound madwoman in turn-of-the-century New York City, lives entirely for ...Read Review
By Carolly Erickson -
A crime has been committed: a young woman on foot, journeying alone on the road, has been accosted by three highwaywomen. She’s ...Read Review
By Bill Nasson -
Larger-than-life figures such as Wolfe, Rhodes, Drake, Gordon, Clive, Raffles, Brooke and Roberts occupy center stage in histories of the Empire upon which ...Read Review
By Heather Vogel Frederick -
Patience Goodspeed’s second adventurous outing finds the young mathematician installed aboard her father’s whaling ship as assistant navigator, but not for ...Read Review
By H.N. Turteltaub -
Fourth in a series, Owls to Athens advances the adventures of the intrepid Rhodian merchants, Sostratos and Menedemos. In the chaotic post-Alexander world, ...Read Review
Over the last 20 years The Historical Novels Review (the society's print magazine for our members) has published reviews of some 15,000 historical fiction books.
About our reviews and reviewers
Submit a Book for Review

domain: library


text:
Rising act, Lil Frosh whose contract with DMW was terminated months back release a brand new song tiled ‘Oshaa’.
The talented rapper and also singer says
This is from me to the people that still believes in my craft. New Music Oshaa..
It would be recalled that few weeks ago, Gift’s (Lil Frosh Girlfriend) brother accused the singer of domestic violence. According to him, the former DMW act has been committing this heinous crime for over a year now. He revealed how he constantly abused her both psychologically and physically and even how he threatened to deal with her if she tries to speak out. He also shared photos of her bruised face to back up his claims. Lil frosh’s contract with DMW was later terminated and in reaction released a statement apologising for his actions. He Later went on to deny the allegations and shared more details about the whole matter in a Podcast.
While we still waiting on the finally outcome of the whole scandal, Lil Frosh surprise us with the release of a new music.
‘Oshaa’ the new song is produced by Vstix, It’s a banging Afrobeat/Pop record with lovely melody and vibes. On this record Frosh shares that he is an Oracle, a music demi-god that isn’t competing with anyone.
Listen Up & Catch the Vibe!
NaijaVibe HoT DOWNLOAD
- Dj Kamol – Crazy Gyration ft Skailey Normal [AuDio]
- Dai Verse & Buju – Sweet Daddy
- DJ Kaywise – Cheers To 2022 Mix
- Shadow – Escobar
- Mr. Charis – All Back ft Zouwrah [AuDio]
- Cheque – Holy Gee
- Portable – Gberatan
- M.I Abaga – The Guy
- BNXN (Buju) – Kenkele ft Wande Coal [AuDio + ViDeo]
- Yemi Alade – Begging
- PSquare – Jaiye (Ihe Geme)
- Afrobank Music & Tiwa Savage New Year Mix with DJ Promtwist

domain: entertainment


With offer $7.50
Size: No Size
Grab a pair of these refreshing citrus themed socks. Note: they might be a little tangy at first.
- Fits Women's shoe sizes 5-12
- 75 % Cotton, 22 % Polyester, 3 % Spandex
- A safe place for your feet
- High-stretch fabric with groovy facade
- Cotton, Polyester, Spandex
- Machine Washable
- Web ID: 10145939
Shipping & Returns
0 Reviews Be the first to write a review for this product.


The Pentium 4 platform is one of the most evolving platforms in CPU history. Originally designed on a 423 pin interface and RDRAM memory, it has now moved well into DDR country on an mPGA 478 pin interface. Intel last launched a new processor and Chipset platform in 2000. Intel since the introduction has seen many chipsets for the Pentium 4, and 90% of them are coming from Intel'ts own labs, only a small percentage has been from the third party chipset manufacturers.
Originally designed with the I850 Dual Channel RDRAM chipset, the Pentium 4 became something of a high priced snail of the CPU market. PC133 SDRAM and DDR SDRAM proving they can hold RDRAM off should have led Intel down the DDR track much earlier. However, licensing agreements with Rambus prevented Intel from supporting DDR SDRAM before 2001. I845 chipset was released in order to reduce Pentium 4 platform costs. Designed to use PC133 SDRAM, it led Intel into a very large memory bottleneck. As soon as the agreements between Intel and Rambus had expired Intel moved straight into DDR SDRAM with the I845D chipset, this was the third Intel chipset for the Pentium 4 - 533Mhz FSB brought Intel to release its forth chipset - the I845E and I845G.
Intel was largely criticised for its lack of DDR-333 memory support for the I845E and G series made Intel review its chipset designs, the fifth chipset series came in the form of the I845PE and I845GE. Identical to the E and G with DDR-333 support. Again Intel was criticised for its lack of AGP 8x transfers.
While not originally intended for the desktop sector, but more towards entry level servers and workstations, the Granite Bay or E7205 chipset was Intel'ts first leap forward for the Pentium 4. Designed as the first Dual Channel DDR SDRAM platform for the Pentium 4 CPU with AGP 8x support, it was a large hit due to its increased memory bandwidth. Now Intel moved this a few steps forward with the Canterwood I875P chipset which we present to you a few days later after the NDA expired due to server issues we were experiencing.
PRICING: You can find products similar to this one for sale below.
United States: Find other tech and computer products like this over at Amazon's website.
United Kingdom: Find other tech and computer products like this over at Amazon UK's website.
Canada: Find other tech and computer products like this over at Amazon Canada's website.
- Intel I875P "Canterwood" - Page 1 [Introduction]
- Intel I875P "Canterwood" - Page 2 [Details on the New Pentium 4 King]
- Intel I875P "Canterwood" - Page 3 [875P in Detail]
- Intel I875P "Canterwood" - Page 4 [Intel Desktop Motherboard]
- Intel I875P "Canterwood" - Page 5 [Benchmarks - Test Setup and Sandra 2003]
- Intel I875P "Canterwood" - Page 6 [Benchmarks - System Productivity and Multimedia]
- Intel I875P "Canterwood" - Page 7 [Benchmarks - Synthetic PC and 3D]
- Intel I875P "Canterwood" - Page 8 [Benchmarks - OpenGL]
- Intel I875P "Canterwood" - Page 9 [Benchmarks - Direct3D]
- Intel I875P "Canterwood" - Page 10 [Conclusion]
Recommended for You
- We at TweakTown openly invite the companies who provide us with review samples / who are mentioned or discussed to express their opinion of our content. If any company representative wishes to respond, we will publish the response here.
Latest News Posts
- Escape the 'Isle of Dogs' in our Blu-ray giveaway!
- Apple's new MacBook Pro SEVERELY THROTTLES from Core i9 heat
- Western Digital Samples 1.33Tb QLC Die Flash
- Capcom add 'Torch Man' to the Mega Man 11 boss roster
- Kirby Star Allies: Daroach, Dark Meta Knight & more details
- NZXT Kraken M22 CPU Cooler Review
- Question about ASROCK 970 Extreme3 1.0
- MSI X470 Gaming M7 AC (AMD X470) Motherboard Review
- ASROCK C2750D4I BMC Self Test Failure
- OWC Travel Dock Review
- Micron Launches Industry's First Enterprise SATA Solid State Drives Built on Leading 64-layer 3D NAND Technology
- Micron, Rambus, Northwest Logic and Avery Design to Deliver a Comprehensive GDDR6 Solution for Next-Generation Applications
- Toshiba Memory America Unveils UFS Devices Utilizing 64-Layer, 3D Flash Memory
- ASUS Announces GeForce GTX 1070 Ti Series Gaming Graphics Cards
- ASUS Announces ASUS Hangouts Meet Hardware Kit


text:
Bake. Eat. Netflix. Sleep. Repeat. Kind of see a theme here these days… hmmm… Well, here’s another recipe to bake and enjoy!
Banana bread, muffins, coffee cake, cinnamon rolls and energy bites are all my favorites with coffee (cappuccinos/lattes). This really makes me miss having friends over for coffee😢. Hopefully very soon I can bake this for my friends and have a cup of coffee.
I really love this recipe because of I don’t use as much sugar and flour in this recipe. Which the bulk of the recipe is bananas. I know bananas sometimes get a bad “rap” for those watching their carb intake but this fruit actually has some very interesting science regarding it’s benefits. Banana are a good source of fiber, magnesium, potassium, vitamin C, vitamin B6 and more.
One medium-sized banana contains about three grams of fiber. The average American should consume about 25 grams of fiber each day(1). Many of Americans only get about half of the recommended amount. Fiber is an important nutrient that comes from whole grains, fruits and vegetables.
Potassium is essential mineral and electrolyte that is important in the body for muscle contractions, proper heart functions and maintaining adequate water balances. This high-potassium food is helpful for preventing heart disease by keeping blood pressure down. Potassium is also important for relieving any muscle cramps after strenuous exercise.
The plentiful amount of antioxidants in bananas are very beneficial for decreasing free radical damage that can be linked to lowering the risk for certain diseases(2).
Bananas are A-okay!
After a couple days, I placed this scrumptious bread in the refrigerator to maintain its freshness. So every time I open the frig, I have the temptation of this delicious treat. I can eat it anytime of day. I really love this recipe as it highlights bananas instead of added sugars. I find so many recipe of banana bread or even zucchini breads with one plus cups of sugar. I think, no wonder people love this recipe there is that much sugar, ha! With this recipe, I think there is a great balance between added sugars from the regular white sugar and chocolate chips, while increasing the natural sweetness (and benefits) of bananas. And take note, whether you add honey, maple syrup, brown sugar, brown rice syrup and even white sugar, it is pretty much all the same. They are all simple sugars broken down in the body the same way.

domain: food


Yo Yo Ma Berkeley Tickets
|Date & Time||Seating|
Emanuel Ax, Leonidas Kavakos & Yo-Yo Ma
Feb 28 2018
Details of Yo Yo Ma Berkeley Tickets and the Ticket Luck value
Yo-Yo Ma found a new way to communicate with his audience and desire to grow and bring something new brought him a multi-faceted career. Ma explores musical cultures outside of the classical tradition of the West and makes a connection with the music that is a stimulant for one’s imagination.
Yo-Yo Ma performs as a soloist and with orchestras and no major place in the world is left behind from seeing his artistic skills. His performances are as relaxing as they are entertaining and every music lover looks forward to one. Mr. Ma is coming for one such performance in Berkeley, CA and Yo Yo Ma Berkeley CA concert will be a performance with visible inspirations drawn from different kinds of musical cultural, fueled by his artistic interactions.
Yo-Yo Ma’s discography is spread over 75 albums of which 15 or more are Grammy winning. People who love listening to Yo-Yo-Ma know that he has wide-ranging interests and he does justice with each one of them. “Appalachian Journey”, “Appalachia Waltz” and “Hush” are some of his successful recordings. His collaborations on albums and his solo work make him a famous name in the classical music field with several of his albums hiking the Billboard classical music charts and staying there for weeks. As for his upcoming performance, it is as anticipated as any of his performances and Yo Yo Ma Berkeley CA tickets are selling out quickly because just like any other place, Berkeley has also got a handful of people who are fans of Ma’s work.


By Karen Collins
A distinguishing characteristic of games is their interactivity, and sound performs an incredible function during this: a player's activities can set off discussion, sound results, ambient sound, and song. And but video game sound has been ignored within the starting to be literature on online game experiences. This ebook fills that hole, introducing readers to the numerous complicated elements of video game audio, from its improvement in early video games to theoretical discussions of immersion and realism. In Game Sound, Karen Collins attracts on more than a few resources -- together with composers, sound designers, voice-over actors and different execs, web articles, fan websites, meetings, magazines, patent files, and, in fact, the video games themselves -- to supply a large evaluation of the heritage, concept, and creation perform of game audio. Game Sound has underlying issues: how and why video games are diverse from or just like movie or different linear audiovisual media; and know-how and the restrictions it has put on the construction of online game audio. Collins focuses first at the historic improvement of online game audio, from penny arcades in the course of the upward thrust of domestic video games and the hot fast advancements within the undefined. She then examines the creation strategy for a latest online game at a wide video game corporation, discussing the jobs of composers, sound designers, voice expertise, and audio programmers; considers the growing to be presence of approved highbrow estate (particularly renowned tune and movies) in video games; and explores the functionality of audio in video games in theoretical phrases. eventually, she discusses the problems posed via nonlinearity and interactivity for the composer of online game music.
Preview of Game Sound: An Introduction to the History, Theory, and Practice of Video Game Music and Sound Design (MIT Press) PDF
Similar Video Games books
Global of Warcraft is greater than a online game. there is not any final aim, no successful hand, no princess to be rescued. WoW is an immersive digital global within which characters needs to cope in a perilous atmosphere, imagine identities, fight to appreciate and speak, learn how to use expertise, and compete for dwindling assets.
Proteus, the legendary sea god who might adjust his visual appeal at will, embodies one of many gives you of on-line video games: the power to reinvent oneself. but population of digital worlds not often do so liberty, video game researcher Nick Yee contends. even though on-line video games evoke freedom and escapism, Yee indicates that digital areas perpetuate social norms and stereotypes from the offline global, remodel play into exertions, and encourage racial scapegoating and superstitious considering.
• ideas for each unmarried venture in Panau, together with how one can liberate all of them. • in achieving a hundred% of entirety with our complete checklist of coordinates for all three hundred collectibles and lots more and plenty extra! • Max out your equipment and cars with our Black industry consultant in addition to the destinations of each unmarried improve half.
Within the yr 2044, fact is an unpleasant position. the one time teenage Wade Watts particularly feels alive is whilst he is jacked into the digital utopia often called the OASIS. Wade's committed his existence to learning the puzzles hidden inside of this world's electronic confines—puzzles which are in response to their creator's obsession with the popular culture of a long time previous and that promise substantial energy and fortune to whoever can liberate them.
- Legacy of Blood (Diablo, Book 1)
- Just Cause 2 (Prima Official Game Guide)
- Lightning Returns: Final Fantasy XIII (The Complete Official Guide)
- Devil May Cry Official Strategy Guide (Signature Series)
Extra info for Game Sound: An Introduction to the History, Theory, and Practice of Video Game Music and Sound Design (MIT Press)
A few Commodore composers have been really adventurous with their track coding, and integrated random quantity turbines into the code that may make a choice from a bunch of series strategies. for example, occasions of Lore (Martin Galway, Microprose, 1988) used a variety of guitar solos that have been repeated randomly for the eleven-minute period of the tune. during this means, the game’s ten songs (over thirty mins of song) might ﬁt into simply 923 bytes. an identical random iteration used to be utilized in Rock famous person Ate My Hamster (The Codemasters software program corporation restricted, 1988), a rock administration video game. The tune for the band’s rehearsal used to be selected from a random blend of 16 sequences. much more complex randomization was once built at LucasFilm video games, in a football video game known as Ballblazer (1984), which included fractal-based algorithmic track in the course of gameplay. Programmer-musician Peter Langston designed a chain of jazz sequences and a regular bass line. The lead was once improvised on (algorithmically assorted) through the pc. one other fascinating strategy was once noticeable additionally in Lazy Jones (Terminal software program, 1984), which had twenty-one songs, one in every of which was once chosen whilst the nature entered or left one of many ‘‘room’’ degrees of gameplay. there have been eighteen rooms in overall, and every room had its personal four-bar ‘‘song,’’ which really performed like a phase of 1 higher tune (the identify music). whether the nature left the room at, say, bar twenty-one, the remainder of the loop could play ahead of it can transition again into the subject matter music. lots of the loops labored good jointly, partly due to the ragtime-like bass strains, a similar timbres used, and the truth that the sport used basically channels. those principles are mentioned extra in bankruptcy eight. hide songs have been very hot at the Commodore sixty four, in part simply because its complex sound chip enabled extra recognizable renditions than different structures of the time, even if a number of composers for the C64 preferred unique tunes, comparable to Ben Dalglish: ‘‘Covers, normally [were extra difﬁcult], just because i used to be a perfectionist while it got here to objects like getting quick guitar solos correct note-fornote . . . and likewise end result of the association problem of ﬁtting a ‘real international’ piece of tune with drums and bass and strings and every little thing into 3 voices’’ (cited in Pouladi 2004). In different phrases, in lots of early situations of canopy songs in video games, the unique song needed to be signiﬁcantly altered so one can swimsuit the restrictions of the expertise. Classical tune used to be universal in Commodore sixty four video games, akin to Chopin’s Funeral March (Sonata no. 2 in B-ﬂat minor) in Zak McKracken (Chris Grigg, LucasArts, 1988), or Holst’s Mars, Bringer of conflict and Bach’s Prelude no. 2 in C Minor in depraved (Electric desires, 1989). extra attention-grabbing, maybe, used to be the mingling of renowned and classical songs in video games like Frantic Freddie (Commercial facts platforms, 1983), which used the Sylvers’ ‘‘Boogie Fever,’’ a number of Scott Joplin songs, Paul Simon’s ‘‘Kodachrome,’’ Beethoven’s 5th Symphony, ‘‘Crazy Little factor known as Love’’ (Queen), and ELO’s ‘‘Don’t convey Me P us h S ta r t B ut to n Down.


text:
CHRISTMAS is a bittersweet time of year for any widow, but for veteran author Barbara Taylor Bradford it is particularly poignant.
It was on Christmas Eve in 1963 that she tied the knot with beloved late husband Robert Bradford, who passed away in hospital in July 2019 at the age of 94.
Barbara, 88, says: “Nearly 56 years we were married. It would have been 56 years that Christmas. I knew him most of our lives.”
Barbara had to make the difficult decision to turn off the machines that were keeping her husband alive in accordance with his living will, which stated that he did not want to be kept alive on machinery for any longer than one week.
She says: “I had all the machinery removed in the morning of the seventh day and I sat with him until something like three in the morning, holding his hands until he died.
“Finally, he drew his last breath, and I am so glad that I was with him.”
It marked the end of a remarkable chapter for the blockbusting Woman Of Substance author, who has sold 90 million books worldwide.
Her husband’s final words to her had been, “I love you.” He had felt unwell during the day, and suffered a massive stroke overnight that meant Barbara was unable to wake him in the morning. But once in hospital, he was initially still able to acknowledge her presence.
Most read in Fabulous
We don't get enough in benefits so I have to pay for Xmas myself, says off-grid mum
I’m a makeup artist,women make these 2 mistakes – causing them to look older
I'm a mum-of-13, Xmas dinner costs £300 & gifts £1,500 – I put it on credit card
Cleaning fanatics share 33p hack to get greasy kitchen extractor fans sparkling
She says: “He wasn’t awake, but when I squeezed his hand, he squeezed it back, so he knew it was me.
“And that happened for three days in a row, but by Friday there was no reaction at all. I knew then that I was going to lose him.”
At this point doctors broke the news that Robert would never recover consciousness.
Barbara says: “Some might not have wanted to do it, to take away the machines, but that was what he wanted so I fulfilled his last wish.
“I leaned over and whispered into his ear, ‘I’m going to take you home, and you’re going to get better’, and tears started to come down his cheeks.”
Barbara takes comfort from the fact that Robert would have hated a prolonged period on a ventilator. She says: “He was a very brilliant man who was always on the move, and it would have been hard for him. I think he died the way he was meant to.
“Relatively speaking, he went in a flash, and he didn’t suffer, and that is a great comfort to me.”
Barbara reveals she was recently asked if she would ever marry again, and adds: “I said, ‘I’m already married’, and they replied, ‘My goodness, already?’ They were taken aback.
“And I told them I am married to Robert Bradford, and even though he’s dead I still love him, and he is still my husband.
“I happened to have an extraordinary marriage. It would be hard to match him.
“I am still in love with him, and I can feel him around me. He’s here in my head and he’s here in my heart.”
It is fitting that Robert helped to inspire Barbara’s latest book, A Man Of Honour, effectively a prequel to 1979’s best-selling A Woman Of Substance.
She says: “Bob always told me that if anything happened to him, I must keep writing, so I knew he would approve.”
Yorkshire-born Barbara was in her mid-twenties and working as a journalist when mutual friends introduced her to film producer Robert in London.
She says: “We just fell for each other heavily. We started talking and we never stopped.
“I always used to say to him that I’d take the bullet for you, and that’s how strongly I felt about him.
“In many ways he ran my life, so all I had to do was write books.” She adds: “Apart from falling in love, and the physical attraction, and the sex, all of which are important, I happened to get on very well with him.
“We were almost on the same page on everything. We had our arguments and our quarrels but nothing ever serious. I think the longer your relationship goes on, you either get bored or you love each other more, and we were the latter.”
The couple amassed a vast fortune, with an apartment in New York and a country retreat in Connecticut.
But there was one sadness — they never had children, and after two miscarriages, the second in her early forties, Barbara chose to accept her lot and move on.
'FELL FOR EACH OTHER'
She says: “When you have a miscarriage, it is really sorrowful but after the second one I thought, ‘I can’t let this ruin my life’.
“And Bob felt the same. He said that we had each other, and we had got good careers and we were incredibly lucky.”
The UK divorce rate is around 42 per cent, and Barbara believes she may know where they are going wrong.
She says: “I think maybe it’s expectations. My generation might have been a bit more patient.
“We’re all human beings and it’s hard to live with somebody all of the time. Being in love changes to loving or it doesn’t.”
In the early months after Robert’s death, Barbara was too devastated to do much beyond getting through the day.
She says: “I really couldn’t write, and I couldn’t work. But then there came a point when I thought, ‘I’ve got to try and pull myself together’, because I knew that he would want me to keep going.
“You know, Churchill had that famous phrase, KBO — keep buggering on — and that’s what I’ve done.”
We pay for your stories!
Do you have a story for The Sun news desk?
Email us at [email protected] or call 0207 782 4104. You can WhatsApp us on 07423 720 250. We pay for videos too.
Click here to upload yours.
Click here to get The Sun newspaper delivered for FREE for the next six weeks.
Source: Read Full Article

domain: literature


text:
Fueling For a Marathon: The Night Before
Keep your legs moving with this pre-race meal plan
For exclusive access to all of our fitness, gear, adventure, and travel stories, plus discounts on trips, events, and gear, sign up for Outside+ today.
You want carbs, but you don’t need to subscribe to the high school track team model of a huge pasta dinner. Eat meals that combine complex carbohydrates with a little bit of protein and fat. Spread out your calories over the day, and consider having your biggest meal at lunch so you have time to digest. A big meal right before you go to bed can keep you up. And go easy on beans and foods that are high in fiber and might give you gas or indigestion. You don’t want to have to majorly unload during the race.


text:
India will get Thai-made CKD kits, assembled at the Chennai plant.
Ford has confirmed that the new Everest (new Ford Endeavour for India) will enter production this year at its Rayong plant in Thailand, and in Nanchang, China. The SUV will launch in key markets like China, Thailand, Australia and India this year as well.
Spotted in different colors, these units of the new Endeavour could be from the trial production batch, or from the late-prototype stage. Ford has announced three engine options for the new Endeavour, two diesels and a petrol.
The petrol engine in question is a 2.0-liter turbocharged four-cylinder unit, while the base diesel is a 2.2-liter four-cylinder engine. The range-topping engine is a 3.2-liter five-cylinder diesel motor. The engines will be paired to manual and automatic transmissions, and depending on market requirements, the SUV will be offered with 2WD or 4WD.
For the Indian market, the new Endeavour is expected to launch by the end of this year with either one, or both of the diesel engines. It will be assembled at Ford India's Chennai plant from Thai-made CKD kits.
Competitors: Ssangyong Rexton, Hyundai Santa Fe, Honda CR-V, Isuzu MU-7, Toyota Fortuner
Expected Price: INR 20-25 lakhs, ex-Showroom
Launch date in India: Mid- to late-2015
2016 Ford Endeavour/Everest - Spyshot Gallery
[Source - MZ Cars]

domain: news