GB2555112A - Data distribution network - Google Patents
Data distribution network Download PDFInfo
- Publication number
- GB2555112A GB2555112A GB1617618.2A GB201617618A GB2555112A GB 2555112 A GB2555112 A GB 2555112A GB 201617618 A GB201617618 A GB 201617618A GB 2555112 A GB2555112 A GB 2555112A
- Authority
- GB
- United Kingdom
- Prior art keywords
- group
- location
- display
- processing device
- processing devices
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/14—Digital output to display device ; Cooperation and interconnection of the display device with other functional units
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0241—Advertisements
- G06Q30/0251—Targeted advertisements
- G06Q30/0252—Targeted advertisements based on events or environment, e.g. weather or festivals
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1087—Peer-to-peer [P2P] networks using cross-functional networking aspects
- H04L67/1089—Hierarchical topologies
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/52—Network services specially adapted for the location of the user terminal
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/02—Services making use of location information
- H04W4/021—Services related to particular areas, e.g. point of interest [POI] services, venue services or geofences
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/06—Selective distribution of broadcast services, e.g. multimedia broadcast multicast service [MBMS]; Services to user groups; One-way selective calling services
- H04W4/08—User group management
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/14—Digital output to display device ; Cooperation and interconnection of the display device with other functional units
- G06F3/1423—Digital output to display device ; Cooperation and interconnection of the display device with other functional units controlling a plurality of local displays, e.g. CRT and flat panel display
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/14—Digital output to display device ; Cooperation and interconnection of the display device with other functional units
- G06F3/1454—Digital output to display device ; Cooperation and interconnection of the display device with other functional units involving copying of the display data of a local workstation or window to a remote workstation or window so that an actual copy of the data is displayed simultaneously on two or more displays, e.g. teledisplay
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2350/00—Solving problems of bandwidth in display systems
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2354/00—Aspects of interface with display user
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2370/00—Aspects of data communication
- G09G2370/02—Networking aspects
- G09G2370/025—LAN communication management
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/16—Arrangements for providing special services to substations
- H04L12/18—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
- H04L12/1845—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast broadcast or multicast in a specific location, e.g. geocast
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Business, Economics & Management (AREA)
- Strategic Management (AREA)
- Finance (AREA)
- Theoretical Computer Science (AREA)
- Development Economics (AREA)
- Accounting & Taxation (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Environmental & Geological Engineering (AREA)
- Computing Systems (AREA)
- Entrepreneurship & Innovation (AREA)
- Game Theory and Decision Science (AREA)
- Economics (AREA)
- Marketing (AREA)
- General Business, Economics & Management (AREA)
- Multimedia (AREA)
- General Engineering & Computer Science (AREA)
- Human Computer Interaction (AREA)
- Information Transfer Between Computers (AREA)
Abstract
A first processing device 110, 111, 112 for processing data for a first location receives input data indicative of conditions associated with a first location, and the first processing device is associated with a group of processing devices from a plurality of groups in a network, wherein another processing device from the group sends output data associated with the conditions to the first device. The processing devices may be display controllers for digital signage, and the output data may be media content such as advertisements. The first device may forward on the output data, being arranged in a hierarchical peer-to-peer single tree structure, the output data originating from a centralised server 140. The conditions may be environmental conditions such as a demographic representation of people present, weather conditions, or a status of facilities or number of vehicles nearby. Each device in a group may have similar conditions that meet criteria. The input data may be received from a sensor 131 or database. The P2P topology may be arranged based connection characteristics between devices such as number of hops to reach the server, data rate, and round trip ping time. Each device may be in more than one group. Another embodiment describes traffic lights.
Description
(71) Applicant(s):
Boldmind Ltd
HG24, Canary Wharf, London, E14 5AB, United Kingdom
1617618.2 (51) |NTCL:
H04L 29/08 (2006.01)
18.10.2016
G06Q 30/02 (2012.01) (56) Documents Cited:
US 20140304072 A1 US 20110071888 A1 US 20070011051 A1 KR 1020160053780 KR 1020140031528
US 20140016507 A1 US 20110010732 A1 US 20030004796 A1 (72) Inventor(s):
Nikodem Sebastian Lacki (58) Field of Search:
INT CL G06Q, H04L Other: WPI, EPODOC, TXTA (74) Agent and/or Address for Service:
Kilburn & Strode LLP
Lacon London, 84 Theobalds Road, London, Greater London, WC1X 8NL, United Kingdom (54) Title of the Invention: Data distribution network
Abstract Title: Digital signage peer-to-peer advert distribution network for delivering targeting adverts based on conditions at display location (57) A first processing device 110, 111, 112 for processing data for a first location receives input data indicative of conditions associated with a first location, and the first processing device is associated with a group of processing devices from a plurality of groups in a network, wherein another processing device from the group sends output data associated with the conditions to the first device. The processing devices may be display controllers for digital signage, and the output data may be media content such as advertisements. The first device may forward on the output data, being arranged in a hierarchical peer-to-peer single tree structure, the output data originating from a centralised server 140. The conditions may be environmental conditions such as a demographic representation of people present, weather conditions, or a status of facilities or number of vehicles nearby. Each device in a group may have similar conditions that meet criteria. The input data may be received from a sensor 131 or database. The P2P topology may be arranged based connection characteristics between devices such as number of hops to reach the server, data rate, and round trip ping time. Each device may be in more than one group. Another embodiment describes traffic lights.
1/5
3'3».A3Q vs
CAM £fi ft
WUO' CoKiWAiei UO teNRuxoa bf
Ν£ΤΚ&,·ξ!(;
iCo
I n6 | { ΓβΜΙΛ^'^ΤίοΝ | ' —| fisi'iSi;?Ac£ I ί*?**·.a» rs5YweTjr! M U ' t>&Tft?AS£ tU £31 \
(i-^TeNT C-R.i*i&\vi} 3-U btsptAy y^wj /2-0 hi
3Ϊ0
-fyi <L>o
3%'X.
Jr cn£«M J
3/5
Al ί'
AQyVi/ y&veo a iXopLc^ avxtfoUU'' £
XjdUf ***/·% ufc
AiM; .^p £/ ζθΛ€4ν cAfetXj ef ΙλΛΛμΛ* (λΐίί|?1&^ ^^VciXs^j
4/5
ίύο fisvevL \ 'V
I j 1 )¼ >1
W’iAf J (\ o'WvA Co^W-^UJcA, 1 ,. 1
S Vo
Jl'Uj} CANTeNi i 1¾ »Wu IVUNp j,
Sv S /YiAmA-AO fc^'VSN’· OH ‘ *TO
-4Ψ 1
C’H6<.K >.chV'.:U. < S£>& | £&wsr
I ,....,, ,· _4
CVAvnze Qfunp • v\ft'&r€h cz ss’7 h '.q.S iJ
5/5
Si
UWk DATA
Si'L-
Vere^Ajwiff wU^TjyTV'oNY
WtAy ScR &
P)pVLYi NR <ίυ ρ£ί&Λ Tfc ΊΉ1£ tCUiU t&ys
S (-.,1(, i .IGjMjWCr ή %A j€'0 oU
Intellectual
Property
Office
Application No. GB1617618.2
RTM
Date :17 March 2017
The following terms are registered trade marks and should be read as such wherever they occur in this document:
WiFi (Page 7)
Bluetooth (Page 7)
Intellectual Property Office is an operating name of the Patent Office www.gov.uk/ipo
Data distribution network
Field
This disclosure relates to distributing data throughout a network. More specifically, but not exclusively, this disclosure relates to distributing video content throughout a network of display devices in an efficient manner that minimises bandwidth usage for transmitting the content throughout the network. Different arrangements are disclosed in which the data distributed is data other than video content and the devices within the network are devices other than display devices.
Background
Following rapid developments in display technology over recent decades, the prevalence of digital signage in and around public spaces has increased dramatically. These can be found in a wide variety of locations such as open public spaces, transportation systems, museums, stadiums, retail stores, hotels, restaurants, offices, etc. In each of these locations, digital signage may have a variety of purposes including advertising, infographics, interactive learning, displaying maps, or displaying any kind of message to be conveyed to the people who are in the vicinity of the display.
In order for the owner of the digital signage to control what is shown through the display, there are a number of possible techniques used which can determine the content of the display. A standard digital signage system comprises a form of display and a processing device which directs what content is displayed. Content is generally delivered by copying content files from an external source such as a local hard drive, or downloaded over the internet or a local network.
In some systems, the processing devices directing the displays can be centrally controlled across a large network. This is known in the art as a Content Management System (CMS). The CMS allows the end user to remotely manage the network of processing devices which control the content displayed by the digital signage. New content can be added to the network centrally by uploading the content, e.g. via the internet, to the CMS. Each processing device can then receive the relevant content determined by the CMS for it to be displayed. This is typically done via a standard network connection between the processing device and the CMS. In this way the central CMS can control which display content should be directed to which processing device, and ultimately which of the displays present the content.
l
There are however a number of drawbacks to this approach, particularly when there are a larger number of displays to manage. For example, when using the above system for controlling processing devices a prohibitively high bandwidth is required as the number of processing devices and displays increases. The communications between the CMS and each processing device mean that for each additional device brought into the system, there will necessarily be a sacrifice of the available bandwidth to the other devices for communicating with the CMS. Additionally, an increase in the number of processing devices to interact with will generally have an adverse effect on the speed at which the CMS can distribute content or respond to requests unless greater processing capability is enabled. Likewise it may increase strain on the central processing unit to perform the processing to determine which content is sent where.
Another possible problem that may arise is the security of the content that is being sent over the network between processing devices and the CMS, which may not be a secure channel for information exchange. This leaves the system exposed to potential hacking threats.
A further limitation of this type of content distribution network is that it provides little or no flexibility in terms of what content is sent where. This system has little potential to react to a rapid change in requirements for display content.
It would therefore be a substantial improvement over known systems to achieve a method for distributing display content which overcomes some or all of the above disadvantages.
Summary
A method is provided for associating a processing device arranged to process output data for a first location with a group of processing devices. The group of processing devices is one of a plurality of groups in a network comprising a plurality of processing devices. The method comprises receiving input data indicative of one or more conditions associated with a first location. The method further comprises associating, based on the input data, a first processing device of the plurality of processing devices with a first group of processing devices. At least one of the first group of processing devices is arranged to send output data to the first processing device. The output data is associated with the one or more conditions and the output data is for the first location.
The method may further comprise receiving, at the first processing device, the output data via at least one of the processing devices in the first group of processing devices.
A second processing device of the first group of processing devices may receive the output data from a source. The first processing device may receive the output data via the second processing device.
The method may further comprise transmitting, from the first processing device, the output data to one or more of the processing devices of the first group of processing devices.
The method may further comprise executing, at the first processing device, an action based on the output data.
The output data may be media content and the action may be displaying the media content.
The associating may be performed based upon the input data and one or more criteria. The associating of the first processing device with the first group of processing devices may include determining if the one or more conditions associated with the first location meet the one or more criteria associated with the output data.
The one or more conditions associated with the first location may include environmental conditions at the first location. The environmental conditions at the first location may comprise at least one of: a demographic representation of people at the first location, weather conditions at the first location; a status of facilities in a vicinity of the first location; or the number of vehicles in the vicinity of the first location.
Each processing device of the first group of processing devices may be associated with a respective location and each of the respective locations may have one or more identical or similar associated conditions.
Receiving the input data may include obtaining the first data from the first location by a sensor. Receiving the input data may include receiving the input data from a database.
The processing device of the one or more processing devices of the first group that the first processing device receives output data from may be determined based on one or more characteristics of the connection between the first processing device and the one or more processing devices. The characteristic of the connection may be determined by at least one of: the number of processing devices in the first group of processing devices that output data would pass through from a source of the output data to reach the first processing device; a data transfer rate between a source of the output data and the first processing device via the first group of processing devices; and a round trip ping time from the first processing device to a source of the output data and back to the first processing device.
The method may further comprise receiving second input data indicative of one or more further conditions associated with the first location. The method may further comprise associating, based on the second input data, the first processing device with a second group of processing devices. At least one of the second group of processing devices may be arranged to send second output data associated to the first processing device. The second output data may be associated with the one or more second conditions and the second output data may be for the first location.
The method may further comprise disassociating the first processing device from the first group of processing devices.
There is also provided a system comprising one or more processing devices and one or more respective memory components associated with each respective processing device. The one or more memory components storing instructions that are executable by the respective one or more processing devices to perform the method for associating a processing device arranged to process output data for a first location with a group of processing devices.
There is also provided computer readable media comprising instructions that are executable by one or more processing devices to perform the method for associating a processing device arranged to process output data for a first location with a group of processing devices.
Brief Description of the Drawings
Exemplary arrangements of the disclosure shall now be described with reference to the drawings in which:
Figure 1 illustrates components of a system disclosed herein which is suitable for performing a data distribution process disclosed herein;
Figure 2 illustrates a display controller which is part of the system illustrated by figure 1, components of the display controller and its associated connections;
Figure 3 illustrates a server and components thereof which is part of the system illustrated by figure 1;
Figure 4 illustrates a process for a display controller to join a network of display controllers;
Figure 5 illustrates a process of video content distribution to display controllers of a network; and
Figure 6 illustrates a process of re-organising a network of display controllers.
Throughout the description and the drawings, like reference numerals refer to like parts.
Specific Description
In the present disclosure, a network of advertising display controllers is provided where the display controllers can communicate peer-to-peer. Each of the display controllers controls one or more displays which output content. For example, video screens placed throughout a shopping centre are controlled by respective display controllers to show advertising content to pedestrians in the shopping centre.
Adverts can be supplied to the network by a user who decides certain criteria which define how, where and when the content should be shown. For example, a men’s clothing retailer may want to show their latest advertising material to an audience including a high proportion of men. This advertising content is then distributed to the advertising display controllers throughout the network to be shown on the displays. Within the network, display controllers are associated with certain other display controllers according to a number of defined groups. The groups may be defined in a variety of different ways, but one advantageous method is that the groups are defined by the conditions at each of the displays. For example, the displays which are located at places throughout the shopping centre where there are a relatively high proportion of men passing through may be all in a single group. They may then be provided with content specifically applicable to men.
When advertising content is uploaded to the network, such as by a server, and distributed through the network, the content is passed between display controllers within their respective groups. The displays at locations particularly suited to the certain advertising content therefore receive especially relevant advertising content.
The display controllers are also able to assess the surroundings of the displays which they control, such as by a camera mounted at the display. Based on what the camera can sense of the surroundings of the display, the display controller determines the conditions at the display, for example the proportion of men passing the display. The display controller is then able to join a group based on its assessment of its surroundings or, if its surroundings subsequently change, it can change which group it belongs to. Once in a group, it takes part in the distribution of content and receives advertising content particularly suitable for its location and can forward the content on as appropriate. The network is therefore able to dynamically reorganise based on the particular circumstances of each display controller.
Arranging the network of display controllers in the above way has a number of advantages, some of which are discussed below.
Instead of sending the advertising content directly from a server to each display controller individually, the present disclosure describes methods and systems in which the display controllers in each group distribute the provided content among themselves. This significantly reduces the bandwidth required for the content to reach the display controllers in order to show the content. This is because external communication with the server is only required for one display controller per group, the rest can receive it through inter-controller communications. This in turn has the advantage of improving the scalability of the network.
In contrast to previous systems, which rely on a central management system connecting to display controllers individually, the size of the network of advertising display controllers can be increased with only a relatively small increase in bandwidth required in communications to and from the server, or no increase at all.
When the display controller determines that the display’s present surroundings would make it better suited to different advertising content, the display controller then joins the group which is distributing that content. As a display controller continues to take in information about the surroundings of its respective display, the display controller can repeatedly reassess whether the circumstances match the content being distributed by its current group, or if it would be better suited to display content from a different group. If required, the display controller can then join a different group of advertising display controllers and receive different content for it to display. In this way the structure of the network of display controllers is dynamically adaptable to changing circumstances, without the need of direct intervention from a server or a central management system. If the server provides the advertising content, the network of display controllers can then arrange itself in such a way that the content is displayed in the most effective manner.
Another advantage of arranging the network of display controllers in this way is a reduction in the processing required at the server or CMS. This is because each display controller is able to assess individually which group, and consequently which advertising content, is most suitable for the particular display it controls. In previous systems, the processing to decide how items of advertising content are routed is primarily at the CMS. The CMS therefore has to provide a high proportion of the required processing power. For large networks this has consequences for the maximum number of display controllers a single CMS can effectively manage, being limited by the CMS maximum processing power. Another issue is the effects on processing speed which arise from centrally controlling a large number of display controllers. In contrast to prior systems, according to the present disclosure an external server may only have a single display controller in each group to communicate with as the content can then be propagated throughout the group. This means that the size of the network can be scaled up without the detrimental limitations on processing power and processing speed. The delegation of decision making to the individual display controllers means that there is less onus on the server or CMS to manage each of the display controllers directly.
System structure
A specific arrangement of components which provide an improved data distribution network is discussed below in detail with reference to Figures 1-3.
Figure 1 illustrates a system of display controllers which control display screens positioned in locations in a venue, such as a shopping centre. Each of the display screens displays advertising content to passers-by at the respective location of the display screen. The display controllers interact with each other to distribute the content that the display screens display. The display controllers also determine which display screen should display which advertising content based on the demographics of the passers-by at each respective location.
A network of display controllers 100 includes a number of display controllers which communicate with other display controllers in the network. The display controllers distribute advertising content such as video adverts. The communication may be by any means such as wired connections, WiFi, Bluetooth, radio communication etc.
Each display controller 11-38 is part of the network of display controllers 100 and is therefore in communication with other display controllers that are part of the network 100. The network 100 of display controllers is arranged into groups of display controllers 10, 20, 30. In general there is no limit to the number of groups that can be defined among the network 100 of display controllers. The display controllers in each group are associated in some way with the other display controllers in the respective group. For example, all the display controllers in a particular group may have similar or identical conditions such as all having their corresponding display screens located where there are a high proportion of men nearby or for some other reason being suitable locations for display advertising for men’s products. Different groups contain display controllers that have different associated conditions and therefore different target audiences for the advertising content. In figure 1, display controllers
11- 17 are in group 10, display controllers 21-26 are in group 20 and display controllers 31-38 are in group 30. While figure 1 depicts each group as having no connections between groups, it is also possible for a display controller to be in more than one group. It is also possible that a display controller may not be in any group.
Server 140 communicates with the network of display controllers 100, for example over an internet connection. In the present arrangement, the server 100 sends the advertising content in the form of video data to one or more of the display controllers. In particular the server 140 communicates with only some and not all display controllers. The display controllers that receive the advertising content directly from the server 140 are called initial nodes 11,21, 31. In this arrangement, the communication between the server 140 and the initial nodes 11,21, 31 is over the internet. Alternatively, the server 140 and the initial nodes 11, 21, 31 communicate across a local communications network or any other method of communicating data.
Server 140 sends the advertising content to the initial nodes 11,21, 31 to be shown by the display screens corresponding to the respective displays controllers. In the present arrangement, different initial nodes 11, 21, 31 receive different video data. The initial nodes 11, 21, 31 also forward this video data on to other display controllers in the network 100. The display controllers which receive the video data from the initial nodes 11, 21, 31 then forward this video data on to further display controllers in the respective group and so on. That is, in the arrangement of figure 1, initial node 11 forwards the video data on to display controllers
12- 18, via intermediate display controllers were appropriate. Likewise, initial nodes 21 and 31 forward their respective received video data on to display controllers 22-29 and display controllers 32-38 respectively. In some examples, the display controllers begin forwarding data as soon as part of the video data is received but before the full video content has been received, which improves the speed of distribution. The data continues to flow through the group until the video data has reached all of the relevant display controllers. Each of the display controllers 11-38 then control the respective display screens to display the advertising content received at each display controller as video data.
The communication among display controllers 11-38 and with the server 140 also includes sending data in the opposite direction to the distribution of video content. That is, each display controller 11-38 can also report back information to the previous display controller that it received video data from. The report information can include one or more of an identifier of the display controller, information about which other display controllers it is in direct communication with, the quality of its communication links, status of hardware, which content items it has received etc. The reports sent from the display controller can also include data obtained from sensors associated with the display controller. The reports can also include details of which video content has been displayed, the number of times it has been displayed, the length of time it has been displayed for etc. The reports from each display controller can be communicated throughout the groups 10, 20, 30 via the communication links between the display controllers and also can be communicated to the server 140 via the initial nodes 11,21, 31. As such, data can be routed back to the server through the group. When doing so it is preferable to identify the shortest route back to the server. At the server 140, the information contained by the reports can be stored.
The user device 150 in the present example is a computer which is in communication with the server 140 through any suitable communication method. The user device in other examples may be a mobile phone, tablet, or dedicated device for use in providing video content for the system. The user device 150 may also have a user interface, such as an application or other software, for controlling the user device 150 and interfacing with the server 140 and network 100.
The user device 150 uploads the advertising content to the server 140 for the content to be sent to the display controllers and to be displayed on corresponding display screens. When the user device 150 uploads the advertising content it can provide one or more user-defined criteria for the advertising content, indicating under what conditions it should be displayed. For example, if the advertising content is a video advert for men’s clothing, the criteria may include that if it is determined that there is a high proportion of men, such as over 70% of passers-by, in the vicinity of a particular display screen the corresponding display controller should receive the video advert and control its display screen to display the video advert. In another example, if the advertising content is an advert for umbrellas, the criteria may include that if it is determined that it is raining in the vicinity of a particular display screen, the umbrella advert should be scheduled to be displayed on the display screen. This way a user can set the audience for the uploaded advertising content. Passers-by in the vicinity of each display screen therefore are shown advertising content which is selected according to the particular conditions at the location of the display screen, such as the demographics of the passers-by or the weather conditions or any other conditions.
In general, the one or more criteria may be associated with particular items of content, but may also be assigned to one or more groups. In this situation, new content items could be assigned to the relevant group and the defined group criteria become the default criteria of the content item. Criteria could also be set for individual display controllers and which group the display controller joins is determined by its defined criteria.
In alternative arrangements, the user device 150 may communicate directly with one or more of the display controllers and may transmit content directly onto the network of processing devices.
Figure 2 illustrates a display controller 110, components thereof, and associated connections with a camera 131, a database 132, a display screen 120, and other display controllers in the network 100. Display controller 110 as described with respect to figure 2 may be any display controller 11-38 of the network 100 as shown in figure 1.
The display controller 110 has components including a display controller processor 210, communication interface 220 and memory 230. The display controller processor executes instructions to process data and control each of the components of the display controller. Communication interface 220 communicates with the other display controllers in the network 100, camera 131, database 132, display screen 120 and/or any other components which display controller 110 communicates with. The memory 230 stores instructions which are executable by the display controller processor 210 to control the operations of the display controller 110. The memory includes a peer database 231 which stores data about other display controllers in the network 100. In particular, the peer database 231 can store data about other display controllers in the same group as display controller 110 or display controllers which are scheduled to display at least one of the same content items as the particular display controller 110. The peer database 231 can also store the information required to communicate with other display controllers in the network 100, the network addresses of other display controllers etc. The memory 230 also stores video content 232 received from the server 140 via an initial node 11, 21, 31 and/or other display controllers in its group 10, 20, 30. The memory 230 can also store video content criteria 233 received with the video content 232 indicating in what conditions the video content should be displayed. Multiple video content items can be stored and associated content criteria for each content item may also be stored in memory 230.
The display controller 110 controls what is displayed by the display screen 120 at a particular location. Likewise, each other display controller in the network 100 controls its own io display screen at a respective location. Alternatively, a single display controller may control two or more display screens. The display screen 120 may use any display technology, such as LCD, LEDs or projections, and is capable of displaying content such as digital images, video or any other form display content. The display controller 110 controls what is shown on the display screen 120 by outputting display content 232 to the display screen or, for example, by scheduling which advertising content should be displayed at what time.
Display controller 110 is also able to receive input from a camera 131. The camera 131 is directed such that it captures images of the location of the corresponding display screen 120. The camera 131 can be mounted directly on the display screen 120 to capture images directly where the display screen 120 is facing. Alternatively the camera 131 may be located away from the display screen 120 but directed at a location that has an influence on who may be approaching the region from which the display screen can be viewed. The camera may therefore be directed at an entrance to the shopping centre, or at a position ahead of the location of the display screen along a common pedestrian path.
In some arrangements, a sensor other than the camera 131 can be used to obtain information about the location of the display screen 120. This sensor can obtain information from the position of the display screen 120 or from another location which has an influence of the location of the display screen 120. For example, such sensors may be able to obtain any kind information about the location of the display screen 120, such as temperature information or crowd density information. Crowd density information may be obtained by using a sensor such as a stereoscopic camera, which records two or more images taken side by side with a small displacement. The images taken by the stereoscope camera can be processed to determine a distance to an object in the images, for example using the distance between where the images were taken from and the position of the object in each image. By performing this procedure on a number of people appearing in the images, the number of people and the distance away from the camera can be assessed to determine the crowd density in a given location. Similar techniques can be implemented by stereophonic audio recorders to determine the location of people nearby the sensor and hence also crowd density. In another example, a sensor may be able to detect the number of nearby phones by detecting WiFi or Bluetooth signals and therefore assess the number of phone users in the local area.
The display controller 110 can also receive input from a database 132 either alternatively or in addition to receiving input from a sensor. In an example, this database 132 provides the display controller information about the weather at the shopping centre. Display controller
110 can access the database 132 via the internet or the database may be stored locally. The database may also be accessed via one or more of the other display controllers in network 100. The database 132 may send updates periodically to the display controller 110, or it may send the weather information in response to a request from the display controller 110. The database 132 may send updates each time there is a change in the database 132, such as when weather conditions change, as a push notification to the display controller 110. In alternative arrangements, the database may include details of travel disruption at nearby transport stations, details of the social media feeds related to the location of the display screen 120, or any other information relevant to the location of the display screen 120.
While a camera 131 and a database 132 are given as two examples of sources from which to receive data about the location of the display screen 120, there may of course be alternative or complementary sources from which to receive such data. Data may also be collected from multiple sources and used in combination. Other sources of data may include Building Management systems, such as the status of air conditioning systems in a building or notification of evacuation events. Another source of data may be updates from a local authority, for example a road maintenance agency providing updates regarding road works or other traffic disruptions.
Information related to the display screen 120, such as environmental conditions at the location of the display screen, can be determined by processing the input data from the one or more sources of data. This can be done at the display controller processor 210 if the source of data sends the raw data directly to the display controller. Alternatively there may be a separate processor associated with the source of data which processes the data before sending the resulting information to the display controller. In the example where the camera 131 collects image data, camera 131 may also be able to process the data using an image recognition method to determine the age, gender, clothing etc. of people in the images captured by the camera 131. By performing this step at the camera, or an associated processor, and sending only the relevant information, less data is communicated between the source of data and display controller. This therefore uses less bandwidth of the communication channels between the sources of data and the display controllers. In the example where the sensor detects the number of mobile devices in the local area, sensor may also extract the phone signal data and send this on to the display controller. In this example, the sensor may process the phone signal data further to produce identifiers of the phone users, such as a phone number or social media profile information.
As each of the display controllers 11-38 of figure 1 is associated with a respective location and can be connected to a number of data sources as depicted in figure 2, each display controller receives data regarding the conditions at that location. As is discussed in more detail below, the inputs can be used to assess the conditions at the location which is either at or associated with a corresponding display screen 120. This data can be used by the display controller to select which content should be displayed by the display screen 120. In particular, the display controller can select content data to match the conditions at the location where the content is to be displayed. The display controller can also select which group of display controllers to join, or whether it should change groups. The collection of data indicative of a location associated with the display controller therefore enables the display controller to dynamically rearrange its position in the network 100 and its connections to advantageously receive and display the most suitable content.
In the present arrangement, the allocation of display controllers 11-38 to each group 10, 20, 30 may be based on what video content is suitable for the display controllers. The determination of video content that is suitable for the display controller is based on the conditions at the display screen 120 of each display controller as indicated by the data from the camera 131 and/or the database 132. For example, group 10 may include the display controllers for which advertising content directed at men is suitable. This may be the display controllers with display screens 120 that are located near men’s clothing stores within a shopping centre. This could be determined based on information from a database 132 which identifies local shops with the location of each shop. In this example, the group could be defined as the display screens located within a predetermined distance from a certain location, such as a particular men’s clothing shop. Alternatively, the first group 10 could be determined by cameras 131 detecting that there is above a certain threshold percentage of men in the vicinity of the display screens 120 which are controlled by certain display controllers. The advertising content directed at men is sent from the server 140 to the initial node 11 of the first group 10 and, because the group is defined by having display screens being located in areas with a high proportion of men, the content gets sent to the most relevant locations. This results in a more efficient distribution process because the number of communications between the server 140 and the first group 10 is limited to a single initial node 11.lt also means that the server itself does not have to assess each display controller and make the decision which content should be sent, as this is done by the group structure of the network 100 of display controllers.
If multiple content items are stored at the display controller, it is also possible for the display controller to control what is displayed on display screen 120 depending on the conditions associated with the display screen. For example, when a first criterion for a first content item stored at display controller 110 ceases to be met, but a second criterion for second content item 110 is now met, the display controller can control the display screen to switch to displaying the second content item.
Other groups 20, 30 as shown in figure 1 can be established in a corresponding manner to first group 10, each group having a commonality of conditions for which certain video content is most suitable for. Typically, as each group has a different set of common conditions, the video content sent to each group is different. However, if multiple video content items are sent to each group, there may be an overlap and any item of video content may be sent to more than one group.
Figure 3 illustrates a server and components thereof which is part of the system illustrated by figure 1. The server 140 has components including a server processor 310, a communication interface 320 and a memory 330. The server processor 310 executes instructions to process data and control each of the components of the server 140. Communication interface 320 communicates with the user device 150, the network 100 display controllers and any other components that the server 140 communicates with. In an advantageous example, the server 140 only communicates via the communication interface to the initial nodes 11, 21, 31 of network 100. The memory 330 stores instructions which are executable by the server processor 310 to control the operations of the server 140. The memory includes a display controller database 331 which stores data about each display controller 11-38 of the network 100. This includes identities unique to each particular display controller, the network address of the display controller, the number of display controllers through which data must travel to reach the display controller from the server, the number of other display controllers the particular display controller is in communication with, the round trip ping time to the display controller and which other display controllers the particular display controller is in communication with. The memory 330 can also store video content 332 received from user device 150 and associated video content criteria 333 received from the user device and indicating in what conditions the video content should be displayed.
Adding a new display controller
Figure 4 illustrates steps taken when a new display controller joins the network 100 as part of process P40.
At step S41, the new display controller connects to directly server 140. This may be done using any communication method to the communication interface 320 of server 140. It may also be done via one or more intermediate devices rather than directly communicating with the server 140. For example, the new display controller may make a first connection to another display controller 110 to communicate with the server 140.
At step S42, the server 140 saves identifying details about the display controller in the display controller database 331. These details can also include information about the location of a display screen 120 that the display controller controls, details of other display controllers that are within connection range of the display controller etc.
At step S43, the display controller determines if it has been allocated to a group of display controllers. This may be done based on data from the camera 132 or the database 132 associated with the new display controller, alternatively this may be based on the identifying details about the display controller saved by the server in display controller database 331. The determination as to whether the new display controller is in one or more groups may be made by the server 140 and this may be based on conditions set by the user via the user device 150. The determination may also be made individually for the new display controller by a user through an input of the user device 150. Alternatively, the determination of whether the new display controller is in a group or not may be made by the new display controller or another display controller.
If the new display controller does not belong to any group, the process ends. If however, the new display controller belongs to a group, the process continues to step S44.
At step S44, the new display controller saves details of connecting display controllers in the same group to the peer database 231. In particular, the new display controller identifies the display controller which it is configured to receive video content from to display on display screen 120 and saves these details to the peer database 231. The new display controller also identifies any display controllers which it is configured to forward video content on to and saves details of these display controllers to the peer database 231. The new display controller may also save information about other display controllers in the same group. The information saved on the peer database can include connectivity information, the position of the display controllers in the network and/or group, location information about corresponding display screens etc.
In an example, when the new display controller is allocated to a group, it by default becomes an initial node for that group and stores the corresponding details in the peer database 231 accordingly. The display controller can then determine the network connection quality, such as ping time between two nodes and/or the server, and modify its position within the group. The display controller may choose its position within the group by selecting a display controller from which to receive the video content to be the display controller with the shortest ping time to communicate with.
After step S44, the new display controller has the necessary information to interact with its group and take part in video content distribution and the process of steps S41-S44 therefore ends.
New group creation
If a new item of advertising video content is scheduled to be displayed under certain conditions, and there are currently no groups defined which match those conditions, server 140 can create a new group of display controllers. Alternatively, a new group may be defined by one of the display controllers.
The server 140 has video content 232 from the user device 150 and associated one or more content criteria 233 for under what conditions the video content should be displayed. Based on the content and criteria, the server 140 can determine whether or not there is a group of display controllers that meet the content criteria and if so, the video content is assigned to this group and distributed by display controllers of the group.
The content can be assigned to a group based on a comparison between the one or more criteria associated with the content, for example as defined by the user device 150 when uploading, with criteria associated with one or more groups. When the criteria of associated with the content matches the criteria associated with one or more groups, the content can be assigned to the one or more groups and distributed to the display controllers in the respective groups. If there are one or more criteria associated with specific display controllers which match the content criteria, the content may be sent directly to these display controllers.
On the other hand, if there is no group that meets the criteria for the video content, the server 140 can determine a group of display controllers that do meet the criteria. This can be done by retrieving the relevant information from the display controller database 331. The server 140 defines which display controllers to include in the new group and then selects a display controller in the new group to be an initial node. In the present arrangement, the initial node is chosen based on the connection quality such as the data transfer rate between the server and the display controller or the round-trip ping time. Once a new group is defined by the server 140, each display controller in the group updates their respective peer database 231. The group is then able to distribute the video content throughout the group to each display controller, which can then display the video content on the respective display screen.
Data distribution process
Figure 5 illustrates a process P50 of distributing video content around the network 100 of display controllers.
At step S51, a user defines certain criteria for an item of video content describing the conditions under which the user wants the video content to be displayed. For example, an item of video content may be an advert for men’s clothing and this may have the associated condition that there are a high proportion of men at the location of the display screens where the content is displayed. In another example, the video content may be arranged for the condition that it is raining at, or in the vicinity of, the location of display screen. Additionally, two or more criteria may be combined to give a more precise set of conditions which the content is arranged for.
At step S52 the user device uploads the content to server 140. The content criteria are also uploaded, and may be stored on server memory 330. The server 140 can at this point determine whether or not to create a new group in which to distribute this content, or if a current group has sufficiently similar defined criteria that the video content can be sent to that group.
At step S53, the server 140 sends the video content on to the initial node or nodes of the group 10 determined for the video content. The server also sends the content criteria with the video content.
At S54, the display controller 110, which may be an initial node 11, forwards the video content and content criteria to other display controllers in the group 10. The received video content 232 and content criteria 233 are stored in the display controller memory 230. Once the display controller 110 has received the video content, it controls the display screen 120 to display the video content. The video content may be shown on a periodic basis for a certain length of time. The display controller 110 may also control the display screen 120 to display the video content 232 based on the content criteria 233. For example, when the camera 131 establishes that a high proportion of men are at the location of the display screen 120, the display controller controls display screen 120 to display the men’s clothing video content.
At step S55, the camera 131 obtains images which the display controller processes to assess one or more conditions about the location of the display screen. In alternative arrangements, rather than images from a camera 131, this information about the conditions of location of the display screen can be found using data from database 132, or other sources of information related to the location of the display screen 120. Multiple sources can also be used in combination.
At step S56, the display controller 110 assesses, based on the content criteria 233 and the information about the location of the display screen, whether that particular display controller is should remain part of the group 10 or change to be in a different group. For example, if the demographics at the location of the display screen 120 changes throughout a day period, the camera 131 will indicate that there is no longer a high proportion of men in the vicinity of the display screen 120 and therefore the conditions at the location do not meet the criteria defined for the men’s clothing advert video content. This group re-organisation process is explained in more detail below with reference to figure 6. If no change of group is required then the process can stop at S56. The display controller can also repeat the steps S55 and S56 so that the system is responsive to changes in conditions at the location of the display screen 120.
At step S57, after the display controller has determined that it should leave group 10, it may complete this by updating its peer database 231 and communicating with the other display controllers in the group to update their corresponding peer databases.
Group re-organisation process
Figure 6 illustrates the process P60 of re-organising display controllers. This can be part of steps S55-S57 of process P50.
At step S61, display controller 110 receives images from a camera 131 which indicates one or more conditions at the location of the display screen controlled by the display controller.
At step S62, the display controller 110 determines conditions at the location of the display screen 120. These may be determined by face recognition software determining the number of people in the images received from the camera 131, the age ranges of people in the images, or gender of the people in the images. In alternative arrangements instead of images from camera 131, this can be information obtained from database 132 or any other source of data indicating the conditions at the location of the display screen 120.
At step S63, the content criteria 233 stored in memory 230 of the display controller 110 and associated with video content 232 are applied to the conditions determined in step S62. If the criteria are met for the video content distributed by the group, then the display controller ends process P60, although steps S61 and S62 can be periodically repeated to remain updated to changing conditions at the display screen.
As an example, a content criterion may be the men’s clothing advert is displayed by the display screen 120 when there are more than 70% men in the vicinity of the display screen. The group is defined such that each of the display controllers in the group meets this criterion. In this example, if the determined condition of from the camera 131 images is that there are 75% men in the vicinity of the display screen, display controller 110 remains part of this group. If the determined condition from the camera images is that there are 50% men in the vicinity of the display screen, this does not meet the content criterion and so the process P60 continues to S64.
At step S64, the display controller joins a group of display controllers based on the conditions at the location of the display screen 120. To determine which group the display controller 110 should join instead, the display controller 110 can communicate back to the server and/or other display controllers in other groups to find criteria and associated video content for which its conditions match. The server 140 stores characteristics associated with each group, such as the one or more criteria assigned to the group, in the server memory 330. A display controller may determine to change group when a group which it is not currently in has criteria which are substantially met by the conditions of the display controller as determined by its associated sensors and/or databases. The display controller may also change group if it determines there is a group with criteria which matches the conditions of the display controller more closely than its current group. For example, more criteria of another group may be met than the display controller’s current group or they are met to a greater degree. If however, it is determined that there is not a preferable alternative group for the display controller, the display controller does not initiate any change of group.
The conditions at the display controller can be monitored using the sensors and/or databases associated with the display controller, for example by repeating steps S55 and S56 as described above with reference to figure 5. The server may also update the display controller periodically with information relating to the criteria of other groups.
Once display controller 110 has joined another group, the display controller can send identifying information about itself around the new group for each display controller to update its respective peer database 231.
In the above example where the conditions are determined there are 50% men in the vicinity of the display screen, another condition that may have also been determined is that 60% of the people in the vicinity of the display screen 120 are above the age of 50. This condition may meet the content criterion that is associated with content that is distributed by a different group of display controllers. The display controller 110 therefore joins this group.
As part of joining a new group, identifying information is sent from the display controller 110 to the server 140 and other display controllers in the group for updating the relevant display controller and peer databases respectively. The display controller 110 can then function as part of the new group by receiving and forwarding video content, communicating with other display controllers in the group, updating the peer database 231 etc. It is also possible for the display controller to move to a different group again based on further data being received from the camera 131 and repeating the steps described above in process P60.
When a display controller 110 joins a new group, for example second group 20, of display controllers that it has not previously been in communication with, the display controller may have an option of which display controller within the new group 20 receive video data from. This may be done according to a number of different methods. The display controller 110 which joins the new group of display controllers 20 may receive output data from one of the other display controllers 21-29 in the group 20 based on a characteristic of the connection between the display controller 110 and other display controllers in the group. For example, the characteristic of the connection may be the number of display controllers that video content would have to pass through to arrive at the display controller 110 from the server 140. The fewer number of steps to reach the display controller 110 may result in the display controller 110 receiving video data faster than if there were a large number of steps. Another possibility is that the rate of data transfer to the display controller 110 is used to determine which of the rest of the group the display controller 110 receives video content from. Another alternative is that the round trip ping time from the display controller 110 and the server 140 is assessed and this is used to determine which other display controller the first display controller 110 receives video content from.
Alternatives arrangements
Although the above describes a system of distributing advertising video data, the principles disclosed can be implemented in a variety of other ways. The alternative methods and processes will be suitable for associating a processing device, such a display controller 110, with one or more of a group of processing devices, which make up a network of processing devices. However, the type of data that is distributed throughout the network may not be video data, but rather any form of output data that the processing devices are able to output at respective first locations.
A first processing device is arranged to process output data for a first location. The output data may therefore be location-dependent data which is for outputting at the first location. The output data can be particularly prepared or arranged for the first location, or be suitable for the first location in some other regard. This may be data which the first processing device can directly present, or it may be instructions for the first processing device to action, or other ways outputting.
Although the display controller described above receives information from a camera which indicates the demographics at a location, in general the processing devices may receive any form of input data which is indicative of one or more conditions associated with the first location. This may mean that the input data is a simple reading of a certain parameter of at the first location, or it could be obtained data that requires further processing to establish what conditions are at the first location.
While the first location associated with the first processing device may be a fixed location, it is also possible that the location changes position with respect to time. For example, the first location may be the location of a vehicle, which then tracks with the vehicle as it moves in space. The conditions assessed for the first location may therefore change as the vehicle travels, and the output data to be received and output may be determined accordingly. In one arrangement, a display screen may in a taxi cab or on public transport and the content which is displayed on the screen is based on the present surroundings of the vehicles. In this arrangement a display controller can assess where the vehicle is, the weather conditions etc. and the display can present relevant content to passengers of the vehicle such as information about local tourist attractions.
When the first processing device is associated with the first group of processing devices, this may be, as explained with respect to the figure 2, a communication connection with other processing devices in the group of processing devices and the distribution of common data items. However, in alternative arrangements, this may instead be a coordination of actions between the processing devices of the group.
The arrangements described with respect to figure 2 include a server to provide video content and store information regarding the content criteria and display controller information. However, the system may not include a server and instead the content is generated at one of the processing devices, or received by some other manner. The content can be distributed throughout the groups and network in the same way as described above. In the example where there is no server, one or more processing device may be designated the lead processing device(s). The lead processing device may perform a similar role as server 140 described above, for example storing content and content criteria where necessary. The lead processing device may also define the groups of the network and perform the role of the server in any of processes P40, P50 or P60 as described with reference to figures 4, 5 and 6 respectively. It is also possible that there is no lead processing device and the individual processing devices each have the capability to define new groups, initiate new processing devices joining the network, store content, store content criteria and determine which other processing devices to distribute content to. As the processing devices are capable of organising and controlling the network there is no need for a server. This provides the network with additional flexibility and scalability and if any individual processing device goes offline, the remaining processing devices are capable or reorganising the network and maintaining the desired functions. Additionally, in this arrangement the processing power is distributed among the network and this reduces the processing burden at any one individual device.
The use of content criteria to determine whether the conditions associated with a first location instigates a change of group by the first processing device is just one possibility. In other arrangements, the content is analysed at one or more of the processing devices and the conditions for which the content should be shown are determined. For example, if the content is advertising images, a processing device may perform an image recognition method on the content to determine the class of product being advertised. The processing device can then determine which group to join based on the class of product, in addition to data indicative of conditions where the content can be displayed. In this example, no userdefined content criteria are required as the processing devices themselves are capable of determining under what conditions the content should be displayed. This may be achieved by building up historical content data and historical criteria data, for example on the server memory 330. The historical content and criteria data can record when and where certain content has been played. A classifier algorithm could operate on the server processor 310 to sort the content and associated criteria into groups depending on where and when the content was utilised. This in turn can determine new or additional criteria for certain types of content, the determined results can be reported back to a user via a user device to provide further information to improve the criteria user for future content. For example, the historical criteria and content data may reveal unexpected patterns for where certain content should be displayed for maximum effect. The classifier algorithm may be based on statistical methods such as k-means algorithm or on Al methods, such as convoluted neural networks.
Traffic light system
To demonstrate some of the alternative arrangements of the present disclosure, a second arrangement is described below.
This arrangement relates to a network of traffic light devices. Each of the traffic light devices are able to output data at a location of a respective set of traffic lights by illuminating one or more of the traffic lights. The traffic light devices are associated into groups for communicating output data between the traffic light devices. The output data is, for example, a signal to turn the traffic light from red to green.
The group of traffic light devices are associated together because their traffic lights are all situated at junctions which are affected by a traffic jam. In this case input data indicative of one or more conditions with first location can be an image showing the traffic jam taken from the location of the traffic light. The input data could also be data from a map indicating that the traffic light controlled by the particular traffic light device is at a junction which has an effect on the traffic jam. This may be determined because the traffic light is a distance away from the junction along one of the roads leading to the junction. The group of traffic light devices may therefore be defined as the traffic light devices that have a significant effect on the traffic at a junction where a traffic jam is located.
Within the defined group of traffic light devices, output data in the form of instructions to coordinate which traffic lights should turn green at what times is sent between the traffic light devices for controlling the corresponding traffic lights. The instructions can be distributed by receiving the instruction data from another traffic light device in the same group and forwarding the instruction data on to one or more other traffic light devices in the group. Compared to controlling a network of traffic light devices from a central management system, distributing the data in this manner reduces the bandwidth used by communications. This is because the traffic light devices distribute the instructions throughout the group rather than each individually receiving this information from a central management system.
From received the input data indicating conditions of at a location at particular traffic light, the group structure can be dynamically reorganised. If the conditions change at a particular traffic light, such as by a second traffic jam developing at a separate location to the first traffic jam, the corresponding traffic light device may decide that it should be part of a new group of traffic light devices. In this way, the network of traffic light devices can dynamically interact to reduce the traffic across a road network. This system also removes the need for a centralised control system for directing each traffic light directly. Also, as the traffic light devices interact directly, it reduces the bandwidth of communication from any central management system that may be used in part to organise the devices, such as a server.
It is also possible that no server is required to control the network of traffic light devices. For example, each of traffic light devices themselves may be capable of generating the instructions, i.e. output data, and distributing this throughout the network for controlling traffic lights. One traffic light device may be designated as the lead device which manages the traffic light strategy and sends out the instructions according to certain algorithms or program. Alternatively, each traffic light device may have an algorithm or program that is able to generate instructions to send across the network to other traffic light devices in the group. By spreading out where the processing is done to control the network, the processing power required at any single device is less. This also means that the network can be scaled up more easily to using a large number of devices, as the addition processing power of each device matches the additional processing power required to manage the larger network. In other arrangements where a single device or server controls all devices, each addition device requires further processing power at the central controlling device which may already have limited available processing power.
The various methods described above may be implemented by a computer program product. The computer program product may include computer code arranged to instruct a computer to perform part of the functions of one or more of the various methods described above. The computer program and/or the code for performing such methods may be provided to an apparatus, such as a computer, on a computer readable medium or computer program product. The computer readable medium may be transitory or non-transitory. The computer readable medium could be, for example, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, or a propagation medium for data transmission, for example for downloading the code over the Internet. Alternatively, the computer readable medium could take the form of a physical computer readable medium such as semiconductor or solid state memory, magnetic tape, a removable computer diskette, a random access memory (RAM), a read-only memory (ROM), a rigid magnetic disc, and an optical disk, such as a CD-ROM, CD-R/W or DVD.
An apparatus such as a computer may be configured in accordance with such code to perform one or more processes in accordance with the various methods discussed herein. Such an apparatus may take the form of a data processing system. Such a data processing system may be a distributed system. For example, such a data processing system may be distributed across a network.
Claims (19)
1. A method for associating a processing device arranged to process output data for a first location with a group of processing devices, wherein the group of processing devices is one of a plurality of groups in a network comprising a plurality of processing devices, the method comprising:
receiving input data indicative of one or more conditions associated with a first location; and associating, based on the input data, a first processing device of the plurality of processing devices with a first group of processing devices, wherein at least one of the first group of processing devices is arranged to send output data to the first processing device, wherein the output data is associated with the one or more conditions and the output data is for the first location.
2. The method of claim 1, the method further comprising:
receiving, at the first processing device, the output data via at least one of the processing devices in the first group of processing devices.
3. The method of claim 2, wherein a second processing device of the first group of processing devices receives the output data from a source and wherein the first processing device receives the output data via the second processing device.
4. The method of any preceding claim, the method further comprising:
transmitting, from the first processing device, the output data to one or more of the processing devices of the first group of processing devices.
5. The method of any preceding claim, the method further comprising:
executing, at the first processing device, an action based on the output data.
6. The method of claim 5, wherein the output data is media content and the action is displaying the media content.
7. The method of any preceding claim, wherein the associating is performed based upon the input data and one or more criteria.
8. The method of claim 7, wherein the associating of the first processing device with the first group of processing devices includes determining if the one or more conditions associated with the first location meet the one or more criteria associated with the output data.
9. The method of any preceding claim, wherein the one or more conditions associated with the first location include environmental conditions at the first location.
10. The method of claim 9, wherein the environmental conditions at the first location comprise at least one of: a demographic representation of people at the first location, weather conditions at the first location; a status of facilities in a vicinity of the first location; or the number of vehicles in the vicinity of the first location.
11. The method of any preceding claim, where each processing device of the first group of processing devices is associated with a respective location and each of the respective locations has one or more identical or similar associated conditions.
12. The method of any preceding claim, wherein receiving the input data includes obtaining the first data from the first location by a sensor.
13. The method of any preceding claim, wherein receiving the input data includes receiving the input data from a database.
14. The method of any preceding claim, wherein the processing device of the one or more processing devices of the first group that the first processing device receives output data from is determined based on one or more characteristics of the connection between the first processing device and the one or more processing devices.
15. The method of claim 14, wherein the characteristic of the connection is determined by at least one of: the number of processing devices in the first group of processing devices that output data would pass through from a source of the output data to reach the first processing device; a data transfer rate between a source of the output data and the first processing device via the first group of processing devices; and a round trip ping time from the first processing device to a source of the output data and back to the first processing device.
16. The method of any preceding claim, wherein the method further comprises:
receiving second input data indicative of one or more further conditions associated with the first location;
associating, based on the second input data, the first processing device with a second group of processing devices, wherein at least one of the second group of processing devices is arranged to send second output data associated to the first processing device, wherein the second output data is associated with the one or more second conditions and the second output data is for the first location.
17. The method of claim 15, the method further comprising:
disassociating the first processing device from the first group of processing devices.
18. A system comprising one or more processing devices and one or more respective memory components associated with each respective processing device, the one or more memory components storing instructions that are executable by the respective one or more processing devices to perform the method of any one of the claims 1-17.
19. Computer readable media comprising instructions that are executable by one or more processing devices to perform the method of any one of claims 1 to 17.
Intellectual
Property
Office
Application No:
GB1617618.2
Examiner:
Dr Laurence Drummond
Claims searched:
1-19
Date of search:
17 March 2017
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| GB1617618.2A GB2555112A (en) | 2016-10-18 | 2016-10-18 | Data distribution network |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| GB1617618.2A GB2555112A (en) | 2016-10-18 | 2016-10-18 | Data distribution network |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| GB201617618D0 GB201617618D0 (en) | 2016-11-30 |
| GB2555112A true GB2555112A (en) | 2018-04-25 |
Family
ID=57680675
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| GB1617618.2A Withdrawn GB2555112A (en) | 2016-10-18 | 2016-10-18 | Data distribution network |
Country Status (1)
| Country | Link |
|---|---|
| GB (1) | GB2555112A (en) |
Citations (8)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20030004796A1 (en) * | 2001-06-27 | 2003-01-02 | Struble Christian L. | System and method for controlling the presentation of advertisements |
| US20070011051A1 (en) * | 2005-07-08 | 2007-01-11 | Onestop Media Group | Adaptive advertisements |
| US20110010732A1 (en) * | 2003-08-06 | 2011-01-13 | Ds-Iq, Inc. | System and method for delivering and optimizing media programming in public spaces with peer-to-peer digital signage networks |
| US20110071888A1 (en) * | 2009-09-22 | 2011-03-24 | Electronics And Telecommunications Research Institute | Outdoor advertisment device and method |
| US20140016507A1 (en) * | 2012-07-16 | 2014-01-16 | Samsung Electronics Co., Ltd. | Method and apparatus for handling topology in wireless communication system |
| KR20140031528A (en) * | 2012-09-04 | 2014-03-13 | 현대엠엔소프트 주식회사 | Device and method for providing advertisements using indoor digital map |
| US20140304072A1 (en) * | 2013-03-13 | 2014-10-09 | Tomer RIDER | System and method to provide location-based digital signage services |
| KR20160053780A (en) * | 2014-11-05 | 2016-05-13 | 도요타지도샤가부시키가이샤 | Fuel cell system and maximum power calculation method |
-
2016
- 2016-10-18 GB GB1617618.2A patent/GB2555112A/en not_active Withdrawn
Patent Citations (8)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20030004796A1 (en) * | 2001-06-27 | 2003-01-02 | Struble Christian L. | System and method for controlling the presentation of advertisements |
| US20110010732A1 (en) * | 2003-08-06 | 2011-01-13 | Ds-Iq, Inc. | System and method for delivering and optimizing media programming in public spaces with peer-to-peer digital signage networks |
| US20070011051A1 (en) * | 2005-07-08 | 2007-01-11 | Onestop Media Group | Adaptive advertisements |
| US20110071888A1 (en) * | 2009-09-22 | 2011-03-24 | Electronics And Telecommunications Research Institute | Outdoor advertisment device and method |
| US20140016507A1 (en) * | 2012-07-16 | 2014-01-16 | Samsung Electronics Co., Ltd. | Method and apparatus for handling topology in wireless communication system |
| KR20140031528A (en) * | 2012-09-04 | 2014-03-13 | 현대엠엔소프트 주식회사 | Device and method for providing advertisements using indoor digital map |
| US20140304072A1 (en) * | 2013-03-13 | 2014-10-09 | Tomer RIDER | System and method to provide location-based digital signage services |
| KR20160053780A (en) * | 2014-11-05 | 2016-05-13 | 도요타지도샤가부시키가이샤 | Fuel cell system and maximum power calculation method |
Also Published As
| Publication number | Publication date |
|---|---|
| GB201617618D0 (en) | 2016-11-30 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US9940118B2 (en) | Systems and methods utilizing highly dynamic wireless ad-hoc networks | |
| Chen et al. | Vehicle as a service (VaaS): Leverage vehicles to build service networks and capabilities for smart cities | |
| De Souza et al. | Traffic management systems: A classification, review, challenges, and future perspectives | |
| Din et al. | 5G-enabled Hierarchical architecture for software-defined intelligent transportation system | |
| US10499215B1 (en) | System for location based triggers for mobile devices | |
| Karunathilake et al. | A survey on mobile road side units in VANETs | |
| US9736369B2 (en) | Virtual video patrol system and components therefor | |
| CN103634377B (en) | Indoor navigation and information pushing system and method based on LED (light emitting diode) illuminators | |
| EP3473056B1 (en) | Smart light fixture communication network infrastructure and methods of use | |
| KR101106057B1 (en) | Apparatus and method for providing cross media linked advertisement contents through location-based advertisement local zone | |
| US20120089462A1 (en) | Traffic light electronic display interface system and method | |
| JP6256984B2 (en) | Local monitoring system and local monitoring method using autonomous driving traffic system | |
| TW201130371A (en) | Methods and apparatus for combined peer to peer and wide area network based discovery | |
| US20240236630A9 (en) | Low energy network | |
| US20140099880A1 (en) | Proximity-based, temporally-limited one-to-many and one-to-one hyperlocal messaging of location- and semantically-aware content objects between internet-enabled devices | |
| US8976684B2 (en) | Intelligent video, data streaming and access to distributed resources in a wireless network | |
| CN103632171A (en) | Travelling comprehensive information management and release method based on Internet of Things and system | |
| Hagenauer et al. | Vehicular micro cloud in action: On gateway selection and gateway handovers | |
| US20090262663A1 (en) | Wireless Discovery of Devices | |
| Zhang et al. | Content dissemination and routing for vehicular social networks: A networking perspective | |
| CA2900988A1 (en) | Systems and methods utilizing highly dynamic wireless ad-hoc networks | |
| US20240341022A1 (en) | Remote management framework in sensor and actuator network | |
| Ahmadifard et al. | ISEFF: an ID-based scalable and efficient distributed file sharing technique in vehicular ad hoc networks | |
| GB2555112A (en) | Data distribution network | |
| Alinani et al. | Real-time push-based data forwarding for target tracking in vehicular named data networking |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| WAP | Application withdrawn, taken to be withdrawn or refused ** after publication under section 16(1) |