<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def add_node(self, agent_type=None, state=None, name='network_process', **state_params):
 """Add a new node to the current network Parameters agent_type : NetworkAgent subclass Agent in the new node will be instantiated using this agent class state : object State of the Agent, this may be an integer or string or any other name : str, optional Descriptive name of the agent state_params : keyword arguments, optional Key-value pairs of other state parameters for the agent Return ------ int Agent ID of the new node """

        agent_id = int(len(self.global_topology.nodes()))
        agent = agent_type(self.env, agent_id=agent_id, state=state, name=name, **state_params)
        self.global_topology.add_node(agent_id, {'agent': agent})
        return agent_id