# C++ Math Exhaustive Search Algorithm Changes

We currently have a c++ script (attached) that computes combinations of items (e.g., ice cream flavours). This job is to do 2 things:

1. Add 3 new rules that would change how many combinations are required to run, and also to calculate the results for different thresholds (currently it does this, but in one area, but not in another area).

2. Adjust the greedy chart to adapt to RT2, RT3, RT4, etc.

This script requires some understanding of combinatorics. Here is a decent website explaining the concepts (go down to the Combinations section). [url removed, login to view]

It runs thousands, sometimes billions of combinations, and it does it for hundreds or thousands of rows of data (i.e., different people's data), but we want to add 3 new rules that would change how many combinations need to be run.

Our script adapts to any number of items, but for simplicity, I will use 30C5 in my examples, which is a manageable number (142,506). This means you have 30 items to search among and want to find the optimal 5 items that produce the highest numbers.

-------------------- First Thing (3 rules to add to algorithm) ------------------------

Rule 1: Exclude

We want to be able to EXCLUDE an item from appearing in any combinations, so instead of calculating 30C5 (=142,506) combinations, then we only have 29C5 (=27,405) combinations to calculate. We have less items to try from among our total 30, that's why it only needs to try 29 now.

Rule 2: Force

We want to be able to FORCE an item to appear in all combinations. So instead of calculating 30C5 (=142,506) combinations, then we only have 29C4 (= 23,751) combinations to calculate. We have one more item required, so we search from one less and calculate one less (because that one is required to always be included).

Rule 3: Force X of Y

A bit more complicated than rule 2 above, we also want to be able to force, for example, 2 of the first 10, and 3 of the next 20. That would be 10C2 (=45) + 20C3 (= 1,140). It needs to be able to be broad enough that we could split it into up to 10 different buckets (or generally applicable, so we don't have 10 as a max, would be even better, but not required).

------------------------- Second Thing (adapting "greedy" algorithm) ------------------------

We want to adapt the script so that the "greedy chart" can be run based on RT2, RT3, RT4, etc.

To compute RT2 greedy chart, there are 2 steps:

1. Calculate the top combination for size 2 RT2 (using the other algorithm that already works).

2. Calculate the next best items of the remaining items at RT2 (same functionality as current greedy chart, but the first two items are calculated differently as per above)

The new greedy chart algorithms basically work the same as the current greedy chart algorithm except that RT2 starts with the top size 2 RT2 solution; RT3 starts with the top size 3 RT3 solution; etc.

------------------------------------------------------------

The script is part of an online process where a CSV gets uploaded (2 example files are attached), the algorithm runs, and then the web page displays a bunch of the output and hosts other output files for download/review. It is a PHP Virtual Private Server, although I don't think that is relevant. You will need to explain to my web developer, who built the web user interface, how the changes to the parameters will work.

Keahlian: Algoritma, Pemrograman C++, Matematika

Tentang Pemberi kerja:
( 41 ulasan ) Toronto, Canada

ID Proyek: #11488990

LiangXiaoJin

Dear client, how are you? I am a C++ programmer and mathematician. Seems task is VERY VERY APPROPRIATE for me. Can provide you with perfect result. No problem. Please check my "Profile & Work List" and tell me deta Lebih banyak

\$700 USD dalam 10 hari
(76 Ulasan)
7.4

## 20 freelancer menawar dengan rata-rata \$662 untuk pekerjaan ini

\$736 USD dalam 10 hari
(89 Ulasan)
7.4
utkarshkatiyar19

Hi, i have a lot of experience in C++ programming and algorithms. I can easily complete this task for you. we can have a chat. thanks

\$750 USD dalam 10 hari
(271 Ulasan)
7.0
Softeria

I am an instructor of Mathematics. I have 5 years of teaching mathematics. I teach Trigonometry, Calculus, Geometry, Matrices, Algebra, Quantitative questions, Differential Equations, Logic, Discrete Mathematics, Numer Lebih banyak

\$1000 USD dalam 20 hari
(128 Ulasan)
6.7
hbxfnzwpf

I am very proficient in c and c++. I have 16 years c++ developing experience now, and have worked for more than 6 years. My work is online game developing, and mainly focus on server side, using c++ under linux environ Lebih banyak

\$500 USD dalam 7 hari
(78 Ulasan)
6.5
\$777 USD dalam 10 hari
(107 Ulasan)
6.1
antonparfeniuk

A proposal has not yet been provided

\$422 USD dalam 3 hari
(53 Ulasan)
5.2
dyuldashev

Hi, I hope you are doing well. I graduated from the University of Texas at Austin with a BS in Computer Science 7-8 months ago. I have done a lot of C/C++ and Java projects back in college. I have to note that I am Lebih banyak

\$600 USD dalam 5 hari
(37 Ulasan)
5.3
inmdid

You project seems to be really interesting. I am really passionate about optimization and search problems and algorithms. I'd really like to work on this project. And would put really high amount of effort to provide Lebih banyak

\$500 USD dalam 10 hari
(12 Ulasan)
4.9
SqUa11

Hi, My name is Mohamed, I have some experience in algorithm, and with math combinations and I checked your project description about combinations and I am interested in it. My view is to check possibility for better Lebih banyak

\$750 USD dalam 10 hari
(39 Ulasan)
4.8
narendragautam

Hi, I am interested. Thanks

\$750 USD dalam 20 hari
(2 Ulasan)
4.3
prashushinde9

Hello, I understood the initial scope of this project. Although i want to discuss further this job in order to prepare the final concept for this project. After Complete discussion over the call or in chat, i wi Lebih banyak

\$773 USD dalam 20 hari
(2 Ulasan)
4.0
\$700 USD dalam 20 hari
(3 Ulasan)
3.5
renegator

I think, i can perfrom this job .........................................................................................................................................

\$305 USD dalam 10 hari
(11 Ulasan)
3.4
gurleen001

Hi, I have a good experience of coding in C and C++ and algorithms. I assure you that your work will be done perfectly and in minimum possible [login to view URL] give me a chance. Thank you.

\$400 USD dalam 10 hari
(4 Ulasan)
2.9
lakrisG

Hello! I studied as mathematics professor, and very like mathematics, like algorithms and C++ developing. I checked the files, I will can add you changes to it. I am developer about 18 years, I hope we will work toget Lebih banyak

\$555 USD dalam 10 hari
(1 Ulasan)
1.8

I am java/c++ eexpert know algoriymization methods I am programmer already 12 years

\$833 USD dalam 14 hari
(0 Ulasan)
0.0
NeaWeaR

Hello my dear friend! I can help with your project. I am experienced (4 years) developer with such stack of technologies: System administration: Linux, Apache, Nginx. Frontend: HTML, CSS, Bootstrap, JS (JQuer Lebih banyak

\$750 USD dalam 10 hari
(0 Ulasan)
0.0
\$777 USD dalam 10 hari
(0 Ulasan)
0.0
myirci

I have been actively using C++ around 10 years both in industry and academics. I am enthusiastic about solving mathematical problems and enjoy a lot to solve computational problems. As a hobby, I often try to solve pro Lebih banyak

\$666 USD dalam 7 hari
(0 Ulasan)
0.0