Denys Rtveliashvili
ai

Cities, Integrated Circuits, and Living Cells

Introduction

A while ago, I have been watching videos about transportation and city planning. The videos explored the importance of transit, making cities convenient and pleasant for their inhabitants, and how differences in culture lead to differences in city planning.

I had a feeling that I saw this somewhere, but it was not about cities at all. The function of a place defines its structure, larger places are made from smaller ones, and transportation is important. Hm… Where was that?

Eureka! It was when I had to work with FPGAs. When designing FPGAs people do need to care about “transportation”, which in that specific case means — as a minimum — the circuitry related to data transfer between functional blocks and the reset logic. There are other similarities too, but we shall cover them in due course.

While the gears in my brain were spinning, I realised that there is one more area where the same principles work in a similar way: a living cell. There are reasons why bacterial cells are so tiny, and eukaryotic cells are bigger but not by much. Amazingly, this constraint which is the root cause for that is similar to constraints limiting the size of cities and integrated circuits. Although the similarities between cities and integrated circuits are more pronounced.

Please note, that I am not a professional in city planning, or integrated circuits design, and I have never worked as a professional biologist. This post is just my observation of the similarities that I see and I hope you will find them as beautiful as I do.

Geometry, constraints, and solutions

… in cities

Every system is constrained in some way and cities are no exception. There are good reasons why people do not build chemical plants on top of schools, and it is not only because of the possibility of contamination. So let’s try to go from first principles.

A city is a place where people live, work, raise their children, and spend time together.

The life of people goes in cycles. They sleep every night (usually at home), and do the rest during the day. This makes every individual mostly tied to their home. Some people need to take their children to a nursery or a school almost every day. This ties them to the relevant nursery/school. And of course, apart from those few who work from home or do not work at all, many people need to work in an office or at a factory, or somewhere else.

As a result, each individual should be able to travel from home to work/school/nursery/shop relatively quickly and such travels happen very often. Therefore, all these places must be close to homes.

There are different ways to go about it. For example, in car-oriented societies like the USA people live in suburbs and travel by car to everywhere else. On the opposite side of the spectrum is the idea of a 15-minute city, where all daily necessities can be reached by a 15-minute walk or a ride on a bike. Whatever the means of transportation is, it is clear that the necessities like work/school/shop/hospital should be reachable within a small timeframe.

In addition to that, occasionally people need to travel far (for example, when they go on holiday). While this does not happen often, the distance is much greater, and it is expected that the journey would take longer.

Let’s consider a situation where the city is big enough that fine details can be ignored.

You could say that in order to sustain some amount of population, you need some number of places in schools/universities, some volume of shopping opportunities, and so on. Their availability limits the possible population. These amenities have to be local, and they cannot replace each other. No matter how you construct the buildings and what your mode of transportation is, these amenities have to be available and their availability must be linearly proportional to the population.

This evokes an idea that a city may be built largely out of self-containing superblocks which have housing, shopping, educational establishments, hospitals, and so on in optimal proportions. The only thing to add to the mix would be the longer-range transport to travel outside the usual living area. Something like high-speed trains would do the job nicely.

But does it mean that the city can be grown indefinitely large?

Let’s say the city has a shape of a disk or square. Then if the edge is proportional to the city’s characteristic linear dimension (such as a radius or a side of a square). However, the population is proportional to its square.

Here lies a problem. For a city to function, resources like food and some goods need to cross the city’s boundary. However, the need for those resources is proportional to the population. As the former grows linearly and the latter grows as a square, a big enough city will not have enough capacity to transport the resources inwards.

In addition to that, the city produces waste of various kinds, and that needs to be removed. Just like the resources to be consumed, the amount of waste to be removed is proportional to the population (and hence the square of the city’s linear size), while the long-distance transportation capacity is linearly proportional to the city’s linear size.

Let’s imagine that there is an amazing kind of transport which allows for the transportation of resources and waste vertically (a strangely efficient airport?). Then the problem can be mitigated by creating specialised areas inside the city which would provide that vertical transportation and also have a big enough edge around them to transfer resources and waste horizontally.

Alas, this kind of cheap-ish vertical transport does not exist as of this writing, so technically, the possible size of cities is limited. Although I cannot tell how big can they really be as have not hit the ceiling yet.

… in integrated circuits

Now let’s consider how an integrated circuit would work.

An integrated circuit is made of tiny transistors and other electronic components, as well as the interconnect between them. Normally, the electronic components form functional blocks like memory cells, logic gates, LUTs and so on. Those often go in groups, and the groups are interconnected with each other.

It should be easy to see some similarities to cities. It is not normal for a transistor to be connected to another one on the other end of the circuit. It would normally be connected to something local. These groups of electronic components, connected to each other by the local interconnect are analogous to buildings. Closely located groups of functional blocks doing a specific job (such as an implementation of a PCI Express controller) are similar to superblocks in a city. And just like in a city, they need to be connected by longer and more powerful transport links, requiring relatively more effort than local transportation.

As for the resources and waste in the context of an integrated circuit, these are data going in and out, power supply, and heat.

Heat is perhaps the easiest of the problems, although I do not wish to imply that it is actually easy. Heat naturally goes “vertically”, away from the circuit and can be removed in various ways.

Power supply and data transfer are harder. It is not easy to connect the macroscopic pins of a microchip enclosure to the microscopic integrated circuit. The connections normally happen at the edge. And just like in the case of cities, the mathematics implies that the size of the integrated circuit may be limited, as while the number of functional blocks is proportional to the square of its linear size, its I/O capabilities are linearly proportional to it.

Recently, integrated circuits had a breakthrough and now there are implementations where several integrated circuits are stacked on top of each other. The technology is non-trivial, but it is the closest analogue of the imaginary vertical transport for cities. And best of all, it already exists.

However, as of now, it does not really solve the problem of I/O ceiling in its entirety. It minimizes it by avoiding the need for doing long-distance I/O and replacing it with a shorter-distance I/O to another integrated circuit. In the context of cities, it would be something like cities having multiple areas inside of them which would contain farms in order to avoid transporting all the food through the external edge of the city.

… in living cells

Similar, but not identical limitations exist in the living world, and these limitations dictate the possible solutions to the problems.

Let’s begin with the main difference first. Unlike cities and integrated circuits which are semi-2D, living cells are certainly 3D. Therefore, their volume is proportional to the cube of the linear size, while the area of their membranes is proportional to the square of the linear size.

Now having said that, let’s consider the similarities.

Firstly, each cell needs to transfer various chemicals in and out. The majority of them require active transport, that is the cell has to spend energy to move molecules across the membrane. This process, as well as some others, also involves the creation of an electric gradient across the membrane.

This already shows that cells cannot grow indefinitely. They need to supply their inner parts with chemicals but while the volume of the inner parts is proportional to the cube of the linear size, the area of membranes is proportional to only a square of the linear size.

The result of this is that prokaryotic cells cannot grow large. Their size is usually between 1 µm and 5 µm, although there are larger specimens. Of course, this gigantism of the exceptionally large prokaryotes is not without a reason. In the case of Thiomargarita namibiensis the cells contain special vacuoles containing nitrates, which are crucial for the organism’s metabolism.

Eukaryotic cells are much bigger. Their size is usually between 10 µm and 100 µm, although some cells are truly massive. How do they manage that?

For a start, they do it by adding more membranes. Eukaryotic cells are full of organelles, which have their own membranes and fulfil their own functional role. This increases the area of the membranes and keeps interactions more localised so that molecules would not need to diffuse from one end of a cell to another like in prokaryotes.

The organelles can be seen as an analogue of suburbs and industrial centres of cities. Naturally, there has to be powerful transport between them. And it does exist. It is called endoplasmic reticulum. It is not cheap (transportation requires energy, as always), but that is a price a cell has to pay to be bigger.

Talking about energy, living cells have standard energy cells called ATP. In order to produce them, cells need an electric gradient across a membrane. Eukaryotic cells have a special trick for energy generation: they have mitochondria or chloroplasts (depending on whether it is a cell of a plant), which are specialised organelles for energy generation. Mitochondria are fascinating. Not only do they make it possible for life to exist in the way we tend to think about life, but they are also organelles with their own DNA, which can replicate on their own within a cell, and which — according to modern biology — most likely used to live as independent cells but were captured by another cell a very long time ago. But I digress.

The final reason why eukaryotic cells are larger lies in the way they deal with consuming nutrients and disposing of waste. Unlike prokaryotic cells which transfer chemicals across the external membrane, eukaryotic ones have more active ways of doing it. Firstly, they have lysosomes and peroxisomes, which are able to digest engulfed food. Not only it allows for the consumption of nutrients which would be otherwise unavailable, but also it increases the effective surface of membranes. Secondly, eukaryotic cells can form vacuoles, which are dedicated organelles for waste collection and disposal.

Conclusion

Despite cities, integrated circuits and living cells being very different things, their structure displays a degree of similarity. There are functional blocks, often hierarchically organised into larger-scale functional blocks. There is a need for local and long-distance transportation. Finally, there are fundamental constraints on the overall size, dictated by the need to supply the internal structure with the resources coming from the outside. The solutions to these constraints are also similar: re-organisation aimed at maximising the role of local transport, specialisation, powerful long-distance transportation, and embedded spaces dedicated to getting resources and waste in and out.

Can we use these similarities to optimise microchips or cities? I do not know, I am not an expert. Perhaps the models from one of the domains can be adapted to another one in order to find better solutions.

Also, I wonder if the future of megapolises is that their structure would look more like a mesh rather than a blob, simply because a mesh-like shape can increase the surface area. Whether city planning would go down that path is not clear. Time will tell.