Используете машинное обучение для наведения зеркал на солнечную батарею?

10

Я думал о солнечных коллекторах, в которых несколько независимых зеркал фокусируют свет на солнечном коллекторе, аналогично следующему дизайну от Energy Innovations.

Солнечная батарея

Поскольку в сборке этой солнечной батареи будут недостатки, я исхожу из следующих предположений (или их отсутствия):

  • Программное обеспечение знает «положение» каждого зеркала, но не знает, как эта позиция связана с реальным миром или другими зеркалами. Это будет учитывать плохую калибровку зеркала или другие факторы окружающей среды, которые могут влиять на одно зеркало, но не на другие.

  • Если зеркало перемещается на 10 единиц в одном направлении, а затем на 10 единиц в противоположном направлении, оно окажется там, где оно изначально было запущено.

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

Проблема в том, чтобы найти маленькую цель в шумном многомерном пространстве (учитывая, что каждое зеркало имеет 2 оси вращения). Некоторые из проблем, которые я ожидаю:

  • облачные дни, даже если вы наткнетесь на идеальное выравнивание зеркала, это может быть облачно в то время

  • данные датчика шума

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

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

Какие методы машинного обучения могут найти такую ​​маленькую цель в шумном многомерном пространстве?

РЕДАКТИРОВАТЬ:

Несколько дополнительных мыслей:

  • Да, вы можете рассчитать положение солнца в реальном мире, но вы не знаете, как положение зеркал связано с реальным миром (если вы не узнали его как-то). Возможно, вы знаете, что азимут солнца составляет 220 градусов, а высота солнца - 60 градусов, и вы можете знать, что зеркало находится в положении (-20, 42); теперь скажите мне, это зеркало правильно выровнено с солнцем? Вы не знаете

  • Предположим, у вас есть очень сложные измерения тепла, и вы знаете, что «при этом уровне тепла должно быть 2 зеркала, правильно выровненных». Теперь вопрос в том, какие два зеркала (из 25 или более) правильно выровнены?

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

Больше мыслей:

  • Зеркала имеют систему координат, к которой программное обеспечение имеет доступ, но программное обеспечение не знает, как эта система координат соотносится с реальным миром. Допустим, зеркало находится в положении (4, 42); что это обозначает? Я не знаю, как и программное обеспечение. Но я знаю, что если я переместлю зеркало вокруг, а затем верну его обратно в (4, 42), зеркало будет в том же положении, в котором оно было ранее. Кроме того, два зеркала могут находиться в положении (4, 42), но в реальном мире они указывают в противоположных направлениях.

  • Да, с большим количеством качественных датчиков проблему легко решить. Насколько я могу судить, Energy Innovations больше не существует, возможно, потому, что они использовали действительно потрясающие датчики, и люди сказали: «Я просто куплю солнечные батареи, они дешевле».

  • Единственные датчики в системе находятся в головке коллектора.

Buttons840
источник
Извините, что не ответил на ваш вопрос, но мне вдруг пришла идея прочитать ваш пост. Разве не было бы разумно использовать измерения другого, чтобы определить, кто имеет лучшее выравнивание, и общую цель сделать стандартное отклонение настолько малым, насколько это возможно, и чтобы каждый человек получал значение, равное или превышающее максимальное из популяции?
AlexanderBrevig
2
См. Также en.wikipedia.org/wiki/Heliostat
Роберт Харви
2
В мире, где любой мобильный телефон знает, где он находится и как он расположен, предположение, что зеркало гелиостата отсутствует, нереально.
Mouviciel
1
До тех пор, пока вы знаете, где находится ваш массив, где каждое зеркало относительно этой точки, где коллектор - относительно каждого зеркала и как ориентирован массив (по азимуту), все, что вы хотите сделать, вычислимо. Это не проблема машинного обучения, это все геометрия.
Blrfl
1
Я вижу ваше новое редактирование. Мне кажется, что ваша проблема сводится к переводу координат зеркала в азимут и угол места. Это не должно требовать массива, и при этом это не требует машинного обучения; Вероятно, это просто пара простых математических уравнений с некоторыми константами.
Роберт Харви

Ответы:

15

Траектории Солнца можно предсказать , поэтому я думаю, что вы можете уже достаточно точно выровнять зеркало, если знаете время суток, день года, а также широту и долготу.

Вам не нужно машинное обучение для этого.

Если у вас есть зеркала, которые не знают, в какую сторону они направлены (то есть вы не можете соотнести их положение с измерениями высоты и азимута), вы можете попробовать использовать камеру с широким полем зрения, поворачивая небо до яркого белое пятно появляется в поле зрения камеры. Затем вы можете переместить зеркало к этому месту (используя некоторые простые вычисления x / y), пока яркое пятно не окажется в центре камеры. Поместите темный фильтр на камеру, чтобы все, что он видит, это солнце.

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

Я предположил бы, что было бы довольно просто обнаружить облачные дни с единственным солнечным элементом или отсутствием высокой температуры на зеркале.

Роберт Харви
источник
5
Вам все еще нужно учитывать недостатки сборки, но это проблема калибровки, которая не связана с машинным обучением. Инженерия управления будет более актуальной теоретической основой.
Mouviciel
2
@FrustratedWithFormsDesigner: Полагаю, если ваши зеркала были установлены на железнодорожных вагонах. Обычные GPS и датчики нивелирования решат эту проблему.
Роберт Харви
3
@RobertHarvey: Но было бы так весело? ;)
FrustratedWithFormsDesigner
7
Тот факт, что у вас есть сотни зеркал, не имеет большого значения, поведение каждого отдельного зеркала не зависит от его соседей. Вы намеренно делаете эту проблему сложнее, чем она есть на самом деле.
whatsisname
4
@ Buttons840: Если у вас нет возможности соотнести значения ваших датчиков положения относительно фактического положения зеркала, машинное обучение не поможет вам позиционировать их. Все, что вы делаете без этих данных, по сути, будет прогулкой пьяницы. Грубая калибровка должна быть фактором дизайна. Точная калибровка может быть выполнена путем растеризации каждого зеркала против солнца и наблюдения за выходом вашего коллектора. Whatsisname абсолютно правильно: вы делаете это сложнее, чем нужно.
Blrfl
9

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

Что касается калибровки зеркал, чтобы справиться с недостатками и отклонениями от вашей модели:
шевелите одно зеркало за раз. Если ваш выход увеличивается, сохраните изменения. Сохраните изменение как calOffset. Назови это сделано.

Я согласен с Харви, машинное обучение для этого излишне.

Но, скажем, вам нужна мобильная автономная система, которая может проснуться после долгого сна и найти солнце . И мы не можем позволить себе батарею за 0,05 доллара, чтобы держать время. А так как оно мобильно, солнце может быть в боге-знающем, в каком направлении. И все люди мертвы. И у наших повелителей роботизированных солнечных батарей были серьезные проблемы, и они не знают, в какой части мира они проснулись. И их GPS не может уловить сигнал. И никто из их приятелей не знает, что случилось.

1) Протрите область одним зеркалом и отметьте любые скачки выходной мощности. Повторите это несколько раз, чтобы убедиться, что это не облако или что-то еще.
2) Теперь вы знаете положение солнца. Иди и сделай это.
3) Подожди час.
4) Смахните всю область снова с зеркалом. Шипы. Облака. Яда Яда.
5) Теперь вы знаете путь солнца. Следуйте ему до тех пор, пока не достигнете предела своих сервоприводов или пока не отключится питание.
6) Поверните на 180 градусов и подождите 12 часов.
7) Делай зачистку.
8) Из разницы в положении захода солнца и восходящего положения вы теперь примерно знаете свою широту / время года *. (По крайней мере, ваше смещение от экватора. До сих пор не знаю север с юга). Отрегулируйте соответственно.
9) Подожди день. Обратите внимание на разницу в месте восхода солнца. Теперь вы знаете, на какой стороне солнцестояния вы находитесь.
10) Ждать до 6 месяцев. Обратите внимание, где направление восхода пиков. Теперь вы знаете, зимой вы или летом, и можете смело определить путь Солнца для следующего EON.

Если какой-либо из шагов с «теперь вы знаете» не ясен, ответ будет MATH (и орбитальная механика Земли **). Мистер Мат - твой друг. Он может рассказать тебе кое-что. И если аксиома равенства или чего-то подобного не окажется ложной, вы можете даже доверять ему.

* Предложение не действует в арктических или антарктических кругах.
** Предложение также не действует на Марсе, Венере, Титане, Ио и других избранных местах.

Филипп
источник
Как уже говорилось, я исхожу из предположения, что я не знаю положения зеркал в реальном мире, и утверждение, что с некоторой математикой я могу подойти «достаточно близко», не имеет под собой никаких оснований.
Buttons840
Когда вы говорите, что не знаете положения зеркал в реальном мире, что именно вы подразумеваете под этим? У меня в телефоне есть GPS, который может дать вам координаты широты и долготы с точностью до нескольких метров.
Роберт Харви
2
Предположим, что GPS был выведен из строя из-за солнечных вспышек или бомбы Кесслера.
Мировой инженер
@WorldEngineer - Предположим, что все, кроме машинного обучения, стало неработоспособным, будет ли машинное обучение решением проблемы?
Mouviciel
@mouviciel нет, без каких-либо сервоприводов или датчиков, машинному обучению нечего учить и нечего делать после всего этого мышления.
Филипп
2

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

Учитывая все это, вам, вероятно, следует откалибровать каждое из устройств в отдельности . Вы можете сделать это автоматически, используя какой-то алгоритм поиска. Гилберт Ле Блан описывает тот, который должен работать. Другим способом было бы предположить, что данные датчика верны, и использовать их для наведения зеркала примерно в правильное положение; затем перемещайте зеркало по спирали наружу, пока не достигнете цели.

Если вы действительно хотите настроить все зеркала одновременно , может потребоваться генетический алгоритм:

  • Выберите случайную настройку для каждого зеркала и сохраните их в массиве. Повторите, чтобы у вас было несколько конфигураций зеркальных полей.
  • Затем, просмотрите конфигурацию поля зеркал, установите все зеркала для каждого и затем измерьте произведенное тепло.
  • Удалите конфигурации зеркального поля, которые генерируют наименьшее количество тепла из списка.
  • Создайте несколько новых конфигураций, рекомбинируя части конфигураций, которые остаются в списке.
  • Повторяйте до тех пор, пока конфигурации не сойдутся в одно решение или улучшение на каждой итерации не опустится ниже некоторого порога (т.е. вы достигли «достаточно хорошо»).

Кроме того, я должен отметить, что если вы попробуете метод, описанный выше, то, что вы пытаетесь оптимизировать, это калибровка датчика зеркала, а не положение. Каждый шаг займет некоторое время, поэтому вам нужно будет учитывать движение солнца в процессе. «Настройка» для каждого зеркала - это не положение, а ошибка датчика, т.е. разница между показаниями датчика и идеальным показанием.

Калеб
источник
1

Я почти ненавижу писать это.

  • Определите по солнечному элементу, светит ли солнце.
  • Если солнце светит, начните с зеркала в (0, 0).
  • Поверните зеркало до 0 по оси x.
  • Поверните зеркало вдоль всей оси Y. На каждом этапе измеряйте, увеличивается ли тепловая мощность вашего солнечного коллектора. Если это так, остановитесь и перейдите к следующему зеркалу в массиве.
  • Поверните зеркало вдоль оси X на один шаг. Повторите предыдущий шаг.
  • Если зеркало было повернуто вдоль всей оси x и y без увеличения тепловыделения, пометьте зеркало как нуждающееся в обслуживании и перейдите к x = 0 и y = 0.
  • Повторите все шаги с каждым зеркалом в массиве зеркал.
  • Подождите час и повторите все шаги.
Гилберт Ле Блан
источник
Простой, однако, этот подход далек от оптимального, предполагая, что вращение зеркал стоит энергии .....
Микера
Это не достойно публикации, хотя.
Работа
3
@ Job Ой, прости, ты хотел, чтобы SE.Programmers помогли тебе с тезисом? Я знал, что проблема с домашним заданием была своего рода проблемой, но теперь у нас есть аспиранты, которые хотят, чтобы мы выполняли свою работу?
Филипп
@mikera: Да, это грубое решение. Однако, поскольку одно из уточняющих правок было «Кроме того, два зеркала могут находиться в положении (4, 42), но в реальном мире они указывают в противоположных направлениях». Я не вижу никаких ярлыков.
Гилберт Ле Блан
@ Гилберт - вам нужно использовать информацию из предыдущих измерений. Например, двух измерений достаточно, чтобы получить оценку частичного градиента. Затем вы можете начать использовать такие методы, как градиентный спуск, чтобы найти оптимальное положение. Гораздо лучше, чем грубая сила, тем более что проблема оптимизации в этом случае, скорее всего, будет выпуклой!
Микера