Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Grunnleggende om Gymnasium | Kjerneprinsipper i RL
Introduksjon til Forsterkende Læring
course content

Kursinnhold

Introduksjon til Forsterkende Læring

Introduksjon til Forsterkende Læring

1. Kjerneprinsipper i RL
2. Multi-Armet Bandittproblem
3. Dynamisk Programmering
4. Monte Carlo-metoder
5. Temporal Difference-læring

book
Grunnleggende om Gymnasium

Gymnasium er et åpen kildekode-verktøysett utviklet for å utvikle og evaluere forsterkningslæringsagenter (RL-agenter). Det tilbyr en samling av standardiserte miljøer for effektiv testing av algoritmer og trening av agenter.

Nøkkelfunksjoner

  • Standardisert API: sikrer kompatibilitet på tvers av ulike miljøer;
  • Variasjon av miljøer: støtter klassiske kontrollproblemer, Atari-spill og robotikk-simuleringer;
  • Enkel integrasjon: kompatibel med dyp læringsrammeverk som TensorFlow og PyTorch.

Arbeidsflyt

En typisk arbeidsflyt i Gymnasium ser slik ut:

1. Importer biblioteket

import gymnasium as gym

Etter at det opprinnelige gym-biblioteket ble avviklet, anbefales det nå å bruke gymnasium — en aktivt vedlikeholdt og videreutviklet forgrening av gym. Til tross for navneendringen importeres biblioteket ofte fortsatt med aliaset gym for bakoverkompatibilitet og enkelhet.

2. Opprett et miljø

env = gym.make("CartPole-v1")

Funksjonen gym.make() oppretter et miljø ved hjelp av dets unike identifikator (f.eks. "CartPole-v1"). Du kan også sende med ekstra konfigurasjonsparametere avhengig av miljøets krav.

3. Tilbakestill miljøet

observation, info = env.reset()

Før du samhandler med miljøet, må du tilbakestille det til starttilstanden ved å bruke env.reset(). Dette returnerer:

  • observation: miljøets initialtilstand;
  • info: tilleggsdata som kan inkludere metadata eller tilstandsspesifikk konfigurasjon.

4. Samhandle med miljøet

action = env.action_space.sample()
observation, reward, terminated, truncated, info = env.step(action)

I første linje velges en tilfeldig handling fra action space ved å bruke env.action_space.sample(). Action space definerer mengden av alle mulige handlinger agenten kan utføre i miljøet. I tillegg tilbyr miljøet observation space, som kan nås via env.observation_space og representerer mengden av alle mulige observasjoner (tilstander) agenten kan oppleve.

I andre linje sendes den valgte handlingen til env.step(action), som utfører handlingen og returnerer følgende:

  • observation: agentens nye tilstand etter handlingen;
  • reward: belønningen mottatt for utført handling;
  • terminated: en boolsk verdi som indikerer om episoden er avsluttet (dvs. oppgaven er fullført);
  • truncated: en boolsk verdi som indikerer om episoden ble avbrutt (på grunn av tid eller andre begrensninger);
  • info: ytterligere diagnostisk informasjon, ofte brukt til feilsøking eller logging.

5. Lukk miljøet

env.close()

Dersom miljøet bruker eksterne ressurser (f.eks. renderingsvinduer eller simuleringer), bør du lukke det ved å bruke env.close().

Note
Les mer

Hvis du ønsker å vite mer om funksjonaliteten som tilbys av Gymnasium-biblioteket, bør du besøke their website.

Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 1. Kapittel 7

Spør AI

expand

Spør AI

ChatGPT

Spør om hva du vil, eller prøv ett av de foreslåtte spørsmålene for å starte chatten vår

course content

Kursinnhold

Introduksjon til Forsterkende Læring

Introduksjon til Forsterkende Læring

1. Kjerneprinsipper i RL
2. Multi-Armet Bandittproblem
3. Dynamisk Programmering
4. Monte Carlo-metoder
5. Temporal Difference-læring

book
Grunnleggende om Gymnasium

Gymnasium er et åpen kildekode-verktøysett utviklet for å utvikle og evaluere forsterkningslæringsagenter (RL-agenter). Det tilbyr en samling av standardiserte miljøer for effektiv testing av algoritmer og trening av agenter.

Nøkkelfunksjoner

  • Standardisert API: sikrer kompatibilitet på tvers av ulike miljøer;
  • Variasjon av miljøer: støtter klassiske kontrollproblemer, Atari-spill og robotikk-simuleringer;
  • Enkel integrasjon: kompatibel med dyp læringsrammeverk som TensorFlow og PyTorch.

Arbeidsflyt

En typisk arbeidsflyt i Gymnasium ser slik ut:

1. Importer biblioteket

import gymnasium as gym

Etter at det opprinnelige gym-biblioteket ble avviklet, anbefales det nå å bruke gymnasium — en aktivt vedlikeholdt og videreutviklet forgrening av gym. Til tross for navneendringen importeres biblioteket ofte fortsatt med aliaset gym for bakoverkompatibilitet og enkelhet.

2. Opprett et miljø

env = gym.make("CartPole-v1")

Funksjonen gym.make() oppretter et miljø ved hjelp av dets unike identifikator (f.eks. "CartPole-v1"). Du kan også sende med ekstra konfigurasjonsparametere avhengig av miljøets krav.

3. Tilbakestill miljøet

observation, info = env.reset()

Før du samhandler med miljøet, må du tilbakestille det til starttilstanden ved å bruke env.reset(). Dette returnerer:

  • observation: miljøets initialtilstand;
  • info: tilleggsdata som kan inkludere metadata eller tilstandsspesifikk konfigurasjon.

4. Samhandle med miljøet

action = env.action_space.sample()
observation, reward, terminated, truncated, info = env.step(action)

I første linje velges en tilfeldig handling fra action space ved å bruke env.action_space.sample(). Action space definerer mengden av alle mulige handlinger agenten kan utføre i miljøet. I tillegg tilbyr miljøet observation space, som kan nås via env.observation_space og representerer mengden av alle mulige observasjoner (tilstander) agenten kan oppleve.

I andre linje sendes den valgte handlingen til env.step(action), som utfører handlingen og returnerer følgende:

  • observation: agentens nye tilstand etter handlingen;
  • reward: belønningen mottatt for utført handling;
  • terminated: en boolsk verdi som indikerer om episoden er avsluttet (dvs. oppgaven er fullført);
  • truncated: en boolsk verdi som indikerer om episoden ble avbrutt (på grunn av tid eller andre begrensninger);
  • info: ytterligere diagnostisk informasjon, ofte brukt til feilsøking eller logging.

5. Lukk miljøet

env.close()

Dersom miljøet bruker eksterne ressurser (f.eks. renderingsvinduer eller simuleringer), bør du lukke det ved å bruke env.close().

Note
Les mer

Hvis du ønsker å vite mer om funksjonaliteten som tilbys av Gymnasium-biblioteket, bør du besøke their website.

Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 1. Kapittel 7
some-alt