| 5 | |
| 6 | |
| 7 | class Setting(object): |
| 8 | def __init__(self, log=None): |
| 9 | self.V = { |
| 10 | 'GODS_PERSPECTIVE': True, |
| 11 | 'DEBUG_MODE': params.debug_mode, |
| 12 | |
| 13 | # -------------------------------------------------------------------------------------------------- |
| 14 | # 以实际量为单位 |
| 15 | # TODO:Add 5G base stationuav_next_pos and AOI |
| 16 | 'RANGE': 60, # m |
| 17 | 'TRANS_SPEED': 3e8, # m/s, too fast |
| 18 | 'COLLECT_SPEED': 0.4, # Mbit/s |
| 19 | 'WAVE_LENGTH': 3e8 / 2.4e9, # m, lambda=light velocity(c)/carrier frequency |
| 20 | 'TX_POWER': 26, # dbm, FCC, UAV |
| 21 | 'NOISE_POWER': -90, # dbm, minimal received signal power of wireless network in 802.11 variants |
| 22 | 'BAND_WIDTH': 1, # MHz, 2.4GHz~2.483GHz, 80M/80 users=1M |
| 23 | 'MAX_POI_VALUE': 30, # Mbit |
| 24 | |
| 25 | # Action |
| 26 | # dx,dy:0-maxdistance 0,1 |
| 27 | # velocity:0~20m/s 2 ??? |
| 28 | # collect_data_AOI:0-TIMESLOT 3 |
| 29 | # TODO:4or3? |
| 30 | 'ACT_NUM': 3, |
| 31 | |
| 32 | # max factors within one time step |
| 33 | 'MAX_DISTANCE': 1000, # m |
| 34 | 'MAX_VELOCITY': 20, # m/s |
| 35 | 'TIME_SLOT': 60, # second (max time in a step) |
| 36 | |
| 37 | # TODO:initial energy of a uav(no charging) |
| 38 | 'INITIAL_ENERGY': 4e5, # J=w.s |
| 39 | 'DISTANCE_ENERGY_PER_T': 10., # W=FVT=FS |
| 40 | 'COLLECT_ENERGY_PER_T': 5, # w |
| 41 | 'SEND_BACK_ENERGY_PER_T': 0.398, # 10^[Tx Power(db)/10] |
| 42 | |
| 43 | # Penalty and reward |
| 44 | # #TODO:1234 |
| 45 | 'OBSTACLE_PENALTY': -1., |
| 46 | 'DROPOUT_PENALTY': -1., |
| 47 | 'USELESS_COLLECTION_PENALTY': -1., |
| 48 | 'NO_ANY_COLLECTION_PENALTY': -1., |
| 49 | 'FAIRNESS_KIND': "value", # value,gs |
| 50 | 'K': 1., |
| 51 | 'NORMALIZE': 0.01, |
| 52 | 'EPSILON': 1e-3, |
| 53 | # ------------------------------------------------------------------------------------------------ |
| 54 | |
| 55 | # 以unit(16x16)为单位 |
| 56 | # Map Info |
| 57 | 'MAP_X': 16, # 16 units=1km |
| 58 | 'MAP_Y': 16, |
| 59 | 'BS_VALUE': -1., |
| 60 | 'ACTUAL_SIZE': 1000, # m->x,y |
| 61 | 'COLLISION_DETECT_ERROR': 1000, |
| 62 | |
| 63 | # state |
| 64 | 'VISIT': 1. / 1000., |
no outgoing calls
no test coverage detected