powered by CADENAS

Social Share

Amazon

Symulacja komputerowa (10285 views - Computer)

Symulacja komputerowa – symulacja z wykorzystaniem modelu matematycznego, zapisanego w postaci programu komputerowego. Techniki symulacyjne są szczególnie przydatne tam, gdzie analityczne wyznaczenie rozwiązania byłoby zbyt pracochłonne, a niekiedy nawet niemożliwe, co często ma miejsce w systemach złożonych.
Go to Article

Explanation by Hotspot Model

Youtube


    

Symulacja komputerowa

Symulacja komputerowa

Symulacja komputerowasymulacja z wykorzystaniem modelu matematycznego, zapisanego w postaci programu komputerowego. Techniki symulacyjne są szczególnie przydatne tam, gdzie analityczne wyznaczenie rozwiązania byłoby zbyt pracochłonne, a niekiedy nawet niemożliwe, co często ma miejsce w systemach złożonych.

Rodzaje symulacji komputerowych

Symulacje komputerowe można podzielić ze względu na:

  • sposób upływu czasu
    • z czasem ciągłym[1] – czas zwiększa się stałymi przyrostami, jak w symulacji z czasem dyskretnym, lecz wartości próbek sygnałów są interpolowane dla chwil pośrednich pomiędzy momentami odczytu.
    • z czasem dyskretnym – czas zwiększa się stałymi przyrostami, a krok czasowy dobiera się optymalnie ze względu na zasobożerność systemu, jego wydajność i charakter symulowanego obiektu i/lub zjawiska (mikrosekundy w obwodach elektrycznych i miliony lat przy symulacji ewolucji gwiazd).
    • symulacja zdarzeń dyskretnych – czas zwiększa się skokowo, ale jego przyrosty są zmienne (ważniejsza jest tu sekwencja zdarzeń niż rzeczywisty lub wirtualny upływ czasu).
  • formę danych wyjściowych
    • statyczne – wynikiem jest zbiór danych, statyczny obraz itp.
    • dynamiczne – wynikiem jest proces przebiegający w czasie np. animacja.
      • interaktywne – reagują na sygnały ze świata zewnętrznego np. operatora.
      • nieinteraktywne
  • liczbę użytych komputerów
    • lokalne – przetwarzanie odbywa się na pojedynczym komputerze.
    • rozproszone – przetwarzanie odbywa się w wielu komputerach połączonych w sieci lokalnej (LAN) lub zewnętrznej np. Internet.

Narzędzia stosowane do symulacji

Program symulacyjny może być napisany w dowolnym języku programowania. W ograniczonym zakresie można do symulacji wykorzystać również arkusz kalkulacyjny. Zostały jednak stworzone specjalne narzędzia przeznaczone do wykonywania symulacji komputerowych. Obecnie stosowane są np.:

Jednym z nietypowych dostępnych języków programowania jest ModSim oparty na Microsoft Visual C++ w wersji 1.5, choć programuje się w nim w języku podobnym do Pascala (za pomocą translatora jest zamieniany na C++). Posiada on mechanizmy do przeprowadzania zaawansowanych symulacji m.in. monitory i generatory liczb losowych. Możliwe jest też wizualizowanie w czasie rzeczywistym zachodzących procesów za pomocą np. wektorowych funkcji rysujących.

Najczęściej jednak używanym językiem programowania w symulacji komputerowej jest Python. Jest on darmowy, ma intuicyjną składnię, dla tego języka opracowania szereg bibliotek o otwartym kodzie, łatwo więc znaleźć przykłady użycia.

Wybrane zastosowania symulacji

Przykład zastosowania

Obiektem symulacji jest sklep, którego dochody (zmienna wyjściowa) są uzależnione od wielu czynników (zmiennych wejściowych), np. liczba klientów odwiedzających sklep, cena podobnych towarów sprzedawanych u konkurencji, poziom sprzedaży w danym miesiącu. Przyjmuje się, że każdy z tych czynników jest zmienną losową o pewnym rozkładzie, np. normalnym.

Celem symulacji komputerowej jest przeprowadzenie kilkuset (albo kilku tysięcy albo kilkuset tysięcy) eksperymentów polegających na wylosowaniu konkretnych wartości poszczególnych zmiennych (czyli np. w jednej symulacji wylosowano następujące wartości: liczba klientów = 125, cena u konkurencji = 43 zł, poziom sprzedaży = 27 sztuk) i sprawdzeniu jaki dochód zostanie osiągnięty przy takich założeniach.

Po wielokrotnym przeprowadzeniu symulacji (czyli losując różne wartości zmiennych) możemy stwierdzić, jak wygląda rozkład dochodu sklepu. Na tej podstawie można np. wyznaczyć wartość oczekiwaną zysku, prawdopodobieństwo straty i inne interesujące z biznesowego punktu widzenia wielkości.

Problemy

Ten przykład ukazuje najistotniejsze problemy symulacji:

  • złożoność zaprojektowanej symulacji (ile i jakie czynniki będą uwzględnione oraz w jaki sposób)
  • adekwatność osiągniętych wyników

Złożoność zwykle jest związana ze stopniem skomplikowania projektu, co przekłada się w prostej linii na koszty oraz jakość wyników.

Natomiast adekwatność wyników do np. danych zarejestrowanych w rzeczywistych eksperymentach, jest powodem wielu dyskusji np. naukowych. Jeśli osiągnięte wyniki dalece odbiegają od zaobserwowanych faktów, kwestionowana jest zasadność tego typu symulacji.

  1. Rzeczywisty czas ciągły możliwy jest do uzyskania jedynie w symulatorach analogowych, zob. komputer analogowy.

Zobacz też


Komputerowa gra akcjiAutomat do gryArduinoRzeczywistość rozszerzonaBattle royale (gry komputerowe)BluetoothGra karcianaCommodore 128Commodore 64Obudowa komputeraInżynieria komputerowaSprzęt komputerowyMonitor komputeraDepth perceptionWyświetlaczMonitor ekranowyKarta rozszerzeniaDyskietkaGraGame boyKontroler gierSilnik gryGamepadGameplay of PokémonGamerGaming houseGaming keypadGoogle CardboardHalo 3: ODSTDysk twardyHP Pavilion (computer)Immersive technologyDrukarka atramentowaJob SimulatorDżojstikKról (szachy)Skoczek (szachy)Lego DuploLudzik LegoLightning McQueenList of magical weaponsList of most-played video games by player countMagic: The GatheringMMORPGMatrioszkaMemrystorMetro 2033 (książka)Metro 2033 (gra komputerowa)Mini 4WDMonopolyMonopoly video gamesKomputerowa gra wieloosobowaNetbookNetwork Attached StorageOlivetti P6060Olivetti P6066OrigamiOriginal video animationPion (szachy)Komputer osobistyFlipperPlayer versus playerPlayerUnknown’s BattlegroundsPlac zabawPocket PCPokémonPokerPortable media playerPortal (gra komputerowa)Zasilacz komputeraPuzzleHetman (szachy)Modelarstwo kolejoweSzaradaKoń na biegunachWieża (szachy)Kostka RubikaStrzelankaJednoręki bandytaSnookerDysk półprzewodnikowySoma cubeSpinning coneSuper MarioSurvival horrorTangramMiś (zabawka)TetrisWieże HanoiZabawkaKlockiToy trainUltra-Mobile PCKarta graficznaKonsola gier wideoVirtual assistantRzeczywistość wirtualnaVirtual reality headsetVirtual worldWater coolerTory drewnianeWorld of WarcraftXbox OneXenixYukikaze (anime)Awatar (rzeczywistość wirtualna)Computational anatomyOprogramowanieUser (computing)InformatykaProgram komputerowyJęzyk programowaniaProgramistaMicrosoft WindowsMicrosoftFile sharingUnikodZnaki pisarskieOnline and offlineTożsamość internetowaPakiet programówOprogramowanie użytkoweNarzędzie programistyczne

This article uses material from the Wikipedia article "Symulacja komputerowa", which is released under the Creative Commons Attribution-Share-Alike License 3.0. There is a list of all authors in Wikipedia

Computer

Computer, Hardware, Software