Package: gym-killerviruses
gym-killerviruseskillerviruses is a game simulator inspired by Covid19 pandemic where virus is a Sars-Cov II and killer are all doctors, nurses, researchers on public health, etc ...Table of ContentsGame-presentationIntroductionObject of the gameGameplayRulesStarting-positionsmovesEnvironmentsEpisode terminationObservationsActionsRewardInstallationUsageCitationContributeGame-presentationhttps://en.wikipedia.org/wiki/Covid19_pandemicIntroductionIt was on March 11, 2020 that the World Health Organisation (WHO) declared the coronavirus pandemic.Killervirusesis a single-player simulator game where player start with 3 lifes in the environment dominated by Sars-Cov II.Object of the gameBy looking for the way to save its life, player must kill all Sars-Cov II viruses with plants. If he kills all viruses, player wins otherwise die.GameplayDuring the game, player must be stratege by finding a plant and avoiding Sars-CovII in their way. If player touches viruse with a plant, he kills viruse. If player touches viruse without a plant, he looses one life and he contaminates environment.RuleStarting-positionsPlayer starts in bottom of screen with 8 viruses and 5 plants.MovesPlayers can move following theses directions:Up, Left, Right, DownLeftTop, RightTop,  LeftBottom, RightBottom, NOOPEnvironmentObservationThe observation is a numpy arrays of size (480, 520, 3). This arrays is a type=uint8 value in the [0, 255] range. You can see image below.gym-killervirusesActionsThe moves is the 8 directions mentioned before. Player can go everywhere in the screen to reach his objective.agent can move Up, Left, Right, Down, LeftTop, RightTop,  LeftBottom, RightBottom in the screen.RewardPlayer have three rewards:If boy hits a plant:reward = 1 + 0.01during an episode. 0.01 is a decay life.If boy hits Sars-Cov II with a plant:reward = 2,If boy hits Sars-Cov II without having a plant:reward = - 3 - 0.01.If timeout is over and score is null thenreward = - number of virusesotherwisereward = +score.In beginning of game, player have 3 lifes by hitting the viruse without a plant, life = life - 0.01Do not forget that player can contaminate environment by creating two viruses each time after infection.Episode terminationThe episode is terminated if agent looses all its life or kills all viruses and timeout is over.Requirementpython 3.7+OpenAI gymNumpyPygamePILKeras or Tensorflow or PytorchDependencies can be installed withpiporcondaUsing pip$ pip install gym-killervirusesUsageimportgymimportgym_killervirusesenv=gym.make('sarscov2-v0')MAX_EPISODE=10foriinrange(MAX_EPISODE):env.reset()done=Falsetotal_reward=0whilenotdone:action=env.action_space.sample()obs,reward,done,info=env.step(action)total_reward+=rewardenv.render()print(f'Episode:{i+1}/{MAX_EPISODE}',f'reward:{total_reward}',f'done:{done}')env.close()CitationBibtex if you want to cite this repository in your publications:@misc{gym_killerviruses,
  author = {Massock Batalong M.B.},
  title = {Killerviruses Environments for OpenAI Gym},
  year = {2022},
  publisher = {GitHub},
  journal = {GitHub repository},
  howpublished = {\url{https://github.com/batalong123/gym-killerviruses}},
}ContributeFeel free to contribute to this project. You can fork this repository and implement whatever you want. Alternatively, open a new issue in case you need help or want to have a feature added.contact:lumierebatalong@gmail.com