Метод неопределенных коэффициентов

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

Представим функцию ff(xx1,xx2,xx3) в виде следующей ДНФ:

f(x1,x2,x3=K11x1ÚK10`x1ÚK21x2ÚK20`x2ÚK31x3ÚK30`x3Ú
ÚK1211x1x2ÚK1210x1`x2ÚK1201`x1x2ÚK1200`x1`x2Ú
ÚK1311x1x3ÚK1310x1`x3ÚK1301`x1x3ÚK1300`x1`x3Ú
ÚK2311x2x3ÚK2310x2`x3ÚÚK2301`x2x3ÚK2300`x2`x3Ú
ÚK123111x1x2x3ÚK123110x1x2`x3ÚK123101x1`x2x3Ú
ÚK123100x1`x2`x3ÚK123011`x1x2x3ÚK123010x1`x2x3Ú
ÚK123001`x1`x2x3ÚK123000`x1`x2`x3

Здесь представлены всевозможные конъюнктивные члены, которые могут входить в ДНФ функции f(x1,x2,x3). Коэффициенты K с различными индексами являются неопределенными и подбираются так, чтобы получающаяся после этого дизъюнктивная форма была минимальной. Если задавать всевозможные наборы значений аргументов <x1, x2, x3> и приравнивать полученное после этого выражение (отбрасывая нулевые конъюнкции) значению функции на выбранных наборах, получим систему 2n уравнений для определения коэффициентов K:

Пусть таблично задана некоторая функция f(x1,x2,x3). Если набор <x1,x2,x3> таков, что функция на этом наборе равна 0, то в правой части соответствующего уравнения будет стоять 0. Для удовлетворения этого уравнения необходимо приравнять 0 все коэффициенты K, входящие в левую часть рассматриваемого уравнения.

В уравнениях, где справа стоят единицы, вычеркнем слева все нулевые коэффициенты. Из оставшихся коэффициентов приравняем единицекоэффициенты, определяющие конъюнкции наименьшего возможного ранга, а остальные примем равными 0 (это можно сделать, так как дизъюнкция обращается в 1, если хотя бы один член ее равен 1). Единичные коэффициенты Ki определят минимальную ДНФ.

ПримерПример 5.f(x1,xx2,x3)=x1xx2xx3Úxx1xx2`x3Úxx1`xx2xx3Úxx1`xx2`xx3Ú`xx1`xx2`xx3.

Составляем систему:

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

K10=K20=K21=K30=K31=K1200=K1201=K1300=K1301=K2301=K2310=K2311=K123001=
=K123010=K123011=
0.

В результате данная система примет вид

Приравняем 0 в каждом уравнении все коэффициенты, кроме тех, которые отвечают конъюнкциям, содержащим наименьше число переменных:

K1211=K1201=K1311=K1310=K123111=K123110=K123101=K123100=K123000=0.

 

После этого получаем систему

Отсюда находим МДНФ для данной функции: f(x1,x2,x3)=x1Ú`x2`x3.

Описанный метод эффективен лишь для минимизации функций, число аргументов в которых не больше 5-6. Это связано с тем, что число уравнений равно 2n.








Дата добавления: 2015-08-21; просмотров: 698;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.005 сек.