class_docstr: SumoSimulation is responsible for the management of the sumo simulation.
class_docstr_tok: ["SumoSimulation","is","responsible","for","the","management","of","the","sumo","simulation","."]
docstr: Updates traffic light state.
  
      :param tl_id: id of the traffic light to be updated (logic id, link index).
      :param state: new traffic light state.
      :return: True if successfully updated. Otherwise, False.
docstr_tok: ["Updates","traffic","light","state",".",":","param","tl_id",":","id","of","the","traffic","light","to","be","updated","(","logic","id",",","link","index",")",".",":","param","state",":","new","traffic","light","state",".",":","return",":","True","if","successfully","updated",".","Otherwise",",","False","."]
code: def synchronize_traffic_light(self, landmark_id, state):
      """
      Updates traffic light state.
  
          :param tl_id: id of the traffic light to be updated (logic id, link index).
          :param state: new traffic light state.
          :return: True if successfully updated. Otherwise, False.
      """
      self.traffic_light_manager.set_state(landmark_id, state)
  
imports: import collections
  import enum
  import logging
  import os
  import carla
  import sumolib
  import traci
  from .constants import INVALID_ACTOR_ID
  import lxml.etree
label_desc: Use image node_id 12 for calling the SumoSimulation obj's underlying member method code with example usage: obj.synchronize_traffic_light(landmark_id, state) without return types