Найти в Дзене
АЛАЕВ

Опыт взаимодействия с ИИ для решения практической радиолюбительской задачи

При разработке лампового фонокорректора для частотной RIAA-коррекции мне понадобились конденсаторы с фактической емкостью 7400 пФ. Емкость не из стандартного ряда и с таким номиналом конденсаторы, к сожалению, не выпускается. Проще всего подобрать такую емкость путем параллельного соединения двух конденсаторов емкостью 6800 пФ и 680 пФ, что в сумме дает 7480 пФ. Излишек легко отыграть на отклонениях фактической емкости от заявленной. Поэтому, я купил кучку конденсаторов каждого номинала и собрался все их измерить, а потом подобрать в пары по критерию наилучшего соответствия необходимой емкости. Несколько лет назад я бы так и сделал, но современные высокие технологии, доступные каждому в наше время, остановили меня. Ведь эта задача просто создана для искусственного интеллекта (ИИ) и решается простой комбинаторикой и сравнением полученных результатов. По моему мнению, ИИ должен был подобрать конденсаторы для фонокорректора в пары за доли секунды. Быстро и безошибочно, но что-то по

При разработке лампового фонокорректора для частотной RIAA-коррекции мне понадобились конденсаторы с фактической емкостью 7400 пФ.

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

Фрагмент схемы лампового фонокорректора
Фрагмент схемы лампового фонокорректора

Проще всего подобрать такую емкость путем параллельного соединения двух конденсаторов емкостью 6800 пФ и 680 пФ, что в сумме дает 7480 пФ. Излишек легко отыграть на отклонениях фактической емкости от заявленной.

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

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

Ведь эта задача просто создана для искусственного интеллекта (ИИ) и решается простой комбинаторикой и сравнением полученных результатов.

По моему мнению, ИИ должен был подобрать конденсаторы для фонокорректора в пары за доли секунды. Быстро и безошибочно, но что-то пошло не так...
Удивительно, что слова "искусственный интеллект" и "фонокорректор" вообще встретились в одном предложении...

Я человек практичный и не верю никому и ничему на слово, поэтому я решил подготовиться и немного потренироваться. В Word я сделал небольшую табличку из 14 конденсаторов, емкости которых написал произвольно.

Случайные данные для подбора емкости
Случайные данные для подбора емкости

Две пары конденсаторов я умышленно сделал со значениями, которые и следовало отыскать при решении этой "сложнейшей головоломки" ))).

Итак, да начнется общение с великим разумом!, и я задал ИИ свой первый вопрос: "Подбери две пары конденсаторов, чтобы их параллельное включение формировало емкость, максимально близкую к значению 7400 пФ".

ИИ выдал ответ (я сократил его до итогового результата, чтобы не засорять текст):

...
Таким образом, оптимальная пара получается при выборе конденсаторов с наименьшей ошибкой относительно целевого значения:
Итоговые пары:
Пара №1: Конденсатор №3 (6789 пФ) + Конденсатор №14 (689 пФ).
Общая емкость: 7478 пФ.
Пара №2: Конденсатор №4 (6800 пФ) + Конденсатор №6 (678 пФ).
Общая емкость: 7478 пФ.
Обе пары обеспечивают практически одинаковую погрешность около 0.01%, что достаточно точно соответствует заданному значению 7400 пФ.

Я был удивлен таким выбором!, и написал ему следующий запрос: "а если подумать еще раз?".

На что ИИ выдал новый ответ (я также сократил его до итогового результата):

Давайте ещё раз внимательно рассмотрим таблицу конденсаторов и попробуем выбрать наилучшие комбинации.
...
Финальный выбор:
Лучшими вариантами являются:
Конденсатор №3 (6789 пФ) + Конденсатор №6 (678 пФ) → Общая ёмкость: 7467 пФ
Конденсатор №12 (6785 пФ) + Конденсатор №6 (678 пФ) → Общая ёмкость: 7463 пФ
Выбирайте любую пару исходя из доступности и точности вашей схемы.

На этот раз расчет был другим, но тоже неоптимальным! Тут мое терпение лопнуло, я понял, что правильного ответа я не дождусь и решил спросить ИИ напрямую: "Почему ты не выбрал пары №4 и №10, №13 и №11?".

На что ИИ с легкостью мне ответил:

Хорошее наблюдение! Давайте проверим предложенные вами пары подробнее:
Предложенные пары:
№4 (6800 пФ) + №10 (601 пФ):
6800 + 601 = 7401 , \text{пФ}
Разница составляет всего +1 пФ, что является минимальным отклонением!
№13 (6799 пФ) + №11 (605 пФ):
6799 + 605 = 7404 , \text{пФ}
Разница составляет +4 пФ, что тоже минимальное отклонение.
Общие выводы:
Предложенные вами пары действительно гораздо ближе подходят к целевой ёмкости 7400 пФ, чем ранее рассмотренные мною. Вот итоговая таблица результатов:
Номер пары Конденсаторы (№1, №2) Общая ёмкость (пФ) Отклонение (пФ)
1 №4 (6800 пФ) + №10 (601 пФ) 7401 +1
2 №13 (6799 пФ) + №11 (605 пФ) 7404 +4
Заключение:
Оптимальной парой конденсаторов является пара №4 (6800 пФ) и №10 (601 пФ), так как она обеспечивает почти идеальное совпадение с заданной ёмкостью (отклонение всего +1 пФ). Вторая хорошая пара — это №13 (6799 пФ) и №11 (605 пФ), хотя её отклонение немного больше (+4 пФ).

Что хочется сказать, глядя на все эти безуспешные попытки ИИ подобрать правильный результат!?

После таких "подборов" у меня теряется доверие к алгоритмам ИИ, которые уж точно должны безошибочно выполнять математические операции.

Сейчас мы имели дело с 14 конденсаторами и визуально могли опознать правильный ответ. А если бы исходных данных было бы 14 000? Скорее всего я бы слепо поверил результату ИИ из соображений, ну он же компьютер, он же все просчитал!!! А я так не могу, это очень сложно и долго! Значит - его ответ правильный и мы будем ему доверять! А зря...

Наши дети задают ИИ условия задачи, доверяют ему и не задумываясь воспринимают его ответы как правильные, а стоило бы подвергать проверке и сомнению.

Справедливости ради я написал для ИИ другой запрос: "Перебери ВСЕ ВОЗМОЖНЫЕ ВАРИАНТЫ соединений конденсаторов и выбери оптимальную пару, обеспечивающую емкость 7400 пФ".

ИИ задумался на несколько минут, после чего выдал так долго ожидаемый мною результат:

Для выбора оптимальной пары конденсаторов, которая обеспечит емкость 7400 пФ при параллельном соединении, мы рассмотрим все возможные комбинации двух конденсаторов из списка и найдем ту, которая даст наименьшую абсолютную разницу с заданной емкостью.
...
Анализируя полученные результаты, видим, что минимальная разница достигается при следующей паре:
Конденсатор №10 (601 пФ) и Конденсатор №13 (6799 пФ):
Суммарная емкость:
601 + 6799 = 7400 , \text{пФ}
Разница:
7400 - 7400 = 0
Это означает, что данная комбинация идеально соответствует заданному значению емкости.
Итак, оптимальный выбор:
Конденсатор №10 (601 пФ)
Конденсатор №13 (6799 пФ)
Эти два конденсатора обеспечат точно заданную емкость 7400 пФ при параллельном соединении.

Для меня этот опыт был очень полезным! Я понял, что нужно быть очень аккуратным с данными, которые мы получаем от ИИ. Рутинную работу можно и нужно передавать машине, но нужно быть уверенным в том, что запрос для решения задачи содержит важные и правильные ключевые слова, которыми в данной конкретной ситуации были "перебери все возможные варианты", только в этом случае можно надеяться на получение правильных вычислений.

Только как их можно обоснованно воспринимать, если ты не знаешь, насколько они достоверны...

Часть 2. Практическое применение метода.

Как вы уже поняли - затевалось все это для дела!

На фото ниже обмеренные конденсаторы 6800 пФ в количестве 20 шт. (зеленые) и конденсаторы 680 пФ в количестве 12 шт. (голубые).

Процесс подбора конденсаторов в пары
Процесс подбора конденсаторов в пары

Каждому конденсатору присвоен свой порядковый номер. Я уже настроился на то, что по проверенным ключевым словам ИИ мне выдаст искомые значения, но не тут то было..., у него словно испортилось настроение и он начал опять предлагать всякую ерунду, несмотря на то, что формулировка запроса была предельно точной. ИИ - ненадежный инструмент для решения подобных задач!

Пришлось немного погрузиться в программирование Python и создать вот такой код.

import pandas as pd
# Данные из таблицы
data = {
'Pорядковый номер': list(range(1, 33)),
'Ёмкость, пФ': [
6781, 6619, 6983, 6646, 6835, 6800, 7171, 6756, 6669, 6875,
6627, 6769, 6757, 6608, 6855, 7140, 7069, 7006, 6746, 6840,
685, 683, 681, 681, 693, 697, 685, 691, 676, 667, 672, 687
]
}
df = pd.DataFrame(data)
# Разделяем на две группы
group_large = df.iloc[:20]
group_small = df.iloc[20:]
# Список возможных комбинаций
combinations = []
for idx_large in group_large.index:
for idx_small in group_small.index:
total_capacitance = group_large.loc[idx_large]['Ёмкость, пФ'] + group_small.loc[idx_small]['Ёмкость, пФ']
combinations.append({
'Total Capacitance': total_capacitance,
'Large Index': idx_large+1,
'Small Index': idx_small+1,
'Error': abs(total_capacitance - 7400)
})
# Преобразование в DataFrame
results_df = pd.DataFrame(combinations)
# Нахождение минимальной ошибки
best_pair = results_df.sort_values(by='Error').iloc[0]
print(f"Пара конденсаторов № {best_pair['Large Index']} и № {best_pair['Small Index']} даёт сумму {best_pair['Total Capacitance']} пФ")

Интерпретация результатов

Запустив вышеуказанный код (просто скопируйте его и вставьте на сайте), например, здесь: https://www.online-python.com/, мы получаем оптимальную пару конденсаторов, чья суммарная ёмкость наиболее близка к требуемым 7400 пФ, разумеется в вашем случае в таблицу нужно будет ввести свои значения емкости.

Пара конденсаторов №19 и №30 дает суммарную емкость 7413 пФ
Пара конденсаторов №19 и №30 дает суммарную емкость 7413 пФ

Пара конденсаторов №19 и №30 дает суммарную емкость 7413 пФ - отклонение от заданной величины 13 пФ (0.18%).

Вторая пара конденсаторов №8 и №31 дает суммарную емкость 7428 пФ - отклонение от заданной величины 28 пФ (0.38%).

Если я ничего не напутал, то алгоритмом можно пользоваться для решения подобных задач! Во всяком случае, мои конденсаторы он подобрал!