Алексей Кривоносов
AI8 мин

Инженерные расчёты vs AI: почему LLM нельзя доверять формулы и что с этим делать

AI расчётыLLM ограниченияWolfram Alpha строительствоинженерные формулы
Читать оригинал в Telegram

Опасная иллюзия: AI считает

Инженер задаёт ChatGPT вопрос: «Рассчитай несущую способность сваи диаметром 300 мм, длиной 3 м, в суглинке с IL=0,4». Модель мгновенно выдаёт ответ — формула, подставленные значения, итоговая цифра. Выглядит убедительно. Формат правильный, единицы измерения на месте, даже ссылка на СП 24.13330.

Проблема в одном: цифра неверная. Не приблизительно неверная — принципиально неверная. Коэффициенты взяты не из той таблицы. Значение бокового сопротивления грунта не соответствует указанному показателю текучести. Формула выглядит правильно, но результат ошибочен в 1,5-2 раза.

Я проверял это десятки раз на разных моделях — ChatGPT, Claude, Gemini. Результат одинаковый: модели не считают, они имитируют расчёт.

Как на самом деле работает LLM

Большие языковые модели — это системы предсказания текста. Они обучены на миллиардах текстовых фрагментов и научились генерировать статистически правдоподобные последовательности слов. Ключевое слово — «правдоподобные», а не «правильные».

Когда LLM «рассчитывает» несущую способность сваи, она делает следующее:

  1. Распознаёт паттерн — «задача на расчёт сваи».
  2. Находит в обучающих данных похожие примеры расчётов.
  3. Генерирует текст, который выглядит как расчёт — с формулами, подстановкой, результатом.
  4. Подбирает числа, которые статистически «похожи» на правильные.

Но модель не выполняет математические операции. Она не умножает числа — она предсказывает, какое число должно стоять в ответе. Для простой арифметики (2+2) это работает, потому что таких примеров в обучающих данных миллионы. Для инженерных расчётов с таблицами коэффициентов — нет.

Конкретные примеры ошибок

За время разработки BuilderMind я собрал десятки примеров ошибок LLM в инженерных расчётах. Вот характерные:

Ошибка 1: неверные коэффициенты из таблиц

Задача: определить расчётное сопротивление грунта под подошвой фундамента по СП 22.13330. Нужно взять значение из таблицы в зависимости от типа грунта, коэффициента пористости и показателя текучести.

Что делает LLM: берёт значение «из таблицы», но это значение не соответствует указанным параметрам. Модель не обращается к реальной таблице — она генерирует число, которое «похоже» на табличное значение для данного типа грунта.

Результат: ошибка в расчётном сопротивлении на 20-40%. Для фундамента это означает либо перерасход материала (если завышено), либо риск разрушения (если занижено).

Ошибка 2: путаница между нормативными и расчётными значениями

В строительной механике различают нормативные и расчётные характеристики. Нормативное значение — это среднестатистическое. Расчётное — с учётом коэффициента надёжности. Разница может быть 10-30%.

LLM регулярно путает эти два типа значений. Подставляет нормативную характеристику вместо расчётной. Или наоборот. Формула при этом записана правильно — ошибка только в исходных данных.

Ошибка 3: неверная интерполяция

Многие нормативные значения определяются по таблицам с промежуточными значениями. Если конкретного параметра в таблице нет, нужно интерполировать между двумя ближайшими строками.

LLM не интерполирует — она «угадывает» промежуточное значение. Иногда угадывает правильно. Иногда ошибается на 50%.

Ошибка 4: подмена формул

Самый опасный тип ошибки: модель использует формулу из другого нормативного документа или другой редакции. Формула похожа, но коэффициенты другие. Расчёт выглядит правильно, результат выглядит правдоподобно, но он неверный.

Решение: Wolfram Alpha для реальной математики

Осознав эту проблему, мы в «Цифровом Стандарте» начали разделять задачу на две части: понимание контекста и выполнение вычислений.

LLM отлично справляется с контекстом: понять вопрос, найти нужный нормативный документ, определить, какая формула применима, извлечь правильные коэффициенты из базы данных.

Но вычисления должна делать система, которая для этого предназначена. Wolfram Alpha — один из вариантов. Это вычислительная платформа, которая работает с точной математикой, а не с предсказаниями.

Как это выглядит в связке:

  1. LLM определяет задачу — пользователь описывает ситуацию на естественном языке, модель понимает, какой расчёт нужен.
  2. LLM извлекает данные — из базы нормативов находит нужную формулу, таблицу коэффициентов, исходные данные.
  3. Wolfram Alpha считает — получает формулу с числами и выполняет точное вычисление.
  4. LLM интерпретирует результат — переводит число обратно в инженерный контекст.

Каждый компонент делает то, что умеет. LLM работает с языком и контекстом. Вычислительный движок — с математикой.

Разделение логики и вычислений

Принцип «разделяй логику и вычисления» — это не только про Wolfram Alpha. Это архитектурный подход.

В BuilderMind мы реализуем его так:

Слой 1: Семантический поиск. Пользователь задаёт вопрос — «какой минимальный процент армирования для колонны сечением 400x400?» AI находит нужный пункт в СП 63.13330, извлекает формулу и табличные значения.

Слой 2: Формирование расчётной модели. AI собирает формулу с конкретными значениями: As,min = mu_min * b * h0, где mu_min = 0,1% (из таблицы для гибкой арматуры), b = 400 мм, h0 = 360 мм (400 - 40 мм защитный слой).

Слой 3: Вычисление. Отдельный модуль выполняет арифметику: As,min = 0,001 * 400 * 360 = 144 мм2. Никаких предсказаний — чистая математика.

Слой 4: Интерпретация. AI формулирует ответ: «Минимальная площадь продольной арматуры — 144 мм2. Это соответствует 2 стержням диаметром 10 мм (As = 157 мм2). Пункт 10.3.6 СП 63.13330.2018.»

LaTeX → понятный язык

Отдельная задача — перевод формул из математической нотации в понятный текст. Инженеры работают с LaTeX или MathML, но заказчик не понимает σ = N/A. Ему нужно объяснение: «напряжение в фундаменте равно нагрузке, делённой на площадь подошвы».

В BuilderMind мы реализуем трёхуровневую систему:

  1. Формула в нотации СП — как записано в нормативном документе: Fd = γc * (γcR * R * A + u * Σ γcf * fi * hi).
  2. Расшифровка — каждый символ и коэффициент объяснён: γc — коэффициент условий работы сваи, R — расчётное сопротивление грунта под нижним концом сваи, A — площадь поперечного сечения.
  3. Объяснение простым языком — несущая способность сваи складывается из двух частей: сопротивление грунта под остриём + трение грунта по боковой поверхности. Чем длиннее свая и чем плотнее грунт — тем больше она выдержит.

Такой подход делает расчёт прозрачным. Инженер видит формулу и может проверить. Заказчик видит объяснение и понимает логику.

Структура ответа: формула + смысл + вывод

Мы пришли к формату ответа, который работает для инженерных расчётов:

Блок «Формула» — точная запись из нормативного документа с указанием пункта и редакции.

Блок «Подстановка» — формула с подставленными числами. Каждое число — со ссылкой на источник (таблица, пункт, исходные данные пользователя).

Блок «Результат» — вычисленное значение с единицами измерения.

Блок «Вывод» — инженерная интерпретация. Не просто «Fd = 285 кН», а «несущая способность сваи — 285 кН (29 тс). При нагрузке на сваю 200 кН запас — 42%. Допустимая нагрузка с учётом коэффициента надёжности γn = 1,15 составляет 248 кН.»

Такой формат исключает главную проблему: когда AI выдаёт число без контекста, и инженер не может проверить, откуда оно взялось.

Что это значит для практиков

Если вы инженер и используете AI для расчётов — три правила:

  1. Никогда не копируйте результат расчёта LLM в проект. Проверьте каждый коэффициент, каждое табличное значение. Формула может быть верной, а числа — нет.

  2. Используйте AI для поиска, а не для вычислений. AI отлично находит нужную формулу, нужный пункт, нужную таблицу. Но считать должна вычислительная система или вы сами.

  3. Разбивайте задачу на шаги. Не спрашивайте «посчитай несущую способность сваи». Спросите: «какая формула для несущей способности забивной сваи по СП 24.13330?» Потом: «какое расчётное сопротивление суглинка с IL=0,4 по таблице 7.2?» И так далее. Так вы контролируете каждый шаг.

Реальный кейс: расчёт теплопотерь

Покажу на конкретном примере, как выглядит правильная работа с AI при расчёте.

Задача: определить приведённое сопротивление теплопередаче наружной стены из газобетона D500 толщиной 400 мм с утеплителем 50 мм (минеральная вата) для климатической зоны Москвы.

Неправильный подход — спросить ChatGPT: «Рассчитай сопротивление теплопередаче стены из газобетона 400 мм + 50 мм минваты». Модель выдаст число. Скорее всего, возьмёт коэффициент теплопроводности газобетона 0,12 Вт/(мК) — среднее значение из интернета. Но по СП 50.13330 нужно использовать расчётный коэффициент в условиях эксплуатации Б (для Москвы), который для D500 составляет 0,147 Вт/(мК). Разница — 22%.

Правильный подход — разбить на шаги:

  1. «Какой расчётный коэффициент теплопроводности газобетона D500 по СП 50.13330 в условиях Б?» — AI находит таблицу, даёт точное значение.
  2. «Какой расчётный коэффициент для минеральной ваты плотностью 80 кг/м3 в условиях Б?» — аналогично.
  3. Формула R = 1/αint + δ1/λ1 + δ2/λ2 + 1/αext — подставляем числа в калькулятор.
  4. «Какое нормативное значение Rтр для Москвы по СП 50.13330?» — AI находит.
  5. Сравниваем расчётное и нормативное значения.

На каждом шаге AI работает с контекстом — находит данные. Калькулятор — считает. Инженер — проверяет и принимает решение.

Итог

Генеративный AI — мощный инструмент для строительной отрасли. Но не для всех задач. Работа с текстом, поиск по нормативам, генерация документов — да. Прямые инженерные расчёты — нет.

Решение — не отказываться от AI, а правильно разделять задачи. LLM понимает контекст, находит информацию, объясняет результат. Вычислительная система — считает. Инженер — проверяет и принимает решение.

В «Цифровом Стандарте» мы строим именно такую систему: AI + вычислительный движок + верифицированная нормативная база. Не потому что это красиво звучит, а потому что других безопасных вариантов нет.

Подробности разработки — в канале @svodai. Вопросы и обратную связь принимаю в @buildermind_bot.

Поделиться

Нужна консультация по строительству?

12 лет опыта, 200+ построенных домов. Помогу избежать ошибок.

Оставить заявку