Używasz uczenia maszynowego do celowania zwierciadeł w układ słoneczny?


10

Myślałem o kolektorach słonecznych, w których kilka niezależnych luster skupia światło na kolektorze słonecznym, podobnie jak poniższy projekt Energy Innovations.

Panele słoneczne

Ponieważ w montażu tego układu słonecznego wystąpią wady, przyjmuję następujące założenia (lub ich brak):

  • Oprogramowanie zna „pozycję” każdego lustra, ale nie wie, w jaki sposób ta pozycja odnosi się do świata rzeczywistego lub innych lusterek. Przyczyni się to do złej kalibracji lustra lub innych czynników środowiskowych, które mogą wpływać na jedno lustro, ale nie na inne.

  • Jeśli lustro przesunie 10 jednostek w jednym kierunku, a następnie 10 jednostek w przeciwnym kierunku, zakończy się w miejscu, w którym się pierwotnie zaczęło.

Chciałbym użyć uczenia maszynowego do prawidłowego ustawienia lusterek i skupienia światła na kolektorze. Spodziewam się, że podchodzę do tego jako do problemu optymalizacji, optymalizacji pozycji lustra, aby zmaksymalizować ciepło wewnątrz kolektora i moc wyjściową.

Problemem jest znalezienie małego celu w hałaśliwej, przestrzennej przestrzeni (biorąc pod uwagę, że każde lustro ma 2 osie obrotu). Niektóre przewidywane przeze mnie problemy to:

  • pochmurne dni, nawet jeśli natkniesz się na idealne ustawienie lustra, może być wtedy pochmurno

  • zaszumione dane czujnika

  • słońce jest ruchomym celem, porusza się po ścieżce i podąża inną ścieżką każdego dnia - chociaż możesz w dowolnym momencie obliczyć dokładną pozycję słońca, nie wiedziałbyś, w jaki sposób ta pozycja odnosi się do twoich lusterek

Moje pytanie nie dotyczy układu słonecznego, ale możliwych technik uczenia maszynowego, które pomogłyby w rozwiązaniu problemu „małego celu w hałaśliwym, dużym wymiarze przestrzeni”. Wspomniałem o układzie słonecznym, ponieważ był on katalizatorem tego pytania i dobrym przykładem.

Jakie techniki uczenia maszynowego mogą znaleźć tak mały cel w hałaśliwej, przestrzennej przestrzeni?

EDYTOWAĆ:

Kilka dodatkowych myśli:

  • Tak, możesz obliczyć pozycję słońca w prawdziwym świecie, ale nie wiesz, w jaki sposób pozycja lusterek jest powiązana ze światem rzeczywistym (chyba, że ​​w jakiś sposób się nauczyłeś). Być może wiesz, że azymut słońca wynosi 220 stopni, a wzniesienie słońca wynosi 60 stopni, i możesz wiedzieć, że lustro jest w pozycji (-20, 42); powiedz mi teraz, czy to lustro jest prawidłowo ustawione względem Słońca? Nie wiesz

  • Załóżmy, że masz bardzo wyrafinowane pomiary ciepła i wiesz „przy tym poziomie ciepła muszą być poprawnie ustawione 2 zwierciadła”. Teraz pytanie brzmi: które dwa zwierciadła (spośród 25 lub więcej) są prawidłowo wyrównane?

  • Jednym z rozważanych przeze mnie rozwiązań było przybliżenie poprawnej „funkcji wyrównania” za pomocą sieci neuronowej, która przyjmowałaby azymut i elewację Słońca jako dane wejściowe i wyjściowe dużej tablicy z 2 wartościami dla każdego lustra, które odpowiadają 2 osiom każdego lustra. Nie jestem jednak pewien, jaka jest najlepsza metoda treningu.

Więcej myśli:

  • Lustra mają układ współrzędnych, do którego oprogramowanie ma dostęp, ale oprogramowanie nie wie, w jaki sposób ten układ współrzędnych odnosi się do prawdziwego świata. Powiedzmy, że lustro jest w pozycji (4, 42); co to znaczy? Nie wiem, podobnie jak oprogramowanie. Ale wiem, że jeśli przesunę lustro wokół, a następnie przeniosę je z powrotem do (4, 42), lustro będzie w tej samej pozycji, w jakiej było wcześniej. Dodatkowo dwa zwierciadła mogą znajdować się w pozycji (4, 42), ale w prawdziwym świecie wskazują w przeciwnych kierunkach.

  • Tak, przy wielu czujnikach jakości problem jest łatwy do rozwiązania. Energy Innovations nie działa, co mogę powiedzieć, prawdopodobnie dlatego, że zastosowali naprawdę niesamowite czujniki, a ludzie powiedzieli: „Po prostu kupię panele słoneczne, są tańsze”.

  • Jedyne czujniki w systemie znajdują się w głowicy kolektora.


Przepraszam, że nie odpowiedziałem na twoje pytanie, ale nagle wpadłem na pomysł, aby przeczytać Twój post. Czy nie byłoby rozsądne wykorzystanie pomiarów drugiego, aby ustalić, kto ma najlepsze wyrównanie, i ogólny cel, aby odchylenie standardowe było jak najmniejsze ORAZ że każdy powinien wytwarzać z populacji równe lub większe niż maksimum?
AlexanderBrevig


2
W świecie, w którym każdy telefon komórkowy wie, gdzie jest i jak jest ustawiony, założenie, że lustro heliostatu nie jest nierealne.
mouviciel

1
Tak długo, jak wiesz, gdzie jest twoja tablica, gdzie każde lustro jest względem tego punktu, gdzie kolektor jest względem każdego lustra i jak tablica jest zorientowana (azymutalnie), wszystko, co chcesz zrobić, jest obliczalne. To nie jest problem uczenia maszynowego, to tylko geometria.
Blrfl

1
Widzę twoją nową edycję. Wydaje mi się, że twój problem sprowadza się do przełożenia współrzędnych lustra na azymut i wysokość. Nie powinien wymagać tablicy ani uczenia maszynowego; to prawdopodobnie tylko kilka prostych równań matematycznych z pewnymi stałymi.
Robert Harvey

Odpowiedzi:


15

Ścieżki słoneczne można przewidzieć , więc wyobrażam sobie, że możesz już dość dokładnie ustawić lustro, jeśli znasz porę dnia, dzień roku oraz szerokość i długość geograficzną.

W tym celu nie potrzebujesz uczenia maszynowego.

Jeśli masz lustra, które nie wiedzą, w którą stronę są skierowane (tj. Nie możesz skorelować ich pozycji z pomiarami wysokości i azymutu), możesz spróbować użyć kamery o szerokim polu widzenia, zamiatając niebo aż do jasności biała plama pojawia się w widoku kamery. Następnie możesz przesunąć lustro w kierunku tego miejsca (używając prostych obliczeń x / y), aż jasny punkt zostanie wyśrodkowany w polu widzenia kamery. Załóż ciemny filtr na aparat, aby wszystko, co widzi, to słońce.

Jednak twoje pytanie stwierdza, że nie wie, gdzie lusterka są spiczaste. Jeśli masz czujniki na lusterkach, które informują o ich położeniu, masz możliwość skorelowania tych pomiarów pozycji z rzeczywistymi liczbami azymutu i wysokości.

Wyobrażam sobie, że wykrycie pochmurnych dni za pomocą jednego ogniwa słonecznego lub braku ciepła w lustrze byłoby dość proste.


5
Nadal musisz wziąć pod uwagę niedoskonałości zespołu, ale jest to problem z kalibracją, który nie wymaga uczenia maszynowego. Inżynieria sterowania stanowiłaby bardziej odpowiednie ramy teoretyczne.
mouviciel

2
@FrustratedWithFormsDesigner: Przypuszczam, że jeśli twoje lustra byłyby zamontowane na wagonach kolejowych. Powszechnie działające czujniki GPS i niwelacyjne rozwiązałyby ten problem.
Robert Harvey

3
@RobertHarvey: Ale czy byłoby to tak zabawne? ;)
FrustratedWithFormsDesigner

7
Fakt, że masz setki luster, nie jest niczym wielkim, zachowanie każdego z nich nie zależy od jego sąsiadów. Celowo czynisz ten problem trudniejszym, niż jest w rzeczywistości.
whatsisname

4
@ Buttons840: Jeśli nie masz możliwości skorelowania znaczenia czujników pozycji w stosunku do rzeczywistej pozycji lustra, uczenie maszynowe nie pomoże ci w ich ustawieniu. Wszystko, co robisz bez tych danych, będzie w zasadzie spacerem pijaka. Zgrubna kalibracja powinna być czynnikiem projektu. Precyzyjną kalibrację można wykonać, rastrując każde lustro pod słońcem i obserwując moc wyjściową kolektora. Whatsisname ma całkowitą rację: utrudniasz to, niż musi być.
Blrfl,

9

W przypadku tego rodzaju zastosowania, pola zwierciadeł próbującego wskazać kolektor słoneczny, można bardzo dokładnie obliczyć, gdzie według ciebie powinno być słońce, gdzie powinny być lustra, pod jakim kątem powinny one znajdować się i jak je ustawić wskazują w kierunku twojego kolekcjonera. Wiesz, model matematyczny. Będzie blisko. Prawdopodobnie wystarczająco blisko.

Jeśli chodzi o kalibrację luster, aby poradzić sobie z niedoskonałościami i odchyleniami od modelu:
Poruszaj jednym lustrem na raz. Jeśli Twoja wydajność wzrośnie, zachowaj zmianę. Zapisz zmianę jako calOffset. Nazwij to skończonym.

Zgadzam się z Harveyem, uczenie maszynowe to przesada.

Ale hej, powiedzmy, że potrzebujesz mobilnego autonomicznego systemu, który może obudzić się po długiej drzemce i znaleźć słońce . I nie możemy sobie pozwolić na baterię o wartości 0,05 USD, aby utrzymać czas. A ponieważ jest ruchoma, słońce może być w bóg-wie, w jakim kierunku. I wszyscy ludzie nie żyją. A nasi robotyczni panowie z ogniw słonecznych mieli poważnego binger i nie wiedzą, na jakiej części świata się obudzili. A ich GPS nie może odebrać sygnału. I żaden z ich kumpli nie wie, co się stało.

1) Zamiataj obszar jednym lustrem i zanotuj wszelkie wzrosty mocy wyjściowej. Powtórz to kilka razy, aby upewnić się, że nie jest to chmura ani coś takiego.
2) Znasz teraz pozycję słońca. Idź, zrób to.
3) Poczekaj godzinę.
4) Zamiataj ponownie cały obszar za pomocą lustra. Kolce Chmury Yada Yada.
5) Znasz już ścieżkę słońca. Postępuj zgodnie z nim, aż osiągniesz limit swoich serwomechanizmów lub dopóki moc spadnie
6) Obróć o 180 stopni i poczekaj 12 godzin.
7) Wykonaj zamiatanie.
8) Na podstawie różnicy między pozycją słońca a pozycją wschodzącą z grubsza znasz swoją szerokość / sezon *. (Przynajmniej odległość od równika. Nadal nie wiem północ z południa). Odpowiednio wyreguluj.
9) Poczekaj dzień. Zwróć uwagę na różnicę w położeniu wschodu słońca. Wiesz już, po której stronie przesilenia jesteś.
10) Poczekaj w górę przez 6 miesięcy. Zwróć uwagę, gdzie szczyt wschodu słońca. Teraz wiesz, czy jesteś zimą czy latem i możesz bezpiecznie obliczyć ścieżkę słońca na następny EON.

Jeśli którykolwiek z kroków z „teraz wiesz” nie jest jasny, odpowiedzią jest MATH (i mechanika orbitalna Ziemi **). Pan Math jest twoim przyjacielem. On może ci coś powiedzieć. I chyba, że aksjomat równości lub jakakolwiek inna okaże się fałszywa, możesz mu nawet zaufać.

* Oferta nie jest ważna w kręgach arktycznych lub antarktycznych.
** Oferta nie dotyczy również Marsa, Wenus, Tytana, Io i innych wybranych lokalizacji.


Jak powiedziano, postępuję przy założeniu, że nie znam pozycji lusterek w prawdziwym świecie, a twierdzenie, że przy odrobinie matematyki mogę uzyskać „wystarczająco blisko”, nie ma podstaw.
Buttons840

Kiedy mówisz, że nie znasz pozycji lusterek w prawdziwym świecie, co dokładnie masz na myśli? Mam w telefonie GPS, który może podawać współrzędne szerokości i długości geograficznej z dokładnością do kilku metrów.
Robert Harvey

2
Załóżmy, że GPS przestał działać z powodu rozbłysków słonecznych lub bomby Kesslera.
Inżynier świata

@WorldEngineer - Załóżmy, że wszystko oprócz uczenia maszynowego przestało działać, czy uczenie maszynowe byłoby rozwiązaniem?
mouviciel

@mouviciel nie, bez niektórych serwomechanizmów lub czujników, uczenie maszynowe nie ma się czego uczyć i nie ma nic wspólnego z tym myśleniem.
Filip

2

Twoje pytanie nie odnosi się tak bardzo do uczenia maszynowego, jak do automatycznej kalibracji grupy urządzeń. Masz urządzenie (lustro) z czujnikami położenia i wiesz, gdzie chcesz skierować urządzenie, ale nie wiesz, jak wyjście czujnika odnosi się do realnego świata. Tak naprawdę musisz po prostu skalibrować urządzenie - znajdź prawidłową pozycję, abyś mógł określić, jak odczyty czujnika odnoszą się do rzeczywistej pozycji. Po skalibrowaniu wydaje się, że możesz polegać na czujnikach w celu ustawienia urządzenia.

Biorąc to wszystko pod uwagę, prawdopodobnie należy skalibrować każde urządzenie osobno . Możesz to zrobić automatycznie, używając pewnego rodzaju algorytmu wyszukiwania. Gilbert Le Blanc opisuje taki, który powinien działać. Innym sposobem może być założenie, że dane z czujnika są poprawne i użycie go do ustawienia lustra w przybliżeniu we właściwej pozycji; następnie przesuń lustro w sposób spiralny na zewnątrz, aż trafisz w cel.

Jeśli naprawdę chcesz dopasować wszystkie lustra na raz , może być potrzebny algorytm genetyczny:

  • Wybierz losowe ustawienie dla każdego lustra i zapisz je w tablicy. Powtórz, aby uzyskać pewną liczbę konfiguracji pól lustrzanych.
  • Następnie przejrzyj konfiguracje pola lustrzanego, ustawiając wszystkie lustra dla każdego z nich, a następnie mierząc wytwarzane ciepło.
  • Usuń z listy konfiguracje pola lustrzanego, które generują najmniej ciepła.
  • Wygeneruj kilka nowych konfiguracji, ponownie łącząc części konfiguracji, które pozostają na liście.
  • Powtarzaj, aż konfiguracje zbiegną się w jedno rozwiązanie lub poprawa przy każdej iteracji spadnie poniżej pewnego progu (tj. Osiągniesz „wystarczająco dobry”).

Powinienem również zauważyć, że jeśli wypróbujesz powyższą metodę, próbujesz zoptymalizować kalibrację czujnika lustrzanego, a nie pozycję. Każdy krok zajmie trochę czasu, więc musisz wziąć pod uwagę ruch słońca w trakcie tego procesu. „Ustawieniem” dla każdego lustra nie jest pozycja, ale błąd czujnika, tj. Różnica między odczytem czujnika a odczytem idealnym.


1

Niemal nie lubię tego pisać.

  • Ustal z ogniwa słonecznego, czy świeci słońce.
  • Jeśli świeci słońce, zacznij od lustra w (0, 0).
  • Obróć lustro do 0 na osi x.
  • Obróć lustro wzdłuż całej osi Y. Na każdym kroku zmierz, czy moc grzewcza kolektora słonecznego wzrośnie. Jeśli tak, zatrzymaj się i przejdź do następnego lustra w tablicy.
  • Obróć lustro wzdłuż osi X o jeden krok. Powtórz poprzedni krok.
  • Jeśli lustro zostało obrócone wzdłuż całej osi xiy bez zwiększania mocy cieplnej, zaznacz lustro jako wymagające konserwacji i przejdź do x = 0 i y = 0.
  • Powtórz wszystkie kroki z każdym lustrem w tablicy lusterek.
  • Poczekaj godzinę i powtórz wszystkie kroki.

Proste, jednak podejście to nie jest optymalne, zakładając, że obrót luster kosztuje energię .....
mikera

Nie jest to jednak warte publikacji.
Job

3
@ Job Oh przepraszam, czy chciałeś, aby SE.Programmers pomógł ci w pracy dyplomowej? Wiedziałem, że problem z pracą domową był rodzajem problemu, ale teraz mamy studentów, którzy chcą, abyśmy wykonywali swoją pracę?
Filip

@mikera: To prawda, jest to brutalna siła. Ponieważ jednak jedną z edycji wyjaśnienia było: „Dodatkowo dwa zwierciadła mogą znajdować się w pozycji (4, 42), ale w prawdziwym świecie wskazują w przeciwnych kierunkach”. Nie widzę żadnych skrótów.
Gilbert Le Blanc

@ Gilbert - musisz użyć informacji z poprzednich pomiarów. Na przykład dwa pomiary wystarczą do częściowego oszacowania gradientu. Następnie możesz zacząć korzystać z metod takich jak opadanie gradientu, aby znaleźć optymalną pozycję. Znacznie lepiej niż brutalna siła, zwłaszcza że problem optymalizacji w tym przypadku może być wypukły!
mikera
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.