In GoTo, we taught our neuron points, XGBoos, SVMs, and other random forests, and then something came up to us - we talk a lot about technology and tell almost nothing about the areas in which they can be applied.
We decided to correct this mistake by a series of articles in which we will talk about different areas with unexpectedly large amounts of data, interview analysts and developers, tell you about the projects that we decided to try to do at school and so on.
And we will start with some exotic spheres - urban planning and architecture.
If you want to know the details, read the interview with the technical director of the analytical company Habidatum and the curator of the programming and architectural projects from MARCHI - welcome under cat.
Let's start with urbanism.
Urbanism is a science that studies the development of various urban systems (transport, pedestrian infrastructure, ecology, health care and others), their interaction with each other and with the residents of the city.
Analysts in this area collect data from a large number of sources: for example, data on the movement of public transport, data of mobile operators, soc. networks - and use them to study the functioning of the environment (who uses it and when, which streets are the most loaded, etc.) and to predict its behavior after innovations. Everything that is moving and not moving on the streets is an object of study for urbanists.
Technical director of Habidatum analyst Vadim Smakhtin will tell more about this area.
So, let's begin. Please tell us who you are and what you do?
My name is Vadim, I am the Technical Director of Habidatum. I am engaged in designing various systems, services and devices for working with data. For over five years I have been developing software for visualization and analytics of data related to urban topics. Sometimes directly involved in analytical projects.
In fact, in the company I am a “layer” between programmers and urbanists.
Tell us about Habidatum. What do you do?
My friends and I founded Habidatum about five years ago. Both then and now we are engaged in data analytics for architects and city planners, who have questions about the characteristics of the environment. If they want to know how the environment is used, how it will react to innovations (construction of new buildings, conversion of the roadway to the pedestrian zone ...), how to optimize its use, etc., they come to us. Also recently we sell our analytical software.
As a technical director, I am responsible for the architecture and specification of our software solutions and oversee their development. Now we have a whole line of internal and external products, one of which is the Chronotop data visualization system.
What kind of chronotope?
This software is for architects and city planners who need to analyze different data flows, not only in the spatial aspect, but also temporal. We have developed methods, such as the space-time cube, that allow you to do this without serious consequences.
In addition, Chronotope is also used by companies that need to provide access to their data to analysts and the press, but who cannot, for reasons of confidentiality, do this directly. In any case, when raw data cannot be shared, we help clients create ready-made visualization.
Are there analogs of Chronotope?
A chronotope is quite a niche system, so it’s very difficult to talk about any direct competitors. There are GIS systems like QGIS and ArcGIS, there are data visualization systems like, for example, “Tableau”; there are analytical packages that do not have their own visualization - and there are practically no products that would combine both functions. There are of course ArcGIS, which even released their space-time cube, but they have it static, so the functionality is extremely limited. Plus they have this desktop application, and everything works in the cloud.
But you need to understand that we basically do not sell the Chronotope as a separate product. We mainly use it as a sale of data access with great functionality for analysis. This is a rather innovative idea, it seems no one else does. The idea is that we have some data sources from partners with whom we have an agreement (for example, cellular operators or fiscal data operators), and we sell to designers access to them not in raw form, but in the interface. So our business model regarding Chronotope is such a hybrid model of selling software and data together. Yes, other companies have their own marketplace data, but there you get just pieces of data that are not synchronized in time, and here you get everything in a convenient way and aligned with each other in time and space.
Are there any mathematical or statistical models in the Chronotope or is it just about visualization?
Initially, yes, it was only about visualization. Of course, there were some basic statistics calculations, but nothing like that. But now, after we managed to successfully launch the graphics engine in the cloud, we screwed the anomaly detection system to it, which indicates to the analyst interesting places that you should pay attention to. The system also has an open API that allows you to write your own detectors. This is still quite an experimental thing, but the release is coming soon.
Also now we are trying to use “Chronotope” to simulate the behavior of the environment, the analysis of post-effects and the predictive construction of a space-time cube.
Post effects?
Post-effects are changes in the state of the environment after the execution of some design decisions. For example, here we set a cafe at this point and want to predict how this will affect the flow of people in the district, the profits of other businesses and so on. Those. we make a change to the system and look at changes in all of its indicators.
Can you tell me about your stack?
The rendering engine itself is written on the pros, we actively use CUDA and OpenGL shaders, which draw a voxel volume. The back is mostly written in Python (Django). Of course, perhaps this is not the best design solution, but, since at first, we aimed to minimize the entry threshold for new developers, Python seemed to be the best choice. Of course, Python is convenient for writing analytical modules, but the entire infrastructure is rather strange to write on it. Now we use the microservice infrastructure, so soon we will most likely rewrite the service modules. On the frontend, everything is pretty standard, except, perhaps, TypeScript, which we added in one of the first release versions. From frameworks - React and Redux
What kind of research does the research department do?
Basically, this is an analysis of the functions of a territory, at what time they work, an analysis of sociodemography in a territory — what people consume and when a territory, an analysis of financial flows — how much people spend and in what periods of time, and attempts to build mental maps — what people think of territory as they say about her and so on.
Can you tell a couple of examples?
In principle, all projects are on our website, where you can see more.
From the interesting - we did analytics for several areas of London, where we studied the dependence of the cost of land and apartments on the behavior of people on the streets, their feedback on local establishments, and so on. This allows you to determine the most important factors when a person chooses a place of residence and improves the quality of new areas.
There are projects for sports events . Here we are engaged in space-time coordination. For example, if we have a match with a large number of fans, then we can understand how we can dissolve both the local population and the fans in space and time. This allows you to increase the density of space use and, of course, avoids conflicts.
There is a project in Dubai , where we examined mobile data and looked at how different patterns of people's behavior could be analyzed on their basis. As, for example, the behavior pattern inside a shopping center is different from a residential area.
What kind of people do analysts have for you?
Basically, all analysts are geographers or people who have graduated from the Urban High School. There are also architects who are often involved in project management. All these people do not necessarily know how to program, but we are trying to develop an atmosphere in which people will be closer to technology — we develop communication between developers and analysts. This allows a little "smudge" examination, so people are much easier to catch bugs and problems at their level. And of course, developers cannot develop a system for data visualization, the nature of which they do not understand at all.
Are programmers involved in the work of analysts?
They are mainly engaged in the development of tools. Although, of course, we have a date of the Sains team, which is engaged in the development of the needs of analysts for specific projects. Those. Analysts look at the project, analyze it through the toolkit, and then make up the TC, if they need to do something that goes beyond.
For example?
There is a sentiment analysis, word2vec to search for synonyms, topic modeling and other NLP. This, of course, is not a super advandst of things, but our work is not so much in the development of bleeding edge methods as in the use of ready-made algorithms for the needs of the city and construction. Therefore, we are also looking for developers who are interested in urban design and everything connected with it. It would be hard for us to work, for example, for people interested in sports machine learning, in which the nature of the data is almost not important. Our tasks are not in knocking out extra percent from the model, but in understanding the specifics of the data; therefore, it is the interest to the topic and the ability to communicate with relevant specialists that are important.
In general, how much do analysts need to be able to program if you have special commands for this?
Of course, we always had the idea to create a kind of universal soldier who knows how to program and analyze, but in general this concept does not quite work. Anyway, the team as a result is balanced, therefore people who program better - program more, those who write stories well according to data - write stories. But in general, of course, yes, programming will not hurt anyone. It is easier to calculate some statistics yourself or to make a simple preprocessing of data, the only question is how much time to devote to it.
Where do you advise to go to study the future analyst from the world of urbanism?
We have a large number of children from the Higher School of Urban Studies. I don’t know how it is in terms of programming, but in terms of urban education, it’s a good education. Well, for programming there is a huge amount of online and just courses.
From the programmer's point of view, it seems to me that you can go to any school that analyzes data (like the SAD, for example), get the basics of machine learning and statistics there, and then start doing some projects related to the city.
But not a single urbanist, comrades.
The architecture also has a number of tasks in which IT greatly simplifies life. These are tasks related to the study of the maintenance of buildings and the tasks of automated design.
Milan Stankevich, Associate Professor of the Center for Architecture and Computer Technology at Moscow Architectural Institute, will tell us about this.
Please tell us who you are and what you do?
Architect, Master of Architecture,
Associate Professor of the Educational and Scientific Center of Architecture and Computer Technology MARHI.
Member of the Union of Moscow Architects
Curator of Intensiv-Pro “Algorithmic Design and Digital Production” in MARSH
Chief Architect of projects in Tsimailo-Lyashenko and Partners.
')
Mainly engaged in the design of buildings and everything that can be called architecture.
Head of the master's theses at the Moscow Institute of Architecture.
All that is higher is a formality.
In fact, I work as part of an architectural bureau in a team of architects on various projects. Mostly residential and public buildings. In addition to architectural solutions, we are engaged in building information modeling tasks. As part of working with students, we most often deal with research projects that involve the use of digital tools, both in the design process and in the concepts themselves.
Why did you become an architect?
I entered the architectural one on the advice of relatives, but only in the third year I understood what kind of architect I wanted to become, after joining the group to the German prof. Michael Aichner.
Also, having been a guest in Munich, Barcelona, ​​Rotterdam, Delft, London, namely, in the architectural schools located there, he was greatly inspired by the ideas and ideology of local schools.
Why did you decide to engage in IT architecture? What attracts you to this?
Very simple.
I am interested in the root causes of certain processes and why they are so arranged. Therefore, at the moment when everyone was interested in the result obtained in 3Ds max, for example, (spectacular visualization), it seemed that it was much more important to find out why and how one or another three-dimensional form is modeled by a computer, why it is digitized in that way. At this moment, an increasing interest began to be shown in Rhinoceros 3D, where the literacy of building geometric forms is inextricably linked with an understanding of the logic of the program itself.
We found out why programming for urbanists. And why is it for architects?
This question is best answered with examples.
In general, without knowledge and understanding of the principles of programming, it is not so easy for architects to understand the possibilities of computer technology, shaping, for example, how a computer simulates a three-dimensional environment, works through information.
Some examples of use are:
http://www.zha-code-education.org/
http://drl.aaschool.ac.uk/portfolio/osteobotics-3/
In general, in the design process, architects are faced with all sorts of data and information they need. Architecture as a profession requires working with quantitative and qualitative parameters, therefore there are a lot of scales and levels in which programming takes place and can take place.
Most clearly about programming in architecture can most likely tell
Michael hansmeier
or Mark Burri .
At the moment, more and more directions in the architectural activities in which programming is taking place.
The architecture operates with patterns, elements and blocks, therefore, when designing, the interaction between “patterns” or patterns is very good at programming tasks, the main thing is to know how to formalize tasks.
What area of ​​research at the interface of programming and architecture interests you most? Tell us about interesting projects in your area.
Analysis of environmental data and adaptation of architectural elements to individual needs if in general.
Of the areas of interest, it is possible to distinguish those involved in some of the European companies.
The company unsense is engaged in an interesting direction. They explore the possibilities of integrating digital technology into architecture in order to connect it somehow with human feelings.
Or a project for London , which proposes to make it more pedestrian. The entire analytical part allowed us to identify the final “pattern” of pedestrian zones in the city and to find unsightly spaces in order to improve them.
Do you have any ideas about the application of IT technologies in architecture, which have not yet reached out?
If in general: modeling of particles and the formation of spaces, taking into account energy flows and emotional states. A complex combination of knowledge modeling the dynamics of fluids (particles), environmental analysis and the effective and comfortable use of space for each person.
But in particular, the topic touched upon in my thesis is more interesting now, namely, the renovation of residential low-rise blocks and their transition to a smart “regenerating” environment. In practice, this is the effective use of architectural elements in a smart city, the connection of Iot (internet of things, Industry 4.0, with the capabilities of existing residential buildings, the self-organization of society, the participation of residents in the architecture of renovating their homes)
Can ordinary programmers help you in your research?
They can, if the architects realize that the programmers themselves can. While this understanding is very small, at least in the Russian Federation.
More specifically, the tasks of the architect must be differentiated.
Some are conceptual-analytical — help in making decisions where data collection and analysis is required, i.e. consideration of the initial information about the site or area of ​​design. There are many subtasks for analytics, depending on the scale, city planning is a level or a very elemental, level of a door handle.
Other conceptual and technical - preliminary calculations, conclusions, allowing to make a decision, constructive calculations, climate and other calculations, flows of people, economic indicators, etc.
The third conceptual and artistic ones are those related to architecture as a discipline using mathematics, geometry, physics and chemistry to express the artistic image of space, i.e. let's call it shape programming.
In any tasks there are also two aspects - the presentation of information (any calculation, analysis, etc.) and the calculation itself, its reliability, the possibility of processing information).
So programmers often just need to understand which niche to integrate into from a complex task.
The above are only project tasks.
And there are still a number of tasks that are needed both in the construction process and in the operation of facilities. Well, design and production are getting closer, because, for example, programmers will definitely need digital production of architectural elements - without them, communication between machines and architects cannot be set up.
As far as exploitation is concerned, we are moving to smart systems, a smart city, etc. which separately touches upon the topic of working in a bundle of architects and programmers for organizing devices, honey technological solutions, and a host of other systems, automation, security, and management of buildings, space, etc.
What does your department do?
At the department we carry out various educational and research activities.
Basically, all activities are aimed at studying the relationship of architects and computer technology. I would like to deal more with the relationship of the architecture itself, people and digital technologies.
So far, we have a fairly wide profile of studying various tasks.
In particular, there are 4 disciplines from our department for students of the Moscow Institute of Architecture and we also prepare our own Masters. For Bachelors 1,2 course we have - Computer Composite Combinatorial Course. There, students through a series of tasks from the compilation of abstract compositions are transferred to architectural fantasies. They do 3D modeling in 3dsmax.
For the 3rd course - Computer graphics, where students get acquainted with a large number of software that allows you to analyze projects and draw up architectural documentation.
And for masters - Digital Parametric Forming Tools and Urban Studies using GIS.
In these courses, students are introduced to a wider range of software and begin to use elements of visual programming.
Where to study programming architects? How? Where to run? What to study before that? Are there open-source projects / studies on this topic?
In this case, it’s worth talking about both. And about programmers, and about architects. In fact, it is easier for programmers to see what tasks and research architects need.
First, it seems that architects need a general knowledge of computer science and IT technologies.
You can start with school years or with open courses on the Internet and free access.
Secondly, of course, there is a specialization, and on each topic, of course, there are also open source projects and studies, but they are less common.
At times they go into the format of seminars and workshops.
If we talk about high-quality resources, they are mainly conducted by foreign schools.
True, if this is a format of a workshop, and especially a thematic one, then often it goes into commercial history and costs the participants money.
And so basically you can see projects in the field of architecture and IT technologies at various festivals such as https://www.smartgeometry.org/
or in directions can be on the portals of technological institutes
ETH Zurich
ITKE
SciArch
MIT Department of Architecture
AA School of Lonson, DRL
The same institutes conduct numerous workshops that examine a particular topic in the field of architecture and IT.
If we talk about the Russian Federation, then all research projects, courses on this topic, as well as events are mainly local initiatives and are not institutional.
There are a few areas that carry out:
Intensive PRO: Algorithmic design in MARSH, SimplexNoise, ShukhovLab, Softculture.
Or a bunch of IT and architecture takes place within the framework of individual disciplines within the process of teaching architecture at MARHI and MARCH.
The list of online resources is also small, because relates more to the acquisition of skills and training in working with programs such as Grasshopper, Dynamo for Revit. To a lesser extent, you can find online courses in a particular area of ​​architecture, mostly they are common.
There are few open research resources. One of these in 2011 worked - The branch point .
As for online courses overseas, we can recall
https://thinkparametric.com/
http://www.grasshopper3d.com/page/tutorials-1
and there links
http://designalyze.com/software/grasshopper
http://digitaltoolbox.info/ , etc.
www.lynda.com
they focus more on learning skills.
There are resources that launch individual companies.
https://provingground.io
https://kierantimberlake.com/
http://www.carloratti.com
http://www.co-de-it.com
https://theverymany.com/
How fast do architects learn programming?
In general - hard and long.
In particular, it depends on at what stage of its development a person starts studying.
Most of the work of the architect consists in combining elements and information about them, obtaining the necessary parameters (areas and volumes), because the study of programming as another layer of information is quite complex, it can be a laborious task.
Also, the specificity of computer-aided design programs assumes an already defined set of elements and rules with which the architect operates (there are plenty of them too). The further and more the architect works in this or that program, the more familiar he is to him, and the new (programming languages) can be more easily understood. But, due to the fact that the software market for design does not stand still, once every three or five years, architects have to adapt to new interfaces or new program features.
Therefore, programming is easier to master before mastering the design software or afterwards. So it seems more humane and easier to adapt.
And vice versa? Is it hard for a programmer to get into the field of architecture? Is it worth it?
, , .
, .
, .
, .
.
— , , .
- .
.
“” “”, .
. . -.
.
, .
“”, , , , , , , .
— , , . Architecture 101.
, , , .
,
“ — . . .. 2006
—
— “ ++”,
Parametricism 2.0: Rethinking Architecture's Agenda for the 21st Century
— — .
Branko Kolarevic Architecture in the Digital Age: Design and Manufacturing
IT , AD .
GoTo .
, , Habidatum, , .
, , goto (). .
, , ) , , , , , . , . , , , ) , , , )
, , Python. , , , , , , .
Face API Microsoft, . vk.com , : , , .
, .
, . .
, , , , . , . , 100 . , , , , ( ).
, , .
VAE , , , Hidden State' .
, , VAE, .
( B c H) ( F E). , , (notMNIST), . , , .
Proof of concept .
. stay tuned!
— .
, . — , — , . .
, , . .
: CycleGAN. .
. , — . ( ) .
, . , !
We hope that you have learned something new from this article and, maybe, even wanted to have a hand in these cities, villages and houses.
In turn, we will discover new areas in which analysts and data scientists are needed, rivet projects on our knees and tell you about it.
Source: https://habr.com/ru/post/427489/
All Articles