Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
DISTRIBUTED WIRELESS TOY-BASED SKILL EXCHANGE, SYSTEMS AND METHODS
Document Type and Number:
WIPO Patent Application WO/2013/192348
Kind Code:
A1
Abstract:
Synergistic toys and apparatus are presented. Toys are able to communicate with each other, preferably through a wireless interface. The toys can include native skills; executable instructions, representing features of the toy. When a first toy is placed within proximity of another toy, the first toy can acquire new non-native skills from the second toy or vice versa. Thus, toys can interact with one or more other toys to give rise to an enriched interactive feature set.

Inventors:
CHATURVEDI RAHUL (US)
Application Number:
PCT/US2013/046650
Publication Date:
December 27, 2013
Filing Date:
June 19, 2013
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
NANT HOLDINGS IP LLC (US)
International Classes:
A63H3/36; A63H1/28; A63H30/04
Domestic Patent References:
WO2000015316A22000-03-23
Foreign References:
US20030003839A12003-01-02
US20030124954A12003-07-03
KR19990085355A1999-12-06
US20110009175A12011-01-13
Other References:
See also references of EP 2864008A4
Attorney, Agent or Firm:
WITCHEY, Nicholas, J. et al. (PC2603 Main Street,Suite 100, Irvine CA, US)
Download PDF:
Claims:
CLAIMS

What is claimed is:

1. A toy capable of interacting with a separate device comprising:

a computer readable non-transitory memory;

at least one processor coupled with the memory;

a device interface configured to communicatively couple with at least the separate device; and

a skill manager coupled with the memory and the device interface, and configured to: store a capability set in the memory, the capability set representing abilities of the apparatus,

acquire a non-native functionality in the form of executable instructions from the separate device via the device interface based on the capability set, and cause the processor to exhibit the non-native functionality as an acquired skill by executing at least some of the executable instructions.

2. The toy of claim 1, wherein the computer readable non-transitory memory comprises at least one of the following: RAM, flash, ROM, hard drive, and solid state drive.

3. The toy of claim 1, wherein the device interface comprises a wireless interface.

4. The toy of claim 3, wherein the wireless interface comprises at least one of the following: an audio sensor, an optical sensor, an infrared sensor, a camera, a radio, and a transceiver.

5. The toy of claim 3, wherein the wireless interface is configured to operate according to at least one of the following: an audio protocol, a visual protocol, 802.11, 802.15, WiMAX, WiGIG, Bluetooth, wireless USB, and Zigbee.

6. The toy of claim 1, wherein the capability set comprises at least one of the following computational parameters: a memory size, an application program interface, a processor capability, an operation system version, and a security capability.

7. The toy of claim 1, wherein the capability set comprises at least one of the following mechanical parameters: a movement capability, an actuator capability, a mechanical tolerance, a number of uses, a mean time between failures, and a use metric.

8. The toy of claim 1, wherein the capability set comprises at least one of the following audio parameters: an audio player capability, a speaker capability, and a speaker position.

9. The toy of claim 1, wherein the capability set comprises at least one of the following visual parameters: a video player, a display attribute, and a light emitter attribute.

10. The toy of claim 1, wherein the capability set comprises at least one additional capability derived from the non-native functionality.

11. The toy of claim 1, wherein the skill manager is further configured to instantiate a virtual machine, in which the processor executes at least some of the executable instructions of the non- native functionality.

12. The toy of claim 11, wherein the virtual machine comprises a transient virtual machine.

13. The toy of claim 11, wherein persistence of the virtual machine depends on proximity of the separate device to the apparatus.

14. The toy of claim 1, further comprising a toy housing in which is disposed the memory, processor, and skill manager.

15. The toy of claim 14, wherein the toy housing is sized and dimensioned to represent at least one of the following: a doll, a vehicle, a building block, a robot, an appliance, a puzzle, an animal, a stuffed animal, an instrument, an item of apparel, a game, a costume, a book, and a weapon.

16. The toy of claim 14, wherein the toy housing at least partially houses the device interface.

17. The toy of claim 1, wherein the skill manager is further configured to manage a plurality of skills stored in the memory, each skill representing functionality of the apparatus.

18. The toy of claim 17, wherein the plurality of skills comprises the non-native functionality represented by the acquired skill.

19. The toy of claim 17, wherein the plurality of skills comprises at least one native

functionality.

20. The toy of claim 19, wherein the skill manager is further configured to transmit the at least one native functionality with another device over the device interface.

21. The toy of claim 1, wherein the skill manager is further configured to discover the separate device.

22. The toy of claim 1, wherein the skill manager is further configured to handshake with the separate device.

23. The toy of claim 1, wherein the skill manager is further configured to determine an apparatus context.

24. The toy of claim 23, wherein the skill manager is further configured to maintain the acquired skill based on validity of the apparatus context.

25. The toy of claim 23, wherein the skill manager alters the acquired skill as a function of changes to the apparatus context.

26. The toy of claim 23, where the apparatus context depends on at least one of the following: an apparatus state, a state obtained from the separate device, a proximity, a location, an orientation, a time, a quantity of separate devices, a model, a make, a position, a sound, an image, a movement, a sense, and a modality of data exchange.

27. The toy of claim 23, wherein the apparatus context depends on sensor data obtained from at least one of the following sensors: an accelerometer, a pressure sensor, a temperature sensor, a compass, a magnetometer, a microphone, a touch display, an optical sensor, a biometric sensor, a proximity sensor, a vibration sensor, a mechanical sensor, a chemical sensor, a hall effect sensor, a piezoelectric sensor, a capacitive sensor, a resistive sensor, a weight sensor, a medical sensor, and an I/O sensor.

Description:
DISTRIBUTED WIRELESS TOY-BASED SKILL EXCHANGE, SYSTEMS AND

METHODS

[0001] This application claims the benefit of priority to U.S. provisional application having serial number 61/663481 filed June 22, 2012. This and all publications herein are incorporated by reference to the same extent as if each individual publication or patent application were specifically and individually indicated to be incorporated by reference.

Field of the Invention

[0002] The field of the invention is functionality exchange technologies. Background

[0003] Interactive toys, or other interactive devices for that matter, are typically configured to interactively engage with an individual. Recently, toys have taken on even greater interactive features where multiple toys can interact with each other. Examples toys capable of interacting with each other include the popular Furbies™ or even some Barbie® dolls produced by Mattel®. Although such devices have been popular, they require that each device incorporate all interactive features or skills at the time of manufacture. Unfortunately, such devices are unable to "learn" or acquire new skills from other possibly nearby toys.

[0004] Others have put forth effort toward developing systems and methods for integrating interactive toy devices. For example, U.S. patent 6,773,344 to Gabai titled "Methods and

Apparatus for Integration of Interactive Toys with Interactive Television and Cellular

Communication Systems," issued August 10, 2004, discusses interactive toys connected to at least one interactive toy server which can be connected to entertainment, education, sales promotion or other content providers possibly via Internet communication systems. A similar international PCT application WO 2001/070361 to Gabai titled "Interactive Toy Applications," published September 27, 2001 discusses an interactive toy environment, in which a plurality of interactive toys are interconnected via a computer network in which interactive toys interact with one or more users. Both Gabai references, however, do not discuss altering or extending the capabilities of the interactive toys based on proximity to or connection with other interactive toy devices. [0005] U.S. patent application 2003/0003839 Al to Lin titled "Intercommunicating Toy," published January 2, 2003, contemplates the exchange of data between intercommunicating toy devices and the storage of the exchanged data in a storage device inside the toy body. Lin does not discuss the execution of acquired skills or capabilities based on the acquired data. For example, Lin fails to provide for acquiring functions designed to affect physical capabilities of the toy based on the intercommunication of data.

[0006] Similarly, US patent application 2009/0137323 Al to Fiegener titled "Toy with Memory and USB Ports," published May 28, 2009, contemplates a system and method for a toy with memory storage capabilities and a method for the toy to connect to other toys, to a computer or the Internet for online virtual play and simulation. Fiegener, again, does not discuss the execution of acquired non-native skills or capabilities based on the connection with other toys or systems.

[0007] All publications herein are incorporated by reference to the same extent as if each individual publication or patent application were specifically and individually indicated to be incorporated by reference. Where a definition or use of a term in an incorporated reference is inconsistent or contrary to the definition of that term provided herein, the definition of that term provided herein applies and the definition of that term in the reference does not apply.

[0008] Thus, there is still a need for devices capable of acquiring non-native skills or capabilities from other devices with those skills possibly through an ad hoc system in which each device brings a unique skill or capability to the system where the skills can be exchanged.

Summary of The Invention

[0009] The inventive subject matter provides an apparatus capable of interacting with a separate device. An apparatus, preferably a toy, has a computer readable non-transitory memory (e.g., RAM, flash, ROM, hard drive, solid state drive, etc.), at least one processor coupled with that memory, and a device interface configured to communicatively couple with at least the separate device. The separate device can include another toy for example.

[0010] The apparatus can also comprise a skill manager coupled with both the memory and the device interface that is configured to store, in the memory, a capability set. This capability set represents the abilities of the apparatus. The skill manager can operate as a module or agent within the apparatus to manage skills associated with the apparatus or toy. For example, the skill manager can include executable instructions stored in the memory and capable of being executed on the processors, possibly in a secure fashion.

[0011] The skill manager can additionally be configured to or programmed to acquire a non- native functionality, in the form of executable instructions, from the separate device via the device interface, based on the capability set. The skill manager is further capable of causing the processor to exhibit the non-native functionality as an acquired non-native skill by executing at least some of the executable instructions. For example, the acquire skills can be placed within the memory and can cause the toy to exhibit new behaviors; perceptible behaviors or

imperceptible behaviors.

[0012] The apparatus's device interface preferably comprises a wireless interface. Such a wireless interface could comprise at least one of an audio sensor, an optical sensor, an infrared sensor, a camera, a radio or a transceiver. The wireless interface could also be configured to operate according to at least one of an audio protocol, a visual protocol, 802.11, 802.15,

WiMAX, WiGIG, BlueTooth, wireless USB or Zigbee. In some embodiments, the wireless interface could include a camera that captures image data displayed by another toy where the image data includes information related to an acquired skill (e.g., bar code, pattern, recognizable object or symbol, etc.).

[0013] The apparatus's capability set could include a broad spectrum of abilities associated with the apparatus or toy. A capability can include at least one computational parameter for example. Such computational parameters may include a memory size, an application program interface, a processor capability, an operation system version or a security capability. The capability set could also include at least one mechanical parameter. Mechanical parameters may include a movement capability, an actuator capability, a mechanical tolerance, a set number of uses, a mean time between failures or a use metric. The capability set could also include at least one audio parameter. Audio parameters may include an audio player capability, a speaker capability or a speaker position. The capability set could also include at least one visual parameter. Visual parameters may include a video player, a display attribute or a light emitter attribute. One should further appreciate that a capability set could include an attribute comprising at least one additional capability derived from the non-native functionality or other skills.

[0014] The apparatus's skill manager can be further configured in a number of ways. The skill manager could be configured to instantiate a virtual machine, in which the processor executes at least some of the executable instructions of the non-native functionality. Further, the virtual machine could be a transient virtual machine, the persistence of which may depend on the proximity of the separate device relative to the apparatus. When an apparatus context changes, the virtual machine can change according to one or more rules within a policy. For example, the virtual machine can be deconstructed, which in turn causes removal of the acquired skill.

[0015] The skill manager could also be configured to manage a plurality of skills stored in the memory, each skill representing a functionality of the apparatus. This plurality of skills could include at least one native functionality or native skill. The skill manager could be further configured to transmit at least one native functionality to another device over the device interface. The skill manager could be further configured to discover the separate device and to handshake the separate device. In some embodiments, the skill manager is also configured to determine the apparatus context.

[0016] The apparatus context could depend on at least one of an apparatus state, a state obtained from the separate device, a proximity, a location, an orientation, a time, a quantity of separate devices, a model, a position, a sound, an image, a movement, a sense, or a modality of data exchange.

[0017] Additionally, the apparatus context could depend on sensor data. Sensor data could be obtained from at least one of an accelerometer, a pressure sensor, a temperature sensor, a compass, a magnetometer, a microphone, a touch display, an optical sensor, a biometric sensor, a proximity sensor, a vibration sensor, a mechanical sensor, a chemical sensor, a hall effect sensor, a piezoelectric sensor, a capacitive sensor, a resistive sensor, a weight sensor, a medical sensor or an I/O sensor.

[0018] In some instances of such embodiments, the skill manager could be further configured to maintain an acquired skill based on the validity of the apparatus context or could be configured to alter an acquired skill as a function of changes to the apparatus context. In such scenarios, the skill can be considered a transient skill capable of persisting within the toy as long as the apparatus context remains valid.

[0019] In still other embodiments, the memory, processor and skill manager preferably reside in a toy housing. The toy housing could be sized and dimensioned to represent at least one of a doll, a vehicle, a building block, a robot, an appliance, a puzzle, an animal, a stuffed animal, an instrument, an item of apparel, a game, a costume, a book or a weapon. In instances of such embodiments, the toy housing could also, at least partially, house the device interface as well.

[0020] Various objects, features, aspects and advantages of the inventive subject matter will become more apparent from the following detailed description of preferred embodiments, along with the accompanying drawing figures in which like numerals represent like components.

Brief Description of The Drawing

[0021] Fig. 1 is a schematic of toy-based skill exchange ecosystem. Detailed Description

[0022] It should be noted that while the following description is drawn to a computer/server based device interaction system, various alternative configurations are also deemed suitable and may employ various computing devices including servers, workstations, clients, peers, interfaces, systems, databases, agents, peers, engines, controllers, modules, or other types of computing devices operating individually or collectively. One should appreciate the use of such terms are deemed to represent computing devices comprising at least one processor configured or programmed to execute software instructions stored on a tangible, non-transitory computer readable storage medium (e.g. , hard drive, FPGA, solid state drive, RAM, flash, ROM, memory, distributed memory, etc.). The software instructions preferably configure the computing device to provide the roles, responsibilities, or other functionality as discussed below with respect to the disclosed apparatus. In especially preferred embodiments, the various servers, systems, databases, or interfaces exchange data using standardized protocols or algorithms, possibly based on HTTP, HTTPS, AES, public -private key exchanges, web service APIs, known financial transaction protocols, or other electronic information exchanging methods. Data exchanges preferably are conducted over a packet- switched network, the Internet, LAN, WAN, VPN, or other type of packet switched network.

[0023] One should appreciate that the disclosed techniques provide many advantageous technical effects including providing signals from one device (e.g., a toy) to another device (e.g., another toy) where the signals configure the second device with new, possibly transient, functionality. For example, a toy can acquire a new skill from another toy. The non-native skill remains available to the toy as along as a context permits. Thus, each toy comprises hardware capable of acquiring new functionality.

[0024] The following discussion provides many example embodiments of the inventive subject matter. Although each embodiment represents a single combination of inventive elements, the inventive subject matter is considered to include all possible combinations of the disclosed elements. Thus if one embodiment comprises elements A, B, and C, and a second embodiment comprises elements B and D, then the inventive subject matter is also considered to include other remaining combinations of A, B, C, or D, even if not explicitly disclosed.

[0025] This discussion describes a method of establishing an ad hoc networking system where each system component or participant brings a unique feature or 'skill' that can be adopted by other components or participants that have the ability to do so. Though applicable in a variety of use cases, a system of toys is defined to adequately describe this method. The following discussion presents the inventive subject matter within the context of one or more interactive toys capable of exchanging skills.

[0026] The following definitions of terms are provided to help clarify the concepts presented below.

[0027] A "component" is considered a physical entity containing features that can be combined with other components to form a collective whole. Example components include a toy, a device, an interface, or other physical element. The terms "component" and "toy" are often used interchangeably.

[0028] A "participant" is a component within a system configured to engage other components with respect to an activity. Dolls that engage each other in a shared song would be considered participants while a nearby toy vehicle that does not engage in the singing activities would not be considered a participant.

[0029] A "skill" is considered to be a functionality set associated with a component where the functionality set configures or programs the component to perform one or more specified tasks. The functionality sets are considered "skills" because they can be learned or even taught. A skill can be represented by one or more instructions stored on a non-transitory computer readable medium and cause a component's processor to execute steps related to the specified tasks through exhibiting or manifesting the skills. Skills can be packaged as individual modules, applets, apps, applications, libraries, scripts, or other types of functionality. Example skills can include dancing, singing, recognizing objects (e.g., faces, other toys, etc.), moving, talking, driving, telling stories, or other activities.

[0030] The disclosed toys can have different types of skills including "native skills" or "acquired skills". A native skill is considered a skill that is a priori deployed within the toy, possibly during manufacturing. Native skills can be considered a permanently resident feature of a component. An acquired skill is considered a skill that has been adopted in the field, typically from another toy that has a corresponding native skill. An acquired skill can also be considered a "non-native skill" when the acquire skill was not a priori resident.

[0031] A "context" can be considered a circumstance or situation in which a component exists. In some embodiments, a context can be represented as a signature of sensor data or other environmental data (e.g., position, orientation, location, user preferences, etc.) where the context triggers or governs exhibition of skills (e.g. dancing the Macarena, singing a song, moving a weapon, mimicking a person, exhibiting a power, etc.).

[0032] Figure 1 illustrates system 100 where toys 11 OA and HOB can exchange skills. Toy 110A and toy HOB are collectively referred to as toys 110. Although two toys 110 are illustrated, one should appreciate that system 100 can include any number of apparatus.

[0033] In system 100, toy 11 OA has several features that govern its participation within system 100. Toy 110A comprises memory 120 A representing a computer readable non-transitory memory. Memory 120A can include one or more types of memory include flash, RAM, ROM, a hard or solid state drive, or other forms of storage. Memory 120A stores one or more software instructions that execute on processor 130A to give rise to the exhibited skills of toy 110A. Suitable processors include ARM, ColdFire, 80x86, 68x00, FPGAs, DSPs, or other types of processors. Toy 110A also includes one or more of device interface 112A configured or programmed to communicatively couple with other elements within system 100, toy HOB or server 150 over network 155 for example. In more preferred embodiments, device interface 112A comprises a wireless interface so that toy 110A is not burdened by additional wires.

Example wireless interfaces include an audio interface, a wireless USB interface, IrDA, an 802.11 interface, a Bluetooth interface, WiFi-Direct, a Zigbee interface, or other type of interface. The wireless interface can be configured to operate under low power in view that a long range wireless connection might not be necessary when toys 110 are in close proximity. Device interface 112A could comprise a wired interface possibly including USB, RS-232, Ethernet, or other types of wired interfaces. One should appreciate that toys 110 can also comprises other supporting hardware that provided for exhibiting skills, possibly including actuators, sensors, servos, batteries, motors, speakers, microphones, lights, piezoelectric elements, or other features not shown in Figure 1, but within the scope of one skilled it the art.

[0034] Memory 120 A is enlarged to illustrate various elements stored in the memory. Memory 120A can store one or more of skills 125, preferably managed by skill manager 140A. Skills 125 can include one or more native skills 127, or one or more non-native skills 129 representing skills that can be acquired via device interface 112A. Each of the types of skills 125 can be stored as software instruction packages in memory 120A using one or more various techniques. In some embodiments, skills 125 can represent libraries. In other embodiments, skills 125 could be stored as files in a file system. Each of skills 125 can also include one or more sets of requirements that should be satisfied before the skill can be exhibited. The requirements represent the features of toy 110A that are necessary or desirable for the skill to be exhibited. For example, a "signing" skill would require a speaker to be present in toy 110A. Further, skill 125 can interrelate to each other skill via a dependency hierarchy where a first skill might require other predicated skills to be present in order for the first skill to be properly exhibited as discussed in more detail below. [0035] Memory 120A can also store capability set 122 representing the features available within toy 110A that can support skills 125. Capability set 122 can be considered a set of functional primitives that toy 110A has with respect to exhibiting skills. Thus, capability set 122 represents the abilities of the apparatus. Capability set 122 can be represented as a vector of features where each member of the vector corresponds to a feature. The members of the vector might indicate presence of a speaker, a servo, a skill, or other type of parameter. If the member of the vector has no value, such a feature might not be present. The value of a vector member can indicate the nature of range of capability for the corresponding feature. For example, the member of the vector indicating presence of a speaker can store various speaker parameter values (e.g., volume range, play rate, selectable voices, etc.). If no values for the speaker are present, then toy 110A can be considered to lack the speaker. In other embodiments, capability set 122 can comprise an N-Tuple of features that include a compilation of attribute- value parameters. An attribute can include a name, preferably a normalized name, and the value can be a listing of one or more values outlining the nature of the attribute. Referring back to the speaker example, a capability set 122 might include an attribute- value pair of the form: "Speaker": { "volume" : 0 - 10 ; "power" : 5mW } indicating that the speaker is present because of the existence of the speaker attribute and the speaker has a volume range of 0 to 10 and a power consumption of 5 milliwatts. Note that a value can itself be a listing of attribute-value pairs. Capabilities set 122 can be compiled in an XML or other serialized format as desired. As skills 125 are managed via skill manager 140 A, skill manager 140 A can consult capability set 122 to determine if toy 11 OA has sufficient capability to exhibit one or more of skills 125.

[0036] Toy 110A a priori lacks non-native skill 129 upon deployment in the field, as shipped to a child for example. Toy 110A can acquire one or more of non-native skills 129 over network 115, preferably wirelessly, from toy HOB where non-native skill 129 could actually be a native skill of toy HOB. Toy 110A and HOB can exchange skills as long as the two are capable of communicating with each other, preferably through a wireless connection (e.g., audio data exchange, image data exchange, Bluetooth, wireless USB, 802.11, etc.), or as context permits.

[0037] Each non-native skill 129 can include capability requirements as referenced above or management rules governing its management. The skill's management rules can include criteria outlining the skill's contextual relevance, digital rights management, deployment conditions (e.g., amount of memory required, time to retain a skill, conditions for changing skill parameters, etc.), or other features. Skill manager 140A further enforces each skills management rules with respect to the context or other skills. As the context of toy 110A changes, skill manager 140A can observe the context of toy 110A and take action as triggered by each of skills 125 rules. In some embodiments, skill manager 140A can operate as an event listener that registeres one or more event handlers that are triggered based on environmental context data. As environmental data (e.g., skill data, sensor data, user inputs, etc.) flows through toy 110A, skill manager 140A can compare data values within the environmental data to each event handler's trigger criteria. When the trigger criteria is satisfied by the environment data or other contextual data, skill manager 140 A can cause execution of the corresponding event handler, which could be exhibition of one or more of skill 125.

[0038] Skill acquisition can be considered transient in nature with respect to one or more activities. As toys 110 engage in one or more activities, they can exhibit one or more of the skills 125 individually or collectively, possibly based on context. Should the context change, acquired non-native skill 129 can be deactivated or deleted from memory 120A. For example, removal of a participant can effectively remove associated skills from the system. Thus, as the context of toy 110A changes, skill manager 140 A can take appropriate action as governed by the nature of non-native skills 129 with respect to the context.

[0039] Skill manager 140A can be considered a dynamic agent capable of managing each of skills 125 collectively or independently. For example, the acquired non-native skills 129 of toy 110A can be altered or even removed from the apparatus. The presence or availability of a certain skills does not necessarily imply its execution. External stimulus or instructions can be required to execute a certain skill in a certain way or within a context. Toy 110A that acquires non-native skill 129 can act independently of the provider (i.e., toy HOB) of that skill so long as the right context is triggered. The trigger criteria may be external stimulus or a pre-set routine that requires the acquiring toy 110A to fetch the context from a given source.

[0040] The trigger criteria for acquiring or exhibiting a skill 125 can depend on the toy state (e.g., internal state, external state, environment, etc.), on a state of the device from which the skill is acquired, or other data. For example, an apparatus operating as toy 110A can include one or more sensors (e.g., accelerometers, microphones, cameras, etc.) that acquire data. The acquired data can then be used to determine the toy's state. When the acquired data causes satisfaction of the trigger criteria, the toy then can execute instructions to acquire or exhibit a skill. In some embodiments, the apparatus or toys 110 can communicatively couple with one or more servers 150, possibly Internet-based servers accessible over network 155 (e.g., the Internet, WAN, VPN, etc.). The servers can provide more complex interactions, skill acquisitions, stories, episodes, or even virtual world interactions.

[0041] As an example, imagine the story of Snow White and the Seven Dwarfs enacted or enhanced by physical toys 110. Suppose that, on its own, a Snow White toy can dance (a native skill 127 or functionality) but not talk (a non-native skill 129 or functionality). On its own, the Prince toy can talk (a native skill 127) but not dance (a non-native skill 129). However, if the two are brought in presence of each other and paired, possibly via a wireless connection, both can exchange skills with each other and enabled them both to exhibit the dancing and talking skills at the same time. Because both could dance and talk does not mean that either will. That depends upon what instructions each one of them receives, possibly from an external agent or other contextual information. An external agent could, for example, be a user or a program located in the cloud possibly operating as a story server 150 over network 155. One should appreciate that the skills do not have be a priori resident within each toy. Rather, each toy acquires the non- native skill 129 from other toys 110 or other suitably skill-equipped computing devices (e.g., games, kiosks, servers, computers, etc.).

[0042] An external stimulus can be used to initiate exhibition of the skills 125. Each of toys 110 can present different renditions of the skills based on the inputs received. For example, the two toys 110 could carry on a conversation with each other or a conversation the user. Another example is two or more toys 110 can dance as a pair with complimentary steps required for a dance. One could construct at set of skills 125 that form a complex choreography among multiple toys 110. Another example of external stimulus could be where the Snow White doll is instructed to sing because she now has acquired speech capability, assuming the doll has a capability set 122 that includes emitting audio signals, and certain songs would automatically trigger her animal friend toys to dance. These animal friend toys may have acquired the dance skill from Snow White or may have that skill natively. Although the above discussion is with respect to dancing, it should be appreciated that a dancing skill could be a simple form of movement rather than a fully articulated movement typically exhibited by humans. Thus, a dance skill could be as simple as instructing toy 110A to move circularly, perhaps on wheels, around toy HOB.

[0043] Further to the example of Snow White toys, consider a scenario where Sneezy, the Dwarf, is added to the discoverable range of Snow White and the Prince. For example, Snow White (i.e., toy 110A) can employ a service discovery protocol (SDP) that periodically pings or queries other nearby devices to determine presence of other toys 110 or their capabilities. Within an embodiment based on Bluetooth, each of toys 110 can respond with a suitably adapted toy- based Bluetooth profile. In response to the discovery and acquisition of skills, Snow White also acquires the ability to sneeze in addition to the acquired ability to talk from the Prince and Sneezy could acquire the ability to talk from the Prince.

[0044] The ability to acquire various skills would depend upon the underlying hardware configurations of each toy 110 as dictated by capability set 122. For example, if the hardware does not support dancing as defined according to capability set 122, then dancing skill should not be acquired or could not be exhibited if acquired. Thus, one aspect of the inventive subject matter includes each apparatus or toy 110 storing a capability set 122 within memory 120A of the toy 11 OA.

[0045] Capability set 122 can include attributes or features available for use within skill 125. Example, capability sets 122 can include capability attributes indicative of computational parameters (e.g., memory size, sensors, processor power or bandwidth, etc.), mechanical parameters (e.g., movements, actuators or service, tolerances, number of uses, time used, metrics, MTBF, etc.), audio parameters (e.g., volume control, audio player features, speakers, speaker positions, MIDI features, etc.), visual parameters (e.g., video player features, display attributes, light emitters, cameras, etc.), digital rights, content parameters (e.g., songs, dances, images, AI algorithms, etc.), or other type of parameters.

[0046] As toys 110 change context, perhaps move into and out of wireless range of other toys 110, non-native skills 129 can change state. In some embodiments, preferably non-native skills 129 might be deactivated while remaining resident in memory 120 A if toy 110A is no longer within a context where non-native skills 129 should remain acquired. In other embodiments, non-native skills 129 could be deleted from memory 120 A upon exiting the relevant context. Referring back to the example of Snow White's non-native skill to speak, the non-native speaking skill could be transient and only available as long as the native skill provider toy (i.e., the Prince) is present or within discoverable range of Snow White. Thus, the skills can be transient based on a context that could depend on connectivity.

[0047] One aspect of the inventive subject matter is considered to include skill manager 140A monitoring a context, especially in circumstances with intermittent connectivity, to ensure an acquired non-native skill 129 can be exhibited in a manner that is consistent with an end user's expectations. Thus, the toys 110 can conduct a handshake protocol or heart beat protocol to test connectivity before non-native skill 129 is acquired or exhibited. Further, a context can be maintained possibly based on a heartbeat protocol; pushed or polled, to ensure a connection is still present. Still further, one should appreciate in a mesh network of apparatus or toys 110, a heartbeat can be sent through a mesh of connections among the toys 110. Additionally, the rules under which skill manager 140 A determine when non-native skills 129 should be acquired or exhibited can depend on time, proximity, number of uses, user preferences, hierarchical dependency of skills, collectible rarity policies, proximities, or other parameters.

[0048] An acquired non-native skill 129 can be disabled temporarily by the toy 110A even though the context of toy 110A indicates that the skill remains a valid available acquired skill. For example assume Sneezy, Snow White, and the Prince are all present and connected. Thus Snow White can speak (acquired non-native skill), sneeze (acquired non-native skill), and dance (skill native to Snow White). However, Snow White may not have sufficient computation capability to sneeze and speak at the same time nor would it be necessary. Hence, depending on external input, context, or other requirements, Snow White could acquire sneezing skill from Sneezy and, when she stops or is told to do so, can remove the sneezing skill and acquire the speaking skill from the Prince. Such an approach might be advantageous when a limited amount of RAM or other memory is available for storing executable instructions or data representing the acquired skill. The inventive subject matter is considered to include swapping available skills into or out of memory, or other skill management, based on context. In more preferred embodiments, toy 110A leverages skill manager 140A, which is configured to manage skills, store capability sets, acquire non-native skills or functionalities, cause exhibition of the skills, delete skills, modify skills, swap skills, or otherwise handle skills for the toy.

[0049] In some embodiments having multiple toys 110, one toy 110A can take on group or system skill management responsibilities across the collective of toys 110. Once relevant toys 110 establish a skill network (e.g., a communication network among the toys), toy 110A can be elected or otherwise configured to be the global skill manager. The global skill manager can communicate skill information or coordinate instructions to all members in the network. In the Snow White example, she might be designated the global skill manager when one or more of the dwarf toys are present. In such a case, the dwarfs could acquire the dance skills from Snow White and she can instruct all the dwarfs to initiate their dance. When the Prince enters the network, he might take over as a global skill manager and provide additional instructions or skill commands among the toys.

[0050] A network of toys can be established in response to a one or more discovery protocols messages. Each toy 110A can respond with a name or other identifier indicating the toy's identity, possibly with respect to a toy namespace. Toys belonging to a common namespace group can be joined into the network. For example, Snow White and the Seven Dwarves could individually have normalized identifiers of the form: "SWatSD . snow_white",

"SWatSD .doc"; "SWatSD . sneezy", and so on. The name prefix "SWatSD" indicates a group to which the toys belong and indicates that such toys can be joined within a skill network. In the example presented, the toy namespace is constructed to be human readable. Still, one should appreciate that toy identifiers can take on different forms including binary bit fields, numeric tokens, hashes, or other types of identifiers. The skill network can be arranged according to various topology including a star topology, mesh topology, peer-to-peer topology, or other topologies. Scenarios with multiple many toys (e.g., more than five), a star topology can be used to reduce communication overhead. The hub of the star can be the toy elected as a global manager or toy having the greatest message routing capabilities.

[0051] Toys 110 are considered to represent distributed computational elements capable of expanding or reducing a system wide feature set as new hardware components (e.g., toys 110) are added to or removed from the ecosystem. This synergistic addition of features enriches the overall system and allows for component interactions of increasing complexity. Furthermore, the complexity of interaction amongst the participanting components increases with an increasing set of components due to various components bringing native skills and the ability to acquire skills from others. Still further, the collective group of toys 110 participating together as a whole allow for increased system resources (e.g., memory, processors, storage, etc.), which can be leveraged for even greater skills that would not necessarily fit within the resource constraints of a single toy 110A.

[0052] An individual component or participant in the aforementioned system could have the following elements: a hardware to support a set of native skills 127 along with a capability set 122, hardware to support a set of specified acquired non native skills 129, a wireless interface to communicate with other components of the system, an optional secure wireless connection operating as device interface 112A to communicate with the cloud (e.g., PaaS, SaaS, IaaS, etc.) or other separate devices, at least one sensor (e.g., microphone, camera, piezoelectric sensor, etc.), a native skill context or ability to obtain such a context from authorized external sources such as a server of the Internet, a processor to execute native skills 127 and acquired non-native skills 129, a host virtual machine, a host operating system (OS), or other elements.

[0053] In some embodiments having sufficient processor or memory resources, toy 110A can host a virtual machine through which it exhibits one or more of skills 125. Such an approach is considered advantageous because the virtual machine isolates skill management and exhibition from the processes executing on the hardware of toy 110. Further, providing access to a virtual machine environment within toy 110A allows toy 110B or server 150 to control functionality of acquired non-native skills 129, especially in an environment where digital rights management can be considered important. Consider a scenario where Snow White acquires the skill to sing a non-native song, possibly acquired via the Prince or server 150. The non-native song could have numerous or varied rights associated with it, possibly including restrictions on copying to a digital memory. In such a scenario, Snow White's skill manager 140A could instantiate a virtual machine that remains under control of the source providing the non-native song where the virtual machine ensures that the song's skill information remains under control of the source. When the non-native song is no longer contextually relevant, skill manager 140 A or a global skill manager can cause deconstruction of the virtual machine, thus eliminating the song from memory. Alternatively, the source (e.g., sever 150, toy HOB, etc.) of the non-native song could instruct the virtual machine to clean its memory and then to de-instantiate itself.

[0054] One should appreciate that instantiating a virtual machine could depend on the nature of skills 125, especially on acquired non-native skills 129 where the skill attributes influence the parameters of the virtual machine. The skill attributes could indicate which toy functions should be present in the virtual machine to support the skill, cryptographic requirements for exhibiting the skills, a skill's memory requirements, restrictions or boundary conditions on skill exhibition (e.g., number of exhibitions, time shifting, amount of simulated damage to take, etc.), or other attributes.

[0055] Virtual machines also allow for additional features within toy 11 OA. Example capabilities that can be supported via virtual machines include accepting external instruction or inputs (e.g., including user interface method), executing native skills 127 upon instruction with specified context or otherwise, sending a skill 125 from a native portion of the memory to another, authorizing a capable participant, sending a native context to another authorized and capable participant, acquiring relevant external skills 125 (e.g., non-native skills 129) from an authorized participant, acquiring relevant external context from authorized external sources (such as a participant or the Internet), or executing acquired skills upon instruction with specified context or otherwise. Virtual machines are considered useful because more than one type of virtual machine can be present on an OS at a time allowing for many different types of encoded skills 125 to be exhibited. Additionally, virtual machines can provide for secured execution of skill-related instructions. For example, skills can be encoded based on Java, .NET, Python, or other languages (e.g., scripts, byte-codes, etc.) that leverage virtual machines for execution. Such an approach is useful when developing new skills or providing a skill development environment where users, or other developers, can create new skills in their own preferred language.

[0056] Toy 110A can include a host operating system capable of managing hardware resources, establishing wireless network with other participants, communication stack management, establishing wireless connection to the cloud, handling housekeeping (e.g., battery charging, power usage, etc.), discovering another authorized participant and connecting to it after appropriate authentication or discovering the capabilities of any authorized and connected participant.

[0057] Toy 110A can include one or more user interface options, which can depend on the nature of toy 110A or its intended use cases. User interactions can be processed via one or more algorithms to enhance the user's experience with toy 110A. Example algorithms can include speech recognition (e.g., automatic speech recognition, hidden Markov models, etc.), face recognition, gesture recognition, object recognition (e.g., SIFT, FAST, BRISK, etc.), or other algorithms. Further, toy 110A could interact with one or more mobile devices (e.g., cell phone, tablets, etc.) via device interface 112A to exchange information. For example, a cell phone could communicate skill-based instructions to toy 110A via a Bluetooth connection over device interface 112A where the skill-based instructions control aspects of skills 125. An optional feature could also include forwarding user input (e.g., commands, preferences, etc.) or other data received via device interface 112A to other toys 110 in a network as discussed previously.

[0058] In some embodiments, toy 110A can include one or more native skills 127 that allows toy 110A to recognize other toys 110 through image-based recognition modules. For example, Snow White can include an image sensor (e.g., a CCD-based digital camera) that captures an image of the Prince toy. Snow White's image recognition module processes the image of the Prince and recognizes the Prince as an affiliated toy based on the image characteristics of the Prince. In response, Snow White can then take one or more actions: exhibiting an associated skill (e.g., speaking, dancing, singing, etc.), acquiring non-native skill 129, instantiating a virtual machine, or other actions. Example techniques that can be suitably adapted for use with the inventive subject matter includes the techniques disclosed in U.S. patents 7,016,532; 7,477,780; 7,680,324; 7,565,008; 7,564,469, and 8,130,242.

[0059] In view that toys 110 can operate collectively, one should appreciate that toys 110 can comprise networking infrastructure as well. In some embodiments, toys 110 are configured to establish an ad-hoc skills network (e.g., Zigbee, Bluetooth, Wi-Fi Direct, DLNA, etc.) where toys 110 can exchange skills via the established network or mesh. Example operating systems capable of supporting ad-hoc networking communication stacks include embedded versions of Linux, Android OS, iOS, Vx Works, QNX, SMX, or other operating systems. [0060] To continue with the toy example, an entire marketing concept could be tied to a storyline that expands and adapts over time, and that includes the user in the system. Over time toy 110A can adapt to user preferences as the storyline unfolds. Further, such toys 110 can have one or more collectable aspects where toys 110 are produced according to a rarity policy. For example, Snow White might be a common toy while the Seven Dwarves are uncommon, and the Prince might be a rare toy. Still further, toys 110 can have latent skills that only become manifest when multiple toys are in proximity to each other. For example, when Snow White is present with all Seven Dwarves, they can unlock as special song or access a feature on an on-line world. The song might be disaggregated, even encrypted, across all toys 110 and can only be made available, or decrypted, when all toys are present. Thus, each toy can include a key or just a portion of a key that enable or unlock a skill.

[0061] In some embodiments, an on-line server 150 can operate as story or skill server. Server 150 can be configured or programmed to store one or more stories, possibly in the form of episodes. For example, during episode 1, a Snow White toy can play out an initial scene with an evil queen toy. A week later, episode 2 can be released and might include interactions where the evil queen toy can play out a scene with a huntsmen toy. Thus the toys can be configured or programmed to play out episodes in the real-world as if they are in a miniature stage play. In such embodiments, the story server 150 can monitor status of the toy's context to determine status of a story playback. If the play is interrupted, the story server can instruct the toys to pick up where they left off. Alternatively, users can interact with the story server to "time shift" the play (e.g., rewind, fast forward, etc.), bookmark locations in the play, or otherwise control presentation of the play. The inventive subject matter is considered to include episodic presentation of information via toys, especially through use of native and acquired non-native functionality.

[0062] In similar vein, a group of toys 110 can form a cohesive group or crowd. Consider an example where toys 110 represent musical instruments or even musicians; perhaps a collection of action figures could represent a music band. When toys 110 are placed in proximity to each other, they can exchange skills to give rise to a musical performance. In some embodiments, the band might include an orchestra that plays music when together or when unlocked by a conductor. [0063] Yet another example of coordinating a group or crowd of toys 110 could include toys 110 behaving as an audience for the user. As the end user, a child for example, interacts with toys 110, they can collectively operate as an audience. When the child performs one or more recognized actions, the audience can cheer or jeer as required by the acquired skill sets.

Similarly, toys could operate as a troop of soldiers, where the troop gains abilities when more senior/experience toys are present (e.g., leaders, officers, etc.).

[0064] A marketing approach of the example system could be linked to selling individual toy products (e.g., dolls, vehicles, weapons, planes, building blocks, etc.) or expanding the market by having each sold doll acquire skills from other dolls in order to expand the storyline and its capabilities. Each doll would represent a small story on its own, but the story would grow as other dolls join the system. For example, the Snow White toy might speak to describe her opinion of the evil queen. When the evil queen toy is present, she could then tell "her side" of the story.

[0065] Multiple versions of the same product type (e.g., different version of toy 110A) may have different personalities. For example, Snow White version 2 may have personality enhancement (e.g., an exhibited new version of native skill 127) over version 1. The personality enhancement might include shifting Snow White's personality (e.g., sad, tired, lonely, etc.) from her time in the castle with the evil queen to a personality (e.g., content, enthusiastic, etc.) at a time when she is with the dwarves, or even on to a personality (e.g., empowered, stately, etc.) at the time when she is with the Prince. Thus, the exhibition or manifestation of skills 125 can vary with time or context.

[0066] Skill exchange among toys 110 can occur through one or more techniques. In some embodiments, a toy can publish its capability set 122 indicating the ability of toy 110A to support one or more of skills 125, especially non-native skills 129. In response, a second toy 110B can compare capability set 122 with the second toy's resident or available skills. One should note that the second toy's available skills do not necessarily have to be native skills for the second toy. If there are resident or available skills, possibly native skills that can leverage one or more capabilities in capability set 122 of toy 110A, then second toy HOB can offer the skills for acquisition. It is also contemplated that toys 110 could simply publish a list of available skills for acquisition. In which case, a receiving toy 110A can compare its capability set 122 against the published skills requirements. If there is a match, it can request one or more of the published skills. Regardless of how the skill exchange takes place, one should appreciate that toy 110A can discover available skills from other toys. Thus, a toy can send out or receive a skill discovery message, which can then give rise to the skill exchange.

[0067] Skills 125 can build on each other in a manner where acquired non-native skills 129 can provide infrastructure support (e.g., libraries, APIs, modules, etc.). The acquired non-native skills 129 can change a capability set 122 of a toy 110A, thereby enabling acquisition of even more complex skills. Further, in a group environment, skills among toys 110 can be shared to allow the group as a whole to achieve one or more goals, possibly including an episode or dance as previously discussed.

[0068] The disclosed apparatus has been presented mainly within the context of a toy doll; that is Snow White. One should appreciate that the toy could take on many different forms. Example toys could include vehicles (e.g., Cars®), building blocks, fairies (e.g., Tinkerbell®), animals, stuff animals, action figures, robots, space ships, or other types of toys. In view that the toys can take on many different shapes, one should appreciate that the disclosed system can comprises a homogenous mix of toys (e.g., all dolls) or a heterogeneous mix of toys (e.g., dolls and vehicles). Consider a scenario where a Woody® doll is able to speak and is paired with a car. Woody can acquire a "driving" skill from the car in response to being placed within the car. Although the car could operate on its own or under control of a user, Woody might make comments or take actions that augment a driving experience.

[0069] The disclosed toys or apparatus can also complement other types of entertainment. For example, a computer-based role playing game could interact with toy 110A. As characters interact in the game world, possibly via server 150, toy 110A can respond or interact with the game world. Thus, one can consider a virtual character or an augmented reality character as a possible source for a non-native skill 129. Further, toy 110A can "watch" or "listen" to television and exhibit skills 125 in response to recognized on-screen or rendered content (e.g., television programming, rendered graphics, audio signals, etc.). [0070] Toys 110 can also operate as a platform for contests, possibly even scavenger hunts. As toy 110A acquires non-native skills 129, skills 129 might unlock contest elements or items in the scavenger hunts. As a contestant has their toys 110 interact with other contestant's toys, a next stage in the contest might be revealed. The first person to unlock or find all the contests requirements can then win a prize. Further, as skills are unlocked or acquired the toy could win virtual trophies that can be displayed on a community server 150.

[0071] In embodiments where toy 110A comprises time-varying skills 125, such skills can improve with use to emulate toy 110A practicing one or more of skills 125. For example, Snow White might start with native skill 127 that exhibits singing. However, initially the signing skill might be exhibited poorly or have low quality. Alternatively Snow White might not know all the words to the song. As Snow White exhibits or manifests the signing skill over time, her quality of singing could improve or she might remember more words of the song. Thus, skills 125 can operate as a function of a number of uses or other skill use metrics. Additional skill use metrics could include duration of use, number of uses with others, number of participants in a collective activities, or other types skill uses.

[0072] It should be apparent to those skilled in the art that many more modifications and example systems and applications, besides those already described, are possible without departing from the inventive concepts herein. The inventive subject matter, therefore, is not to be restricted except in the scope of the appended claims. Moreover, in interpreting both the specification and the claims, all terms should be interpreted in the broadest possible manner consistent with the context. In particular, the terms "comprises" and "comprising" should be interpreted as referring to elements, components, or steps in a non-exclusive manner, indicating that the referenced elements, components, or steps may be present, or utilized, or combined with other elements, components, or steps that are not expressly referenced. Where the specification claims refers to at least one of something selected from the group consisting of A, B, C .... and N, the text should be interpreted as requiring only one element from the group, not A plus N, or B plus N, etc.