Программируем на Python: зачатки простейшего искусственного интеллекта для построения таблиц истинности

159 прочитали

Здравствуйте, дорогие друзья. Код, который мы сегодня представляем, простейшая самообучающаяся программа для решения построения таблиц истинности логических выражений. Проще говоря — зачатки, самый примитив искусственного интеллекта для типов задания №2 в ЕГЭ по информатике.

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

Позже мы можем научить наш искусственный интеллект самостоятельно решать второе задание из ЕГЭ на алгебру логики или какие-то другие более сложные задачи. Код мы представим на скриншоте и в текстовом варианте для копирования.

Часть 1
Часть 1
Часть 2
Часть 2

А теперь текстовый вариант, уж, простите без табуляции, Яндекс Дзен её не передаёт.

import numpy as np

def sigmoid(x):

return 1 / (1 + np.exp(-x))

training_inputs = np.array([[0, 1, 1],

[1, 0, 1],

[1, 0, 1],

[0, 1, 1]])

training_outputs = np.array([[0, 1, 1, 0]]).T

synaptic_weights = np.random.random((3, 1))

print("Случайные инициализирующие веса")

print(synaptic_weights)

for i in range(10000):

outputs = sigmoid(np.dot(training_inputs, synaptic_weights))

err = training_outputs - outputs

adjustments = np.dot(training_inputs.T, err * (outputs * (1 - outputs)))

synaptic_weights += adjustments

print("Результат после обучения:")

print(outputs)

new_table = np.array([[1, 0, 0],

[0, 0, 1],

[1, 0, 0],

[0, 0, 1]])

outputs = sigmoid(np.dot(new_table, synaptic_weights))

print("Проверка:")

print(outputs)

Результат работы программы:

Результат
Результат

На этом у меня на сегодня всё. Также предлагаю подписаться на наш Ютуб канал ПиМ [ZveKa]. До новых встреч на просторах Яндекс Дзена.

Отдохнём? Полезная программа на Python, сохраняющая ваше здоровье.

Программируем на Python: создаём игру "Крестики-Нолики"

Активно готовимся к ЕГЭ по информатике: задание 17