The whole framework runs by removing atoms sequentially. At each timestep t, at most one candidate atom (colored as red) is removed from the current graphene nanopore gt to generate a updated nanopore gt+1. Any dangling atoms caused by the removal of candidate atom are also removed from gt. gt+1 is fed into a CNN-based performance predictor to predict water flux ft+1 and ion rejection rate it+1. Meanwhile, the geometrical feature is extracted from the CNN. The reward is then calculated from the predicted it+1 and ft+1. The geometrical feature is concatenated with the fingerprint and atom coordinates as the state st+1. Given gt+1, candidate atoms to remove are picked from those located at the edge of the nanopore. The DRL agent constructed upon deep Q-network takes the reward, candidate atoms, and state as input to determine the next atom to remove from the graphene.