Logout

Home Topic 7 Last Next

--- Distributed systems ---

7.1.7

Compare a centrally controlled system with a distributed system.

 

Teaching Note:

Technical hardware details are not expected.

 

Sample Question:

sdfsdfsf

Marks Scheme

From Sample Paper 1 - 2014:

(Sample paper, so mark schemes:)

 

JSR Notes:
(Make sure to see just above, from the marking scheme of the IB sample paper 1 an "advantages/disadvantages" list for centralized vs. distributed control from , once you have a good idea of the difference between the two.)


"Centralized" vs. "Distributed"

In Topic 7, note that 7.1.1 - 7.1.6 was under the title "Centralized Control Systems", but really, various kinds of control are mixed in, and the focus on those first six assessment statemetns was control systems in general, not whether or not they were centralized or distributed.

And, now, 7.1.7 - 7.1.8 are under the title "Distributed Systems". And the focus becomes much more on the distinction between centralized, distributed, and autonomous systems.

 

Control systems are generally described as being cerntralized, distributed, or autonomous:

 

To distinguish between the three, in a given situation, a good approach is to ask "Who is in control?"

- a central figure/controller, controlling several locations?

- a figure/controller at each location?

- or the units themselves?

 

Introductory Example with all three kinds

First of all an all-in-one great example from 2019 of the difference between centralized, distributed and autonomous agent systems: the air pollution cleaning efforts of Bangkok city in winter 2019:

- centralized: a centralized system of sensors and water canon across a wide area, all networked together and controlled by a command center to turn on the water where and when it is most effective for the city.

- distributed: individual buildings installing sensors and water canon to spray water when AQI readings get above a certain level

- autonmous agents: fleets of drones equipped with water sprayers are released into the Bangkok skies to go about their business on thier own, coming back when empty, and together contributing to the pollution cleanup effort


In terms of is it centralized or is it distributed? Just ask yourself, where's the (or where are the) processor(s)?
There's just one? Well, that's centralized. Many? Distributed.

And another trick is to ask yourself, is there a control room? If so, that's a centralized system.


Analogy

If you are still having trouble getting your head around the difference between the three, there's a good analogy that may help. Consider governments, and the degree to which they either centralize or distribute their control.

Centralized government example 2021: China. The Communist Party of China controls the country centrally, from Beijing.

Distributed government example 2021: USA. The federal government controls certain aspects of American governance, but much of it is distributed to the states, for example, education, and COVID-19 regulations, to name just a couple.

Autonomous government example early 2000s: Somalia. Back then, there was no central government, only localized warlords who ruled on their own their own parts of the country.

In thinking about the "control" nature of these governments, ask yourself if local sensed data go all the way to the top, with decisions made using that data, and then control messages that must be heeded go back down? If so, that's centralized control.

And note that, as with IT control systems, it's not so much "is it" centralized/distributed/autonomous control, rather it's "how is it" centralized/distributed/autonomous control?

(By the way, the way schools are run can also be looked at in this light...)


Distributed Control Systems Defined (as found in WikiAudio ):

"A distributed control system (DCS) is a control system for a process or plant, wherein control elements are distributed throughout the system. This is in contrast to non-distributed, centralized systems, which use a single controller/server/mainframe at a central location. In a DCS, a hierarchy of controllers is connected by communications networks for command and monitoring."

DCS vs CCS & Autonomous Agents

The key here, compared to centralized and autonomous control systems is the hierarchical system. If there's no hierarchical system, then there's no distribution - either because one processor does all the control (CCS), or the agents do everything themselves (autonomous agents). So when it comes to DCS, you can ask yourself where are the processors and what do they do, and their should be an answer.

Example scenarios where a DCS might be used include:

A large scale Distributed Control System (DCS) will often consist of:
- Custom designed
hardware and software for both controllers and the interconnections/buses between them.
- The various controllers will receive input from instruments including a variety of bespoke (i.e. custom made) or standard analogue an digital sensors,
- which send their output to likewise standard or customized "output instruments".
- All of these control systems will be supervised and controlled by other controllers further on up the DCS hierarchy (see diagram).

A good example to keep in mind to envision an example of this is an automotive assembly line.

The Control Hierarchy & "Hybrid nature of 'Distributed' Systems"

With most DCS systems, you can identify tasks which are fully centrally controlled, and others which seem to be more distributed; but those, ultimately, are indeed some way controlled via the heirarchy, all the way up to the highest level.

In the example of a modern automotive assembly line, (see this video of the Kia assembly line) most of the spot welding will be done by robots most controlled by the individual controllers of the individual robots (distributed control). But those controllers are, in turn being supervised/controlled, so that - to take one key example - if there is a major problem, the whole assembly line can be halted (centralized control). Another aspect which would have to be controlled one level above the individual robot controller is communication about when the cars are all ready to be moved on to the next step in the assembly line.

Wikimedia.org Functional_levels_of_a_Distributed_Control_System.svg.png

- Wikimedia Commons Image


Non-IT Distributed Control Systems Examples

Through each of theses thorough examples, at the very least zoom in on the key points, which will be bolded and italicized.

Public Utility Examples.:

Electrical power grids and electrical generation plants - The "power grid" of a city or state or nation is the network of wires and relay stations which carry electricity to its destination. And if you stop to think about it, this is an absolutely awesome feat in modern developed cities/nations. There are literally millions and millions of kilometers of wires, which, under normal circumstances, "light" the world. The technology responsible for the generation, distribution, and "book-keeping" of electrical usage charges has become so reliable and invisible that we just take it for granted.

But there is a huge amount of control necessary to manage such a system. And though there will be certain centralized systems within the greater system, much will need to be distributed to individual generating plants, and relay stations etc. And even within those plants/stations themselves, certain control will be distributed further to specific parts and sub-systems. So sophisticated and large a system is this, that it simply isn't possible to have complete centralized control.

Here is a great video showing an ---> electrical grid control center <---- there is an impressive amount of central control from it, but mention is also made of "embedded" parts of the system, and "self-healing" (i.e. autonomous "agents") parts of the system.

Centralized Part: ...... From the video linked above, with a modern facility the more centralized control the better, and so almost all of the system is indeed controlled.

Distributed Part: ......In older systems, more of the control would be local to the individual relay station.

 

_________________


Water management systems
- Along with flipping the switch and expecting the lights to come on, we turn on the tap and expect water to come out. Yet this too, with water systems both supplying fresh water and properly treating waste water, can support millions of people and billions of water a day. Such a system, theoretically could be controlled by a mainframe for a city/region. But in reality, it makes sense to distribute some of the specific process control to IT systems local to individual water management plants.

Higher up the DCS hierarchy of control: A prime example would be control of the overall reservoir levels in each sub district, so that even in times of relative water shortage, the water resources are shared equally among districts. Re-direction from those with surplus to those with defecit would be an ongoing job of control systems fairly high up the heirarchy.

Direct control level tasks: In middle tiers of the water management system, there would be equivalent control of water amounts to individual streets and even down to individual buildings and houses. At the lower level of "field" control, control systems could manage water pressure at each exit point into private property.


Factory Examples
:

Factory Assembly Line - A mainframe computer will have master control over various systems, but those systems themselves will have control distributed to them. So if you think of a car factory, each station can have its own robot, to which control has been distributed. And though each robot station requires the partially finished car to be passed onto them for work, you could imagine it possible for the robot to do its own job without being connected to the mainframe control computer at all. This is not the case, for the obvious reasons of monitoring the overall system, but what makes this a primarily distributed system is that the mainframe does not do the processing work of each robot, that work is distributed to them.

Higher up the DCS hierarchy of control: ......

Direct control level tasks: ......

 

"Small-scale" Examples - & NOTE THAT THESE ARE ALMOST ALL BETTER FOR THEIR CENTRALIZED (LOCAL) CONTROL ASPECTS; never-the-less they all do have a distributed aspect to them:

With all these, you would ask yourself, what part is controlled in a centralized way, and what control is distributed to the various parts?


Heating Systems - though centrally in a building like our school, where each room has no control, in many heating systems, you can have sensors/meters/dials/controllers in each room/apartment for this control to be distributed, which in many buildings it is.

Centralized: Determination of when the main boiler is on, and to what temperature the water is heated.

Distributed: Individual rooms sense the temperature and regulate the amount of heat being released.



Multi-Elevator System in a Large Building - Usually centrally controlled by their own sensors only.
But possibly centrally controlled for reasons of security and safety. Shut down with doors open in fire/flood situation. But individual elevators are not controlled.

Centralized Part: Intelligent determination of what elevator goes to what level is chosen and gone to by each elevator.

Distributed Part: Overload indication, doors closing on people re-opening.



Traffic Lights - Can be either centralized or distributed or bot. Synchronized lights, like on Evropska, would be an example of centralized control. but often there are camera and sensors which work per individual junction, in Prague looking at both car and tram traffic, with trams trumping cars. Even the traffic officer working the Evropska / Horomerika lights control is working in a "distributed" way.

Centralized: If "zelena vlna" ("green wave"), i.e. synchronized lights, and if camera control.

Distributed: Walker buttons, or police control of intersection.



IT Examples of "Distributed Computing"

Distributed computing is not what is thought of classically as distributed control systems, but in fact they do work in a similar fashion. So this is a good place in the syllabus to take a look at them. And you'll note that several of the other IB CS websites out there certainly do focus in on them here.

BitCoin - and other digital currency systems (see the bottom of this page for my explanation of how Bitcoin works if you would like) distribute both the "mining" of the currency and the tracking of transaction on thousands of computers around the world, connected to the Internet.

So BitCoin mining is distributed, yet not autonomous, in that each computer works for itself, but eventually (if their hashes are successful!) reports back to the node on the BitCoin network to which it is connected a newly mined block to be added to the bit-chain.

_________________


SETI
, the Search for Extraterrestrial Life project in which home computers, during idle time, do the crunching of data analysis for a certain section of space, and send results back to the astronomers running the project. The idea with this, and other "cluster" computers (see next item) is that super computers are expensive, and not everyone has one in their possession. Even well healed research facilities and universities may not posses a super computer. So the processing that would be done by one super computer is distributed around many computers.

What makes this example more in tune with the hardware systems above is that there actually is sensing - a great deal of sensing, as in scanning the entire universe! - involved.

_________________

And one more for good measure:

BotNets that contribute to DDoS attacks (Distributed Denial of Service attacks.). With DDoS attacks, botNets
are spread out into unknowing computers, which, unknown to their users, send multiple requests to a targeted
server. If enough of these botNet send enough requests to the particular server, it will freeze or shut down.  
The botNets act as autonomous agents because they are not controlled once released, and they serve the entity
that released them by eventually shutting down the targeted server.

 

Pros and Cons of Distributed Computing

**This is likely as important a part of this assessment as anything on this page.**

Pros Cons

 

Cost - The processing is shared out among many cheap computers, or indeed among computers belonging to other people (for ex. SETI)

 

 

Performance Capabilities - Depending on the system and the requirements, might not be as powerful as the mainframe/super computer alternative, or even capable of doing the job

 

 

Individual computers can fail or go off-line and not significantly affect the overall project

 

 

Security - Definitely an issue that has to be carefully considered and controlled, given shared nature of the project

 

 

Scalability - the number of computers, and so the power to be harnessed is easily increased

 

Bandwidth Requirements - this is not an issue at all with centralized processes