Главная страница


ru.algorithms

 
 - RU.ALGORITHMS ----------------------------------------------------------------
 From : Serge Kanilo                         2:5020/400     11 Jul 2001  19:35:33
 To : All
 Subject : Re: Скобки расставить. Оптимальное вычисление выражения с несколькими п
 -------------------------------------------------------------------------------- 
 
 
 "Oleg Ponomarev" <O.Ponomarev@VAZ.RU> wrote in message
 news:3B43FACE.2DB3@vaz.ru...
 
 > > U>   Итак. Есть выражение представленное ввиде суммы произведений
 > > U> нескольких переменных. Каким образом можно преобразовать его
 > > U> так, что бы минимизировать количество умножений (очень
 > > U> "дорогой" операции в моем случае). Причем, коэффициэнты у всех
 > > U> произведений равны единице (уж не знаю, облегчит ли это задачу :)
 >
 >   Меня интересует, имеено алгоритм упрощения подобных выражений,
 > сам принцип. Просто мне кажется, что он уже существует и я не хочу
 > изобретать велосипед.
 >
 
 Возьмем полином, например
 
 1+x*y+y+y*y*y+x*y*z+z+z*z
 
 посчитаем сколько умножений используется для каждой переменной
 во всех слагаемых. Причем внутри одного слагаемого считается
 только одно умножение для каждой переменной, соответственно
 
 ?слагаемого   x    y    z
 1-е 0 0 0
 2-е 1 1 0
 3-е 0 1 0
 4-е 0 1 0
 5-е 1 1 1
 6-е 0 0 1
 7-е 0 0 1
 сумма: 2 4 3
 То есть "у" встречается чаще, так вынесем ее за скобки
 (заменим 4 умножения на одно).
 
 1+y*(x+1+y*y+z*x)+z+z*z
 
 тот же самый подход применяем опять на всех уровнях -
 на внешнем и внутри каждых скобкок.
 Получим
 
 1+y*(x*(1+z)+1+y*y)+z*(1+z)
 
 Возможно прийдем не к оптимальному результату,
 но с этого хотя бы можно начать. По крайней мере
 для полинома от одного параметра этот подход
 приведет к схеме Горнера.
 
 Второй шаг - трактовка отдельных блоков как
 самостоятельных элементов. В данном случае,
 например (1+z) вполне можно считать отдельной
 переменной и считать ее один раз.
 
 Hу а дальше ... можно наверное еще чего нибудь
 придумать :).
 
 Cheers,
 
 Serge
 
 --- ifmail v.2.15dev5
  * Origin: Excite@Home - The Leader in Broadband http://home.com/f (2:5020/400)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 Скобки расставить. Оптимальное вычисление выражения с несколькими перем   Oleg Ponomarev   03 Jul 2001 11:31:37 
 Скобки расставить. Оптимальное вычисление выражения с несколькими перем   Alexander Ryzhov   04 Jul 2001 01:55:23 
 Re: Скобки расставить. Оптимальное вычисление выражения с несколькими п   Oleg Ponomarev   05 Jul 2001 08:30:19 
 Re: Скобки расставить. Оптимальное вычисление выражения с несколькими п   Serge Kanilo   11 Jul 2001 19:35:33 
 Re: Скобки расставить. Оптимальное вычисление выражения с несколькими п   Vasily Shmelev   11 Jul 2001 10:14:54 
 Re: Скобки расставить. Оптимальное вычисление выражения с несколькими п   Oleg Ponomarev   11 Jul 2001 11:56:41 
 Скобки расставить. Оптимальное вычисление выражения с несколькими п   Maxim Plaksin   12 Jul 2001 02:38:37 
 Скобки расставить. Оптимальное вычисление выражения с несколькими п   Alex Cvetkov   13 Jul 2001 00:16:40 
 Скобки расставить. Оптимальное вычисление выражения с несколькими п   Maxim Plaksin   13 Jul 2001 21:28:02 
 Скобки расставить. Оптимальное вычисление выражения с несколькими п   Alex Cvetkov   14 Jul 2001 14:47:31 
 Скобки расставить. Оптимальное вычисление выражения с несколькими п   Maxim Plaksin   15 Jul 2001 20:33:16 
 Re: Скобки pасставить. Оптимальное вычисление выpажения с несколькими п   Vadim Goncharov   15 Jul 2001 17:37:22 
 Скобки pасставить. Оптимальное вычисление выpажения с несколькими п   Sergey Andrianov   09 Aug 2001 21:37:29 
 Re: Скобки pасставить. Оптимальное вычисление выpажения с несколькими п   Vadim Goncharov   22 Aug 2001 23:01:38 
 Re: Скобки расставить. Оптимальное вычис ление выражения с несколькими   Alexey Desyatnik   13 Jul 2001 07:53:07 
Архивное /ru.algorithms/21067e3accb81.html, оценка 3 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional