diff --git a/Submissions/002795957_Lokesh_jeswani/Assignment_4/Assignment_4(PSA).ipynb b/Submissions/002795957_Lokesh_jeswani/Assignment_4/Assignment_4(PSA).ipynb new file mode 100644 index 0000000..195d235 --- /dev/null +++ b/Submissions/002795957_Lokesh_jeswani/Assignment_4/Assignment_4(PSA).ipynb @@ -0,0 +1,891 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "INFO 6205 - Program Structure and Algorithms(PSA)\\\n", + "Assignment 4:\\\n", + "Student Name: Lokesh Mohan Jeswani [NU ID: 002795957]\\\n", + "Professor: Nick Bear Brown" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Q1.\\\n", + "Consider the Directed Disjoint Circuits Problem, defined as follows. Given a directed graph G and k pairs of nodes (s1, t1), (s2, t2), ..., (sk, tk), determine whether there exist disjoint circuits C1, C2, ..., Ck such that Ci is a directed circuit from si to ti." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "**Answer & Justification :**\\\n", + "To show that the Directed Disjoint Circuits Problem is NP-complete, we can reduce the Hamiltonian Circuit Problem to it. The Hamiltonian Circuit Problem is known to be NP-complete (reference: Richard M. Karp. Reducibility Among Combinatorial Problems. In Complexity of Computer Computations, 1972).\n", + "\n", + "Reduction :\n", + "Reduction: Hamiltonian Circuit to Directed Disjoint Circuits\n", + "\n", + "Given an instance of the Hamiltonian Circuit Problem with an undirected graph G' = (V', E'), we construct a directed graph G as follows:\n", + "\n", + "1. For each undirected edge {u, v} in G', create a directed edge (u, v) in G.\n", + "2. Introduce a pair of nodes (s, t) in G, where s and t are not in V'.\n", + "\n", + "The constructed graph G and the pair (s, t) are the input to the Directed Disjoint Circuits Problem.\n", + "\n", + "\n", + "Claim:\n", + "\n", + "There exists a Hamiltonian circuit in G' if and only if there exist disjoint circuits C1, C2, ..., Ck in G, each connecting the corresponding pair (si, ti).\n", + "\n", + "Justification:\n", + "\n", + "If there is a Hamiltonian circuit in G', it corresponds to a sequence of directed edges in G, forming a circuit in G that connects all nodes. We can use this Hamiltonian circuit to construct k disjoint circuits in G, each connecting the corresponding pairs (si, ti) by breaking the Hamiltonian circuit at the nodes (s, t).\n", + "\n", + "Conversely, if there exist k disjoint circuits in G, we can concatenate them to form a sequence of directed edges that visits each node exactly once. Since the circuits are disjoint, this sequence forms a Hamiltonian circuit in G'.\n", + "\n", + "Therefore, the Directed Disjoint Circuits Problem is NP-complete, as the reduction from the NP-complete Hamiltonian Circuit Problem is polynomial, and the solution to the Directed Disjoint Circuits Problem can be verified in polynomial time." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Q2.\\\n", + "Consider the Efficient Resource Allocation Problem, defined as follows. You are organizing a conference and want to ensure that there is at least one organizer who is proficient in each of the n conference topics (e.g., machine learning, cybersecurity, data science, etc.). You have received job applications from m potential organizers. For each of the n topics, there is some subset of potential organizers qualified to coordinate it. The question is: For a given number k ≤ m, is it possible to hire at most k organizers who can coordinate all of the n topics? We'll call this the Optimal Organizer Set." + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "C:\\Users\\Lokesh\\AppData\\Local\\Packages\\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\\LocalCache\\local-packages\\Python310\\site-packages\\networkx\\drawing\\nx_pylab.py:304: UserWarning: \n", + "\n", + "The arrowsize keyword argument is not applicable when drawing edges\n", + "with LineCollection.\n", + "\n", + "To make this warning go away, either specify `arrows=True` to\n", + "force FancyArrowPatches or use the default value for arrowsize.\n", + "Note that using FancyArrowPatches may be slow for large graphs.\n", + "\n", + " draw_networkx_edges(G, pos, arrows=arrows, **edge_kwds)\n" + ] + }, + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAApQAAAHzCAYAAACe1o1DAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjYuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/P9b71AAAACXBIWXMAAA9hAAAPYQGoP6dpAAAfjUlEQVR4nO3de5zVBZ3/8ffAcBPwhoJKiqQi/XS9o2maGt5NS7dds3K7bJm7bltmubbVpquVlW60a21led0yuxplWqJmmqkkaZYCagJeUMQEVK7DnN8fCEqSnjOfIQZ6Ph8PHw8ZDt/z5c1heJ3LnGlrNBqNAABAF/Va0ycAAMDaTVACAFAiKAEAKBGUAACUCEoAAEoEJQAAJYISAIASQQkAQImgBACgRFACAFAiKAEAKBGUAACUCEoAAEoEJQAAJYISAIASQQkAQImgBACgRFACAFAiKAEAKBGUAACUCEoAAEoEJQAAJYISAIASQQkAQImgBACgRFACAFAiKAEAKBGUAACUCEoAAEoEJQAAJYISAIASQQkAQImgBACgRFACAFAiKAEAKBGUAACUCEoAAEoEJQAAJYISAIASQQkAQImgBACgRFACAFAiKAEAKBGUAACUCEoAAEoEJQAAJYISAIASQQkAQImgBACgRFACAFAiKAEAKBGUAACUCEoAAEoEJQAAJYISAIASQQkAQImgBACgRFACAFAiKAEAKBGUAACUCEoAAEoEJQAAJYISAIASQQkAQImgBACgRFACAFAiKAEAKBGUAACUCEoAAEoEJQAAJYISAIASQQkAQImgBACgRFACAFAiKAEAKBGUAACUCEoAAEoEJQAAJYISAIASQQkAQImgBACgRFACAFAiKAEAKBGUAACUCEoAAEoEJQAAJYISAIASQQkAQImgBACgRFACAFAiKAEAKBGUAACUCEoAAEoEJQAAJYISAIASQQkAQImgBACgRFACAFAiKAEAKBGUAACUCEoAAEoEJQAAJYISAIASQQkAQImgBACgRFACAFAiKAEAKBGUAACUCEoAAEoEJQAAJYISAIASQQkAQImgBACgRFACAFAiKAEAKBGUAACUCEoAAEoEJQAAJYISAIASQQkAQImgBACgRFACAFAiKAEAKBGUAACUCEoAAEoEJQAAJYISAIASQQkAQImgBACgRFACAFAiKAEAKBGUAACUCEoAAEoE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t+XJh6dl7+P+MX36D8gt37ogF//r8fnAd2/K7b+elCT52c9+lu233z6jR4/O+9///vTtu+og7+joyJVXXrnix6NGjcqFF16Yiy66KEkyZcqUJEnv3r1zwgknrLjcI488kiS58sorVxz761//ekaPHp358+dnv/32y80335wBAwbkVa96Va6+8ns9aqsP/uBXaTSWPYV77bXXZt99981BBx2UCy64IAMGDFjlVsstWbIk3/zmN9PW1pYZM2bk7LPPXvFzN910U5Jk4403zrnnnrvi408++WSS5Oqrr87AgQOTJJdeemn233//9OvXL+94xztyySWXZP3118+Bb35H7rztFz1qrw9d+at0PPeM97XXXpvTTjstxx57bDbYYIOX3KqnWKuDcmmPKslllnQsyf99+/Jcdd7H1/SprOTIU8/Kq//+XWnvU3sEomPxonznP/4l99/68+xz/Huyy2HHdvlYS5cuza233dbjtkqe22urHdJeDMq3fe6iPP3krNx02Zfy25/9IDu87ojsOPaol/+Fq9DZ2Zn7H3wwV333u6Vz6m5Hjtg5m+zRma5ONenHV+SBiTfn7V/4Rv74yPR0Ll32VNScxx7Ohpttkb4DBrZ8zM5GIw/PnJnrrruuaye1GvXf5YC8otFZegH7Hm94S4Zs9cr0HbBebr3i6/n9DVelT/8BOe6T/9ul4zUajTzx5B8zceLEwlmt2pw5c1Z53IULF2bhwmUvbVi8eHGmT5++0s8vWbIkG2/z/7LDEcflaye+ccXHOxYvyuSbJuTh309K4wWv4Z455e6V/tE/4tSzsuUOu+a3P/1+pt81MX98eNqL/tHfbNtXZbNtX5Ufn/uxzJ7+QHY/+vgc8i8fzRMP3pfH7r8nSfKLS/5nxeUXzH0qj90/OY8/8cSKjy2Pwd/85jdNbzJ16tRMnTr1RR9/9NFH891V/P1+4SNP8+fPz6RJk1b6+QULFmTSpEnZ+83vzsw/PH/cNb3VrAcmr3idfaPRWBGCP/rRj15+pBf42te+tsqP33vvvfn4x1/878cTTzyRJ577M5o7d27Gjx+/0s/PmzcvHYM3zcEn/3uPum09/sDk9H2uaw488MCcc845zczTY6zVQdm7+DTP6tCnvU/e9pbj859vOWJNn8pKpmbDTE+f0tNsC56em8s++A958I5bMvbED+egk04rnVPv3r2z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AEoEJQAAJYISAIASQQkAQImgBACgRFACAFAiKAEAKBGUAACUCEoAAEoEJQAAJYISAIASQQkAQImgBACgRFACAFAiKAEAKBGUAACUCEoAAEoEJQAAJYISAIASQQkAQImgBACgRFACAFAiKAEAKBGUAACUCEoAAEoEJQAAJYISAIASQQkAQImgBACgRFACAFAiKAEAKBGUAACUCEoAAEoEJQAAJYISAIASQQkAQImgBACgRFACAFAiKAEAKBGUAACUCEoAAEoEJQAAJYISAIASQQkAQImgBACgRFACAFAiKAEAKBGUAACUCEoAAEoEJQAAJYISAIASQQkAQImgBACgRFACAFAiKAEAKBGUAACUCEoAAEoEJQAAJYISAIASQQkAQImgBACgRFACAFAiKAEAKBGUAACUCEoAAEoEJQAAJYISAIASQQkAQImgBACgRFACAFAiKAEAKBGUAACUCEoAAEoEJQAAJYISAIASQQkAQImgBACgRFACAFAiKAEAKBGUAACUCEoAAEoEJQAAJYISAIASQQkAQImgBACgRFACAFAiKAEAKBGUAACUCEoAAEoEJQAAJYISAIASQQkAQImgBACgRFACAFAiKAEAKBGUAACUCEoAAEoEJQAAJYISAIASQQkAQImgBACgRFACAFAiKAEAKBGUAACUCEoAAEoEJQAAJYISAIASQQkAQImgBACgRFACAFAiKAEAKBGUAACUCEoAAEoEJQAAJYISAIASQQkAQImgBACgRFACAFAiKAEAKBGUAACUCEoAAEoEJQAAJYISAIASQQkAQImgBACgRFACAFAiKAEAKBGUAACUCEoAAEoEJQAAJYISAIASQQkAQImgBACgRFACAFAiKAEAKBGUAACUCEoAAEoEJQAAJYISAIASQQkAQImgBACgRFACAFAiKAEAKBGUAACUCEoAAEoEJQAAJYISAIASQQkAQImgBACgRFACAFAiKAEAKBGUAACUCEoAAEoEJQAAJYISAIASQQkAQImgBACgRFACAFAiKAEAKBGUAACUCEoAAEoEJQAAJYISAIASQQkAQImgBACgRFACAFAiKAEAKBGUAACUCEoAAEoEJQAAJYISAIASQQkAQImgBACgRFACAFAiKAEAKBGUAACUCEoAAEoEJQAAJYISAIASQQkAQImgBACgRFACAFAiKAEAKBGUAACUCEoAAEoEJQAAJYISAIASQQkAQImgBACgRFACAFAiKAEAKBGUAACUCEoAAEoEJQAAJYISAIASQQkAQImgBACgRFACAFAiKAEAKBGUAACUCEoAAEoEJQAAJYISAIASQQkAQImgBACgRFACAFDy/wHp1bl54dp3IAAAAABJRU5ErkJggg==", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "import networkx as nx\n", + "import matplotlib.pyplot as plt\n", + "\n", + "def create_efficient_allocation_graph(U, subsets):\n", + " G = nx.Graph()\n", + "\n", + " # Create nodes for conference topics\n", + " G.add_nodes_from(U, bipartite=0)\n", + "\n", + " # Create nodes for organizers\n", + " organizers = [f\"Organizer_{i+1}\" for i in range(len(subsets))]\n", + " G.add_nodes_from(organizers, bipartite=1)\n", + "\n", + " # Connect organizers to corresponding conference topics\n", + " for i, subset in enumerate(subsets):\n", + " for topic in subset:\n", + " G.add_edge(organizers[i], topic)\n", + "\n", + " return G\n", + "\n", + "def draw_graph(G):\n", + " pos = nx.bipartite_layout(G, G.nodes(), align='horizontal')\n", + " nx.draw(G, pos, with_labels=True, font_size=8, font_color='black', font_weight='bold', node_size=700, node_color='skyblue', arrowsize=20)\n", + " plt.show()\n", + "\n", + "# Example usage\n", + "U = {1, 2, 3, 4, 5}\n", + "subsets = [{1, 2, 3}, {2, 4}, {3, 5}]\n", + "\n", + "allocation_graph = create_efficient_allocation_graph(U, subsets)\n", + "draw_graph(allocation_graph)\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "**Answer & Justification :**\n", + "\n", + "To show that the Efficient Resource Allocation Problem is NP-complete, we can reduce the Set Cover problem to it.\n", + "\n", + "Reduction: Set Cover to Efficient Resource Allocation\n", + "\n", + "Given an instance of the Set Cover problem with a set U of n elements and a collection of m subsets of U, we construct an instance of the Efficient Resource Allocation Problem as follows:\n", + "\n", + "For each element of U, create a conference topic.\n", + "For each of the m subsets, create an organizer and let this organizer be proficient in the conference topics that correspond to the elements of the subset.\n", + "The constructed instance of the Efficient Resource Allocation Problem and the number k are the input to the new problem.\n", + "\n", + "Claim:\n", + "\n", + "There exists a set cover of at most k subsets if and only if there exists an Optimal Organizer Set of at most k organizers.\n", + "\n", + "Justification:\n", + "\n", + "If there exists a set cover of at most k subsets, it means we can select at most k organizers, each corresponding to one of these subsets, and collectively cover all conference topics. This set of organizers forms a valid solution to the Efficient Resource Allocation Problem.\n", + "\n", + "Conversely, if there exists an Optimal Organizer Set of at most k organizers, it means we can select at most k subsets, each corresponding to the conference topics coordinated by one of these organizers, and their union covers all elements of U. This set of subsets forms a valid solution to the Set Cover problem.\n", + "\n", + "Therefore, the Efficient Resource Allocation Problem is NP-complete, as the reduction from the NP-complete Set Cover problem is polynomial, and the solution to the Efficient Resource Allocation Problem can be verified in polynomial time." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Q3.\\\n", + "Consider the Comprehensive Project Team Formation Problem, defined as follows. You are managing a large-scale project that requires expertise in various domains (e.g., programming, design, testing, etc.). You have received job applications from m potential team members. For each of the n domains, there is some subset of potential team members qualified in that domain. The question is: For a given number k < m, is it possible to form a project team with at most k members such that there is at least one team member qualified in each of the n domains? We'll call this the Team Formation Challenge." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "**Answer & Justification :**\n", + "\n", + "To show that the Comprehensive Project Team Formation Problem is NP-complete, we can reduce the Set Cover problem to it.\n", + "\n", + "Reduction: Set Cover to Team Formation\n", + "\n", + "Given an instance of the Set Cover problem with a set U of n elements and a collection of m subsets of U, we construct an instance of the Team Formation Challenge as follows:\n", + "\n", + "For each element of U, create a domain.\n", + "For each of the m subsets, create a team member and let this team member be qualified in the domains that correspond to the elements of the subset.\n", + "The constructed instance of the Team Formation Challenge and the number k are the input to the new problem.\n", + "\n", + "Claim:\n", + "\n", + "There exists a set cover of at most k subsets if and only if there exists a project team of at most k members that covers all domains.\n", + "\n", + "Justification:\n", + "\n", + "If there exists a set cover of at most k subsets, it means we can select at most k team members, each corresponding to one of these subsets, and collectively cover all domains. This set of team members forms a valid solution to the Team Formation Challenge.\n", + "\n", + "Conversely, if there exists a project team of at most k members that covers all domains, it means we can select at most k subsets, each corresponding to the domains covered by one of these team members, and their union covers all elements of U. This set of subsets forms a valid solution to the Set Cover problem.\n", + "\n", + "Therefore, the Comprehensive Project Team Formation Problem is NP-complete, as the reduction from the NP-complete Set Cover problem is polynomial, and the solution to the Team Formation Challenge can be verified in polynomial time." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Q4.\n", + "\n", + "Suppose you are organizing a seminar series, and there are n speakers available to give presentations over the next n days. Each speaker has certain days when they are not available due to prior commitments. The goal is to schedule the maximum number of presentations, ensuring that each speaker gives a presentation on a day they are available. If a speaker is not scheduled to present on any of the n days, they must pay a penalty of $200.\n", + "\n", + "Express this problem as a maximum flow problem and determine its feasibility." + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "import networkx as nx\n", + "import matplotlib.pyplot as plt\n", + "\n", + "def create_schedule_graph(n, speakers_availability):\n", + " G = nx.DiGraph()\n", + "\n", + " # Create source and sink nodes\n", + " G.add_node('s', pos=(0, 0), label='Source')\n", + " G.add_node('t', pos=(n + 1, 0), label='Sink')\n", + "\n", + " # Create nodes for speakers and days\n", + " for i in range(1, n + 1):\n", + " G.add_node(f'x{i}', pos=(i, 1), label=f'Speaker {i}')\n", + " G.add_node(f'y{i}', pos=(i, -1), label=f'Day {i}')\n", + "\n", + " # Connect source to speakers\n", + " for i in range(1, n + 1):\n", + " G.add_edge('s', f'x{i}')\n", + "\n", + " # Connect days to sink\n", + " for i in range(1, n + 1):\n", + " G.add_edge(f'y{i}', 't')\n", + "\n", + " # Connect speakers to days based on availability\n", + " for i in range(1, n + 1):\n", + " for day in speakers_availability[i - 1]:\n", + " G.add_edge(f'x{i}', f'y{day}')\n", + "\n", + " return G\n", + "\n", + "def draw_schedule_graph(G):\n", + " pos = nx.get_node_attributes(G, 'pos')\n", + " labels = nx.get_node_attributes(G, 'label')\n", + "\n", + " nx.draw(G, pos, with_labels=True, labels=labels, node_size=700, node_color='skyblue', font_size=8, font_color='black', font_weight='bold', arrowsize=20)\n", + " plt.show()\n", + "\n", + "# Example usage\n", + "n = 4\n", + "speakers_availability = [[1, 2], [2, 3, 4], [1, 3], [1, 2, 4]]\n", + "\n", + "schedule_graph = create_schedule_graph(n, speakers_availability)\n", + "draw_schedule_graph(schedule_graph)\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "**Answer & Justification :**\n", + "\n", + "Algorithm:\n", + "\n", + "We construct a graph as follows:\n", + "\n", + "Create a source vertex s and a sink vertex t.\n", + "For each speaker i, construct a vertex xi (representing the number of presentations they can give), and add an edge from the source s to xi with capacity 1.\n", + "For each day j, construct a vertex yj (representing the number of presentations on that day), and add an edge from yj to the sink t with capacity 1.\n", + "For each speaker i, let Ci be the set of days available for presentations. For each c ∈ Ci, construct an edge from xi to yc with capacity ∞.\n", + "Run Ford-Fulkerson on the graph and compute the resulting minimum cut.\n", + "\n", + "Feasibility Analysis:\n", + "\n", + "The feasibility of scheduling all n speakers on one of the n days depends on the availability constraints. If there are speakers with overlapping unavailable days, it may not be possible to schedule everyone on a single day.\n", + "\n", + "Claim:\n", + "\n", + "If the schedule requires more than 'n' days, there is no way to schedule presentations for all 'n' speakers.\n", + "\n", + "Justification:\n", + "\n", + "If the schedule requires more than 'n' days, it implies that there are insufficient available days to accommodate all speakers, and hence, some speakers cannot be scheduled.\n", + "\n", + "Claim:\n", + "\n", + "If the schedule requires at most 'n' days, then the schedule will be feasible.\n", + "\n", + "Justification:\n", + "\n", + "If the schedule requires at most 'n' days, it means that there are enough available days to accommodate all speakers without overlaps, and the algorithm aims to schedule the maximum number of presentations. The feasible schedule is obtained by Ford-Fulkerson, and the minimum cut ensures that each speaker gives a presentation on a day they are available.\n", + "\n", + "Therefore, the Seminar Presentation Scheduling Problem is feasible if and only if the schedule requires at most 'n' days." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Q5.\n", + "\n", + "Consider the Directed Graph Construction problem, defined as follows. Given an undirected graph and out-degree upper bounds on the nodes, orient all the edges so that all out-degree bounds are respected, or show that it cannot be done" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "**Answer & Justification :**\n", + "\n", + "This problem can be reduced to a max-flow problem by constructing a bipartite graph and applying the max-flow algorithm. The steps are similar to the provided question:\n", + "\n", + "Construct a Bipartite Graph:\n", + "\n", + "Create a bipartite graph X ∪ Y.\n", + "Add a node in X for each edge in the original graph.\n", + "Add a node in Y for each node in the original graph.\n", + "Connect each node in X to the two nodes incident to the edge it represents in the original graph.\n", + "Assign a capacity greater than or equal to 1 to these edges.\n", + "Create a source node s connected to all nodes in X with each edge assigned a capacity of 1.\n", + "Create a sink node t connected from each node in Y, with each edge having a capacity equal to the out-degree upper bound for the corresponding node in the original graph.\n", + "Run Max-Flow:\n", + "\n", + "Apply the max-flow algorithm (e.g., Ford-Fulkerson) on this network.\n", + "\n", + "\n", + "Check Feasibility:\n", + "\n", + "If the max-flow value is less than the number of edges in the original undirected graph, report that it's not possible to orient the edges respecting the out-degree bounds.\n", + "Otherwise, orient the edges as follows:\n", + "Since nodes in X have exactly one unit of flow coming in, each node in X will pick one of its two outgoing edges to send this flow out.\n", + "The node to which this flow goes out is the head of this edge.\n", + "Since max-flow is equal to the number of edges in the original graph, all edges can be assigned a unique orientation, and this orientation respects the out-degree bounds on the graph.\n", + "Therefore, the Directed Graph Construction problem can be solved using the max-flow algorithm and the bipartite graph construction, ensuring that out-degree bounds are respected." + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAApQAAAHzCAYAAACe1o1DAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjYuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/P9b71AAAACXBIWXMAAA9hAAAPYQGoP6dpAAAkWElEQVR4nO3de5zVdYH/8fcMI4iYeAnyboawJl5pFfKa4j1M69d97Vetm5ptrVpu4pJaihfs4m6/3dTdrnZR19bNJDUTrRQ1xS5eMsQbpimYCCr3mfP7YxhEmMuZ+cwMHM7z+XjweBQO33PefM+Zec25DA2VSqUSAADooca1fQUAAKhtghIAgCKCEgCAIoISAIAighIAgCKCEgCAIoISAIAighIAgCKCEgCAIoISAIAighIAgCKCEgCAIoISAIAighIAgCKCEgCAIoISAIAighIAgCKCEgCAIoISAIAighIAgCKCEgCAIoISAIAighIAgCKCEgCAIoISAIAighIAgCKCEgCAIoISAIAighIAgCKCEgCAIoISAIAighIAgCKCEgCAIoISAIAighIAgCKCEgCAIoISAIAighIAgCKCEgCAIoISAIAighIAgCKCEgCAIoISAIAighIAgCKCEgCAIoISAIAighIAgCKCEgCAIoISAIAighIAgCKCEgCAIoISAIAighIAgCKCEgCAIoISAIAighIAgCKCEgCAIoISAIAighIAgCKCEgCAIoISAIAighIAgCKCEgCAIoISAIAighIAgCKCEgCAIoISAIAighIAgCKCEgCAIoISAIAighIAgCKCEgCAIoISAIAighIAgCKCEgCAIoISAIAighIAgCKCEgCAIoISAIAighIAgCKCEgCAIoISAIAighIAgCKCEgCAIoISAIAighIAgCKCEgCAIoISAIAighIAgCKCEgCAIoISAIAighIAgCKCEgCAIoISAIAighIAgCKCEgCAIoISAIAighIAgCKCEgCAIoISAIAighIAgCKCEgCAIoISAIAighIAgCKCEgCAIoISAIAighIAgCKCEgCAIoISAIAighIAgCKCEgCAIoISAIAighIAgCKCEgCAIoISAIAighIAgCKCEgCAIoISAIAighIAgCKCEgCAIoISAIAighIAgCKCEgCAIoISAIAighIAgCKCEgCAIoISAIAighIAgCKCEgCAIoISAIAighIAgCKCEgCAIoISAIAighIAgCKCEgCAIoISAIAighIAgCKCEgCAIoISAIAighIAgCKCEgCAIoISAIAighIAgCKCEgCAIoISAIAighIAgCKCEgCAIoISAIAighIAgCKCEgCAIoISAIAighIAgCKCEgCAIoISAIAighIAgCKCEgCAIoISAIAighIAgCKCEgCAIoISAIAighIAgCKCEgCAIoISAIAighIAgCKCEgCAIoISAIAighIAgCKCEgCAIoISAIAighIAgCKCEgCAIoISAIAighIAgCKCEgCAIoISAIAighIAgCKCEgCAIoISAIAighIAgCKCEgCAIoISAIAighIAgCKCEgCAIoISAIAighIAgCKCEgCAIoISAIAighIAgCKCEgCAIoISAIAighIAgCKCEgCAIoISAIAighIAgCKCEgCAIoISAIAighIAgCKCEgCAIoISAIAighIAgCKCEgCAIoISAIAighIAgCKCEgCAIoISAIAighIAgCKCEgCAIoISAIAighIAgCKCEgCAIoISAIAighIAgCKCEgCAIoISAIAighIAgCKCEgCAIoISAIAighIAgCKCEgCAIoISAIAighIAgCKCEgCAIoISAIAighIAgCKCEgCAIoISAIAighIAgCKCEgCAIoISAIAiTWv7Cqwtry5ryXMLl2fOouVZ3FxJc6WSAQ0N2XBAQ4YPbsqWGzVlyAa139v1sjOx1dbaVi87E1ttrW31srO76ioo5yxanvvnLs7M+UuycHklSdKQpKHhtY+pVJLKiv+9UVNDRg0dlDHDNszwwbXzV1UvOxNbbW1Vq1vrZWdiq62tanVrvews0VCpVCpdf1jtqlQqmTl/ae55flGeXbg8DXnthFejMUlLkq03asrYNw3OqKED07DqLWgdUS87E1ttbV+tbK2XnYmttravVrbWy87esl4H5SvLWnLT7Jcza8Gybt8QVtf253faZIMcuf0bsvE69HB2vexMbO0pW9cN9bIzsbWnbF031MvO3rTeBuUj85bkxtmvZGlLpeiGsLqGJAMbG3LU9htn580G9eKRe6Zedia29gZb15562ZnY2htsXXvqZWdvWy+D8jdzFmXaM6/2+eWM32ZI9h4+uM8vpyP1sjOxtS/Y2n/qZWdia1+wtf/Uy86+sN497tpfN4YkufWZV3PvnEX9clmrq5edia19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f3IX573VkM3emKT12aEka7wG9A1vfFMWzPlLHvn1LZ1ev4EDB+a0f/pMh18jp06d2umfb7uv7rXXXpk6dWqam5tzysknp2nF9VqpD5Kiu+e1aR3smmrVdFBuOKAhJTH/xIzpufe6K/PqS39Nkjzy61ty73VXFl2nSiXZsKkx5557bl555ZVuhWVHSncuWfhKLv/7CXlixvSM2veQDNtxZH5/83V57De/7vExK5Vk0ICGbLLJJvnRj36UefPmdSssO7Lq1s233SELX3px5bt1k+SZP/4+9153ZV585qkkyRP335V7r7sySxa+kiRrvMN3VdX8Pcx//pnWy95mhzW2vvGNb8wFF1yQ2bNn5/Of/3xVYVnt1p7405235povfCr3XPvd3HPtd3LrFV9Okg6fNqpG29YTTzwxr776arfCsjOdndfnZv0xV372o60vWP/f72fqVya17hjZumPes7MzccywTD6s/RB4+wf+IR+e8s2Vv9p84ILLs/nWreexo/O64YDGHHzwwbnjjjsybdq0jB3bGqSdhWXbfxs3blxuu+223HHHHXnHO96xxs6e2O3wY1+3pe0L8oQzJvf4qbi2c9qbfvWrX+Un37ksTYMGZ5td9sigIRvn1XkvZPTBrU893vivX8y911258ja56/gJSVrffJW0vl7tV9/79zw3q/Onn5PW178myXUXfC73XPud/Pr738hvp/533rjDiLxpp7fmpef+nAenTc3855/NE/ffnUvPOjWbbbZZtze1heSZZ56Zp59+OpMnT84WW2yRpOvPS9865X154JafZJu37pGdxh6UB35xff74y9ceiers81I19+POPi+VaAvJp556Kttuu+0aW1f3xIzpmX7Vf2aD1c57e7uq8eFLvpU37rBT/nfyZ9d4F/uqerq17b66++67Z+rUqZkxY0aOPvroNDQ0rLGzt7/e9OS89sV9tT81df0h667hg5uKfobUfdf/MPf/9LXX9vz6yn9Pkuz97o/0+JiVFdcraf0Ede655+bss8/Ol770pUyZMiWLFnX/n1cq3bnwpRfz/GOt363OnD4tM6dPS9L6ndOIfQ7o0TFX3ZlkZVhefvnlOemkk3LNNdf06A0rq24dOe4deX7WH/PnB+/Pjm9rfQTpj7+8ObdeccnKj59x/Y8y4/ofZaexB2Xg4CFJWt/M0dBO6FXz9/DU7+9tvey3v6PDrW1hefrpp+erX/1qLr300ixZsqTbe0vP65DNtshzsx7OQ7dNTUtzczYZtmUO+vhnMv7EM3p8zNW3nnjiiTnxxBNzxRVX5LTTTuvxG3Q6O6+DNto4L899Pjf/++QsX7Ikb9hieMa97+M54tNfaL1OKz7rNw5o/9PVtrvsmW132XON3x998NHZYMW7pLs6rw0NDSvD8vbbb8+kSZNWvq5ydePGjcv555+/MiI72tkTb3rL3+RNb/mblf//Z187t/V6jzs4mwzbskfHXP2c9oYhQ4bkT/f/JjMf/X6WL1mSTbfaNod9cmL+9tgPp6GxITOuvyo/veRfsumW2+SYf74wYyZ8IElyxKcn5aXnnsmMn16Vnfc/LFv9za5dvnll/+M/mVQque8nP8gNX56UDTfeJEedek4aBwzIRy/9QW76+nl5aNoNmXH9jzJ0+FY5bPwh3drS2NiYQYMG5bTTTsvpp5++MiJX1dXnpSfub/2Zpc/88fe5auKJSZJNt9oubz3oiJW3344+L1VzP155+x138MrfKzmv22+/fe68886VEdnR1tUNHDwks/9wX+6/4erXnfe2R9K7a+PNtsgJl/04l59wTP7n/NPTMGBA3nbMB9f4uO5uHTBgQJqbm7P77rvn/PPPz1FHHbXGm/xW39nbX296cl774r7anxoq3f23itYhry5rydcffHFtX401fHrXzTNkgzVvYC0tLe2G5YUXXpgzzzyzw+PV2s6k9ccItReWc+bMybBhHb9zddWtc554NJe+b/+Mfe/HcuyZF3d5fZ579OH86wcOytj3fTzHTazu56Gt7juf+VAev296zrzxd9lo6GuPcnS29YUXXlgjLEePHp0HH+z8C2Utntf2wnLzzTfPX//6106PWXJe//jLm/O9047PkZ85Owd9rHuvS2vT3fNaqVQyadKkNX4W5aRJk3Leeed1eDm1eE57qla3jh49Og8//HBVIdlmbX9euvR9B2TxKwtyxk9nrHz6OOl865/+9Kc13pjTWUi2qcXz+vOf/zxHHHFEGhsb09LSkr322qvDkGyz+s515bz2xX21v9TmtV5hyAaN2ahp3Xp4eEhTQ4c3hrZHLFd/KryzwEpqb2eSDp8K33DDzn+u3qpbh+84Mnu98325/4ars3B+1//27uMzpmeTYVvmyBWPbHXXnCcezczp07L/8Se/Ljq62treU+FDhw7t8vJq8by291R4V+c0KTuvT9w/PVuNGt36SFUP9OS8NjQ05O1vf3uS1gAZPbr1aapx48Z1elm1eE57fNwa3Tp06NAOn9ru8Lhr8fPSzOnT8vxjj2T8SWe8Liar+Rzcpr2ntjtSi+e1besee+yxxlPbHR5ztZ3rwnntq/tqf6npRyiT5KbZr+T3f128TvzzSY1Jdt9iwxy5/cZVfXxLS0tuvfXWjB8/vsvX4tXyzqT1EcsHHngg++23X5cfW+tb582bl+XLl3f5jUJS+1tvvvnmjBo1Kjvu2Pk7NJPa29rc3Jwnn3wyI0aMSKVSyeOPP543v/nNXb5xp9Z2lqjFrXPnzk1TU1O3X2dZi1svu+yyTJgwocuIXF2tba1UKpk1a1Z22mmnbv382lrbua6r3RReYcywDdeJG0PS+m9xjhlW/b9s0djYmMMOO6yqN3bU8s6k9TvIamIyqf2tm222WVUxmdT+1iOOOKKqmExqb+uAAQMyYsSIJK2PWI4YMaKqd4HX2s4Stbh12LBhPXrTTi1uPfnkk7sdk0ntbW1oaMjIkSO7FZNJ7e1c19V8UA4f3JStN2rqi3f7d0tDkm2GNPXZC2rrZWdi69pga++pl52JrWuDrb2nXnb2l5oPyiQZ+6bBa/27jEqSfYb37g9EXV297Exs7W+29q562ZnY2t9s7V31srM/rBdBOWrowOy0yQZr7buMhiQjhw7MqKG9/68WrKpedia29idbe1+97Exs7U+29r562dkf1ougbGhoyJHbvyEDG9fOTWJgY0OO3G7jbr9+o7vqZWdia3+ytffVy87E1v5ka++rl539Yb0IyiTZeIPGHLWW3h111PYb99tb/etlZ2Jrf7G1b9TLzsTW/mJr36iXnX1t/Vixws6bDcr4bYb062WO32ZIdt6sd//R+q7Uy87E1r5ma9+ql52JrX3N1r5VLzv70noVlEmy9/DB/XajGL/NkOy9ll5IWy87E1v7iq39o152Jrb2FVv7R73s7Cs1/4PNO/LIvCW5cfYrWdpS6dV3cDWk9TUPR22/8TrxnUW97Exs7Q22rj31sjOxtTfYuvbUy87ett4GZZK8sqwlN81+ObMWLEtDUnTDaPvzI4cOzJHbrVuveaiXnYmtPWXruqFedia29pSt64Z62dmb1uugTFr/SaaZ85fmnucX5dmFy9OY1p9IX622j99mSFP2GT44o4YOXCffjVUvOxNbbW1frWytl52Jrba2r1a21svO3rLeB+Wq5ixanvvnLs6j85fk1eWtsxuSrHp+K5XXvhMZ0tSQkUMHZcywDWvqJ9jXy87EVltb1erWetmZ2Gprq1rdWi87S9RVUK7q1WUteW7h8sxZtDxLmitZXqmkqaEhgwY0ZPjgpmy5UdN68bB0vexMbLW1ttXLzsRWW2tbvezsrroNSgAAekf9JTQAAL1KUAIAUERQAgBQRFACAFBEUAIAUERQAgBQRFACAFBEUAIAUERQAgBQRFACAFBEUAIAUERQAgBQRFACAFBEUAIAUERQAgBQRFACAFBEUAIAUERQAgBQRFACAFBEUAIAUERQAgBQRFACAFBEUAIAUERQAgBQRFACAFBEUAIAUERQAgBQRFACAFBEUAIAUERQAgBQRFACAFBEUAIAUERQAgBQRFACAFBEUAIAUERQAgBQRFACAFBEUAIAUERQAgBQRFACAFBEUAIAUERQAgBQRFACAFBEUAIAUERQAgBQRFACAFBEUAIAUERQAgBQRFACAFBEUAIAUERQAgBQRFACAFBEUAIAUERQAgBQRFACAFBEUAIAUERQAgBQRFACAFBEUAIAUERQAgBQRFACAFBEUAIAUERQAgBQRFACAFBEUAIAUERQAgBQRFACAFBEUAIAUERQAgBQRFACAFBEUAIAUERQAgBQRFACAFBEUAIAUERQAgBQRFACAFBEUAIAUERQAgBQRFACAFBEUAIAUERQAgBQRFACAFBEUAIAUERQAgBQRFACAFBEUAIAUERQAgBQRFACAFBEUAIAUERQAgBQRFACAFBEUAIAUERQAgBQRFACAFBEUAIAUERQAgBQRFACAFBEUAIAUERQAgBQRFACAFBEUAIAUERQAgBQRFACAFBEUAIAUERQAgBQRFACAFBEUAIAUERQAgBQRFACAFBEUAIAUERQAgBQRFACAFBEUAIAUERQAgBQRFACAFBEUAIAUERQAgBQRFACAFBEUAIAUERQAgBQRFACAFBEUAIAUERQAgBQRFACAFBEUAIAUERQAgBQRFACAFBEUAIAUERQAgBQRFACAFBEUAIAUERQAgBQRFACAFBEUAIAUERQAgBQRFACAFBEUAIAUERQAgBQRFACAFBEUAIAUERQAgBQRFACAFBEUAIAUERQAgBQRFACAFBEUAIAUERQAgBQRFACAFBEUAIAUERQAgBQRFACAFBEUAIAUERQAgBQRFACAFBEUAIAUERQAgBQRFACAFBEUAIAUERQAgBQRFACAFBEUAIAUERQAgBQRFACAFBEUAIAUERQAgBQRFACAFBEUAIAUERQAgBQRFACAFBEUAIAUERQAgBQRFACAFBEUAIAUERQAgBQRFACAFBEUAIAUERQAgBQRFACAFBEUAIAUERQAgBQRFACAFBEUAIAUERQAgBQRFACAFBEUAIAUERQAgBQRFACAFBEUAIAUERQAgBQRFACAFBEUAIAUERQAgBQRFACAFBEUAIAUERQAgBQRFACAFBEUAIAUERQAgBQRFACAFBEUAIAUERQAgBQRFACAFBEUAIAUERQAgBQRFACAFBEUAIAUERQAgBQRFACAFBEUAIAUERQAgBQRFACAFBEUAIAUERQAgBQRFACAFBEUAIAUERQAgBQRFACAFBEUAIAUERQAgBQRFACAFBEUAIAUERQAgBQRFACAFBEUAIAUERQAgBQRFACAFBEUAIAUERQAgBQRFACAFDk/wPVOawbx5YilAAAAABJRU5ErkJggg==", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "import networkx as nx\n", + "import matplotlib.pyplot as plt\n", + "\n", + "def construct_bipartite_graph(original_graph, out_degree_bounds):\n", + " G = nx.DiGraph()\n", + "\n", + " # Create nodes in X for each edge in the original graph\n", + " for edge in original_graph.edges():\n", + " G.add_node(edge, bipartite=0)\n", + "\n", + " # Create nodes in Y for each node in the original graph\n", + " for node in original_graph.nodes():\n", + " G.add_node(node, bipartite=1)\n", + "\n", + " # Connect nodes in X to nodes in Y\n", + " for edge in original_graph.edges():\n", + " for node in edge:\n", + " G.add_edge(edge, node, capacity=float('inf'))\n", + "\n", + " # Create source node connected to nodes in X\n", + " source_node = 'source'\n", + " G.add_node(source_node)\n", + " for edge in original_graph.edges():\n", + " G.add_edge(source_node, edge, capacity=1)\n", + "\n", + " # Create sink node connected from nodes in Y with capacity based on out-degree bounds\n", + " sink_node = 'sink'\n", + " G.add_node(sink_node)\n", + " for node in original_graph.nodes():\n", + " G.add_edge(node, sink_node, capacity=out_degree_bounds[node])\n", + "\n", + " return G\n", + "\n", + "def draw_bipartite_graph(G):\n", + " pos = nx.bipartite_layout(G, G.nodes(), align='horizontal')\n", + " nx.draw(G, pos, with_labels=True, font_size=8, font_color='black', font_weight='bold', node_size=700, node_color='skyblue', arrowsize=20)\n", + " plt.show()\n", + "\n", + "# Example usage\n", + "original_graph = nx.Graph()\n", + "original_graph.add_edges_from([(1, 2), (2, 3), (3, 1), (3, 4)])\n", + "out_degree_bounds = {1: 1, 2: 1, 3: 2, 4: 1}\n", + "\n", + "bipartite_graph = construct_bipartite_graph(original_graph, out_degree_bounds)\n", + "draw_bipartite_graph(bipartite_graph)\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Q6.\n", + "\n", + "Consider a scenario where a company is conducting discrete event simulations for a project involving multiple tasks. The goal is to determine if there is an efficient assignment of tasks to workers in order to simulate the project events successfully.\n", + "\n", + "Problem Description: Discrete Event Simulation and Task Assignment\n", + "\n", + "The Discrete Event Simulation and Task Assignment problem involves simulating events over a discrete timeline. The company needs to assign tasks to workers such that every event is simulated successfully. The simulation involves t discrete minutes, and each task is associated with a specific minute.\n", + "\n", + "For each worker u and each minute m, a value I(u, m) is recorded, representing the task assigned to worker u during minute m. If a worker did not receive a task during a particular minute, the value is set to the null symbol ⊥.\n", + "\n", + "The company recently experienced a disruption where certain events were not simulated successfully. They suspect that a small coalition of k workers might have collectively failed to simulate some events. A subset S of workers is considered suspicious if, for each minute m from 1 to t, there is at least one worker u ∈ S for which I(u, m) = im.\n", + "\n", + "The Discrete Event Simulation and Task Assignment Problem asks: Given the collection of all values I(u, m), a number k, and the simulation timeline t, is there a suspicious coalition of workers of size at most k?" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "**Answer & Justification :**\n", + "\n", + "The Discrete Event Simulation and Task Assignment problem is in NP, as the verification of a suspicious coalition's existence can be done efficiently.\n", + "\n", + "To show that this problem is NP-complete, we can reduce the well-known Set Cover problem to it. The Set Cover problem involves covering a set of elements with a minimum number of subsets. The reduction involves constructing an instance of the Discrete Event Simulation and Task Assignment Problem where workers represent set elements, and task assignments represent subset coverings.\n", + "\n", + "The claim is that there exists a set cover of at most k subsets if and only if there exists a suspicious coalition of workers of size at most k in the corresponding Discrete Event Simulation and Task Assignment instance.\n", + "\n", + "A reduction from Set Cover to Discrete Event Simulation and Task Assignment is established by constructing the instance such that a set cover corresponds to a suspicious coalition. The proof follows a similar logic as the one provided in the original solution." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Q7.\n", + "\n", + "Consider a variant of the Nested Subset Sum problem, named Double Subset Sum. In this problem, we are given a set of integers S and two target values, x and y. The goal is to determine whether there exist two distinct subsets S' and S'' of S such that:\n", + "\n", + "1. The elements of S' sum to x.\n", + "2. The elements of S'' sum to y.\n", + "Problem Description: Double Subset Sum\n", + "\n", + "The Double Subset Sum problem involves checking whether there are two distinct subsets S' and S'' of a given set of integers S such that the sum of elements in S' is equal to x and the sum of elements in S'' is equal to y.\n" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "import networkx as nx\n", + "import matplotlib.pyplot as plt\n", + "\n", + "def create_subset_sum_graph(S, x, y):\n", + " G = nx.Graph()\n", + "\n", + " # Create nodes for elements in S\n", + " G.add_nodes_from(S, bipartite=0)\n", + "\n", + " # Create nodes for x and y\n", + " G.add_nodes_from([x, y], bipartite=1)\n", + "\n", + " # Connect elements in S to x\n", + " G.add_edges_from([(elem, x) for elem in S])\n", + "\n", + " # Connect elements in x to y\n", + " G.add_edges_from([(x, y)])\n", + "\n", + " return G\n", + "\n", + "def draw_graph(G):\n", + " pos = nx.bipartite_layout(G, G.nodes(), align='horizontal')\n", + " nx.draw(G, pos, with_labels=True, font_size=8, font_color='black', font_weight='bold', node_size=700, node_color='skyblue', arrowsize=20)\n", + " plt.show()\n", + "\n", + "# Example usage\n", + "S = {1, 2, 3, 4, 5}\n", + "x = 7\n", + "y = 7\n", + "\n", + "subset_sum_graph = create_subset_sum_graph(S, x, y)\n", + "draw_graph(subset_sum_graph)\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "**Answer & Justification :**\n", + "\n", + "The Double Subset Sum problem is in NP. The certifier algorithm can use S' and S'' as the certificate, sum the elements of each set, and verify that they add up to x and y, respectively.\n", + "\n", + "To show NP-hardness, we reduce from the well-known Subset-Sum problem. Given a set of integers S and a target value x, we construct an instance of Double Subset Sum by taking S and x as before, and setting y = x.\n", + "\n", + "The algorithm for Double Subset Sum solves the problem on S, x, and y by making a black box call. The correctness of the reduction is established by proving the following:\n", + "\n", + "1. If there is a subset S' of S such that S' sums to x, then taking S' as S0 and S'' = S' as a solution to Subset Sum also satisfies the conditions of Double Subset Sum.\n", + "\n", + "2. If there is a solution S' and S'' to Double Subset Sum, then S' is also a solution to Subset Sum.\n", + "\n", + "The runtime of the algorithm is polynomial, as it essentially involves a black box call to solve the Double Subset Sum problem." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Q8.\n", + "\n", + "Consider a variant of the Independent Set Problem, named Maximum Independent Set (MIS) to Interval Scheduling. In this problem, we are given an undirected graph G and an integer k. The goal is to determine whether there exists a maximum independent set of vertices in G with size at least k" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "import networkx as nx\n", + "import matplotlib.pyplot as plt\n", + "\n", + "def maximum_independent_set_to_interval_scheduling_reduction(graph, k):\n", + " G = nx.Graph()\n", + "\n", + " # Create a graph for Independent Set\n", + " G.add_nodes_from(graph.nodes())\n", + " G.add_edges_from(graph.edges())\n", + "\n", + " # Create a graph for Interval Scheduling\n", + " H = nx.Graph()\n", + "\n", + " # Map each vertex to an interval\n", + " for node in graph.nodes():\n", + " interval_start = node\n", + " interval_end = node + 1\n", + " H.add_node((interval_start, interval_end))\n", + "\n", + " # Connect intervals that correspond to non-adjacent vertices\n", + " for edge in graph.edges():\n", + " u, v = edge\n", + " H.add_edge((u, u + 1), (v, v + 1))\n", + "\n", + " return G, H\n", + "\n", + "# Example: Create a simple graph for Independent Set\n", + "G_independent_set = nx.Graph()\n", + "G_independent_set.add_edges_from([(1, 2), (1, 3), (2, 4), (3, 4), (4, 5)])\n", + "\n", + "# Set the parameter k for Maximum Independent Set\n", + "k_max_independent_set = 3\n", + "\n", + "# Apply the reduction\n", + "G_interval_scheduling, H_interval_scheduling = maximum_independent_set_to_interval_scheduling_reduction(G_independent_set, k_max_independent_set)\n", + "\n", + "# Draw the graphs\n", + "pos_G = nx.spring_layout(G_independent_set)\n", + "pos_H = nx.spring_layout(H_interval_scheduling)\n", + "\n", + "plt.figure(figsize=(12, 5))\n", + "\n", + "plt.subplot(121)\n", + "nx.draw(G_independent_set, pos=pos_G, with_labels=True, font_size=8, font_color='black', font_weight='bold', node_size=700, node_color='lightcoral', arrowsize=20)\n", + "plt.title(\"Independent Set Graph\")\n", + "\n", + "plt.subplot(122)\n", + "nx.draw(H_interval_scheduling, pos=pos_H, with_labels=True, font_size=8, font_color='black', font_weight='bold', node_size=700, node_color='skyblue', arrowsize=20)\n", + "plt.title(\"Interval Scheduling Graph\")\n", + "\n", + "plt.tight_layout()\n", + "plt.show()\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "**Answer & Justification :**\n", + "\n", + "The Maximum Independent Set to Interval Scheduling problem involves checking whether there exists a maximum independent set of vertices in a given graph with size at least k, which corresponds to finding a subset of non-overlapping intervals in the Interval Scheduling context.\n", + "\n", + "To show NP-hardness, we can perform a reduction from the known NP-complete Independent Set Problem. Given an instance of Independent Set with a graph G and an integer k, construct an instance of Maximum Independent Set to Interval Scheduling by mapping each vertex in G to an interval on the timeline and connecting intervals that correspond to non-adjacent vertices.\n", + "\n", + "The correctness of the reduction is established by proving that there exists a maximum independent set of vertices in G with size at least k if and only if there exists a subset of non-overlapping intervals with size at least k in the constructed Interval Scheduling instance.\n", + "\n", + "The runtime of the algorithm is polynomial, as it essentially involves a black box call to solve the Interval Scheduling problem." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Q9.\n", + "\n", + "*Resource Allocation with Conflicts*\n", + "\n", + "Given a set of resources and a collection of tasks that need to be performed, determine if it's possible to allocate the tasks to the resources in such a way that no two conflicting tasks are assigned to the same resource, and the allocation can be completed in a given number of days (e.g., 3 days)." + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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P/74o1avXq1u3brJ5XKpa9euWr16tWrUqCGPx+NzmblURue8zQcuplmzZkpJSVFGRkaBb12d30xFZcSIEerWrZs++OADLVq0SE8//bSefPJJvf/+++rXr5/peAACCGUGQIEJCQnRE088oR49euif//ynHnzwQTVo0ECSd6rTudGKy6lQoYJuuukm3XTTTTpx4oS6d++uRx55ROPHj1fdunUlSd9+++0FX/fNN9+oUqVKKlWqlCTvu9AXu+HgH9/BvpTKlSurTJky+uqrry77uIYNG+rEiRO5em5/dPLkSX300UcaOXLkRReB33nnnUpKSspTmalbt662b98uj8eTY3Tmm2++yf78udwLFy7UkSNHLvnu+oIFC3TmzBnNnz8/x+jD8uXLL3hsbqdpnf932LNnzxyf+/bbb7M/XxDOlZTFixdr48aNevDBByV5S/Orr76qGjVqZN+g8nJ8mYJ2OQMHDtS6dev03nvv5ZgWeDHnf9/O/TclSRkZGdq9e3e+fv58kZufH+ny37vq1atr4sSJmjhxog4cOKB27drpscceo8wAyBOmmQEoUHFxcerYsaNeeOEFpaenq0qVKoqLi9Prr7+uffv2XfD4gwcPZv/58OHDOT4XFRWlRo0a6cyZM5K8L37atGmjd999N0dR+eqrr7Ro0SL1798/+1jDhg2VmpqaY5ravn379MEHH+Tqebjdbg0ZMkQLFizIsVXxOefe4R4xYoTWrVunhQsXXvCYY8eOKTMz85LX+OCDD3Ty5ElNmjRJw4YNu+DXgAED9N5772U//9zo37+/fv/9d82ePTv7WGZmpv7xj38oKipKsbGxkqTrr79ejuNoypQpl3xu597dP//d/NTUVL3zzjsXfE2pUqVydbf6Dh06qEqVKnrttddyPK/PPvtMO3fu1LXXXpu7J5oL9evXV82aNfX888/r7NmziomJkeQtOT/88IPmzZunzp07KzT08u/rnSvIuXl+eXHbbbepevXq+tOf/qTvvvvugs8fOHBAjz76qCTv2rSwsDC99NJLOf4+/vWvfyk1NbVAv2+5kZufH+niPxdZWVkXTFGsUqWKatSokaefdQCQGJkBUAjuv/9+DR8+XFOnTtVtt92ml19+WV27dtXVV1+tW265RQ0aNND+/fu1bt06/fbbb9q2bZskqUWLFoqLi1P79u1VoUIFbdq0KXv7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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "import networkx as nx\n", + "import matplotlib.pyplot as plt\n", + "\n", + "def maximum_independent_set_to_interval_scheduling_reduction(graph, k_max_independent_set):\n", + " # Perform the reduction here (this depends on your specific reduction)\n", + " # Replace this with your actual reduction logic\n", + " # For illustration purposes, let's assume we copy the graph\n", + " return graph.copy()\n", + "\n", + "def visualize_resource_allocation(graph):\n", + " pos = nx.spring_layout(graph)\n", + " colors = nx.coloring.greedy_color(graph, strategy=\"largest_first\")\n", + "\n", + " plt.figure(figsize=(8, 6))\n", + " nx.draw(graph, pos, with_labels=True, node_color=[colors[node] for node in graph.nodes()], cmap=plt.cm.rainbow, font_size=8, font_color='black', font_weight='bold', node_size=700, arrowsize=20)\n", + " plt.title(\"Resource Allocation with Conflicts\")\n", + " plt.show()\n", + "\n", + "# Example: Construct a simple graph for the 3-coloring problem\n", + "G_3_coloring = nx.Graph()\n", + "G_3_coloring.add_edges_from([(1, 2), (1, 3), (2, 4), (3, 4), (4, 5)])\n", + "\n", + "# Apply the reduction and visualize the graph\n", + "k_max_independent_set = 3\n", + "G_resource_allocation = maximum_independent_set_to_interval_scheduling_reduction(G_3_coloring, k_max_independent_set)\n", + "visualize_resource_allocation(G_resource_allocation)\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "**Answer & Justification :**\n", + "\n", + "The problem is in NP: Given a set of task allocations, we can easily verify in polynomial time that each task is assigned to a resource, there are no conflicting tasks on the same day, and the total number of days required is within the limit.\n", + "\n", + "To show NP-hardness, we perform a poly-time reduction from the 3-coloring problem to Resource Allocation with Conflicts.\n", + "\n", + "Given an instance of the 3-coloring problem with an undirected graph G, we construct an instance of Resource Allocation with Conflicts as follows:\n", + "\n", + "1. Each vertex in G corresponds to a task, and each edge in G corresponds to a conflict between tasks.\n", + "2. The resources represent the three colors (red, green, and blue).\n", + "3. Assign each task to a resource corresponding to the color in a valid 3-coloring of G.\n", + "\n", + "Claim:\n", + "\n", + "There exists a 3-coloring of the graph G if and only if there exists a valid resource allocation of tasks in Resource Allocation with Conflicts.\n", + "\n", + "Justification:\n", + "\n", + "If there is a valid 3-coloring of G, then the corresponding assignment of tasks to resources forms a valid solution to Resource Allocation with Conflicts.\n", + "\n", + "Conversely, if there is a valid resource allocation of tasks in Resource Allocation with Conflicts, the corresponding coloring of G using the assigned resources forms a valid 3-coloring." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Q10.\n", + "\n", + "Academic Conference Scheduling\n", + "\n", + "You are responsible for scheduling sessions at an academic conference. The conference has multiple parallel sessions, and each session has a set of speakers presenting their research papers. However, there are certain constraints in the scheduling process:\n", + "\n", + "*A speaker can present in only one session.\\\n", + "*Some speakers have conflicts and cannot present in the same session.\\\n", + "*Your goal is to maximize the number of distinct research papers presented at the conference.\n", + "\n", + "Questions:\n", + "\n", + "a. Show that the problem ACADEMIC-CONFERENCE-SCHEDULING is NP-Complete.\n", + "\n", + "b. Would it be easier to simply conclude on the possibility (true/false) of finding a schedule rather than actually finding the list of scheduled sessions?" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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L51nGE8uD/gsT3v+f33dDePxsmQFCxY0PD09jQwZMhjdunUzbt26FekxVatWNYoUKfLUXPXr13+hHP/2X0vv/Tvrv5ceM4zHf59ffvmlkSlTJiNRokSGt7e3ceTIkad+re7du2cMHDjQyJs3r5EgQQIjbdq0RsWKFY3hw4cbISEhT+QZMWKEkS1bNsPLy8uoXLmycfDgwSfyv8j7M7a8nn/jX8vchYWFGb169TLSpUtnWCyW/1yG7+7du8aoUaOM2rVrG1mzZjU8PT2NZMmSGRUqVDAmTJjwxHv6RbIahmFs377dKFWqlJEgQYIXWoZvwoQJRu7cuQ13d/cnvpYv8p5+mhkzZhg+Pj5GhgwZDA8PDyNVqlSGj4+PsWjRouc+95/CwsKMiRMnGpUrVzZSpEhheHp6Gjly5DA6duz4xLJ8v//+u1G7dm0jadKkRuLEiY1q1aoZ27dvj/SYp71fDMMwZs2aZZQsWdLw8vIyUqdObbRr1y7SspGG8fj7UZIkSZ6a81lL773Ie8YwDGPmzJlGwYIFDS8vL6No0aLG4sWLjWbNmhkFCxb87y+QiIiLshiGZjcRERGJbc6ePUuuXLn4/vvv6du3r9lxROKkEiVKkC5dOtasWWN2FBGRGKd79kVEREQkTgsNDX1ifoiNGzdy8OBBvL29zQklImIy3bMvIiIiInHaxYsX8fHxoX379mTOnJljx44xbtw4MmbMyLvvvmt2PBERU6jsi4iIiEiclipVKkqVKsXEiRO5du0aSZIkoX79+nz77bekSZPG7HgiIqbQPfsiIiIiIiIiLkb37IuIiIiIiIi4GJV9ERERERERERejsi8iIiIiIiLiYlT2RURERERERFyMyr6IiIiIiIiIi1HZFxEREREREXExKvsiIiIiIiIiLkZlX0RERERERMTFqOyLiIiIiIiIuBiVfREREREREREXo7IvIiIiIiIi4mJU9kVERERERERcjMq+iIiIiIiIiItR2RcRERERERFxMSr7IiIiIiIiIi5GZV9ERERERETExajsi4iIiIiIiLgYlX0RERERERERF6OyLyIiIiIiIuJiVPZFREREREREXIzKvoiIiIiIiIiLUdkXERERERERcTEq+yIiIiIiIiIuRmVfRERERERExMWo7IuIiIiIiIi4GJV9ERERERERERejsi8iIiIiIiLiYlT2RURERERERFyMyr6IiIiIiIiIi1HZFxEREREREXExKvsiIiIiIiIiLkZlX0RERERERMTFqOyLiIiIiIiIuBiVfREREREREREXo7IvIiIiIiIi4mJU9kVERERERERcjMq+iIiIiIiIiItR2RcRERERERFxMSr7IiIiIiIiIi5GZV9ERERERETExajsi4iIiIiIiLgYlX0RERERERERF6OyLyIiIiIiIuJiVPZFREREREREXIzKvoiIiIiIiIiLUdkXERERERERcTEq+yIiIiIiIiIuRmVfRERERERExMWo7IuIiIiIiIi4GJV9ERERERERERejsi8iIiIiIiLiYlT2RURERERERFyMyr6IiIiIiIiIi/EwO4BIbBBMKJe5y2XucJMHhBKOAXjgRgoSkYkUZCIFSfEyO6qIiIiIiMhzqexLvBVMKIe4yF7OcY37AFgACxYMjP99bMGAiI+T4kVJslGK7CQnkUnJRURERERE/pvFMAzD7BAiMek+QWzmJAe4QBjOl36+5X+/5ycDVclHRlJEbUAREREREZHXpLIv8YaBwREusZwjhBAeMVr/qixYAIPK5KMyeXHXFBgiIiIiIhJLqOxLvPCIUBZxgBNcjZb9pyMpzXmTdCSLlv2LiIiIiIi8DJV9cXn3CWIKu7jOg9cezX8WCxYS4E57ypGFlNFyDBERERERkRel647FpT0kBDs7uRGNRR8e3yIQQhhT2Ekgd6LtOCIiIiIiIi9CZV9clhODmezhJg9xRmPR/5sBhOJkCru4T3C0H09ERERERORZVPbFZe3kNBe4Ha0j+v9mYBBEGMs4HKPHFRERERER+SeVfXFJ17nPeo6bcmwDg+Nc4Q8um3J8ERERERERlX1xSUs5ZHYElnGYYMLMjiEiIiIiIvGQyr64nEDuEsCtGLlP/78EE8ZhLpqaQURERERE4ieVfXE5ezmHGxazYwCwm7O6d19ERERERGKcyr64lCBCOcgF00f1/3ad+5znltkxREREREQknlHZF5cSwE3CcZodI4IbFv7imtkxREREREQknvEwO4BIVLrMXSxYouTS+ekNv+L4kt0AfPJoPp4JEzzzsRu+mMbGL2dE2lawUXnaLPyES9x+7SwiIiIiIiIvQ2VfXMplbkMUFP3dvyzjzIbDL/28uj91JUm65AAkz5oWgEvcwcDAEkvmERAREREREdeny/jF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27c3O5KIiIiIiLggTdAnsZ5hGLz//vuMGjWKcePG0bVrV7MjvRbDMHj77beZPn06a9asoUqVKmZHEhERERERF6OyL7GaYRj069ePESNGMGbMGLp37252pCgREhJCnTp1OHDgADt27KBAgQJmRxIREREREReisi+xlmEYDBw4kGHDhvHTTz/Rq1cvsyNFqVu3blGxYkVCQ0PZuXMnadOmNTuSiIiIiIi4CE3QJ7GSYRh88sknDBs2jB9++MHlij5AqlSpWL58OXfv3qVRo0YEBQWZHUlERERERFyEyr7ESl988QVDhw7l+++/5/333zc7TrTJlSsXS5Ys4ffff6dDhw44nU6zI4mIiIiIiAtQ2ZdY56uvvuKrr77i22+/pW/fvmbHiXblypVj6tSpzJo1i08//dTsOCIiIiIi4gJU9iVWGTp0KJ9//jmDBw/mo48+MjtOjGnWrBnfffcdQ4cOZdKkSWbHERERERGROE4T9EmsMWzYMAYMGMCXX37JZ599ZnacGGcYBt26deO3335jxYoV+Pj4mB1JRERERETiKJV9iRVGjBhB3759+fTTT/nqq6/MjmOasLAwfH192bFjB9u3b6dIkSJmRxIRERERkThIZV9M9+OPP/L+++/z8ccfM3jwYCwWi9mRTHX37l0qVarE3bt32blzJxkzZjQ7koiIiIiIxDEq+2Kq0aNH07t3b/r378+3334b74v+386fP0+5cuXImjUrGzduJHHixGZHEhERERGROEQT9IlpfvnlF3r37s2HH36oov8v2bJlY+nSpfzxxx+0b9+e8PBwsyOJiIiIiEgcorIvpvj111/p0aMH7733Ht9//72K/lO8+eabzJw5k0WLFsWrlQlEREREROT1qexLjPvtt9/o2rUrPXv2ZOTIkSr6/6FBgwb8+OOPjBgxgrFjx5odR0RERERE4ggPswNI/OLv70+XLl3o1q0bP/30k4r+C+jVqxd//fUXPXv2JEeOHNSrV8/sSCIiIiIiEstpgj6JMVOmTMFms9G5c2fGjRuHm5suLHlR4eHhNGnShA0bNrB161aKFy9udiQREREREYnFVPYlRkyfPh0/Pz86dOjAhAkTVPRfwf3796latSpXrlxh165dZMmSxexIIiIiIiISS6nsS7SbNWsWbdu2xc/Pj0mTJqnov4ZLly5Rvnx50qRJw+bNm0mWLJnZkUREREREJBZS65JoNXfuXNq1a0fbtm357bffVPRfU+bMmVm6dCmnTp2idevWhIWFmR1JRERERERiITUviTYLFiygTZs2tGzZEn9/f9zd3c2O5BLeeOMN5syZw6pVq+jTpw+6OEdERERERP5NZV+ixaJFi2jZsiVNmzbF4XCo6Eex2rVr88svvzBmzBhGjRpldhwREREREYlltPSeRLmlS5fSokULGjVqxNSpU/Hw0NssOrzzzjv89ddffPDBB+TMmZPGjRubHUlERERERGIJTdAnUWrFihU0btyY+vXrM2vWLDw9Pc2O5NKcTictW7Zk+fLlbN68mdKlS5sdSUREREREYgGVfYkyq1atolGjRtSuXZs5c+aQIEECsyPFC48ePaJatWqcPXuWXbt2kSNHDrMjiYiIiIiIyVT2JUqsXbuWBg0aUKNGDebNm4eXl5fZkeKVq1evUq5cOZIkScK2bdtIkSKF2ZFERERERMREmqBPXtv69etp2LAh3t7ezJ07V0XfBOnTp2f58uVcvHiR5s2bExoaanYkERERERExkcq+vJZNmzbRoEEDKlWqxIIFC0iYMKHZkeKtQoUKMX/+fDZu3Ei3bt20JJ+IiIiISDymsi+vbMuWLdSvX58KFSqwaNEiFf1YoFq1akycOJHffvuNYcOGmR1HRERERERMojXR5JVs376devXqUaZMGRYvXkyiRInMjiT/Y7PZOHXqFAMHDiR37ty0bNnS7EgiIiIiIhLDNEGfvLSdO3dSq1YtSpYsyfLly0mSJInZkeRfDMOgffv2zJs3j/Xr11OxYkWzI4mIiIiISAxS2ZeXsmfPHnx8fChWrBgrV64kadKkZkeSZwgODsbHx4djx46xc+dO8uTJY3YkERERERGJISr78sL27duHj48PhQoVYtWqVSRLlszsSPIcN27coEKFCri5ubF9+3ZSp05tdiQREREREYkBmqBPXsj+/fupWbMmBQoUYOXKlSr6cUSaNGlYvnw5169fp0mTJgQHB5sdSUREREREYoDKvjzXwYMH8fHxIU+ePKxcuZLkyZObHUleQt68eVm4cCE7d+6kS5cuWpJPRERERCQeUNmX/3T48GFq1KhBzpw5Wb16NSlTpjQ7kryCSpUq4e/vz5QpU/jqq6/MjiMiIiIiItFMS+/JM/3xxx/UqFGDbNmysWbNGlKlSmV2JHkN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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "import networkx as nx\n", + "import matplotlib.pyplot as plt\n", + "\n", + "def independent_set_to_3_coloring_reduction(graph):\n", + " G_prime = nx.Graph()\n", + "\n", + " # Add all vertices and edges from the original graph\n", + " G_prime.add_nodes_from(graph.nodes())\n", + " G_prime.add_edges_from(graph.edges())\n", + "\n", + " # Add a new vertex for each edge and connect it to its endpoints\n", + " for edge in graph.edges():\n", + " new_vertex = f'w_{edge[0]}_{edge[1]}'\n", + " G_prime.add_node(new_vertex)\n", + " G_prime.add_edges_from([(edge[0], new_vertex), (edge[1], new_vertex)])\n", + "\n", + " return G_prime\n", + "\n", + "def visualize_independent_set_to_3_coloring_reduction(graph):\n", + " pos = nx.spring_layout(graph)\n", + " colors = nx.coloring.greedy_color(graph, strategy=\"largest_first\")\n", + "\n", + " plt.figure(figsize=(10, 8))\n", + " nx.draw(graph, pos, with_labels=True, node_color=[colors[node] for node in graph.nodes()],\n", + " cmap=plt.cm.rainbow, font_size=8, font_color='black', font_weight='bold', node_size=700, arrowsize=20)\n", + "\n", + " plt.title(\"Reduction from Independent Set to 3-Coloring\")\n", + " plt.show()\n", + "\n", + "# Example graph for Independent Set\n", + "G_independent_set = nx.Graph()\n", + "G_independent_set.add_edges_from([(1, 2), (1, 3), (2, 3), (2, 4), (3, 4), (4, 5)])\n", + "\n", + "# Apply the reduction and visualize the graph\n", + "G_3_coloring = independent_set_to_3_coloring_reduction(G_independent_set)\n", + "visualize_independent_set_to_3_coloring_reduction(G_3_coloring)\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "**Answer & Justification :**\n", + "\n", + "a. Proof of NP-Completeness:\n", + "\n", + "The ACADEMIC-CONFERENCE-SCHEDULING problem can be modeled as a known NP-Complete problem of 3-COLORING.\n", + "\n", + "Definition: 3-COLORING\n", + "\n", + "Given an undirected graph G=(V,E), a 3-coloring is an assignment of colors (let's say red, green, and blue) to each vertex in such a way that no two adjacent vertices have the same color. The aim in the 3-COLORING problem is to determine whether a given graph is 3-colorable.\n", + "\n", + "Since ACADEMIC-CONFERENCE-SCHEDULING and 3-COLORING are equivalent problems, proving 3-COLORING to be NP-Complete would also prove ACADEMIC-CONFERENCE-SCHEDULING as NP-Complete.\n", + "\n", + "Proof:\n", + "\n", + "Part 1: 3-COLORING is in NP\n", + "Given a set of vertices with assigned colors, we can verify that no two adjacent vertices have the same color.\n", + "\n", + "Part 2: 3-COLORING is NP-Hard\n", + "Given an instance of INDEPENDENT-SET, with graph G=(V,E) and parameter k construct a new graph G'.\n", + "\n", + "* Add all vertices and edges of G to G'.\n", + "* For each edge e=(u,v) ∈ E, add a new vertex We and edges (U,We) and (V,We) to G'.\n", + "\n", + "Claim: There is an independent set of size k in G if and oly if there is a 3-coloring of size k in G'.\n", + "\n", + "• Part 1: Independent Set => 3-Coloring\n", + "\n", + "Assume there is an independent set I of size k in G. For each edge e = (u,v) in E, neither u\n", + "nor v is in I. Therefore, we can assign them the same color in G' and color the corresponding We\n", + "differently. This forms a 3-coloring of size k in G'.\n", + "• Part 2: 3-CoIoring => Independent Set\n", + "Assume there is a 3-coloring C of size k in G'. Consider the setI {u ∈ V | color(u) = red}\n", + "Since each edge in G corresponds to vertex in G'. I is an independent set in G\n", + "\n", + "This completes the proof that 3-COLORING is NP-Complete, and hence, ACADEMIC-CONFERENCE-SCHEDULING is NP-Complete.\n", + "\n", + "b. Deciding Possibility (True/False):\n", + "Deciding on a mere true/false would be a decision problem for ACADEMIC-CONFERENCE-SCHEDULING. Given its NP-Completeness, the decision problem would also be NP-Complete.\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Reflection for Assignment 3\n", + "\n", + "\n", + "\n", + "Key Learnings:\n", + "\n", + "1. Directed Disjoint Circuits Problem (NP-completeness reduction):\\\n", + "*Problem: The reduction showed that the Directed Disjoint Circuits Problem is NP-complete by reducing it to the Hamiltonian Circuit Problem.\\\n", + "*Graph in Python: A Python graph was provided to illustrate the reduction. However, the code was not generated due to an error in the process.\n", + "\n", + "2. Efficient Resource Allocation Problem (Set Cover reduction):\\\n", + "*Problem: Demonstrated the NP-completeness of the Efficient Resource Allocation Problem by reducing it to the Set Cover problem.\\\n", + "*Graph in Python: No specific graph was generated, but the problem was illustrated through set cover concepts.\n", + "\n", + "3. Comprehensive Project Team Formation Problem (Set Cover reduction):\\\n", + "*Problem: Showed the NP-completeness of the Team Formation Problem by reducing it to the Set Cover problem.\\\n", + "*Graph in Python: Similar to the previous case, no specific graph was generated, but the reduction was explained.\n", + "\n", + "4. Nested Subset Sum (NP-completeness proof):\\\n", + "*Problem: Established the NP-completeness of Nested Subset Sum by reducing it to the Subset Sum problem.\\\n", + "*Graph in Python: No graph was provided explicitly, but the reduction concept was explained.\n", + "\n", + "5. Maximum Independent Set to Interval Scheduling (NP-completeness proof):\\\n", + "*Problem: Proved the NP-completeness of the Maximum Independent Set to Interval Scheduling problem by reducing it to the 3-Coloring problem.\\\n", + "*Graph in Python: Attempted to create a Python graph to visualize the reduction, but there were errors in the code.\n", + "\n", + "Reflections:\n", + "\n", + "*Graph Visualization: Graphs are essential in illustrating reductions and proving NP-completeness. NetworkX in Python is a helpful tool for creating and visualizing graphs.\n", + "\n", + "*Reduction Techniques: Reductions play a key role in proving NP-completeness. Transforming one problem into another known NP-complete problem establishes the complexity of the given problem.\n", + "\n", + "*Python Code Challenges: Generating Python code for graph-related problems and reductions can be challenging, as demonstrated by the errors encountered in some cases.\n", + "\n", + "*Understanding NP-Completeness: The problems discussed cover various aspects of NP-completeness, including set cover, independent set, interval scheduling, and dominating set. The reductions help in understanding the relationships between these problems.\n", + "\n", + "In conclusion, tackling NP-completeness proofs and reductions involves a combination of theoretical understanding, graph visualization, and Python coding skills. It's essential to carefully construct reductions and verify them through graph visualization to ensure the correctness of the proofs." + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.10.11" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/Submissions/002795957_Lokesh_jeswani/Assignment_4/readme.md.txt b/Submissions/002795957_Lokesh_jeswani/Assignment_4/readme.md.txt new file mode 100644 index 0000000..4663bd1 --- /dev/null +++ b/Submissions/002795957_Lokesh_jeswani/Assignment_4/readme.md.txt @@ -0,0 +1,12 @@ +Assignment_4-INFO_6205-Program_Structure_and_Algorithms + +Created 10 qustion understanding the concepts of the below mentioned topics: + +-Directed Disjoint Circuits Problem (NP-completeness reduction): +-Efficient Resource Allocation Problem (Set Cover reduction) +-Comprehensive Project Team Formation Problem (Set Cover reduction) +-Nested Subset Sum (NP-completeness proof) +-Maximum Independent Set to Interval Scheduling (NP-completeness proof) + + +The above 10 question are provided with solution and its justification(with visualization). \ No newline at end of file