Map
Форумы / Приличный Трёп [закрыт для гостей] / Алгоритм / 9 сообщений из 9, страница 1 из 1
23.07.2021, 22:26
    #3154218
Ё
Ё
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Алгоритм
Усовершенствованный брутфорс 3-sat выражения. За 6 минут на старом дряхлом ноуте в один поток выдаёт все варианты решения задачи из 50 переменных.
...
Хуск - трусливое анусное ссыкло. 3174775
Трахая козу, Квейд наивно полагает, что приобщается к великой культуре 3399661
Рейтинг: 0 / 0
23.07.2021, 22:36
    #3154223
Ё
Ё
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Алгоритм
Да, забыл. Обычный брутфорс на том же ноуте считает это же больше двух суток, может дольше, ждать не стал.
...
Хуск - трусливое анусное ссыкло. 3174775
Трахая козу, Квейд наивно полагает, что приобщается к великой культуре 3399661
Рейтинг: 0 / 0
24.07.2021, 11:35
    #3154580
Дырокол
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Колю дыры
Алгоритм
поздравляю
...
Рейтинг: 1 / 0
Нравится: Ё
24.07.2021, 20:39
    #3155760
Ё
Ё
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Алгоритм
Посчитал сложность. Если для брутфорса сложность равна O(2^n), то для моего алгоритма она равна O((7/8)^m*2^n), где n - число переменных, m - число клозов в выражении.
...
Хуск - трусливое анусное ссыкло. 3174775
Трахая козу, Квейд наивно полагает, что приобщается к великой культуре 3399661
Рейтинг: 0 / 0
24.07.2021, 20:41
    #3155763
помощник менеджера
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Алгоритм
Не вижу никакого алгоритм а
...
Рейтинг: 0 / 0
24.07.2021, 20:43
    #3155765
Ё
Ё
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Алгоритм
помощник менеджера  24.07.2021, 20:41
Не вижу никакого алгоритм а
А он есть.
...
Хуск - трусливое анусное ссыкло. 3174775
Трахая козу, Квейд наивно полагает, что приобщается к великой культуре 3399661
Рейтинг: 0 / 0
24.07.2021, 20:47
    #3155773
Ё
Ё
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Алгоритм
Ё  24.07.2021, 20:39
Посчитал сложность. Если для брутфорса сложность равна O(2^n), то для моего алгоритма она равна O((7/8)^m*2^n), где n - число переменных, m - число клозов в выражении.
Это нижняя граница. Верхняя O((7/8)^n*2^n). Для анализа формулы с 20 переменными брутфорсу требуется 1047576 итераций, моему алгоритму максимум 72570. Если конечное число решений не больше этой цифры.
...
Хуск - трусливое анусное ссыкло. 3174775
Трахая козу, Квейд наивно полагает, что приобщается к великой культуре 3399661
Изменено: 24.07.2021, 20:51 - Ё
Рейтинг: 0 / 0
24.07.2021, 21:10
    #3155802
Ё
Ё
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Алгоритм
Сам алгоритм.

1. Пронумеруем все n битов задачи.
2. Отсортируем переменные в каждом клозе выражения в порядке возрастания.
3. Отсортируем все клозы выражения в порядке возрастания переменных, которые в них входят.
4. Инициализируем переменные нулями.
5. В порядке сортировки клозов проверяем их на выполнимость, пока не найдём невыполнимую клозу.
6. В невыполнимой клозе увеличим значение последнего бита, что бы клоза стала выполнимой. Если последний бит был единицей, применим правило переноса на следующий бит задачи.
7. Повторяем пункты 5 - 7 до тех пор, пока выражение не будет выполнимо. Если при выполнении переноса мы получаем все биты равные 0, выражение не имеет решений.

Тут еще есть момент с улучшением. Если клоза выполнима и следующее её значение при увеличении последней переменной приводит к невыполнимости, пометим эту переменную признаком блокировки, указывающим, что она заблокирована предыдущей переменной клозы. При последующем распространении переноса, перенос происходит через заблокированные переменные, пока не изменится переменная, которая их заблокировала.
...
Хуск - трусливое анусное ссыкло. 3174775
Трахая козу, Квейд наивно полагает, что приобщается к великой культуре 3399661
Изменено: 24.07.2021, 21:15 - Ё
Рейтинг: 0 / 0
25.07.2021, 00:21
    #3156074
Ё
Ё
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Алгоритм
Ё  24.07.2021, 21:10
Сам алгоритм.

1. Пронумеруем все n битов задачи.
2. Отсортируем переменные в каждом клозе выражения в порядке возрастания.
3. Отсортируем все клозы выражения в порядке возрастания переменных, которые в них входят.
4. Инициализируем переменные нулями.
5. В порядке сортировки клозов проверяем их на выполнимость, пока не найдём невыполнимую клозу.
6. В невыполнимой клозе увеличим значение последнего бита, что бы клоза стала выполнимой. Если последний бит был единицей, применим правило переноса на следующий бит задачи.
7. Повторяем пункты 5 - 7 до тех пор, пока выражение не будет выполнимо. Если при выполнении переноса мы получаем все биты равные 0, выражение не имеет решений.

Тут еще есть момент с улучшением. Если клоза выполнима и следующее её значение при увеличении последней переменной приводит к невыполнимости, пометим эту переменную признаком блокировки, указывающим, что она заблокирована предыдущей переменной клозы. При последующем распространении переноса, перенос происходит через заблокированные переменные, пока не изменится переменная, которая их заблокировала.
Еще ускорение нашел. К каждой переменной добавить id клозов которые изменяются при изменении этой переменной и строить обход клозов не в лоб по очереди, а в порядке их изменения. В результате получается граф зависимостей переменных и частей формулы. И мне кажется, что так можно даже алгоритм PPSZ обогнать или приблизиться к нему. Возможно, если дальше проанализировать этот граф обхода, можно найти зависимости выполнимых выражений от невыполнимых.
...
Хуск - трусливое анусное ссыкло. 3174775
Трахая козу, Квейд наивно полагает, что приобщается к великой культуре 3399661
Изменено: 25.07.2021, 00:26 - Ё
Рейтинг: 0 / 0
Форумы / Приличный Трёп [закрыт для гостей] / Алгоритм / 9 сообщений из 9, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали тему (1): Анонимы (1)
Читали форум (3): Анонимы (1), Bing Bot, Yandex Bot 2 мин.
Пользователи онлайн (4): Анонимы (2), Bing Bot, Yandex Bot 1 мин.
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]