Tuesday, May 25, 2021

Help for the Prometey program

1. Introduction.

Prometey 2.0 is a continuation of the mobile version of the program that will turn your mind over and expand your usual framework of understanding the things around you. It is designed to help, not replace, artificial intelligence engineers.

Prometey 2.0 is a digitized copy of a design engineer, or rather a digital twin of the development team's experience, only much more accurate and productive. This is a full-fledged artificial intelligence under the control of various neural networks, genetic algorithms and simply complex algorithms working in conjunction with each other.

Prometey 2.0 features:

 - arranges columns / pylons on the architectural plan of the building strictly within the architectural walls

- creates hundreds, thousands, tens and even hundreds of thousands of options for various locations

- finds stresses in vertical bearing elements (N, Mx, My, Mz, Qx, Qy)

- finds deformations in the floor slab

- finds the basic stresses σх and σу along the upper and lower planes of the floor slab

- finds the theoretical reinforcement of the floor slab

- determines the actual reinforcement (in bars) of the reinforcement in the floor slab based on the theoretical reinforcement isofields

- exports slab reinforcement in DXF format

- considers the specification for reinforcement

- calculates the cost of the volume of construction work, taking into account the cost of materials and work

- determines the effectiveness of each variant of the structural scheme of a building within the framework of a theory based on statistical analysis of 100,000 variants of design schemes of buildings prepared by AI

- draws up a report with all plots and saves it on the hard disk with a unique ID number

In addition to new functions, all the old functions of the mobile version remained and ported in the program:

- Express assessment of bending moments occurring in the floor slab

- Express assessment of the distribution of cargo areas of vertical structures

- And many others

In the near future, old functions will be removed from the program due to the fact that more efficient and accurate similar tools appear in the program.

2. Getting started.

Most of the controls will be refined over time, at the moment the program is in the active phase of development. Therefore, at first it will not be familiar, but we are trying to make the program better.

First, you need to drop the drawing of the architectural plan of the building into a folder along the way:

C: \ Users \ [username] \ AppData \ LocalLow \ EnionProject \ Prometey \ screenshots

The file extension must be .png, after that you need to click the Replace background button, then click load background and select the building plan of interest:

After loading the plan, we need to scale it to the required drawing mastab, for this we need to go to the Scale selection tool:

After specifying the mastab, we need to detach the floor slab, for this, go to the Floor slab nodes tool and indicate the points of the floor slab clockwise or counterclockwise:


Next, you need to add architectural walls through the appropriate tool, they are necessary for the AI when placing the columns. The AI will place the columns strictly in the architectural walls; architectural walls are not involved in the formation of the design model:


And if necessary, you can also specify the load-bearing walls, but at the same time it is advisable to leave small gaps between the wall nodes when specifying the load-bearing walls:


3. Loading and saving a model

Use the top control panel to load and save the model. The model is saved in the .sav format and this file can be transferred to other program users. All save files are located along the path in the file structure of your PC:

C: \ Users \ [username] \ AppData \ LocalLow \ EnionProject \ Prometey \ SaveModels


4. Division into cargo areas

This function is represented by three old functions:

- Slab analysis (will be removed from the program in the future)

- Efficiency pylon (will be removed from the program in the future)

- Partitioning on the square (will be removed from the program in the future)

The Slab analysis tool is a simplified calculation of a floor slab using a neural network. The result of the calculation can be seen in a split second. The neural network calculates the value of the bending moment in the floor slab at characteristic points, this is the support zone of the columns and in the middle of the slab span.

The efficiency pylon tool is a calculation of the efficiency of the column cargo areas, the essence of the algorithm is simple - all cargo areas are divided into groups and each of them contains the most loaded area. Then all zones are compared with the most loaded and their level of utilization is determined as a percentage in relation to the most loaded in the group.

 The Partitioning on the square tool splits the slab into cargo zones in which their area, column load and the position of the center of gravity of the zone are determined (blue dot)


5. Manual structural analysis 

Before starting this function, be sure to save the model, saving and loading the model is carried out through the top panel, just click on the open button at the top.

Manual analysis of the design structural scheme is carried out only in the presence of bearing pylons or columns and the perimeter of the floor slab is indicated.Currently, the calculation does not take into account the cross-section of vertical elements, specifying the dimensions of the cross-section works only for old functions (Slab analysis e.t.c.)

Solver (new) - starts the execution of a static analysis of the structural scheme

FEM (old) - creation of a finite element model. Before starting the calculation, you must execute this function. At the very bottom, the number of finite elements is indicated, a comparative table of the calculation time with the number of finite elements:


The number of finite elements over 40,000 is not recommended.

clear (old FEM) - removes leaf elements

clear (all) - removes trailing elements and all calculation options

FBX export - Exports all content in model space to a folder:

C: \ Users \ [username] \ AppData \ LocalLow \ EnionProject \ Prometey \ fbx

After exporting, for example, three variants of the calculation scheme, you will have three flight schemes in the folder at the specified path, all diagrams separately and one common for each scheme:

The element size along the edge is 400 mm (0.4 m). All finite elements are represented as triangles. When creating finite elements, the nodes of the columns and structural walls adjust to the nodes of the finite elements. Elle was made to increase the performance of the computational core of the program.

Main reinforcement - this setting sets the parameters of the main reinforcement. In particular, the diameter of the reinforcement, the spacing of the reinforcement bars and the coefficient of their overlap. The default value of 1.07, according to the authors of the program, is the average for most floor slab variations, but each engineer has the right to independently decide on its value.

DXF export is a tool for exporting all variants of design models in DXF format along the specified path:
C: \ Users \ [username] \ AppData \ LocalLow \ EnionProject \ Prometey \ SaveFiles\DXF

Saving in DXF format is carried out only for the results of the selection of the actual reinforcement:

The calculation results are:

-Support reactions (T, T*m)

-Z Displacement (mm)

-Stress sigma-x-up (T/m^2)

-Stress sigma-y-up (T/m^2)

-Stress sigma-x-down (T/m^2)

-Stress sigma-y-down (T/m^2)

-Bending moment Mx (T*m)

-Bending moment My (T*m)

-Theoretical reinforcement Asx-down (cm^2*m)

-Theoretical reinforcement Asy-down (cm^2*m)

-Theoretical reinforcement Asx-up (cm^2*m)

-Theoretical reinforcement Asy-up (cm^2*m)

-Actual reinforcement Asx-down

-Actual reinforcement Asy-down

-Actual reinforcement Asx-up

-Actual reinforcement Asy-up

-The cost of constructive solutions

Each calculation option can be moved using a beta square or deleted by clicking the red square:

The number of variants to be compared is unlimited, each new variant of the structural scheme can be simply moved to an empty space in the model. Each new variant of the structural scheme calculation is generated under the main scheme:


6. Automatic column / pylon placement

On the top left of the interface panel, you can see a brief description of the structural diagram of the building:

RZsum = sum of all reactions of the supports in the nodes of columns / pylons, vertical load from the 1st floor

RZmin = minimum value of the reference reaction

RZmax = maximum value of the reference reaction

DZsum = sum of vertical displacements of all finite elements

DZmin = minimum vertical movement (in absolute value it is maximum)

DZmax = maximum vertical travel

Asum = sum of all theoretical reinforcement over all finite elements

Pylons = number of vertical elements (columns / pylons)

n = number of finite elements

Now a detailed instruction on the buttons on the right:
kill all process - an abnormal termination of the AI process, but due to the complexity of the algorithms for distributing the processes of using the multi-threading of the CPU and GPU, it is impossible to resume the AI after an emergency stop. To resume work, you will have to return to the main menu and restart Prometey. Therefore, it is very important to save the building plan model before the AI starts working.

RUN AI is the most important function of the entire program, it launches a complex process of operation of many neural networks, genetic algorithms and simply algorithms for using the multi-threading of the CPU and GPU. Simultaneous launch of the number of n clients of the program is not conditionally limited. The conditional boundary is the capabilities of your personal PC. It is not recommended to bring the GPU or CPU over 90% utilization.
This function causes an infinite recursion of itself, that is, it is an eternal cycle (600 years of work) in which the AI ​​tries to place 1 column / pylon per #subiter (number of sub steps) per placement attempt for the number of #iter (total number of attempts). It's hard to figure this out without experimenting.
By default, the number of column / pylon placement iterations is 20,000, depending on the task, this number can be changed in one direction or another. Also, depending on the tasks, you can change the number of substeps that the AI ​​performs in the form of an agent (red square on the plan).

step is the size of the substep in meters. That is, with a sub-step size of 0.2, the total maximum path that the AI ​​will try to make is 0.2 * 300 = 60 meters. It is not recommended to increase the step size, on the contrary, it is recommended to decrease it from the default value. This value has a direct proportional effect on the speed of the AI ​​(as well as other parameters). At lower values ​​than 0.2, the accuracy of the position of the columns / pylons increases.

% is the accuracy of neural networks, as practice has shown, even with 5% accuracy, AI shows phenomenal results. But in any case, an increase in accuracy entails an increase in the accuracy of the overall problem. What is right for you, only the practice of using AI in your tasks will show.

time is the pause time (in seconds) between iterations, the default value is 0, but due to multithreading and the simultaneous operation of several agents (program copies), they sometimes affect the results of each other and it is recommended to set a small artificial delay value, for example, a value of 0 ,one. Only practice, the core frequency, the number of cores / threads, the bandwidth of the CPU bus, and much more will show you what will be more convenient for you.

radius is the approximate spacing between pillars / pylons that the AI ​​will try to keep within a slight deviation from the given value. You can, of course, turn off "approximation", but I decided to teach AI to improvise within reasonable limits.

MLFE is the finite element size for the FEM kernel based on Csparse in which the Cholesky factorization is implemented. In the future, an alternative computational kernel will also be available in the form of finite element machine learning.

Greate FEM is a function to preliminary estimate the number of finite elements (old mesh core):

At the top left, you can see the number of elements, it falls within the recommended range. To speed up the calculations of the schemes of the prepared AI, the edge optimization of finite elements was removed, so angularity is visible on the inclined sections of the edges of the plates.

Also, to speed up the execution of calculations, not the vertices of finite elements are adjusted to the nodes of vertical structures, but vice versa. Due to this, it was possible to achieve a significant increase in the productivity of constructing mesh models and their calculation accuracy without distorting the results of the calculations themselves.

7. AI report on each variant of the calculation scheme

All reports, regardless of the author (AI or human), are stored along the specified path:
C: \ Users \ [username] \ AppData \ LocalLow \ EnionProject \ Prometey  \ rtf
The report contains the basic information already in the title, for example:

20210320092949274 - 8,422334.rtf

The numbers 20210320092949274 are a unique ID number for each calculation, at the same time it is a token for the Blockchain Solver mode.
The numbers 8,422334 are the efficiency of the design / design scheme. The formula by which this efficiency is determined:

 Efficiency = 1.240741 + 4.328648 + 0.6837286 + 2.169216 = 8.422334

The formula is the sum of 4 parameters A + B + C + D, where:
A = number of pylons / 54
B = DZmin / approximate span / 200
C = RZsum / Pilons / 54
D = AsSum / Nfem / 8;
 
The lower each component and their sum, the more effective the scheme in relation to other options:


In the near future, the report will be supplemented with data on reinforcement and concrete, as well as the cost of the structure as a whole, taking into account the cost of work.


9. General recommendations

1. At first, the AI ​​will try to navigate in an unfamiliar situation, imagine that you are placed in a maze and asked to find a way out, in the same way with AI. Just let him work quietly for you.

2. To reduce the load on the GPU, it is recommended to minimize the program to tray. The fact that you are watching him or not watching the AI ​​will not work better or worse, he is not human.

3. Now you can watch not only a burning fire, falling rain, but also just watch how the AI ​​works.

4. The chance that the AI ​​will create two identical options for you tends to one divided by the Graham number.

5. Be sure to compare the results of calculating the AI ​​and the calculation of the same scheme performed in your favorite program. You won't find any difference.

6. Load the AI ​​with the most complex circuits and send to the telegram channel those cases where the AI ​​worked clearly incorrectly, this will help develop the AI ​​to higher intellectual abilities.

7. Free up more free space on the C drive, although the program itself occupies 70 MB, this is basically code that generates up to ten gigabytes of information in just one day.




No comments:

Post a Comment