Dry
Удален
|
Помогите решить задачу,пожалуйста.Возможно,указать на путь решения. Задача.В круговой конус с размерами R,H вписан цилиндр, соосный с данным конусом.Определить размеры этого цилиндра так, чтобы он имел максимальную полную поверхность.
|
Всего сообщений: N/A | Присоединился: N/A | Отправлено: 24 янв. 2006 18:53 | IP
|
|
Ren
Долгожитель
|
Оси у них совпадают. Находите высоту цилиндра как функцию от радиуса его. Потом полную поверхность, как функцию от его радиуса. Потом оптимизируете.
|
Всего сообщений: 284 | Присоединился: октябрь 2005 | Отправлено: 24 янв. 2006 18:59 | IP
|
|
Dry
Удален
|
2 Ren спасибо большое! только вот никак не пойму,как мне выразить высоту цилиндра как функцию от радиуса.Мне ещё нужно куда-то R и H деть..
|
Всего сообщений: N/A | Присоединился: N/A | Отправлено: 24 янв. 2006 19:38 | IP
|
|
Ren
Долгожитель
|
Предсавьте рисунок в разрезе. Раасматриваете треугольник, одной стороной которого является высота, второй основание, третей сторона конуса. Высоту можно найти из подобия этого треугольника, треугольнику - половины конуса в разрезе.
|
Всего сообщений: 284 | Присоединился: октябрь 2005 | Отправлено: 24 янв. 2006 21:38 | IP
|
|
bekas
Долгожитель
|
Обозначая радиус цилиндра через r, а его высоту через h, и рассматривая подобные прямоугольные треугольники, получим соотношение: h/H = (R-r)/R Отсюда h = H*(R-r)/R Вспоминая формулу полной поверхности цилиндра как S = 2*ПИ*r^2 + 2*ПИ*r*h = 2*ПИ*(r^2 + r*h) и подставляя сюда определенное выше h, получим: S = (2*ПИ/R)*(R*r^2+H*(R*r-r^2)) = (2*ПИ/R)*((R-H)*r^2+r*R*H) Таким образом, выразили S как функцию одной переменной r и, собственно, искомая площадь зависит от выражения (R-H)*r^2+r*R*H Рассмотрим 2 случая: 1) R>=H Тогда все коээфициенты при r больше или равны нулю и собственно максимум достигается при максимально возможном значении r в пределах определения r <= R. То есть в этом случае цилиндр вырождается в плоскость конуса с нулевой высотой и его полная поверхность равна S=2*ПИ*R^2,r=R,h=0 1) R<H В этом случае имеем отрицательный коэффициент (R-H) при r^2 и, следовательно, уравнение (R-H)*r^2+r*R*H представляет собой параболу с ветвями, направленными вниз, то есть оно имеет максимум, когда производная выражения (R-H)*r^2+r*R*H по переменной r равна нулю. Приравниваем производную нулю 2*(R-H)*r+R*H = 0 и получаем значение радиуса цилиндра r=R*H/(2*(H-R)) и высоту цилиндра h=(H^2-2*H*R)/(2*(H-R)) Для вычисления высоты цилиндра вспоминаем ранее полученную формулу h = H*(R-r)/R
|
Всего сообщений: 379 | Присоединился: январь 2006 | Отправлено: 25 янв. 2006 0:28 | IP
|
|
VasRoG
Удален
|
Здравствуйте. Имеем следующую задачку: есть система уравнений y1_out = E*X11 + D*X12 + C*X13 + B*X14 . . . yk_out = E*Xk1 + D*Xk2 + C*Xk3 + B*Xk4 Здесь параметры Xij являются векторами-столбцами (из известных чисел). Буквы - коэффициенты скаляры (неизвестны). yi_out тоже неизвестны. Плюс еще одно уравнение: y_ref = E*x01 + D*x02 + C*x03 + B*x04 Здесь все элементы - скаляры. Коэффициенты те же самые, что и в предыдущей системе (т.е. неизвестны; x-ы - известны, y_ref - неизвестна). Требуется оптимизировать все уравнения по следующему критерию: 1. Вычислить сумму i = 1...k величин (|yi_out - y_ref|). Т.е. сумму модулей всех векторов отклонений yi_out от y_ref. Т.е. в итоге получим вектор, а далее 2. просуммировать все элементы полученного вектора - в итоге получим некую величину Sum. Эту величину нужно минимизировать т.е. найти такие значения коэффициентов E, D, B, C в исходных уравнениях, чтобы Sum была минимальна (в идеале - ноль). Подскажите, пожалуйста, в сторону какого метода оптимизации смотреть. Спасибо.
|
Всего сообщений: N/A | Присоединился: N/A | Отправлено: 11 фев. 2007 21:17 | IP
|
|
MEHT
Долгожитель
|
Цитата: VasRoG написал 11 фев. 2007 21:17 Здесь параметры Xij являются векторами-столбцами (из известных чисел).
А количество элементов в каждом из столбцов Xij не указано? (Сообщение отредактировал MEHT 16 фев. 2008 11:32)
|
Всего сообщений: 1548 | Присоединился: июнь 2005 | Отправлено: 11 фев. 2007 22:20 | IP
|
|
VasRoG
Удален
|
Количество элементов в каждом из векторов-столбцов Xij известно. Причем внутри любого уравнения системы оно одинаково, а в разных уравнениях - разное. Т.е., например, в уравнении y1_out = E*X11 + D*X12 + C*X13 + B*X14 каждый столбец Xij имеет размерность 5x1, а в уравнении yk_out = E*Xk1 + D*Xk2 + C*Xk3 + B*Xk4 может иметь размерность 10x1. Впоследствие, при вычислении суммы все вектора приводятся к одной (наибольшей из имеющихся) размерностей (чтобы их можно было сложить) просто дополнением нулями.
|
Всего сообщений: N/A | Присоединился: N/A | Отправлено: 12 фев. 2007 1:28 | IP
|
|
VasRoG
Удален
|
Действительно, в заданной постановке задача решения не имеет. Это можно увидеть на простом примере: предположим, что мы выбрали произвольно нужные нам коэффициенты E,D,B,C. Соответственно можем найти Sum. Например, Sum = 0.5. Выбрали другие значения для E,D,B,C и получили Sum = 0.4. Это не значит, что последние выбранные коэффициенты являются оптимальными т.к. могут существовать и еще лучшие. Но найти их мы не сможем т.к. не задали предел, к которому нужно стремиться (y_ref, в данном случае) и поэтому оценить "качество" найденных коэффициентов не сможем. Т.о. задав y_ref задача сведется к МНК. Теперь вопрос собственно. Я хочу не задавать y_ref т.к. его не знаю. А взамен предлагаю ввести ограничения на коэффициенты вида: E1<=E<=E2 ... С1<=C<=C2 В заданной таким образом постановке, задача точно имеет решение методом прямого перебора т.к. область поиска коэффициентов ограничена т.е. оптимальные решения или внутри или на границе области будут лежать. Какой можно выбрать другой метод для ускорения поиска?
|
Всего сообщений: N/A | Присоединился: N/A | Отправлено: 14 фев. 2007 14:32 | IP
|
|
Guest
Новичок
|
задача о выигрышах . имеется 3 варианта 2,75 3,25 2,50 это коэффициент производительности зерновой поли. на всех эти варианты мы должны положить определенную сумму денег и только один вариант выиграет в конце . выигрыш этого варианта должен покрыть все расходы на все другие варианты. имеем 1000 руб. надо найти сколько денег мы должны положить на каждый вариант. пример: на первую полю трачу 300 руб. на вторую полю трачу 500 руб. на третью полю трачу 200 руб. например , совет директоров выбрал первое поле, следовательно все деньги траченные на вторую и на третью пропадают. вычисляем выигрыш: 2,75*300 руб. = 825 руб. 3,25*500 руб. = 1625 руб. 2,50*200 руб. = 500 руб. как видно вариант проигрышный ( 825руб. < 1000руб). нужен гарантированный план распределение денег между этими вариантами. логика : не должны терять
|
Всего сообщений: Нет | Присоединился: Never | Отправлено: 10 марта 2007 0:25 | IP
|
|
|